uql-orm 0.16.0 → 0.17.1

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.
Files changed (68) hide show
  1. package/CHANGELOG.md +46 -4
  2. package/dist/browser/querier/httpQuerier.d.ts +5 -5
  3. package/dist/browser/querier/httpQuerier.d.ts.map +1 -1
  4. package/dist/browser/querier/httpQuerier.js.map +1 -1
  5. package/dist/browser/type/clientQuerier.d.ts +5 -5
  6. package/dist/browser/type/clientQuerier.d.ts.map +1 -1
  7. package/dist/browser/uql-browser.min.js.map +2 -2
  8. package/dist/d1/d1Querier.d.ts +1 -1
  9. package/dist/d1/d1Querier.d.ts.map +1 -1
  10. package/dist/d1/d1Querier.js +3 -5
  11. package/dist/d1/d1Querier.js.map +1 -1
  12. package/dist/dialect/abstractSqlDialect.d.ts +2 -2
  13. package/dist/dialect/abstractSqlDialect.js +3 -3
  14. package/dist/dialect/abstractSqlDialect.js.map +1 -1
  15. package/dist/dialect/mysqlLikeSqlDialect.d.ts.map +1 -1
  16. package/dist/dialect/mysqlLikeSqlDialect.js +2 -0
  17. package/dist/dialect/mysqlLikeSqlDialect.js.map +1 -1
  18. package/dist/libsql/libsqlQuerier.d.ts.map +1 -1
  19. package/dist/libsql/libsqlQuerier.js +5 -2
  20. package/dist/libsql/libsqlQuerier.js.map +1 -1
  21. package/dist/migrate/migrator.js +1 -1
  22. package/dist/migrate/migrator.js.map +1 -1
  23. package/dist/mongo/mongodbQuerier.d.ts +7 -1
  24. package/dist/mongo/mongodbQuerier.d.ts.map +1 -1
  25. package/dist/mongo/mongodbQuerier.js +15 -5
  26. package/dist/mongo/mongodbQuerier.js.map +1 -1
  27. package/dist/querier/abstractQuerier.d.ts +14 -14
  28. package/dist/querier/abstractQuerier.d.ts.map +1 -1
  29. package/dist/querier/abstractQuerier.js +4 -1
  30. package/dist/querier/abstractQuerier.js.map +1 -1
  31. package/dist/querier/abstractQuerierPool.d.ts +5 -5
  32. package/dist/querier/abstractQuerierPool.d.ts.map +1 -1
  33. package/dist/querier/abstractQuerierPool.js.map +1 -1
  34. package/dist/querier/abstractSqlQuerier.d.ts.map +1 -1
  35. package/dist/querier/abstractSqlQuerier.js +37 -8
  36. package/dist/querier/abstractSqlQuerier.js.map +1 -1
  37. package/dist/querier/decorator/log.d.ts +26 -0
  38. package/dist/querier/decorator/log.d.ts.map +1 -1
  39. package/dist/querier/decorator/log.js +34 -8
  40. package/dist/querier/decorator/log.js.map +1 -1
  41. package/dist/sqlite/sqliteDialect.d.ts +3 -2
  42. package/dist/sqlite/sqliteDialect.d.ts.map +1 -1
  43. package/dist/sqlite/sqliteDialect.js +9 -2
  44. package/dist/sqlite/sqliteDialect.js.map +1 -1
  45. package/dist/sqlite/sqliteQuerier.d.ts.map +1 -1
  46. package/dist/sqlite/sqliteQuerier.js +8 -1
  47. package/dist/sqlite/sqliteQuerier.js.map +1 -1
  48. package/dist/type/logger.d.ts +3 -3
  49. package/dist/type/logger.d.ts.map +1 -1
  50. package/dist/type/migration.d.ts +7 -3
  51. package/dist/type/migration.d.ts.map +1 -1
  52. package/dist/type/querier.d.ts +21 -23
  53. package/dist/type/querier.d.ts.map +1 -1
  54. package/dist/type/querier.js.map +1 -1
  55. package/dist/type/query.d.ts +26 -31
  56. package/dist/type/query.d.ts.map +1 -1
  57. package/dist/type/query.js.map +1 -1
  58. package/dist/type/universalQuerier.d.ts +6 -6
  59. package/dist/type/universalQuerier.d.ts.map +1 -1
  60. package/dist/util/logger.d.ts +19 -4
  61. package/dist/util/logger.d.ts.map +1 -1
  62. package/dist/util/logger.js +18 -15
  63. package/dist/util/logger.js.map +1 -1
  64. package/dist/util/sql.util.d.ts +10 -1
  65. package/dist/util/sql.util.d.ts.map +1 -1
  66. package/dist/util/sql.util.js +21 -6
  67. package/dist/util/sql.util.js.map +1 -1
  68. package/package.json +5 -3
