linkgress-orm 0.2.2 → 0.2.4

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 (35) hide show
  1. package/README.md +1 -0
  2. package/dist/entity/db-context.d.ts +26 -0
  3. package/dist/entity/db-context.d.ts.map +1 -1
  4. package/dist/entity/db-context.js +31 -0
  5. package/dist/entity/db-context.js.map +1 -1
  6. package/dist/index.d.ts +2 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +7 -3
  9. package/dist/index.js.map +1 -1
  10. package/dist/query/collection-strategy.interface.d.ts +18 -0
  11. package/dist/query/collection-strategy.interface.d.ts.map +1 -1
  12. package/dist/query/conditions.d.ts +57 -13
  13. package/dist/query/conditions.d.ts.map +1 -1
  14. package/dist/query/conditions.js +94 -4
  15. package/dist/query/conditions.js.map +1 -1
  16. package/dist/query/prepared-query.d.ts +66 -0
  17. package/dist/query/prepared-query.d.ts.map +1 -0
  18. package/dist/query/prepared-query.js +86 -0
  19. package/dist/query/prepared-query.js.map +1 -0
  20. package/dist/query/query-builder.d.ts +63 -2
  21. package/dist/query/query-builder.d.ts.map +1 -1
  22. package/dist/query/query-builder.js +376 -30
  23. package/dist/query/query-builder.js.map +1 -1
  24. package/dist/query/strategies/cte-collection-strategy.d.ts.map +1 -1
  25. package/dist/query/strategies/cte-collection-strategy.js +86 -24
  26. package/dist/query/strategies/cte-collection-strategy.js.map +1 -1
  27. package/dist/query/strategies/lateral-collection-strategy.d.ts +9 -0
  28. package/dist/query/strategies/lateral-collection-strategy.d.ts.map +1 -1
  29. package/dist/query/strategies/lateral-collection-strategy.js +187 -70
  30. package/dist/query/strategies/lateral-collection-strategy.js.map +1 -1
  31. package/dist/query/strategies/temptable-collection-strategy.d.ts +5 -0
  32. package/dist/query/strategies/temptable-collection-strategy.d.ts.map +1 -1
  33. package/dist/query/strategies/temptable-collection-strategy.js +48 -18
  34. package/dist/query/strategies/temptable-collection-strategy.js.map +1 -1
  35. package/package.json +2 -3
