@simplysm/orm-node 13.0.75 → 13.0.77

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.
package/README.md CHANGED
@@ -17,181 +17,188 @@ pnpm add mysql2 # MySQL
17
17
  pnpm add pg pg-copy-streams # PostgreSQL
18
18
  ```
19
19
 
20
- ## Main Modules
21
-
22
- ### Core
20
+ ## Types
23
21
 
24
- #### `createOrm`
22
+ ### `DbConn`
25
23
 
26
- Node.js ORM factory function. Creates an `Orm` instance that binds a `DbContextDef` to a connection configuration and provides `connect` / `connectWithoutTransaction` helpers.
24
+ Low-level database connection interface implemented by `MssqlDbConn`, `MysqlDbConn`, and `PostgresqlDbConn`. Extends `EventEmitter<{ close: void }>`.
27
25
 
28
26
  ```typescript
29
- import { createOrm } from "@simplysm/orm-node";
30
- import { defineDbContext, queryable } from "@simplysm/orm-common";
27
+ import type { DbConn } from "@simplysm/orm-node";
28
+ ```
31
29
 
32
- const MyDb = defineDbContext({
33
- user: (db) => queryable(db, User),
34
- });
30
+ | Member | Type | Description |
31
+ |--------|------|-------------|
32
+ | `config` | `DbConnConfig` | Connection configuration |
33
+ | `isConnected` | `boolean` | Whether connected |
34
+ | `isInTransaction` | `boolean` | Whether a transaction is in progress |
35
+ | `connect()` | `Promise<void>` | Establish connection |
36
+ | `close()` | `Promise<void>` | Close connection |
37
+ | `beginTransaction(isolationLevel?)` | `Promise<void>` | Begin transaction |
38
+ | `commitTransaction()` | `Promise<void>` | Commit transaction |
39
+ | `rollbackTransaction()` | `Promise<void>` | Roll back transaction |
40
+ | `execute(queries)` | `Promise<Record<string, unknown>[][]>` | Execute SQL string array |
41
+ | `executeParametrized(query, params?)` | `Promise<Record<string, unknown>[][]>` | Execute parameterized query |
42
+ | `bulkInsert(tableName, columnMetas, records)` | `Promise<void>` | Bulk insert using native bulk API |
35
43
 
36
- const orm = createOrm(MyDb, {
37
- dialect: "mysql",
38
- host: "localhost",
39
- port: 3306,
40
- username: "root",
41
- password: "password",
42
- database: "mydb",
43
- });
44
+ ---
44
45
 
45
- // Execute within a transaction
46
- const users = await orm.connect(async (db) => {
47
- return db.user().result();
48
- });
46
+ ### `DbConnConfig`
49
47
 
50
- // Execute without a transaction
51
- const users2 = await orm.connectWithoutTransaction(async (db) => {
52
- return db.user().result();
53
- });
48
+ Union type that selects the correct configuration shape based on `dialect`.
49
+
50
+ ```typescript
51
+ import type { DbConnConfig } from "@simplysm/orm-node";
52
+
53
+ type DbConnConfig = MysqlDbConnConfig | MssqlDbConnConfig | PostgresqlDbConnConfig;
54
54
  ```
55
55
 
56
- **Signature**
56
+ ---
57
+
58
+ ### `MysqlDbConnConfig`
57
59
 
58
60
  ```typescript
59
- function createOrm<TDef extends DbContextDef<any, any, any>>(
60
- dbContextDef: TDef,
61
- config: DbConnConfig,
62
- options?: OrmOptions,
63
- ): Orm<TDef>
61
+ import type { MysqlDbConnConfig } from "@simplysm/orm-node";
64
62
  ```
65
63
 
66
- | Parameter | Type | Description |
67
- |-----------|------|-------------|
68
- | `dbContextDef` | `TDef` | DbContext definition created with `defineDbContext` |
69
- | `config` | `DbConnConfig` | Database connection configuration |
70
- | `options` | `OrmOptions` (optional) | Override `database` or `schema` from config |
64
+ | Property | Type | Description |
65
+ |----------|------|-------------|
66
+ | `dialect` | `"mysql"` | Dialect discriminant |
67
+ | `host` | `string` | Hostname |
68
+ | `port` | `number` (optional) | Port (default: 3306) |
69
+ | `username` | `string` | Username |
70
+ | `password` | `string` | Password |
71
+ | `database` | `string` (optional) | Database name |
72
+ | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
73
+ | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
71
74
 
72
75
  ---
73
76
 
74
- #### `createDbConn`
75
-
76
- Low-level DB connection factory. Acquires a `PooledDbConn` from the internal connection pool for the given configuration. Creates a new pool on first call; reuses the same pool on subsequent calls with the same configuration.
77
+ ### `MssqlDbConnConfig`
77
78
 
78
79
  ```typescript
79
- import { createDbConn } from "@simplysm/orm-node";
80
+ import type { MssqlDbConnConfig } from "@simplysm/orm-node";
81
+ ```
80
82
 
81
- const conn = await createDbConn({
82
- dialect: "postgresql",
83
- host: "localhost",
84
- username: "postgres",
85
- password: "secret",
86
- database: "mydb",
87
- });
83
+ | Property | Type | Description |
84
+ |----------|------|-------------|
85
+ | `dialect` | `"mssql" \| "mssql-azure"` | Dialect discriminant (`mssql-azure` enables TLS encryption) |
86
+ | `host` | `string` | Hostname |
87
+ | `port` | `number` (optional) | Port (default: 1433) |
88
+ | `username` | `string` | Username |
89
+ | `password` | `string` | Password |
90
+ | `database` | `string` (optional) | Database name |
91
+ | `schema` | `string` (optional) | Schema name (default: `dbo`) |
92
+ | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
93
+ | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
88
94
 
89
- await conn.connect();
90
- await conn.beginTransaction();
91
- // ... execute queries ...
92
- await conn.commitTransaction();
93
- await conn.close(); // returns connection to pool
94
- ```
95
+ ---
95
96
 
96
- **Signature**
97
+ ### `PostgresqlDbConnConfig`
97
98
 
98
99
  ```typescript
99
- function createDbConn(config: DbConnConfig): Promise<DbConn>
100
+ import type { PostgresqlDbConnConfig } from "@simplysm/orm-node";
100
101
  ```
