@subsquid/openreader 2.1.0 → 3.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.
Files changed (96) hide show
  1. package/lib/ir/args.d.ts +1 -1
  2. package/lib/ir/args.d.ts.map +1 -1
  3. package/lib/ir/connection.d.ts +3 -4
  4. package/lib/ir/connection.d.ts.map +1 -1
  5. package/lib/ir/connection.js.map +1 -1
  6. package/lib/ir/fields.d.ts +6 -2
  7. package/lib/ir/fields.d.ts.map +1 -1
  8. package/lib/ir/fields.js +15 -0
  9. package/lib/ir/fields.js.map +1 -1
  10. package/lib/limit.size.d.ts +4 -4
  11. package/lib/limit.size.d.ts.map +1 -1
  12. package/lib/limit.size.js +51 -20
  13. package/lib/limit.size.js.map +1 -1
  14. package/lib/main.js +0 -9
  15. package/lib/main.js.map +1 -1
  16. package/lib/model.d.ts +3 -2
  17. package/lib/model.d.ts.map +1 -1
  18. package/lib/model.schema.d.ts +2 -2
  19. package/lib/model.schema.d.ts.map +1 -1
  20. package/lib/model.schema.js +8 -3
  21. package/lib/model.schema.js.map +1 -1
  22. package/lib/model.tools.d.ts +6 -1
  23. package/lib/model.tools.d.ts.map +1 -1
  24. package/lib/model.tools.js +111 -8
  25. package/lib/model.tools.js.map +1 -1
  26. package/lib/opencrud/orderBy.d.ts +2 -2
  27. package/lib/opencrud/orderBy.d.ts.map +1 -1
  28. package/lib/opencrud/orderBy.js +13 -17
  29. package/lib/opencrud/orderBy.js.map +1 -1
  30. package/lib/opencrud/schema.d.ts +4 -4
  31. package/lib/opencrud/schema.d.ts.map +1 -1
  32. package/lib/opencrud/schema.js +56 -62
  33. package/lib/opencrud/schema.js.map +1 -1
  34. package/lib/opencrud/tree.d.ts +9 -7
  35. package/lib/opencrud/tree.d.ts.map +1 -1
  36. package/lib/opencrud/tree.js +32 -14
  37. package/lib/opencrud/tree.js.map +1 -1
  38. package/lib/scalars/BigDecimal.d.ts +3 -0
  39. package/lib/scalars/BigDecimal.d.ts.map +1 -0
  40. package/lib/scalars/BigDecimal.js +38 -0
  41. package/lib/scalars/BigDecimal.js.map +1 -0
  42. package/lib/scalars/index.d.ts +1 -0
  43. package/lib/scalars/index.d.ts.map +1 -1
  44. package/lib/scalars/index.js +2 -0
  45. package/lib/scalars/index.js.map +1 -1
  46. package/lib/server.d.ts +4 -2
  47. package/lib/server.d.ts.map +1 -1
  48. package/lib/server.js +4 -2
  49. package/lib/server.js.map +1 -1
  50. package/lib/sql/cursor.d.ts.map +1 -1
  51. package/lib/sql/cursor.js +4 -2
  52. package/lib/sql/cursor.js.map +1 -1
  53. package/lib/sql/mapping.d.ts +3 -1
  54. package/lib/sql/mapping.d.ts.map +1 -1
  55. package/lib/sql/mapping.js +16 -1
  56. package/lib/sql/mapping.js.map +1 -1
  57. package/lib/sql/printer.d.ts +29 -11
  58. package/lib/sql/printer.d.ts.map +1 -1
  59. package/lib/sql/printer.js +112 -11
  60. package/lib/sql/printer.js.map +1 -1
  61. package/lib/sql/query.d.ts +11 -11
  62. package/lib/sql/query.d.ts.map +1 -1
  63. package/lib/sql/query.js +41 -19
  64. package/lib/sql/query.js.map +1 -1
  65. package/lib/test/queryable.test.d.ts +2 -0
  66. package/lib/test/queryable.test.d.ts.map +1 -0
  67. package/lib/test/queryable.test.js +255 -0
  68. package/lib/test/queryable.test.js.map +1 -0
  69. package/lib/test/scalars.test.js +75 -1
  70. package/lib/test/scalars.test.js.map +1 -1
  71. package/lib/util/big-decimal.d.ts +5 -0
  72. package/lib/util/big-decimal.d.ts.map +1 -0
  73. package/lib/util/big-decimal.js +15 -0
  74. package/lib/util/big-decimal.js.map +1 -0
  75. package/package.json +10 -2
  76. package/src/ir/args.ts +1 -1
  77. package/src/ir/connection.ts +3 -4
  78. package/src/ir/fields.ts +22 -2
  79. package/src/limit.size.ts +55 -30
  80. package/src/main.ts +0 -11
  81. package/src/model.schema.ts +16 -9
  82. package/src/model.tools.ts +121 -8
  83. package/src/model.ts +3 -2
  84. package/src/opencrud/orderBy.ts +13 -17
  85. package/src/opencrud/schema.ts +81 -84
  86. package/src/opencrud/tree.ts +55 -26
  87. package/src/scalars/BigDecimal.ts +37 -0
  88. package/src/scalars/index.ts +2 -0
  89. package/src/server.ts +10 -7
  90. package/src/sql/cursor.ts +4 -2
  91. package/src/sql/mapping.ts +18 -1
  92. package/src/sql/printer.ts +142 -22
  93. package/src/sql/query.ts +50 -30
  94. package/src/test/queryable.test.ts +258 -0
  95. package/src/test/scalars.test.ts +78 -1
  96. package/src/util/big-decimal.ts +15 -0
