@generazioneai/genquery 0.4.0 → 0.7.1

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 (49) hide show
  1. package/dist/adapters/prisma/adapter.d.ts.map +1 -1
  2. package/dist/adapters/prisma/adapter.js +25 -0
  3. package/dist/adapters/prisma/adapter.js.map +1 -1
  4. package/dist/adapters/prisma/select.js +21 -0
  5. package/dist/adapters/prisma/select.js.map +1 -1
  6. package/dist/engine.d.ts +1 -0
  7. package/dist/engine.d.ts.map +1 -1
  8. package/dist/engine.js +3 -1
  9. package/dist/engine.js.map +1 -1
  10. package/dist/paginate/cursor.d.ts +18 -0
  11. package/dist/paginate/cursor.d.ts.map +1 -0
  12. package/dist/paginate/cursor.js +53 -0
  13. package/dist/paginate/cursor.js.map +1 -0
  14. package/dist/paginate/in-memory.d.ts +13 -0
  15. package/dist/paginate/in-memory.d.ts.map +1 -0
  16. package/dist/paginate/in-memory.js +21 -0
  17. package/dist/paginate/in-memory.js.map +1 -0
  18. package/dist/paginate/index.d.ts +27 -0
  19. package/dist/paginate/index.d.ts.map +1 -0
  20. package/dist/paginate/index.js +33 -0
  21. package/dist/paginate/index.js.map +1 -0
  22. package/dist/paginate/model.d.ts +16 -0
  23. package/dist/paginate/model.d.ts.map +1 -0
  24. package/dist/paginate/model.js +3 -0
  25. package/dist/paginate/model.js.map +1 -0
  26. package/dist/paginate/offset.d.ts +25 -0
  27. package/dist/paginate/offset.d.ts.map +1 -0
  28. package/dist/paginate/offset.js +74 -0
  29. package/dist/paginate/offset.js.map +1 -0
  30. package/dist/paginate/pagination.d.ts +18 -0
  31. package/dist/paginate/pagination.d.ts.map +1 -0
  32. package/dist/paginate/pagination.js +47 -0
  33. package/dist/paginate/pagination.js.map +1 -0
  34. package/dist/paginate/transform.d.ts +15 -0
  35. package/dist/paginate/transform.d.ts.map +1 -0
  36. package/dist/paginate/transform.js +43 -0
  37. package/dist/paginate/transform.js.map +1 -0
  38. package/dist/paginate/types.d.ts +93 -0
  39. package/dist/paginate/types.d.ts.map +1 -0
  40. package/dist/paginate/types.js +10 -0
  41. package/dist/paginate/types.js.map +1 -0
  42. package/dist/parsed.d.ts +16 -0
  43. package/dist/parsed.d.ts.map +1 -1
  44. package/dist/parser.d.ts.map +1 -1
  45. package/dist/parser.js +38 -18
  46. package/dist/parser.js.map +1 -1
  47. package/dist/types.d.ts +1 -1
  48. package/dist/types.d.ts.map +1 -1
  49. package/package.json +24 -2
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/prisma/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,SAAS,CAAC;AAGjB,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,aACX,YAAW,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAE3D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAEnC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB;IAK9D,KAAK,CACH,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,WAAW,GACjB,kBAAkB;IAIrB;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB;IAI3C,OAAO,CACX,QAAQ,EAAE,mBAAmB,EAC7B,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAyBpC,OAAO,CAAC,KAAK;CAsBd"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/prisma/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,SAAS,CAAC;AAGjB,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,aACX,YAAW,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAE3D,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;gBAEnC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,oBAAyB;IAK9D,KAAK,CACH,SAAS,EAAE,mBAAmB,EAC9B,KAAK,EAAE,WAAW,GACjB,kBAAkB;IAIrB;;;OAGG;IACH,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB;IAI3C,OAAO,CACX,QAAQ,EAAE,mBAAmB,EAC7B,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAyBpC,OAAO,CAAC,KAAK;CAoDd"}
@@ -67,6 +67,31 @@ class PrismaAdapter {
67
67
  }
68
68
  applyPagination(args, query.pagination);
69
69
  (0, select_1.applySelectAndInclude)(args, query, this.schema);
70
+ // Merge server-side raw base args (native Prisma filters/includes the DSL
71
+ // doesn't model). where → AND-merged; orderBy/include/select → used when the
72
+ // parsed query didn't set them.
73
+ const base = query.baseArgs;
74
+ if (base) {
75
+ if (base.where !== undefined && base.where !== null) {
76
+ args.where =
77
+ args.where !== undefined
78
+ ? { AND: [base.where, args.where] }
79
+ : base.where;
80
+ }
81
+ if (base.orderBy !== undefined && args.orderBy === undefined) {
82
+ args.orderBy = base.orderBy;
83
+ }
84
+ if (base.include !== undefined &&
85
+ args.include === undefined &&
86
+ args.select === undefined) {
87
+ args.include = base.include;
88
+ }
89
+ if (base.select !== undefined &&
90
+ args.select === undefined &&
91
+ args.include === undefined) {
92
+ args.select = base.select;
93
+ }
94
+ }
70
95
  return args;
71
96
  }
72
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/prisma/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/prisma/adapter.ts"],"names":[],"mappings":"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"}
@@ -83,12 +83,33 @@ function relationToSpec(spec, targetEntityName, schema) {
83
83
  if (spec.kind === "all")
84
84
  return true;
85
85
  const target = (0, schema_1.getEntity)(schema, targetEntityName);
86
+ const nested = spec.relations ?? {};
87
+ const nestedKeys = Object.keys(nested);
88
+ // No explicit field selection: use `include` (Prisma returns all scalars) and
89
+ // nest the recursive relation includes.
90
+ if (spec.fields.length === 0) {
91
+ if (nestedKeys.length === 0)
92
+ return true;
93
+ const inc = {};
94
+ for (const [relName, child] of Object.entries(nested)) {
95
+ const relDef = target.relations?.[relName];
96
+ if (relDef)
97
+ inc[relName] = relationToSpec(child, relDef.target, schema);
98
+ }
99
+ return { include: inc };
100
+ }
101
+ // Explicit fields selected: use `select` (+ nested relations under select).
86
102
  const pk = (0, schema_1.primaryKeyOf)(target);
87
103
  const set = new Set(spec.fields);
88
104
  set.add(pk);
89
105
  const sel = {};
90
106
  for (const f of set)
91
107
  sel[f] = true;
108
+ for (const [relName, child] of Object.entries(nested)) {
109
+ const relDef = target.relations?.[relName];
110
+ if (relDef)
111
+ sel[relName] = relationToSpec(child, relDef.target, schema);
112
+ }
92
113
  return { select: sel };
93
114
  }