101
102
 
103
+ | Property | Type | Description |
104
+ |----------|------|-------------|
105
+ | `dialect` | `"postgresql"` | Dialect discriminant |
106
+ | `host` | `string` | Hostname |
107
+ | `port` | `number` (optional) | Port (default: 5432) |
108
+ | `username` | `string` | Username |
109
+ | `password` | `string` | Password |
110
+ | `database` | `string` (optional) | Database name |
111
+ | `schema` | `string` (optional) | Schema name (default: `public`) |
112
+ | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
113
+ | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
114
+
102
115
  ---
103
116
 
104
- #### `NodeDbContextExecutor`
117
+ ### `DbPoolConfig`
105
118
 
106
- `DbContextExecutor` implementation for the Node.js environment. Used internally by `createOrm`. Can be passed directly to `createDbContext` from `@simplysm/orm-common` when fine-grained control is needed.
119
+ Connection pool settings shared by all configuration types.
107
120
 
108
121
  ```typescript
109
- import { NodeDbContextExecutor } from "@simplysm/orm-node";
110
- import { createDbContext } from "@simplysm/orm-common";
122
+ import type { DbPoolConfig } from "@simplysm/orm-node";
123
+ ```
111
124
 
112
- const executor = new NodeDbContextExecutor({
113
- dialect: "mssql",
114
- host: "localhost",
115
- username: "sa",
116
- password: "Password1",
117
- database: "mydb",
118
- });
125
+ | Property | Type | Description |
126
+ |----------|------|-------------|
127
+ | `min` | `number` (optional) | Minimum connections in pool (default: `1`) |
128
+ | `max` | `number` (optional) | Maximum connections in pool (default: `10`) |
129
+ | `acquireTimeoutMillis` | `number` (optional) | Timeout to acquire a connection in ms (default: `30000`) |
130
+ | `idleTimeoutMillis` | `number` (optional) | Timeout before an idle connection is destroyed in ms (default: `30000`) |
119
131
 
120
- const db = createDbContext(MyDb, executor, { database: "mydb" });
121
- await db.connect(async () => {
122
- const rows = await db.user().result();
123
- });
124
- ```
132
+ ---
125
133
 
126
- **Constructor**
134
+ ### `getDialectFromConfig`
135
+
136
+ Utility function that normalizes `"mssql-azure"` to `"mssql"` and returns the `Dialect` value from a `DbConnConfig`.
127
137
 
128
138
  ```typescript
129
- new NodeDbContextExecutor(config: DbConnConfig)
139
+ import { getDialectFromConfig } from "@simplysm/orm-node";
140
+
141
+ const dialect = getDialectFromConfig({ dialect: "mssql-azure", ... }); // "mssql"
130
142
  ```
131
143
 
132
- **Methods** (all delegate to the underlying `DbConn`)
144
+ **Signature**
133
145
 
134
- | Method | Description |
135
- |--------|-------------|
136
- | `connect()` | Acquire connection from pool and open it |
137
- | `close()` | Close connection and return it to pool |
138
- | `beginTransaction(isolationLevel?)` | Begin a transaction |
139
- | `commitTransaction()` | Commit the current transaction |
140
- | `rollbackTransaction()` | Roll back the current transaction |
141
- | `executeParametrized(query, params?)` | Execute a parameterized SQL query |
142
- | `bulkInsert(tableName, columnMetas, records)` | Bulk insert using the native bulk API |
143
- | `executeDefs(defs, resultMetas?)` | Build and execute `QueryDef` array, parse results |
146
+ ```typescript
147
+ function getDialectFromConfig(config: DbConnConfig): Dialect
148
+ ```
144
149
 
145
150
  ---
146
151
 
147
- #### `PooledDbConn`
152
+ ### Constants
148
153
 
149
- `DbConn` wrapper that manages connection pool lifecycle. Returned by `createDbConn`. Calling `close()` returns the underlying physical connection to the pool rather than terminating it.
154
+ | Name | Value | Description |
155
+ |------|-------|-------------|
156
+ | `DB_CONN_CONNECT_TIMEOUT` | `10000` | Connection establishment timeout in ms (10 seconds) |
157
+ | `DB_CONN_DEFAULT_TIMEOUT` | `600000` | Query default timeout in ms (10 minutes) |
158
+ | `DB_CONN_ERRORS` | `{ NOT_CONNECTED, ALREADY_CONNECTED }` | Standard connection error message strings |
150
159
 
151
160
  ```typescript
152
- import { createDbConn } from "@simplysm/orm-node";
153
-
154
- const conn = await createDbConn(config); // returns PooledDbConn
155
- await conn.connect(); // acquires physical connection from pool
156
- await conn.close(); // releases physical connection back to pool
161
+ import { DB_CONN_CONNECT_TIMEOUT, DB_CONN_DEFAULT_TIMEOUT, DB_CONN_ERRORS } from "@simplysm/orm-node";
157
162
  ```
158
163
 
159
- **Constructor**
164
+ ---
165
+
166
+ ### `Orm<TDef>`
167
+
168
+ Type of the object returned from `createOrm`.
160
169
 
161
170
  ```typescript
