linkgress-orm 0.0.2 → 0.1.0
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/LICENSE +21 -21
- package/README.md +196 -196
- package/dist/entity/db-column.d.ts +38 -1
- package/dist/entity/db-column.d.ts.map +1 -1
- package/dist/entity/db-column.js.map +1 -1
- package/dist/entity/db-context.d.ts +429 -50
- package/dist/entity/db-context.d.ts.map +1 -1
- package/dist/entity/db-context.js +884 -203
- package/dist/entity/db-context.js.map +1 -1
- package/dist/entity/entity-base.d.ts +8 -0
- package/dist/entity/entity-base.d.ts.map +1 -1
- package/dist/entity/entity-base.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/migration/db-schema-manager.js +77 -77
- package/dist/migration/enum-migrator.js +6 -6
- package/dist/query/collection-strategy.factory.d.ts.map +1 -1
- package/dist/query/collection-strategy.factory.js +7 -3
- package/dist/query/collection-strategy.factory.js.map +1 -1
- package/dist/query/collection-strategy.interface.d.ts +12 -6
- package/dist/query/collection-strategy.interface.d.ts.map +1 -1
- package/dist/query/conditions.d.ts +178 -24
- package/dist/query/conditions.d.ts.map +1 -1
- package/dist/query/conditions.js +165 -4
- package/dist/query/conditions.js.map +1 -1
- package/dist/query/cte-builder.d.ts +21 -5
- package/dist/query/cte-builder.d.ts.map +1 -1
- package/dist/query/cte-builder.js +31 -7
- package/dist/query/cte-builder.js.map +1 -1
- package/dist/query/grouped-query.d.ts +185 -8
- package/dist/query/grouped-query.d.ts.map +1 -1
- package/dist/query/grouped-query.js +516 -30
- package/dist/query/grouped-query.js.map +1 -1
- package/dist/query/join-builder.d.ts +5 -4
- package/dist/query/join-builder.d.ts.map +1 -1
- package/dist/query/join-builder.js +11 -33
- package/dist/query/join-builder.js.map +1 -1
- package/dist/query/query-builder.d.ts +89 -20
- package/dist/query/query-builder.d.ts.map +1 -1
- package/dist/query/query-builder.js +317 -168
- package/dist/query/query-builder.js.map +1 -1
- package/dist/query/query-utils.d.ts +45 -0
- package/dist/query/query-utils.d.ts.map +1 -0
- package/dist/query/query-utils.js +103 -0
- package/dist/query/query-utils.js.map +1 -0
- package/dist/query/sql-utils.d.ts +83 -0
- package/dist/query/sql-utils.d.ts.map +1 -0
- package/dist/query/sql-utils.js +218 -0
- package/dist/query/sql-utils.js.map +1 -0
- package/dist/query/strategies/cte-collection-strategy.d.ts +85 -0
- package/dist/query/strategies/cte-collection-strategy.d.ts.map +1 -0
- package/dist/query/strategies/cte-collection-strategy.js +338 -0
- package/dist/query/strategies/cte-collection-strategy.js.map +1 -0
- package/dist/query/strategies/lateral-collection-strategy.d.ts +59 -0
- package/dist/query/strategies/lateral-collection-strategy.d.ts.map +1 -0
- package/dist/query/strategies/lateral-collection-strategy.js +243 -0
- package/dist/query/strategies/lateral-collection-strategy.js.map +1 -0
- package/dist/query/strategies/temptable-collection-strategy.d.ts +21 -0
- package/dist/query/strategies/temptable-collection-strategy.d.ts.map +1 -1
- package/dist/query/strategies/temptable-collection-strategy.js +216 -94
- package/dist/query/strategies/temptable-collection-strategy.js.map +1 -1
- package/dist/query/subquery.d.ts +24 -1
- package/dist/query/subquery.d.ts.map +1 -1
- package/dist/query/subquery.js +38 -2
- package/dist/query/subquery.js.map +1 -1
- package/package.json +1 -1
- package/dist/query/strategies/jsonb-collection-strategy.d.ts +0 -51
- package/dist/query/strategies/jsonb-collection-strategy.d.ts.map +0 -1
- package/dist/query/strategies/jsonb-collection-strategy.js +0 -210
- package/dist/query/strategies/jsonb-collection-strategy.js.map +0 -1
|
@@ -68,8 +68,15 @@ export declare class TempTableCollectionStrategy implements ICollectionStrategy
|
|
|
68
68
|
/**
|
|
69
69
|
* Build a simple SELECT query without aggregation
|
|
70
70
|
* Results will be grouped in JavaScript for better performance
|
|
71
|
+
*
|
|
72
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
73
|
+
* apply pagination per parent row (not globally).
|
|
71
74
|
*/
|
|
72
75
|
private buildSimpleSelectSQL;
|
|
76
|
+
/**
|
|
77
|
+
* Build simple SELECT with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
78
|
+
*/
|
|
79
|
+
private buildSimpleSelectSQLWithRowNumber;
|
|
73
80
|
/**
|
|
74
81
|
* Safely escape a value for SQL interpolation
|
|
75
82
|
* Used only in multi-statement queries with .simple() mode
|
|
@@ -81,12 +88,26 @@ export declare class TempTableCollectionStrategy implements ICollectionStrategy
|
|
|
81
88
|
private buildEmptyAggregation;
|
|
82
89
|
/**
|
|
83
90
|
* Build JSONB aggregation using temp table
|
|
91
|
+
*
|
|
92
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
93
|
+
* apply pagination per parent row (not globally).
|
|
84
94
|
*/
|
|
85
95
|
private buildJsonbAggregationSQL;
|
|
96
|
+
/**
|
|
97
|
+
* Build JSONB aggregation with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
98
|
+
*/
|
|
99
|
+
private buildJsonbAggregationSQLWithRowNumber;
|
|
86
100
|
/**
|
|
87
101
|
* Build array aggregation using temp table
|
|
102
|
+
*
|
|
103
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
104
|
+
* apply pagination per parent row (not globally).
|
|
88
105
|
*/
|
|
89
106
|
private buildArrayAggregationSQL;
|
|
107
|
+
/**
|
|
108
|
+
* Build array aggregation with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
109
|
+
*/
|
|
110
|
+
private buildArrayAggregationSQLWithRowNumber;
|
|
90
111
|
/**
|
|
91
112
|
* Build scalar aggregation using temp table
|
|
92
113
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temptable-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/temptable-collection-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,
|
|
1
|
+
{"version":3,"file":"temptable-collection-strategy.d.ts","sourceRoot":"","sources":["../../../src/query/strategies/temptable-collection-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAE5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IACrE,OAAO,IAAI,sBAAsB;IAIjC,iBAAiB,IAAI,OAAO;IAKtB,gBAAgB,CACpB,MAAM,EAAE,2BAA2B,EACnC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,2BAA2B,CAAC;IAevC;;;;;;OAMG;YACW,8BAA8B;IAiG5C;;;OAGG;YACW,sBAAsB;IAiEpC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAsBjC;;;;;;OAMG;IACH,OAAO,CAAC,yCAAyC;IAsCjD;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB;IAqD5B;;OAEG;IACH,OAAO,CAAC,iCAAiC;IA4CzC;;;OAGG;IACH,OAAO,CAAC,WAAW;IA0BnB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IA4DhC;;OAEG;IACH,OAAO,CAAC,qCAAqC;IAsC7C;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IA2ChC;;OAEG;IACH,OAAO,CAAC,qCAAqC;IAmC7C;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAuClC"}
|
|
@@ -74,20 +74,20 @@ class TempTableCollectionStrategy {
|
|
|
74
74
|
// Determine if we're doing client-side grouping (JSONB/array) or server-side (scalar)
|
|
75
75
|
const isClientSideGrouping = config.aggregationType === 'jsonb' || config.aggregationType === 'array';
|
|
76
76
|
// Combine everything into a single multi-statement query
|
|
77
|
-
const multiStatementSQL = `
|
|
78
|
-
-- Create temporary table for parent IDs
|
|
79
|
-
CREATE TEMP TABLE ${tempTableName} (
|
|
80
|
-
id integer PRIMARY KEY
|
|
81
|
-
) ON COMMIT DROP;
|
|
82
|
-
|
|
83
|
-
-- Insert parent IDs
|
|
84
|
-
INSERT INTO ${tempTableName} VALUES ${valuePlaceholders};
|
|
85
|
-
|
|
86
|
-
-- Query and return the data
|
|
87
|
-
${aggregationSQL};
|
|
88
|
-
|
|
89
|
-
-- Cleanup
|
|
90
|
-
DROP TABLE IF EXISTS ${tempTableName};
|
|
77
|
+
const multiStatementSQL = `
|
|
78
|
+
-- Create temporary table for parent IDs
|
|
79
|
+
CREATE TEMP TABLE ${tempTableName} (
|
|
80
|
+
id integer PRIMARY KEY
|
|
81
|
+
) ON COMMIT DROP;
|
|
82
|
+
|
|
83
|
+
-- Insert parent IDs
|
|
84
|
+
INSERT INTO ${tempTableName} VALUES ${valuePlaceholders};
|
|
85
|
+
|
|
86
|
+
-- Query and return the data
|
|
87
|
+
${aggregationSQL};
|
|
88
|
+
|
|
89
|
+
-- Cleanup
|
|
90
|
+
DROP TABLE IF EXISTS ${tempTableName};
|
|
91
91
|
`.trim();
|
|
92
92
|
// Execute multi-statement query using querySimple (no parameters)
|
|
93
93
|
const executor = context.executor || client;
|
|
@@ -158,10 +158,10 @@ DROP TABLE IF EXISTS ${tempTableName};
|
|
|
158
158
|
async buildAggregationLegacy(config, context, client) {
|
|
159
159
|
const tempTableName = `tmp_parent_ids_${config.counter}`;
|
|
160
160
|
// Create temp table (without ON COMMIT DROP to persist across queries in the same session)
|
|
161
|
-
const createTableSQL = `
|
|
162
|
-
CREATE TEMP TABLE IF NOT EXISTS ${tempTableName} (
|
|
163
|
-
id integer PRIMARY KEY
|
|
164
|
-
)
|
|
161
|
+
const createTableSQL = `
|
|
162
|
+
CREATE TEMP TABLE IF NOT EXISTS ${tempTableName} (
|
|
163
|
+
id integer PRIMARY KEY
|
|
164
|
+
)
|
|
165
165
|
`.trim();
|
|
166
166
|
// Use executor from context if available for query logging
|
|
167
167
|
if (context.executor) {
|
|
@@ -186,9 +186,9 @@ CREATE TEMP TABLE IF NOT EXISTS ${tempTableName} (
|
|
|
186
186
|
const selectExpression = `"${tempTableName}_agg".data`;
|
|
187
187
|
// Execute aggregation query and store results in another temp table
|
|
188
188
|
const aggTempTableName = `${tempTableName}_agg`;
|
|
189
|
-
const createAggTableSQL = `
|
|
190
|
-
CREATE TEMP TABLE ${aggTempTableName} AS
|
|
191
|
-
${aggregationSQL}
|
|
189
|
+
const createAggTableSQL = `
|
|
190
|
+
CREATE TEMP TABLE ${aggTempTableName} AS
|
|
191
|
+
${aggregationSQL}
|
|
192
192
|
`.trim();
|
|
193
193
|
// Use executor from context if available for query logging
|
|
194
194
|
if (context.executor) {
|
|
@@ -267,34 +267,84 @@ ${aggregationSQL}
|
|
|
267
267
|
/**
|
|
268
268
|
* Build a simple SELECT query without aggregation
|
|
269
269
|
* Results will be grouped in JavaScript for better performance
|
|
270
|
+
*
|
|
271
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
272
|
+
* apply pagination per parent row (not globally).
|
|
270
273
|
*/
|
|
271
274
|
buildSimpleSelectSQL(config, tempTableName) {
|
|
272
275
|
const { selectedFields, targetTable, foreignKey, whereClause, orderByClause, limitValue, offsetValue } = config;
|
|
276
|
+
// Helper to collect all leaf fields from a potentially nested structure
|
|
277
|
+
const collectLeafFields = (fields, prefix = '') => {
|
|
278
|
+
const result = [];
|
|
279
|
+
for (const field of fields) {
|
|
280
|
+
const fullAlias = prefix ? `${prefix}__${field.alias}` : field.alias;
|
|
281
|
+
if (field.nested) {
|
|
282
|
+
result.push(...collectLeafFields(field.nested, fullAlias));
|
|
283
|
+
}
|
|
284
|
+
else if (field.expression) {
|
|
285
|
+
result.push({ alias: fullAlias, expression: field.expression });
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
return result;
|
|
289
|
+
};
|
|
290
|
+
const leafFields = collectLeafFields(selectedFields);
|
|
273
291
|
// Build SELECT fields
|
|
274
|
-
const selectFields =
|
|
292
|
+
const selectFields = leafFields
|
|
275
293
|
.map(f => `${f.expression} as "${f.alias}"`)
|
|
276
294
|
.join(', ');
|
|
277
295
|
// Build WHERE clause
|
|
278
296
|
const additionalWhere = whereClause ? ` AND ${whereClause}` : '';
|
|
279
297
|
// Build ORDER BY clause
|
|
280
|
-
const orderBySQL = orderByClause ? `
|
|
281
|
-
//
|
|
282
|
-
|
|
298
|
+
const orderBySQL = orderByClause ? `ORDER BY ${orderByClause}` : `ORDER BY "id" DESC`;
|
|
299
|
+
// If LIMIT or OFFSET is specified, use ROW_NUMBER() for per-parent pagination
|
|
300
|
+
if (limitValue !== undefined || offsetValue !== undefined) {
|
|
301
|
+
return this.buildSimpleSelectSQLWithRowNumber(config, tempTableName, selectFields, additionalWhere, orderBySQL);
|
|
302
|
+
}
|
|
303
|
+
// No LIMIT/OFFSET - use simple SELECT
|
|
304
|
+
const sql = `
|
|
305
|
+
SELECT
|
|
306
|
+
"${foreignKey}" as parent_id,
|
|
307
|
+
${selectFields}
|
|
308
|
+
FROM "${targetTable}"
|
|
309
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
310
|
+
${orderBySQL}
|
|
311
|
+
`.trim();
|
|
312
|
+
return sql;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Build simple SELECT with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
316
|
+
*/
|
|
317
|
+
buildSimpleSelectSQLWithRowNumber(config, tempTableName, selectFields, additionalWhere, orderBySQL) {
|
|
318
|
+
const { targetTable, foreignKey, orderByClause, limitValue, offsetValue } = config;
|
|
319
|
+
// Build ORDER BY for ROW_NUMBER() - use the order clause or default to id DESC
|
|
320
|
+
const rowNumberOrderBy = orderByClause || `"id" DESC`;
|
|
321
|
+
// Build the row number filter condition
|
|
322
|
+
const offset = offsetValue || 0;
|
|
323
|
+
let rowNumberFilter;
|
|
283
324
|
if (limitValue !== undefined) {
|
|
284
|
-
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
325
|
+
rowNumberFilter = `WHERE "__rn" > ${offset} AND "__rn" <= ${offset + limitValue}`;
|
|
326
|
+
}
|
|
327
|
+
else {
|
|
328
|
+
rowNumberFilter = `WHERE "__rn" > ${offset}`;
|
|
329
|
+
}
|
|
330
|
+
const sql = `
|
|
331
|
+
SELECT
|
|
332
|
+
parent_id,
|
|
333
|
+
${selectFields.split(', ').map(f => {
|
|
334
|
+
// Extract just the alias part for outer select
|
|
335
|
+
const match = f.match(/as "([^"]+)"$/);
|
|
336
|
+
return match ? `"${match[1]}"` : f;
|
|
337
|
+
}).join(', ')}
|
|
338
|
+
FROM (
|
|
339
|
+
SELECT
|
|
340
|
+
"${foreignKey}" as parent_id,
|
|
341
|
+
${selectFields},
|
|
342
|
+
ROW_NUMBER() OVER (PARTITION BY "${foreignKey}" ORDER BY ${rowNumberOrderBy}) as "__rn"
|
|
343
|
+
FROM "${targetTable}"
|
|
344
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
345
|
+
) sub
|
|
346
|
+
${rowNumberFilter}
|
|
347
|
+
${orderBySQL.replace(/ORDER BY/i, 'ORDER BY')}
|
|
298
348
|
`.trim();
|
|
299
349
|
return sql;
|
|
300
350
|
}
|
|
@@ -339,47 +389,94 @@ ${limitOffsetClause}
|
|
|
339
389
|
}
|
|
340
390
|
/**
|
|
341
391
|
* Build JSONB aggregation using temp table
|
|
392
|
+
*
|
|
393
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
394
|
+
* apply pagination per parent row (not globally).
|
|
342
395
|
*/
|
|
343
396
|
buildJsonbAggregationSQL(config, tempTableName) {
|
|
344
397
|
const { selectedFields, targetTable, foreignKey, whereClause, orderByClause, limitValue, offsetValue, isDistinct } = config;
|
|
345
|
-
//
|
|
346
|
-
const
|
|
347
|
-
|
|
348
|
-
|
|
398
|
+
// Helper to build jsonb_build_object expression (handles nested structures)
|
|
399
|
+
const buildJsonbObject = (fields, prefix = '', tableAlias = 't') => {
|
|
400
|
+
const parts = [];
|
|
401
|
+
for (const field of fields) {
|
|
402
|
+
if (field.nested) {
|
|
403
|
+
// Nested object - recurse
|
|
404
|
+
const nestedJsonb = buildJsonbObject(field.nested, prefix ? `${prefix}__${field.alias}` : field.alias, tableAlias);
|
|
405
|
+
parts.push(`'${field.alias}', ${nestedJsonb}`);
|
|
406
|
+
}
|
|
407
|
+
else if (field.expression) {
|
|
408
|
+
// Leaf field - reference the column via table alias
|
|
409
|
+
parts.push(`'${field.alias}', ${tableAlias}.${field.expression}`);
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
return `jsonb_build_object(${parts.join(', ')})`;
|
|
413
|
+
};
|
|
414
|
+
// Build the JSONB fields for jsonb_build_object (handles nested structures)
|
|
415
|
+
const jsonbObjectExpr = buildJsonbObject(selectedFields);
|
|
349
416
|
// Build WHERE clause (combine temp table join with additional filters)
|
|
350
417
|
const additionalWhere = whereClause ? ` AND ${whereClause}` : '';
|
|
351
418
|
// Build ORDER BY clause (use primary key DESC as default for consistent ordering matching JSONB)
|
|
352
|
-
const orderBySQL = orderByClause ? `
|
|
353
|
-
// Build
|
|
354
|
-
|
|
419
|
+
const orderBySQL = orderByClause ? `ORDER BY ${orderByClause}` : `ORDER BY "id" DESC`;
|
|
420
|
+
// Build jsonb_agg ORDER BY clause
|
|
421
|
+
const jsonbAggOrderBy = orderByClause ? ` ORDER BY ${orderByClause}` : '';
|
|
422
|
+
// If LIMIT or OFFSET is specified, use ROW_NUMBER() for per-parent pagination
|
|
423
|
+
if (limitValue !== undefined || offsetValue !== undefined) {
|
|
424
|
+
return this.buildJsonbAggregationSQLWithRowNumber(config, tempTableName, jsonbObjectExpr, additionalWhere);
|
|
425
|
+
}
|
|
426
|
+
// No LIMIT/OFFSET - use simple aggregation
|
|
427
|
+
const sql = `
|
|
428
|
+
SELECT
|
|
429
|
+
t."${foreignKey}" as parent_id,
|
|
430
|
+
jsonb_agg(
|
|
431
|
+
${jsonbObjectExpr}${jsonbAggOrderBy}
|
|
432
|
+
) as data
|
|
433
|
+
FROM (
|
|
434
|
+
SELECT *
|
|
435
|
+
FROM "${targetTable}"
|
|
436
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
437
|
+
${orderBySQL}
|
|
438
|
+
) t
|
|
439
|
+
GROUP BY t."${foreignKey}"
|
|
440
|
+
`.trim();
|
|
441
|
+
return sql;
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* Build JSONB aggregation with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
445
|
+
*/
|
|
446
|
+
buildJsonbAggregationSQLWithRowNumber(config, tempTableName, jsonbObjectExpr, additionalWhere) {
|
|
447
|
+
const { targetTable, foreignKey, orderByClause, limitValue, offsetValue } = config;
|
|
448
|
+
// Build ORDER BY for ROW_NUMBER() - use the order clause or default to id DESC
|
|
449
|
+
const rowNumberOrderBy = orderByClause || `"id" DESC`;
|
|
450
|
+
// Build the row number filter condition
|
|
451
|
+
const offset = offsetValue || 0;
|
|
452
|
+
let rowNumberFilter;
|
|
355
453
|
if (limitValue !== undefined) {
|
|
356
|
-
|
|
454
|
+
rowNumberFilter = `WHERE "__rn" > ${offset} AND "__rn" <= ${offset + limitValue}`;
|
|
357
455
|
}
|
|
358
|
-
|
|
359
|
-
|
|
456
|
+
else {
|
|
457
|
+
rowNumberFilter = `WHERE "__rn" > ${offset}`;
|
|
360
458
|
}
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
FROM
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
${orderBySQL}
|
|
375
|
-
${limitOffsetClause}
|
|
376
|
-
) t
|
|
377
|
-
GROUP BY t."${foreignKey}"
|
|
459
|
+
const sql = `
|
|
460
|
+
SELECT
|
|
461
|
+
t."${foreignKey}" as parent_id,
|
|
462
|
+
jsonb_agg(
|
|
463
|
+
${jsonbObjectExpr}
|
|
464
|
+
) as data
|
|
465
|
+
FROM (
|
|
466
|
+
SELECT *, ROW_NUMBER() OVER (PARTITION BY "${foreignKey}" ORDER BY ${rowNumberOrderBy}) as "__rn"
|
|
467
|
+
FROM "${targetTable}"
|
|
468
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
469
|
+
) t
|
|
470
|
+
${rowNumberFilter}
|
|
471
|
+
GROUP BY t."${foreignKey}"
|
|
378
472
|
`.trim();
|
|
379
473
|
return sql;
|
|
380
474
|
}
|
|
381
475
|
/**
|
|
382
476
|
* Build array aggregation using temp table
|
|
477
|
+
*
|
|
478
|
+
* When LIMIT/OFFSET is specified, uses ROW_NUMBER() window function to correctly
|
|
479
|
+
* apply pagination per parent row (not globally).
|
|
383
480
|
*/
|
|
384
481
|
buildArrayAggregationSQL(config, tempTableName) {
|
|
385
482
|
const { arrayField, targetTable, foreignKey, whereClause, orderByClause, limitValue, offsetValue } = config;
|
|
@@ -389,30 +486,55 @@ GROUP BY t."${foreignKey}"
|
|
|
389
486
|
// Build WHERE clause
|
|
390
487
|
const additionalWhere = whereClause ? ` AND ${whereClause}` : '';
|
|
391
488
|
// Build ORDER BY clause (use primary key DESC as default for consistent ordering matching JSONB)
|
|
392
|
-
const orderBySQL = orderByClause ? `
|
|
393
|
-
// Build
|
|
394
|
-
|
|
489
|
+
const orderBySQL = orderByClause ? `ORDER BY ${orderByClause}` : `ORDER BY "id" DESC`;
|
|
490
|
+
// Build array_agg ORDER BY clause
|
|
491
|
+
const arrayAggOrderBy = orderByClause ? ` ORDER BY ${orderByClause}` : '';
|
|
492
|
+
// If LIMIT or OFFSET is specified, use ROW_NUMBER() for per-parent pagination
|
|
493
|
+
if (limitValue !== undefined || offsetValue !== undefined) {
|
|
494
|
+
return this.buildArrayAggregationSQLWithRowNumber(config, tempTableName, additionalWhere);
|
|
495
|
+
}
|
|
496
|
+
// No LIMIT/OFFSET - use simple aggregation
|
|
497
|
+
const sql = `
|
|
498
|
+
SELECT
|
|
499
|
+
t."${foreignKey}" as parent_id,
|
|
500
|
+
array_agg(t."${arrayField}"${arrayAggOrderBy}) as data
|
|
501
|
+
FROM (
|
|
502
|
+
SELECT "${foreignKey}", "${arrayField}"
|
|
503
|
+
FROM "${targetTable}"
|
|
504
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
505
|
+
${orderBySQL}
|
|
506
|
+
) t
|
|
507
|
+
GROUP BY t."${foreignKey}"
|
|
508
|
+
`.trim();
|
|
509
|
+
return sql;
|
|
510
|
+
}
|
|
511
|
+
/**
|
|
512
|
+
* Build array aggregation with ROW_NUMBER() for per-parent LIMIT/OFFSET
|
|
513
|
+
*/
|
|
514
|
+
buildArrayAggregationSQLWithRowNumber(config, tempTableName, additionalWhere) {
|
|
515
|
+
const { arrayField, targetTable, foreignKey, orderByClause, limitValue, offsetValue } = config;
|
|
516
|
+
// Build ORDER BY for ROW_NUMBER() - use the order clause or default to id DESC
|
|
517
|
+
const rowNumberOrderBy = orderByClause || `"id" DESC`;
|
|
518
|
+
// Build the row number filter condition
|
|
519
|
+
const offset = offsetValue || 0;
|
|
520
|
+
let rowNumberFilter;
|
|
395
521
|
if (limitValue !== undefined) {
|
|
396
|
-
|
|
522
|
+
rowNumberFilter = `WHERE "__rn" > ${offset} AND "__rn" <= ${offset + limitValue}`;
|
|
397
523
|
}
|
|
398
|
-
|
|
399
|
-
|
|
524
|
+
else {
|
|
525
|
+
rowNumberFilter = `WHERE "__rn" > ${offset}`;
|
|
400
526
|
}
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
FROM
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
${orderBySQL}
|
|
413
|
-
${limitOffsetClause}
|
|
414
|
-
) t
|
|
415
|
-
GROUP BY t."${foreignKey}"
|
|
527
|
+
const sql = `
|
|
528
|
+
SELECT
|
|
529
|
+
t."${foreignKey}" as parent_id,
|
|
530
|
+
array_agg(t."${arrayField}") as data
|
|
531
|
+
FROM (
|
|
532
|
+
SELECT "${foreignKey}", "${arrayField}", ROW_NUMBER() OVER (PARTITION BY "${foreignKey}" ORDER BY ${rowNumberOrderBy}) as "__rn"
|
|
533
|
+
FROM "${targetTable}"
|
|
534
|
+
WHERE "${foreignKey}" IN (SELECT id FROM ${tempTableName})${additionalWhere}
|
|
535
|
+
) t
|
|
536
|
+
${rowNumberFilter}
|
|
537
|
+
GROUP BY t."${foreignKey}"
|
|
416
538
|
`.trim();
|
|
417
539
|
return sql;
|
|
418
540
|
}
|
|
@@ -441,13 +563,13 @@ GROUP BY t."${foreignKey}"
|
|
|
441
563
|
default:
|
|
442
564
|
throw new Error(`Unknown aggregation type: ${aggregationType}`);
|
|
443
565
|
}
|
|
444
|
-
const sql = `
|
|
445
|
-
SELECT
|
|
446
|
-
tmp.id as parent_id,
|
|
447
|
-
COALESCE(${aggregateExpression}, ${config.defaultValue}) as data
|
|
448
|
-
FROM ${tempTableName} tmp
|
|
449
|
-
LEFT JOIN "${targetTable}" t ON t."${foreignKey}" = tmp.id${additionalWhere}
|
|
450
|
-
GROUP BY tmp.id
|
|
566
|
+
const sql = `
|
|
567
|
+
SELECT
|
|
568
|
+
tmp.id as parent_id,
|
|
569
|
+
COALESCE(${aggregateExpression}, ${config.defaultValue}) as data
|
|
570
|
+
FROM ${tempTableName} tmp
|
|
571
|
+
LEFT JOIN "${targetTable}" t ON t."${foreignKey}" = tmp.id${additionalWhere}
|
|
572
|
+
GROUP BY tmp.id
|
|
451
573
|
`.trim();
|
|
452
574
|
return sql;
|
|
453
575
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temptable-collection-strategy.js","sourceRoot":"","sources":["../../../src/query/strategies/temptable-collection-strategy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"temptable-collection-strategy.js","sourceRoot":"","sources":["../../../src/query/strategies/temptable-collection-strategy.ts"],"names":[],"mappings":"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"}
|
package/dist/query/subquery.d.ts
CHANGED
|
@@ -17,6 +17,11 @@ export declare class Subquery<TResult = any, TMode extends 'scalar' | 'array' |
|
|
|
17
17
|
* Selection metadata - preserves SqlFragments with mappers for table subqueries
|
|
18
18
|
*/
|
|
19
19
|
private selectionMetadata?;
|
|
20
|
+
/**
|
|
21
|
+
* Field refs from outer queries used inside this subquery's WHERE condition.
|
|
22
|
+
* These need to be propagated to the outer query so it can add necessary JOINs.
|
|
23
|
+
*/
|
|
24
|
+
private outerFieldRefs;
|
|
20
25
|
/**
|
|
21
26
|
* Phantom type marker for type checking
|
|
22
27
|
*/
|
|
@@ -24,7 +29,7 @@ export declare class Subquery<TResult = any, TMode extends 'scalar' | 'array' |
|
|
|
24
29
|
private __mode?;
|
|
25
30
|
constructor(sqlBuilder: (context: SqlBuildContext & {
|
|
26
31
|
tableAlias?: string;
|
|
27
|
-
}) => string, mode?: TMode, selectionMetadata?: Record<string, any
|
|
32
|
+
}) => string, mode?: TMode, selectionMetadata?: Record<string, any>, outerFieldRefs?: FieldRef[]);
|
|
28
33
|
/**
|
|
29
34
|
* Set an alias for this subquery (used when subquery is a table source)
|
|
30
35
|
*/
|
|
@@ -43,6 +48,11 @@ export declare class Subquery<TResult = any, TMode extends 'scalar' | 'array' |
|
|
|
43
48
|
* Get the selection metadata (preserves SqlFragments with mappers)
|
|
44
49
|
*/
|
|
45
50
|
getSelectionMetadata(): Record<string, any> | undefined;
|
|
51
|
+
/**
|
|
52
|
+
* Get field refs from outer queries used inside this subquery.
|
|
53
|
+
* These need to be propagated to the outer query for JOIN detection.
|
|
54
|
+
*/
|
|
55
|
+
getOuterFieldRefs(): FieldRef[];
|
|
46
56
|
/**
|
|
47
57
|
* Check if this is a scalar subquery
|
|
48
58
|
*/
|
|
@@ -73,6 +83,11 @@ export declare function isSubquery(value: any): value is Subquery;
|
|
|
73
83
|
export declare class ExistsCondition extends WhereConditionBase {
|
|
74
84
|
private subquery;
|
|
75
85
|
constructor(subquery: Subquery);
|
|
86
|
+
/**
|
|
87
|
+
* Get field refs from outer queries used inside this subquery.
|
|
88
|
+
* These are propagated to enable JOIN detection in the outer query.
|
|
89
|
+
*/
|
|
90
|
+
getFieldRefs(): FieldRef[];
|
|
76
91
|
buildSql(context: SqlBuildContext): string;
|
|
77
92
|
}
|
|
78
93
|
/**
|
|
@@ -81,6 +96,11 @@ export declare class ExistsCondition extends WhereConditionBase {
|
|
|
81
96
|
export declare class NotExistsCondition extends WhereConditionBase {
|
|
82
97
|
private subquery;
|
|
83
98
|
constructor(subquery: Subquery);
|
|
99
|
+
/**
|
|
100
|
+
* Get field refs from outer queries used inside this subquery.
|
|
101
|
+
* These are propagated to enable JOIN detection in the outer query.
|
|
102
|
+
*/
|
|
103
|
+
getFieldRefs(): FieldRef[];
|
|
84
104
|
buildSql(context: SqlBuildContext): string;
|
|
85
105
|
}
|
|
86
106
|
/**
|
|
@@ -91,6 +111,7 @@ export declare class InSubqueryCondition<T> extends WhereConditionBase {
|
|
|
91
111
|
private field;
|
|
92
112
|
private subquery;
|
|
93
113
|
constructor(field: FieldRef<any, T>, subquery: Subquery<T[], 'array'>);
|
|
114
|
+
getFieldRefs(): FieldRef[];
|
|
94
115
|
buildSql(context: SqlBuildContext): string;
|
|
95
116
|
}
|
|
96
117
|
/**
|
|
@@ -100,6 +121,7 @@ export declare class NotInSubqueryCondition<T> extends WhereConditionBase {
|
|
|
100
121
|
private field;
|
|
101
122
|
private subquery;
|
|
102
123
|
constructor(field: FieldRef<any, T>, subquery: Subquery<T[], 'array'>);
|
|
124
|
+
getFieldRefs(): FieldRef[];
|
|
103
125
|
buildSql(context: SqlBuildContext): string;
|
|
104
126
|
}
|
|
105
127
|
/**
|
|
@@ -111,6 +133,7 @@ export declare class ScalarSubqueryComparison<T> extends WhereConditionBase {
|
|
|
111
133
|
private operator;
|
|
112
134
|
private subquery;
|
|
113
135
|
constructor(field: FieldRef<any, T>, operator: '=' | '!=' | '>' | '>=' | '<' | '<=', subquery: Subquery<T, 'scalar'>);
|
|
136
|
+
getFieldRefs(): FieldRef[];
|
|
114
137
|
buildSql(context: SqlBuildContext): string;
|
|
115
138
|
}
|
|
116
139
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subquery.d.ts","sourceRoot":"","sources":["../../src/query/subquery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7E;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,OAAO,GAAG,GAAG,EAAE,KAAK,SAAS,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO;IACvF;;OAEG;IACH,OAAO,CAAC,UAAU,CAAiE;IAEnF;;OAEG;IACH,OAAO,CAAC,KAAK,CAAC,CAAS;IAEvB;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAAsB;IAEhD;;OAEG;IACH,OAAO,CAAC,YAAY,CAAC,CAAU;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAQ;gBAGrB,UAAU,EAAE,CAAC,OAAO,EAAE,eAAe,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,EAC1E,IAAI,GAAE,KAAwB,EAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"subquery.d.ts","sourceRoot":"","sources":["../../src/query/subquery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7E;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,OAAO,GAAG,GAAG,EAAE,KAAK,SAAS,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO;IACvF;;OAEG;IACH,OAAO,CAAC,UAAU,CAAiE;IAEnF;;OAEG;IACH,OAAO,CAAC,KAAK,CAAC,CAAS;IAEvB;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAAsB;IAEhD;;;OAGG;IACH,OAAO,CAAC,cAAc,CAAkB;IAExC;;OAEG;IACH,OAAO,CAAC,YAAY,CAAC,CAAU;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAQ;gBAGrB,UAAU,EAAE,CAAC,OAAO,EAAE,eAAe,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,EAC1E,IAAI,GAAE,KAAwB,EAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACvC,cAAc,CAAC,EAAE,QAAQ,EAAE;IAQ7B;;OAEG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IAM3C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM;IAIpE;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,SAAS;IAI9B;;OAEG;IACH,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;IAIvD;;;OAGG;IACH,iBAAiB,IAAI,QAAQ,EAAE;IAI/B;;OAEG;IACH,QAAQ,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAI/C;;OAEG;IACH,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAI7C;;OAEG;IACH,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAG9C;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EAAE,UAAU,GAAG,GAAG,CAAE,SAAQ,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IACpH,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,QAAQ,CAExD;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,kBAAkB;IACzC,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,QAAQ;IAItC;;;OAGG;IACM,YAAY,IAAI,QAAQ,EAAE;IAInC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM;CAI3C;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,kBAAkB;IAC5C,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,QAAQ;IAItC;;;OAGG;IACM,YAAY,IAAI,QAAQ,EAAE;IAInC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM;CAI3C;AAED;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,CAAC,CAAE,SAAQ,kBAAkB;IAE1D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;gBADR,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC;IAKjC,YAAY,IAAI,QAAQ,EAAE;IAInC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM;CAK3C;AAED;;GAEG;AACH,qBAAa,sBAAsB,CAAC,CAAC,CAAE,SAAQ,kBAAkB;IAE7D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;gBADR,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC;IAKjC,YAAY,IAAI,QAAQ,EAAE;IAInC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM;CAK3C;AAED;;;GAGG;AACH,qBAAa,wBAAwB,CAAC,CAAC,CAAE,SAAQ,kBAAkB;IAE/D,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,QAAQ;gBAFR,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,EAC9C,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC;IAKhC,YAAY,IAAI,QAAQ,EAAE;IAInC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM;CAK3C;AAED;;GAEG;AAEH;;GAEG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,eAAe,CAE1D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,kBAAkB,CAEhE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,GAC/B,mBAAmB,CAAC,CAAC,CAAC,CAExB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,GAC/B,sBAAsB,CAAC,CAAC,CAAC,CAE3B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,WAAW,CAAC,CAAC,EAC3B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,WAAW,CAAC,CAAC,EAC3B,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,EACvB,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC9B,wBAAwB,CAAC,CAAC,CAAC,CAE7B;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC"}
|