linkgress-orm 0.4.55 → 0.4.56

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/dist/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.eq = exports.Placeholder = exports.RawSql = exports.SqlFragment = exports.ConditionBuilder = exports.JoinQueryBuilder = exports.GroupedJoinedQueryBuilder = exports.GroupedSelectQueryBuilder = exports.GroupedQueryBuilder = exports.PreparedQuery = exports.QueryBatch = exports.isFutureCountQuery = exports.isFutureSingleQuery = exports.isFutureQuery = exports.FutureQueryRunner = exports.FutureCountQuery = exports.FutureSingleQuery = exports.FutureQuery = exports.isUnionQueryBuilder = exports.UnionQueryBuilder = exports.CollectionQueryBuilder = exports.SelectQueryBuilder = exports.QueryBuilder = exports.CollationRegistry = exports.pgCollation = exports.EnumTypeRegistry = exports.pgEnum = exports.ColumnBuilder = exports.enumColumn = exports.bytea = exports.jsonb = exports.json = exports.uuid = exports.time = exports.date = exports.timestamptz = exports.timestamp = exports.boolean = exports.text = exports.char = exports.varchar = exports.doublePrecision = exports.real = exports.numeric = exports.decimal = exports.smallint = exports.bigserial = exports.bigint = exports.serial = exports.integer = void 0;
4
- exports.neSubquery = exports.eqSubquery = exports.notInSubquery = exports.inSubquery = exports.notExists = exports.exists = exports.isSubquery = exports.Subquery = exports.flagHasNone = exports.flagHasAny = exports.flagHasAll = exports.flagHas = exports.div = exports.mul = exports.sub = exports.add = exports.jsonbConditionUnwrap = exports.jsonbArraySome = exports.jsonbSelectText = exports.jsonbSelect = exports.jsonbMerge = exports.coalesce = exports.sql = exports.not = exports.or = exports.and = exports.between = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = exports.regexNoMatchCaseInsensitive = exports.regexNoMatch = exports.regexMatchesCaseInsensitive = exports.regexMatches = exports.normalizedStartsWith = exports.normalizedLike = exports.normalizedEq = exports.endsWithSearch = exports.startsWithSearch = exports.containsSearch = exports.searchNormalize = exports.startsWith = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = exports.ne = void 0;
5
- exports.MigrationJournal = exports.MigrationRunner = exports.EnumMigrator = exports.DbSchemaManager = exports.sequence = exports.SequenceBuilder = exports.DbSequence = exports.applyFromDriverArray = exports.applyFromDriver = exports.applyToDriver = exports.identityMapper = exports.createCustomType = exports.interval = exports.vector = exports.point = exports.enumType = exports.array = exports.jsonType = exports.customType = exports.CustomTypeBuilder = exports.TypeAliases = exports.EntityInsertBuilder = exports.DbEntityTable = exports.DbContext = exports.DbModelConfig = exports.HasOneNavigationBuilder = exports.HasManyNavigationBuilder = exports.EntityNavigationBuilder = exports.EntityPropertyBuilder = exports.EntityConfigBuilder = exports.isDbColumn = exports.DbColumn = exports.ixNormalized = exports.ixUnaccent = exports.ixLower = exports.EntityMetadataStore = exports.DbEntity = exports.CollectionStrategyFactory = exports.TimeTracer = exports.defaultLogger = exports.onTrue = exports.CteJoinedQueryBuilder = exports.CteRootQueryBuilder = exports.isCte = exports.DbCteBuilder = exports.DbCte = exports.lteSubquery = exports.ltSubquery = exports.gteSubquery = exports.gtSubquery = void 0;
6
- exports.BunClient = exports.PgClient = exports.PostgresClient = exports.QueryTimeoutError = exports.DatabaseClient = exports.MigrationScaffold = exports.MigrationLoader = void 0;
3
+ exports.Placeholder = exports.RawSql = exports.SqlFragment = exports.ConditionBuilder = exports.JoinQueryBuilder = exports.GroupedJoinedQueryBuilder = exports.GroupedSelectQueryBuilder = exports.GroupedQueryBuilder = exports.PreparedQuery = exports.MutationBatch = exports.QueryBatch = exports.isFutureCountQuery = exports.isFutureSingleQuery = exports.isFutureQuery = exports.FutureQueryRunner = exports.FutureCountQuery = exports.FutureSingleQuery = exports.FutureQuery = exports.isUnionQueryBuilder = exports.UnionQueryBuilder = exports.CollectionQueryBuilder = exports.SelectQueryBuilder = exports.QueryBuilder = exports.CollationRegistry = exports.pgCollation = exports.EnumTypeRegistry = exports.pgEnum = exports.ColumnBuilder = exports.enumColumn = exports.bytea = exports.jsonb = exports.json = exports.uuid = exports.time = exports.date = exports.timestamptz = exports.timestamp = exports.boolean = exports.text = exports.char = exports.varchar = exports.doublePrecision = exports.real = exports.numeric = exports.decimal = exports.smallint = exports.bigserial = exports.bigint = exports.serial = exports.integer = void 0;
4
+ exports.eqSubquery = exports.notInSubquery = exports.inSubquery = exports.notExists = exports.exists = exports.isSubquery = exports.Subquery = exports.flagHasNone = exports.flagHasAny = exports.flagHasAll = exports.flagHas = exports.div = exports.mul = exports.sub = exports.add = exports.jsonbConditionUnwrap = exports.jsonbArraySome = exports.jsonbSelectText = exports.jsonbSelect = exports.jsonbMerge = exports.coalesce = exports.sql = exports.not = exports.or = exports.and = exports.between = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = exports.regexNoMatchCaseInsensitive = exports.regexNoMatch = exports.regexMatchesCaseInsensitive = exports.regexMatches = exports.normalizedStartsWith = exports.normalizedLike = exports.normalizedEq = exports.endsWithSearch = exports.startsWithSearch = exports.containsSearch = exports.searchNormalize = exports.startsWith = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = exports.ne = exports.eq = void 0;
5
+ exports.MigrationRunner = exports.EnumMigrator = exports.DbSchemaManager = exports.sequence = exports.SequenceBuilder = exports.DbSequence = exports.applyFromDriverArray = exports.applyFromDriver = exports.applyToDriver = exports.identityMapper = exports.createCustomType = exports.interval = exports.vector = exports.point = exports.enumType = exports.array = exports.jsonType = exports.customType = exports.CustomTypeBuilder = exports.TypeAliases = exports.EntityInsertBuilder = exports.DbEntityTable = exports.DbContext = exports.DbModelConfig = exports.HasOneNavigationBuilder = exports.HasManyNavigationBuilder = exports.EntityNavigationBuilder = exports.EntityPropertyBuilder = exports.EntityConfigBuilder = exports.isDbColumn = exports.DbColumn = exports.ixNormalized = exports.ixUnaccent = exports.ixLower = exports.EntityMetadataStore = exports.DbEntity = exports.CollectionStrategyFactory = exports.TimeTracer = exports.defaultLogger = exports.onTrue = exports.CteJoinedQueryBuilder = exports.CteRootQueryBuilder = exports.isCte = exports.DbCteBuilder = exports.DbCte = exports.lteSubquery = exports.ltSubquery = exports.gteSubquery = exports.gtSubquery = exports.neSubquery = void 0;
6
+ exports.BunClient = exports.PgClient = exports.PostgresClient = exports.QueryTimeoutError = exports.DatabaseClient = exports.MigrationScaffold = exports.MigrationLoader = exports.MigrationJournal = void 0;
7
7
  // Internal schema builders (exported for DbContext use only)