162
- new PooledDbConn(
163
- pool: Pool<DbConn>,
164
- initialConfig: DbConnConfig,
165
- getLastCreateError?: () => Error | undefined,
166
- )
171
+ import type { Orm } from "@simplysm/orm-node";
167
172
  ```
168
173
 
169
- **Properties**
174
+ | Member | Type | Description |
175
+ |--------|------|-------------|
176
+ | `dbContextDef` | `TDef` | DbContext definition |
177
+ | `config` | `DbConnConfig` | Connection configuration |
178
+ | `options` | `OrmOptions \| undefined` | ORM options |
179
+ | `connect(callback, isolationLevel?)` | `Promise<R>` | Execute callback within a transaction |
180
+ | `connectWithoutTransaction(callback)` | `Promise<R>` | Execute callback without a transaction |
170
181
 
171
- | Property | Type | Description |
172
- |----------|------|-------------|
173
- | `config` | `DbConnConfig` | Active connection configuration |
174
- | `isConnected` | `boolean` | Whether a physical connection is currently held |
175
- | `isInTransaction` | `boolean` | Whether a transaction is in progress |
182
+ ---
176
183
 
177
- **Methods**
184
+ ### `OrmOptions`
178
185
 
179
- | Method | Description |
180
- |--------|-------------|
181
- | `connect()` | Acquire connection from pool |
182
- | `close()` | Roll back pending transaction (if any) and release connection to pool |
183
- | `beginTransaction(isolationLevel?)` | Begin a transaction |
184
- | `commitTransaction()` | Commit the current transaction |
185
- | `rollbackTransaction()` | Roll back the current transaction |
186
- | `execute(queries)` | Execute SQL string array |
187
- | `executeParametrized(query, params?)` | Execute parameterized SQL query |
188
- | `bulkInsert(tableName, columnMetas, records)` | Bulk insert using native bulk API |
186
+ Options passed to `createOrm` to override connection-level database/schema settings.
187
+
188
+ ```typescript
189
+ import type { OrmOptions } from "@simplysm/orm-node";
190
+ ```
191
+
192
+ | Property | Type | Description |
193
+ |----------|------|-------------|
194
+ | `database` | `string` (optional) | Override database name from `DbConnConfig` |
195
+ | `schema` | `string` (optional) | Override schema name (MSSQL: `dbo`, PostgreSQL: `public`) |
189
196
 
190
197
  ---
191
198
 
192
- ### Connections
199
+ ## Connections
193
200
 
194
- #### `MssqlDbConn`
201
+ ### `MssqlDbConn`
195
202
 
196
203
  MSSQL / Azure SQL database connection. Uses the `tedious` library. Requires `tedious` as a peer dependency.
197
204
 
@@ -229,11 +236,11 @@ new MssqlDbConn(
229
236
  | `isConnected` | `boolean` | Whether connected |
230
237
  | `isInTransaction` | `boolean` | Whether transaction is in progress |
231
238
 
232
- **Methods** — implements `DbConn` (see interface below)
239
+ **Methods** — implements `DbConn` (see interface above)
233
240
 
234
241
  ---
235
242
 
236
- #### `MysqlDbConn`
243
+ ### `MysqlDbConn`
237
244
 
238
245
  MySQL database connection. Uses the `mysql2/promise` library. Requires `mysql2` as a peer dependency.
239
246
 
@@ -271,11 +278,11 @@ new MysqlDbConn(
271
278
  | `isConnected` | `boolean` | Whether connected |
272
279
  | `isInTransaction` | `boolean` | Whether transaction is in progress |
273
280
 
274
- **Methods** — implements `DbConn` (see interface below)
281
+ **Methods** — implements `DbConn` (see interface above)
275
282
 
276
283
  ---
277
284
 
278
- #### `PostgresqlDbConn`
285
+ ### `PostgresqlDbConn`
279
286
 
280
287
  PostgreSQL database connection. Uses the `pg` library and `pg-copy-streams` for bulk insert. Requires `pg` and `pg-copy-streams` as peer dependencies.
281
288
 
@@ -315,183 +322,174 @@ new PostgresqlDbConn(
315
322
  | `isConnected` | `boolean` | Whether connected |
316
323
  | `isInTransaction` | `boolean` | Whether transaction is in progress |
317
324
 
318
- **Methods** — implements `DbConn` (see interface below)
325
+ **Methods** — implements `DbConn` (see interface above)
319
326
 
320
327
  ---
321
328
 
322
- ## Types
329
+ ## Core
323
330
 
324
- ### `DbConn`
331
+ ### `createOrm`
325
332
 
326
- Low-level database connection interface implemented by `MssqlDbConn`, `MysqlDbConn`, and `PostgresqlDbConn`. Extends `EventEmitter<{ close: void }>`.
333
+ Node.js ORM factory function. Creates an `Orm` instance that binds a `DbContextDef` to a connection configuration and provides `connect` / `connectWithoutTransaction` helpers.
327
334
 
328
335
  ```typescript
329
- import type { DbConn } from "@simplysm/orm-node";
330
- ```
331
-
332
- | Member | Type | Description |
333
- |--------|------|-------------|
334
- | `config` | `DbConnConfig` | Connection configuration |
335
- | `isConnected` | `boolean` | Whether connected |
336
- | `isInTransaction` | `boolean` | Whether a transaction is in progress |
337
- | `connect()` | `Promise<void>` | Establish connection |
338
- | `close()` | `Promise<void>` | Close connection |
339
- | `beginTransaction(isolationLevel?)` | `Promise<void>` | Begin transaction |
340
- | `commitTransaction()` | `Promise<void>` | Commit transaction |
341
- | `rollbackTransaction()` | `Promise<void>` | Roll back transaction |
342
- | `execute(queries)` | `Promise<Record<string, unknown>[][]>` | Execute SQL string array |
343
- | `executeParametrized(query, params?)` | `Promise<Record<string, unknown>[][]>` | Execute parameterized query |
344
- | `bulkInsert(tableName, columnMetas, records)` | `Promise<void>` | Bulk insert using native bulk API |
336
+ import { createOrm } from "@simplysm/orm-node";
337
+ import { defineDbContext, queryable } from "@simplysm/orm-common";
345
338
 
346
- ---
339
+ const MyDb = defineDbContext({
340
+ user: (db) => queryable(db, User),
341
+ });
347
342
 
348
- ### `Orm<TDef>`
343
+ const orm = createOrm(MyDb, {
344
+ dialect: "mysql",
345
+ host: "localhost",
346
+ port: 3306,
347
+ username: "root",
348
+ password: "password",
349
+ database: "mydb",
350
+ });
349
351
 
350
- Type of the object returned from `createOrm`.
352
+ // Execute within a transaction
353
+ const users = await orm.connect(async (db) => {
354
+ return db.user().result();
355
+ });
351
356
 
352
- ```typescript
353
- import type { Orm } from "@simplysm/orm-node";
357
+ // Execute without a transaction
358
+ const users2 = await orm.connectWithoutTransaction(async (db) => {
359
+ return db.user().result();
360
+ });
354
361
  ```
355
362
 
356
- | Member | Type | Description |
357
- |--------|------|-------------|
358
- | `dbContextDef` | `TDef` | DbContext definition |
359
- | `config` | `DbConnConfig` | Connection configuration |
360
- | `options` | `OrmOptions \| undefined` | ORM options |
361
- | `connect(callback, isolationLevel?)` | `Promise<R>` | Execute callback within a transaction |
362
- | `connectWithoutTransaction(callback)` | `Promise<R>` | Execute callback without a transaction |
363
-
364
- ---
365
-
366
- ### `OrmOptions`
367
-
368
- Options passed to `createOrm` to override connection-level database/schema settings.
363
+ **Signature**
369
364
 
370
365
  ```typescript