94
115
  //# sourceMappingURL=select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/adapters/prisma/select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/adapters/prisma/select.ts"],"names":[],"mappings":";;AA2BA,sDAgBC;AArCD,yCAKsB;AAGtB;;;;;;;;;;;;GAYG;AACH,SAAgB,qBAAqB,CACnC,IAAwB,EACxB,KAAkB,EAClB,MAAc;IAEd,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAE9B,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,GAAG;YAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,gBAAgB,CACvB,OAAsB,EACtB,UAA4B,EAC5B,MAAc;IAEd,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9C,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACxC,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACpC,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM;IACN,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,GAAG,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAA8C,EAC9C,OAAsB,EACtB,UAA4B,EAC5B,MAAc;IAEd,MAAM,EAAE,GAAG,IAAA,qBAAY,EAAC,UAAU,CAAC,CAAC;IACpC,MAAM,GAAG,GAAiB,EAAE,CAAC;IAE7B,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,GAAG;YAAE,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrC,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3E,KAAK,MAAM,CAAC;YACZ,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,GAAG,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,cAAc,CACrB,IAA2B,EAC3B,gBAAwB,EACxB,MAAc;IAEd,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,MAAM,GAAG,IAAA,kBAAS,EAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEvC,8EAA8E;IAC9E,wCAAwC;IACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,MAAM;gBAAE,GAAG,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC1B,CAAC;IAED,4EAA4E;IAC5E,MAAM,EAAE,GAAG,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACZ,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACnC,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM;YAAE,GAAG,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACzB,CAAC"}
