linkgress-orm 0.4.25 → 0.4.26

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.
@@ -6,6 +6,26 @@ import { Subquery } from './subquery';
6
6
  * Union type: UNION removes duplicates, UNION ALL keeps all rows
7
7
  */
8
8
  export type UnionType = 'UNION' | 'UNION ALL';
9
+ /**
10
+ * Minimal contract a union component must satisfy. SelectQueryBuilder provides
11
+ * the optional `_consumeUnionMetadata` and `_applyUnionPostProcessing` hooks
12
+ * so the union can reconstruct nested-object projections and apply collection
13
+ * mappers; non-SelectQueryBuilder components (rare; e.g. ad-hoc objects used
14
+ * in tests) skip those steps.
15
+ */
16
+ export interface UnionLegBuilder {
17
+ buildUnionSql: (context: SqlBuildContext) => string;
18
+ /** @internal */
19
+ _consumeUnionMetadata?(): {
20
+ nestedPaths: Set<string>;
21
+ selectionResult: any;
22
+ } | undefined;
23
+ /** @internal */
24
+ _applyUnionPostProcessing?(rows: any[], meta: {
25
+ nestedPaths: Set<string>;
26
+ selectionResult: any;
27
+ }): any[];
28
+ }
9
29
  /**
10
30
  * Builder for UNION and UNION ALL queries.
11
31
  * Combines multiple SELECT queries into a single result set.
@@ -48,9 +68,7 @@ export declare class UnionQueryBuilder<TSelection> {
48
68
  /**
49
69
  * Internal constructor - use SelectQueryBuilder.union() or unionAll() to create instances
50
70
  */
51
- constructor(firstQuery: {
52
- buildUnionSql: (context: SqlBuildContext) => string;
53
- }, client: DatabaseClient, executor?: QueryExecutor);
71
+ constructor(firstQuery: UnionLegBuilder, client: DatabaseClient, executor?: QueryExecutor);
54
72
  /**
55
73
  * Add a query with UNION (removes duplicate rows)
56
74
  *
@@ -65,9 +83,7 @@ export declare class UnionQueryBuilder<TSelection> {
65
83
  * .toList();
66
84
  * ```
67
85
  */
68
- union(query: {
69
- buildUnionSql: (context: SqlBuildContext) => string;
70
- }): UnionQueryBuilder<TSelection>;
86
+ union(query: UnionLegBuilder): UnionQueryBuilder<TSelection>;
71
87
  /**
72
88
  * Add a query with UNION ALL (keeps all rows including duplicates)
73
89
  *
@@ -84,9 +100,7 @@ export declare class UnionQueryBuilder<TSelection> {
84
100
  * .toList();
85
101
  * ```
86
102
  */
