Skip to content

Commit 9b4bc65

Browse files
committed
feat(dialect-bun-worker): remove dumplicate zen-mitt
1 parent 6758f9d commit 9b4bc65

File tree

5 files changed

+16
-25
lines changed

5 files changed

+16
-25
lines changed

packages/dialect-bun-worker/package.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,6 @@
3737
"peerDependencies": {
3838
"kysely": ">=0.26"
3939
},
40-
"dependencies": {
41-
"zen-mitt": "^0.3.0"
42-
},
4340
"devDependencies": {
4441
"bun-types": "latest"
4542
}

packages/dialect-bun-worker/src/driver.ts

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1+
import { EventEmitter } from 'node:events'
12
import type { DatabaseConnection, Driver, QueryResult } from 'kysely'
23
import { CompiledQuery, SelectQueryNode } from 'kysely'
3-
import type { Emitter } from 'zen-mitt'
4-
import { mitt } from 'zen-mitt'
54
import type { EventWithError, MainMsg, WorkerMsg } from './type'
65
import type { BunWorkerDialectConfig } from '.'
76

@@ -10,7 +9,7 @@ export class BunWorkerDriver implements Driver {
109
private worker?: Worker
1110
private connection?: DatabaseConnection
1211
private connectionMutex = new ConnectionMutex()
13-
private mitt?: Emitter<EventWithError>
12+
private mitt?: EventEmitter<EventWithError>
1413
constructor(config?: BunWorkerDialectConfig) {
1514
this.config = config
1615
}
@@ -20,7 +19,7 @@ export class BunWorkerDriver implements Driver {
2019
new URL('./worker', import.meta.url),
2120
{ type: 'module' },
2221
)
23-
this.mitt = mitt<EventWithError>()
22+
this.mitt = new EventEmitter()
2423
this.worker.onmessage = ({ data: { data, err, type } }: MessageEvent<WorkerMsg>) => {
2524
this.mitt?.emit(type, { data, err })
2625
}
@@ -73,7 +72,7 @@ export class BunWorkerDriver implements Driver {
7372
reject(err)
7473
} else {
7574
this.worker?.terminate()
76-
this.mitt?.off()
75+
this.mitt?.removeAllListeners()
7776
this.mitt = undefined
7877
resolve()
7978
}
@@ -107,12 +106,10 @@ class ConnectionMutex {
107106
}
108107

109108
class BunWorkerConnection implements DatabaseConnection {
110-
readonly worker: Worker
111-
readonly mitt?: Emitter<EventWithError>
112-
constructor(worker: Worker, mitt?: Emitter<EventWithError>) {
113-
this.worker = worker
114-
this.mitt = mitt
115-
}
109+
constructor(
110+
private worker: Worker,
111+
private mitt?: EventEmitter<EventWithError>,
112+
) { }
116113

117114
streamQuery<R>(): AsyncIterableIterator<QueryResult<R>> {
118115
throw new Error('Bun:sqlite-worker driver doesn\'t support streaming')

packages/dialect-bun-worker/src/type.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,16 @@ export type WorkerMsg = {
2727
err: unknown
2828
}
2929
}[keyof Events]
30+
3031
type Events = {
3132
run: QueryResult<any> | null
3233
init: null
3334
close: null
3435
}
36+
3537
export type EventWithError = {
36-
[K in keyof Events]: {
38+
[K in keyof Events]: [{
3739
data: Events[K]
3840
err: unknown
39-
}
41+
}]
4042
}

packages/dialect-sqlite-worker/src/driver.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,10 @@ class ConnectionMutex {
9696
}
9797
}
9898
export class SqliteWorkerConnection implements DatabaseConnection {
99-
readonly worker: Worker
100-
readonly emit?: EventEmitter
101-
constructor(worker: Worker, emit?: EventEmitter) {
102-
this.worker = worker
103-
this.emit = emit
104-
}
99+
constructor(
100+
private worker: Worker,
101+
private emit?: EventEmitter,
102+
) { }
105103

106104
async *streamQuery<R>(): AsyncIterableIterator<QueryResult<R>> {
107105
throw new Error('sqlite-worker driver doesn\'t support streaming')

pnpm-lock.yaml

Lines changed: 0 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)