@slonik/driver 46.1.0 → 46.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,52 +3,9 @@ import EventEmitter from 'node:events';
3
3
  import { type Readable } from 'node:stream';
4
4
  import { type ConnectionOptions as TlsConnectionOptions } from 'node:tls';
5
5
  import { type StrictEventEmitter } from 'strict-event-emitter-types';
6
- type StreamDataEvent<T> = {
7
- data: T;
8
- fields: readonly Field[];
9
- };
10
- export interface DriverStream<T> extends Readable {
11
- on(event: 'data', listener: (chunk: StreamDataEvent<T>) => void): this;
12
- on(event: string | symbol, listener: (...args: any[]) => void): this;
13
- [Symbol.asyncIterator]: () => AsyncIterableIterator<StreamDataEvent<T>>;
14
- }
15
- type BasicConnection = {
16
- readonly query: (query: string) => Promise<void>;
17
- };
18
- /**
19
- * @property name Value of "pg_type"."typname" (e.g. "int8", "timestamp", "timestamptz").
20
- */
21
- export type DriverTypeParser<T = unknown> = {
22
- readonly name: string;
23
- readonly parse: (value: string) => T;
24
- };
25
- export type DriverConfiguration = {
26
- readonly connectionTimeout: number | 'DISABLE_TIMEOUT';
27
- readonly connectionUri: string;
28
- readonly gracefulTerminationTimeout?: number;
29
- readonly idleInTransactionSessionTimeout: number | 'DISABLE_TIMEOUT';
30
- readonly idleTimeout?: number | 'DISABLE_TIMEOUT';
31
- readonly maximumPoolSize?: number;
32
- readonly minimumPoolSize?: number;
33
- readonly resetConnection?: (connection: BasicConnection) => Promise<void>;
34
- readonly ssl?: TlsConnectionOptions;
35
- readonly statementTimeout: number | 'DISABLE_TIMEOUT';
36
- readonly typeParsers: readonly DriverTypeParser[];
37
- };
38
- export type DriverNotice = {
39
- message: string;
6
+ export type Driver = {
7
+ createClient: () => Promise<DriverClient>;
40
8
  };
41
- export type DriverEventEmitter = StrictEventEmitter<EventEmitter, {
42
- error: (error: Error) => void;
43
- }>;
44
- export type DriverClientEventEmitter = StrictEventEmitter<EventEmitter, {
45
- acquire: () => void;
46
- destroy: () => void;
47
- error: (error: Error) => void;
48
- notice: (event: DriverNotice) => void;
49
- release: () => void;
50
- }>;
51
- export type DriverClientState = 'ACQUIRED' | 'DESTROYED' | 'IDLE' | 'PENDING_DESTROY' | 'PENDING_RELEASE';
52
9
  export type DriverClient = {
53
10
  acquire: () => void;
54
11
  destroy: () => Promise<void>;
@@ -61,28 +18,67 @@ export type DriverClient = {
61
18
  state: () => DriverClientState;
62
19
  stream: (query: string, values?: unknown[]) => DriverStream<DriverStreamResult>;
63
20
  };
64
- export type Driver = {
65
- createClient: () => Promise<DriverClient>;
21
+ export type DriverClientEventEmitter = StrictEventEmitter<EventEmitter, {
22
+ acquire: () => void;
23
+ destroy: () => void;
24
+ error: (error: Error) => void;
25
+ notice: (event: DriverNotice) => void;
26
+ release: () => void;
27
+ }>;
28
+ export type DriverClientState = 'ACQUIRED' | 'DESTROYED' | 'IDLE' | 'PENDING_DESTROY' | 'PENDING_RELEASE';
29
+ export type DriverCommand = 'COPY' | 'DELETE' | 'INSERT' | 'SELECT' | 'UPDATE';
30
+ export type DriverConfiguration = {
31
+ readonly connectionTimeout: 'DISABLE_TIMEOUT' | number;
32
+ readonly connectionUri: string;
33
+ readonly gracefulTerminationTimeout?: number;
34
+ readonly idleInTransactionSessionTimeout: 'DISABLE_TIMEOUT' | number;
35
+ readonly idleTimeout?: 'DISABLE_TIMEOUT' | number;
36
+ readonly maximumPoolSize?: number;
37
+ readonly minimumPoolSize?: number;
38
+ readonly resetConnection?: (connection: BasicConnection) => Promise<void>;
39
+ readonly ssl?: TlsConnectionOptions;
40
+ readonly statementTimeout: 'DISABLE_TIMEOUT' | number;
41
+ readonly typeParsers: readonly DriverTypeParser[];
66
42
  };
43
+ export type DriverEventEmitter = StrictEventEmitter<EventEmitter, {
44
+ error: (error: Error) => void;
45
+ }>;
67
46
  export type DriverFactory = ({ driverConfiguration, }: {
68
47
  driverConfiguration: DriverConfiguration;
69
48
  }) => Promise<Driver>;
70
- type DriverField = {
71
- dataTypeId: number;
72
- name: string;
49
+ export type DriverNotice = {
50
+ message: string;
73
51
  };
74
- export type DriverCommand = 'COPY' | 'DELETE' | 'INSERT' | 'SELECT' | 'UPDATE';
75
52
  export type DriverQueryResult = {
76
53
  readonly command: DriverCommand;
77
54
  readonly fields: DriverField[];
78
- readonly rowCount: number | null;
55
+ readonly rowCount: null | number;
79
56
  readonly rows: Array<Record<string, unknown>>;
80
57
  };
58
+ export interface DriverStream<T> extends Readable {
59
+ [Symbol.asyncIterator]: () => AsyncIterableIterator<StreamDataEvent<T>>;
60
+ on(event: 'data', listener: (chunk: StreamDataEvent<T>) => void): this;
61
+ on(event: string | symbol, listener: (...args: any[]) => void): this;
62
+ }
81
63
  export type DriverStreamResult = {
82
64
  readonly fields: DriverField[];
83
65
  readonly row: Record<string, unknown>;
84
66
  };
85
- type DriverSetup = ({ driverEventEmitter, driverConfiguration, }: {
67
+ /**
68
+ * @property name Value of "pg_type"."typname" (e.g. "int8", "timestamp", "timestamptz").
69
+ */
70
+ export type DriverTypeParser<T = unknown> = {
71
+ readonly name: string;
72
+ readonly parse: (value: string) => T;
73
+ };
74
+ type BasicConnection = {
75
+ readonly query: (query: string) => Promise<void>;
76
+ };
77
+ type DriverField = {
78
+ dataTypeId: number;
79
+ name: string;
80
+ };
81
+ type DriverSetup = ({ driverConfiguration, driverEventEmitter, }: {
86
82
  driverConfiguration: DriverConfiguration;
87
83
  driverEventEmitter: DriverEventEmitter;
88
84
  }) => Promise<InternalPoolClientFactory>;
@@ -102,6 +98,10 @@ type InternalPoolClientFactory = {
102
98
  clientEventEmitter: DriverClientEventEmitter;
103
99
  }) => Promise<InternalPoolClient>;
104
100
  };
101
+ type StreamDataEvent<T> = {
102
+ data: T;
103
+ fields: readonly Field[];
104
+ };
105
105
  export declare const createDriverFactory: (setup: DriverSetup) => DriverFactory;
106
106
  export {};
107
107
  //# sourceMappingURL=createDriverFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createDriverFactory.d.ts","sourceRoot":"","sources":["../../src/factories/createDriverFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,iBAAiB,IAAI,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE1E,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,KAAK,eAAe,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAA;CAAE,CAAC;AAGhE,MAAM,WAAW,YAAY,CAAC,CAAC,CAAE,SAAQ,QAAQ;IAE/C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAEvE,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAErE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CACzE;AAED,KAAK,eAAe,GAAG;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,+BAA+B,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACrE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAAC;IAClD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,QAAQ,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACtD,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CACjD,YAAY,EACZ;IACE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B,CACF,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,kBAAkB,CACvD,YAAY,EACZ;IACE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CACF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,WAAW,GACX,MAAM,GACN,iBAAiB,GACjB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,EAAE,EAAE,MAAM,MAAM,CAAC;IACjB,GAAG,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrC,EAAE,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,cAAc,EAAE,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC3D,KAAK,EAAE,MAAM,iBAAiB,CAAC;IAC/B,MAAM,EAAE,CACN,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,KACf,YAAY,CAAC,kBAAkB,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,YAAY,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,EAC3B,mBAAmB,GACpB,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEtB,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF,KAAK,WAAW,GAAG,CAAC,EAClB,kBAAkB,EAClB,mBAAmB,GACpB,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,KAAK,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAEzC;;;;GAIG;AACH,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE,MAAM,EAAE,CACN,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,KACf,YAAY,CAAC,kBAAkB,CAAC,CAAC;CACvC,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,gBAAgB,EAAE,CAAC,EACjB,kBAAkB,GACnB,EAAE;QACD,kBAAkB,EAAE,wBAAwB,CAAC;KAC9C,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,WAAW,KAAG,aA8RxD,CAAC"}
1
+ {"version":3,"file":"createDriverFactory.d.ts","sourceRoot":"","sources":["../../src/factories/createDriverFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,YAAY,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,iBAAiB,IAAI,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE1E,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,MAAM,MAAM,GAAG;IACnB,YAAY,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,EAAE,EAAE,MAAM,MAAM,CAAC;IACjB,GAAG,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACrC,EAAE,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,cAAc,EAAE,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC3D,KAAK,EAAE,MAAM,iBAAiB,CAAC;IAC/B,MAAM,EAAE,CACN,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,KACf,YAAY,CAAC,kBAAkB,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,kBAAkB,CACvD,YAAY,EACZ;IACE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CACF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,UAAU,GACV,WAAW,GACX,MAAM,GACN,iBAAiB,GACjB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE/E,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,MAAM,CAAC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,+BAA+B,EAAE,iBAAiB,GAAG,MAAM,CAAC;IACrE,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC;IAClD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,QAAQ,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,MAAM,CAAC;IACtD,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CACjD,YAAY,EACZ;IACE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B,CACF,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,EAC3B,mBAAmB,GACpB,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEtB,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAC/C,CAAC;AAGF,MAAM,WAAW,YAAY,CAAC,CAAC,CAAE,SAAQ,QAAQ;IAC/C,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IAExE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAGvE,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;CACtE;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;CACtC,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,WAAW,GAAG,CAAC,EAClB,mBAAmB,EACnB,kBAAkB,GACnB,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,kBAAkB,EAAE,kBAAkB,CAAC;CACxC,KAAK,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAEzC;;;;GAIG;AACH,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE,MAAM,EAAE,CACN,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,KACf,YAAY,CAAC,kBAAkB,CAAC,CAAC;CACvC,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,gBAAgB,EAAE,CAAC,EACjB,kBAAkB,GACnB,EAAE;QACD,kBAAkB,EAAE,wBAAwB,CAAC;KAC9C,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACnC,CAAC;AAEF,KAAK,eAAe,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAA;CAAE,CAAC;AAEhE,eAAO,MAAM,mBAAmB,UAAW,WAAW,KAAG,aA4RxD,CAAC"}
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ /* eslint-disable @typescript-eslint/consistent-type-definitions */
2
3
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
4
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
5
  };
@@ -36,7 +37,7 @@ const createDriverFactory = (setup) => {
36
37
  }, 'unhandled driver client error');
37
38
  };
38
39
  clientEventEmitter.on('error', onError);
39
- const { query, stream, connect, end } = await createPoolClient({
40
+ const { connect, end, query, stream } = await createPoolClient({
40
41
  clientEventEmitter,
41
42
  });
42
43
  let isAcquired = false;
@@ -125,7 +126,6 @@ const createDriverFactory = (setup) => {
125
126
  idleTimeout = null;
126
127
  }, driverConfiguration.idleTimeout).unref();
127
128
  }
128
- // eslint-disable-next-line require-atomic-updates
129
129
  isAcquired = false;
130
130
  releasePromise = null;
131
131
  clientEventEmitter.emit('release');
@@ -190,7 +190,6 @@ const createDriverFactory = (setup) => {
190
190
  return result;
191
191
  }
192
192
  finally {
193
- // eslint-disable-next-line require-atomic-updates
194
193
  activeQueryPromise = null;
195
194
  }
196
195
  },
@@ -1 +1 @@
1
- {"version":3,"file":"createDriverFactory.js","sourceRoot":"","sources":["../../src/factories/createDriverFactory.ts"],"names":[],"mappings":";;;;;;AAAA,sCAAmC;AAEnC,iDAAgD;AAChD,8DAAuC;AAEvC,mDAA2D;AAE3D,qDAAiD;AAkJ1C,MAAM,mBAAmB,GAAG,CAAC,KAAkB,EAAiB,EAAE;IACvE,OAAO,KAAK,EAAE,EAAE,mBAAmB,EAAE,EAAmB,EAAE;QACxD,MAAM,EAAE,eAAe,EAAE,GAAG,mBAAmB,CAAC;QAEhD,MAAM,kBAAkB,GAAuB,IAAI,qBAAY,EAAE,CAAC;QAElE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,KAAK,CAAC;YACvC,mBAAmB;YACnB,kBAAkB;SACnB,CAAC,CAAC;QAEH,OAAO;YACL,YAAY,EAAE,KAAK,IAAI,EAAE;gBACvB,MAAM,kBAAkB,GAA6B,IAAI,qBAAY,EAAE,CAAC;gBAExE,wCAAwC;gBACxC,IAAI,OAA4B,CAAC;gBAEjC,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;oBAC/B,IAAI,OAAO,EAAE,CAAC;wBACZ,wDAAwD;wBACxD,KAAK,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;4BACxB,kDAAkD;4BAClD,qDAAqD;wBACvD,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,eAAM,CAAC,IAAI,CACT;wBACE,KAAK,EAAE,IAAA,gCAAc,EAAC,KAAK,CAAC;wBAC5B,SAAS,EAAE,cAAc;qBAC1B,EACD,+BAA+B,CAChC,CAAC;gBACJ,CAAC,CAAC;gBAEF,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAExC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,gBAAgB,CAAC;oBAC7D,kBAAkB;iBACnB,CAAC,CAAC;gBAEH,IAAI,UAAU,GAAG,KAAK,CAAC;gBACvB,IAAI,WAAW,GAAG,KAAK,CAAC;gBACxB,IAAI,WAAW,GAA0B,IAAI,CAAC;gBAE9C,IAAI,kBAAkB,GAAsC,IAAI,CAAC;gBACjE,IAAI,cAAc,GAAyB,IAAI,CAAC;gBAChD,IAAI,cAAc,GAAyB,IAAI,CAAC;gBAEhD,MAAM,EAAE,GAAG,IAAA,uBAAW,GAAE,CAAC;gBAEzB,MAAM,gBAAgB,GAAG,GAAG,EAAE;oBAC5B,IAAI,WAAW,EAAE,CAAC;wBAChB,YAAY,CAAC,WAAW,CAAC,CAAC;wBAE1B,WAAW,GAAG,IAAI,CAAC;oBACrB,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,KAAK,GAAG,GAAG,EAAE;oBACjB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBAED,IAAI,WAAW,EAAE,CAAC;wBAChB,OAAO,WAAW,CAAC;oBACrB,CAAC;oBAED,IAAI,UAAU,EAAE,CAAC;wBACf,OAAO,UAAU,CAAC;oBACpB,CAAC;oBAED,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC;gBAEF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;oBACjC,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;oBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;wBACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;oBAChD,CAAC;oBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBAED,gBAAgB,EAAE,CAAC;oBAEnB,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,OAAO,CAAC,IAAI,CAAC;4BACjB,IAAA,qBAAK,EAAC,mBAAmB,CAAC,0BAA0B,CAAC;4BACrD,kBAAkB;yBACnB,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,MAAM,cAAc,CAAC;oBACvB,CAAC;oBAED,WAAW,GAAG,IAAI,CAAC;oBAEnB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAEnC,MAAM,GAAG,EAAE,CAAC;oBAEZ,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC3C,CAAC,CAAC;gBAEF,OAAO,GAAG,KAAK,IAAI,EAAE;oBACnB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,cAAc,GAAG,eAAe,EAAE,CAAC;oBAEnC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC;gBAEF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;oBACjC,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;oBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;wBACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;oBAChD,CAAC;oBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;wBAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;oBAC7C,CAAC;oBAED,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBACjD,CAAC;oBAED,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,eAAe,CAAC;4BACpB,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gCACnB,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;4BACnB,CAAC;yBACF,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,mBAAmB,CAAC,WAAW,KAAK,iBAAiB,EAAE,CAAC;wBAC1D,gBAAgB,EAAE,CAAC;wBAEnB,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;4BAC5B,KAAK,OAAO,EAAE,CAAC;4BAEf,WAAW,GAAG,IAAI,CAAC;wBACrB,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;oBAC9C,CAAC;oBAED,kDAAkD;oBAClD,UAAU,GAAG,KAAK,CAAC;oBAEnB,cAAc,GAAG,IAAI,CAAC;oBAEtB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrC,CAAC,CAAC;gBAEF,MAAM,OAAO,GAAG,GAAG,EAAE;oBACnB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,cAAc,GAAG,eAAe,EAAE,CAAC;oBAEnC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC;gBAEF,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;wBACjD,CAAC;wBAED,gBAAgB,EAAE,CAAC;wBAEnB,UAAU,GAAG,IAAI,CAAC;wBAElB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrC,CAAC;oBACD,OAAO;oBACP,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;oBACZ,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACvB,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBACjD,CAAC;oBACD,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACtB,OAAO,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAChD,CAAC;oBACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;wBAC3B,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;wBAC7C,CAAC;wBAED,IAAI,CAAC;4BACH,kBAAkB,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;4BAExC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;4BAExC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gCACxB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;4BAC9D,CAAC;4BAED,OAAO,MAAM,CAAC;wBAChB,CAAC;gCAAS,CAAC;4BACT,kDAAkD;4BAClD,kBAAkB,GAAG,IAAI,CAAC;wBAC5B,CAAC;oBACH,CAAC;oBACD,OAAO;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBAClC,OAAO,kBAAkB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAC5D,CAAC;oBACD,KAAK;oBACL,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;wBACtB,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;wBAC7C,CAAC;wBAED,kGAAkG;wBAElG,OAAO,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBAC7B,CAAC;iBACF,CAAC;gBAEF,MAAM,OAAO,EAAE,CAAC;gBAEhB,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AA9RW,QAAA,mBAAmB,uBA8R9B"}
1
+ {"version":3,"file":"createDriverFactory.js","sourceRoot":"","sources":["../../src/factories/createDriverFactory.ts"],"names":[],"mappings":";AAAA,mEAAmE;;;;;;AAEnE,sCAAmC;AAEnC,iDAAgD;AAChD,8DAAuC;AAEvC,mDAA2D;AAE3D,qDAAiD;AAkJ1C,MAAM,mBAAmB,GAAG,CAAC,KAAkB,EAAiB,EAAE;IACvE,OAAO,KAAK,EAAE,EAAE,mBAAmB,EAAE,EAAmB,EAAE;QACxD,MAAM,EAAE,eAAe,EAAE,GAAG,mBAAmB,CAAC;QAEhD,MAAM,kBAAkB,GAAuB,IAAI,qBAAY,EAAE,CAAC;QAElE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,KAAK,CAAC;YACvC,mBAAmB;YACnB,kBAAkB;SACnB,CAAC,CAAC;QAEH,OAAO;YACL,YAAY,EAAE,KAAK,IAAI,EAAE;gBACvB,MAAM,kBAAkB,GAA6B,IAAI,qBAAY,EAAE,CAAC;gBAExE,wCAAwC;gBACxC,IAAI,OAA4B,CAAC;gBAEjC,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;oBAC/B,IAAI,OAAO,EAAE,CAAC;wBACZ,wDAAwD;wBACxD,KAAK,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;4BACxB,kDAAkD;4BAClD,qDAAqD;wBACvD,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,eAAM,CAAC,IAAI,CACT;wBACE,KAAK,EAAE,IAAA,gCAAc,EAAC,KAAK,CAAC;wBAC5B,SAAS,EAAE,cAAc;qBAC1B,EACD,+BAA+B,CAChC,CAAC;gBACJ,CAAC,CAAC;gBAEF,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAExC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,gBAAgB,CAAC;oBAC7D,kBAAkB;iBACnB,CAAC,CAAC;gBAEH,IAAI,UAAU,GAAG,KAAK,CAAC;gBACvB,IAAI,WAAW,GAAG,KAAK,CAAC;gBACxB,IAAI,WAAW,GAA0B,IAAI,CAAC;gBAE9C,IAAI,kBAAkB,GAAsC,IAAI,CAAC;gBACjE,IAAI,cAAc,GAAyB,IAAI,CAAC;gBAChD,IAAI,cAAc,GAAyB,IAAI,CAAC;gBAEhD,MAAM,EAAE,GAAG,IAAA,uBAAW,GAAE,CAAC;gBAEzB,MAAM,gBAAgB,GAAG,GAAG,EAAE;oBAC5B,IAAI,WAAW,EAAE,CAAC;wBAChB,YAAY,CAAC,WAAW,CAAC,CAAC;wBAE1B,WAAW,GAAG,IAAI,CAAC;oBACrB,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,KAAK,GAAG,GAAG,EAAE;oBACjB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBAED,IAAI,WAAW,EAAE,CAAC;wBAChB,OAAO,WAAW,CAAC;oBACrB,CAAC;oBAED,IAAI,UAAU,EAAE,CAAC;wBACf,OAAO,UAAU,CAAC;oBACpB,CAAC;oBAED,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC;gBAEF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;oBACjC,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;oBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;wBACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;oBAChD,CAAC;oBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBAED,gBAAgB,EAAE,CAAC;oBAEnB,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,OAAO,CAAC,IAAI,CAAC;4BACjB,IAAA,qBAAK,EAAC,mBAAmB,CAAC,0BAA0B,CAAC;4BACrD,kBAAkB;yBACnB,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,MAAM,cAAc,CAAC;oBACvB,CAAC;oBAED,WAAW,GAAG,IAAI,CAAC;oBAEnB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAEnC,MAAM,GAAG,EAAE,CAAC;oBAEZ,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC3C,CAAC,CAAC;gBAEF,OAAO,GAAG,KAAK,IAAI,EAAE;oBACnB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,cAAc,GAAG,eAAe,EAAE,CAAC;oBAEnC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC;gBAEF,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;oBACjC,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;oBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;wBACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;oBAChD,CAAC;oBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;oBAC1C,CAAC;oBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;wBAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;oBAC7C,CAAC;oBAED,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBACjD,CAAC;oBAED,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,eAAe,CAAC;4BACpB,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gCACnB,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;4BACnB,CAAC;yBACF,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,mBAAmB,CAAC,WAAW,KAAK,iBAAiB,EAAE,CAAC;wBAC1D,gBAAgB,EAAE,CAAC;wBAEnB,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;4BAC5B,KAAK,OAAO,EAAE,CAAC;4BAEf,WAAW,GAAG,IAAI,CAAC;wBACrB,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;oBAC9C,CAAC;oBAED,UAAU,GAAG,KAAK,CAAC;oBAEnB,cAAc,GAAG,IAAI,CAAC;oBAEtB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrC,CAAC,CAAC;gBAEF,MAAM,OAAO,GAAG,GAAG,EAAE;oBACnB,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,IAAI,cAAc,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC;oBACxB,CAAC;oBAED,cAAc,GAAG,eAAe,EAAE,CAAC;oBAEnC,OAAO,cAAc,CAAC;gBACxB,CAAC,CAAC;gBAEF,MAAM,MAAM,GAAG;oBACb,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;wBACjD,CAAC;wBAED,gBAAgB,EAAE,CAAC;wBAEnB,UAAU,GAAG,IAAI,CAAC;wBAElB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrC,CAAC;oBACD,OAAO;oBACP,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;oBACZ,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACvB,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBACjD,CAAC;oBACD,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBACtB,OAAO,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAChD,CAAC;oBACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;wBAC3B,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;wBAC7C,CAAC;wBAED,IAAI,CAAC;4BACH,kBAAkB,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;4BAExC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;4BAExC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gCACxB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;4BAC9D,CAAC;4BAED,OAAO,MAAM,CAAC;wBAChB,CAAC;gCAAS,CAAC;4BACT,kBAAkB,GAAG,IAAI,CAAC;wBAC5B,CAAC;oBACH,CAAC;oBACD,OAAO;oBACP,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;wBAClC,OAAO,kBAAkB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAC5D,CAAC;oBACD,KAAK;oBACL,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;wBACtB,MAAM,YAAY,GAAG,KAAK,EAAE,CAAC;wBAE7B,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;4BACvC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;wBAChD,CAAC;wBAED,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;4BACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;wBAC1C,CAAC;wBAED,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;4BAChC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;wBAC7C,CAAC;wBAED,kGAAkG;wBAElG,OAAO,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBAC7B,CAAC;iBACF,CAAC;gBAEF,MAAM,OAAO,EAAE,CAAC;gBAEhB,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AA5RW,QAAA,mBAAmB,uBA4R9B"}
package/package.json CHANGED
@@ -16,22 +16,22 @@
16
16
  ]
