@antelopejs/interface-data-api 0.1.1 → 0.1.3

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/README.md CHANGED
@@ -28,6 +28,8 @@ Detailed documentation is available in the `docs` directory:
28
28
  - [Foreign Keys](./docs/7.foreign-keys.md) - Establish relationships between tables
29
29
  - [Filters](./docs/8.filters.md) - Add filtering capabilities to list endpoints
30
30
  - [Modifiers](./docs/9.modifiers.md) - Automatic data transformation with database-decorators
31
+ - [Joined Fields](./docs/10.joined.md) - Flatten a remote field onto rows for native sort/filter
32
+ - [Computed Fields](./docs/11.computed.md) - In-database computed values, sortable and pageable natively
31
33
 
32
34
  ## License
33
35
 
@@ -58,6 +58,8 @@ export declare namespace Query {
58
58
  function Foreign(db: SchemaInstance<any>, meta: DataAPIMeta, query: Datum<any>, pluck?: Set<string>): Datum<any>;
59
59
  function Joined(db: SchemaInstance<any>, meta: DataAPIMeta, query: Stream<any>): Stream<any>;
60
60
  function Joined(db: SchemaInstance<any>, meta: DataAPIMeta, query: Datum<any>): Datum<any>;
61
+ function Computed(db: SchemaInstance<any>, meta: DataAPIMeta, query: Stream<any>, only?: Set<string>): Stream<any>;
62
+ function Computed(db: SchemaInstance<any>, meta: DataAPIMeta, query: Datum<any>, only?: Set<string>): Datum<any>;
61
63
  function ReadProperties(obj: any, meta: DataAPIMeta, dbData: any, action?: string, onlyList?: boolean): Promise<Record<string, any>>;
62
64
  function WriteProperties(obj: any, meta: DataAPIMeta, bodyData: Record<string, any>, action?: string, existingDBData?: Record<string, any>): Promise<Record<string, any>>;
63
65
  function Get(table: Table<any>, id: string | ValueProxy<string>, index?: string): Datum<any>;
@@ -244,6 +244,44 @@ var Query;
244
244
  return datum;
245
245
  }
246
246
  Query.Joined = Joined;
247
+ function collectComputedEntries(meta, only) {
248
+ return Object.entries(meta.fields)
249
+ .filter(([name, field]) => field.computed && (!only || only.has(name)))
250
+ .map(([name, field]) => [name, field.computed]);
251
+ }
252
+ function buildComputedMappers(db, entries) {
253
+ const mergeExpressions = (row) => {
254
+ const merged = {};
255
+ for (const [name, computed] of entries) {
256
+ merged[name] = computed.expr(row, db);
257
+ }
258
+ return row.merge(merged);
259
+ };
260
+ const defaulted = entries.filter(([, computed]) => computed.default !== undefined);
261
+ if (defaulted.length === 0) {
262
+ return [mergeExpressions];
263
+ }
264
+ const applyDefaults = (row) => {
265
+ const merged = {};
266
+ for (const [name, computed] of defaulted) {
267
+ merged[name] = row.key(name).default(computed.default);
268
+ }
269
+ return row.merge(merged);
270
+ };
271
+ return [mergeExpressions, applyDefaults];
272
+ }
273
+ function Computed(db, meta, query, only) {
274
+ const entries = collectComputedEntries(meta, only);
275
+ if (entries.length === 0) {
276
+ return query;
277
+ }
278
+ const mappers = buildComputedMappers(db, entries);
279
+ if (query instanceof interface_database_1.Stream) {
280
+ return mappers.reduce((stream, mapper) => stream.map(mapper), query);
281
+ }
282
+ return mappers.reduce((datum, mapper) => datum.do(mapper), query);
283
+ }
284
+ Query.Computed = Computed;
247
285
  async function ReadProperties(obj, meta, dbData, action, onlyList) {
248
286
  const readable = meta.readable[action ?? "_default"] ?? meta.readable._default;
249
287
  const instance = { ...obj };
@@ -313,6 +351,12 @@ var Query;
313
351
  if (db) {
314
352
  tmpRequest = Joined(db, meta, tmpRequest);
315
353
  }
354
+ const filteredComputed = new Set(filterList
355
+ .map(([name]) => name)
356
+ .filter((name) => meta.fields[name]?.computed));
357
+ if (db && filteredComputed.size > 0) {
358
+ tmpRequest = Computed(db, meta, tmpRequest, filteredComputed);
359
+ }
316
360
  const sortField = sorting?.[0];
317
361
  const shouldSort = sortField ? meta.fields[sortField]?.sortable : undefined;
318
362
  if (shouldSort?.indexed && sortField) {
@@ -329,10 +373,17 @@ var Query;
329
373
  : req.filter((row) => filter(Object.assign(reqCtx, { this: obj }), Validation.UnlockRequest(obj, meta, row, name), name, filterValue[0], filterValue[1], row));
330
374
  }, tmpRequest);
331
375
  }
376
+ const total = tmpRequest.count();
377
+ if (db &&
378
+ sortField &&
379
+ meta.fields[sortField]?.computed &&
380
+ !filteredComputed.has(sortField)) {
381
+ tmpRequest = Computed(db, meta, tmpRequest, new Set([sortField]));
382
+ }
332
383
  if (shouldSort && !shouldSort.indexed && sortField) {
333
384
  tmpRequest = tmpRequest.orderBy(sortField, sorting?.[1] ?? "asc");
334
385
  }
335
- return [tmpRequest, tmpRequest.count()];
386
+ return [tmpRequest, total];
336
387
  }
337
388
  Query.List = List;