@@ -1 +1 @@
1
- {"version":3,"file":"cte-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/cte-collection-strategy.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAG5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,qBAAsB,YAAW,mBAAmB;IAC/D,OAAO,IAAI,sBAAsB;IAIjC,iBAAiB,IAAI,OAAO;IAK5B,gBAAgB,CACd,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,YAAY,GACpB,2BAA2B;IAgD9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6B5B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA2F7B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,0BAA0B;IAsElC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,kCAAkC;IAwE1C;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA4E7B;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA+D1C;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAuC/B"}
1
+ {"version":3,"file":"cte-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/cte-collection-strategy.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAG5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,qBAAsB,YAAW,mBAAmB;IAC/D,OAAO,IAAI,sBAAsB;IAIjC,iBAAiB,IAAI,OAAO;IAK5B,gBAAgB,CACd,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,YAAY,GACpB,2BAA2B;IAgD9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6B5B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAsG7B;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,0BAA0B;IAmGlC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,kCAAkC;IAgF1C;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAoF7B;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA+D1C;;OAEG;IACH,OAAO,CAAC,sBAAsB;CA+C/B"}
@@ -179,12 +179,21 @@ class CteCollectionStrategy {
179
179
  // NOT the navigation path from outer query to this collection (e.g., post -> user -> orders)
180
180
  // Use selectorNavigationJoins which contains only the joins detected from the selector.
181
181
  const navigationJoins = config.selectorNavigationJoins;
182
+ // Helper to rewrite the collection marker alias to the actual table name
183
+ // For CTE, we use the actual table name in FROM (no aliasing), so marker becomes table name
184
+ const rewriteCollectionMarker = (expr) => {
185
+ if (!expr)
186
+ return expr;
187
+ const markerPattern = new RegExp(`"__collection_${targetTable}__"`, 'g');
188
+ return expr.replace(markerPattern, `"${targetTable}"`);
189
+ };
182
190
  // Collect all leaf fields for the SELECT clause
183
191
  const leafFields = this.collectLeafFields(selectedFields);
184
192
  // Build the JSONB fields for json_build_object (handles nested structures)
185
193
  const jsonbObjectExpr = this.buildJsonbObject(selectedFields);
186
- // Build WHERE clause
187
- const whereSQL = whereClause ? `WHERE ${whereClause}` : '';
194
+ // Build WHERE clause (rewrite collection markers)
195
+ const rewrittenWhereClause = rewriteCollectionMarker(whereClause);
196
+ const whereSQL = rewrittenWhereClause ? `WHERE ${rewrittenWhereClause}` : '';
188
197
  // Build DISTINCT clause
189
198
  const distinctClause = isDistinct ? 'DISTINCT ' : '';
190
199
  // Build navigation JOINs for multi-level navigation
@@ -204,18 +213,20 @@ class CteCollectionStrategy {
204
213
  const allSelectFields = [
205
214
  `"${targetTable}"."${foreignKey}" as "__fk_${foreignKey}"`,
206
215
  ...leafFields.map(f => {
216
+ // Rewrite collection marker in expression to actual table name
217
+ const rewrittenExpr = rewriteCollectionMarker(f.expression) || f.expression;
207
218
  // If expression is just a quoted column name (e.g., `"id"`), qualify it with target table
208
219
  // But if it's already qualified (e.g., `"user"."username"`), leave it as is
209
- const isSimpleColumn = /^"[^".]+"$/.test(f.expression);
220
+ const isSimpleColumn = /^"[^".]+"$/.test(rewrittenExpr);
210
221
  if (isSimpleColumn && hasNavigationJoins) {
211
222
  // Extract column name and qualify with target table
212
- const columnName = f.expression.slice(1, -1); // Remove quotes
223
+ const columnName = rewrittenExpr.slice(1, -1); // Remove quotes
213
224
  return `"${targetTable}"."${columnName}" as "${f.alias}"`;
214
225
  }
215
- if (f.expression !== `"${f.alias}"`) {
216
- return `${f.expression} as "${f.alias}"`;
226
+ if (rewrittenExpr !== `"${f.alias}"`) {
227
+ return `${rewrittenExpr} as "${f.alias}"`;
217
228
  }
218
- return f.expression;
229
+ return rewrittenExpr;
219
230
  }),
220
231
  ];
221
232
  // Build ORDER BY clause for subquery (uses database column names)
@@ -258,15 +269,23 @@ GROUP BY "__fk_${foreignKey}"
258
269
  * ```
259
270
  */
260
271
  buildSingleJsonAggregation(config, cteName, context) {
261
- const { selectedFields, targetTable, foreignKey, whereClause, orderByClauseAlias, isDistinct } = config;
272
+ const { selectedFields, targetTable, foreignKey, whereClause, orderByClauseAlias, orderByFields, isDistinct } = config;
262
273
  // Use selectorNavigationJoins for CTE (not the full navigation path)
263
274
  const navigationJoins = config.selectorNavigationJoins;
275
+ // Helper to rewrite the collection marker alias to the actual table name
276
+ const rewriteCollectionMarker = (expr) => {
277
+ if (!expr)
278
+ return expr;
279
+ const markerPattern = new RegExp(`"__collection_${targetTable}__"`, 'g');
280
+ return expr.replace(markerPattern, `"${targetTable}"`);
281
+ };
264
282
  // Collect all leaf fields for the SELECT clause
265
283
  const leafFields = this.collectLeafFields(selectedFields);
266
284
  // Build the JSONB fields for json_build_object (handles nested structures)
267
285
  const jsonbObjectExpr = this.buildJsonbObject(selectedFields);
268
- // Build WHERE clause
269
- const whereSQL = whereClause ? `WHERE ${whereClause}` : '';
286
+ // Build WHERE clause (rewrite collection markers)
287
+ const rewrittenWhereClause = rewriteCollectionMarker(whereClause);
288
+ const whereSQL = rewrittenWhereClause ? `WHERE ${rewrittenWhereClause}` : '';
270
289
  // Build DISTINCT clause
271
290
  const distinctClause = isDistinct ? 'DISTINCT ' : '';
272
291
  // Build navigation JOINs for multi-level navigation
@@ -276,21 +295,41 @@ GROUP BY "__fk_${foreignKey}"
276
295
  const nestedCteJoinsSQL = nestedCteJoins.length > 0 ? nestedCteJoins.join('\n ') : '';
277
296
  // When there are navigation joins, we need to qualify unqualified field expressions
278
297
  const hasNavigationJoins = navigationJoins && navigationJoins.length > 0;
298
+ // Collect the aliases of all selected leaf fields
299
+ const selectedAliases = new Set(leafFields.map(f => f.alias));
279
300
  // Build the innermost SELECT fields
280
301
  const innerSelectFields = [
281
302
  `"${targetTable}"."${foreignKey}" as "__fk_${foreignKey}"`,
282
303
  ...leafFields.map(f => {
283
- const isSimpleColumn = /^"[^".]+"$/.test(f.expression);
304
+ // Rewrite collection marker in expression to actual table name
305
+ const rewrittenExpr = rewriteCollectionMarker(f.expression) || f.expression;
306
+ const isSimpleColumn = /^"[^".]+"$/.test(rewrittenExpr);
284
307
  if (isSimpleColumn && hasNavigationJoins) {
285
- const columnName = f.expression.slice(1, -1);
308
+ const columnName = rewrittenExpr.slice(1, -1);
286
309
  return `"${targetTable}"."${columnName}" as "${f.alias}"`;
287
310
  }
288
- if (f.expression !== `"${f.alias}"`) {
289
- return `${f.expression} as "${f.alias}"`;
311
+ if (rewrittenExpr !== `"${f.alias}"`) {
312
+ return `${rewrittenExpr} as "${f.alias}"`;
290
313
  }
291
- return f.expression;
314
+ return rewrittenExpr;
292
315
  }),
293
316
  ];
317
+ // Add ORDER BY fields if they're not already in the selected fields
318
+ // These are needed for the ROW_NUMBER() window function
319
+ if (orderByFields && orderByFields.length > 0) {
320
+ for (const { field } of orderByFields) {
321
+ // Check if this field is already selected (by alias or directly)
322
+ if (!selectedAliases.has(field)) {
323
+ // Add the ORDER BY column to the inner select so it's available for ROW_NUMBER()
324
+ if (hasNavigationJoins) {
325
+ innerSelectFields.push(`"${targetTable}"."${field}" as "${field}"`);
326
+ }
327
+ else {
328
+ innerSelectFields.push(`"${field}"`);
329
+ }
330
+ }
331
+ }
332
+ }
294
333
  // Build ORDER BY for ROW_NUMBER() - use the alias clause (property names) since we're referencing aliased columns from inner_sub
295
334
  const rowNumberOrderBy = orderByClauseAlias || `"__fk_${foreignKey}"`;
296
335
  const cteSQL = `
@@ -327,6 +366,11 @@ WHERE "__rn" = 1
327
366
  */
328
367
  buildJsonbAggregationWithRowNumber(config, leafFields, jsonbObjectExpr, whereSQL, distinctClause, navJoinsSQL, nestedCteJoinsSQL = '') {
329
368
  const { targetTable, foreignKey, orderByClause, limitValue, offsetValue } = config;
369
+ // Helper to rewrite the collection marker alias to the actual table name
370
+ const rewriteCollectionMarker = (expr) => {
371
+ const markerPattern = new RegExp(`"__collection_${targetTable}__"`, 'g');
372
+ return expr.replace(markerPattern, `"${targetTable}"`);
373
+ };
330
374
  // CTE strategy uses selectorNavigationJoins for joins within the collection's selector.
331
375
  // Unlike LATERAL, CTEs don't need navigation path joins for outer query correlation.
332
376
  const navigationJoins = config.selectorNavigationJoins;
@@ -335,18 +379,20 @@ WHERE "__rn" = 1
335
379
  const innerSelectFields = [
336
380
  `"${targetTable}"."${foreignKey}" as "__fk_${foreignKey}"`,
337
381
  ...leafFields.map(f => {
382
+ // Rewrite collection marker in expression to actual table name
383
+ const rewrittenExpr = rewriteCollectionMarker(f.expression);
338
384
  // If expression is just a quoted column name (e.g., `"id"`), qualify it with target table
339
385
  // But if it's already qualified (e.g., `"user"."username"`), leave it as is
340
- const isSimpleColumn = /^"[^".]+"$/.test(f.expression);
386
+ const isSimpleColumn = /^"[^".]+"$/.test(rewrittenExpr);
341
387
  if (isSimpleColumn && hasNavigationJoins) {
342
388
  // Extract column name and qualify with target table
343
- const columnName = f.expression.slice(1, -1); // Remove quotes
389
+ const columnName = rewrittenExpr.slice(1, -1); // Remove quotes
344
390
  return `"${targetTable}"."${columnName}" as "${f.alias}"`;
345
391
  }
346
- if (f.expression !== `"${f.alias}"`) {
347
- return `${f.expression} as "${f.alias}"`;
392
+ if (rewrittenExpr !== `"${f.alias}"`) {
393
+ return `${rewrittenExpr} as "${f.alias}"`;
348
394
  }
349
- return f.expression;
395
+ return rewrittenExpr;
350
396
  }),
351
397
  ];
352
398
  // Build ORDER BY for ROW_NUMBER() - use the order clause or default to foreign key
@@ -394,8 +440,16 @@ GROUP BY "__fk_${foreignKey}"
394
440
  if (!arrayField) {
395
441
  throw new Error('arrayField is required for array aggregation');
396
442
  }
397
- // Build WHERE clause
398
- const whereSQL = whereClause ? `WHERE ${whereClause}` : '';
443
+ // Helper to rewrite the collection marker alias to the actual table name
444
+ const rewriteCollectionMarker = (expr) => {
445
+ if (!expr)
446
+ return expr;
447
+ const markerPattern = new RegExp(`"__collection_${targetTable}__"`, 'g');
448
+ return expr.replace(markerPattern, `"${targetTable}"`);
449
+ };
450
+ // Build WHERE clause (rewrite collection markers)
451
+ const rewrittenWhereClause = rewriteCollectionMarker(whereClause);
452
+ const whereSQL = rewrittenWhereClause ? `WHERE ${rewrittenWhereClause}` : '';
399
453
  // Build DISTINCT clause
400
454
  const distinctClause = isDistinct ? 'DISTINCT ' : '';
401
455
  // CTE strategy uses selectorNavigationJoins for joins within the collection's selector.
@@ -510,8 +564,16 @@ GROUP BY "__fk_${foreignKey}"
510
564
  */
511
565
  buildScalarAggregation(config, cteName, context) {
512
566
  const { aggregationType, aggregateField, targetTable, foreignKey, whereClause } = config;
513
- // Build WHERE clause
514
- const whereSQL = whereClause ? `WHERE ${whereClause}` : '';
567
+ // Helper to rewrite the collection marker alias to the actual table name
568
+ const rewriteCollectionMarker = (expr) => {
569
+ if (!expr)
570
+ return expr;
571
+ const markerPattern = new RegExp(`"__collection_${targetTable}__"`, 'g');
572
+ return expr.replace(markerPattern, `"${targetTable}"`);
573
+ };
574
+ // Build WHERE clause (rewrite collection markers)
575
+ const rewrittenWhereClause = rewriteCollectionMarker(whereClause);
576
+ const whereSQL = rewrittenWhereClause ? `WHERE ${rewrittenWhereClause}` : '';
515
577
  // Build aggregation expression
516
578
  let aggregateExpression;
517
579
  switch (aggregationType) {
@@ -1 +1 @@
1
- {"version":3,"file":"cte-collection-strategy.js","sourceRoot":"","sources":["../../../src/query/strategies/cte-collection-strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cte-collection-strategy.js","sourceRoot":"","sources":["../../../src/query/strategies/cte-collection-strategy.ts"],"names":[],"mappings":";;;AAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAa,qBAAqB;IAChC,OAAO;QACL,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iBAAiB;QACf,iFAAiF;QACjF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CACd,MAAmC,EACnC,OAAqB;QAErB,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC;QAExC,IAAI,MAAc,CAAC;QACnB,IAAI,gBAAwB,CAAC;QAE7B,QAAQ,MAAM,CAAC,eAAe,EAAE,CAAC;YAC/B,KAAK,OAAO;gBACV,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;oBAC1B,gEAAgE;oBAChE,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBACnE,gBAAgB,GAAG,IAAI,OAAO,QAAQ,CAAC,CAAE,0BAA0B;gBACrE,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC9D,gBAAgB,GAAG,aAAa,OAAO,WAAW,MAAM,CAAC,YAAY,GAAG,CAAC;gBAC3E,CAAC;gBACD,MAAM;YAER,KAAK,OAAO;gBACV,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC9D,gBAAgB,GAAG,aAAa,OAAO,WAAW,MAAM,CAAC,YAAY,GAAG,CAAC;gBACzE,MAAM;YAER,KAAK,OAAO,CAAC;YACb,KAAK,KAAK,CAAC;YACX,KAAK,KAAK,CAAC;YACX,KAAK,KAAK;gBACR,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC/D,gBAAgB,GAAG,aAAa,OAAO,WAAW,MAAM,CAAC,YAAY,GAAG,CAAC;gBACzE,MAAM;YAER;gBACE,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,uBAAuB;QACvB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QAEvD,OAAO;YACL,GAAG,EAAE,MAAM;YACX,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,SAAS,EAAE,OAAO;YAClB,UAAU,EAAE,cAAc,OAAO,SAAS,MAAM,CAAC,WAAW,aAAa,OAAO,aAAa;YAC7F,gBAAgB;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,MAAuB,EAAE,SAAiB,EAAE;QACpE,MAAM,MAAM,GAAiD,EAAE,CAAC;QAChE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;YACrE,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,6BAA6B;gBAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC5B,aAAa;gBACb,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,qBAAqB,CAAC,MAAuB;QACnD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,MAAuB,EAAE,SAAiB,EAAE;QACnE,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,0BAA0B;gBAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5G,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,MAAM,WAAW,EAAE,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;gBACrE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,OAAO,SAAS,GAAG,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,qBAAqB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAClD,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,eAA6C,EAAE,WAAmB;QAC7F,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC;YAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY;gBACtC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,WAAW,GAAG;gBAChD,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC;YAE5B,sBAAsB;YACtB,kDAAkD;YAClD,qEAAqE;YACrE,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;gBACnC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,MAAM,EAAE,QAAQ,IAAI,CAAC,KAAK,MAAM,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC;YAED,WAAW,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,cAAc,KAAK,IAAI,CAAC,KAAK,QAAQ,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrG,CAAC;QAED,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAC3B,MAAmC,EACnC,OAAe,EACf,OAAqB;QAErB,gFAAgF;QAChF,4FAA4F;QAC5F,uEAAuE;QACvE,yFAAyF;QACzF,+GAA+G;QAC/G,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAChJ,gHAAgH;QAChH,6FAA6F;QAC7F,wFAAwF;QACxF,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC;QAEvD,yEAAyE;QACzE,4FAA4F;QAC5F,MAAM,uBAAuB,GAAG,CAAC,IAAwB,EAAsB,EAAE;YAC/E,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,KAAK,EAAE,GAAG,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,gDAAgD;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAE1D,2EAA2E;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAE9D,kDAAkD;QAClD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7E,wBAAwB;QACxB,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAErD,oDAAoD;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAE5E,gEAAgE;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvF,8EAA8E;QAC9E,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,kCAAkC,CAC5C,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,CAC9F,CAAC;QACJ,CAAC;QAED,2CAA2C;QAC3C,mCAAmC;QACnC,oFAAoF;QACpF,kEAAkE;QAClE,MAAM,kBAAkB,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QACzE,MAAM,eAAe,GAAG;YACtB,IAAI,WAAW,MAAM,UAAU,cAAc,UAAU,GAAG;YAC1D,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACpB,+DAA+D;gBAC/D,MAAM,aAAa,GAAG,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;gBAC5E,0FAA0F;gBAC1F,4EAA4E;gBAC5E,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACxD,IAAI,cAAc,IAAI,kBAAkB,EAAE,CAAC;oBACzC,oDAAoD;oBACpD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;oBAC/D,OAAO,IAAI,WAAW,MAAM,UAAU,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5D,CAAC;gBACD,IAAI,aAAa,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACrC,OAAO,GAAG,aAAa,QAAQ,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5C,CAAC;gBACD,OAAO,aAAa,CAAC;YACvB,CAAC,CAAC;SACH,CAAC;QAEF,kEAAkE;QAClE,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEpE,yFAAyF;QACzF,MAAM,cAAc,GAAG,kBAAkB,CAAC,CAAC,CAAC,aAAa,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEnF,MAAM,MAAM,GAAG;;UAET,UAAU;;MAEd,eAAe,GAAG,cAAc;;;WAG3B,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;UAC5C,WAAW;IACjB,WAAW;IACX,iBAAiB;IACjB,QAAQ;IACR,UAAU;;iBAEG,UAAU;KACtB,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,0BAA0B,CAChC,MAAmC,EACnC,OAAe,EACf,OAAqB;QAErB,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QACvH,qEAAqE;QACrE,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC;QAEvD,yEAAyE;QACzE,MAAM,uBAAuB,GAAG,CAAC,IAAwB,EAAsB,EAAE;YAC/E,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,KAAK,EAAE,GAAG,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,gDAAgD;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAE1D,2EAA2E;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAE9D,kDAAkD;QAClD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7E,wBAAwB;QACxB,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAErD,oDAAoD;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAE5E,gEAAgE;QAChE,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvF,oFAAoF;QACpF,MAAM,kBAAkB,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzE,kDAAkD;QAClD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAE9D,oCAAoC;QACpC,MAAM,iBAAiB,GAAG;YACxB,IAAI,WAAW,MAAM,UAAU,cAAc,UAAU,GAAG;YAC1D,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACpB,+DAA+D;gBAC/D,MAAM,aAAa,GAAG,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC;gBAC5E,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACxD,IAAI,cAAc,IAAI,kBAAkB,EAAE,CAAC;oBACzC,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAC9C,OAAO,IAAI,WAAW,MAAM,UAAU,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5D,CAAC;gBACD,IAAI,aAAa,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACrC,OAAO,GAAG,aAAa,QAAQ,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5C,CAAC;gBACD,OAAO,aAAa,CAAC;YACvB,CAAC,CAAC;SACH,CAAC;QAEF,oEAAoE;QACpE,wDAAwD;QACxD,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,aAAa,EAAE,CAAC;gBACtC,iEAAiE;gBACjE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChC,iFAAiF;oBACjF,IAAI,kBAAkB,EAAE,CAAC;wBACvB,iBAAiB,CAAC,IAAI,CAAC,IAAI,WAAW,MAAM,KAAK,SAAS,KAAK,GAAG,CAAC,CAAC;oBACtE,CAAC;yBAAM,CAAC;wBACN,iBAAiB,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;oBACvC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,iIAAiI;QACjI,MAAM,gBAAgB,GAAG,kBAAkB,IAAI,SAAS,UAAU,GAAG,CAAC;QAEtE,MAAM,MAAM,GAAG;;UAET,UAAU;IAChB,eAAe;;oDAEiC,UAAU,cAAc,gBAAgB;;aAE/E,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,WAAW;MACjB,WAAW;MACX,iBAAiB;MACjB,QAAQ;;;;KAIT,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,kCAAkC,CACxC,MAAmC,EACnC,UAAwD,EACxD,eAAuB,EACvB,QAAgB,EAChB,cAAsB,EACtB,WAAmB,EACnB,oBAA4B,EAAE;QAE9B,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAEnF,yEAAyE;QACzE,MAAM,uBAAuB,GAAG,CAAC,IAAY,EAAU,EAAE;YACvD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,KAAK,EAAE,GAAG,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,wFAAwF;QACxF,qFAAqF;QACrF,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC;QACvD,MAAM,kBAAkB,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzE,oCAAoC;QACpC,MAAM,iBAAiB,GAAG;YACxB,IAAI,WAAW,MAAM,UAAU,cAAc,UAAU,GAAG;YAC1D,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACpB,+DAA+D;gBAC/D,MAAM,aAAa,GAAG,uBAAuB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gBAC5D,0FAA0F;gBAC1F,4EAA4E;gBAC5E,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACxD,IAAI,cAAc,IAAI,kBAAkB,EAAE,CAAC;oBACzC,oDAAoD;oBACpD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;oBAC/D,OAAO,IAAI,WAAW,MAAM,UAAU,SAAS,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5D,CAAC;gBACD,IAAI,aAAa,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACrC,OAAO,GAAG,aAAa,QAAQ,CAAC,CAAC,KAAK,GAAG,CAAC;gBAC5C,CAAC;gBACD,OAAO,aAAa,CAAC;YACvB,CAAC,CAAC;SACH,CAAC;QAEF,mFAAmF;QACnF,MAAM,gBAAgB,GAAG,aAAa,IAAI,SAAS,UAAU,GAAG,CAAC;QAEjE,wCAAwC;QACxC,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,CAAC;QAChC,IAAI,eAAuB,CAAC;QAC5B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,oCAAoC;YACpC,eAAe,GAAG,kBAAkB,MAAM,kBAAkB,MAAM,GAAG,UAAU,EAAE,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,yBAAyB;YACzB,eAAe,GAAG,kBAAkB,MAAM,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG;;UAET,UAAU;;MAEd,eAAe;;;oDAG+B,UAAU,cAAc,gBAAgB;;aAE/E,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,WAAW;MACjB,WAAW;MACX,iBAAiB;MACjB,QAAQ;;;EAGZ,eAAe;iBACA,UAAU;KACtB,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAC3B,MAAmC,EACnC,OAAe,EACf,OAAqB;QAErB,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;QAExI,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,yEAAyE;QACzE,MAAM,uBAAuB,GAAG,CAAC,IAAwB,EAAsB,EAAE;YAC/E,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,KAAK,EAAE,GAAG,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,kDAAkD;QAClD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7E,wBAAwB;QACxB,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAErD,wFAAwF;QACxF,qFAAqF;QACrF,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QAC5E,MAAM,kBAAkB,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzE,8EAA8E;QAC9E,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,kCAAkC,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAChG,CAAC;QAED,qEAAqE;QACrE,kFAAkF;QAClF,IAAI,eAAe,GAAG,IAAI,UAAU,GAAG,CAAC;QACxC,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,UAAU,GAAG,EAAE,CAAC;gBACzE,0EAA0E;gBAC1E,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC;YAC1C,CAAC;iBAAM,IAAI,kBAAkB,EAAE,CAAC;gBAC9B,oFAAoF;gBACpF,eAAe,GAAG,IAAI,WAAW,MAAM,UAAU,GAAG,CAAC;YACvD,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,wBAAwB;QACxB,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEpE,sCAAsC;QACtC,MAAM,eAAe,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE1E,4EAA4E;QAC5E,MAAM,YAAY,GAAG,kBAAkB;YACrC,CAAC,CAAC,IAAI,WAAW,MAAM,UAAU,GAAG;YACpC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC;QAEtB,MAAM,MAAM,GAAG;;UAET,UAAU;;OAEb,UAAU,IAAI,eAAe;;;WAGzB,cAAc,SAAS,UAAU,OAAO,UAAU;;aAEhD,YAAY,aAAa,UAAU,MAAM,eAAe,QAAQ,UAAU;YAC3E,WAAW;MACjB,WAAW;MACX,QAAQ;MACR,UAAU;;;iBAGC,UAAU;KACtB,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,kCAAkC,CACxC,MAAmC,EACnC,QAAgB,EAChB,cAAsB,EACtB,WAAmB;QAEnB,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC;QAE/G,wFAAwF;QACxF,qFAAqF;QACrF,MAAM,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC;QACvD,MAAM,kBAAkB,GAAG,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzE,qEAAqE;QACrE,IAAI,eAAe,GAAG,IAAI,UAAU,GAAG,CAAC;QACxC,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChD,MAAM,UAAU,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,UAAU,GAAG,EAAE,CAAC;gBACzE,eAAe,GAAG,UAAU,CAAC,UAAU,CAAC;YAC1C,CAAC;iBAAM,IAAI,kBAAkB,EAAE,CAAC;gBAC9B,eAAe,GAAG,IAAI,WAAW,MAAM,UAAU,GAAG,CAAC;YACvD,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,MAAM,YAAY,GAAG,kBAAkB;YACrC,CAAC,CAAC,IAAI,WAAW,MAAM,UAAU,GAAG;YACpC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC;QAEtB,mFAAmF;QACnF,MAAM,gBAAgB,GAAG,aAAa,IAAI,SAAS,UAAU,GAAG,CAAC;QAEjE,wCAAwC;QACxC,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,CAAC;QAChC,IAAI,eAAuB,CAAC;QAC5B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,eAAe,GAAG,kBAAkB,MAAM,kBAAkB,MAAM,GAAG,UAAU,EAAE,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,kBAAkB,MAAM,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG;;UAET,UAAU;;OAEb,UAAU;;;oDAGmC,UAAU,cAAc,gBAAgB;;aAE/E,cAAc,GAAG,YAAY,aAAa,UAAU,MAAM,eAAe,QAAQ,UAAU;YAC5F,WAAW;MACjB,WAAW;MACX,QAAQ;;;EAGZ,eAAe;iBACA,UAAU;KACtB,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,sBAAsB,CAC5B,MAAmC,EACnC,OAAe,EACf,OAAqB;QAErB,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAEzF,yEAAyE;QACzE,MAAM,uBAAuB,GAAG,CAAC,IAAwB,EAAsB,EAAE;YAC/E,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,iBAAiB,WAAW,KAAK,EAAE,GAAG,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;QACzD,CAAC,CAAC;QAEF,kDAAkD;QAClD,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,WAAW,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE7E,+BAA+B;QAC/B,IAAI,mBAA2B,CAAC;QAChC,QAAQ,eAAe,EAAE,CAAC;YACxB,KAAK,OAAO;gBACV,mBAAmB,GAAG,UAAU,CAAC;gBACjC,MAAM;YACR,KAAK,KAAK,CAAC;YACX,KAAK,KAAK,CAAC;YACX,KAAK,KAAK;gBACR,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,GAAG,eAAe,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;gBAClF,CAAC;gBACD,mBAAmB,GAAG,GAAG,eAAe,CAAC,WAAW,EAAE,KAAK,cAAc,IAAI,CAAC;gBAC9E,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,6BAA6B,eAAe,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG;;KAEd,UAAU;IACX,mBAAmB;QACf,WAAW;EACjB,QAAQ;YACE,UAAU;KACjB,CAAC,IAAI,EAAE,CAAC;QAET,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAjqBD,sDAiqBC"}
@@ -63,6 +63,15 @@ export declare class LateralCollectionStrategy implements ICollectionStrategy {
63
63
  * Build navigation JOINs SQL for multi-level navigation in collection queries
64
64
  */
65
65
  private buildNavigationJoins;
66
+ /**
67
+ * Build navigation JOINs SQL with inner table alias mapping
68
+ * Similar to buildNavigationJoins but uses innerTableAlias for the collection's own table
69
+ * @param navigationJoins - The navigation joins to build
70
+ * @param innerTableAlias - The alias used for the collection's target table (e.g., "lateral_0_posts")
71
+ * @param targetTable - Optional: the original target table name (e.g., "posts") to map to innerTableAlias
72
+ * @param context - Optional: QueryContext containing lateralTableAliasMap for nested lateral references
73
+ */
74
+ private buildNavigationJoinsWithAlias;
66
75
  /**
67
76
  * Build JSONB aggregation using LATERAL
68
77
  */
@@ -1 +1 @@
1
- {"version":3,"file":"lateral-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/lateral-collection-strategy.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAG5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,OAAO,IAAI,sBAAsB;IAIjC,iBAAiB,IAAI,OAAO;IAK5B,gBAAgB,CACd,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,YAAY,GACpB,2BAA2B;IA2D9B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;;;OAIG;IACH,OAAO,CAAC,kCAAkC;IA0F1C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6B5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkH7B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAmGlC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsE7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAuC/B"}
1
+ {"version":3,"file":"lateral-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/lateral-collection-strategy.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAG5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,OAAO,IAAI,sBAAsB;IAIjC,iBAAiB,IAAI,OAAO;IAK5B,gBAAgB,CACd,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,YAAY,GACpB,2BAA2B;IA2D9B;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;;;OAIG;IACH,OAAO,CAAC,kCAAkC;IAqG1C;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6B5B;;;;;;;OAOG;IACH,OAAO,CAAC,6BAA6B;IAwDrC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA8I7B;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IA+GlC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAmF7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAqD/B"}