371
- import type { OrmOptions } from "@simplysm/orm-node";
366
+ function createOrm<TDef extends DbContextDef<any, any, any>>(
367
+ dbContextDef: TDef,
368
+ config: DbConnConfig,
369
+ options?: OrmOptions,
370
+ ): Orm<TDef>
372
371
  ```
373
372
 
374
- | Property | Type | Description |
375
- |----------|------|-------------|
376
- | `database` | `string` (optional) | Override database name from `DbConnConfig` |
377
- | `schema` | `string` (optional) | Override schema name (MSSQL: `dbo`, PostgreSQL: `public`) |
373
+ | Parameter | Type | Description |
374
+ |-----------|------|-------------|
375
+ | `dbContextDef` | `TDef` | DbContext definition created with `defineDbContext` |
376
+ | `config` | `DbConnConfig` | Database connection configuration |
377
+ | `options` | `OrmOptions` (optional) | Override `database` or `schema` from config |
378
378
 
379
379
  ---
380
380
 
381
- ### `DbConnConfig`
381
+ ### `createDbConn`
382
382
 
383
- Union type that selects the correct configuration shape based on `dialect`.
383
+ Low-level DB connection factory. Acquires a `PooledDbConn` from the internal connection pool for the given configuration. Creates a new pool on first call; reuses the same pool on subsequent calls with the same configuration.
384
384
 
385
385
  ```typescript
386
- import type { DbConnConfig } from "@simplysm/orm-node";
387
-
388
- type DbConnConfig = MysqlDbConnConfig | MssqlDbConnConfig | PostgresqlDbConnConfig;
389
- ```
390
-
391
- ---
386
+ import { createDbConn } from "@simplysm/orm-node";
392
387
 
393
- ### `MysqlDbConnConfig`
388
+ const conn = await createDbConn({
389
+ dialect: "postgresql",
390
+ host: "localhost",
391
+ username: "postgres",
392
+ password: "secret",
393
+ database: "mydb",
394
+ });
394
395
 
395
- ```typescript
396
- import type { MysqlDbConnConfig } from "@simplysm/orm-node";
396
+ await conn.connect();
397
+ await conn.beginTransaction();
398
+ // ... execute queries ...
399
+ await conn.commitTransaction();
400
+ await conn.close(); // returns connection to pool
397
401
  ```
398
402
 
399
- | Property | Type | Description |
400
- |----------|------|-------------|
401
- | `dialect` | `"mysql"` | Dialect discriminant |
402
- | `host` | `string` | Hostname |
403
- | `port` | `number` (optional) | Port (default: 3306) |
404
- | `username` | `string` | Username |
405
- | `password` | `string` | Password |
406
- | `database` | `string` (optional) | Database name |
407
- | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
408
- | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
409
-
410
- ---
411
-
412
- ### `MssqlDbConnConfig`
403
+ **Signature**
413
404
 
414
405
  ```typescript
415
- import type { MssqlDbConnConfig } from "@simplysm/orm-node";
406
+ function createDbConn(config: DbConnConfig): Promise<DbConn>
416
407
  ```
417
408
 
418
- | Property | Type | Description |
419
- |----------|------|-------------|
420
- | `dialect` | `"mssql" \| "mssql-azure"` | Dialect discriminant (`mssql-azure` enables TLS encryption) |
421
- | `host` | `string` | Hostname |
422
- | `port` | `number` (optional) | Port (default: 1433) |
423
- | `username` | `string` | Username |
424
- | `password` | `string` | Password |
425
- | `database` | `string` (optional) | Database name |
426
- | `schema` | `string` (optional) | Schema name (default: `dbo`) |
427
- | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
428
- | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
429
-
430
409
  ---
431
410
 
432
- ### `PostgresqlDbConnConfig`
411
+ ### `NodeDbContextExecutor`
433
412
 
434
- ```typescript
435
- import type { PostgresqlDbConnConfig } from "@simplysm/orm-node";
436
- ```
413
+ `DbContextExecutor` implementation for the Node.js environment. Used internally by `createOrm`. Can be passed directly to `createDbContext` from `@simplysm/orm-common` when fine-grained control is needed.
437
414
 
438
- | Property | Type | Description |
439
- |----------|------|-------------|
440
- | `dialect` | `"postgresql"` | Dialect discriminant |
441
- | `host` | `string` | Hostname |
442
- | `port` | `number` (optional) | Port (default: 5432) |
443
- | `username` | `string` | Username |
444
- | `password` | `string` | Password |
445
- | `database` | `string` (optional) | Database name |
446
- | `schema` | `string` (optional) | Schema name (default: `public`) |
447
- | `defaultIsolationLevel` | `IsolationLevel` (optional) | Default isolation level |
448
- | `pool` | `DbPoolConfig` (optional) | Connection pool settings |
415
+ ```typescript
416
+ import { NodeDbContextExecutor } from "@simplysm/orm-node";
417
+ import { createDbContext } from "@simplysm/orm-common";
449
418
 
450
- ---
419
+ const executor = new NodeDbContextExecutor({
420
+ dialect: "mssql",
421
+ host: "localhost",
422
+ username: "sa",
423
+ password: "Password1",
424
+ database: "mydb",
425
+ });
451
426
 
452
- ### `DbPoolConfig`
427
+ const db = createDbContext(MyDb, executor, { database: "mydb" });
428
+ await db.connect(async () => {
429
+ const rows = await db.user().result();
430
+ });
431
+ ```
453
432
 
454
- Connection pool settings shared by all configuration types.
433
+ **Constructor**
455
434
 
456
435
  ```typescript