17
17
  },
18
18
  "dependencies": {
19
- "@slonik/types": "^46.1.0",
20
- "@slonik/utilities": "^46.1.0",
19
+ "@slonik/types": "^46.3.0",
20
+ "@slonik/utilities": "^46.3.0",
21
21
  "roarr": "^7.21.1",
22
22
  "serialize-error": "^8.0.0",
23
23
  "strict-event-emitter-types": "^2.0.0"
24
24
  },
25
25
  "description": "A Node.js PostgreSQL client with strict types, detailed logging and assertions.",
26
26
  "devDependencies": {
27
- "@types/node": "^18.15.3",
27
+ "@types/node": "^22.9.0",
28
28
  "ava": "^6.1.3",
29
- "cspell": "^8.6.0",
30
- "eslint": "^8.57.0",
31
- "eslint-config-canonical": "^42.8.1",
29
+ "cspell": "^8.16.0",
30
+ "eslint": "^9.16.0",
32
31
  "nyc": "^15.1.0",
33
32
  "ts-node": "^10.9.1",
34
- "typescript": "^5.4.5"
33
+ "typescript": "^5.6.3",
34
+ "@slonik/eslint-config": "^46.3.0"
35
35
  },
36
36
  "engines": {
37
37
  "node": ">=18"
@@ -74,7 +74,7 @@
74
74
  "url": "https://github.com/gajus/slonik"
75
75
  },
