@tablecraft/engine 0.1.6 → 0.1.7
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/core/queryBuilder.d.ts.map +1 -1
- package/dist/core/queryBuilder.js +8 -7
- package/dist/core/queryBuilder.js.map +1 -1
- package/dist/define.d.ts +18 -14
- package/dist/define.d.ts.map +1 -1
- package/dist/define.js +93 -43
- package/dist/define.js.map +1 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +17 -14
- package/dist/engine.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/queryBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,MAAM,EACN,GAAG,EAIJ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AAIzD,qBAAa,YAAY;IACX,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnD,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC;IAgE5E,OAAO,CAAC,kBAAkB;IA8B1B;;;OAGG;IACH,UAAU,CACR,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,WAAW,EACnB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/B,GAAG;
|
|
1
|
+
{"version":3,"file":"queryBuilder.d.ts","sourceRoot":"","sources":["../../src/core/queryBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,MAAM,EACN,GAAG,EAIJ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AAIzD,qBAAa,YAAY;IACX,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnD,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC;IAgE5E,OAAO,CAAC,kBAAkB;IA8B1B;;;OAGG;IACH,UAAU,CACR,KAAK,EAAE,GAAG,EACV,MAAM,EAAE,WAAW,EACnB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/B,GAAG;IAUN;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG;IAO9B,OAAO,CAAC,SAAS;IA6BjB,sBAAsB,CACpB,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAChC,GAAG,GAAG,SAAS;CAoCnB"}
|
|
@@ -100,8 +100,9 @@ export class QueryBuilder {
|
|
|
100
100
|
buildJoins(query, config, sqlConditions) {
|
|
101
101
|
if (!config.joins)
|
|
102
102
|
return query;
|
|
103
|
+
query = query.$dynamic();
|
|
103
104
|
for (const join of config.joins) {
|
|
104
|
-
this.applyJoin(query, join, sqlConditions);
|
|
105
|
+
query = this.applyJoin(query, join, sqlConditions);
|
|
105
106
|
}
|
|
106
107
|
return query;
|
|
107
108
|
}
|
|
@@ -119,28 +120,28 @@ export class QueryBuilder {
|
|
|
119
120
|
if (!joinedTable) {
|
|
120
121
|
throw new Error(`Joined table '${join.table}' not found in schema`);
|
|
121
122
|
}
|
|
122
|
-
// Use SQL object if available, otherwise fall back to raw string
|
|
123
123
|
const key = join.alias ?? join.table;
|
|
124
124
|
const onCondition = sqlConditions?.get(key) ?? sql.raw(join.on);
|
|
125
125
|
switch (join.type) {
|
|
126
126
|
case 'left':
|
|
127
|
-
query.leftJoin(joinedTable, onCondition);
|
|
127
|
+
query = query.leftJoin(joinedTable, onCondition);
|
|
128
128
|
break;
|
|
129
129
|
case 'right':
|
|
130
|
-
query.rightJoin(joinedTable, onCondition);
|
|
130
|
+
query = query.rightJoin(joinedTable, onCondition);
|
|
131
131
|
break;
|
|
132
132
|
case 'inner':
|
|
133
|
-
query.innerJoin(joinedTable, onCondition);
|
|
133
|
+
query = query.innerJoin(joinedTable, onCondition);
|
|
134
134
|
break;
|
|
135
135
|
case 'full':
|
|
136
|
-
query.fullJoin(joinedTable, onCondition);
|
|
136
|
+
query = query.fullJoin(joinedTable, onCondition);
|
|
137
137
|
break;
|
|
138
138
|
}
|
|
139
139
|
if (join.joins) {
|
|
140
140
|
for (const nested of join.joins) {
|
|
141
|
-
this.applyJoin(query, nested, sqlConditions);
|
|
141
|
+
query = this.applyJoin(query, nested, sqlConditions);
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
|
+
return query;
|
|
144
145
|
}
|
|
145
146
|
buildBackendConditions(config, context = {}) {
|
|
146
147
|
if (!config.backendConditions || config.backendConditions.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryBuilder.js","sourceRoot":"","sources":["../../src/core/queryBuilder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"queryBuilder.js","sourceRoot":"","sources":["../../src/core/queryBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/define.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { and, between, exists, ilike, inArray, isNotNull, isNull, like, not, notBetween, notExists, notInArray, or, SQL, sql, type Table } from "drizzle-orm";
|
|
2
2
|
export declare const drizzleOperators: {
|
|
3
3
|
eq: import("drizzle-orm").BinaryOperator;
|
|
4
4
|
ne: import("drizzle-orm").BinaryOperator;
|
|
@@ -21,8 +21,9 @@ export declare const drizzleOperators: {
|
|
|
21
21
|
not: typeof not;
|
|
22
22
|
sql: typeof sql;
|
|
23
23
|
};
|
|
24
|
-
import type {
|
|
25
|
-
import {
|
|
24
|
+
import type { CountMode, EngineContext, EngineParams } from "./types/engine";
|
|
25
|
+
import type { ColumnConfig, ColumnFormat, DatePreset, FilterExpression, Operator, SubqueryCondition, TableConfig } from "./types/table";
|
|
26
|
+
export declare const TABLECRAFT_EXTENSIONS_KEY = "__tablecraft_ext";
|
|
26
27
|
type InferColumns<T> = T extends {
|
|
27
28
|
_: {
|
|
28
29
|
columns: infer C;
|
|
@@ -66,7 +67,7 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
66
67
|
/** Set display format for a column */
|
|
67
68
|
format(column: InferColumns<T>, fmt: ColumnFormat): this;
|
|
68
69
|
/** Set column alignment */
|
|
69
|
-
align(column: InferColumns<T>, alignment:
|
|
70
|
+
align(column: InferColumns<T>, alignment: "left" | "center" | "right"): this;
|
|
70
71
|
/** Set column width (px) */
|
|
71
72
|
width(column: InferColumns<T>, w: number, options?: {
|
|
72
73
|
min?: number;
|
|
@@ -138,7 +139,7 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
138
139
|
* ]},
|
|
139
140
|
* ])
|
|
140
141
|
*/
|
|
141
|
-
whereGroup(type:
|
|
142
|
+
whereGroup(type: "and" | "or", conditions: FilterExpression[]): this;
|
|
142
143
|
sort(...specs: string[]): this;
|
|
143
144
|
sortable(...columns: InferColumns<T>[]): this;
|
|
144
145
|
noSort(): this;
|
|
@@ -148,12 +149,12 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
148
149
|
noPagination(): this;
|
|
149
150
|
join(table: Table, options?: {
|
|
150
151
|
on?: string | SQL;
|
|
151
|
-
type?:
|
|
152
|
+
type?: "left" | "right" | "inner" | "full";
|
|
152
153
|
alias?: string;
|
|
153
154
|
columns?: string[];
|
|
154
155
|
}): this;
|
|
155
156
|
computed(name: string, expression: SQL, options?: {
|
|
156
|
-
type?: ColumnConfig[
|
|
157
|
+
type?: ColumnConfig["type"];
|
|
157
158
|
label?: string;
|
|
158
159
|
sortable?: boolean;
|
|
159
160
|
}): this;
|
|
@@ -170,7 +171,7 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
170
171
|
transform(column: InferColumns<T>, fn: (value: unknown) => unknown): this;
|
|
171
172
|
groupBy(...fields: InferColumns<T>[]): this;
|
|
172
173
|
having(alias: string, operator: Operator, value: unknown): this;
|
|
173
|
-
aggregate(alias: string, type:
|
|
174
|
+
aggregate(alias: string, type: "count" | "sum" | "avg" | "min" | "max", field: InferColumns<T>): this;
|
|
174
175
|
include(table: Table, options: {
|
|
175
176
|
foreignKey: string;
|
|
176
177
|
localKey?: string;
|
|
@@ -218,10 +219,10 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
218
219
|
* })
|
|
219
220
|
*/
|
|
220
221
|
columnMeta(column: string, meta: {
|
|
221
|
-
type?: ColumnConfig[
|
|
222
|
+
type?: ColumnConfig["type"];
|
|
222
223
|
label?: string;
|
|
223
224
|
format?: ColumnFormat;
|
|
224
|
-
align?:
|
|
225
|
+
align?: "left" | "center" | "right";
|
|
225
226
|
width?: number;
|
|
226
227
|
minWidth?: number;
|
|
227
228
|
maxWidth?: number;
|
|
@@ -257,10 +258,10 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
257
258
|
* .columnMeta('revenue', { type: 'number', label: 'Revenue', format: 'currency' })
|
|
258
259
|
*/
|
|
259
260
|
rawSelect(alias: string, sqlExpr: SQL, options?: {
|
|
260
|
-
type?: ColumnConfig[
|
|
261
|
+
type?: ColumnConfig["type"];
|
|
261
262
|
label?: string;
|
|
262
263
|
format?: ColumnFormat;
|
|
263
|
-
align?:
|
|
264
|
+
align?: "left" | "center" | "right";
|
|
264
265
|
sortable?: boolean;
|
|
265
266
|
filterable?: boolean;
|
|
266
267
|
hidden?: boolean;
|
|
@@ -348,15 +349,18 @@ export declare class TableDefinitionBuilder<T extends Table = Table> {
|
|
|
348
349
|
*
|
|
349
350
|
* Omitting `filter` creates an uncorrelated subquery (full table scan).
|
|
350
351
|
*/
|
|
351
|
-
subquery(alias: string, table: Table, type:
|
|
352
|
+
subquery(alias: string, table: Table, type: "count" | "exists" | "first", filter?: string | SubqueryCondition[] | SQL): this;
|
|
352
353
|
softDelete(field?: string): this;
|
|
353
354
|
tenant(field?: string): this;
|
|
354
|
-
exportable(...formats: (
|
|
355
|
+
exportable(...formats: ("csv" | "json")[]): this;
|
|
355
356
|
access(options: {
|
|
356
357
|
roles?: string[];
|
|
357
358
|
permissions?: string[];
|
|
358
359
|
}): this;
|
|
360
|
+
/** Set a custom display name for this table definition. */
|
|
359
361
|
as(name: string): this;
|
|
362
|
+
/** Alias for `.as()` — sets the table's display name. */
|
|
363
|
+
name(name: string): this;
|
|
360
364
|
/**
|
|
361
365
|
* Control how row counting works.
|
|
362
366
|
* 'exact' = SELECT COUNT(*) — accurate but slow on large tables
|
package/dist/define.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
|
package/dist/define.js
CHANGED
|
@@ -1,11 +1,28 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { and, between, eq, exists, getTableName, gt, gte, ilike, inArray, isNotNull, isNull, like, lt, lte, ne, not, notBetween, notExists, notInArray, or, SQL, sql, } from "drizzle-orm";
|
|
2
2
|
export const drizzleOperators = {
|
|
3
|
-
eq,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
eq,
|
|
4
|
+
ne,
|
|
5
|
+
gt,
|
|
6
|
+
gte,
|
|
7
|
+
lt,
|
|
8
|
+
lte,
|
|
9
|
+
like,
|
|
10
|
+
ilike,
|
|
11
|
+
inArray,
|
|
12
|
+
notInArray,
|
|
13
|
+
between,
|
|
14
|
+
notBetween,
|
|
15
|
+
isNull,
|
|
16
|
+
isNotNull,
|
|
17
|
+
exists,
|
|
18
|
+
notExists,
|
|
19
|
+
and,
|
|
20
|
+
or,
|
|
21
|
+
not,
|
|
22
|
+
sql,
|
|
7
23
|
};
|
|
8
|
-
import {
|
|
24
|
+
import { detectSensitiveColumns, getSensitiveColumnNames, introspectTable, } from "./utils/introspect";
|
|
25
|
+
export const TABLECRAFT_EXTENSIONS_KEY = "__tablecraft_ext";
|
|
9
26
|
function emptyExtensions() {
|
|
10
27
|
return {
|
|
11
28
|
computedExpressions: new Map(),
|
|
@@ -151,12 +168,15 @@ export class TableDefinitionBuilder {
|
|
|
151
168
|
// ──── Search ────
|
|
152
169
|
search(...columns) {
|
|
153
170
|
// Cast to unknown first to avoid tuple/array type mismatch in strict mode
|
|
154
|
-
this._config.search = {
|
|
171
|
+
this._config.search = {
|
|
172
|
+
fields: columns,
|
|
173
|
+
enabled: true,
|
|
174
|
+
};
|
|
155
175
|
return this;
|
|
156
176
|
}
|
|
157
177
|
searchAll() {
|
|
158
178
|
const textCols = this._config.columns
|
|
159
|
-
.filter((c) => c.type ===
|
|
179
|
+
.filter((c) => c.type === "string" && !c.hidden)
|
|
160
180
|
.map((c) => c.name);
|
|
161
181
|
this._config.search = { fields: textCols, enabled: true };
|
|
162
182
|
return this;
|
|
@@ -176,7 +196,12 @@ export class TableDefinitionBuilder {
|
|
|
176
196
|
staticFilter(field, operator, value) {
|
|
177
197
|
if (!this._config.filters)
|
|
178
198
|
this._config.filters = [];
|
|
179
|
-
this._config.filters.push({
|
|
199
|
+
this._config.filters.push({
|
|
200
|
+
field: field,
|
|
201
|
+
operator,
|
|
202
|
+
value,
|
|
203
|
+
type: "static",
|
|
204
|
+
});
|
|
180
205
|
return this;
|
|
181
206
|
}
|
|
182
207
|
noFilter() {
|
|
@@ -197,7 +222,7 @@ export class TableDefinitionBuilder {
|
|
|
197
222
|
if (!this._config.filterGroups)
|
|
198
223
|
this._config.filterGroups = [];
|
|
199
224
|
this._config.filterGroups.push({
|
|
200
|
-
type:
|
|
225
|
+
type: "or",
|
|
201
226
|
conditions: conditions.map((c) => ({
|
|
202
227
|
field: c.field,
|
|
203
228
|
operator: c.op,
|
|
@@ -252,7 +277,11 @@ export class TableDefinitionBuilder {
|
|
|
252
277
|
return this;
|
|
253
278
|
}
|
|
254
279
|
noPagination() {
|
|
255
|
-
this._config.pagination = {
|
|
280
|
+
this._config.pagination = {
|
|
281
|
+
defaultPageSize: 10,
|
|
282
|
+
maxPageSize: 100,
|
|
283
|
+
enabled: false,
|
|
284
|
+
};
|
|
256
285
|
return this;
|
|
257
286
|
}
|
|
258
287
|
// ──── Joins (accepts string OR SQL) ────
|
|
@@ -262,11 +291,11 @@ export class TableDefinitionBuilder {
|
|
|
262
291
|
const joinedName = getTableName(table);
|
|
263
292
|
const baseName = this._config.base;
|
|
264
293
|
const key = options?.alias ?? joinedName;
|
|
265
|
-
let onString =
|
|
294
|
+
let onString = "";
|
|
266
295
|
if (options?.on) {
|
|
267
|
-
if (typeof options.on ===
|
|
296
|
+
if (typeof options.on === "string") {
|
|
268
297
|
// Shorthand: "customerId" → "base.customerId = joined.id"
|
|
269
|
-
if (!options.on.includes(
|
|
298
|
+
if (!options.on.includes("=") && !options.on.includes(".")) {
|
|
270
299
|
onString = `${baseName}.${options.on} = ${joinedName}.id`;
|
|
271
300
|
}
|
|
272
301
|
else {
|
|
@@ -286,13 +315,13 @@ export class TableDefinitionBuilder {
|
|
|
286
315
|
}
|
|
287
316
|
const joinConfig = {
|
|
288
317
|
table: joinedName,
|
|
289
|
-
type: options?.type ??
|
|
318
|
+
type: options?.type ?? "left",
|
|
290
319
|
on: onString,
|
|
291
320
|
...(options?.alias && { alias: options.alias }),
|
|
292
321
|
...(options?.columns && {
|
|
293
322
|
columns: options.columns.map((name) => ({
|
|
294
323
|
name,
|
|
295
|
-
type:
|
|
324
|
+
type: "string",
|
|
296
325
|
hidden: false,
|
|
297
326
|
sortable: true,
|
|
298
327
|
filterable: true,
|
|
@@ -306,7 +335,7 @@ export class TableDefinitionBuilder {
|
|
|
306
335
|
computed(name, expression, options) {
|
|
307
336
|
this._config.columns.push({
|
|
308
337
|
name,
|
|
309
|
-
type: options?.type ??
|
|
338
|
+
type: options?.type ?? "string",
|
|
310
339
|
label: options?.label ?? name,
|
|
311
340
|
hidden: false,
|
|
312
341
|
sortable: options?.sortable ?? true,
|
|
@@ -318,7 +347,7 @@ export class TableDefinitionBuilder {
|
|
|
318
347
|
}
|
|
319
348
|
// ──── Backend Conditions ────
|
|
320
349
|
where(condition) {
|
|
321
|
-
if (typeof condition ===
|
|
350
|
+
if (typeof condition === "function") {
|
|
322
351
|
this._ext.dynamicWheres.push(condition);
|
|
323
352
|
return this;
|
|
324
353
|
}
|
|
@@ -377,7 +406,7 @@ export class TableDefinitionBuilder {
|
|
|
377
406
|
const includeConfig = {
|
|
378
407
|
table: getTableName(table),
|
|
379
408
|
foreignKey: options.foreignKey,
|
|
380
|
-
localKey: options.localKey ??
|
|
409
|
+
localKey: options.localKey ?? "id",
|
|
381
410
|
as: options.as,
|
|
382
411
|
columns: options.columns,
|
|
383
412
|
limit: options.limit,
|
|
@@ -395,9 +424,9 @@ export class TableDefinitionBuilder {
|
|
|
395
424
|
recursive(options) {
|
|
396
425
|
this._config.recursive = {
|
|
397
426
|
parentKey: options.parentKey,
|
|
398
|
-
childKey: options.childKey ??
|
|
427
|
+
childKey: options.childKey ?? "id",
|
|
399
428
|
maxDepth: options.maxDepth ?? 10,
|
|
400
|
-
depthAlias: options.depthAlias ??
|
|
429
|
+
depthAlias: options.depthAlias ?? "depth",
|
|
401
430
|
pathAlias: options.pathAlias,
|
|
402
431
|
startWith: options.startWith
|
|
403
432
|
? {
|
|
@@ -443,7 +472,7 @@ export class TableDefinitionBuilder {
|
|
|
443
472
|
// haven't been registered yet. Create a placeholder.
|
|
444
473
|
col = {
|
|
445
474
|
name: column,
|
|
446
|
-
type: meta.type ??
|
|
475
|
+
type: meta.type ?? "string",
|
|
447
476
|
hidden: false,
|
|
448
477
|
computed: true,
|
|
449
478
|
};
|
|
@@ -518,7 +547,7 @@ export class TableDefinitionBuilder {
|
|
|
518
547
|
// Register as a computed column with metadata
|
|
519
548
|
this._config.columns.push({
|
|
520
549
|
name: alias,
|
|
521
|
-
type: options?.type ??
|
|
550
|
+
type: options?.type ?? "string",
|
|
522
551
|
label: options?.label,
|
|
523
552
|
hidden: options?.hidden ?? false,
|
|
524
553
|
sortable: options?.sortable ?? true,
|
|
@@ -549,7 +578,8 @@ export class TableDefinitionBuilder {
|
|
|
549
578
|
* Prefer `.sort()` or `.sortable()` for user-facing sort controls.
|
|
550
579
|
*/
|
|
551
580
|
rawOrderBy(sqlExpr) {
|
|
552
|
-
if (typeof process !==
|
|
581
|
+
if (typeof process !== "undefined" &&
|
|
582
|
+
process.env?.NODE_ENV !== "production") {
|
|
553
583
|
console.warn(`[TableCraft] rawOrderBy() bypasses the sortable whitelist and should not be used with user input. ` +
|
|
554
584
|
`Expression: ${sqlExpr}`);
|
|
555
585
|
}
|
|
@@ -636,15 +666,20 @@ export class TableDefinitionBuilder {
|
|
|
636
666
|
// Drizzle SQL expression — stored as runtime-only filterSql (not JSON-serializable)
|
|
637
667
|
entry = { alias, table: getTableName(table), type, filterSql: filter };
|
|
638
668
|
}
|
|
639
|
-
else if (typeof filter ===
|
|
669
|
+
else if (typeof filter === "string") {
|
|
640
670
|
// @deprecated raw string — kept for backwards compatibility
|
|
641
671
|
entry = { alias, table: getTableName(table), type, filter };
|
|
642
672
|
}
|
|
643
673
|
else {
|
|
644
|
-
entry = {
|
|
674
|
+
entry = {
|
|
675
|
+
alias,
|
|
676
|
+
table: getTableName(table),
|
|
677
|
+
type,
|
|
678
|
+
filterConditions: filter,
|
|
679
|
+
};
|
|
645
680
|
}
|
|
646
681
|
// Dedupe subquery entries by alias — replace if exists
|
|
647
|
-
const existingIdx = this._config.subqueries.findIndex(e => e.alias === alias);
|
|
682
|
+
const existingIdx = this._config.subqueries.findIndex((e) => e.alias === alias);
|
|
648
683
|
if (existingIdx >= 0) {
|
|
649
684
|
this._config.subqueries[existingIdx] = entry;
|
|
650
685
|
}
|
|
@@ -658,20 +693,21 @@ export class TableDefinitionBuilder {
|
|
|
658
693
|
// 'first' mode returns row_to_json() — a non-scalar JSON object — which
|
|
659
694
|
// cannot be used in ORDER BY. Mark it sortable: false to prevent DB errors.
|
|
660
695
|
// 'count' (integer) and 'exists' (boolean) are scalar and safe to sort.
|
|
661
|
-
const existingCol = this._config.columns.find(c => c.name === alias);
|
|
696
|
+
const existingCol = this._config.columns.find((c) => c.name === alias);
|
|
662
697
|
if (existingCol) {
|
|
663
|
-
existingCol.type =
|
|
664
|
-
|
|
698
|
+
existingCol.type =
|
|
699
|
+
type === "exists" ? "boolean" : type === "count" ? "number" : "json";
|
|
700
|
+
existingCol.sortable = type !== "first";
|
|
665
701
|
existingCol.filterable = false;
|
|
666
702
|
existingCol.computed = true;
|
|
667
703
|
}
|
|
668
704
|
else {
|
|
669
705
|
this._config.columns.push({
|
|
670
706
|
name: alias,
|
|
671
|
-
type: type ===
|
|
707
|
+
type: type === "exists" ? "boolean" : type === "count" ? "number" : "json",
|
|
672
708
|
label: alias,
|
|
673
709
|
hidden: false,
|
|
674
|
-
sortable: type !==
|
|
710
|
+
sortable: type !== "first",
|
|
675
711
|
filterable: false,
|
|
676
712
|
computed: true,
|
|
677
713
|
});
|
|
@@ -681,21 +717,21 @@ export class TableDefinitionBuilder {
|
|
|
681
717
|
// ──── Platform Features ────
|
|
682
718
|
softDelete(field) {
|
|
683
719
|
this._config.softDelete = {
|
|
684
|
-
field: field ?? this._config.softDelete?.field ??
|
|
720
|
+
field: field ?? this._config.softDelete?.field ?? "deletedAt",
|
|
685
721
|
enabled: true,
|
|
686
722
|
};
|
|
687
723
|
return this;
|
|
688
724
|
}
|
|
689
725
|
tenant(field) {
|
|
690
726
|
this._config.tenant = {
|
|
691
|
-
field: field ?? this._config.tenant?.field ??
|
|
727
|
+
field: field ?? this._config.tenant?.field ?? "tenantId",
|
|
692
728
|
enabled: true,
|
|
693
729
|
};
|
|
694
730
|
return this;
|
|
695
731
|
}
|
|
696
732
|
exportable(...formats) {
|
|
697
733
|
this._config.export = {
|
|
698
|
-
formats: formats.length > 0 ? formats : [
|
|
734
|
+
formats: formats.length > 0 ? formats : ["csv", "json"],
|
|
699
735
|
enabled: true,
|
|
700
736
|
};
|
|
701
737
|
return this;
|
|
@@ -705,10 +741,15 @@ export class TableDefinitionBuilder {
|
|
|
705
741
|
return this;
|
|
706
742
|
}
|
|
707
743
|
// ──── Name Override ────
|
|
744
|
+
/** Set a custom display name for this table definition. */
|
|
708
745
|
as(name) {
|
|
709
746
|
this._config.name = name;
|
|
710
747
|
return this;
|
|
711
748
|
}
|
|
749
|
+
/** Alias for `.as()` — sets the table's display name. */
|
|
750
|
+
name(name) {
|
|
751
|
+
return this.as(name);
|
|
752
|
+
}
|
|
712
753
|
// ──── Count Mode ────
|
|
713
754
|
/**
|
|
714
755
|
* Control how row counting works.
|
|
@@ -747,12 +788,18 @@ export class TableDefinitionBuilder {
|
|
|
747
788
|
}
|
|
748
789
|
// ──── Output ────
|
|
749
790
|
toConfig() {
|
|
750
|
-
|
|
791
|
+
const config = { ...this._config };
|
|
792
|
+
Object.defineProperty(config, TABLECRAFT_EXTENSIONS_KEY, {
|
|
793
|
+
value: this._ext,
|
|
794
|
+
enumerable: false,
|
|
795
|
+
configurable: false,
|
|
796
|
+
});
|
|
797
|
+
return config;
|
|
751
798
|
}
|
|
752
799
|
}
|
|
753
800
|
// ── Main Entry ──
|
|
754
801
|
export function defineTable(table, options) {
|
|
755
|
-
if (options &&
|
|
802
|
+
if (options && "columns" in options && Array.isArray(options.columns)) {
|
|
756
803
|
return new TableDefinitionBuilder(table, options);
|
|
757
804
|
}
|
|
758
805
|
const config = introspectTable(table);
|
|
@@ -780,7 +827,10 @@ function applyQuickOptions(config, options) {
|
|
|
780
827
|
}
|
|
781
828
|
}
|
|
782
829
|
if (options.sort) {
|
|
783
|
-
const specs = options.sort
|
|
830
|
+
const specs = options.sort
|
|
831
|
+
.split(",")
|
|
832
|
+
.map((s) => s.trim())
|
|
833
|
+
.filter(Boolean);
|
|
784
834
|
config.defaultSort = specs.map(parseSortSpec);
|
|
785
835
|
}
|
|
786
836
|
if (options.pageSize !== undefined) {
|
|
@@ -805,12 +855,12 @@ function applyQuickOptions(config, options) {
|
|
|
805
855
|
}
|
|
806
856
|
}
|
|
807
857
|
function parseSortSpec(spec) {
|
|
808
|
-
if (spec.startsWith(
|
|
809
|
-
return { field:
|
|
858
|
+
if (spec.startsWith("-")) {
|
|
859
|
+
return { field: spec.slice(1), order: "desc" };
|
|
810
860
|
}
|
|
811
|
-
if (spec.startsWith(
|
|
812
|
-
return { field:
|
|
861
|
+
if (spec.startsWith("+")) {
|
|
862
|
+
return { field: spec.slice(1), order: "asc" };
|
|
813
863
|
}
|
|
814
|
-
return { field:
|
|
864
|
+
return { field: spec, order: "asc" };
|
|
815
865
|
}
|
|
816
866
|
//# sourceMappingURL=define.js.map
|
package/dist/define.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,GAAG,EACH,YAAY,EACZ,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EACxB,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAChC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EACtC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EACrC,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG;IACxB,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU;IAChC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS;IACtC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG;CACrC,CAAC;AAgBF,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AA4C5B,SAAS,eAAe;IACtB,OAAO;QACL,mBAAmB,EAAE,IAAI,GAAG,EAAE;QAC9B,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,EAAE;QACjB,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,EAAE;QACf,IAAI,EAAE,IAAI,GAAG,EAAE;QACf,iBAAiB,EAAE,IAAI,GAAG,EAAE;KAC7B,CAAC;AACJ,CAAC;AAED,gBAAgB;AAEhB,MAAM,OAAO,sBAAsB;IACjC,OAAO,CAAc;IACrB,MAAM,CAAI;IACV,IAAI,CAAuB;IAE3B,YAAY,KAAQ,EAAE,MAAmB;QACvC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,qCAAqC;IAErC,sCAAsC;IACtC,MAAM,CAAC,MAAuB,EAAE,GAAiB;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAG,GAAW,CAAC,MAAM,GAAG,GAAG,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2BAA2B;IAC3B,KAAK,CAAC,MAAuB,EAAE,SAAsC;QACnE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAG,GAAW,CAAC,KAAK,GAAG,SAAS,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4BAA4B;IAC5B,KAAK,CAAC,MAAuB,EAAE,CAAS,EAAE,OAAwC;QAChF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG,EAAE,CAAC;YACP,GAAW,CAAC,KAAK,GAAG,CAAC,CAAC;YACvB,IAAI,OAAO,EAAE,GAAG;gBAAG,GAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;YACtD,IAAI,OAAO,EAAE,GAAG;gBAAG,GAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB;IAEzB;;;;;;;;;OASG;IACH,OAAO,CACL,MAAuB,EACvB,IAA2E;QAE3E,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAG,GAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB;IAEzB;;;;OAIG;IACH,WAAW,CACT,MAAuB,EACvB,OAAqB;QAErB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAG,GAAW,CAAC,WAAW,GAAG,OAAO,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAyC;IAEzC;;;;;;OAMG;IACH,SAAS,CAAC,MAAuB,EAAE,KAAe;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAG,GAAW,CAAC,SAAS,GAAG,KAAK,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAA8B;IAE9B,IAAI,CAAC,GAAG,OAA0B;QAChC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC9D,IAAI,GAAG;gBAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,GAAG,OAA0B;QAChC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC9D,IAAI,GAAG;gBAAE,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,GAAG,OAA0B;QAChC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAmB,CAAC,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;QACd,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,mBAAmB;IAEnB,KAAK,CAAC,MAAuB,EAAE,GAAW;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAE,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,GAA6C;QAClD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,CAAC,IAAuB,EAAE,GAAa,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;IAEnB,MAAM,CAAC,GAAG,OAA0B;QAClC,0EAA0E;QAC1E,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,OAA8B,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS;QACP,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;aAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;aAC/C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAsB;IAEtB,MAAM,CAAC,GAAG,OAA0B;QAClC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAmB,CAAC,CAAC;QAC/C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,KAAsB,EAAE,QAAkB,EAAE,KAAc;QACrE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;QACrD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qCAAqC;IAErC;;;;;;;OAOG;IACH,OAAO,CAAC,GAAG,UAA6D;QACtE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;QAC/D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC;YAC7B,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,QAAQ,EAAE,CAAC,CAAC,EAAE;gBACd,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC;SACJ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;OAUG;IACH,UAAU,CAAC,IAAkB,EAAE,UAA8B;QAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;QAC/D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB;IAEpB,IAAI,CAAC,GAAG,KAAe;QACrB,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,GAAG,OAA0B;QACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAmB,CAAC,CAAC;QAC7C,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACvC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM;QACJ,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IAEvB,QAAQ,CAAC,IAAY,EAAE,OAA0B;QAC/C,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG;YACxB,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU;YAC1B,eAAe,EAAE,IAAI;YACrB,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,IAAI,GAAG;YACxE,OAAO,EAAE,IAAI;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;QACV,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE,eAAe,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAA0C;IAE1C,IAAI,CACF,KAAY,EACZ,OAKC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAEjD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACnC,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,IAAI,UAAU,CAAC;QAEzC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;YAChB,IAAI,OAAO,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;gBACnC,0DAA0D;gBAC1D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3D,QAAQ,GAAG,GAAG,QAAQ,IAAI,OAAO,CAAC,EAAE,MAAM,UAAU,KAAK,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iDAAiD;gBACjD,8CAA8C;gBAC9C,QAAQ,GAAG,WAAW,GAAG,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,gBAAgB;YAChB,QAAQ,GAAG,GAAG,QAAQ,IAAI,UAAU,QAAQ,UAAU,KAAK,CAAC;QAC9D,CAAC;QAED,MAAM,UAAU,GAAe;YAC7B,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,MAAM;YAC7B,EAAE,EAAE,QAAQ;YACZ,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/C,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACtC,IAAI;oBACJ,IAAI,EAAE,QAAiB;oBACvB,MAAM,EAAE,KAAK;oBACb,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;aACJ,CAAC;SACH,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6BAA6B;IAE7B,QAAQ,CAAC,IAAY,EAAE,UAAe,EAAE,OAA6E;QACnH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACxB,IAAI;YACJ,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,QAAQ;YAC/B,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI;YAC7B,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI;YACnC,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+BAA+B;IAE/B,KAAK,CACH,SAMoD;QAEpD,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB;YAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,GAAG,EAAE,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAClC,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,QAAQ,EAAE,SAAS,CAAC,EAAE;YACtB,KAAK,EAAE,SAAS,CAAC,KAAK;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IAEvB,WAAW,CAAC,MAAuB,EAAE,GAAG,UAAoB;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAE,GAAG,CAAC,WAAW,GAAG,UAAU,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,MAAuB,EAAE,GAAG,UAAoB;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAChE,IAAI,GAAG;YAAE,GAAG,CAAC,WAAW,GAAG,UAAU,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,MAAuB,EAAE,EAA+B;QAChE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAgB,EAAE,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAA8B;IAE9B,OAAO,CAAC,GAAG,MAAyB;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,MAAkB,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAa,EAAE,QAAkB,EAAE,KAAc;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC;QACnE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB;IAEzB,SAAS,CACP,KAAa,EACb,IAA6C,EAC7C,KAAsB;QAEtB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;QAC/D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAe,EAAE,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IAExC,OAAO,CACL,KAAY,EACZ,OASC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;QAErD,MAAM,aAAa,GAAkB;YACnC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;YAClC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,QAAQ,EAAE,CAAC,CAAC,EAAE;gBACd,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC;SAC7C,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oCAAoC;IAEpC,SAAS,CAAC,OAOT;QACC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG;YACvB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;YAChC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,OAAO;YACzC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC1B,CAAC,CAAC;oBACE,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK;oBAC9B,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE;oBAC9B,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK;iBAC/B;gBACH,CAAC,CAAC,SAAS;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wCAAwC;IAExC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,UAAU,CACR,MAAc,EACd,IAcC;QAED,6BAA6B;QAC7B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAE9D,2BAA2B;QAC3B,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,sEAAsE;YACtE,qDAAqD;YACrD,GAAG,GAAG;gBACJ,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,QAAQ;gBAC3B,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QAED,8BAA8B;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAClD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACrD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9D,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;YAAE,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACpE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACxD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAG,GAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACjE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAG,GAAW,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9D,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;YAAG,GAAW,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC9D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAG,GAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACvE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAG,GAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACvE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAG,GAAW,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACpE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAG,GAAW,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAChF,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;YAAG,GAAW,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAE1E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iDAAiD;IACzC,eAAe,CAAC,KAAmB,EAAE,IAAY;QACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACpE,IAAI,GAAG;oBAAE,OAAO,GAAG,CAAC;YACtB,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrD,IAAI,KAAK;oBAAE,OAAO,KAAK,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mCAAmC;IAEnC;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CACP,KAAa,EACb,OAAY,EACZ,OAWC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzC,8CAA8C;QAC9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YACxB,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,QAAQ;YAC/B,KAAK,EAAE,OAAO,EAAE,KAAK;YACrB,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK;YAChC,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,IAAI;YACnC,UAAU,EAAE,OAAO,EAAE,UAAU,IAAI,KAAK;YACxC,QAAQ,EAAE,IAAI;YACd,GAAG,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;YAClD,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/C,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/C,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YACrD,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;SACrD,CAAC,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,OAAY;QACnB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,OAAY;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CAAC,OAAY;QACrB,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC7E,OAAO,CAAC,IAAI,CACV,oGAAoG;gBACpG,eAAe,OAAO,EAAE,CACzB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,GAAG,CAAC,IAAY,EAAE,OAAY;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IAEvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+DG;IACH,QAAQ,CACN,KAAa,EACb,KAAY,EACZ,IAAkC,EAClC,MAA2C;QAE3C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,EAAE,CAAC;QAE3D,IAAI,KAAqD,CAAC;QAC1D,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAC5C,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QACtD,CAAC;aAAM,IAAI,MAAM,YAAY,GAAG,EAAE,CAAC;YACjC,oFAAoF;YACpF,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QACzE,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,4DAA4D;YAC5D,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAChF,CAAC;QAED,uDAAuD;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAC9E,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QAED,wEAAwE;QACxE,0EAA0E;QAC1E,oDAAoD;QACpD,EAAE;QACF,wEAAwE;QACxE,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;QACrE,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;YACxF,WAAW,CAAC,QAAQ,GAAG,IAAI,KAAK,OAAO,CAAC;YACxC,WAAW,CAAC,UAAU,GAAG,KAAK,CAAC;YAC/B,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;gBAC1E,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,IAAI,KAAK,OAAO;gBAC1B,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8BAA8B;IAE9B,UAAU,CAAC,KAAc;QACvB,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG;YACxB,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,WAAW;YAC7D,OAAO,EAAE,IAAI;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAc;QACnB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG;YACpB,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,UAAU;YACxD,OAAO,EAAE,IAAI;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU,CAAC,GAAG,OAA2B;QACvC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG;YACpB,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC;YACvD,OAAO,EAAE,IAAI;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,OAAqD;QAC1D,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0BAA0B;IAE1B,EAAE,CAAC,IAAY;QACb,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IAEvB;;;;;OAKG;IACH,SAAS,CAAC,IAAe;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IAErB,iCAAiC;IACjC,QAAQ;QACL,IAAI,CAAC,OAAe,CAAC,SAAS,GAAG,IAAI,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB;IAElB,8CAA8C;IAC9C,WAAW,CAAC,EAAsC;QAChD,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IAC7C,UAAU,CAAC,EAAuE;QAChF,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2BAA2B;IAC3B,OAAO,CAAC,EAAoD;QAC1D,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;IAEnB,QAAQ;QACN,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACF;AAED,mBAAmB;AAEnB,MAAM,UAAU,WAAW,CACzB,KAAQ,EACR,OAAuC;IAEvC,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,OAAsB,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAEtC,IAAI,OAAO,EAAE,CAAC;QACZ,iBAAiB,CAAC,MAAM,EAAE,OAA0B,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,gBAAgB;AAEhB,SAAS,iBAAiB,CACxB,MAAmB,EACnB,OAAwB;IAExB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxD,IAAI,GAAG;gBAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,MAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxE,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAkB,CAAC,CAAC;QACtD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjC,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3E,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,CAAC,UAAU,GAAG;YAClB,GAAG,MAAM,CAAC,UAAU;YACpB,eAAe,EAAE,OAAO,CAAC,QAAQ;YACjC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE,WAAW,IAAI,GAAG;YACzE,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC3D,MAAM,CAAC,UAAU,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACtD,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxD,IAAI,GAAG;gBAAE,GAAG,CAAC,KAAK,GAAG,KAAe,CAAC;QACvC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACzD,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACxD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AAC/C,CAAC"}
|
|
1
|
+
{"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAA4D,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAoBlI,OAAO,
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAA4D,WAAW,EAA6B,MAAM,gBAAgB,CAAC;AAoBlI,OAAO,EACL,sBAAsB,EAIvB,MAAM,UAAU,CAAC;AAOlB,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;AAsDpE,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,GAAG,CAAC;IACR,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CA0c3E;AAID,wBAAgB,aAAa,CAAC,OAAO,EAAE;IACrC,EAAE,EAAE,GAAG,CAAC;IACR,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACtD,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAS9B"}
|
package/dist/engine.js
CHANGED
|
@@ -18,7 +18,7 @@ import { FieldSelector } from './core/fieldSelector';
|
|
|
18
18
|
import { detectDialect, supportsFeature } from './core/dialect';
|
|
19
19
|
import { formatResponse, applyJsTransforms } from './utils/responseFormatter';
|
|
20
20
|
import { exportData } from './utils/export';
|
|
21
|
-
import { drizzleOperators } from './define';
|
|
21
|
+
import { TABLECRAFT_EXTENSIONS_KEY, drizzleOperators, } from './define';
|
|
22
22
|
import { TableCraftError, QueryError, DialectError } from './errors';
|
|
23
23
|
import { applyRoleBasedVisibility } from './core/roleFilter';
|
|
24
24
|
import { buildMetadata } from './core/metadataBuilder';
|
|
@@ -27,20 +27,23 @@ function resolveInput(input) {
|
|
|
27
27
|
const b = input;
|
|
28
28
|
return { config: b.toConfig(), ext: b._ext };
|
|
29
29
|
}
|
|
30
|
+
const plainConfig = input;
|
|
31
|
+
const embeddedExt = plainConfig[TABLECRAFT_EXTENSIONS_KEY];
|
|
30
32
|
return {
|
|
31
|
-
config:
|
|
32
|
-
ext:
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
33
|
+
config: plainConfig,
|
|
34
|
+
ext: embeddedExt ??
|
|
35
|
+
{
|
|
36
|
+
computedExpressions: new Map(),
|
|
37
|
+
transforms: new Map(),
|
|
38
|
+
rawSelects: new Map(),
|
|
39
|
+
rawWheres: [],
|
|
40
|
+
dynamicWheres: [],
|
|
41
|
+
rawJoins: [],
|
|
42
|
+
rawOrderBys: [],
|
|
43
|
+
ctes: new Map(),
|
|
44
|
+
sqlJoinConditions: new Map(),
|
|
45
|
+
countMode: undefined,
|
|
46
|
+
},
|
|
44
47
|
};
|
|
45
48
|
}
|
|
46
49
|
function normalizeSchema(schema) {
|
package/dist/engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,GAAG,EACH,eAAe,EACf,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,KAAK,IAAI,YAAY,EACrB,YAAY,GACb,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAW,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAA6C,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAMvD,SAAS,YAAY,CAAC,KAAkB;IAItC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;QAChF,MAAM,CAAC,GAAG,KAAoC,CAAC;QAC/C,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAA8B,EAAE,CAAC;IACzE,CAAC;IACD,OAAO;QACL,MAAM,EAAE,KAAoB;QAC5B,GAAG,EAAE;YACH,mBAAmB,EAAE,IAAI,GAAG,EAAE;YAC9B,UAAU,EAAE,IAAI,GAAG,EAAE;YACrB,UAAU,EAAE,IAAI,GAAG,EAAE;YACrB,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,IAAI,EAAE,IAAI,GAAG,EAAE;YACf,iBAAiB,EAAE,IAAI,GAAG,EAAE;YAC5B,SAAS,EAAE,SAAS;SACrB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAA+B;IACtD,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC;gBACH,uEAAuE;gBACvE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAc,CAAC,CAAC;gBAC1C,IAAI,IAAI;oBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAWD,MAAM,UAAU,iBAAiB,CAAC,OAA4B;IAC5D,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACvC,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAErD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,cAAc,CAAC,MAAM,CAAC,CAAC;QACvB,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,0BAA0B;IAC1B,MAAM,OAAO,GAAY,aAAa,CAAC,EAAE,CAAC,CAAC;IAE3C,0BAA0B;IAC1B,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAClD,MAAM,gBAAgB,GAAG,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAE1C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAU,CAAC;IAC/C,MAAM,SAAS,GAAc,GAAG,CAAC,SAAS,IAAI,OAAO,CAAC;IAEtD,sBAAsB;IAEtB,KAAK,UAAU,oBAAoB,CACjC,MAAoB,EACpB,OAAsB;QAEtB,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAEtF,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;YACpC,IAAI,SAAS;gBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,2BAA2B;QAC3B,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YAExC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAChD,IAAI,WAAW,GAAG,MAAM,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe,CAAC;YAErE,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;gBAClE,MAAM,WAAW,GAAG,MAAM,EAAE,KAAK,IAAI,WAAW,CAAC;gBACjD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;gBAElC,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;wBAC1B,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;wBACjD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;4BAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC;oBACD,IAAI,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;wBACxB,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;wBAC7C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;4BAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;wBACnC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACnF,IAAI,MAAM,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAChF,IAAI,MAAM,CAAC,YAAY,EAAE,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;QACtG,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjD,KAAK,MAAM,SAAS,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;YACxF,IAAI,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAY,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,sBAAsB;IAEtB,KAAK,UAAU,QAAQ,CAAC,KAAsB;QAC5C,IAAI,SAAS,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;QAEtC,IAAI,SAAS,KAAK,WAAW,IAAI,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC;YAC5E,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAC7B,GAAG,CAAA,sEAAsE,MAAM,CAAC,IAAI,EAAE,CACvF,CAAC;YACF,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;YACnC,OAAO,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,cAAc;QACd,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7D,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAI,KAAK;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC;QACvB,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,uBAAuB;IAEvB,KAAK,UAAU,KAAK,CAClB,SAAuB,EAAE,EACzB,UAAyB,EAAE;QAE3B,oBAAoB;QACpB,IAAI,cAAc,GAAG,MAAM,CAAC;QAC5B,IAAI,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;YAC3B,cAAc,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC;YACH,8BAA8B;YAC9B,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAElE,iBAAiB;YACjB,aAAa,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;YAE/C,kBAAkB;YAClB,IAAI,SAAS,GAAwB,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YAC1F,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,mBAAmB;gBAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC3E,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU;gBAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAClE,MAAM,mBAAmB,GAAG,eAAe,CAAC,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACtF,IAAI,mBAAmB;gBAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAEvE,mCAAmC;YACnC,SAAS,GAAG,aAAa,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YAEjG,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAElE,iDAAiD;YACjD,MAAM,SAAS,GAAG,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC;YAE1C,IAAI,IAA+B,CAAC;YACpC,IAAI,KAAoB,CAAC;YACzB,IAAI,UAAqC,CAAC;YAE1C,IAAI,SAAS,EAAE,CAAC;gBACd,gCAAgC;gBAChC,iFAAiF;gBACjF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChF,IAAI,mBAAmB,EAAE,CAAC;oBACxB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;wBAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACrF,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,WAAW,IAAI,GAAG,CAAC;gBACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,eAAe,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;gBACxG,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC;gBAE7G,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;gBAEjH,IAAI,WAAW,GAAG,KAAK,CAAC;gBACxB,IAAI,YAAY,CAAC,cAAc,EAAE,CAAC;oBAChC,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC;gBAC9F,CAAC;gBAED,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ;oBAC7B,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;oBAC9C,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAEzC,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC9D,IAAI,WAAW;oBAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC1C,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM;oBAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;gBACxE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAEhC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC;gBACxB,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC7E,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;gBACvB,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;gBACxC,KAAK,GAAG,IAAI,CAAC,CAAC,uCAAuC;YAEvD,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,iFAAiF;gBACjF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;gBAChF,IAAI,mBAAmB,EAAE,CAAC;oBACxB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC;wBAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACrF,CAAC;gBACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;gBACnF,MAAM,UAAU,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAE3G,IAAI,SAAS,GAAG,cAAc,CAAC,QAAQ;oBACrC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;oBAC9C,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAEzC,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC9E,IAAI,KAAK;oBAAE,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAE9C,MAAM,UAAU,GAAG,CAAC,GAAG,OAAO,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;gBACpD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC;gBACxE,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAExE,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACpD,SAAS;oBACT,QAAQ,CAAC,KAAK,CAAC;iBAChB,CAAC,CAAC;gBAEH,IAAI,GAAG,WAAW,CAAC;gBACnB,KAAK,GAAG,YAAY,CAAC;YACvB,CAAC;YAED,eAAe;YACf,IAAI,YAAgD,CAAC;YACrD,MAAM,SAAS,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC/D,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpD,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC5E,IAAI,KAAK;oBAAE,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC5C,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC;gBACjC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnB,YAAY,GAAG,EAAE,CAAC;oBAClB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACtD,IAAI,GAAG,KAAK,aAAa;4BAAE,SAAS;wBACpC,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACvC,CAAC;oBACD,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC;wBAAE,YAAY,GAAG,SAAS,CAAC;gBACvE,CAAC;YACH,CAAC;YAED,kBAAkB;YAClB,MAAM,UAAU,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC3G,MAAM,IAAI,GAAG;gBACX,KAAK;gBACL,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI;gBACrC,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,UAAU,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC1E,GAAG,CAAC,SAAS,IAAI,EAAE,UAAU,EAAE,CAAC;gBAChC,SAAS;aACV,CAAC;YAEF,IAAI,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,IAAW,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAErE,oCAAoC;YACpC,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;YACvF,CAAC;YAED,0BAA0B;YAC1B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACpC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;oBACrB,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;wBACzC,IAAI,KAAK,IAAI,CAAC;4BAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1C,CAAC;oBACD,OAAO,CAAC,CAAC;gBACX,CAAC,CAAC,CAAC;YACL,CAAC;YAED,mBAAmB;YACnB,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACvE,CAAC;YAED,mBAAmB;YACnB,IAAI,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YACjF,CAAC;YAED,OAAO,MAAM,CAAC;QAEhB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,gBAAgB;YAChB,IAAI,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBACjD,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;gBAC5E,MAAM,WAAW,CAAC;YACpB,CAAC;YACD,IAAI,KAAK,YAAY,eAAe;gBAAE,MAAM,KAAK,CAAC;YAClD,MAAM,IAAI,UAAU,CAClB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,EACjE,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sBAAsB;IAEtB,KAAK,UAAU,YAAY,CACzB,SAAuB,EAAE,EACzB,UAAyB,EAAE;QAE3B,8BAA8B;QAC9B,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAElE,MAAM,aAAa,GAAG,cAAc,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACzE,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,UAAU,CAAC,6BAA6B,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC;QAE/F,MAAM,cAAc,GAAG,cAAc,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,EAAE,MAAM;YAAE,MAAM,IAAI,UAAU,CAAC,gCAAgC,eAAe,CAAC,IAAI,GAAG,CAAC,CAAC;QAE3G,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAE3D,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvE,IAAI,KAAK;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,CAAC;QACjC,IAAI,MAAM;YAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAChF,MAAM,0BAA0B,GAAG,eAAe,CAAC,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC7F,IAAI,0BAA0B,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC;gBAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACpF,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;QAElD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC;QAErB,MAAM,YAAY,GAA2B,EAAE,CAAC;QAChD,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;YACjC,KAAK,MAAM,GAAG,IAAI,eAAe,CAAC,YAAY,EAAE,CAAC;gBAC/C,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CACnC,CAAC,GAAW,EAAE,GAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAClE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,CAAC;IAC9D,CAAC;IAED,wBAAwB;IAExB,KAAK,UAAU,cAAc;IAC3B,mEAAmE;IACnE,6DAA6D;IAC7D,UAAwB,EAAE;IAC1B,6DAA6D;IAC7D,WAA0B,EAAE;QAE5B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAExD,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC5B,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;gBACrB,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACzC,IAAI,KAAK,IAAI,CAAC;wBAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC1C,CAAC;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE;SAC1G,CAAC;IACJ,CAAC;IAED,cAAc;IAEd,KAAK,UAAU,SAAS,CACtB,SAAuB,EAAE,EACzB,UAAyB,EAAE;QAE3B,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,eAAe;IAEf,KAAK,UAAU,UAAU,CACvB,SAAuB,EAAE,EACzB,UAAyB,EAAE;QAE3B,8BAA8B;QAC9B,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAElE,IAAI,SAAS,GAAwB,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC1F,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,mBAAmB;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3E,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YAC1B,SAAS,GAAG,aAAa,CAAC,mBAAmB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;QACvG,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAChF,MAAM,yBAAyB,GAAG,eAAe,CAAC,eAAe,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC5F,IAAI,yBAAyB,EAAE,CAAC;YAC9B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC;gBAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAEpF,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACvE,IAAI,KAAK;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;QAClD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAEpB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC;QACrB,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAC7D,OAAO,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM,EAAE,eAAe,CAAC,CAAC;IAC3E,CAAC;IAED,wBAAwB;IAExB,KAAK,UAAU,OAAO,CACpB,SAAuB,EAAE,EACzB,UAAyB,EAAE;QAE3B,IAAI,SAAS,GAAwB,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACjF,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,mBAAmB;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAE3E,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAChF,MAAM,0BAA0B,GAAG,eAAe,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpF,IAAI,0BAA0B,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,0BAA0B,CAAC;gBAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE3F,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC9D,IAAI,KAAK;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;QAClD,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAExD,6CAA6C;QAC7C,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;QAExB,OAAO;YACL,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK;QACL,YAAY;QACZ,cAAc;QACd,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,UAAU;QACtB,OAAO;QACP,WAAW,EAAE,CAAC,OAAuB,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC;QACxE,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED,6BAA6B;AAE7B,MAAM,UAAU,aAAa,CAAC,OAI7B;IACC,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAgC,EAAE,CAAC;IAChD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|