8
8
  var column_builder_1 = require("./schema/column-builder");
9
9
  Object.defineProperty(exports, "integer", { enumerable: true, get: function () { return column_builder_1.integer; } });
@@ -58,6 +58,9 @@ Object.defineProperty(exports, "isFutureCountQuery", { enumerable: true, get: fu
58
58
  // QueryBatch — heterogeneous queries in ONE round trip (UNION ALL + json envelopes)
59
59
  var query_batch_1 = require("./query/query-batch");
60
60
  Object.defineProperty(exports, "QueryBatch", { enumerable: true, get: function () { return query_batch_1.QueryBatch; } });
61
+ // MutationBatch — independent insertBulk/bulkUpdate legs in ONE round trip (data-modifying CTEs)
62
+ var mutation_batch_1 = require("./query/mutation-batch");
63
+ Object.defineProperty(exports, "MutationBatch", { enumerable: true, get: function () { return mutation_batch_1.MutationBatch; } });
61
64
  // Prepared statements
62
65
  var prepared_query_1 = require("./query/prepared-query");
63
66
  Object.defineProperty(exports, "PreparedQuery", { enumerable: true, get: function () { return prepared_query_1.PreparedQuery; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ import type { DatabaseClient } from '../database/database-client.interface';
2
+ /** Typed handle returned by MutationBatch.addInsertBulk / addBulkUpdate. */
3
+ export interface MutationBatchKey {
4
+ readonly id: string;
5
+ }
6
+ /**
7
+ * The structural surface MutationBatch needs from an entity table — the
8
+ * internal compile methods {@link DbEntityTable} exposes for it. Structural on
9
+ * purpose: it avoids a value import of the (heavyweight) entity module from
10
+ * the query layer.
11
+ * @internal
12
+ */
13
+ interface MutationCapableTable {
14
+ _buildInsertBulkStatement(data: Record<string, any>[], overridingSystemValue?: boolean, onConflictDoNothing?: boolean): {
15
+ sql: string;
16
+ params: any[];
17
+ } | null;
18
+ _buildBulkUpdateStatement(data: Record<string, any>[], primaryKeys: string[]): {
19
+ sql: string;
20
+ params: any[];
21
+ };
22
+ _resolveBulkUpdatePrimaryKeys(data: Record<string, any>[], config?: {
23
+ primaryKey?: string | string[];
24
+ }): string[];
25
+ _getClient(): DatabaseClient;
26
+ _getExecutor(): {
27
+ query: (sql: string, params: any[]) => Promise<any>;
28
+ } | undefined;
29
+ }
30
+ /**
31
+ * Composes heterogeneous INDEPENDENT mutations (insertBulk / bulkUpdate legs)
32
+ * into ONE data-modifying-CTE statement executed in a single round trip:
33
+ *
34
+ * WITH "__mb_0" AS (INSERT ... RETURNING 1),
35
+ * "__mb_1" AS (UPDATE ... RETURNING 1)
36
+ * SELECT (SELECT count(*)::int FROM "__mb_0") AS "0", ...
37
+ *
38
+ * Each leg's SQL is EXACTLY what its standalone execution would run (same
39
+ * column mappers, same `"col__provided"` CASE semantics for bulkUpdate), so
40
+ * batched results are value-identical to sequential execution — under
41
+ * PostgreSQL's data-modifying-CTE rules:
42
+ *
43
+ * - all legs run against the SAME snapshot; one leg's writes are INVISIBLE to
44
+ * the others — legs must be mutually independent;
45
+ * - modifying the same ROW from two legs is unsupported by PostgreSQL (one
46
+ * silently wins) — never point two legs at the same rows;
47
+ * - the statement is atomic: any leg's error rolls back every leg.
48
+ *
49
+ * Registration semantics: empty row arrays register NOTHING and return null
50
+ * (mirroring insertBulk/bulkUpdate early returns), so call sites with
51
+ * conditional legs need no guards; an empty batch's executeBatch() is a no-op.
52
+ * A leg larger than the single-statement parameter budget throws at
53
+ * registration — chunked mutations cannot ride one statement, execute those
54
+ * standalone.
55
+ *
56
+ * @example
57
+ * const batch = new MutationBatch();
58
+ * batch.addBulkUpdate(db.orderItems, itemUpdates, 'items');
59
+ * batch.addInsertBulk(db.cfOrderItemDdValues, ddRows, 'dd');
60
+ * batch.addInsertBulk(db.orderItemAttributes, attrRows, 'attrs');
61
+ * await batch.executeBatch(); // ONE round trip (no-op when all legs were empty)
62
+ * batch.getAffectedCount('items'); // rows the update leg matched
63
+ */
64
+ export declare class MutationBatch {
65
+ private readonly legs;
66
+ private counts;
67
+ /**
68
+ * Register a bulk INSERT leg. Returns null (and registers nothing) for an
69
+ * empty row array or rows resolving to zero insertable columns.
70
+ */
71
+ addInsertBulk(table: MutationCapableTable, rows: Record<string, any>[], id: string, options?: {
72
+ overridingSystemValue?: boolean;
73
+ onConflictDoNothing?: boolean;
74
+ }): MutationBatchKey | null;
75
+ /**
76
+ * Register a bulk UPDATE leg (same per-row `"col__provided"` semantics as
77
+ * standalone bulkUpdate). Returns null for an empty row array.
78
+ */
79
+ addBulkUpdate(table: MutationCapableTable, rows: Record<string, any>[], id: string, config?: {
80
+ primaryKey?: string | string[];
81
+ }): MutationBatchKey | null;
82
+ /** Number of registered (non-empty) legs. */
83
+ get size(): number;
84
+ /**
85
+ * Execute every registered leg as ONE statement and store the per-leg
86
+ * affected counts. A batch with zero legs resolves without touching the
87
+ * database. One-shot: a batch that already executed throws.
88
+ */
89
+ executeBatch(): Promise<void>;
90
+ /** Rows the leg inserted/matched. Only valid after executeBatch(). */
91
+ getAffectedCount(key: MutationBatchKey | string): number;
92
+ private assertRegisterable;
93
+ /**
94
+ * A leg must fit one statement — the same parameter-budget formula the
95
+ * standalone mutations use to CHUNK large inputs. A chunked mutation cannot
96
+ * ride a single-statement batch, so oversize inputs are rejected here.
97
+ */
98
+ private static assertSingleStatementBudget;
99
+ }
100
+ export {};
101
+ //# sourceMappingURL=mutation-batch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-batch.d.ts","sourceRoot":"","sources":["../../src/query/mutation-batch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAK5E,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,UAAU,oBAAoB;IAC5B,yBAAyB,CACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC3B,qBAAqB,CAAC,EAAE,OAAO,EAC/B,mBAAmB,CAAC,EAAE,OAAO,GAC5B;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACzC,yBAAyB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC;IAC9G,6BAA6B,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAAG,MAAM,EAAE,CAAC;IAClH,UAAU,IAAI,cAAc,CAAC;IAC7B,YAAY,IAAI;QAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,GAAG,SAAS,CAAC;CACrF;AAUD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,MAAM,CAAoC;IAElD;;;OAGG;IACH,aAAa,CACX,KAAK,EAAE,oBAAoB,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC3B,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE;QAAE,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAAE,GAC3E,gBAAgB,GAAG,IAAI;IAmB1B;;;OAGG;IACH,aAAa,CACX,KAAK,EAAE,oBAAoB,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAC3B,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAC1C,gBAAgB,GAAG,IAAI;IAgB1B,6CAA6C;IAC7C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA+CnC,sEAAsE;IACtE,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,MAAM,GAAG,MAAM;IAexD,OAAO,CAAC,kBAAkB;IAU1B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;CAW3C"}
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MutationBatch = void 0;
4
+ const query_batch_1 = require("./query-batch");
5
+ const POSTGRES_MAX_PARAMS = 65535;
6
+ /**
7
+ * Composes heterogeneous INDEPENDENT mutations (insertBulk / bulkUpdate legs)
8
+ * into ONE data-modifying-CTE statement executed in a single round trip:
9
+ *
10
+ * WITH "__mb_0" AS (INSERT ... RETURNING 1),
11
+ * "__mb_1" AS (UPDATE ... RETURNING 1)
12
+ * SELECT (SELECT count(*)::int FROM "__mb_0") AS "0", ...
13
+ *
14
+ * Each leg's SQL is EXACTLY what its standalone execution would run (same
15
+ * column mappers, same `"col__provided"` CASE semantics for bulkUpdate), so
16
+ * batched results are value-identical to sequential execution — under
17
+ * PostgreSQL's data-modifying-CTE rules:
18
+ *
19
+ * - all legs run against the SAME snapshot; one leg's writes are INVISIBLE to
20
+ * the others — legs must be mutually independent;
21
+ * - modifying the same ROW from two legs is unsupported by PostgreSQL (one
22
+ * silently wins) — never point two legs at the same rows;
23
+ * - the statement is atomic: any leg's error rolls back every leg.
24
+ *
25
+ * Registration semantics: empty row arrays register NOTHING and return null
26
+ * (mirroring insertBulk/bulkUpdate early returns), so call sites with
27
+ * conditional legs need no guards; an empty batch's executeBatch() is a no-op.
28
+ * A leg larger than the single-statement parameter budget throws at
29
+ * registration — chunked mutations cannot ride one statement, execute those
30
+ * standalone.
31
+ *
32
+ * @example
33
+ * const batch = new MutationBatch();
34
+ * batch.addBulkUpdate(db.orderItems, itemUpdates, 'items');
35
+ * batch.addInsertBulk(db.cfOrderItemDdValues, ddRows, 'dd');
36
+ * batch.addInsertBulk(db.orderItemAttributes, attrRows, 'attrs');
37
+ * await batch.executeBatch(); // ONE round trip (no-op when all legs were empty)
38
+ * batch.getAffectedCount('items'); // rows the update leg matched
39
+ */
40
+ class MutationBatch {
41
+ constructor() {
42
+ this.legs = [];
43
+ this.counts = null;
44
+ }
45
+ /**
46
+ * Register a bulk INSERT leg. Returns null (and registers nothing) for an
47
+ * empty row array or rows resolving to zero insertable columns.
48
+ */
49
+ addInsertBulk(table, rows, id, options) {
50
+ if (rows.length === 0) {
51
+ return null;
52
+ }
53
+ this.assertRegisterable(id);
54
+ MutationBatch.assertSingleStatementBudget(rows, id);
55
+ const built = table._buildInsertBulkStatement(rows, options?.overridingSystemValue, options?.onConflictDoNothing);
56
+ if (!built) {
57
+ return null;
58
+ }
59
+ this.legs.push({ id, sql: built.sql, params: built.params, client: table._getClient(), executor: table._getExecutor() });
60
+ return { id };
61
+ }
62
+ /**
63
+ * Register a bulk UPDATE leg (same per-row `"col__provided"` semantics as
64
+ * standalone bulkUpdate). Returns null for an empty row array.
65
+ */
66
+ addBulkUpdate(table, rows, id, config) {
67
+ if (rows.length === 0) {
68
+ return null;
69
+ }
70
+ this.assertRegisterable(id);
71
+ MutationBatch.assertSingleStatementBudget(rows, id);
72
+ const primaryKeys = table._resolveBulkUpdatePrimaryKeys(rows, config);
73
+ const built = table._buildBulkUpdateStatement(rows, primaryKeys);
74
+ this.legs.push({ id, sql: built.sql, params: built.params, client: table._getClient(), executor: table._getExecutor() });
75
+ return { id };
76
+ }
77
+ /** Number of registered (non-empty) legs. */
78
+ get size() {
79
+ return this.legs.length;
80
+ }
81
+ /**
82
+ * Execute every registered leg as ONE statement and store the per-leg
83
+ * affected counts. A batch with zero legs resolves without touching the
84
+ * database. One-shot: a batch that already executed throws.
85
+ */
86
+ async executeBatch() {
87
+ if (this.counts) {
88
+ throw new Error('MutationBatch has already been executed — create a new batch for further mutations');
89
+ }
90
+ if (this.legs.length === 0) {
91
+ this.counts = new Map();
92
+ return;
93
+ }
94
+ const first = this.legs[0];
95
+ for (const leg of this.legs) {
96
+ if (leg.client !== first.client || leg.executor !== first.executor) {
97
+ throw new Error(`MutationBatch: leg "${leg.id}" uses a different database client or transaction than the rest of the batch — all legs must share one connection context`);
98
+ }
99
+ }
100
+ const cteParts = [];
101
+ const selectParts = [];
102
+ const params = [];
103
+ this.legs.forEach((leg, ix) => {
104
+ const offset = params.length;
105
+ const legSql = offset === 0 ? leg.sql : (0, query_batch_1.renumberPlaceholders)(leg.sql, offset);
106
+ cteParts.push(`"__mb_${ix}" AS (\n${legSql}\nRETURNING 1\n)`);
107
+ selectParts.push(`(SELECT count(*)::int FROM "__mb_${ix}") AS "${ix}"`);
108
+ params.push(...leg.params);
109
+ });
110
+ const sql = `WITH ${cteParts.join(',\n')}\nSELECT ${selectParts.join(', ')}`;
111
+ const result = first.executor ? await first.executor.query(sql, params) : await first.client.query(sql, params);
112
+ const row = result.rows[0] ?? {};
113
+ const counts = new Map();
114
+ this.legs.forEach((leg, ix) => {
115
+ counts.set(leg.id, Number(row[String(ix)] ?? 0));
116
+ });
117
+ this.counts = counts;
118
+ }
119
+ /** Rows the leg inserted/matched. Only valid after executeBatch(). */
120
+ getAffectedCount(key) {
121
+ if (!this.counts) {
122
+ throw new Error('MutationBatch has not been executed yet — call executeBatch() before reading counts');
123
+ }
124
+ const id = typeof key === 'string' ? key : key.id;
125
+ const count = this.counts.get(id);
126
+ if (count === undefined) {
127
+ throw new Error(`MutationBatch: no leg registered under "${id}"`);
128
+ }
129
+ return count;
130
+ }
131
+ assertRegisterable(id) {
132
+ if (this.counts) {
133
+ throw new Error('MutationBatch has already been executed — create a new batch for further mutations');
134
+ }
135
+ if (this.legs.some(leg => leg.id === id)) {
136
+ throw new Error(`MutationBatch: duplicate leg identifier "${id}"`);
137
+ }
138
+ }
139
+ /**
140
+ * A leg must fit one statement — the same parameter-budget formula the
141
+ * standalone mutations use to CHUNK large inputs. A chunked mutation cannot
142
+ * ride a single-statement batch, so oversize inputs are rejected here.
143
+ */
144
+ static assertSingleStatementBudget(rows, id) {
145
+ const columnCount = Math.max(1, Object.keys(rows[0]).length);
146
+ const maxRowsPerBatch = Math.floor(POSTGRES_MAX_PARAMS / columnCount);
147
+ const singleStatementLimit = Math.floor(maxRowsPerBatch * 0.6);
148
+ if (rows.length > singleStatementLimit) {
149
+ throw new Error(`MutationBatch: leg "${id}" carries ${rows.length} rows, above the ~${singleStatementLimit}-row single statement budget for ${columnCount} columns — execute this mutation standalone (it needs chunking)`);
150
+ }
151
+ }
152
+ }
153
+ exports.MutationBatch = MutationBatch;
154
+ //# sourceMappingURL=mutation-batch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-batch.js","sourceRoot":"","sources":["../../src/query/mutation-batch.ts"],"names":[],"mappings":";;;AACA,+CAAqD;AAErD,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAkClC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAa,aAAa;IAA1B;QACmB,SAAI,GAAkB,EAAE,CAAC;QAClC,WAAM,GAA+B,IAAI,CAAC;IA0JpD,CAAC;IAxJC;;;OAGG;IACH,aAAa,CACX,KAA2B,EAC3B,IAA2B,EAC3B,EAAU,EACV,OAA4E;QAE5E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC5B,aAAa,CAAC,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpD,MAAM,KAAK,GAAG,KAAK,CAAC,yBAAyB,CAAC,IAAI,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;QAElH,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAEzH,OAAO,EAAE,EAAE,EAAE,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,aAAa,CACX,KAA2B,EAC3B,IAA2B,EAC3B,EAAU,EACV,MAA2C;QAE3C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QAC5B,aAAa,CAAC,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpD,MAAM,WAAW,GAAG,KAAK,CAAC,6BAA6B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,KAAK,CAAC,yBAAyB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEjE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAEzH,OAAO,EAAE,EAAE,EAAE,CAAC;IAChB,CAAC;IAED,6CAA6C;IAC7C,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YAExB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE3B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CACb,uBAAuB,GAAG,CAAC,EAAE,2HAA2H,CACzJ,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,MAAM,GAAU,EAAE,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,kCAAoB,EAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAE9E,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,MAAM,kBAAkB,CAAC,CAAC;YAC9D,WAAW,CAAC,IAAI,CAAC,oCAAoC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;YACxE,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,QAAQ,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7E,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEhH,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;QAEzC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YAC5B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,sEAAsE;IACtE,gBAAgB,CAAC,GAA8B;QAC7C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,kBAAkB,CAAC,EAAU;QACnC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,2BAA2B,CAAC,IAA2B,EAAE,EAAU;QAChF,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,WAAW,CAAC,CAAC;QACtE,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC;QAE/D,IAAI,IAAI,CAAC,MAAM,GAAG,oBAAoB,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,uBAAuB,EAAE,aAAa,IAAI,CAAC,MAAM,qBAAqB,oBAAoB,oCAAoC,WAAW,iEAAiE,CAC3M,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA5JD,sCA4JC"}
@@ -36,6 +36,12 @@ export interface BatchItemSource<T> {
36
36
  export interface BatchCountSource {
37
37
  futureCount(): FutureCountQuery;
38
38
  }
39
+ /**
40
+ * Quote-aware `$N` renumbering (string literals containing `$1` pass through
41
+ * verbatim) — moved to `sql-utils` so the entity layer can share it without a
42
+ * module cycle; re-exported here for existing importers.
43
+ */
44
+ export { renumberPlaceholders } from './sql-utils';
39
45
  /**
40
46
  * Collects heterogeneous queries and executes them in a SINGLE database round
41
47
  * trip as one UNION ALL statement of json envelopes:
@@ -1 +1 @@
1
- {"version":3,"file":"query-batch.d.ts","sourceRoot":"","sources":["../../src/query/query-batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnG;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,oBAAoB,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,IAAI,gBAAgB,CAAC;CACjC;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,OAAO,CAA6D;IAE5E;;;OAGG;IACH,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAMlE;;;OAGG;IACH,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAM5E;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;IAM5D;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8EnC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IACrC,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE;IAKjC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAC1C,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAKtC,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,MAAM;IAIjD,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM;CAkBf"}
1
+ {"version":3,"file":"query-batch.d.ts","sourceRoot":"","sources":["../../src/query/query-batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,gBAAgB,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnG;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,oBAAoB,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,IAAI,gBAAgB,CAAC;CACjC;AAUD;;;;GAIG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,OAAO,CAA6D;IAE5E;;;OAGG;IACH,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAMlE;;;OAGG;IACH,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC;IAM5E;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,MAAM,GAAG,aAAa;IAM5D;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8EnC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IACrC,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE;IAKjC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAC1C,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;IAKtC,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,GAAG,MAAM;IAIjD,OAAO,CAAC,QAAQ;IAYhB,OAAO,CAAC,MAAM;CAkBf"}
@@ -1,15 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QueryBatch = void 0;
3
+ exports.QueryBatch = exports.renumberPlaceholders = void 0;
4
4
  /**
5
- * Quoted SQL segments (single-quoted literals with '' escaping, double-quoted
6
- * identifiers with "" escaping) pass through verbatim; only bare $N
7
- * placeholders outside them are renumbered. Without this, a branch at a
8
- * nonzero offset would corrupt dollar-digit sequences INSIDE string literals
9
- * (`'price: $1'` → `'price: $8'`).
5
+ * Quote-aware `$N` renumbering (string literals containing `$1` pass through
6
+ * verbatim) moved to `sql-utils` so the entity layer can share it without a
7
+ * module cycle; re-exported here for existing importers.
10
8
  */
11
- const QUOTED_OR_PLACEHOLDER = /('(?:[^']|'')*')|("(?:[^"]|"")*")|\$(\d+)/g;
12
- const renumberPlaceholders = (sqlText, offset) => sqlText.replace(QUOTED_OR_PLACEHOLDER, (match, _single, _dbl, digits) => digits !== undefined ? `$${Number(digits) + offset}` : match);
9
+ var sql_utils_1 = require("./sql-utils");
10
+ Object.defineProperty(exports, "renumberPlaceholders", { enumerable: true, get: function () { return sql_utils_1.renumberPlaceholders; } });
11
+ const sql_utils_2 = require("./sql-utils");
13
12
  /**
14
13
  * Collects heterogeneous queries and executes them in a SINGLE database round
15
14
  * trip as one UNION ALL statement of json envelopes:
@@ -85,7 +84,7 @@ class QueryBatch {
85
84
  const params = [];
86
85
  this.entries.forEach((entry, ix) => {
87
86
  const offset = params.length;
88
- const branchSql = offset === 0 ? entry.future._sql : renumberPlaceholders(entry.future._sql, offset);
87
+ const branchSql = offset === 0 ? entry.future._sql : (0, sql_utils_2.renumberPlaceholders)(entry.future._sql, offset);
89
88
  // Declared bigint/decimal/numeric columns are cast ::text server-side —
90
89
  // JSON.parse would collapse their arbitrary-precision numerals to floats,
91
90
  // and text IS the drivers' delivery form for these types. The jsonb
@@ -1 +1 @@
1
- {"version":3,"file":"query-batch.js","sourceRoot":"","sources":["../../src/query/query-batch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-batch.js","sourceRoot":"","sources":["../../src/query/query-batch.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { TableSchema } from '../schema/table-builder';
2
+ export declare const renumberPlaceholders: (sqlText: string, offset: number) => string;
2
3
  /**
3
4
  * Column configuration extracted from schema
4
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sql-utils.d.ts","sourceRoot":"","sources":["../../src/query/sql-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE;QACP,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;QAC9B,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;KACjC,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAIjE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAIpE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMxF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CAKzE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CAI3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,EAAE,CAS/D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAW3F;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,MAAM,EAAE,EAClB,oBAAoB,GAAE,OAAe,GACpC,YAAY,EAAE,CAoBhB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAChC,MAAM,EAAE,WAAW,EACnB,oBAAoB,GAAE,OAAe,GACpC,MAAM,EAAE,CAoCV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAChC,aAAa,EAAE,YAAY,EAAE,EAC7B,eAAe,GAAE,MAAU,GAC1B,kBAAkB,CAuBpB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,MAAM,EAAE,EACzB,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,WAAW,EACnB,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAoCR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAO3E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO7E"}
1
+ {"version":3,"file":"sql-utils.d.ts","sourceRoot":"","sources":["../../src/query/sql-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAY3D,eAAO,MAAM,oBAAoB,GAAI,SAAS,MAAM,EAAE,QAAQ,MAAM,KAAG,MAGpE,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE;QACP,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;QAC9B,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;KACjC,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,GAAG,EAAE,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAIjE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAIpE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMxF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CAKzE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CAI3E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,EAAE,CAS/D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAW3F;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,MAAM,EAAE,EAClB,oBAAoB,GAAE,OAAe,GACpC,YAAY,EAAE,CAoBhB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAChC,MAAM,EAAE,WAAW,EACnB,oBAAoB,GAAE,OAAe,GACpC,MAAM,EAAE,CAoCV;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAChC,aAAa,EAAE,YAAY,EAAE,EAC7B,eAAe,GAAE,MAAU,GAC1B,kBAAkB,CAuBpB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,eAAe,EAAE,MAAM,EAAE,EACzB,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,WAAW,EACnB,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAoCR;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAO3E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAO7E"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.POSTGRES_MAX_PARAMS = void 0;
3
+ exports.POSTGRES_MAX_PARAMS = exports.renumberPlaceholders = void 0;
4
4
  exports.getQualifiedTableName = getQualifiedTableName;
5
5
  exports.buildReturningColumnList = buildReturningColumnList;
6
6
  exports.buildColumnNamesList = buildColumnNamesList;
@@ -15,6 +15,17 @@ exports.buildValuesClause = buildValuesClause;
15
15
  exports.buildConflictClause = buildConflictClause;
16
16
  exports.buildColumnNameMap = buildColumnNameMap;
17
17
  exports.getDbColumnName = getDbColumnName;
18
+ /**
19
+ * Quoted SQL segments (single-quoted literals with '' escaping, double-quoted
20
+ * identifiers with "" escaping) pass through verbatim; only bare $N
21
+ * placeholders outside them are renumbered. Without this, a leg at a nonzero
22
+ * offset would corrupt dollar-digit sequences INSIDE string literals
23
+ * (`'price: $1'` → `'price: $8'`). Shared by QueryBatch, MutationBatch and
24
+ * insertWithChildren for cross-leg parameter renumbering.
25
+ */
26
+ const QUOTED_OR_PLACEHOLDER = /('(?:[^']|'')*')|("(?:[^"]|"")*")|\$(\d+)/g;
27
+ const renumberPlaceholders = (sqlText, offset) => sqlText.replace(QUOTED_OR_PLACEHOLDER, (match, _single, _dbl, digits) => digits !== undefined ? `$${Number(digits) + offset}` : match);
28
+ exports.renumberPlaceholders = renumberPlaceholders;
18
29
  /**
19
30
  * Get qualified table name with schema prefix if specified
20
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sql-utils.js","sourceRoot":"","sources":["../../src/query/sql-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql-utils.js","sourceRoot":"","sources":["../../src/query/sql-utils.ts"],"names":[],"mappings":"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"}