76
76
  "types": "./dist/index.d.ts",
77
- "version": "46.1.0",
77
+ "version": "46.3.0",
78
78
  "scripts": {
79
79
  "build": "rm -fr ./dist && tsc --project ./tsconfig.json",
80
80
  "lint": "npm run lint:cspell && npm run lint:eslint && npm run lint:tsc",
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/consistent-type-definitions */
2
+
1
3
  import { Logger } from '../Logger';
2
4
  import { type Field } from '@slonik/types';
3
5
  import { generateUid } from '@slonik/utilities';
@@ -8,55 +10,26 @@ import { type ConnectionOptions as TlsConnectionOptions } from 'node:tls';
8
10
  import { serializeError } from 'serialize-error';
9
11
  import { type StrictEventEmitter } from 'strict-event-emitter-types';
10
12
 
11
- type StreamDataEvent<T> = { data: T; fields: readonly Field[] };
12
-
13
- // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
14
- export interface DriverStream<T> extends Readable {
15
- // eslint-disable-next-line @typescript-eslint/method-signature-style
16
- on(event: 'data', listener: (chunk: StreamDataEvent<T>) => void): this;
17
- // eslint-disable-next-line @typescript-eslint/method-signature-style
18
- on(event: string | symbol, listener: (...args: any[]) => void): this;
19
-
20
- [Symbol.asyncIterator]: () => AsyncIterableIterator<StreamDataEvent<T>>;
21
- }
22
-
23
- type BasicConnection = {
24
- readonly query: (query: string) => Promise<void>;
25
- };
26
-
27
- /**
28
- * @property name Value of "pg_type"."typname" (e.g. "int8", "timestamp", "timestamptz").
29
- */
30
- export type DriverTypeParser<T = unknown> = {
31
- readonly name: string;
32
- readonly parse: (value: string) => T;
33
- };
34
-
35
- export type DriverConfiguration = {
36
- readonly connectionTimeout: number | 'DISABLE_TIMEOUT';
37
- readonly connectionUri: string;
38
- readonly gracefulTerminationTimeout?: number;
39
- readonly idleInTransactionSessionTimeout: number | 'DISABLE_TIMEOUT';
40
- readonly idleTimeout?: number | 'DISABLE_TIMEOUT';
41
- readonly maximumPoolSize?: number;
42
- readonly minimumPoolSize?: number;
43
- readonly resetConnection?: (connection: BasicConnection) => Promise<void>;
44
- readonly ssl?: TlsConnectionOptions;
45
- readonly statementTimeout: number | 'DISABLE_TIMEOUT';
46
- readonly typeParsers: readonly DriverTypeParser[];
13
+ export type Driver = {
14
+ createClient: () => Promise<DriverClient>;
47
15
  };
48
16
 
49
- export type DriverNotice = {
50
- message: string;
17
+ export type DriverClient = {
18
+ acquire: () => void;
19
+ destroy: () => Promise<void>;
20
+ id: () => string;
21
+ off: DriverClientEventEmitter['off'];
22
+ on: DriverClientEventEmitter['on'];
23
+ query: (query: string, values?: unknown[]) => Promise<DriverQueryResult>;
24
+ release: () => Promise<void>;
25
+ removeListener: DriverClientEventEmitter['removeListener'];
26
+ state: () => DriverClientState;
27
+ stream: (
28
+ query: string,
29
+ values?: unknown[],
30
+ ) => DriverStream<DriverStreamResult>;
51
31
  };
52
32
 
53
- export type DriverEventEmitter = StrictEventEmitter<
54
- EventEmitter,
55
- {
56
- error: (error: Error) => void;
57
- }
58
- >;
59
-
60
33
  export type DriverClientEventEmitter = StrictEventEmitter<
61
34
  EventEmitter,
62
35
  {
@@ -75,54 +48,81 @@ export type DriverClientState =
75
48
  | 'PENDING_DESTROY'
76
49
  | 'PENDING_RELEASE';
77
50
 
78
- export type DriverClient = {
79
- acquire: () => void;
80
- destroy: () => Promise<void>;
81
- id: () => string;
82
- off: DriverClientEventEmitter['off'];
83
- on: DriverClientEventEmitter['on'];
84
- query: (query: string, values?: unknown[]) => Promise<DriverQueryResult>;
85
- release: () => Promise<void>;
86
- removeListener: DriverClientEventEmitter['removeListener'];
87
- state: () => DriverClientState;
88
- stream: (
89
- query: string,
90
- values?: unknown[],
91
- ) => DriverStream<DriverStreamResult>;
92
- };
51
+ export type DriverCommand = 'COPY' | 'DELETE' | 'INSERT' | 'SELECT' | 'UPDATE';
93
52
 
94
- export type Driver = {
95
- createClient: () => Promise<DriverClient>;
53
+ export type DriverConfiguration = {
54
+ readonly connectionTimeout: 'DISABLE_TIMEOUT' | number;
55
+ readonly connectionUri: string;
56
+ readonly gracefulTerminationTimeout?: number;
57
+ readonly idleInTransactionSessionTimeout: 'DISABLE_TIMEOUT' | number;
58
+ readonly idleTimeout?: 'DISABLE_TIMEOUT' | number;
59
+ readonly maximumPoolSize?: number;
60
+ readonly minimumPoolSize?: number;
61
+ readonly resetConnection?: (connection: BasicConnection) => Promise<void>;
62
+ readonly ssl?: TlsConnectionOptions;
63
+ readonly statementTimeout: 'DISABLE_TIMEOUT' | number;
64
+ readonly typeParsers: readonly DriverTypeParser[];
96
65
  };
97
66
 
67
+ export type DriverEventEmitter = StrictEventEmitter<
68
+ EventEmitter,
69
+ {
70
+ error: (error: Error) => void;
71
+ }
72
+ >;
73
+
98
74
  export type DriverFactory = ({
99
75
  driverConfiguration,
100
76
  }: {
101
77
  driverConfiguration: DriverConfiguration;
102
78
  }) => Promise<Driver>;
103
79
 
104
- type DriverField = {
105
- dataTypeId: number;
106
- name: string;
80
+ export type DriverNotice = {
81
+ message: string;
107
82
  };
108
83
 
109
- export type DriverCommand = 'COPY' | 'DELETE' | 'INSERT' | 'SELECT' | 'UPDATE';
110
-
111
84
  export type DriverQueryResult = {
112
85
  readonly command: DriverCommand;
113
86
  readonly fields: DriverField[];
114
- readonly rowCount: number | null;
87
+ readonly rowCount: null | number;
115
88
  readonly rows: Array<Record<string, unknown>>;
116
89
  };
117
90
 
91
+ // @ts-expect-error - TODO figure out how to fix this
92
+ export interface DriverStream<T> extends Readable {
93
+ [Symbol.asyncIterator]: () => AsyncIterableIterator<StreamDataEvent<T>>;
94
+ // eslint-disable-next-line @typescript-eslint/method-signature-style
95
+ on(event: 'data', listener: (chunk: StreamDataEvent<T>) => void): this;
96
+
97
+ // eslint-disable-next-line @typescript-eslint/method-signature-style
98
+ on(event: string | symbol, listener: (...args: any[]) => void): this;
99
+ }
100
+
118
101
  export type DriverStreamResult = {
119
102
  readonly fields: DriverField[];
120
103
  readonly row: Record<string, unknown>;
121
104
  };
122
105
 
106
+ /**
107
+ * @property name Value of "pg_type"."typname" (e.g. "int8", "timestamp", "timestamptz").
108
+ */
109
+ export type DriverTypeParser<T = unknown> = {
110
+ readonly name: string;
111
+ readonly parse: (value: string) => T;
112
+ };
113
+
114
+ type BasicConnection = {
115
+ readonly query: (query: string) => Promise<void>;
116
+ };
117
+
118
+ type DriverField = {
119
+ dataTypeId: number;
120
+ name: string;
121
+ };
122
+
123
123
  type DriverSetup = ({
124
- driverEventEmitter,
125
124
  driverConfiguration,
125
+ driverEventEmitter,
126
126
  }: {
127
127
  driverConfiguration: DriverConfiguration;
128
128
  driverEventEmitter: DriverEventEmitter;
@@ -151,6 +151,8 @@ type InternalPoolClientFactory = {
151
151
  }) => Promise<InternalPoolClient>;
152
152
  };
153
153
 
154
+ type StreamDataEvent<T> = { data: T; fields: readonly Field[] };
155
+
154
156
  export const createDriverFactory = (setup: DriverSetup): DriverFactory => {
155
157
  return async ({ driverConfiguration }): Promise<Driver> => {
156
158
  const { resetConnection } = driverConfiguration;
@@ -189,7 +191,7 @@ export const createDriverFactory = (setup: DriverSetup): DriverFactory => {
189
191
 
190
192
  clientEventEmitter.on('error', onError);
191
193
 
192
- const { query, stream, connect, end } = await createPoolClient({
194
+ const { connect, end, query, stream } = await createPoolClient({
193
195
  clientEventEmitter,
194
196
  });
195
197
 
@@ -197,9 +199,9 @@ export const createDriverFactory = (setup: DriverSetup): DriverFactory => {
197
199
  let isDestroyed = false;
198
200
  let idleTimeout: NodeJS.Timeout | null = null;
199
201
 
200
- let activeQueryPromise: Promise<DriverQueryResult> | null = null;
201
- let destroyPromise: Promise<void> | null = null;
202
- let releasePromise: Promise<void> | null = null;
202
+ let activeQueryPromise: null | Promise<DriverQueryResult> = null;
203
+ let destroyPromise: null | Promise<void> = null;
204
+ let releasePromise: null | Promise<void> = null;
203
205
 
204
206
  const id = generateUid();
205
207
 
@@ -311,7 +313,6 @@ export const createDriverFactory = (setup: DriverSetup): DriverFactory => {
311
313
  }, driverConfiguration.idleTimeout).unref();
312
314
  }
313
315
 
314
- // eslint-disable-next-line require-atomic-updates
315
316
  isAcquired = false;
316
317
 
317
318
  releasePromise = null;
@@ -397,7 +398,6 @@ export const createDriverFactory = (setup: DriverSetup): DriverFactory => {
397
398
 
398
399
  return result;
399
400
  } finally {
400
- // eslint-disable-next-line require-atomic-updates
401
401
  activeQueryPromise = null;
402
402
  }
403
403
  },