@@ -1,12 +1,13 @@
1
- import { Dialect } from "../dialect";
2
- import { EntityListArguments } from "../ir/args";
3
- import { FieldRequest } from "../ir/fields";
4
- import { Model } from "../model";
5
- import { AliasSet } from "./util";
6
- export declare class EntityListQueryPrinter {
1
+ import { Dialect } from '../dialect';
2
+ import { OrderBy, SortOrder, SqlArguments } from '../ir/args';
3
+ import { FieldRequest, FieldsByEntity } from '../ir/fields';
4
+ import { Model } from '../model';
5
+ import { Cursor } from './cursor';
6
+ import { AliasSet } from './util';
7
+ export declare class EntitySqlPrinter {
7
8
  private model;
8
9
  private dialect;
9
- private entityName;
10
+ readonly entityName: string;
10
11
  private params;
11
12
  private args;
12
13
  private aliases;
@@ -15,23 +16,40 @@ export declare class EntityListQueryPrinter {
15
16
  private columns;
16
17
  private where;
17
18
  private orderBy;
18
- constructor(model: Model, dialect: Dialect, entityName: string, params: unknown[], args?: EntityListArguments, fields?: FieldRequest[], aliases?: AliasSet);
19
+ constructor(model: Model, dialect: Dialect, entityName: string, params: unknown[], args?: SqlArguments, fields?: FieldRequest[], aliases?: AliasSet);
19
20
  private sub;
20
21
  private populateColumns;
21
22
  private populateWhere;
22
23
  private scalarBinaryCondition;
23
24
  private refBinaryCondition;
24
25
  private printWhere;
25
- private populateOrderBy;
26
+ traverseOrderBy(orderBy: OrderBy, cb: (field: string, cursor: Cursor, order: SortOrder) => void): void;
27
+ private visitOrderBy;
26
28
  private param;
27
29
  private ident;
28
- addWhereDerivedFrom(field: string, parentIdExp: string): this;
30
+ private addWhereDerivedFrom;
31
+ hasColumns(): boolean;
29
32
  printColumnList(options?: {
30
33
  withAliases?: boolean;
31
34
  }): string;
32
35
  printColumnListAsJsonArray(): string;
33
36
  printFrom(): string;
34
37
  print(): string;
35
- printAsJsonRows(): string;
38
+ printAsCount(): string;
39
+ private printAsJsonRows;
40
+ }
41
+ export declare class QueryableSqlPrinter {
42
+ private model;
43
+ private dialect;
44
+ private queryableName;
45
+ private params;
46
+ private args;
47
+ private printers;
48
+ private orders;
49
+ private orderColumns;
50
+ constructor(model: Model, dialect: Dialect, queryableName: string, params: unknown[], args?: SqlArguments, fields?: FieldsByEntity);
51
+ print(): string;
52
+ printAsCount(): string;
53
+ private printArgs;
36
54
  }
37
55
  //# sourceMappingURL=printer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../src/sql/printer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAClC,OAAO,EAAC,mBAAmB,EAAiB,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAC,YAAY,EAAC,MAAM,cAAc,CAAA;AACzC,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAA;AAE9B,OAAO,EAAC,QAAQ,EAAoD,MAAM,QAAQ,CAAA;AAGlF,qBAAa,sBAAsB;IAS3B,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,IAAI;IAZhB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAe;gBAGlB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,OAAO,EAAE,EACjB,IAAI,GAAE,mBAAwB,EACtC,MAAM,CAAC,EAAE,YAAY,EAAE,EACvB,OAAO,CAAC,EAAE,QAAQ;IAwBtB,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,aAAa;IA2JrB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;IAIb,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAK7D,eAAe,CAAC,OAAO,CAAC,EAAE;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAC,GAAG,MAAM;IAS1D,0BAA0B,IAAI,MAAM;IAIpC,SAAS,IAAI,MAAM;IAoBnB,KAAK,IAAI,MAAM;IAIf,eAAe,IAAI,MAAM;CAG5B"}
1
+ {"version":3,"file":"printer.d.ts","sourceRoot":"","sources":["../../src/sql/printer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AAClC,OAAO,EAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAQ,MAAM,YAAY,CAAA;AAClE,OAAO,EAAC,YAAY,EAAE,cAAc,EAAC,MAAM,cAAc,CAAA;AACzD,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAA;AAE9B,OAAO,EAAC,MAAM,EAAe,MAAM,UAAU,CAAA;AAC7C,OAAO,EAAC,QAAQ,EAAoD,MAAM,QAAQ,CAAA;AAGlF,qBAAa,gBAAgB;IASrB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;aACC,UAAU,EAAE,MAAM;IAClC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,IAAI;IAZhB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAe;gBAGlB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EACR,UAAU,EAAE,MAAM,EAC1B,MAAM,EAAE,OAAO,EAAE,EACjB,IAAI,GAAE,YAAiB,EAC/B,MAAM,CAAC,EAAE,YAAY,EAAE,EACvB,OAAO,CAAC,EAAE,QAAQ;IA0BtB,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,eAAe;IAqCvB,OAAO,CAAC,aAAa;IA6JrB,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,UAAU;IAMlB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,KAAK,IAAI;IAI/F,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,mBAAmB;IAK3B,UAAU,IAAI,OAAO;IAIrB,eAAe,CAAC,OAAO,CAAC,EAAE;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAC,GAAG,MAAM;IAS1D,0BAA0B,IAAI,MAAM;IAIpC,SAAS,IAAI,MAAM;IAoBnB,KAAK,IAAI,MAAM;IAIf,YAAY,IAAI,MAAM;IAQtB,OAAO,CAAC,eAAe;CAG1B;AAGD,qBAAa,mBAAmB;IAMxB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,IAAI;IAThB,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,YAAY,CAAiB;gBAGzB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,OAAO,EAAE,EACjB,IAAI,GAAE,YAAiB,EAC/B,MAAM,CAAC,EAAE,cAAc;IA6B3B,KAAK,IAAI,MAAM;IAqBf,YAAY,IAAI,MAAM;IAkBtB,OAAO,CAAC,SAAS;CAapB"}
@@ -3,12 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EntityListQueryPrinter = void 0;
6
+ exports.QueryableSqlPrinter = exports.EntitySqlPrinter = void 0;
7
7
  const util_internal_1 = require("@subsquid/util-internal");
8
8
  const assert_1 = __importDefault(require("assert"));
9
+ const model_tools_1 = require("../model.tools");
9
10
  const cursor_1 = require("./cursor");
10
11
  const util_1 = require("./util");
11
- class EntityListQueryPrinter {
12
+ class EntitySqlPrinter {
12
13
  constructor(model, dialect, entityName, params, args = {}, fields, aliases) {
13
14
  this.model = model;
14
15
  this.dialect = dialect;
@@ -33,11 +34,13 @@ class EntityListQueryPrinter {
33
34
  this.populateWhere(this.root, args.where, this.where);
34
35
  }
35
36
  if (args.orderBy) {
36
- this.populateOrderBy(this.root, args.orderBy);
37
+ this.traverseOrderBy(args.orderBy, (field, cursor, order) => {
38
+ this.orderBy.push(cursor.native(field) + ' ' + order);
39
+ });
37
40
  }
38
41
  }
39
42
  sub(entityName, args, fields) {
40
- return new EntityListQueryPrinter(this.model, this.dialect, entityName, this.params, args, fields, this.aliases);
43
+ return new EntitySqlPrinter(this.model, this.dialect, entityName, this.params, args, fields, this.aliases);
41
44
  }
42
45
  populateColumns(cursor, fields) {
43
46
  for (let f of fields) {
@@ -116,7 +119,9 @@ class EntityListQueryPrinter {
116
119
  break;
117
120
  }
118
121
  case "isNull": {
119
- let f = cursor.ref(where.field);
122
+ let f = cursor.prop(where.field).type.kind == 'lookup'
123
+ ? cursor.child(where.field).ref('id')
124
+ : cursor.ref(where.field);
120
125
  if (where.yes) {
121
126
  exps.push(`${f} IS NULL`);
122
127
  }
@@ -249,19 +254,27 @@ class EntityListQueryPrinter {
249
254
  this.populateWhere(cursor, where, exps);
250
255
  return (0, util_1.printClause)("AND", exps);
251
256
  }
252
- populateOrderBy(cursor, orderBy) {
257
+ traverseOrderBy(orderBy, cb) {
258
+ this.visitOrderBy(this.root, orderBy, cb);
259
+ }
260
+ visitOrderBy(cursor, orderBy, cb) {
253
261
  for (let field in orderBy) {
254
262
  let spec = orderBy[field];
255
263
  if (typeof spec == "string") {
256
- this.orderBy.push(`${cursor.native(field)} ${spec}`);
264
+ cb(field, cursor, spec);
257
265
  }
258
266
  else {
259
- this.populateOrderBy(cursor.child(field), spec);
267
+ this.visitOrderBy(cursor.child(field), spec, cb);
260
268
  }
261
269
  }
262
270
  }
263
271
  param(value) {
264
- return "$" + this.params.push(value);
272
+ if (value && value.__is_squid_big_decimal) {
273
+ return "$" + this.params.push(value.toString()) + '::numeric';
274
+ }
275
+ else {
276
+ return "$" + this.params.push(value);
277
+ }
265
278
  }
266
279
  ident(name) {
267
280
  return (0, util_1.escapeIdentifier)(this.dialect, name);
@@ -270,9 +283,12 @@ class EntityListQueryPrinter {
270
283
  this.where.push(`${this.root.native(field)} = ${parentIdExp}`);
271
284
  return this;
272
285
  }
286
+ hasColumns() {
287
+ return this.columns.size() > 0;
288
+ }
273
289
  printColumnList(options) {
290
+ (0, assert_1.default)(this.hasColumns());
274
291
  let names = this.columns.names();
275
- (0, assert_1.default)(names.length > 0);
276
292
  if (options?.withAliases) {
277
293
  names = names.map((name, idx) => `${name} AS _c${idx}`);
278
294
  }
@@ -303,9 +319,94 @@ class EntityListQueryPrinter {
303
319
  print() {
304
320
  return `SELECT ${this.printColumnList({ withAliases: true })} ${this.printFrom()}`;
305
321
  }
322
+ printAsCount() {
323
+ if (this.args.offset || this.args.limit) {
324
+ return `SELECT count(*) FROM (SELECT true ${this.printFrom()}) AS rows`;
325
+ }
326
+ else {
327
+ return `SELECT count(*) ${this.printFrom()}`;
328
+ }
329
+ }
306
330
  printAsJsonRows() {
307
331
  return `SELECT ${this.printColumnListAsJsonArray()} AS row ${this.printFrom()}`;
308
332
  }
309
333
  }
310
- exports.EntityListQueryPrinter = EntityListQueryPrinter;
334
+ exports.EntitySqlPrinter = EntitySqlPrinter;
335
+ class QueryableSqlPrinter {
336
+ constructor(model, dialect, queryableName, params, args = {}, fields) {
337
+ this.model = model;
338
+ this.dialect = dialect;
339
+ this.queryableName = queryableName;
340
+ this.params = params;
341
+ this.args = args;
342
+ this.printers = [];
343
+ this.orders = [];
344
+ this.orderColumns = [];
345
+ for (let entityName of (0, model_tools_1.getQueryableEntities)(this.model, this.queryableName)) {
346
+ let entityFields = fields?.[entityName];
347
+ let printer = new EntitySqlPrinter(model, dialect, entityName, this.params, { where: args.where }, entityFields);
348
+ if (this.args.orderBy) {
349
+ let cols = [];
350
+ this.orders.length = 0;
351
+ printer.traverseOrderBy(this.args.orderBy, (field, cursor, order) => {
352
+ let col = field == '_type' ? `'${entityName}'` : cursor.native(field);
353
+ this.orders.push(order);
354
+ cols.push(`${col} AS o${this.orders.length}`);
355
+ });
356
+ this.orderColumns.push(cols);
357
+ }
358
+ this.printers.push(printer);
359
+ }
360
+ }
361
+ print() {
362
+ let from = this.printers.map((printer, idx) => {
363
+ let cols = [];
364
+ cols.push(`'${printer.entityName}' AS e`);
365
+ if (printer.hasColumns()) {
366
+ cols.push(printer.printColumnListAsJsonArray() + ' AS d');
367
+ }
368
+ else {
369
+ cols.push('null AS d');
370
+ }
371
+ cols.push(...this.orderColumns[idx]);
372
+ return `SELECT ${cols.join(', ')} ${printer.printFrom()}`;
373
+ }).join('\nUNION ALL\n');
374
+ let args = this.printArgs();
375
+ if (args) {
376
+ return `SELECT e, d FROM (\n${from}\n) AS rows` + args;
377
+ }
378
+ else {
379
+ return from;
380
+ }
381
+ }
382
+ printAsCount() {
383
+ let union = this.orders.length
384
+ ? this.printers.map((printer, idx) => {
385
+ return `SELECT ${this.orderColumns[idx].join(', ')} ${printer.printFrom()}`;
386
+ })
387
+ : this.printers.map(printer => {
388
+ return `SELECT true ${printer.printFrom()}`;
389
+ });
390
+ let from = union.join('\nUNION ALL\n');
391
+ let args = this.printArgs();
392
+ if (args) {
393
+ from = `SELECT true FROM (\n${from}\n) AS src` + args;
394
+ }
395
+ return `SELECT count(*) FROM (\n${from}\n) AS rows`;
396
+ }
397
+ printArgs() {
398
+ let sql = '';
399
+ if (this.orders.length) {
400
+ sql += '\nORDER BY ' + this.orders.map((o, idx) => `o${idx + 1} ${o}`).join(', ');
401
+ }
402
+ if (this.args.offset) {
403
+ sql += `\nOFFSET ${this.args.offset}`;
404
+ }
405
+ if (this.args.limit) {
406
+ sql += `\nLIMIT ${this.args.limit}`;
407
+ }
408
+ return sql;
409
+ }
410
+ }
411
+ exports.QueryableSqlPrinter = QueryableSqlPrinter;
311
412
  //# sourceMappingURL=printer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"printer.js","sourceRoot":"","sources":["../../src/sql/printer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"printer.js","sourceRoot":"","sources":["../../src/sql/printer.ts"],"names":[],"mappings":";;;;;;AAAA,2DAAsD;AACtD,oDAA2B;AAK3B,gDAAmD;AACnD,qCAA6C;AAC7C,iCAAkF;AAGlF,MAAa,gBAAgB;IAQzB,YACY,KAAY,EACZ,OAAgB,EACR,UAAkB,EAC1B,MAAiB,EACjB,OAAqB,EAAE,EAC/B,MAAuB,EACvB,OAAkB;QANV,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAS;QACR,eAAU,GAAV,UAAU,CAAQ;QAC1B,WAAM,GAAN,MAAM,CAAW;QACjB,SAAI,GAAJ,IAAI,CAAmB;QAT3B,YAAO,GAAG,IAAI,gBAAS,EAAE,CAAA;QACzB,UAAK,GAAa,EAAE,CAAA;QACpB,YAAO,GAAa,EAAE,CAAA;QAW1B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,eAAQ,EAAE,CAAA;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,cAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,qBAAY,CACxB;YACI,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,EACD,IAAI,CAAC,UAAU,CAClB,CAAA;QACD,IAAI,MAAM,EAAE,MAAM,EAAE;YAChB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;SAC1C;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;SACxD;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;gBACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAA;YACzD,CAAC,CAAC,CAAA;SACL;IACL,CAAC;IAEO,GAAG,CAAC,UAAkB,EAAE,IAAmB,EAAE,MAAuB;QACxE,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IAC9G,CAAC;IAEO,eAAe,CAAC,MAAc,EAAE,MAAsB;QAC1D,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;YAClB,QAAO,CAAC,CAAC,IAAI,EAAE;gBACX,KAAK,QAAQ,CAAC;gBACd,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACP,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;oBAClD,MAAK;gBACT,KAAK,QAAQ;oBACT,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,CAAA;oBAC5D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;oBACvD,MAAK;gBACT,KAAK,OAAO,CAAC,CAAC;oBACV,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;oBAC7B,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;oBAChD,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;oBACnC,MAAK;iBACR;gBACD,KAAK,IAAI,CAAC;gBACV,KAAK,QAAQ,CAAC,CAAC;oBACX,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;oBAC7B,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;oBAC1C,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;oBACnC,MAAK;iBACR;gBACD,KAAK,aAAa,CAAC,CAAC;oBAChB,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;oBAC5G,IAAI,GAAG,GAAG,gCAAgC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAA;oBAC3E,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBAC/B,MAAK;iBACR;gBACD;oBACI,MAAM,IAAA,8BAAc,GAAE,CAAA;aAC7B;SACJ;IACL,CAAC;IAEO,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,IAAc;QAC9D,QAAO,KAAK,CAAC,EAAE,EAAE;YACb,KAAK,KAAK;gBACN,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;oBACzB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;iBACzC;gBACD,MAAK;YACT,KAAK,IAAI,CAAC,CAAC;gBACP,IAAI,EAAE,GAAa,EAAE,CAAA;gBACrB,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;oBACzB,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;oBACvC,IAAI,GAAG,EAAE;wBACL,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAA;qBAC3B;iBACJ;gBACD,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACf,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAA,kBAAW,EAAC,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA;iBAC/C;gBACD,MAAK;aACR;YACD,KAAK,KAAK;gBACN,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBAChE,MAAK;YACT,KAAK,IAAI,CAAC,CAAC;gBACP,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;iBACrE;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;iBACrB;gBACD,MAAK;aACR;YACD,KAAK,QAAQ,CAAC,CAAC;gBACX,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;iBACzE;gBACD,MAAK;aACR;YACD,KAAK,QAAQ,CAAC,CAAC;gBACX,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ;oBAClD,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;oBACrC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAC7B,IAAI,KAAK,CAAC,GAAG,EAAE;oBACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;iBAC5B;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;iBAChC;gBACD,MAAK;aACR;YACD,KAAK,IAAI;gBACL,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACpD,MAAK;YACT,KAAK,QAAQ;gBACT,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACrD,MAAK;YACT,KAAK,IAAI;gBACL,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACpD,MAAK;YACT,KAAK,KAAK;gBACN,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACrD,MAAK;YACT,KAAK,IAAI;gBACL,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACpD,MAAK;YACT,KAAK,KAAK;gBACN,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACrD,MAAK;YACT,KAAK,cAAc;gBACf,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACrD,MAAK;YACT,KAAK,YAAY;gBACb,IAAI,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBACpD,MAAK;YACT,KAAK,aAAa;gBACd,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBAClD,MAAK;YACT,KAAK,aAAa;gBACd,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;gBAClD,MAAK;YACT,KAAK,cAAc,CAAC,CAAC;gBACjB,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACjC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACjC,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,GAAG,CAAC,CAAA;gBACnC,MAAK;aACR;YACD,KAAK,YAAY;gBACb,IAAI,IAAI,CAAC,OAAO,IAAI,WAAW,EAAE;oBAC7B,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;oBAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;iBAC/C;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;iBACtF;gBACD,MAAK;YACT,KAAK,gBAAgB;gBACjB,IAAI,IAAI,CAAC,OAAO,IAAI,WAAW,EAAE;oBAC7B,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;oBAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;iBACjE;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;iBAC1F;gBACD,MAAK;YACT,KAAK,UAAU,CAAC,CAAC;gBACb,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;gBAC1C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAC7C,MAAK;aACR;YACD,KAAK,cAAc,CAAC,CAAC;gBACjB,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAA;gBAC1C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;gBAC9C,MAAK;aACR;YACD,KAAK,UAAU;gBACX,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACtF,MAAK;YACT,KAAK,cAAc;gBACf,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACtF,MAAK;YACT,KAAK,qBAAqB;gBACtB,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACpG,MAAK;YACT,KAAK,yBAAyB;gBAC1B,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACpG,MAAK;YACT,KAAK,OAAO,CAAC,CAAC;gBACV,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAA,gBAAM,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,CAAA;gBACtC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBACnH,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC5F,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,wBAAwB,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;gBACzF,MAAK;aACR;YACD,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC,CAAC;gBACT,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAA,gBAAM,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,CAAA;gBACtC,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE;oBAChC,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,KAAK,EAAE,CAAC;iBACX,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;gBAC3D,IAAI,KAAK,CAAC,EAAE,IAAI,MAAM,EAAE;oBACpB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;iBAChD;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,sCAAsC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;iBACnF;gBACD,MAAK;aACR;YACD;gBACI,MAAM,IAAA,8BAAc,EAAE,KAAa,CAAC,EAAE,CAAC,CAAA;SAC9C;IACL,CAAC;IAEO,qBAAqB,CAAC,KAAa,EAAE,MAAc,EAAE,KAAsC,EAAE,IAAc;QAC/G,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAEO,kBAAkB,CAAC,KAAa,EAAE,MAAc,EAAE,KAAsC,EAAE,IAAc;QAC5G,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,CAAA;IACnC,CAAC;IAEO,UAAU,CAAC,MAAc,EAAE,KAAY;QAC3C,IAAI,IAAI,GAAa,EAAE,CAAA;QACvB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACvC,OAAO,IAAA,kBAAW,EAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,eAAe,CAAC,OAAgB,EAAE,EAA6D;QAC3F,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,OAAgB,EAAE,EAA6D;QAChH,KAAK,IAAI,KAAK,IAAI,OAAO,EAAE;YACvB,IAAI,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;YACzB,IAAI,OAAO,IAAI,IAAI,QAAQ,EAAE;gBACzB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;aAC1B;iBAAM;gBACH,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;aACnD;SACJ;IACL,CAAC;IAEO,KAAK,CAAC,KAAU;QACpB,IAAI,KAAK,IAAI,KAAK,CAAC,sBAAsB,EAAE;YACvC,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,WAAW,CAAA;SAChE;aAAM;YACH,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SACvC;IACL,CAAC;IAEO,KAAK,CAAC,IAAY;QACtB,OAAO,IAAA,uBAAgB,EAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC/C,CAAC;IAEO,mBAAmB,CAAC,KAAa,EAAE,WAAmB;QAC1D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,WAAW,EAAE,CAAC,CAAA;QAC9D,OAAO,IAAI,CAAA;IACf,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAClC,CAAC;IAED,eAAe,CAAC,OAAiC;QAC7C,IAAA,gBAAM,EAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACzB,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QAChC,IAAI,OAAO,EAAE,WAAW,EAAE;YACtB,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,SAAS,GAAG,EAAE,CAAC,CAAA;SAC1D;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,CAAC;IAED,0BAA0B;QACtB,OAAO,oBAAoB,IAAI,CAAC,eAAe,EAAE,GAAG,CAAA;IACxD,CAAC;IAED,SAAS;QACL,IAAI,GAAG,GAAG,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAA;QACtF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAClB,GAAG,IAAI,oBAAoB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAA;QACxI,CAAC,CAAC,CAAA;QACF,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,GAAG,IAAI,UAAU,IAAA,kBAAW,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAA;SACpD;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,GAAG,IAAI,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SAChD;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE;YACzB,GAAG,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;SACrC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAClB,GAAG,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;SACvC;QACD,OAAO,GAAG,CAAA;IACd,CAAC;IAED,KAAK;QACD,OAAO,UAAU,IAAI,CAAC,eAAe,CAAC,EAAC,WAAW,EAAE,IAAI,EAAC,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAA;IACpF,CAAC;IAED,YAAY;QACR,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACrC,OAAO,qCAAqC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAA;SAC1E;aAAM;YACH,OAAO,mBAAmB,IAAI,CAAC,SAAS,EAAE,EAAE,CAAA;SAC/C;IACL,CAAC;IAEO,eAAe;QACnB,OAAO,UAAU,IAAI,CAAC,0BAA0B,EAAE,WAAW,IAAI,CAAC,SAAS,EAAE,EAAE,CAAA;IACnF,CAAC;CACJ;AArVD,4CAqVC;AAGD,MAAa,mBAAmB;IAK5B,YACY,KAAY,EACZ,OAAgB,EAChB,aAAqB,EACrB,MAAiB,EACjB,OAAqB,EAAE,EAC/B,MAAuB;QALf,UAAK,GAAL,KAAK,CAAO;QACZ,YAAO,GAAP,OAAO,CAAS;QAChB,kBAAa,GAAb,aAAa,CAAQ;QACrB,WAAM,GAAN,MAAM,CAAW;QACjB,SAAI,GAAJ,IAAI,CAAmB;QAT3B,aAAQ,GAAuB,EAAE,CAAA;QACjC,WAAM,GAAgB,EAAE,CAAA;QACxB,iBAAY,GAAe,EAAE,CAAA;QAUjC,KAAK,IAAI,UAAU,IAAI,IAAA,kCAAoB,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;YACzE,IAAI,YAAY,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,CAAA;YAEvC,IAAI,OAAO,GAAG,IAAI,gBAAgB,CAC9B,KAAK,EACL,OAAO,EACP,UAAU,EACV,IAAI,CAAC,MAAM,EACX,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC,EACnB,YAAY,CACf,CAAA;YAED,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACnB,IAAI,IAAI,GAAa,EAAE,CAAA;gBACvB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;gBACtB,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;oBAChE,IAAI,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBACrE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACvB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;gBACjD,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aAC/B;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SAC9B;IACL,CAAC;IAED,KAAK;QACD,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;YAC1C,IAAI,IAAI,GAAa,EAAE,CAAA;YACvB,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,QAAQ,CAAC,CAAA;YACzC,IAAI,OAAO,CAAC,UAAU,EAAE,EAAE;gBACtB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,GAAG,OAAO,CAAC,CAAA;aAC5D;iBAAM;gBACH,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;aACzB;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;YACpC,OAAO,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,EAAE,CAAA;QAC7D,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAExB,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QAC3B,IAAI,IAAI,EAAE;YACN,OAAO,uBAAuB,IAAI,aAAa,GAAG,IAAI,CAAA;SACzD;aAAM;YACH,OAAO,IAAI,CAAA;SACd;IACL,CAAC;IAED,YAAY;QACR,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;gBACjC,OAAO,UAAU,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,EAAE,CAAA;YAC/E,CAAC,CAAC;YACF,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAC1B,OAAO,eAAe,OAAO,CAAC,SAAS,EAAE,EAAE,CAAA;YAC/C,CAAC,CAAC,CAAA;QAEN,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACtC,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAA;QAC3B,IAAI,IAAI,EAAE;YACN,IAAI,GAAG,uBAAuB,IAAI,YAAY,GAAG,IAAI,CAAA;SACxD;QAED,OAAO,2BAA2B,IAAI,aAAa,CAAA;IACvD,CAAC;IAEO,SAAS;QACb,IAAI,GAAG,GAAG,EAAE,CAAA;QACZ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACpB,GAAG,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SACpF;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAClB,GAAG,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAA;SACxC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACjB,GAAG,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;SACtC;QACD,OAAO,GAAG,CAAA;IACd,CAAC;CACJ;AA5FD,kDA4FC"}
@@ -1,18 +1,18 @@
1
- import type { Dialect } from "../dialect";
2
- import type { EntityListArguments, Where } from "../ir/args";
3
- import { RelayConnectionRequest, RelayConnectionResponse } from "../ir/connection";
4
- import type { FieldRequest } from "../ir/fields";
5
- import type { Model } from "../model";
1
+ import type { Dialect } from '../dialect';
2
+ import type { SqlArguments, Where } from '../ir/args';
3
+ import { RelayConnectionRequest, RelayConnectionResponse } from '../ir/connection';
4
+ import type { AnyFields, FieldRequest } from '../ir/fields';
5
+ import type { Model } from '../model';
6
6
  export interface Query<T> {
7
7
  readonly sql: string;
8
8
  readonly params: unknown[];
9
9
  map(rows: any[][]): T;
10
10
  }
11
- export declare class EntityListQuery implements Query<any[]> {
11
+ export declare class ListQuery implements Query<any[]> {
12
12
  private fields;
13
13
  readonly sql: string;
14
14
  readonly params: unknown[];
15
- constructor(model: Model, dialect: Dialect, entityName: string, fields: FieldRequest[], args: EntityListArguments);
15
+ constructor(model: Model, dialect: Dialect, typeName: string, fields: AnyFields, args: SqlArguments);
16
16
  map(rows: any[][]): any[];
17
17
  }
18
18
  export declare class EntityByIdQuery {
@@ -22,13 +22,13 @@ export declare class EntityByIdQuery {
22
22
  constructor(model: Model, dialect: Dialect, entityName: string, fields: FieldRequest[], id: string);
23
23
  map(rows: any[][]): any;
24
24
  }
25
- export declare class EntityCountQuery implements Query<number> {
25
+ export declare class CountQuery implements Query<number> {
26
26
  readonly sql: string;
27
27
  readonly params: unknown[];
28
- constructor(model: Model, dialect: Dialect, entityName: string, where?: Where);
28
+ constructor(model: Model, dialect: Dialect, typeName: string, where?: Where);
29
29
  map(rows: any[][]): number;
30
30
  }
31
- export declare class EntityConnectionQuery implements Query<RelayConnectionResponse> {
31
+ export declare class ConnectionQuery implements Query<RelayConnectionResponse> {
32
32
  readonly sql: string;
33
33
  readonly params: unknown[];
34
34
  private offset;
@@ -37,7 +37,7 @@ export declare class EntityConnectionQuery implements Query<RelayConnectionRespo
37
37
  private edgeCursor?;
38
38
  private pageInfo?;
39
39
  private totalCount?;
40
- constructor(model: Model, dialect: Dialect, entityName: string, req: RelayConnectionRequest);
40
+ constructor(model: Model, dialect: Dialect, typeName: string, req: RelayConnectionRequest<AnyFields>);
41
41
  private setOffsetAndLimit;
42
42
  map(rows: any[][]): RelayConnectionResponse;
43
43
  private getPageInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/sql/query.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAC,mBAAmB,EAAE,KAAK,EAAC,MAAM,YAAY,CAAA;AAC1D,OAAO,EAKH,sBAAsB,EACtB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,UAAU,CAAA;AAMnC,MAAM,WAAW,KAAK,CAAC,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;IAC1B,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;CACxB;AAGD,qBAAa,eAAgB,YAAW,KAAK,CAAC,GAAG,EAAE,CAAC;IAQ5C,OAAO,CAAC,MAAM;IAPlB,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EACV,MAAM,EAAE,YAAY,EAAE,EAC9B,IAAI,EAAE,mBAAmB;IAK7B,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE;CAG5B;AAGD,qBAAa,eAAe;IAQpB,OAAO,CAAC,MAAM;IAPlB,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EACV,MAAM,EAAE,YAAY,EAAE,EAC9B,EAAE,EAAE,MAAM;IAYd,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG;CAI1B;AAGD,qBAAa,gBAAiB,YAAW,KAAK,CAAC,MAAM,CAAC;IAClD,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,KAAK;IAKjB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,MAAM;CAG7B;AAGD,qBAAa,qBAAsB,YAAW,KAAK,CAAC,uBAAuB,CAAC;IACxE,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;IACtC,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAC,CAAS;gBAGxB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,sBAAsB;IAsB/B,OAAO,CAAC,iBAAiB;IAUzB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,uBAAuB;IA8B3C,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,aAAa;CAQxB"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/sql/query.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAC,YAAY,EAAE,KAAK,EAAC,MAAM,YAAY,CAAA;AACnD,OAAO,EAKH,sBAAsB,EACtB,uBAAuB,EAC1B,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAC,SAAS,EAAE,YAAY,EAAC,MAAM,cAAc,CAAA;AACzD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,UAAU,CAAA;AAMnC,MAAM,WAAW,KAAK,CAAC,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;IAC1B,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;CACxB;AAGD,qBAAa,SAAU,YAAW,KAAK,CAAC,GAAG,EAAE,CAAC;IAQtC,OAAO,CAAC,MAAM;IAPlB,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EACR,MAAM,EAAE,SAAS,EACzB,IAAI,EAAE,YAAY;IAWtB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE;CAO5B;AAGD,qBAAa,eAAe;IAQpB,OAAO,CAAC,MAAM;IAPlB,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EACV,MAAM,EAAE,YAAY,EAAE,EAC9B,EAAE,EAAE,MAAM;IAYd,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG;CAI1B;AAGD,qBAAa,UAAW,YAAW,KAAK,CAAC,MAAM,CAAC;IAC5C,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;gBAGlC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,KAAK;IAMjB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,MAAM;CAG7B;AAGD,qBAAa,eAAgB,YAAW,KAAK,CAAC,uBAAuB,CAAC;IAClE,SAAgB,GAAG,EAAE,MAAM,CAAA;IAC3B,SAAgB,MAAM,EAAE,OAAO,EAAE,CAAK;IACtC,OAAO,CAAC,MAAM,CAAI;IAClB,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,UAAU,CAAC,CAAS;gBAGxB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,sBAAsB,CAAC,SAAS,CAAC;IA+B1C,OAAO,CAAC,iBAAiB;IAUzB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,uBAAuB;IA8B3C,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,aAAa;CAQxB"}
package/lib/sql/query.js CHANGED
@@ -3,29 +3,41 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EntityConnectionQuery = exports.EntityCountQuery = exports.EntityByIdQuery = exports.EntityListQuery = void 0;
6
+ exports.ConnectionQuery = exports.CountQuery = exports.EntityByIdQuery = exports.ListQuery = void 0;
7
7
  const util_internal_1 = require("@subsquid/util-internal");
8
8
  const assert_1 = __importDefault(require("assert"));
9
9
  const connection_1 = require("../ir/connection");
10
10
  const util_1 = require("../util/util");
11
11
  const mapping_1 = require("./mapping");
12
12
  const printer_1 = require("./printer");
13
- class EntityListQuery {
14
- constructor(model, dialect, entityName, fields, args) {
13
+ class ListQuery {
14
+ constructor(model, dialect, typeName, fields, args) {
15
15
  this.fields = fields;
16
16
  this.params = [];
17
- this.sql = new printer_1.EntityListQueryPrinter(model, dialect, entityName, this.params, args, fields).print();
17
+ if (model[typeName].kind == 'entity') {
18
+ (0, assert_1.default)(Array.isArray(fields));
19
+ this.sql = new printer_1.EntitySqlPrinter(model, dialect, typeName, this.params, args, fields).print();
20
+ }
21
+ else {
22
+ (0, assert_1.default)(!Array.isArray(fields));
23
+ this.sql = new printer_1.QueryableSqlPrinter(model, dialect, typeName, this.params, args, fields).print();
24
+ }
18
25
  }
19
26
  map(rows) {
20
- return (0, mapping_1.mapRows)(rows, this.fields);
27
+ if (Array.isArray(this.fields)) {
28
+ return (0, mapping_1.mapRows)(rows, this.fields);
29
+ }
30
+ else {
31
+ return (0, mapping_1.mapQueryableRows)(rows, this.fields);
32
+ }
21
33
  }
22
34
  }
23
- exports.EntityListQuery = EntityListQuery;
35
+ exports.ListQuery = ListQuery;
24
36
  class EntityByIdQuery {
25
37
  constructor(model, dialect, entityName, fields, id) {
26
38
  this.fields = fields;
27
39
  this.params = [];
28
- this.sql = new printer_1.EntityListQueryPrinter(model, dialect, entityName, this.params, { where: { op: 'eq', field: 'id', value: id } }, fields).print();
40
+ this.sql = new printer_1.EntitySqlPrinter(model, dialect, entityName, this.params, { where: { op: 'eq', field: 'id', value: id } }, fields).print();
29
41
  }
30
42
  map(rows) {
31
43
  (0, assert_1.default)(rows.length < 2);
@@ -33,18 +45,19 @@ class EntityByIdQuery {
33
45
  }
34
46
  }
35
47
  exports.EntityByIdQuery = EntityByIdQuery;
36
- class EntityCountQuery {
37
- constructor(model, dialect, entityName, where) {
48
+ class CountQuery {
49
+ constructor(model, dialect, typeName, where) {
38
50
  this.params = [];
39
- this.sql = 'SELECT count(*) ' + new printer_1.EntityListQueryPrinter(model, dialect, entityName, this.params, { where }).printFrom();
51
+ let Printer = model[typeName].kind == 'entity' ? printer_1.EntitySqlPrinter : printer_1.QueryableSqlPrinter;
52
+ this.sql = new Printer(model, dialect, typeName, this.params, { where }).printAsCount();
40
53
  }
41
54
  map(rows) {
42
55
  return toCount(rows);
43
56
  }
44
57
  }
45
- exports.EntityCountQuery = EntityCountQuery;
46
- class EntityConnectionQuery {
47
- constructor(model, dialect, entityName, req) {
58
+ exports.CountQuery = CountQuery;
59
+ class ConnectionQuery {
60
+ constructor(model, dialect, typeName, req) {
48
61
  this.params = [];
49
62
  this.offset = 0;
50
63
  this.limit = 100;
@@ -52,18 +65,27 @@ class EntityConnectionQuery {
52
65
  this.edgeCursor = req.edgeCursor;
53
66
  this.pageInfo = req.pageInfo;
54
67
  this.totalCount = req.totalCount;
55
- let printer = new printer_1.EntityListQueryPrinter(model, dialect, entityName, this.params, {
68
+ let args = {
56
69
  orderBy: req.orderBy,
57
70
  where: req.where,
58
71
  offset: this.offset,
59
72
  limit: this.limit + 1
60
- }, req.edgeNode);
61
- if (req.edgeNode?.length) {
73
+ };
74
+ let printer;
75
+ if (model[typeName].kind == 'entity') {
76
+ (0, assert_1.default)(req.edgeNode == null || Array.isArray(req.edgeNode));
77
+ printer = new printer_1.EntitySqlPrinter(model, dialect, typeName, this.params, args, req.edgeNode);
78
+ }
79
+ else {
80
+ (0, assert_1.default)(req.edgeNode == null || !Array.isArray(req.edgeNode));
81
+ printer = new printer_1.QueryableSqlPrinter(model, dialect, typeName, this.params, args, req.edgeNode);
82
+ }
83
+ if (req.edgeNode) {
62
84
  this.edgeNode = req.edgeNode;
63
85
  this.sql = printer.print();
64
86
  }
65
87
  else {
66
- this.sql = `SELECT count(*) FROM (SELECT true ${printer.printFrom()}) AS rows`;
88
+ this.sql = printer.printAsCount();
67
89
  }
68
90
  }
69
91
  setOffsetAndLimit(req) {
@@ -78,7 +100,7 @@ class EntityConnectionQuery {
78
100
  map(rows) {
79
101
  let res = {};
80
102
  if (this.edgeNode) {
81
- let nodes = (0, mapping_1.mapRows)(rows, this.edgeNode);
103
+ let nodes = Array.isArray(this.edgeNode) ? (0, mapping_1.mapRows)(rows, this.edgeNode) : (0, mapping_1.mapQueryableRows)(rows, this.edgeNode);
82
104
  let edges = new Array(Math.min(this.limit, nodes.length));
83
105
  for (let i = 0; i < edges.length; i++) {
84
106
  edges[i] = {
@@ -126,7 +148,7 @@ class EntityConnectionQuery {
126
148
  }
127
149
  }
128
150
  }
129
- exports.EntityConnectionQuery = EntityConnectionQuery;
151
+ exports.ConnectionQuery = ConnectionQuery;
130
152
  function toCount(rows) {
131
153
  (0, assert_1.default)(rows.length == 1);
132
154
  return (0, util_1.toSafeInteger)(rows[0][0]);
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/sql/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/sql/query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=queryable.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryable.test.d.ts","sourceRoot":"","sources":["../../src/test/queryable.test.ts"],"names":[],"mappings":""}