457
- import type { DbPoolConfig } from "@simplysm/orm-node";
436
+ new NodeDbContextExecutor(config: DbConnConfig)
458
437
  ```
459
438
 
460
- | Property | Type | Description |
461
- |----------|------|-------------|
462
- | `min` | `number` (optional) | Minimum connections in pool (default: `1`) |
463
- | `max` | `number` (optional) | Maximum connections in pool (default: `10`) |
464
- | `acquireTimeoutMillis` | `number` (optional) | Timeout to acquire a connection in ms (default: `30000`) |
465
- | `idleTimeoutMillis` | `number` (optional) | Timeout before an idle connection is destroyed in ms (default: `30000`) |
439
+ **Methods** (all delegate to the underlying `DbConn`)
440
+
441
+ | Method | Description |
442
+ |--------|-------------|
443
+ | `connect()` | Acquire connection from pool and open it |
444
+ | `close()` | Close connection and return it to pool |
445
+ | `beginTransaction(isolationLevel?)` | Begin a transaction |
446
+ | `commitTransaction()` | Commit the current transaction |
447
+ | `rollbackTransaction()` | Roll back the current transaction |
448
+ | `executeParametrized(query, params?)` | Execute a parameterized SQL query |
449
+ | `bulkInsert(tableName, columnMetas, records)` | Bulk insert using the native bulk API |
450
+ | `executeDefs<T = DataRecord>(defs, resultMetas?)` | Build and execute `QueryDef` array, parse results |
466
451
 
467
452
  ---
468
453
 
469
- ### `getDialectFromConfig`
454
+ ### `PooledDbConn`
470
455
 
471
- Utility function that normalizes `"mssql-azure"` to `"mssql"` and returns the `Dialect` value from a `DbConnConfig`.
456
+ `DbConn` wrapper that manages connection pool lifecycle. Returned by `createDbConn`. Calling `close()` returns the underlying physical connection to the pool rather than terminating it.
472
457
 
473
458
  ```typescript
474
- import { getDialectFromConfig } from "@simplysm/orm-node";
459
+ import { createDbConn } from "@simplysm/orm-node";
475
460
 
476
- const dialect = getDialectFromConfig({ dialect: "mssql-azure", ... }); // "mssql"
461
+ const conn = await createDbConn(config); // returns PooledDbConn
462
+ await conn.connect(); // acquires physical connection from pool
463
+ await conn.close(); // releases physical connection back to pool
477
464
  ```
478
465
 
479
- **Signature**
466
+ **Constructor**
480
467
 
481
468
  ```typescript
482
- function getDialectFromConfig(config: DbConnConfig): Dialect
469
+ new PooledDbConn(
470
+ pool: Pool<DbConn>,
471
+ initialConfig: DbConnConfig,
472
+ getLastCreateError?: () => Error | undefined,
473
+ )
483
474
  ```
484
475
 
485
- ---
476
+ **Properties**
486
477
 
487
- ### Constants
478
+ | Property | Type | Description |
479
+ |----------|------|-------------|
480
+ | `config` | `DbConnConfig` | Active connection configuration |
481
+ | `isConnected` | `boolean` | Whether a physical connection is currently held |
482
+ | `isInTransaction` | `boolean` | Whether a transaction is in progress |
488
483
 
489
- | Name | Value | Description |
490
- |------|-------|-------------|
491
- | `DB_CONN_CONNECT_TIMEOUT` | `10000` | Connection establishment timeout in ms (10 seconds) |
492
- | `DB_CONN_DEFAULT_TIMEOUT` | `600000` | Query default timeout in ms (10 minutes) |
493
- | `DB_CONN_ERRORS` | `{ NOT_CONNECTED, ALREADY_CONNECTED }` | Standard connection error message strings |
484
+ **Methods**
494
485
 
495
- ```typescript
496
- import { DB_CONN_CONNECT_TIMEOUT, DB_CONN_DEFAULT_TIMEOUT, DB_CONN_ERRORS } from "@simplysm/orm-node";
497
- ```
486
+ | Method | Description |
487
+ |--------|-------------|
488
+ | `connect()` | Acquire connection from pool |
489
+ | `close()` | Roll back pending transaction (if any) and release connection to pool |
490
+ | `beginTransaction(isolationLevel?)` | Begin a transaction |
491
+ | `commitTransaction()` | Commit the current transaction |
492
+ | `rollbackTransaction()` | Roll back the current transaction |
493
+ | `execute(queries)` | Execute SQL string array |
494
+ | `executeParametrized(query, params?)` | Execute parameterized SQL query |
495
+ | `bulkInsert(tableName, columnMetas, records)` | Bulk insert using native bulk API |
@@ -1 +1 @@
1
- {"version":3,"file":"mssql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\mssql-db-conn.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,YAAY,EAKb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAM1B;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAW5E,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAXpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,KAAK,CAAC,CAAyB;IACvC,OAAO,CAAC,YAAY,CAAC,CAAgC;IACrD,OAAO,CAAC,SAAS,CAA6B;IAE9C,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,QAAQ,EAAE,cAAc,SAAS,CAAC,EAC1C,MAAM,EAAE,iBAAiB;IAK9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4DxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBtB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAUhE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IA+FjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAoDhB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,wCAAwC;IAqBhD,OAAO,CAAC,uCAAuC;IA4C/C;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;CAmB1B"}
1
+ {"version":3,"file":"mssql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\mssql-db-conn.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,YAAY,EAGb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAM1B;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAW5E,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAXpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,KAAK,CAAC,CAAyB;IACvC,OAAO,CAAC,YAAY,CAAC,CAAgC;IACrD,OAAO,CAAC,SAAS,CAA6B;IAE9C,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,QAAQ,EAAE,cAAc,SAAS,CAAC,EAC1C,MAAM,EAAE,iBAAiB;IAK9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4DxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBtB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAUhE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IA+FjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAoDhB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,wCAAwC;IAqBhD,OAAO,CAAC,uCAAuC;IA4C/C;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;CAmB1B"}
@@ -2,13 +2,13 @@ import consola from "consola";
2
2
  import {
3
3
  DateOnly,
4
4
  DateTime,
5
- jsonStringify,
5
+ json,
6
+ str,
7
+ wait,
6
8
  SdError,
7
9
  EventEmitter,
8
- strIsNullOrEmpty,
9
10
  Time,
10
- Uuid,
11
- waitUntil
11
+ Uuid
12
12
  } from "@simplysm/core-common";
13
13
  import {
14
14
  DB_CONN_CONNECT_TIMEOUT,
@@ -86,10 +86,10 @@ class MssqlDbConn extends EventEmitter {
86
86
  }
87
87
  const conn = this._conn;
88
88
  conn.cancel();
89
- await waitUntil(() => this._requests.length < 1, 3e4, 100);
89
+ await wait.until(() => this._requests.length < 1, 3e4, 100);
90
90
  await new Promise((resolve) => {
91
91
  conn.on("end", () => {
92
- waitUntil(() => this._conn == null, 3e4, 100).then(() => resolve()).catch(() => resolve());
92
+ wait.until(() => this._conn == null, 3e4, 100).then(() => resolve()).catch(() => resolve());
93
93
  });
94
94
  conn.close();
95
95
  });
@@ -145,7 +145,7 @@ class MssqlDbConn extends EventEmitter {
145
145
  }
146
146
  async execute(queries) {
147
147
  const results = [];
148
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
148
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
149
149
  const resultItems = await this.executeParametrized(query);
150
150
  results.push(...resultItems);
151
151
  }
@@ -163,11 +163,11 @@ class MssqlDbConn extends EventEmitter {
163
163
  if (err != null) {
164
164
  rejected = true;
165
165
  this._requests = this._requests.filter((r) => r !== queryRequest);
166
- const errRec = err;
167
- if (errRec["code"] === "ECANCEL") {
166
+ const errCode = "code" in err ? err.code : void 0;
167
+ if (errCode === "ECANCEL") {
168
168
  reject(new SdError(err, "Query was cancelled."));
169
169
  } else {
170
- const lineNumber = errRec["lineNumber"];
170
+ const lineNumber = "lineNumber" in err && typeof err.lineNumber === "number" ? err.lineNumber : void 0;
171
171
  if (lineNumber != null && lineNumber > 0) {
172
172
  const splitQuery = query.split("\n");
173
173
  splitQuery[lineNumber - 1] = "==> " + splitQuery[lineNumber - 1];
@@ -246,9 +246,9 @@ ${query}
246
246
  new SdError(
247
247
  err,
248
248
  `Bulk Insert error