package/dist/engine.d.ts CHANGED
@@ -55,6 +55,7 @@ export declare class GenQueryEngine<TTarget, TResult> {
55
55
  */
56
56
  run<X extends TTarget>(input: GenQueryInput<InferEntityFromTarget<X>>, target: X): Promise<PaginatedResult<InferEntityFromTarget<X>>>;
57
57
  run<X extends TTarget>(input: GenQueryInput<InferEntityFromTarget<X>>, rootEntity: string, target: X): Promise<PaginatedResult<InferEntityFromTarget<X>>>;
58
+ run<X extends TTarget>(input: GenQueryInput<InferEntityFromTarget<X>>, rootEntity: string, target: X, base: ParsedQuery["baseArgs"]): Promise<PaginatedResult<InferEntityFromTarget<X>>>;
58
59
  /**
59
60
  * Apply a previously parsed query and return the adapter's raw target
60
61
  * (mutated query builder, args object, …) without executing. Use this when
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,WAAW,qBAAqB,CAAC,OAAO,EAAE,OAAO;IACrD,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CACpC;AAID,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAE/C,8EAA8E;AAC9E,KAAK,aAAa,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,GACzC,IAAI,GACJ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAC/B,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAC/B,IAAI,GACJ,KAAK,GACP,KAAK,CAAC;AAEZ;;;;;GAKG;AACH,KAAK,qBAAqB,CAAC,CAAC,IAAI,CAAC,SAAS;IACxC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CAC7B,GACG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,OAAO,GACP,CAAC,GACH,OAAO,GACT,CAAC,SAAS;IACN,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CACxC,GACD,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAC3B,OAAO,GACP,CAAC,GACH,OAAO,GACT,OAAO,CAAC;AAEd;;;;;;GAMG;AACH,qBAAa,cAAc,CAAC,OAAO,EAAE,OAAO;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAEhC,OAAO,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC;IAK5D;;;;;OAKG;IACH,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW;IAI5E;;;;;;;;;;;;;;;OAeG;IACH,GAAG,CAAC,CAAC,SAAS,OAAO,EACnB,KAAK,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC9C,MAAM,EAAE,CAAC,GACR,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,CAAC,CAAC,SAAS,OAAO,EACnB,KAAK,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAC9C,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,CAAC,GACR,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAiCrD;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO;CAGzD"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
package/dist/engine.js CHANGED
@@ -23,7 +23,7 @@ class GenQueryEngine {
23
23
  parse(input, rootEntity) {
24
24
  return (0, parser_1.parseQuery)(input, this.schema, rootEntity);
25
25
  }
26
- async run(input, arg2, arg3) {
26
+ async run(input, arg2, arg3, arg4) {
27
27
  if (!this.adapter.execute) {
28
28
  throw new Error(`GenQueryEngine.run: adapter '${this.adapter.name}' does not implement execute(). ` +
29
29
  "Use engine.parse + engine.runParsed instead.");
@@ -45,6 +45,8 @@ class GenQueryEngine {
45
45
  rootEntity = derived;
46
46
  }
47
47
  const parsed = (0, parser_1.parseQuery)(input, this.schema, rootEntity);
48
+ if (arg4)
49
+ parsed.baseArgs = arg4;
48
50
  return this.adapter.execute(target, parsed);
49
51
  }
50
52
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":";;;AACA,qCAAsC;AA8CtC;;;;;;GAMG;AACH,MAAa,cAAc;IAIzB,YAAY,OAAgD;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAc,KAAuB,EAAE,UAAkB;QAC5D,OAAO,IAAA,mBAAU,EAAC,KAAsB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;IA2BD,KAAK,CAAC,GAAG,CACP,KAAoB,EACpB,IAAsB,EACtB,IAAc;QAEd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,CAAC,OAAO,CAAC,IAAI,kCAAkC;gBACjF,8CAA8C,CACjD,CAAC;QACJ,CAAC;QACD,IAAI,UAAkB,CAAC;QACvB,IAAI,MAAe,CAAC;QACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,UAAU,GAAG,IAAI,CAAC;YAClB,MAAM,GAAG,IAAe,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAI,CAAC;YACd,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CACb,8DAA8D;oBAC5D,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,0CAA0C;oBAChE,oEAAoE,CACvE,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,OAAO,CAAC;QACvB,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAmB,EAAE,MAAe;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;CACF;AApFD,wCAoFC"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":";;;AACA,qCAAsC;AA8CtC;;;;;;GAMG;AACH,MAAa,cAAc;IAIzB,YAAY,OAAgD;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IACvC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAc,KAAuB,EAAE,UAAkB;QAC5D,OAAO,IAAA,mBAAU,EAAC,KAAsB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;IAiCD,KAAK,CAAC,GAAG,CACP,KAAoB,EACpB,IAAsB,EACtB,IAAc,EACd,IAA8B;QAE9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,CAAC,OAAO,CAAC,IAAI,kCAAkC;gBACjF,8CAA8C,CACjD,CAAC;QACJ,CAAC;QACD,IAAI,UAAkB,CAAC;QACvB,IAAI,MAAe,CAAC;QACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,UAAU,GAAG,IAAI,CAAC;YAClB,MAAM,GAAG,IAAe,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAI,CAAC;YACd,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;YACrD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CACb,8DAA8D;oBAC5D,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,0CAA0C;oBAChE,oEAAoE,CACvE,CAAC;YACJ,CAAC;YACD,UAAU,GAAG,OAAO,CAAC;QACvB,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,IAAI;YAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAmB,EAAE,MAAe;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;CACF;AA5FD,wCA4FC"}
@@ -0,0 +1,18 @@
1
+ import type { PrismaModelDelegate } from "./model";
2
+ import type { CursorPaginateOptions, CursorPaginatedResult } from "./types";
3
+ /**
4
+ * Cursor-paginate a Prisma model — O(1) deep pagination (no growing OFFSET),
5
+ * the efficient choice for infinite-scroll / large datasets.
6
+ *
7
+ * let res = await paginateCursor(prisma.post, { where }, { perPage: 20 });
8
+ * // next page:
9
+ * res = await paginateCursor(prisma.post, { where }, { perPage: 20, cursor: res.meta.nextCursor });
10
+ *
11
+ * `cursorField` must be unique & sequential (default `"id"`). The field is
12
+ * appended to the caller's `orderBy` so ordering is deterministic. No COUNT is
13
+ * ever issued. `direction: "backward"` sorts the cursor field descending.
14
+ *
15
+ * The `model` may be an authz-scoped delegate; scoping is preserved.
16
+ */
17
+ export declare function paginateCursor<T = any>(model: PrismaModelDelegate, args?: Record<string, any>, options?: CursorPaginateOptions<T>): Promise<CursorPaginatedResult<T>>;
18
+ //# sourceMappingURL=cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/paginate/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAG5E;;;;;;;;;;;;;GAaG;AACH,wBAAsB,cAAc,CAAC,CAAC,GAAG,GAAG,EAC1C,KAAK,EAAE,mBAAmB,EAC1B,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAC9B,OAAO,GAAE,qBAAqB,CAAC,CAAC,CAAM,GACrC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAqCnC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginateCursor = paginateCursor;
4
+ const transform_1 = require("./transform");
5
+ /**
6
+ * Cursor-paginate a Prisma model — O(1) deep pagination (no growing OFFSET),
7
+ * the efficient choice for infinite-scroll / large datasets.
8
+ *
9
+ * let res = await paginateCursor(prisma.post, { where }, { perPage: 20 });
10
+ * // next page:
11
+ * res = await paginateCursor(prisma.post, { where }, { perPage: 20, cursor: res.meta.nextCursor });
12
+ *
13
+ * `cursorField` must be unique & sequential (default `"id"`). The field is
14
+ * appended to the caller's `orderBy` so ordering is deterministic. No COUNT is
15
+ * ever issued. `direction: "backward"` sorts the cursor field descending.
16
+ *
17
+ * The `model` may be an authz-scoped delegate; scoping is preserved.
18
+ */
19
+ async function paginateCursor(model, args = {}, options = {}) {
20
+ const perPage = Number(options.perPage) || 10;
21
+ const field = options.cursorField ?? "id";
22
+ const dir = options.direction === "backward" ? "desc" : "asc";
23
+ const baseOrder = args.orderBy
24
+ ? Array.isArray(args.orderBy)
25
+ ? args.orderBy
26
+ : [args.orderBy]
27
+ : [];
28
+ const findArgs = {
29
+ ...args,
30
+ orderBy: [...baseOrder, { [field]: dir }],
31
+ take: perPage + 1,
32
+ };
33
+ const hasCursor = options.cursor !== undefined && options.cursor !== null;
34
+ if (hasCursor) {
35
+ findArgs.cursor = { [field]: options.cursor };
36
+ findArgs.skip = 1; // skip the cursor row itself
37
+ }
38
+ const rows = await model.findMany(findArgs);
39
+ const hasNext = rows.length > perPage;
40
+ const pageRows = hasNext ? rows.slice(0, perPage) : rows;
41
+ const last = pageRows[pageRows.length - 1];
42
+ return {
43
+ data: (0, transform_1.applyTransform)(pageRows, options),
44
+ meta: {
45
+ perPage,
46
+ nextCursor: hasNext && last ? String(last[field]) : null,
47
+ prevCursor: hasCursor ? String(options.cursor) : null,
48
+ hasNext,
49
+ hasPrev: hasCursor,
50
+ },
51
+ };
52
+ }
53
+ //# sourceMappingURL=cursor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/paginate/cursor.ts"],"names":[],"mappings":";;AAkBA,wCAyCC;AAzDD,2CAA6C;AAE7C;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,cAAc,CAClC,KAA0B,EAC1B,OAA4B,EAAE,EAC9B,UAAoC,EAAE;IAEtC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;QAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAC3B,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAClB,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,QAAQ,GAAwB;QACpC,GAAG,IAAI;QACP,OAAO,EAAE,CAAC,GAAG,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;QACzC,IAAI,EAAE,OAAO,GAAG,CAAC;KAClB,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IAC1E,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,6BAA6B;IAClD,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;IACtC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE3C,OAAO;QACL,IAAI,EAAE,IAAA,0BAAc,EAAI,QAAQ,EAAE,OAAO,CAAC;QAC1C,IAAI,EAAE;YACJ,OAAO;YACP,UAAU,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACxD,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;YACrD,OAAO;YACP,OAAO,EAAE,SAAS;SACnB;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { PaginatedResult, Pagination } from "./types";
2
+ /**
3
+ * Paginate an in-memory array (when you already hold the full result set, e.g.
4
+ * after an aggregation that can't be paged in SQL). Slices `data` to the page
5
+ * window and builds meta. Pass `count` if the true total differs from
6
+ * `data.length` (e.g. `data` is already a page).
7
+ */
8
+ export declare function getPaginatedResult<T>({ data, pagination, count, }: {
9
+ data: T[];
10
+ pagination: Pagination;
11
+ count?: string | number;
12
+ }): PaginatedResult<T>;
13
+ //# sourceMappingURL=in-memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.d.ts","sourceRoot":"","sources":["../../src/paginate/in-memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG3D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,EACpC,IAAI,EACJ,UAAU,EACV,KAAK,GACN,EAAE;IACD,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB,GAAG,eAAe,CAAC,CAAC,CAAC,CAWrB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPaginatedResult = getPaginatedResult;
4
+ const pagination_1 = require("./pagination");
5
+ /**
6
+ * Paginate an in-memory array (when you already hold the full result set, e.g.
7
+ * after an aggregation that can't be paged in SQL). Slices `data` to the page
8
+ * window and builds meta. Pass `count` if the true total differs from
9
+ * `data.length` (e.g. `data` is already a page).
10
+ */
11
+ function getPaginatedResult({ data, pagination, count, }) {
12
+ const { page, perPage } = pagination;
13
+ const total = Number(count ?? data.length) || 0;
14
+ const start = page > 1 ? (page - 1) * perPage : 0;
15
+ const slicedData = data.slice(start, start + perPage);
16
+ return {
17
+ data: slicedData,
18
+ meta: (0, pagination_1.buildMeta)({ page, perPage, total }),
19
+ };
20
+ }
21
+ //# sourceMappingURL=in-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory.js","sourceRoot":"","sources":["../../src/paginate/in-memory.ts"],"names":[],"mappings":";;AASA,gDAmBC;AA3BD,6CAAyC;AAEzC;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,EACpC,IAAI,EACJ,UAAU,EACV,KAAK,GAKN;IACC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC;IAEtD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,IAAA,sBAAS,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;KAC1C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,27 @@
1
+ export * from "./types";
2
+ export * from "./model";
3
+ export { paginate, paginator } from "./offset";
4
+ export { paginateCursor } from "./cursor";
5
+ export { getPagination, buildMeta } from "./pagination";
6
+ export { getPaginatedResult } from "./in-memory";
7
+ export { transformWithClass, applyTransform } from "./transform";
8
+ import type * as T from "./types";
9
+ /**
10
+ * Back-compat namespace mirroring the legacy `utils/paginator` export, so
11
+ * existing code only needs to change the import specifier:
12
+ *
13
+ * - import { PaginatorTypes } from "src/utilities/utils/paginator";
14
+ * + import { PaginatorTypes } from "@generazioneai/paginator";
15
+ *
16
+ * Prefer the top-level type exports (`PaginatedResult`, `Pagination`, …) in new code.
17
+ */
18
+ export declare namespace PaginatorTypes {
19
+ type PaginatedResult<X> = T.PaginatedResult<X>;
20
+ type PaginationMeta = T.PaginationMeta;
21
+ type Pagination = T.Pagination;
22
+ type PaginateOptions<X = any> = T.OffsetPaginateOptions<X>;
23
+ type CursorPaginateOptions<X = any> = T.CursorPaginateOptions<X>;
24
+ type CursorPaginatedResult<X> = T.CursorPaginatedResult<X>;
25
+ type CursorMeta = T.CursorMeta;
26
+ }
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/paginate/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,KAAK,KAAK,CAAC,MAAM,SAAS,CAAC;AAElC;;;;;;;;GAQG;AACH,yBAAiB,cAAc,CAAC;IAC9B,KAAY,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACtD,KAAY,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC;IAC9C,KAAY,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;IACtC,KAAY,eAAe,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAClE,KAAY,qBAAqB,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACxE,KAAY,qBAAqB,CAAC,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAClE,KAAY,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;CACvC"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.applyTransform = exports.transformWithClass = exports.getPaginatedResult = exports.buildMeta = exports.getPagination = exports.paginateCursor = exports.paginator = exports.paginate = void 0;
18
+ __exportStar(require("./types"), exports);
19
+ __exportStar(require("./model"), exports);
20
+ var offset_1 = require("./offset");
21
+ Object.defineProperty(exports, "paginate", { enumerable: true, get: function () { return offset_1.paginate; } });
22
+ Object.defineProperty(exports, "paginator", { enumerable: true, get: function () { return offset_1.paginator; } });
23
+ var cursor_1 = require("./cursor");
24
+ Object.defineProperty(exports, "paginateCursor", { enumerable: true, get: function () { return cursor_1.paginateCursor; } });
25
+ var pagination_1 = require("./pagination");
26
+ Object.defineProperty(exports, "getPagination", { enumerable: true, get: function () { return pagination_1.getPagination; } });
27
+ Object.defineProperty(exports, "buildMeta", { enumerable: true, get: function () { return pagination_1.buildMeta; } });
28
+ var in_memory_1 = require("./in-memory");
29
+ Object.defineProperty(exports, "getPaginatedResult", { enumerable: true, get: function () { return in_memory_1.getPaginatedResult; } });
30
+ var transform_1 = require("./transform");
31
+ Object.defineProperty(exports, "transformWithClass", { enumerable: true, get: function () { return transform_1.transformWithClass; } });
32
+ Object.defineProperty(exports, "applyTransform", { enumerable: true, get: function () { return transform_1.applyTransform; } });
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/paginate/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,0CAAwB;AACxB,mCAA+C;AAAtC,kGAAA,QAAQ,OAAA;AAAE,mGAAA,SAAS,OAAA;AAC5B,mCAA0C;AAAjC,wGAAA,cAAc,OAAA;AACvB,2CAAwD;AAA/C,2GAAA,aAAa,OAAA;AAAE,uGAAA,SAAS,OAAA;AACjC,yCAAiD;AAAxC,+GAAA,kBAAkB,OAAA;AAC3B,yCAAiE;AAAxD,+GAAA,kBAAkB,OAAA;AAAE,2GAAA,cAAc,OAAA"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Structural contract for a Prisma model delegate (e.g. `prisma.user`).
3
+ *
4
+ * Declared structurally so the library does not depend on a specific Prisma
5
+ * version or on `@prisma/client` at all — pass any object exposing `count`
6
+ * and `findMany`. Crucially, this is satisfied by an authz-SCOPED delegate too
7
+ * (the extended client returned by the authz Prisma extension), so pagination
8
+ * automatically respects row-level scoping.
9
+ */
10
+ export interface PrismaModelDelegate {
11
+ count(args?: {
12
+ where?: unknown;
13
+ }): Promise<number>;
14
+ findMany(args?: Record<string, any>): Promise<any[]>;
15
+ }
16
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/paginate/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;CACtD"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/paginate/model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,25 @@
1
+ import type { PrismaModelDelegate } from "./model";
2
+ import type { OffsetPaginateOptions, PaginatedResult } from "./types";
3
+ /**
4
+ * Offset-paginate a Prisma model.
5
+ *
6
+ * const res = await paginate(prisma.user, { where, orderBy }, { page, perPage });
7
+ * // → { data, meta: { total, lastPage, currentPage, perPage, prev, next, hasPrev, hasNext } }
8
+ *
9
+ * Efficiency:
10
+ * - COUNT and findMany run in parallel.
11
+ * - `withTotal: false` SKIPS the COUNT entirely (fetches `perPage + 1` to know
12
+ * `hasNext`) — much cheaper on large tables.
13
+ * - `page <= 0` returns ALL rows (no LIMIT, no meta) — back-compat with the
14
+ * legacy paginator's "page 0 = everything" behavior.
15
+ *
16
+ * The `model` may be an authz-scoped delegate; scoping is preserved.
17
+ */
18
+ export declare function paginate<T = any>(model: PrismaModelDelegate, args?: Record<string, any>, options?: OffsetPaginateOptions<T>): Promise<PaginatedResult<T>>;
19
+ /**
20
+ * Legacy-compatible factory: `paginator(options)(model, args)`. Equivalent to
21
+ * `(model, args) => paginate(model, args, options)`. Drop-in replacement for
22
+ * the old `utils/paginator` `paginator(...)` export.
23
+ */
24
+ export declare function paginator<T = any>(options?: OffsetPaginateOptions<T>): (model: PrismaModelDelegate, args?: Record<string, any>) => Promise<PaginatedResult<T>>;
25
+ //# sourceMappingURL=offset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offset.d.ts","sourceRoot":"","sources":["../../src/paginate/offset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAetE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,QAAQ,CAAC,CAAC,GAAG,GAAG,EACpC,KAAK,EAAE,mBAAmB,EAC1B,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAC9B,OAAO,GAAE,qBAAqB,CAAC,CAAC,CAAM,GACrC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAwC7B;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,OAAO,GAAE,qBAAqB,CAAC,CAAC,CAAM,IAErE,OAAO,mBAAmB,EAC1B,OAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,KAC7B,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAC/B"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginate = paginate;
4
+ exports.paginator = paginator;
5
+ const transform_1 = require("./transform");
6
+ const pagination_1 = require("./pagination");
7
+ /** Append tie-breaker field(s) (`asc`) to the caller's orderBy for stable paging. */
8
+ function withTieBreaker(orderBy, tieBreaker) {
9
+ if (!tieBreaker || orderBy === undefined)
10
+ return orderBy;
11
+ const fields = Array.isArray(tieBreaker) ? tieBreaker : [tieBreaker];
12
+ const base = Array.isArray(orderBy) ? orderBy : [orderBy];
13
+ return [...base, ...fields.map((f) => ({ [f]: "asc" }))];
14
+ }
15
+ /**
16
+ * Offset-paginate a Prisma model.
17
+ *
18
+ * const res = await paginate(prisma.user, { where, orderBy }, { page, perPage });
19
+ * // → { data, meta: { total, lastPage, currentPage, perPage, prev, next, hasPrev, hasNext } }
20
+ *
21
+ * Efficiency:
22
+ * - COUNT and findMany run in parallel.
23
+ * - `withTotal: false` SKIPS the COUNT entirely (fetches `perPage + 1` to know
24
+ * `hasNext`) — much cheaper on large tables.
25
+ * - `page <= 0` returns ALL rows (no LIMIT, no meta) — back-compat with the
26
+ * legacy paginator's "page 0 = everything" behavior.
27
+ *
28
+ * The `model` may be an authz-scoped delegate; scoping is preserved.
29
+ */
30
+ async function paginate(model, args = {}, options = {}) {
31
+ const page = Number(options.page) || 0;
32
+ const perPage = Number(options.perPage) || 10;
33
+ const tieBreaker = options.orderByTieBreaker ?? options.orderByTieBreakerPropertyName;
34
+ const orderBy = withTieBreaker(args.orderBy, tieBreaker);
35
+ const withTotal = options.withTotal !== false;
36
+ // page <= 0 → return everything (no pagination, no meta).
37
+ if (page <= 0) {
38
+ const rows = await model.findMany({ ...args, orderBy });
39
+ return { data: (0, transform_1.applyTransform)(rows, options) };
40
+ }
41
+ const skip = perPage * (page - 1);
42
+ if (withTotal) {
43
+ const [total, rows] = await Promise.all([
44
+ model.count({ where: args.where }),
45
+ model.findMany({ ...args, orderBy, take: perPage, skip }),
46
+ ]);
47
+ return {
48
+ data: (0, transform_1.applyTransform)(rows, options),
49
+ meta: (0, pagination_1.buildMeta)({ page, perPage, total }),
50
+ };
51
+ }
52
+ // Count-less: fetch one extra row to determine hasNext without a COUNT query.
53
+ const rows = await model.findMany({
54
+ ...args,
55
+ orderBy,
56
+ take: perPage + 1,
57
+ skip,
58
+ });
59
+ const hasNext = rows.length > perPage;
60
+ const pageRows = hasNext ? rows.slice(0, perPage) : rows;
61
+ return {
62
+ data: (0, transform_1.applyTransform)(pageRows, options),
63
+ meta: (0, pagination_1.buildMeta)({ page, perPage, hasNext }),
64
+ };
65
+ }
66
+ /**
67
+ * Legacy-compatible factory: `paginator(options)(model, args)`. Equivalent to
68
+ * `(model, args) => paginate(model, args, options)`. Drop-in replacement for
69
+ * the old `utils/paginator` `paginator(...)` export.
70
+ */
71
+ function paginator(options = {}) {
72
+ return (model, args = {}) => paginate(model, args, options);
73
+ }
74
+ //# sourceMappingURL=offset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offset.js","sourceRoot":"","sources":["../../src/paginate/offset.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { Pagination, PaginationMeta } from "./types";
2
+ /**
3
+ * Normalize raw page/perPage (possibly strings, possibly missing) into a
4
+ * `{ page, perPage, skip }` triple. Page defaults to 1, perPage to 10.
5
+ */
6
+ export declare function getPagination(rawPage?: number | string, rawPerPage?: number | string): Pagination;
7
+ /**
8
+ * Build offset pagination meta. Pass `total` for full meta (lastPage/next from
9
+ * the count), or omit it (with `hasNext`) for the count-less mode.
10
+ */
11
+ export declare function buildMeta(args: {
12
+ page: number;
13
+ perPage: number;
14
+ total?: number;
15
+ /** Used only when `total` is undefined (count-less mode). */
16
+ hasNext?: boolean;
17
+ }): PaginationMeta;
18
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/paginate/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE1D;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EACzB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAC3B,UAAU,CAKZ;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,cAAc,CA6BjB"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPagination = getPagination;
4
+ exports.buildMeta = buildMeta;
5
+ /**
6
+ * Normalize raw page/perPage (possibly strings, possibly missing) into a
7
+ * `{ page, perPage, skip }` triple. Page defaults to 1, perPage to 10.
8
+ */
9
+ function getPagination(rawPage, rawPerPage) {
10
+ const page = Number(rawPage ?? 1) || 1;
11
+ const perPage = Number(rawPerPage ?? 10) || 10;
12
+ const skip = page > 0 ? perPage * (page - 1) : 0;
13
+ return { page, perPage, skip };
14
+ }
15
+ /**
16
+ * Build offset pagination meta. Pass `total` for full meta (lastPage/next from
17
+ * the count), or omit it (with `hasNext`) for the count-less mode.
18
+ */
19
+ function buildMeta(args) {
20
+ const { page, perPage } = args;
21
+ const hasPrev = page > 1;
22
+ if (args.total === undefined) {
23
+ const hasNext = !!args.hasNext;
24
+ return {
25
+ currentPage: page,
26
+ perPage,
27
+ prev: hasPrev ? page - 1 : null,
28
+ next: hasNext ? page + 1 : null,
29
+ hasPrev,
30
+ hasNext,
31
+ };
32
+ }
33
+ const total = args.total;
34
+ const lastPage = Math.max(1, Math.ceil(total / perPage));
35
+ const hasNext = page < lastPage;
36
+ return {
37
+ total,
38
+ lastPage,
39
+ currentPage: page,
40
+ perPage,
41
+ prev: hasPrev ? page - 1 : null,
42
+ next: hasNext ? page + 1 : null,
43
+ hasPrev,
44
+ hasNext,
45
+ };
46
+ }
47
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/paginate/pagination.ts"],"names":[],"mappings":";;AAMA,sCAQC;AAMD,8BAmCC;AArDD;;;GAGG;AACH,SAAgB,aAAa,CAC3B,OAAyB,EACzB,UAA4B;IAE5B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,IAMzB;IACC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC;IAEzB,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC/B,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,OAAO;YACP,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;YAC/B,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;YAC/B,OAAO;YACP,OAAO;SACR,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,GAAG,QAAQ,CAAC;IAChC,OAAO;QACL,KAAK;QACL,QAAQ;QACR,WAAW,EAAE,IAAI;QACjB,OAAO;QACP,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/B,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/B,OAAO;QACP,OAAO;KACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Optional class-transformer integration. `class-transformer` is an OPTIONAL
3
+ * peer dependency: it is required lazily, only when the `type` option is used,
4
+ * so consumers that pass `transform` (or nothing) never need it installed.
5
+ */
6
+ import type { BasePaginateOptions, Ctor } from "./types";
7
+ /**
8
+ * Map raw rows through an entity class: `plainToInstance` (drop unknown props,
9
+ * coerce types) then `instanceToPlain` (serialize, keeping unset fields). This
10
+ * mirrors the classic `transformResponse` helper used across the services.
11
+ */
12
+ export declare function transformWithClass<T>(cls: Ctor<T>, rows: any[]): T[];
13
+ /** Resolve the row mapper: `transform` wins over `type`; otherwise identity. */
14
+ export declare function applyTransform<T>(rows: any[], options: BasePaginateOptions<T>): T[];
15
+ //# sourceMappingURL=transform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../src/paginate/transform.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAqBzD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAOpE;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,CAAC,EAC9B,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,CAAC,EAAE,CAIL"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformWithClass = transformWithClass;
4
+ exports.applyTransform = applyTransform;
5
+ let cached;
6
+ function classTransformer() {
7
+ if (cached === undefined) {
8
+ try {
9
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
10
+ cached = require("class-transformer");
11
+ }
12
+ catch {
13
+ cached = null;
14
+ }
15
+ }
16
+ if (!cached) {
17
+ throw new Error("@generazioneai/paginator: the `type` option requires the optional peer " +
18
+ "dependency `class-transformer`. Install it, or use the `transform` option instead.");
19
+ }
20
+ return cached;
21
+ }
22
+ /**
23
+ * Map raw rows through an entity class: `plainToInstance` (drop unknown props,
24
+ * coerce types) then `instanceToPlain` (serialize, keeping unset fields). This
25
+ * mirrors the classic `transformResponse` helper used across the services.
26
+ */
27
+ function transformWithClass(cls, rows) {
28
+ const { plainToInstance, instanceToPlain } = classTransformer();
29
+ const instances = plainToInstance(cls, rows, {
30
+ excludeExtraneousValues: true,
31
+ enableImplicitConversion: true,
32
+ });
33
+ return instanceToPlain(instances, { exposeUnsetFields: true });
34
+ }
35
+ /** Resolve the row mapper: `transform` wins over `type`; otherwise identity. */
36
+ function applyTransform(rows, options) {
37
+ if (options.transform)
38
+ return options.transform(rows);
39
+ if (options.type)
40
+ return transformWithClass(options.type, rows);
41
+ return rows;
42
+ }
43
+ //# sourceMappingURL=transform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/paginate/transform.ts"],"names":[],"mappings":";;AA+BA,gDAOC;AAGD,wCAOC;AAzCD,IAAI,MAAW,CAAC;AAChB,SAAS,gBAAgB;IACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,8DAA8D;YAC9D,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,yEAAyE;YACvE,oFAAoF,CACvF,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAI,GAAY,EAAE,IAAW;IAC7D,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAChE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE;QAC3C,uBAAuB,EAAE,IAAI;QAC7B,wBAAwB,EAAE,IAAI;KAC/B,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,SAAS,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAQ,CAAC;AACxE,CAAC;AAED,gFAAgF;AAChF,SAAgB,cAAc,CAC5B,IAAW,EACX,OAA+B;IAE/B,IAAI,OAAO,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChE,OAAO,IAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Public types for @generazioneai/paginator.
3
+ *
4
+ * The library is framework-agnostic: it knows nothing about NestJS, your DI
5
+ * container, or your entity classes. It only needs a Prisma-style model
6
+ * delegate (see ./model) and, optionally, a `class-transformer` entity class.
7
+ */
8
+ /** A class constructor usable as a class-transformer target. */
9
+ export type Ctor<T> = new (...args: any[]) => T;
10
+ /** A custom row mapper. Takes the raw rows, returns the shaped output. */
11
+ export type TransformFn<T> = (rows: any[]) => T[];
12
+ /** Resolved offset pagination triple. */
13
+ export interface Pagination {
14
+ page: number;
15
+ perPage: number;
16
+ skip: number;
17
+ }
18
+ /** Meta attached to an offset-paginated result. */
19
+ export interface PaginationMeta {
20
+ /** Total rows matching the query (omitted when `withTotal: false`). */
21
+ total?: number;
22
+ /** Last page number (omitted when `withTotal: false`). */
23
+ lastPage?: number;
24
+ currentPage: number;
25
+ perPage: number;
26
+ /** Previous page number, or null on the first page. */
27
+ prev: number | null;
28
+ /** Next page number, or null when there is no next page. */
29
+ next: number | null;
30
+ hasPrev: boolean;
31
+ hasNext: boolean;
32
+ }
33
+ export interface PaginatedResult<T> {
34
+ data: T[];
35
+ /** Absent when `page <= 0` (the "return everything" mode). */
36
+ meta?: PaginationMeta;
37
+ }
38
+ /** Options shared by every paginate function. */
39
+ export interface BasePaginateOptions<T> {
40
+ /**
41
+ * class-transformer target class. When set, rows are mapped through
42
+ * `plainToInstance(cls, rows, { excludeExtraneousValues, enableImplicitConversion })`
43
+ * then `instanceToPlain(..., { exposeUnsetFields: true })`. Requires the
44
+ * optional peer dependency `class-transformer`.
45
+ */
46
+ type?: Ctor<T>;
47
+ /** Custom row mapper. Takes precedence over `type`. */
48
+ transform?: TransformFn<T>;
49
+ }
50
+ export interface OffsetPaginateOptions<T = any> extends BasePaginateOptions<T> {
51
+ /** 1-based page. `0`/undefined ⇒ return ALL rows (no pagination, no meta). */
52
+ page?: number | string;
53
+ /** Rows per page. Default `10`. */
54
+ perPage?: number | string;
55
+ /**
56
+ * When `false`, the COUNT query is SKIPPED — the paginator fetches `perPage + 1`
57
+ * rows and derives `hasNext` from that. `total`/`lastPage` are then omitted.
58
+ * Big win on large tables when the frontend only needs next/prev. Default `true`.
59
+ */
60
+ withTotal?: boolean;
61
+ /**
62
+ * Field name(s) appended `asc` to `orderBy` so ordering is deterministic
63
+ * across pages (avoids row drift / duplicates when the sort key has ties).
64
+ */
65
+ orderByTieBreaker?: string | string[];
66
+ /** @deprecated Back-compat alias of `orderByTieBreaker`. */
67
+ orderByTieBreakerPropertyName?: string;
68
+ }
69
+ /** Meta attached to a cursor-paginated result. */
70
+ export interface CursorMeta {
71
+ perPage: number;
72
+ /** Cursor to pass back to fetch the next page, or null when exhausted. */
73
+ nextCursor: string | null;
74
+ /** The cursor this page was fetched from, or null on the first page. */
75
+ prevCursor: string | null;
76
+ hasNext: boolean;
77
+ hasPrev: boolean;
78
+ }
79
+ export interface CursorPaginatedResult<T> {
80
+ data: T[];
81
+ meta: CursorMeta;
82
+ }
83
+ export interface CursorPaginateOptions<T = any> extends BasePaginateOptions<T> {
84
+ /** Rows per page. Default `10`. */
85
+ perPage?: number | string;
86
+ /** The cursor value (the `cursorField` of the last row of the previous page). */
87
+ cursor?: string | number | null;
88
+ /** Unique, sequential field used as the cursor. Default `"id"`. */
89
+ cursorField?: string;
90
+ /** Sort direction along the cursor field. Default `"forward"` (asc). */
91
+ direction?: "forward" | "backward";
92
+ }
93
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/paginate/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,gEAAgE;AAChE,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhD,0EAA0E;AAC1E,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;AAElD,yCAAyC;AACzC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,mDAAmD;AACnD,MAAM,WAAW,cAAc;IAC7B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,8DAA8D;IAC9D,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED,iDAAiD;AACjD,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACf,uDAAuD;IACvD,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC5E,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtC,4DAA4D;IAC5D,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,kDAAkD;AAClD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC5E,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,iFAAiF;IACjF,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAChC,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACpC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Public types for @generazioneai/paginator.
4
+ *
5
+ * The library is framework-agnostic: it knows nothing about NestJS, your DI
6
+ * container, or your entity classes. It only needs a Prisma-style model
7
+ * delegate (see ./model) and, optionally, a `class-transformer` entity class.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/paginate/types.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
package/dist/parsed.d.ts CHANGED
@@ -105,6 +105,8 @@ export type ParsedIncludeRelation = {
105
105
  } | {
106
106
  kind: "fields";
107
107
  fields: string[];
108
+ /** Nested relations to include recursively (multi-level include). */
109
+ relations?: Record<string, ParsedIncludeRelation>;
108
110
  };
109
111
  export type ParsedInclude = {
110
112
  kind: "none";
@@ -151,5 +153,19 @@ export interface ParsedQuery {
151
153
  include: ParsedInclude;
152
154
  select: ParsedSelect;
153
155
  pagination: ParsedPagination;
156
+ /**
157
+ * Server-side raw adapter args, merged by the adapter into the final query.
158
+ * NOT from the wire — set by the backend (e.g. a repository) to run native
159
+ * ORM filters/includes the DSL doesn't model, while still paginating through
160
+ * the engine. For Prisma: `{ where, orderBy, include, select }`. `where` is
161
+ * AND-merged with the parsed where; `orderBy`/`include`/`select` are used when
162
+ * the parsed query doesn't set them.
163
+ */
164
+ baseArgs?: {
165
+ where?: unknown;
166
+ orderBy?: unknown;
167
+ include?: unknown;
168
+ select?: unknown;
169
+ };
154
170
  }
155
171
  //# sourceMappingURL=parsed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parsed.d.ts","sourceRoot":"","sources":["../src/parsed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parsed.d.ts","sourceRoot":"","sources":["../src/parsed.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,MAAM,EAEZ,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAEV,aAAa,EAMd,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAWV,WAAW,EAIZ,MAAM,UAAU,CAAC;AAkoBlB,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW,CAwCb"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,MAAM,EAEZ,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAEV,aAAa,EAMd,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAWV,WAAW,EAIZ,MAAM,UAAU,CAAC;AAuqBlB,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW,CAwCb"}
package/dist/parser.js CHANGED
@@ -370,29 +370,49 @@ function parseInclude(raw, entity, schema, path) {
370
370
  if (relDef.includable === false) {
371
371
  throw new errors_1.QueryValidationError(`include: relation '${relName}' of '${entity.name}' is not includable`, `${path}.${relName}`);
372
372
  }
373
- if (spec === "all") {
374
- relations[relName] = { kind: "all" };
375
- continue;
376
- }
377
- if (!isPlainObject(spec)) {
378
- throw new errors_1.QueryValidationError(`include.${relName} must be 'all' or an object`, `${path}.${relName}`);
379
- }
380
- const targetEntity = (0, schema_1.getEntity)(schema, relDef.target);
381
- const fields = [];
382
- for (const [k, v] of Object.entries(spec)) {
383
- if (v !== true)
384
- continue;
385
- if (!targetEntity.fields[k]) {
386
- throw new errors_1.QueryValidationError(`include.${relName}.${k} is not a known field of '${targetEntity.name}'`, `${path}.${relName}.${k}`);
373
+ relations[relName] = parseRelationSpec(spec, (0, schema_1.getEntity)(schema, relDef.target), schema, `${path}.${relName}`);
374
+ }
375
+ return { kind: "map", relations };
376
+ }
377
+ /**
378
+ * Parse one relation's include spec, RECURSIVELY. A spec object's keys may be
379
+ * scalar fields of the target (value `true` → select that field) OR nested
380
+ * relations of the target (value `true`/"all"/object → include that relation,
381
+ * recursing). Enables multi-level includes (e.g. userSystemRoles → systemRole).
382
+ */
383
+ function parseRelationSpec(spec, entity, schema, path) {
384
+ if (spec === "all")
385
+ return { kind: "all" };
386
+ if (!isPlainObject(spec)) {
387
+ throw new errors_1.QueryValidationError(`${path} must be 'all' or an object`, path);
388
+ }
389
+ const fields = [];
390
+ const relations = {};
391
+ for (const [k, v] of Object.entries(spec)) {
392
+ const fieldDef = entity.fields[k];
393
+ const relDef = entity.relations?.[k];
394
+ if (fieldDef) {
395
+ if (v !== true) {
396
+ throw new errors_1.QueryValidationError(`${path}.${k}: field selection must be true`, `${path}.${k}`);
387
397
  }
388
- if (targetEntity.fields[k].selectable === false) {
389
- throw new errors_1.QueryValidationError(`include.${relName}.${k}: field of '${targetEntity.name}' is not selectable`, `${path}.${relName}.${k}`);
398
+ if (fieldDef.selectable === false) {
399
+ throw new errors_1.QueryValidationError(`${path}.${k}: field of '${entity.name}' is not selectable`, `${path}.${k}`);
390
400
  }
391
401
  fields.push(k);
392
402
  }
393
- relations[relName] = { kind: "fields", fields };
403
+ else if (relDef) {
404
+ if (relDef.includable === false) {
405
+ throw new errors_1.QueryValidationError(`${path}.${k}: relation of '${entity.name}' is not includable`, `${path}.${k}`);
406
+ }
407
+ relations[k] = parseRelationSpec(v === true ? "all" : v, (0, schema_1.getEntity)(schema, relDef.target), schema, `${path}.${k}`);
408
+ }
409
+ else {
410
+ throw new errors_1.QueryValidationError(`${path}.${k} is not a known field or relation of '${entity.name}'`, `${path}.${k}`);
411
+ }
394
412
  }
395
- return { kind: "map", relations };
413
+ return Object.keys(relations).length > 0
414
+ ? { kind: "fields", fields, relations }
415
+ : { kind: "fields", fields };
396
416
  }
397
417
  function parseShowFlag(raw, key, path) {
398
418
  if (raw === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -150,7 +150,7 @@ export interface OrderByObjectInput<TField extends string = string> {
150
150
  export type OrderByInput<T = unknown> = IsLoose<T> extends true ? string | OrderByObjectInput<string> : FieldKeysOf<T> & string extends infer F extends string ? F | OrderByObjectInput<F> : never;
151
151
  export type IncludeFieldSpec = boolean;
152
152
  export type IncludeRelationSpec<U = unknown> = IsLoose<U> extends true ? "all" | {
153
- [field: string]: IncludeFieldSpec;
153
+ [fieldOrRelation: string]: IncludeFieldSpec | IncludeRelationSpec;
154
154
  } : "all" | {
155
155
  [K in FieldKeysOf<U>]?: IncludeFieldSpec;
156
156
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "0.4.0",
6
+ "version": "0.7.1",
7
7
  "description": "ORM-agnostic JSON query language with pluggable adapters (TypeORM, Prisma)",
8
8
  "license": "BSD-3-Clause",
9
9
  "repository": {
@@ -42,6 +42,11 @@
42
42
  "types": "./dist/adapters/prisma/index.d.ts",
43
43
  "import": "./dist/adapters/prisma/index.js",
44
44
  "require": "./dist/adapters/prisma/index.js"
45
+ },
46
+ "./paginate": {
47
+ "types": "./dist/paginate/index.d.ts",
48
+ "import": "./dist/paginate/index.js",
49
+ "require": "./dist/paginate/index.js"
45
50
  }
46
51
  },
47
52
  "files": [
@@ -59,7 +64,8 @@
59
64
  },
60
65
  "peerDependencies": {
61
66
  "typeorm": ">=0.3.0",
62
- "@prisma/client": ">=5.0.0"
67
+ "@prisma/client": ">=5.0.0",
68
+ "class-transformer": ">=0.5.0"
63
69
  },
64
70
  "peerDependenciesMeta": {
65
71
  "typeorm": {
@@ -67,6 +73,9 @@
67
73
  },
68
74
  "@prisma/client": {
69
75
  "optional": true
76
+ },
77
+ "class-transformer": {
78
+ "optional": true
70
79
  }
71
80
  },
72
81
  "devDependencies": {
@@ -75,5 +84,18 @@
75
84
  "sqlite3": "^5.1.7",
76
85
  "typeorm": "^0.3.20",
77
86
  "typescript": "^5.4.0"
87
+ },
88
+ "typesVersions": {
89
+ "*": {
90
+ "paginate": [
91
+ "dist/paginate/index.d.ts"
92
+ ],
93
+ "prisma": [
94
+ "dist/adapters/prisma/index.d.ts"
95
+ ],
96
+ "typeorm": [
97
+ "dist/adapters/typeorm/index.d.ts"
98
+ ]
99
+ }
78
100
  }
79
101
  }