@@ -16,9 +16,9 @@ export class DefaultLogger {
16
16
  const params = values?.length ? ` -- ${JSON.stringify(values)}` : '';
17
17
  console.log(`\x1b[36mquery:\x1b[0m ${query}${params}\x1b[32m${time}\x1b[0m`);
18
18
  }
19
- logSlowQuery(query, values, duration, logParams = true) {
19
+ logSlowQuery(query, values, duration) {
20
20
  const time = duration !== undefined ? ` [${duration}ms]` : '';
21
- const params = logParams && values?.length ? ` -- ${JSON.stringify(values)}` : '';
21
+ const params = values?.length ? ` -- ${JSON.stringify(values)}` : '';
22
22
  console.warn(`\x1b[33mslow query:\x1b[0m ${query}${params}\x1b[31m${time}\x1b[0m`);
23
23
  }
24
24
  logWarn(message) {
@@ -40,16 +40,15 @@ export class DefaultLogger {
40
40
  console.info(`\x1b[33mskipped migration:\x1b[0m ${message}`);
41
41
  }
42
42
  }
43
- /**
44
- * A wrapper class that implements the Logger interface and handles different logging options.
45
- */
46
43
  export class LoggerWrapper {
47
- slowQuery;
48
44
  levels;
49
45
  logger;
50
46
  loggerFunction;
51
- constructor(options, slowQuery) {
52
- this.slowQuery = slowQuery;
47
+ logValues;
48
+ slowQuery;
49
+ constructor(options, config = {}) {
50
+ this.logValues = config.logValues ?? false;
51
+ this.slowQuery = config.slowQuery;
53
52
  this.levels = new Set();
54
53
  if (options === true) {
55
54
  this.levels = new Set(DEFAULT_LOG_LEVELS);
@@ -67,19 +66,23 @@ export class LoggerWrapper {
67
66
  this.levels = new Set(DEFAULT_LOG_LEVELS);
68
67
  this.logger = options;
69
68
  }
70
- if (slowQuery !== undefined && !this.logger && !this.loggerFunction) {
69
+ if (this.slowQuery !== undefined && !this.logger && !this.loggerFunction) {
71
70
  this.logger = new DefaultLogger();
72
71
  }
73
72
  }
73
+ /** Whether `logQuery` would ever actually surface bound values, given the configured levels/slowQuery/logValues. */
74
+ willLogValues() {
75
+ return this.logValues && (this.levels.has('query') || this.slowQuery !== undefined);
76
+ }
74
77
  logQuery(query, values, duration) {
75
- if (this.slowQuery !== undefined && duration !== undefined && duration >= this.slowQuery.threshold) {
76
- const logParams = this.slowQuery.logParams !== false;
78
+ const loggedValues = this.logValues ? values : undefined;
79
+ if (this.slowQuery !== undefined && duration !== undefined && duration >= this.slowQuery) {
77
80
  if (this.logger?.logSlowQuery) {
78
- this.logger.logSlowQuery(query, values, duration, logParams);
81
+ this.logger.logSlowQuery(query, loggedValues, duration);
79
82
  return;
80
83
  }
81
84
  if (this.loggerFunction) {
82
- this.loggerFunction(query, logParams ? values : undefined, duration);
85
+ this.loggerFunction(query, loggedValues, duration);
83
86
  return;
84
87
  }
85
88
  // If slowQuery threshold is met but no specific slowQuery logger exists,
@@ -87,10 +90,10 @@ export class LoggerWrapper {
87
90
  }
88
91
  if (this.levels.has('query')) {
89
92
  if (this.logger?.logQuery) {
90
- this.logger.logQuery(query, values, duration);
93
+ this.logger.logQuery(query, loggedValues, duration);
91
94
  }
92
95
  else if (this.loggerFunction) {
93
- this.loggerFunction(query, values, duration);
96
+ this.loggerFunction(query, loggedValues, duration);
94
97
  }
95
98
  }
96
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/util/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/util/logger.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,7 @@ export interface BuildUpdateResultPayload {
26
26
  changes?: number;
27
27
  /** The raw rows returned by the query (for RETURNING clauses). */
28
28
  rows?: RawRow[];
29
- /** The first (MySQL) or last (SQLite) auto-generated ID from the driver header. */
29
+ /** The first auto-generated ID from the driver header (MySQL `insertId`; no `RETURNING`). */
30
30
  id?: PrimaryKey;
31
31
  /** How the dialect surfaces inserted IDs (see {@link InsertIdSource}). */
32
32
  insertIdSource?: InsertIdSource;
@@ -51,6 +51,15 @@ export interface BuildUpdateResultPayload {
51
51
  * statement, which holds for a single multi-row `INSERT ... VALUES` on auto-increment keys
52
52
  * (with the standard `auto_increment_increment = 1`); the querier only maps these IDs onto
53
53
  * payloads when that assumption is safe.
54
+ *
55
+ * Caveat (MySQL/MariaDB-compatible engines with no `RETURNING`, i.e. `insertIdSource: 'firstId'`):
56
+ * contiguous allocation across a statement's rows is only guaranteed under
57
+ * `innodb_autoinc_lock_mode` 0 (`traditional`) or 1 (`consecutive`). Under mode 2 (`interleaved`,
58
+ * MySQL 8.0's default), other connections inserting into the same table concurrently with this
59
+ * statement can interleave with its auto-increment allocation, so the inferred IDs may not be
60
+ * contiguous. There is no code-level fix for this (MySQL has no `RETURNING`); avoid relying on
61
+ * inferred multi-row IDs for a table under heavy concurrent insert load, or set
62
+ * `innodb_autoinc_lock_mode` to 0 or 1.
54
63
  */
55
64
  export declare function buildUpdateResult(payload: BuildUpdateResultPayload): QueryUpdateResult;
56
65
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"sql.util.d.ts","sourceRoot":"","sources":["../../src/util/sql.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAO,iBAAiB,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMrD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAKpE;AAcD,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAYtE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAwBnG;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC;;EAQxD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,EACX,YAAY,GAAE,GAAG,GAAG,GAAS,EAC7B,eAAe,CAAC,EAAE,OAAO,EACzB,MAAM,CAAC,EAAE,OAAO,GACf,MAAM,CAmBR;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,mFAAmF;IACnF,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,iBAAiB,CAoCtF;AASD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,UAAU,CAE5D"}
1
+ {"version":3,"file":"sql.util.d.ts","sourceRoot":"","sources":["../../src/util/sql.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAO,iBAAiB,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAMrD,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAKpE;AAcD,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAYtE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAwBnG;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC;;EAQxD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,EACX,YAAY,GAAE,GAAG,GAAG,GAAS,EAC7B,eAAe,CAAC,EAAE,OAAO,EACzB,MAAM,CAAC,EAAE,OAAO,GACf,MAAM,CAmBR;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,6FAA6F;IAC7F,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,0EAA0E;IAC1E,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,iBAAiB,CA0CtF;AASD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,UAAU,CAE5D"}
@@ -91,15 +91,32 @@ export function escapeSqlId(val, escapeIdChar = '`', forbidQualified, addDot) {
91
91
  * statement, which holds for a single multi-row `INSERT ... VALUES` on auto-increment keys
92
92
  * (with the standard `auto_increment_increment = 1`); the querier only maps these IDs onto
93
93
  * payloads when that assumption is safe.
94
+ *
95
+ * Caveat (MySQL/MariaDB-compatible engines with no `RETURNING`, i.e. `insertIdSource: 'firstId'`):
96
+ * contiguous allocation across a statement's rows is only guaranteed under
97
+ * `innodb_autoinc_lock_mode` 0 (`traditional`) or 1 (`consecutive`). Under mode 2 (`interleaved`,
98
+ * MySQL 8.0's default), other connections inserting into the same table concurrently with this
99
+ * statement can interleave with its auto-increment allocation, so the inferred IDs may not be
100
+ * contiguous. There is no code-level fix for this (MySQL has no `RETURNING`); avoid relying on
101
+ * inferred multi-row IDs for a table under heavy concurrent insert load, or set
102
+ * `innodb_autoinc_lock_mode` to 0 or 1.
94
103
  */
95
104
  export function buildUpdateResult(payload) {
96
105
  const { rows, id, insertIdSource, upsertStatus } = payload;
97
106
  const changes = payload.changes ?? rows?.length ?? 0;
98
107
  const stride = payload.insertIdIncrement && payload.insertIdIncrement > 0 ? payload.insertIdIncrement : 1;
99
108
  // ID mapping. RETURNING rows are exact. Otherwise the sequence is derived from the single id in
100
- // the driver header: `firstId` dialects (MySQL) report the FIRST generated id, `lastId` dialects
101
- // (SQLite) the LAST - so for the latter we step back over the other rows to reach the first. A
102
- // header id of `0`/`0n` means no id was generated (e.g. a non-auto-increment key), so we infer none.
109
+ // the driver header: `firstId` dialects (MySQL) report the FIRST generated id, and the rest are
110
+ // inferred by incrementing it. A header id of `0`/`0n` means no id was generated (e.g. a
111
+ // non-auto-increment key), so we infer none.
112
+ //
113
+ // This arithmetic assumes `changes` equals the batch's row count, which always holds for a plain
114
+ // `insertMany` - but not for `upsertMany` on a `firstId` dialect (MySQL): its `ON DUPLICATE KEY
115
+ // UPDATE` convention makes `changes` a per-row weighted sum (1=insert, 2=update, 0=no-op), so a
116
+ // batch mixing an insert and an update would fabricate ids for rows that were never touched. This
117
+ // function has no way to tell the two call sites apart (`internalRun` reports the same header
118
+ // shape either way), so `AbstractSqlQuerier.upsertMany` strips `ids`/`firstId`/`created` back down
119
+ // to just `changes` for a multi-row `firstId`-dialect upsert after calling this.
103
120
  let ids = [];
104
121
  if (rows?.length) {
105
122
  ids = rows.map((r) => r['id']);
@@ -110,9 +127,7 @@ export function buildUpdateResult(payload) {
110
127
  ids = [id];
111
128
  }
112
129
  else {
113
- const backSteps = insertIdSource === 'lastId' ? changes - 1 : 0;
114
- const first = typeof id === 'bigint' ? id - BigInt(backSteps * stride) : id - backSteps * stride;
115
- ids = sequentialIds(first, changes, stride);
130
+ ids = sequentialIds(id, changes, stride);
116
131
  }
117
132
  }
118
133
  // 2. Creation Status
@@ -1 +1 @@
1
- {"version":3,"file":"sql.util.js","sourceRoot":"","sources":["../../src/util/sql.util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql.util.js","sourceRoot":"","sources":["../../src/util/sql.util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpD,gGAAgG;AAChG,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAA4C,CAAC;AAE9F,MAAM,UAAU,UAAU,CAAmB,GAAM,EAAE,GAAY;IAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAa,CAAC,EAAE,OAAO,GAAG,CAAC,GAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAC9G,EAAO,CACR,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAI,GAAM,EAAE,GAAW,EAAE,GAAY,EAAE,GAAY;IACzE,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CACxB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,EAAG,GAA+B,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,EACzF,GAAG,CACJ,CAAC;IACJ,CAAC;IACA,GAA+B,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;IAC/C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,aAAa,CAAmB,OAAiB;IAC/D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC/C,OAAO,OAAc,CAAC;IACxB,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACzB,OAAO,OAAc,CAAC;IACxB,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAI,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAmB,GAAW,EAAE,UAAoC;IAC9F,MAAM,GAAG,GAAG,EAAO,CAAC;IAEpB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YACtB,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,MAAM,GAAG,GAA8B,CAAC;YAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;oBACpC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBACnB,CAAC;gBACD,MAAM,GAAG,MAAM,CAAC,GAAG,CAA4B,CAAC;YAClD,CAAC;YACD,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACL,GAAc,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAmB,GAAM;IACvD,MAAM,KAAK,GAA8B,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,GAAW,EACX,YAAY,GAAc,GAAG,EAC7B,eAAyB,EACzB,MAAgB;IAEhB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,eAAe,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,GAAG;aACf,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;aAChD,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACxC,CAAC;IAED,MAAM,OAAO,GACX,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC;IAE3G,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjC,OAAO,OAAO,GAAG,MAAM,CAAC;AAC1B,CAAC;AA0BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1G,gGAAgG;IAChG,gGAAgG;IAChG,yFAAyF;IACzF,6CAA6C;IAC7C,EAAE;IACF,iGAAiG;IACjG,gGAAgG;IAChG,gGAAgG;IAChG,kGAAkG;IAClG,8FAA8F;IAC9F,mGAAmG;IACnG,iFAAiF;IACjF,IAAI,GAAG,GAAiB,EAAE,CAAC;IAC3B,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACjB,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAe,CAAC,CAAC;IAC/C,CAAC;SAAM,IAAI,cAAc,KAAK,WAAW,IAAI,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;QACpE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC3B,IAAI,OAAO,KAAK,CAAC;gBAAE,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,6FAA6F;IAC7F,mGAAmG;IACnG,kGAAkG;IAClG,gGAAgG;IAChG,gGAAgG;IAChG,iGAAiG;IACjG,MAAM,OAAO,GACX,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAyB,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,CAAC,cAAc,KAAK,WAAW,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC;YAC3G,CAAC,CAAC,YAAY,KAAK,CAAC;YACpB,CAAC,CAAC,SAAS,CAAC,CAAC;IAEjB,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;AACtD,CAAC;AAED,+FAA+F;AAC/F,SAAS,aAAa,CAAC,KAAsB,EAAE,KAAa,EAAE,IAAY;IACxE,OAAO,OAAO,KAAK,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,GAAY;IACvC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC;AACvF,CAAC"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "homepage": "https://uql-orm.dev",
4
4
  "description": "Fast, type-safe TypeScript ORM - one API for every database",
5
5
  "license": "MIT",
6
- "version": "0.16.0",
6
+ "version": "0.17.1",
7
7
  "type": "module",
8
8
  "main": "./dist/index.js",
9
9
  "types": "./dist/index.d.ts",
@@ -126,6 +126,7 @@
126
126
  "@types/express": "^5.0.6",
127
127
  "@types/pg": "^8.20.0",
128
128
  "@types/sqlstring": "^2.3.2",
129
+ "@types/ws": "^8.18.1",
129
130
  "better-sqlite3": "^12.11.1",
130
131
  "express": "^5.2.1",
131
132
  "mariadb": "^3.5.3",
@@ -133,7 +134,8 @@
133
134
  "mysql2": "^3.23.1",
134
135
  "pg": "^8.22.0",
135
136
  "pg-query-stream": "^4.16.0",
136
- "rxjs": "^7.8.2"
137
+ "rxjs": "^7.8.2",
138
+ "ws": "^8.21.1"
137
139
  },
138
140
  "author": "Roger Padilla",
139
141
  "repository": {
@@ -175,5 +177,5 @@
175
177
  "publishConfig": {
176
178
  "access": "public"
177
179
  },
178
- "gitHead": "53d02f0f49372a8673bc391c4712268499d8ab41"
180
+ "gitHead": "44c2b46e414c3986ca3a8c9e5d9100c6764fc4ab"
179
181
  }