87
- unionAll(query: {
88
- buildUnionSql: (context: SqlBuildContext) => string;
89
- }): UnionQueryBuilder<TSelection>;
103
+ unionAll(query: UnionLegBuilder): UnionQueryBuilder<TSelection>;
90
104
  /**
91
105
  * Order the combined result set
92
106
  *
@@ -1 +1 @@
1
- {"version":3,"file":"union-builder.d.ts","sourceRoot":"","sources":["../../src/query/union-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,eAAe,EAA6B,MAAM,cAAc,CAAC;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;AAY9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,iBAAiB,CAAC,UAAU;IACvC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAgB;IAEjC;;OAEG;gBAED,UAAU,EAAE;QAAE,aAAa,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,MAAM,CAAA;KAAE,EACnE,MAAM,EAAE,cAAc,EACtB,QAAQ,CAAC,EAAE,aAAa;IAS1B;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,KAAK,EAAE;QAAE,aAAa,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,MAAM,CAAA;KAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC;IASpG;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,KAAK,EAAE;QAAE,aAAa,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,MAAM,CAAA;KAAE,GAAG,iBAAiB,CAAC,UAAU,CAAC;IASvG;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,CAAC,GAAG,IAAI;IAClD,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,CAAC,EAAE,GAAG,IAAI;IACpD,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,IAAI;IAa3E;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B;;;;;OAKG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAUrC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAUlD;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAY9B;;;OAGG;IACH,QAAQ,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,EAAE,CAAA;KAAE;IAC1C;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,eAAe,GAAG,MAAM;IAiD/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,UAAU,CAAC,KAAK,SAAS,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,EAC7D,IAAI,GAAE,KAAwB,GAC7B,QAAQ,CACT,KAAK,SAAS,QAAQ,GAAG,UAAU,GAAG,KAAK,SAAS,OAAO,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,EACzF,KAAK,CACN;IAUD;;;;OAIG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,KAAK;CAUd;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAE/E"}
1
+ {"version":3,"file":"union-builder.d.ts","sourceRoot":"","sources":["../../src/query/union-builder.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ class UnionQueryBuilder {
47
47
  this.executor = executor;
48
48
  this.components.push({
49
49
  buildSql: (ctx) => firstQuery.buildUnionSql(ctx),
50
+ ownerBuilder: firstQuery,
50
51
  });
51
52
  }
52
53
  /**
@@ -68,6 +69,7 @@ class UnionQueryBuilder {
68
69
  newBuilder.components.push({
69
70
  buildSql: (ctx) => query.buildUnionSql(ctx),
70
71
  unionType: 'UNION',
72
+ ownerBuilder: query,
71
73
  });
72
74
  return newBuilder;
73
75
  }
@@ -92,6 +94,7 @@ class UnionQueryBuilder {
92
94
  newBuilder.components.push({
93
95
  buildSql: (ctx) => query.buildUnionSql(ctx),
94
96
  unionType: 'UNION ALL',
97
+ ownerBuilder: query,
95
98
  });
96
99
  return newBuilder;
97
100
  }
@@ -130,10 +133,44 @@ class UnionQueryBuilder {
130
133
  * @returns Promise resolving to array of results
131
134
  */
132
135
  async toList() {
136
+ // buildSql() walks every component which, for SelectQueryBuilder legs,
137
+ // stashes nestedPaths + selectionResult on the builder via
138
+ // _consumeUnionMetadata. We read it back AFTER buildSql finishes (and
139
+ // before query execution — order doesn't actually matter, just consume
140
+ // before another buildSql wipes it).
133
141
  const { sql, params } = this.buildSql();
142
+ // First-leg metadata is canonical for post-processing because UNION
143
+ // requires every leg to project the same column shape. If the first leg
144
+ // has nestedPaths or a transformable selection (collections / mappers /
145
+ // FieldRefs), apply the same reconstruction that SelectQueryBuilder.toList
146
+ // would normally apply.
147
+ let firstLegMeta;
148
+ let firstLegOwner;
149
+ for (let i = 0; i < this.components.length; i++) {
150
+ const c = this.components[i];
151
+ if (c.ownerBuilder?._consumeUnionMetadata) {
152
+ const meta = c.ownerBuilder._consumeUnionMetadata();
153
+ if (i === 0) {
154
+ firstLegMeta = meta;
155
+ firstLegOwner = c.ownerBuilder;
156
+ }
157
+ // Non-first legs: just drain to avoid stale state on the builder.
158
+ }
159
+ }
134
160
  const result = this.executor
135
161
  ? await this.executor.query(sql, params)
136
162
  : await this.client.query(sql, params);
163
+ // Apply post-processing through the FIRST leg's builder. This is correct
164
+ // because:
165
+ // - Postgres's UNION semantics enforce column-shape equality across all
166
+ // legs (otherwise we'd get a SQL error before reaching here),
167
+ // - the result mapper only cares about the column SHAPE (names, types,
168
+ // nested-path encoding), which is identical across legs,
169
+ // - first-leg ownership is the natural pick (the union is initiated
170
+ // from `firstLeg.unionAll(...)`).
171
+ if (firstLegOwner?._applyUnionPostProcessing && firstLegMeta) {
172
+ return firstLegOwner._applyUnionPostProcessing(result.rows, firstLegMeta);
173
+ }
137
174
  return result.rows;
138
175
  }
139
176
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"union-builder.js","sourceRoot":"","sources":["../../src/query/union-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"union-builder.js","sourceRoot":"","sources":["../../src/query/union-builder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linkgress-orm",
3
- "version": "0.4.25",
3
+ "version": "0.4.26",
4
4
  "description": "A lightweight, type-safe ORM for PostgreSQL with LINQ-style queries and automatic type inference",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",