338
389
  function Delete(table, id) {
@@ -386,7 +437,9 @@ var Validation;
386
437
  const key = obj[field];
387
438
  (0, common_1.unlock)(dbData, modifier, undefined, key);
388
439
  for (const [foreign, fieldData] of Object.entries(meta.fields)) {
389
- if (fieldData.foreign && typeof dbData[foreign] === "object") {
440
+ if (fieldData.foreign &&
441
+ dbData[foreign] &&
442
+ typeof dbData[foreign] === "object") {
390
443
  (0, common_1.unlock)(dbData[foreign], modifier, undefined, key);
391
444
  }
392
445
  }
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.ts"],"names":[],"mappings":";;;AAAA,6DAGmC;AACnC,uEAAwD;AACxD,sEAA0F;AAC1F,uEAOwC;AAGxC,uFAMoE;AACpE,wBAA0C;AAG1C,IAAiB,UAAU,CAuM1B;AAvMD,WAAiB,UAAU;IACzB,SAAgB,kBAAkB,CAChC,MAAsB;QAEtB,OAAa,MAAO,CAAC,YAAY,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,CAAC;IAJe,6BAAkB,qBAIjC,CAAA;IAED,SAAgB,cAAc,CAC5B,MAAsB,EACtB,IAAiB;QAEjB,MAAM,MAAM,GAAgC,EAAE,CAAC;QAC/C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,UAAU,MAAM,EAAE,CAAC;YACtC,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAChE,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK;oBACpB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAmB,CAAC;oBACxC,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAhBe,yBAAc,iBAgB7B,CAAA;IAED,MAAM,UAAU,GAAG;QACjB,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QACxC,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;QACvC,IAAI,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG;QAClC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG;KAC7B,CAAC;IAQF,SAAgB,cAAc,CAC5B,MAAsB,EACtB,IAAiB,EACjB,OAAkC;QAElC,MAAM,SAAS,GAAG,kBAAkB,CAAI,MAAM,CAAC,CAAC;QAChD,MAAM,MAAM,GAAe,EAAE,GAAG,SAAS,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC;gBACrB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC/B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;oBAClC,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACnC,MAAM,SAAS,GAAG,UAAU,CAAgB,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;wBACpE,MAAM,CAAC,GAAc,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY;6BAC7C,MAAM,CAAC,GAAG,CAAC;6BACX,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAQ,CAAC;oBACrD,CAAC;yBAAM,CAAC;wBACN,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACnD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;4BACvB,MAAM,CAAC,GAAc,CAAC,GAAG,UAAU,CAAgB,SAAS,CAAC,CAC3D,SAAS,CACH,CAAC;wBACX,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAc,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IA9Be,yBAAc,iBA8B7B,CAAA;IAkBY,eAAI,GAAG,IAAA,8CAAiC,EAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAC3E,IAAA,oCAAoB,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,UAAyB,OAAO;QACvE,MAAM,IAAI,GAAG,IAAA,wBAAqB,EAAC,IAAI,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,cAAc,CAAiB,OAAO,EAAE,IAAI,EAAE;YAC3D,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,QAAQ;YACjB,aAAa,EAAE,QAAQ;SACxB,CAAC,CAAC;QAEH,IAAA,2BAAM,EACJ,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EACxD,GAAG,EACH,wBAAwB,CACzB,CAAC;QACF,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK;YACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC;YAC/C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAEnB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;IAQW,cAAG,GAAG,IAAA,8CAAiC,EAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAC1E,IAAA,oCAAoB,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,UAAyB,OAAO;QACvE,MAAM,MAAM,GAAG,cAAc,CAC3B,OAAO,EACP,IAAA,wBAAqB,EAAC,IAAI,CAAC,EAC3B;YACE,EAAE,EAAE,QAAQ;SACb,CACF,CAAC;QAEF,IAAA,2BAAM,EAAC,MAAM,CAAC,EAAE,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QAEvE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;IAMW,cAAG,GAAG,IAAA,8CAAiC,EAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAC1E,IAAA,oCAAoB,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,UAAyB,OAAO;QACvE,MAAM,MAAM,GAAG,cAAc,CAC3B,OAAO,EACP,IAAA,wBAAqB,EAAC,IAAI,CAAC,EAC3B,EAAE,CACH,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;IAQW,eAAI,GAAG,IAAA,8CAAiC,EAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAC3E,IAAA,oCAAoB,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,UAAyB,OAAO;QACvE,MAAM,MAAM,GAAG,cAAc,CAC3B,OAAO,EACP,IAAA,wBAAqB,EAAC,IAAI,CAAC,EAC3B;YACE,EAAE,EAAE,QAAQ;SACb,CACF,CAAC;QAEF,IAAA,2BAAM,EAAC,MAAM,CAAC,EAAE,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QAEvE,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CACH,CAAC;IAMW,iBAAM,GAAG,IAAA,8CAAiC,EACrD,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CACrB,IAAA,oCAAoB,EAClB,MAAM,EACN,GAAG,EACH,KAAK,EACL,UAAyB,OAAO;QAC9B,MAAM,MAAM,GAAG,cAAc,CAC3B,OAAO,EACP,IAAA,wBAAqB,EAAC,IAAI,CAAC,EAC3B;YACE,EAAE,EAAE,cAAc;SACnB,CACF,CAAC;QAEF,IAAA,2BAAM,EACJ,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,EAC7D,GAAG,EACH,aAAa,CACd,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CACF,CACJ,CAAC;AACJ,CAAC,EAvMgB,UAAU,0BAAV,UAAU,QAuM1B;AAED,IAAiB,KAAK,CAocrB;AApcD,WAAiB,KAAK;IACpB,SAAgB,QAAQ,CACtB,GAAQ,EACR,IAAiB;QAEjB,IAAA,2BAAM,EAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IANe,cAAQ,WAMvB,CAAA;IAcD,SAAgB,OAAO,CACrB,EAAuB,EACvB,IAAiB,EACjB,KAA+B,EAC/B,KAAmB;QAEnB,IAAI;QACJ,IAAI,KAAK,YAAY,2BAAM,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBAClD,SAAS;gBACX,CAAC;gBACD,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,GAC/D,KAAK,CAAC,OAAO,CAAC;gBAChB,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3D,IAAI,UAAU,EAAE,CAAC;oBACf,KAAK,GAAG,KAAK,CAAC,MAAM,CAClB,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,UAAU,CAAe,EACrD,IAAI,EACJ,KAAK,IAAI,KAAK,CACf,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,GAAG,CAAC,GAAoC,EAAE,EAAE;gBAC1D,MAAM,aAAa,GAAwB,EAAE,CAAC;gBAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBACxD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;wBAClD,SAAS;oBACX,CAAC;oBACD,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,GAC9D,KAAK,CAAC,OAAO,CAAC;oBAChB,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;oBACjD,IAAI,KAAK,EAAE,CAAC;wBACV,aAAa,CAAC,IAAI,CAAC,GAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAA0B;6BAC1D,OAAO,CAAC,EAAE,CAAC;6BACX,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;4BACX,IAAI,aAAa,GAAe,GAAG,CACjC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EACrB,GAAG,EACH,KAAK,CACN,CAAC;4BACF,IAAI,UAAU,EAAE,CAAC;gCACf,aAAa,GAAG,aAAa,CAAC,KAAK,CACjC,WAAW,EACX,GAAG,UAAU,CACd,CAAC;4BACJ,CAAC;4BACD,OAAO,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACrC,CAAC,CAAC,CAAC;oBACP,CAAC;yBAAM,CAAC;wBACN,aAAa,CAAC,IAAI,CAAC,GAAG,GAAG,CACvB,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EACrB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAuB,EACnC,KAAK,CACN,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAClB,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAClC,CAAC,CAAC;YACF,OAAO,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAjEe,aAAO,UAiEtB,CAAA;IAUD,SAAS,mBAAmB,CAAC,IAAiB;QAC5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,SAAS;YAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;YACvB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YACnF,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG;oBACN,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,UAAU;oBACxB,MAAM,EAAE,EAAE;iBACX,CAAC;gBACF,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,eAAe,CACtB,QAA6B,EAC7B,UAA8B;QAE9B,IAAI,CAAC,UAAU;YAAE,OAAO,QAAQ,CAAC;QACjC,MAAM,MAAM,GAAG,2BAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtC,IAAA,2BAAM,EAAC,MAAM,EAAE,GAAG,EAAE,WAAW,UAAU,kBAAkB,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;IAYD,SAAgB,MAAM,CACpB,EAAuB,EACvB,IAAiB,EACjB,KAA+B;QAE/B,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,KAAY,CAAC;QACtB,CAAC;QAGD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,iBAAiB,QAAQ,EAAE,CAAC;QAEpE,IAAI,KAAK,YAAY,2BAAM,EAAE,CAAC;YAC5B,IAAI,MAAM,GAAqB,KAAyB,CAAC;YACzD,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBAC5D,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBACvD,MAAM,WAAW,GAAG,QAAQ;qBACzB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;qBAClB,KAAK,CACJ,WAAW,EACX,KAAK,CAAC,WAAW,EACjB,GAAG,YAAY,CACG,CAAC;gBACvB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,MAAM,GAAG,MAAM;qBACZ,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;qBAC9D,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC;qBACtD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACX,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;oBAC5D,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC3D,CAAC;oBACD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACzC,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC3B,CAAC,CAAqB,CAAC;YAC3B,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAqB,CAAC;QACxD,CAAC;QAED,IAAI,KAAK,GAAoB,KAAwB,CAAC;QACtD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,QAAQ;iBACzB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;iBAClB,KAAK,CACJ,WAAW,EACX,KAAK,CAAC,WAAW,EACjB,GAAG,YAAY,CACG,CAAC;YACvB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzC,KAAK,GAAG,KAAK;iBACV,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;iBAC7D,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC;iBACtD,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE;gBACV,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAC5D,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC7B,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC3D,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACzC,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC,CAAoB,CAAC;QAC1B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAvEe,YAAM,SAuErB,CAAA;IAOD,SAAS,sBAAsB,CAC7B,IAAiB,EACjB,IAAkB;QAElB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;aAC/B,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;aACtE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,QAA6B,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,SAAS,oBAAoB,CAC3B,EAAuB,EACvB,OAAwB;QAExB,MAAM,gBAAgB,GAAc,CAAC,GAAG,EAAE,EAAE;YAC1C,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC;QACF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CACjD,CAAC;QACF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC5B,CAAC;QACD,MAAM,aAAa,GAAc,CAAC,GAAG,EAAE,EAAE;YACvC,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,CAAC;QACF,OAAO,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAC3C,CAAC;IAcD,SAAgB,QAAQ,CACtB,EAAuB,EACvB,IAAiB,EACjB,KAA+B,EAC/B,IAAkB;QAElB,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,KAAY,CAAC;QACtB,CAAC;QACD,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,KAAK,YAAY,2BAAM,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EACtC,KAAoC,CACrC,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,EACnC,KAAmC,CACpC,CAAC;IACJ,CAAC;IArBe,cAAQ,WAqBvB,CAAA;IAEM,KAAK,UAAU,cAAc,CAClC,GAAQ,EACR,IAAiB,EACjB,MAAW,EACX,MAAe,EACf,QAAkB;QAElB,MAAM,QAAQ,GACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAChE,MAAM,QAAQ,GAAwB,EAAE,GAAG,GAAG,EAAE,CAAC;QACjD,MAAM,GAAG,GAAwB,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAChC,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;YAC5C,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;QACxB,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5C,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAChC,SAAS;YACX,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IA5BqB,oBAAc,iBA4BnC,CAAA;IAEM,KAAK,UAAU,eAAe,CACnC,GAAQ,EACR,IAAiB,EACjB,QAA6B,EAC7B,MAAe,EACf,cAAoC;QAEpC,MAAM,QAAQ,GACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAChE,MAAM,QAAQ,GAAwB,EAAE,GAAG,GAAG,EAAE,CAAC;QACjD,MAAM,MAAM,GAAwB,cAAc,IAAI,EAAE,CAAC;QACzD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBACtB,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;wBACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC1C,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC9C,CAAC;QACD,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC;QACxB,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAhCqB,qBAAe,kBAgCpC,CAAA;IAED,SAAgB,GAAG,CACjB,KAAiB,EACjB,EAA+B,EAC/B,KAAc;QAEd,OAAO,KAAK;YACV,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAY,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAY,CAAC,CAAC;IAC9B,CAAC;IARe,SAAG,MAQlB,CAAA;IAED,SAAgB,IAAI,CAClB,GAAQ,EACR,IAAiB,EACjB,OAAiB,EACjB,MAAsB,EACtB,OAA8C,EAC9C,OAAqC,EACrC,EAAwB;QAExB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CACpD,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,IAAI,OAAO,CACvC,CAAC;QACF,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CACjC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,CACxE,EAAE,CAAC,CAAC,CAAC,CAAC;QACP,MAAM,KAAK,GAAG,WAAW;YACvB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,IAAI,WAAW;YAChD,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvE,IAAI,UAAU,GAAc,KAAK;YAC/B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC;YACjD,CAAC,CAAC,OAAO,CAAC;QAEZ,IAAI,EAAE,EAAE,CAAC;YACP,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,UAAyB,CAAc,CAAC;QACxE,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,UAAU;aACP,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;aACrB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CACjD,CAAC;QACF,IAAI,EAAE,IAAI,gBAAgB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACpC,UAAU,GAAG,QAAQ,CACnB,EAAE,EACF,IAAI,EACJ,UAAyB,EACzB,gBAAgB,CACJ,CAAC;QACjB,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,UAAU,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC;YACrC,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,4DAA4D;YAC5D,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;gBACrD,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,WAAW;oBAAE,OAAO,GAAG,CAAC;gBAC7B,OAAO,IAAI,KAAK,WAAW;oBACzB,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CACjB,MAAM,CACJ,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EACpC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAC9C,IAAI,EACJ,WAAW,CAAC,CAAC,CAAC,EACd,WAAW,CAAC,CAAC,CAAC,EACd,GAAsC,CACvC,CACF,CAAC;YACR,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;QACjC,IACE,EAAE;YACF,SAAS;YACT,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ;YAChC,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAChC,CAAC;YACD,UAAU,GAAG,QAAQ,CACnB,EAAE,EACF,IAAI,EACJ,UAAyB,EACzB,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CACR,CAAC;QACjB,CAAC;QACD,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;YACnD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IApFe,UAAI,OAoFnB,CAAA;IAED,SAAgB,MAAM,CAAC,KAAiB,EAAE,EAAqB;QAC7D,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;YAC3B,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAJe,YAAM,SAIrB,CAAA;AACH,CAAC,EApcgB,KAAK,qBAAL,KAAK,QAocrB;AAED,IAAiB,UAAU,CA6H1B;AA7HD,WAAiB,UAAU;IACzB,SAAgB,eAAe,CAAC,IAAiB,EAAE,GAAQ,EAAE,IAAY;QACvE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;aACxC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;aACvE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACzB,IAAA,2BAAM,EACJ,OAAO,CAAC,MAAM,KAAK,CAAC,EACpB,GAAG,EACH,6BAA6B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClD,CAAC;IACJ,CAAC;IATe,0BAAe,kBAS9B,CAAA;IAEM,KAAK,UAAU,aAAa,CACjC,IAAiB,EACjB,GAAwB;QAExB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,IACE,KAAK,CAAC,SAAS;gBACf,IAAI,IAAI,GAAG;gBACX,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EACnC,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QACD,IAAA,2BAAM,EACJ,OAAO,CAAC,MAAM,KAAK,CAAC,EACpB,GAAG,EACH,0BAA0B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/C,CAAC;IACJ,CAAC;IAnBqB,wBAAa,gBAmBlC,CAAA;IAED,SAAgB,IAAI,CAAC,GAAQ,EAAE,IAAiB,EAAE,IAAS;QACzD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,IAAA,aAAI,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IALe,eAAI,OAKnB,CAAA;IAED,SAAgB,MAAM,CAAC,GAAQ,EAAE,IAAiB,EAAE,MAAW;QAC7D,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,IACE,KAAK,CAAC,OAAO;gBACb,MAAM,CAAC,IAAI,CAAC;gBACZ,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,QAAQ;gBAChC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAChB,CAAC;gBACD,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACxC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,qBAAY,EAAC,KAAK,EAAE,aAAa,CAAC,CAAC;oBACjE,CAAC,CAAC,IAAA,qBAAY,EAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,IAAA,eAAM,EAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YACzC,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC/D,IACE,SAAS,CAAC,OAAO;oBACjB,MAAM,CAAC,OAAO,CAAC;oBACf,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,EACnC,CAAC;oBACD,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IA3Be,iBAAM,SA2BrB,CAAA;IAED,SAAgB,aAAa,CAC3B,GAAQ,EACR,IAAiB,EACjB,GAAkB,EAClB,KAAQ;QAER,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAC3D,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,QAAQ;YACR,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACnB,CAAC,CACH,CAAC;QACF,OAAO,IAAA,sBAAa,EAClB,IAAI,CAAC,UAA8B,EACnC,GAAG,EACH,KAAK,EACL,SAAS,CACV,CAAC;IACJ,CAAC;IAlBe,wBAAa,gBAkB5B,CAAA;IAED,SAAgB,aAAa,CAC3B,IAAiB,EACjB,GAAqD;QAErD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEjD,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CACtD,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAC7B,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC,SAAS,CAAC;YACvB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,aAAa,EAAE,CAAC;gBAChD,IACE,OAAO;oBACP,KAAK,CAAC,IAAI,CAAC;oBACX,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ;oBAC/B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,EACnE,CAAC;oBACD,MAAM,cAAc,GAAG,CAAC,IAAS,EAAE,EAAE;wBACnC,MAAM,KAAK,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;wBAChC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BAClB,OAAO,KAAK,CAAC;wBACf,CAAC;wBACD,MAAM,YAAY,GAA4B,EAAE,CAAC;wBACjD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC7B,YAAY,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;wBACjC,CAAC;wBACD,OAAO,YAAY,CAAC;oBACtB,CAAC,CAAC;oBACF,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACtC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC;wBACjC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAnCe,wBAAa,gBAmC5B,CAAA;AACH,CAAC,EA7HgB,UAAU,0BAAV,UAAU,QA6H1B"}
package/dist/index.js CHANGED
@@ -77,6 +77,18 @@ exports.RegisterDataController = (0, decorators_1.MakeClassDecorator)((target) =
77
77
  function GetDataControllerMeta(thisObj) {
78
78
  return (0, interface_core_1.GetMetadata)(Object.getPrototypeOf(thisObj).constructor, metadata_1.DataAPIMeta, true);
79
79
  }
80
+ function displayOnlyComputedFields(meta, params, pluck) {
81
+ const alreadyInjected = new Set(Object.keys(params.filters ?? {}).filter((name) => name in meta.filters));
82
+ if (params.sortKey) {
83
+ alreadyInjected.add(params.sortKey);
84
+ }
85
+ const names = Object.entries(meta.fields)
86
+ .filter(([name, field]) => field.computed &&
87
+ !alreadyInjected.has(name) &&
88
+ (params.noPluck || pluck?.has(name)))
89
+ .map(([name]) => name);
90
+ return new Set(names);
91
+ }
80
92
  var DefaultRoutes;
81
93
  (function (DefaultRoutes) {
82
94
  class Methods {
@@ -85,6 +97,7 @@ var DefaultRoutes;
85
97
  const model = components_1.Query.GetModel(this, meta);
86
98
  let query = components_1.Query.Get(model.table, params.id, params.index);
87
99
  query = components_1.Query.Joined(model.database, meta, query);
100
+ query = components_1.Query.Computed(model.database, meta, query);
88
101
  if (!params.noForeign) {
89
102
  query = components_1.Query.Foreign(model.database, meta, query);
90
103
  }
@@ -110,6 +123,10 @@ var DefaultRoutes;
110
123
  const offset = params.offset || 0;
111
124
  const limit = params.limit || 10;
112
125
  let queryPaged = query.slice(offset, limit);
126
+ const displayComputed = displayOnlyComputedFields(meta, params, pluck);
127
+ if (displayComputed.size > 0) {
128
+ queryPaged = components_1.Query.Computed(model.database, meta, queryPaged, displayComputed);
129
+ }
113
130
  if (!params.noPluck && pluck) {
114
131
  queryPaged = queryPaged.pluck("_internal", ...pluck);
115
132
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { RequestContext } from "@antelopejs/interface-api";
2
2
  import { type Class } from "@antelopejs/interface-core/decorators";
3
- import type { ValueProxy, ValueProxyOrValue } from "@antelopejs/interface-database";
3
+ import type { Query, SchemaInstance, ValueProxy, ValueProxyOrValue } from "@antelopejs/interface-database";
4
4
  import { type Table } from "@antelopejs/interface-database-decorators";
5
5
  import type { ContainerModifier } from "@antelopejs/interface-database-decorators/modifiers/common";
6
6
  import type { DataControllerCallbackWithOptions } from ".";
@@ -77,6 +77,13 @@ export interface FieldData {
77
77
  remoteIndex: string;
78
78
  schemaName?: string;
79
79
  };
80
+ /**
81
+ * In-database computed value.
82
+ *
83
+ * The expression is merged into each row at query time, enabling sort,
84
+ * filter, and pagination natively in DB.
85
+ */
86
+ computed?: ComputedFieldData;
80
87
  /**
81
88
  * Value validator callback.
82
89
  */
@@ -90,6 +97,30 @@ export interface FieldData {
90
97
  */
91
98
  indexable?: boolean;
92
99
  }
100
+ /**
101
+ * In-database computed field expression.
102
+ *
103
+ * Receives the row proxy and the schema instance of the controller's table.
104
+ * May return a row-local expression (built from `row`) or a per-row subquery
105
+ * (ex: an aggregate over another table).
106
+ */
107
+ export type ComputedExpression = (row: ValueProxy<Record<string, any>>, db: SchemaInstance<any>) => ValueProxyOrValue<unknown> | Query<unknown>;
108
+ /**
109
+ * Computed field options.
110
+ */
111
+ export interface ComputedOptions {
112
+ /**
113
+ * Fallback merged over the computed value when the expression yields null
114
+ * (ex: `0` for an aggregate count over an empty set).
115
+ */
116
+ default?: unknown;
117
+ }
118
+ /**
119
+ * Computed field information.
120
+ */
121
+ export interface ComputedFieldData extends ComputedOptions {
122
+ expr: ComputedExpression;
123
+ }
93
124
  type Comparison = "eq" | "ne" | "gt" | "ge" | "lt" | "le";
94
125
  export type FilterValue = [value: string, mode: Comparison];
95
126
  /**
@@ -192,6 +223,19 @@ export declare class DataAPIMeta {
192
223
  * @returns
193
224
  */
194
225
  setSortable(name: string, active: boolean, noIndex?: boolean): this;
226
+ /**
227
+ * Declares a field to be computed in-database from an expression.
228
+ *
229
+ * The value is read-only (merged into the row at query time, not persisted
230
+ * on this table). The field becomes natively sortable/filterable/pageable
231
+ * since the expression is applied to the underlying query before
232
+ * sorting/filtering.
233
+ *
234
+ * @param name Field name
235
+ * @param expr Computed expression
236
+ * @param options Computed options
237
+ */
238
+ setComputed(name: string, expr: ComputedExpression, options?: ComputedOptions): this;
195
239
  /**
196
240
  * Declares a field to be a flat join from another table.
197
241
  *
@@ -314,6 +358,21 @@ export declare const Joined: (options: {
314
358
  remoteIndex?: string;
315
359
  schema?: string;
316
360
  }) => import("@antelopejs/interface-core/decorators").PropertyDecorator;
361
+ /**
362
+ * Declares a field whose value is computed in-database from an expression.
363
+ *
364
+ * The expression receives the row proxy and the schema instance and may
365
+ * return a row-local expression or a per-row subquery (ex: an aggregate over
366
+ * another table). The framework merges the result into each row before
367
+ * filters and sorting are applied, making the field natively sortable,
368
+ * filterable, and pageable in DB.
369
+ *
370
+ * Computed fields are auto read-only and forced to non-indexed sort.
371
+ *
372
+ * @param expr Computed expression
373
+ * @param options Computed options (`default`: fallback when the expression yields null)
374
+ */
375
+ export declare const Computed: (expr: ComputedExpression, options?: ComputedOptions | undefined) => import("@antelopejs/interface-core/decorators").PropertyDecorator;
317
376
  /**
318
377
  * Declares a field to be a foreign key.
319
378
  *
package/dist/metadata.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ModifierKey = exports.ModelReference = exports.Filter = exports.Validator = exports.Foreign = exports.Joined = exports.Sortable = exports.Optional = exports.Mandatory = exports.Listable = exports.Access = exports.DataAPIMeta = exports.AccessMode = void 0;
3
+ exports.ModifierKey = exports.ModelReference = exports.Filter = exports.Validator = exports.Foreign = exports.Computed = exports.Joined = exports.Sortable = exports.Optional = exports.Mandatory = exports.Listable = exports.Access = exports.DataAPIMeta = exports.AccessMode = void 0;
4
4
  const interface_core_1 = require("@antelopejs/interface-core");
5
5
  const decorators_1 = require("@antelopejs/interface-core/decorators");
6
6
  const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
@@ -254,7 +254,29 @@ class DataAPIMeta {
254
254
  field.sortable = undefined;
255
255
  return this;
256
256
  }
257
- field.sortable = { indexed: !noIndex && !field.joined };
257
+ field.sortable = { indexed: !noIndex && !field.joined && !field.computed };
258
+ return this;
259
+ }
260
+ /**
261
+ * Declares a field to be computed in-database from an expression.
262
+ *
263
+ * The value is read-only (merged into the row at query time, not persisted
264
+ * on this table). The field becomes natively sortable/filterable/pageable
265
+ * since the expression is applied to the underlying query before
266
+ * sorting/filtering.
267
+ *
268
+ * @param name Field name
269
+ * @param expr Computed expression
270
+ * @param options Computed options
271
+ */
272
+ setComputed(name, expr, options) {
273
+ const field = this.field(name);
274
+ field.computed = { expr, default: options?.default };
275
+ field.mode = AccessMode.ReadOnly;
276
+ if (field.sortable?.indexed) {
277
+ field.sortable = { indexed: false };
278
+ }
279
+ this.recomputeAccess();
258
280
  return this;
259
281
  }
260
282
  /**
@@ -457,6 +479,23 @@ exports.Sortable = (0, decorators_1.MakeMethodAndPropertyDecorator)((target, key
457
479
  exports.Joined = (0, decorators_1.MakePropertyDecorator)((target, key, options) => {
458
480
  (0, interface_core_1.GetMetadata)(target.constructor, DataAPIMeta).setJoined(key, options);
459
481
  });
482
+ /**
483
+ * Declares a field whose value is computed in-database from an expression.
484
+ *
485
+ * The expression receives the row proxy and the schema instance and may
486
+ * return a row-local expression or a per-row subquery (ex: an aggregate over
487
+ * another table). The framework merges the result into each row before
488
+ * filters and sorting are applied, making the field natively sortable,
489
+ * filterable, and pageable in DB.
490
+ *
491
+ * Computed fields are auto read-only and forced to non-indexed sort.
492
+ *
493
+ * @param expr Computed expression
494
+ * @param options Computed options (`default`: fallback when the expression yields null)
495
+ */
496
+ exports.Computed = (0, decorators_1.MakePropertyDecorator)((target, key, expr, options) => {
497
+ (0, interface_core_1.GetMetadata)(target.constructor, DataAPIMeta).setComputed(key, expr, options);
498
+ });
460
499
  /**
461
500
  * Declares a field to be a foreign key.
462
501
  *
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const node_path_1 = __importDefault(require("node:path"));
16
+ const interface_api_1 = require("@antelopejs/interface-api");
17
+ const interface_core_1 = require("@antelopejs/interface-core");
18
+ const interface_data_api_1 = require("@antelopejs/interface-data-api");
19
+ const metadata_1 = require("@antelopejs/interface-data-api/metadata");
20
+ const interface_database_1 = require("@antelopejs/interface-database");
21
+ const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
22
+ const chai_1 = require("chai");
23
+ const utils_1 = require("../utils");
24
+ const currentTestName = node_path_1.default
25
+ .basename(__filename)
26
+ .replace(/\.test\.(ts|js)$/, "");
27
+ const groupTableName = `groups-${currentTestName}`;
28
+ const deviceTableName = `devices-${currentTestName}`;
29
+ const schemaName = "default";
30
+ let Group = class Group extends interface_database_decorators_1.Table {
31
+ };
32
+ Group = __decorate([
33
+ (0, interface_database_decorators_1.RegisterTable)(groupTableName, schemaName)
34
+ ], Group);
35
+ class GroupModel extends (0, interface_database_decorators_1.BasicDataModel)(Group, groupTableName) {
36
+ }
37
+ let Device = class Device extends interface_database_decorators_1.Table {
38
+ };
39
+ __decorate([
40
+ (0, interface_database_decorators_1.Index)(),
41
+ __metadata("design:type", String)
42
+ ], Device.prototype, "group_id", void 0);
43
+ Device = __decorate([
44
+ (0, interface_database_decorators_1.RegisterTable)(deviceTableName, schemaName)
45
+ ], Device);
46
+ class DeviceModel extends (0, interface_database_decorators_1.BasicDataModel)(Device, deviceTableName) {
47
+ }
48
+ const groupsDataset = [
49
+ { name: "Alpha" },
50
+ { name: "Beta" },
51
+ { name: "Gamma" },
52
+ ];
53
+ describe("Field Computed", () => {
54
+ it("stores computed metadata with forced read-only and non-indexed sort", async () => await storesComputedMetadata());
55
+ it("lists rows with computed values", async () => await listsRowsWithComputedValues());
56
+ it("gets row with computed values", async () => await getsRowWithComputedValues());
57
+ it("sorts by computed aggregate ascending", async () => await sortsByComputedAggregateAscending());
58
+ it("sorts by computed aggregate descending", async () => await sortsByComputedAggregateDescending());
59
+ it("paginates in-DB while sorting by computed aggregate", async () => await paginatesWhileSortingByComputedAggregate());
60
+ it("filters by computed aggregate", async () => await filtersByComputedAggregate());
61
+ it("ignores computed fields on edit body", async () => await ignoresComputedFieldsOnEdit());
62
+ });
63
+ async function _createDataController(testName) {
64
+ let _ComputedTestAPI = class _ComputedTestAPI extends (0, interface_data_api_1.DataController)(Group, {
65
+ list: interface_data_api_1.DefaultRoutes.List,
66
+ get: interface_data_api_1.DefaultRoutes.Get,
67
+ edit: interface_data_api_1.DefaultRoutes.Edit,
68
+ }, (0, interface_api_1.Controller)(`/${testName}`)) {
69
+ };
70
+ __decorate([
71
+ (0, metadata_1.ModelReference)(),
72
+ (0, interface_database_decorators_1.Model)(GroupModel),
73
+ __metadata("design:type", GroupModel)
74
+ ], _ComputedTestAPI.prototype, "groupModel", void 0);
75
+ __decorate([
76
+ (0, metadata_1.Listable)(),
77
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadOnly),
78
+ __metadata("design:type", String)
79
+ ], _ComputedTestAPI.prototype, "_id", void 0);
80
+ __decorate([
81
+ (0, metadata_1.Listable)(),
82
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadWrite),
83
+ (0, metadata_1.Sortable)({ noIndex: true }),
84
+ __metadata("design:type", String)
85
+ ], _ComputedTestAPI.prototype, "name", void 0);
86
+ __decorate([
87
+ (0, metadata_1.Listable)(),
88
+ (0, metadata_1.Computed)((row, db) => db
89
+ .table(deviceTableName)
90
+ .getAll(row.key("_id"), "group_id")
91
+ .count(), { default: 0 }),
92
+ (0, metadata_1.Sortable)(),
93
+ (0, metadata_1.Filter)((_context, proxy, _key, value) => proxy.eq(parseFloat(value))),
94
+ __metadata("design:type", Number)
95
+ ], _ComputedTestAPI.prototype, "devices_count", void 0);
96
+ __decorate([
97
+ (0, metadata_1.Listable)(),
98
+ (0, metadata_1.Computed)((row) => row.key("name").concat("!")),
99
+ __metadata("design:type", String)
100
+ ], _ComputedTestAPI.prototype, "display_name", void 0);
101
+ _ComputedTestAPI = __decorate([
102
+ (0, interface_data_api_1.RegisterDataController)()
103
+ ], _ComputedTestAPI);
104
+ await (0, interface_database_decorators_1.RegisterSchema)(schemaName);
105
+ await _dropTables();
106
+ const schemaInstance = (0, utils_1.getSchemaInstance)(schemaName);
107
+ const groupModel = new GroupModel(schemaInstance);
108
+ const deviceModel = new DeviceModel(schemaInstance);
109
+ const groupIdsRecord = await groupModel.insert(groupsDataset);
110
+ const groupIds = Object.values(groupIdsRecord);
111
+ const devicesDataset = [
112
+ { group_id: groupIds[0], label: "alpha-1" },
113
+ { group_id: groupIds[0], label: "alpha-2" },
114
+ { group_id: groupIds[0], label: "alpha-3" },
115
+ { group_id: groupIds[1], label: "beta-1" },
116
+ ];
117
+ await deviceModel.insert(devicesDataset);
118
+ return { groupIds, groupModel, deviceModel, controller: _ComputedTestAPI };
119
+ }
120
+ async function _dropTables() {
121
+ const schema = interface_database_1.Schema.get(schemaName);
122
+ if (schema) {
123
+ await schema.instance().table(deviceTableName).delete();
124
+ await schema.instance().table(groupTableName).delete();
125
+ }
126
+ }
127
+ async function _listGroups(testName, queryParams) {
128
+ const response = await (0, utils_1.listRequest)(testName, queryParams);
129
+ if (response.status !== 200) {
130
+ const text = await response.text();
131
+ throw new Error(`list failed (${response.status}): ${text}`);
132
+ }
133
+ return (await response.json());
134
+ }
135
+ async function storesComputedMetadata() {
136
+ const { controller } = await _createDataController((0, utils_1.getFunctionName)());
137
+ const meta = (0, interface_core_1.GetMetadata)(controller, metadata_1.DataAPIMeta, true);
138
+ const field = meta.fields.devices_count;
139
+ (0, chai_1.expect)(field.computed).to.not.equal(undefined);
140
+ (0, chai_1.expect)(field.computed?.default).to.equal(0);
141
+ (0, chai_1.expect)(field.mode).to.equal(metadata_1.AccessMode.ReadOnly);
142
+ (0, chai_1.expect)(field.sortable).to.deep.equal({ indexed: false });
143
+ meta.setSortable("devices_count", true);
144
+ (0, chai_1.expect)(meta.fields.devices_count.sortable).to.deep.equal({ indexed: false });
145
+ (0, chai_1.expect)(meta.fields.display_name.computed).to.not.equal(undefined);
146
+ (0, chai_1.expect)(meta.fields.display_name.mode).to.equal(metadata_1.AccessMode.ReadOnly);
147
+ }
148
+ async function listsRowsWithComputedValues() {
149
+ await _createDataController((0, utils_1.getFunctionName)());
150
+ const data = await _listGroups((0, utils_1.getFunctionName)());
151
+ (0, chai_1.expect)(data.results).to.have.lengthOf(3);
152
+ const byName = Object.fromEntries(data.results.map((g) => [g.name, g]));
153
+ (0, chai_1.expect)(byName.Alpha.devices_count).to.equal(3);
154
+ (0, chai_1.expect)(byName.Beta.devices_count).to.equal(1);
155
+ (0, chai_1.expect)(byName.Gamma.devices_count).to.equal(0);
156
+ (0, chai_1.expect)(byName.Alpha.display_name).to.equal("Alpha!");
157
+ (0, chai_1.expect)(byName.Gamma.display_name).to.equal("Gamma!");
158
+ }
159
+ async function getsRowWithComputedValues() {
160
+ const { groupIds } = await _createDataController((0, utils_1.getFunctionName)());
161
+ const response = await (0, utils_1.getRequest)((0, utils_1.getFunctionName)(), { id: groupIds[0] });
162
+ if (response.status !== 200) {
163
+ const text = await response.text();
164
+ throw new Error(`get failed (${response.status}): ${text}`);
165
+ }
166
+ const group = (await response.json());
167
+ (0, chai_1.expect)(group.name).to.equal("Alpha");
168
+ (0, chai_1.expect)(group.devices_count).to.equal(3);
169
+ (0, chai_1.expect)(group.display_name).to.equal("Alpha!");
170
+ }
171
+ async function sortsByComputedAggregateAscending() {
172
+ await _createDataController((0, utils_1.getFunctionName)());
173
+ const data = await _listGroups((0, utils_1.getFunctionName)(), {
174
+ sortKey: "devices_count",
175
+ sortDirection: "asc",
176
+ });
177
+ (0, chai_1.expect)(data.results.map((g) => g.name)).to.deep.equal([
178
+ "Gamma",
179
+ "Beta",
180
+ "Alpha",
181
+ ]);
182
+ }
183
+ async function sortsByComputedAggregateDescending() {
184
+ await _createDataController((0, utils_1.getFunctionName)());
185
+ const data = await _listGroups((0, utils_1.getFunctionName)(), {
186
+ sortKey: "devices_count",
187
+ sortDirection: "desc",
188
+ });
189
+ (0, chai_1.expect)(data.results.map((g) => g.name)).to.deep.equal([
190
+ "Alpha",
191
+ "Beta",
192
+ "Gamma",
193
+ ]);
194
+ }
195
+ async function paginatesWhileSortingByComputedAggregate() {
196
+ await _createDataController((0, utils_1.getFunctionName)());
197
+ const page1 = await _listGroups((0, utils_1.getFunctionName)(), {
198
+ sortKey: "devices_count",
199
+ sortDirection: "asc",
200
+ limit: "2",
201
+ offset: "0",
202
+ });
203
+ (0, chai_1.expect)(page1.results.map((g) => g.name)).to.deep.equal(["Gamma", "Beta"]);
204
+ (0, chai_1.expect)(page1.total).to.equal(3);
205
+ const page2 = await _listGroups((0, utils_1.getFunctionName)(), {
206
+ sortKey: "devices_count",
207
+ sortDirection: "asc",
208
+ limit: "2",
209
+ offset: "2",
210
+ });
211
+ (0, chai_1.expect)(page2.results.map((g) => g.name)).to.deep.equal(["Alpha"]);
212
+ (0, chai_1.expect)(page2.total).to.equal(3);
213
+ }
214
+ async function filtersByComputedAggregate() {
215
+ await _createDataController((0, utils_1.getFunctionName)());
216
+ const data = await _listGroups((0, utils_1.getFunctionName)(), {
217
+ filter_devices_count: "eq:0",
218
+ });
219
+ (0, chai_1.expect)(data.results.map((g) => g.name)).to.deep.equal(["Gamma"]);
220
+ (0, chai_1.expect)(data.total).to.equal(1);
221
+ }
222
+ async function ignoresComputedFieldsOnEdit() {
223
+ const { groupIds, groupModel } = await _createDataController((0, utils_1.getFunctionName)());
224
+ const editPayload = {
225
+ name: "Alpha Prime",
226
+ devices_count: 999,
227
+ display_name: "Forged Name",
228
+ };
229
+ const response = await (0, utils_1.editRequest)((0, utils_1.getFunctionName)(), editPayload, {
230
+ id: groupIds[0],
231
+ });
232
+ (0, chai_1.expect)(response.status).to.equal(200);
233
+ const updatedGroup = (await groupModel.get(groupIds[0]));
234
+ (0, chai_1.expect)(updatedGroup?.name).to.equal("Alpha Prime");
235
+ (0, chai_1.expect)(updatedGroup?.devices_count).to.equal(undefined);
236
+ (0, chai_1.expect)(updatedGroup?.display_name).to.equal(undefined);
237
+ }
238
+ //# sourceMappingURL=computed.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"computed.test.js","sourceRoot":"","sources":["../../../src/tests/components/computed.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const node_path_1 = __importDefault(require("node:path"));
16
+ const interface_api_1 = require("@antelopejs/interface-api");
17
+ const interface_data_api_1 = require("@antelopejs/interface-data-api");
18
+ const metadata_1 = require("@antelopejs/interface-data-api/metadata");
19
+ const interface_database_1 = require("@antelopejs/interface-database");
20
+ const interface_database_decorators_1 = require("@antelopejs/interface-database-decorators");
21
+ const chai_1 = require("chai");
22
+ const utils_1 = require("../utils");
23
+ const currentTestName = node_path_1.default
24
+ .basename(__filename)
25
+ .replace(/\.test\.(ts|js)$/, "");
26
+ const authorTableName = `authors-${currentTestName}`;
27
+ const postTableName = `posts-${currentTestName}`;
28
+ const schemaName = "default";
29
+ const locale = "en";
30
+ let Author = class Author extends interface_database_decorators_1.Table {
31
+ };
32
+ Author = __decorate([
33
+ (0, interface_database_decorators_1.RegisterTable)(authorTableName, schemaName)
34
+ ], Author);
35
+ class AuthorModel extends (0, interface_database_decorators_1.BasicDataModel)(Author, authorTableName) {
36
+ }
37
+ let Post = class Post extends interface_database_decorators_1.Table.with(interface_database_decorators_1.LocalizationModifier) {
38
+ };
39
+ __decorate([
40
+ (0, interface_database_decorators_1.Localized)(),
41
+ __metadata("design:type", String)
42
+ ], Post.prototype, "title", void 0);
43
+ Post = __decorate([
44
+ (0, interface_database_decorators_1.RegisterTable)(postTableName, schemaName)
45
+ ], Post);
46
+ class PostModel extends (0, interface_database_decorators_1.BasicDataModel)(Post, postTableName) {
47
+ }
48
+ const authorDataset = [
49
+ { name: "Alice Carter", email: "alice@example.com" },
50
+ ];
51
+ const orphanAuthorId = "orphan-author-id";
52
+ describe("Modifier key with foreign fields", () => {
53
+ it("gets row with resolved foreign reference", async () => await getsRowWithResolvedForeignReference());
54
+ it("gets row with null foreign reference", async () => await getsRowWithNullForeignReference());
55
+ it("gets row with dangling foreign reference", async () => await getsRowWithDanglingForeignReference());
56
+ it("lists rows containing null foreign references", async () => await listsRowsContainingNullForeignReferences());
57
+ });
58
+ async function _createDataController(testName) {
59
+ let _ModifierKeyTestAPI = class _ModifierKeyTestAPI extends (0, interface_data_api_1.DataController)(Post, {
60
+ list: interface_data_api_1.DefaultRoutes.List,
61
+ get: interface_data_api_1.DefaultRoutes.Get,
62
+ }, (0, interface_api_1.Controller)(`/${testName}`)) {
63
+ };
64
+ __decorate([
65
+ (0, metadata_1.ModelReference)(),
66
+ (0, interface_database_decorators_1.Model)(PostModel),
67
+ __metadata("design:type", PostModel)
68
+ ], _ModifierKeyTestAPI.prototype, "postModel", void 0);
69
+ __decorate([
70
+ (0, interface_api_1.Parameter)("locale", "query"),
71
+ (0, metadata_1.ModifierKey)(interface_database_decorators_1.LocalizationModifier),
72
+ __metadata("design:type", String)
73
+ ], _ModifierKeyTestAPI.prototype, "locale", void 0);
74
+ __decorate([
75
+ (0, metadata_1.Listable)(),
76
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadOnly),
77
+ __metadata("design:type", String)
78
+ ], _ModifierKeyTestAPI.prototype, "_id", void 0);
79
+ __decorate([
80
+ (0, metadata_1.Listable)(),
81
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadWrite),
82
+ (0, metadata_1.Foreign)(Author),
83
+ __metadata("design:type", Object)
84
+ ], _ModifierKeyTestAPI.prototype, "authorId", void 0);
85
+ __decorate([
86
+ (0, metadata_1.Listable)(),
87
+ (0, metadata_1.Access)(metadata_1.AccessMode.ReadWrite),
88
+ __metadata("design:type", String)
89
+ ], _ModifierKeyTestAPI.prototype, "title", void 0);
90
+ _ModifierKeyTestAPI = __decorate([
91
+ (0, interface_data_api_1.RegisterDataController)()
92
+ ], _ModifierKeyTestAPI);
93
+ await (0, interface_database_decorators_1.RegisterSchema)(schemaName);
94
+ await _dropTables();
95
+ const schemaInstance = (0, utils_1.getSchemaInstance)(schemaName);
96
+ const authorModel = new AuthorModel(schemaInstance);
97
+ const postModel = new PostModel(schemaInstance);
98
+ const authorIdsRecord = await authorModel.insert(authorDataset);
99
+ const authorIds = Object.values(authorIdsRecord);
100
+ const postsDataset = [
101
+ { authorId: authorIds[0] },
102
+ { authorId: orphanAuthorId },
103
+ { authorId: null },
104
+ ];
105
+ const postIdsRecord = await postModel.insert(postsDataset);
106
+ const postIds = Object.values(postIdsRecord);
107
+ return { authorIds, postIds };
108
+ }
109
+ async function _dropTables() {
110
+ const schema = interface_database_1.Schema.get(schemaName);
111
+ if (schema) {
112
+ await schema.instance().table(postTableName).delete();
113
+ await schema.instance().table(authorTableName).delete();
114
+ }
115
+ }
116
+ async function getsRowWithResolvedForeignReference() {
117
+ const { postIds } = await _createDataController((0, utils_1.getFunctionName)());
118
+ const response = await (0, utils_1.getRequest)((0, utils_1.getFunctionName)(), {
119
+ id: postIds[0],
120
+ locale,
121
+ });
122
+ (0, chai_1.expect)(response.status).to.equal(200);
123
+ const post = (await response.json());
124
+ (0, chai_1.expect)(post.authorId).to.not.equal(null);
125
+ (0, chai_1.expect)(post.authorId?.name).to.equal("Alice Carter");
126
+ }
127
+ async function getsRowWithNullForeignReference() {
128
+ const { postIds } = await _createDataController((0, utils_1.getFunctionName)());
129
+ const response = await (0, utils_1.getRequest)((0, utils_1.getFunctionName)(), {
130
+ id: postIds[2],
131
+ locale,
132
+ });
133
+ (0, chai_1.expect)(response.status).to.equal(200);
134
+ const post = (await response.json());
135
+ (0, chai_1.expect)(post.authorId).to.equal(null);
136
+ }
137
+ async function getsRowWithDanglingForeignReference() {
138
+ const { postIds } = await _createDataController((0, utils_1.getFunctionName)());
139
+ const response = await (0, utils_1.getRequest)((0, utils_1.getFunctionName)(), {
140
+ id: postIds[1],
141
+ locale,
142
+ });
143
+ (0, chai_1.expect)(response.status).to.equal(200);
144
+ const post = (await response.json());
145
+ (0, chai_1.expect)(post.authorId).to.equal(null);
146
+ }
147
+ async function listsRowsContainingNullForeignReferences() {
148
+ await _createDataController((0, utils_1.getFunctionName)());
149
+ const response = await (0, utils_1.listRequest)((0, utils_1.getFunctionName)(), { locale });
150
+ (0, chai_1.expect)(response.status).to.equal(200);
151
+ const data = (await response.json());
152
+ (0, chai_1.expect)(data.results).to.have.lengthOf(3);
153
+ const nullAuthorPosts = data.results.filter((post) => post.authorId == null);
154
+ (0, chai_1.expect)(nullAuthorPosts).to.have.lengthOf(2);
155
+ }
156
+ //# sourceMappingURL=modifier_key.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modifier_key.test.js","sourceRoot":"","sources":["../../../src/tests/components/modifier_key.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antelopejs/interface-data-api",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "AntelopeJS interface for data API with CRUD controllers and route generation",
5
5
  "keywords": [
6
6
  "antelopejs",
@@ -43,7 +43,7 @@
43
43
  "@antelopejs/interface-api": "^0.0.3",
44
44
  "@antelopejs/interface-api-util": "^0.0.4",
45
45
  "@antelopejs/interface-core": "^0.0.3",
46
- "@antelopejs/interface-database": "^0.1.1",
46
+ "@antelopejs/interface-database": "^0.1.2",
47
47
  "@antelopejs/interface-database-decorators": "^0.1.1"
48
48
  },
49
49
  "devDependencies": {
@@ -73,6 +73,7 @@
73
73
  }
74
74
  },
75
75
  "antelopeJs": {
76
+ "standalone": true,
76
77
  "test": "src/antelope.test.ts"
77
78
  }
78
79
  }