249
- ${jsonStringify(tediousColumnDefs)}
249
+ ${json.stringify(tediousColumnDefs)}
250
250
  -- data
251
- ${jsonStringify(records).substring(0, 1e4)}...
251
+ ${json.stringify(records).substring(0, 1e4)}...
252
252
  --`
253
253
  )
254
254
  );
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/connections/mssql-db-conn.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mysql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\mysql-db-conn.ts"],"names":[],"mappings":"AAMA,OAAO,EAKL,YAAY,EAIb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAGL,KAAK,MAAM,EACX,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAI1B;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAW5E,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAXpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,KAAK,CAAC,CAAa;IAC3B,OAAO,CAAC,YAAY,CAAC,CAAgC;IAErD,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,OAAO,EAAE,cAAc,gBAAgB,CAAC,EAChD,MAAM,EAAE,iBAAiB;IAK9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBhE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAShE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IA4CjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAyDhB;;OAEG;IACH,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;CAQtB"}
1
+ {"version":3,"file":"mysql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\mysql-db-conn.ts"],"names":[],"mappings":"AAMA,OAAO,EAML,YAAY,EAGb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAGL,KAAK,MAAM,EACX,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAI1B;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAW5E,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAXpC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,KAAK,CAAC,CAAa;IAC3B,OAAO,CAAC,YAAY,CAAC,CAAgC;IAErD,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,OAAO,EAAE,cAAc,gBAAgB,CAAC,EAChD,MAAM,EAAE,iBAAiB;IAK9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgCxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBhE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAShE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IA4CjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAyDhB;;OAEG;IACH,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;CAQtB"}
@@ -4,12 +4,12 @@ import os from "os";
4
4
  import path from "path";
5
5
  import consola from "consola";
6
6
  import {
7
- bytesToHex,
7
+ bytes,
8
+ str,
8
9
  DateOnly,
9
10
  DateTime,
10
11
  SdError,
11
12
  EventEmitter,
12
- strIsNullOrEmpty,
13
13
  Time,
14
14
  Uuid
15
15
  } from "@simplysm/core-common";
@@ -89,7 +89,7 @@ class MysqlDbConn extends EventEmitter {
89
89
  }
90
90
  async execute(queries) {
91
91
  const results = [];
92
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
92
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
93
93
  const resultItems = await this.executeParametrized(query);
94
94
  results.push(...resultItems);
95
95
  }
@@ -182,8 +182,8 @@ class MysqlDbConn extends EventEmitter {
182
182
  case "varchar":
183
183
  case "char":
184
184
  case "text": {
185
- const str = value;
186
- return str.replace(/\\/g, "\\\\").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r");
185
+ const strVal = value;
186
+ return strVal.replace(/\\/g, "\\\\").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r");
187
187
  }
188
188
  case "datetime":
189
189
  return value.toFormatString("yyyy-MM-dd HH:mm:ss.fff");
@@ -195,7 +195,7 @@ class MysqlDbConn extends EventEmitter {
195
195
  return value.toString().replace(/-/g, "");
196
196
  // Hex for BINARY(16) storage
197
197
  case "binary":
198
- return bytesToHex(value);
198
+ return bytes.toHex(value);
199
199
  default:
200
200
  throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
201
201
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/connections/mysql-db-conn.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"postgresql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\postgresql-db-conn.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,YAAY,EAIb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAK1B;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAUjF,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,QAAQ,CAAC,MAAM,EAAE,sBAAsB;IAXzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,YAAY,CAAC,CAAgC;IAErD,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,GAAG,EAAE,cAAc,IAAI,CAAC,EACxB,cAAc,EAAE,cAAc,iBAAiB,CAAC,EACxD,MAAM,EAAE,sBAAsB;IAKnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAehE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAShE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAmBjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAsChB;;OAEG;IACH,OAAO,CAAC,aAAa;IAqDrB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;CAQtB"}
1
+ {"version":3,"file":"postgresql-db-conn.d.ts","sourceRoot":"","sources":["..\\..\\src\\connections\\postgresql-db-conn.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,YAAY,EAGb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAC;AAK1B;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,YAAY,CAAC;IAAE,KAAK,EAAE,IAAI,CAAA;CAAE,CAAE,YAAW,MAAM;IAUjF,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,QAAQ,CAAC,MAAM,EAAE,sBAAsB;IAXzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA2B;IAEpD,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,YAAY,CAAC,CAAgC;IAErD,WAAW,UAAS;IACpB,eAAe,UAAS;gBAGL,GAAG,EAAE,cAAc,IAAI,CAAC,EACxB,cAAc,EAAE,cAAc,iBAAiB,CAAC,EACxD,MAAM,EAAE,sBAAsB;IAKnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,gBAAgB,CAAC,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAehE,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMpC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAShE,mBAAmB,CACvB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;IAmBjC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,OAAO,CAAC,IAAI,CAAC;IAsChB;;OAEG;IACH,OAAO,CAAC,aAAa;IAqDrB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;CAQtB"}
@@ -1,12 +1,12 @@
1
1
  import { Readable } from "stream";
2
2
  import consola from "consola";
3
3
  import {
4
- bytesToHex,
4
+ bytes,
5
+ str,
5
6
  DateOnly,
6
7
  DateTime,
7
8
  SdError,
8
9
  EventEmitter,
9
- strIsNullOrEmpty,
10
10
  Time,
11
11
  Uuid
12
12
  } from "@simplysm/core-common";
@@ -81,7 +81,7 @@ class PostgresqlDbConn extends EventEmitter {
81
81
  }
82
82
  async execute(queries) {
83
83
  const results = [];
84
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
84
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
85
85
  const resultItems = await this.executeParametrized(query);
86
86
  results.push(...resultItems);
87
87
  }
@@ -145,11 +145,11 @@ class PostgresqlDbConn extends EventEmitter {
145
145
  case "varchar":
146
146
  case "char":
147
147
  case "text": {
148
- const str = value;
149
- if (str.includes('"') || str.includes(",") || str.includes("\n") || str.includes("\r") || str.includes("\\")) {
150
- return '"' + str.replace(/"/g, '""') + '"';
148
+ const strVal = value;
149
+ if (strVal.includes('"') || strVal.includes(",") || strVal.includes("\n") || strVal.includes("\r") || strVal.includes("\\")) {
150
+ return '"' + strVal.replace(/"/g, '""') + '"';
151
151
  }
152
- return str;
152
+ return strVal;
153
153
  }
154
154
  case "datetime":
155
155
  return value.toFormatString("yyyy-MM-dd HH:mm:ss.fff");
@@ -160,7 +160,7 @@ class PostgresqlDbConn extends EventEmitter {
160
160
  case "uuid":
161
161
  return value.toString();
162
162
  case "binary":
163
- return '"\\x' + bytesToHex(value) + '"';
163
+ return '"\\x' + bytes.toHex(value) + '"';
164
164
  // PostgreSQL bytea hex format (wrapped in CSV double quotes)
165
165
  default:
166
166
  throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/connections/postgresql-db-conn.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -63,13 +63,13 @@ export interface Orm<TDef extends DbContextDef<any, any, any>> {
63
63
  *
64
64
  * // Execute within a transaction
65
65
  * await orm.connect(async (db) => {
66
- * const users = await db.user().result();
66
+ * const users = await db.user().execute();
67
67
  * return users;
68
68
  * });
69
69
  *
70
70
  * // Execute without a transaction
71
71
  * await orm.connectWithoutTransaction(async (db) => {
72
- * const users = await db.user().result();
72
+ * const users = await db.user().execute();
73
73
  * return users;
74
74
  * });
75
75
  * ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simplysm/orm-node",
3
- "version": "13.0.75",
3
+ "version": "13.0.77",
4
4
  "description": "Simplysm package - ORM module (node)",
5
5
  "author": "simplysm",
6
6
  "license": "Apache-2.0",
@@ -20,8 +20,8 @@
20
20
  "dependencies": {
21
21
  "consola": "^3.4.2",
22
22
  "generic-pool": "^3.9.0",
23
- "@simplysm/core-common": "13.0.75",
24
- "@simplysm/orm-common": "13.0.75"
23
+ "@simplysm/core-common": "13.0.77",
24
+ "@simplysm/orm-common": "13.0.77"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/pg": "^8.18.0",
@@ -2,13 +2,13 @@ import consola from "consola";
2
2
  import {
3
3
  DateOnly,
4
4
  DateTime,
5
- jsonStringify,
5
+ json,
6
+ str,
7
+ wait,
6
8
  SdError,
7
9
  EventEmitter,
8
- strIsNullOrEmpty,
9
10
  Time,
10
11
  Uuid,
11
- waitUntil,
12
12
  } from "@simplysm/core-common";
13
13
  import type { ColumnMeta, DataType, IsolationLevel } from "@simplysm/orm-common";
14
14
  import {
@@ -116,12 +116,12 @@ export class MssqlDbConn extends EventEmitter<{ close: void }> implements DbConn
116
116
 
117
117
  // Cancel in-progress requests
118
118
  conn.cancel();
119
- await waitUntil(() => this._requests.length < 1, 30000, 100);
119
+ await wait.until(() => this._requests.length < 1, 30000, 100);
120
120
 
121
121
  // Wait for connection termination
122
122
  await new Promise<void>((resolve) => {
123
123
  conn.on("end", () => {
124
- waitUntil(() => this._conn == null, 30000, 100)
124
+ wait.until(() => this._conn == null, 30000, 100)
125
125
  .then(() => resolve())
126
126
  .catch(() => resolve());
127
127
  });
@@ -194,7 +194,7 @@ export class MssqlDbConn extends EventEmitter<{ close: void }> implements DbConn
194
194
 
195
195
  async execute(queries: string[]): Promise<Record<string, unknown>[][]> {
196
196
  const results: Record<string, unknown>[][] = [];
197
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
197
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
198
198
  const resultItems = await this.executeParametrized(query);
199
199
  results.push(...resultItems);
200
200
  }
@@ -221,11 +221,11 @@ export class MssqlDbConn extends EventEmitter<{ close: void }> implements DbConn
221
221
  rejected = true;
222
222
  this._requests = this._requests.filter((r) => r !== queryRequest);
223
223
 
224
- const errRec = err as unknown as Record<string, unknown>;
225
- if (errRec["code"] === "ECANCEL") {
224
+ const errCode = "code" in err ? err.code : undefined;
225
+ if (errCode === "ECANCEL") {
226
226
  reject(new SdError(err, "Query was cancelled."));
227
227
  } else {
228
- const lineNumber = errRec["lineNumber"] as number | undefined;
228
+ const lineNumber = "lineNumber" in err && typeof err.lineNumber === "number" ? err.lineNumber : undefined;
229
229
  if (lineNumber != null && lineNumber > 0) {
230
230
  const splitQuery = query.split("\n");
231
231
  splitQuery[lineNumber - 1] = "==> " + splitQuery[lineNumber - 1];
@@ -320,7 +320,7 @@ export class MssqlDbConn extends EventEmitter<{ close: void }> implements DbConn
320
320
  reject(
321
321
  new SdError(
322
322
  err,
323
- `Bulk Insert error\n${jsonStringify(tediousColumnDefs)}\n-- data\n${jsonStringify(records).substring(0, 10000)}...\n--`,
323
+ `Bulk Insert error\n${json.stringify(tediousColumnDefs)}\n-- data\n${json.stringify(records).substring(0, 10000)}...\n--`,
324
324
  ),
325
325
  );
326
326
  return;
@@ -5,12 +5,12 @@ import path from "path";
5
5
  import type { Connection } from "mysql2/promise";
6
6
  import consola from "consola";
7
7
  import {
8
- bytesToHex,
8
+ bytes,
9
+ str,
9
10
  DateOnly,
10
11
  DateTime,
11
12
  SdError,
12
13
  EventEmitter,
13
- strIsNullOrEmpty,
14
14
  Time,
15
15
  Uuid,
16
16
  } from "@simplysm/core-common";
@@ -126,7 +126,7 @@ export class MysqlDbConn extends EventEmitter<{ close: void }> implements DbConn
126
126
 
127
127
  async execute(queries: string[]): Promise<Record<string, unknown>[][]> {
128
128
  const results: Record<string, unknown>[][] = [];
129
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
129
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
130
130
  const resultItems = await this.executeParametrized(query);
131
131
  results.push(...resultItems);
132
132
  }
@@ -263,9 +263,9 @@ export class MysqlDbConn extends EventEmitter<{ close: void }> implements DbConn
263
263
  case "varchar":
264
264
  case "char":
265
265
  case "text": {
266
- const str = value as string;
266
+ const strVal = value as string;
267
267
  // Escape tab, newline, backslash
268
- return str
268
+ return strVal
269
269
  .replace(/\\/g, "\\\\")
270
270
  .replace(/\0/g, "\\0")
271
271
  .replace(/\t/g, "\\t")
@@ -286,7 +286,7 @@ export class MysqlDbConn extends EventEmitter<{ close: void }> implements DbConn
286
286
  return (value as Uuid).toString().replace(/-/g, ""); // Hex for BINARY(16) storage
287
287
 
288
288
  case "binary":
289
- return bytesToHex(value as Uint8Array);
289
+ return bytes.toHex(value as Uint8Array);
290
290
 
291
291
  default:
292
292
  throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
@@ -1,12 +1,12 @@
1
1
  import { Readable } from "stream";
2
2
  import consola from "consola";
3
3
  import {
4
- bytesToHex,
4
+ bytes,
5
+ str,
5
6
  DateOnly,
6
7
  DateTime,
7
8
  SdError,
8
9
  EventEmitter,
9
- strIsNullOrEmpty,
10
10
  Time,
11
11
  Uuid,
12
12
  } from "@simplysm/core-common";
@@ -117,7 +117,7 @@ export class PostgresqlDbConn extends EventEmitter<{ close: void }> implements D
117
117
 
118
118
  async execute(queries: string[]): Promise<Record<string, unknown>[][]> {
119
119
  const results: Record<string, unknown>[][] = [];
120
- for (const query of queries.filter((item) => !strIsNullOrEmpty(item))) {
120
+ for (const query of queries.filter((item) => !str.isNullOrEmpty(item))) {
121
121
  const resultItems = await this.executeParametrized(query);
122
122
  results.push(...resultItems);
123
123
  }
@@ -210,18 +210,18 @@ export class PostgresqlDbConn extends EventEmitter<{ close: void }> implements D
210
210
  case "varchar":
211
211
  case "char":
212
212
  case "text": {
213
- const str = value as string;
213
+ const strVal = value as string;
214
214
  // CSV format: wrap with double quotes, escape internal double quotes with double quotes
215
215
  if (
216
- str.includes('"') ||
217
- str.includes(",") ||
218
- str.includes("\n") ||
219
- str.includes("\r") ||
220
- str.includes("\\")
216
+ strVal.includes('"') ||
217
+ strVal.includes(",") ||
218
+ strVal.includes("\n") ||
219
+ strVal.includes("\r") ||
220
+ strVal.includes("\\")
221
221
  ) {
222
- return '"' + str.replace(/"/g, '""') + '"';
222
+ return '"' + strVal.replace(/"/g, '""') + '"';
223
223
  }
224
- return str;
224
+ return strVal;
225
225
  }
226
226
 
227
227
  case "datetime":
@@ -237,7 +237,7 @@ export class PostgresqlDbConn extends EventEmitter<{ close: void }> implements D
237
237
  return (value as Uuid).toString();
238
238
 
239
239
  case "binary":
240
- return '"\\x' + bytesToHex(value as Uint8Array) + '"'; // PostgreSQL bytea hex format (wrapped in CSV double quotes)
240
+ return '"\\x' + bytes.toHex(value as Uint8Array) + '"'; // PostgreSQL bytea hex format (wrapped in CSV double quotes)
241
241
 
242
242
  default:
243
243
  throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
package/src/create-orm.ts CHANGED
@@ -78,13 +78,13 @@ export interface Orm<TDef extends DbContextDef<any, any, any>> {
78
78
  *
79
79
  * // Execute within a transaction
80
80
  * await orm.connect(async (db) => {
81
- * const users = await db.user().result();
81
+ * const users = await db.user().execute();
82
82
  * return users;
83
83
  * });
84
84
  *
85
85
  * // Execute without a transaction
86
86
  * await orm.connectWithoutTransaction(async (db) => {
87
- * const users = await db.user().result();
87
+ * const users = await db.user().execute();
88
88
  * return users;
89
89
  * });
90
90
  * ```