@smartive/graphql-magic 20.0.0 → 20.1.0-next.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 (48) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/README.md +0 -4
  3. package/dist/bin/gqm.cjs +16 -0
  4. package/dist/cjs/index.cjs +54 -37
  5. package/dist/esm/client/queries.d.ts +0 -1
  6. package/dist/esm/client/queries.js +0 -26
  7. package/dist/esm/client/queries.js.map +1 -1
  8. package/dist/esm/context.d.ts +2 -1
  9. package/dist/esm/models/model-definitions.d.ts +4 -1
  10. package/dist/esm/models/models.d.ts +5 -2
  11. package/dist/esm/models/models.js +1 -0
  12. package/dist/esm/models/models.js.map +1 -1
  13. package/dist/esm/models/mutation-hook.d.ts +8 -1
  14. package/dist/esm/resolvers/filters.js +10 -6
  15. package/dist/esm/resolvers/filters.js.map +1 -1
  16. package/dist/esm/resolvers/node.d.ts +1 -0
  17. package/dist/esm/resolvers/node.js +6 -1
  18. package/dist/esm/resolvers/node.js.map +1 -1
  19. package/dist/esm/resolvers/resolver.js +3 -0
  20. package/dist/esm/resolvers/resolver.js.map +1 -1
  21. package/dist/esm/resolvers/resolvers.js +5 -0
  22. package/dist/esm/resolvers/resolvers.js.map +1 -1
  23. package/dist/esm/resolvers/selects.js +7 -1
  24. package/dist/esm/resolvers/selects.js.map +1 -1
  25. package/dist/esm/resolvers/utils.js +5 -3
  26. package/dist/esm/resolvers/utils.js.map +1 -1
  27. package/dist/esm/schema/generate.js +17 -0
  28. package/dist/esm/schema/generate.js.map +1 -1
  29. package/dist/esm/utils/index.d.ts +1 -0
  30. package/dist/esm/utils/index.js +1 -0
  31. package/dist/esm/utils/index.js.map +1 -1
  32. package/eslint.config.mjs +1 -1
  33. package/package.json +2 -2
  34. package/src/client/queries.ts +0 -40
  35. package/src/context.ts +2 -1
  36. package/src/models/model-definitions.ts +2 -1
  37. package/src/models/models.ts +3 -1
  38. package/src/models/mutation-hook.ts +9 -1
  39. package/src/resolvers/filters.ts +10 -5
  40. package/src/resolvers/node.ts +8 -1
  41. package/src/resolvers/resolver.ts +4 -0
  42. package/src/resolvers/resolvers.ts +5 -0
  43. package/src/resolvers/selects.ts +13 -0
  44. package/src/resolvers/utils.ts +5 -3
  45. package/src/schema/generate.ts +18 -0
  46. package/src/utils/index.ts +1 -0
  47. package/tests/generated/db/index.ts +32 -0
  48. package/tsconfig.eslint.json +1 -0
@@ -60,6 +60,9 @@ const buildQuery = async (node, parentVerifiedPermissionStacks) => {
60
60
  return { query, verifiedPermissionStacks };
61
61
  };
62
62
  const applySubQueries = async (node, entries, parentVerifiedPermissionStacks) => {
63
+ if (node.isAggregate) {
64
+ return;
65
+ }
63
66
  if (!entries.length) {
64
67
  return;
65
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/resolvers/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/resolvers/resolver.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAmC,kBAAkB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC7H,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EACL,cAAc,EAEd,QAAQ,EAER,UAAU,EACV,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,OAAO,EACP,UAAU,GACX,MAAM,SAAS,CAAC;AAEjB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAY,EAAE,KAAU,EAAE,GAAY,EAAE,IAAwB,EAAE,EAAE,CAChG,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,cAAc,EAAE,EAAE,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,GAAgB,EAAE,EAAW,EAAE,EAAE;IAC7D,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrF,MAAM,kBAAkB,GAAG,GAAG,CAC5B,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,EAC7G,SAAS,CACV,CAAC;IACF,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC5B,GAAG;QACH,IAAI,EAAE,SAAS;QACf,kBAAkB;KACnB,CAAC,CAAC;IACH,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;IAEnE,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,EAAE,EAAE,CAAC;QACP,KAAK,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC;IAExB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAE/B,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAE3D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACZ,MAAM,IAAI,aAAa,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC,CAAC;AAIF,MAAM,UAAU,GAAG,KAAK,EACtB,IAAuB,EACvB,8BAAyD,EACkC,EAAE;IAC7F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEpH,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACjC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG;QACb,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAA4B;QACrE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,CAA4B,CAAC;KACpG,CAAC;IAEF,MAAM,wBAAwB,GAA6B,EAAE,CAAC;IAC9D,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QACpC,MAAM,uBAAuB,GAAG,gBAAgB,CAC9C,IAAI,CAAC,GAAG,EACR,KAAK,EACL,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAChC,KAAK,EACL,MAAM,EACN,8BAA8B,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAC5E,CAAC;QAEF,IAAI,OAAO,uBAAuB,KAAK,SAAS,EAAE,CAAC;YACjD,wBAAwB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC;AAC7C,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAC3B,IAAkB,EAClB,OAAgB,EAChB,8BAAwD,EACzC,EAAE;IACjB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YAClC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,CAAC;QACpC,CAAC;QACD,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAErC,cAAc;IACd,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;QACtG,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACzE,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAC7B,KAAK;aACF,KAAK,EAAE;aACP,MAAM,CAAC,GAAG,eAAe,IAAI,UAAU,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;aAChF,KAAK,CAAC,EAAE,CAAC,GAAG,eAAe,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CACvD,CAAC;QAEF,iDAAiD;QACjD,kFAAkF;QAClF,MAAM,WAAW,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE/C,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,UAAU,CAAW,CAAC,EAAE,CAAC;gBAC7D,IAAI,MAAM,EAAE,CAAC;oBACV,KAAK,CAAC,SAAS,CAAa,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,eAAe,CACnB,OAAO,EACP,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;YAElC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAY,CAAC;QACrE,CAAC,CAAC,CACH,EACD,wBAAwB,CACzB,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,8BAA8B,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,8BAA8B,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,eAAe,CACnB,OAAO,EACP,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EACnF,8BAA8B,CAC/B,CAAC;IACJ,CAAC;AACH,CAAC,CAAC"}
@@ -17,6 +17,11 @@ export const getResolvers = (models) => {
17
17
  .map((model) => ({
18
18
  [model.pluralField]: queryResolver,
19
19
  })),
20
+ ...models.entities
21
+ .filter(({ aggregatable }) => aggregatable)
22
+ .map((model) => ({
23
+ [`${model.pluralField}_AGGREGATE`]: queryResolver,
24
+ })),
20
25
  ]),
21
26
  };
22
27
  const mutations = [
@@ -1 +1 @@
1
- {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../src/resolvers/resolvers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,MAAM,SAAS,GAAwB;QACrC,KAAK,EAAE,KAAK,CAAC;YACX;gBACE,EAAE,EAAE,aAAa;aAClB;YACD,GAAG,MAAM,CAAC,QAAQ;iBACf,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;iBACpC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACf,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,aAAa;aACzC,CAAC,CAAC;YACL,GAAG,MAAM,CAAC,QAAQ;iBACf,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC;iBAC5C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACf,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,aAAa;aACnC,CAAC,CAAC;SACN,CAAC;KACH,CAAC;IACF,MAAM,SAAS,GAAG;QAChB,GAAG,MAAM,CAAC,QAAQ;aACf,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aACxB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;aACpC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,gBAAgB;SAC1C,CAAC,CAAC;QACL,GAAG,MAAM,CAAC,QAAQ;aACf,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aACxB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;aACpC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,gBAAgB;SAC1C,CAAC,CAAC;QACL,GAAG,MAAM,CAAC,QAAQ;aACf,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aACxB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC;aACpC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACf,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,gBAAgB;YACzC,CAAC,UAAU,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,gBAAgB;SAC3C,CAAC,CAAC;KACN,CAAC;IAEF,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACrB,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAU,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;YACtB,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI;SAClC,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC"}
1
+ {"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../src/resolvers/resolvers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
- import { ID_ALIAS, TYPE_ALIAS, addJoin, getFragmentSpreads, getInlineFragments, getJoins, getNameOrAlias, getSimpleFields, } from '.';
1
+ import { ID_ALIAS, TYPE_ALIAS, addJoin, getFragmentSpreads, getInlineFragments, getJoins, getNameOrAlias, getSimpleFields, isFieldNode, } from '.';
2
2
  import { PermissionError, UserInputError, getRole } from '..';
3
3
  export const applySelects = (node, query, joins) => {
4
+ if (node.isAggregate) {
5
+ void query.select(node.selectionSet
6
+ .filter(isFieldNode)
7
+ .map((field) => node.ctx.knex.raw(`COUNT(*) as ??`, [`${node.ctx.aliases.getShort(node.resultAlias)}__${getNameOrAlias(field)}`])));
8
+ return;
9
+ }
4
10
  // Simple field selects
5
11
  void query.select(...[
6
12
  { tableAlias: node.rootTableAlias, resultAlias: node.resultAlias, field: 'id', fieldAlias: ID_ALIAS },
@@ -1 +1 @@
1
- {"version":3,"file":"selects.js","sourceRoot":"","sources":["../../../src/resolvers/selects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selects.js","sourceRoot":"","sources":["../../../src/resolvers/selects.ts"],"names":[],"mappings":"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"}
@@ -44,9 +44,11 @@ export function hydrate(node, raw) {
44
44
  for (let i = 0; i < allParts.length - 1; i++) {
45
45
  const part = allParts[i];
46
46
  if (!current[part]) {
47
- const idField = [node.ctx.aliases.getShort(allParts.slice(0, i + 1).join('__')), ID_ALIAS].join('__');
48
- if (!entry[idField]) {
49
- continue outer;
47
+ if (!node.isAggregate) {
48
+ const idField = [node.ctx.aliases.getShort(allParts.slice(0, i + 1).join('__')), ID_ALIAS].join('__');
49
+ if (!entry[idField]) {
50
+ continue outer;
51
+ }
50
52
  }
51
53
  current[part] = {};
52
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/resolvers/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/resolvers/utils.ts"],"names":[],"mappings":"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"}
@@ -125,6 +125,9 @@ export const generateDefinitions = ({ scalars, rawEnums, enums, inputs, interfac
125
125
  list: field.list,
126
126
  })));
127
127
  }
128
+ if (model.aggregatable) {
129
+ types.push(object(`${model.name}Aggregate`, [{ name: 'COUNT', type: 'Int' }]));
130
+ }
128
131
  }
129
132
  return types;
130
133
  }),
@@ -162,6 +165,20 @@ export const generateDefinitions = ({ scalars, rawEnums, enums, inputs, interfac
162
165
  : []),
163
166
  { name: 'limit', type: 'Int' },
164
167
  { name: 'offset', type: 'Int' },
168
+ ...((model.listQueriable && model.listQueriable !== true && model.listQueriable.args) || []),
169
+ ],
170
+ })),
171
+ ...entities
172
+ .filter(({ aggregatable }) => aggregatable)
173
+ .map((model) => ({
174
+ name: `${model.pluralField}_AGGREGATE`,
175
+ type: `${model.name}Aggregate`,
176
+ nonNull: true,
177
+ args: [
178
+ { name: 'where', type: `${model.name}Where` },
179
+ ...(model.fields.some(({ searchable }) => searchable) ? [{ name: 'search', type: 'String' }] : []),
180
+ { name: 'limit', type: 'Int' },
181
+ { name: 'offset', type: 'Int' },
165
182
  ],
166
183
  })),
167
184
  ...objects.filter((model) => model.name === 'Query').flatMap((model) => model.fields),
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/schema/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/schema/generate.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export * from './dates';
2
+ export * from './rules';
@@ -1,3 +1,4 @@
1
1
  // created from 'create-ts-index'
2
2
  export * from './dates';
3
+ export * from './rules';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
package/eslint.config.mjs CHANGED
@@ -4,7 +4,7 @@ import tsParser from "@typescript-eslint/parser";
4
4
  export default [
5
5
  ...config('typescript'),
6
6
  {
7
- files: ['src/**/*.ts'],
7
+ files: ['src/**/*.ts', 'tests/**/*.ts'],
8
8
  languageOptions: {
9
9
  parser: tsParser,
10
10
  ecmaVersion: 5,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartive/graphql-magic",
3
- "version": "20.0.0",
3
+ "version": "20.1.0-next.1",
4
4
  "description": "",
5
5
  "source": "src/index.ts",
6
6
  "type": "module",
@@ -15,7 +15,7 @@
15
15
  "bootstrap": "npm ci && npm run generate",
16
16
  "generate": "npm run generate:index-files && npm run build:bin && npm run generate:gqm-stuff && npm run generate:setup-migration",
17
17
  "generate:index-files": "cti create ./src --excludes bin --withoutbackup",
18
- "generate:gqm-stuff": "npx gqm generate && eslint tests/generated --fix",
18
+ "generate:gqm-stuff": "npx gqm generate",
19
19
  "generate:setup-migration": "npm run build:bin && npx gqm generate-migration setup 20230912185644",
20
20
  "lint": "eslint src/**/*.ts",
21
21
  "lint:fix": "eslint src --fix",
@@ -43,46 +43,6 @@ export const fieldIsSearchable = (model: EntityModel, fieldName: string) => {
43
43
  return displayField.searchable;
44
44
  };
45
45
 
46
- export const getSelectEntityRelationsQuery = (model: EntityModel, relationNames: string[]) => {
47
- const relations = relationNames.map((name) => model.getRelation(name));
48
-
49
- return (
50
- !!relations.length &&
51
- `query Select${model.name}Relations(${relations
52
- .map(
53
- (relation) =>
54
- `$${relation.name}Where: ${relation.targetModel.name}Where, $${relation.name}Limit: Int${
55
- fieldIsSearchable(model, relation.name) ? `, $${relation.name}Search: String` : ''
56
- }`,
57
- )
58
- .join(', ')}) {
59
- ${relations
60
- .map((relation) => {
61
- let filters = '';
62
-
63
- if (relation.targetModel.displayField) {
64
- const displayField = relation.targetModel.fieldsByName[relation.targetModel.displayField];
65
- if ('orderable' in displayField && displayField.orderable) {
66
- filters += `, orderBy: [{ ${relation.targetModel.displayField}: ASC }]`;
67
- }
68
- }
69
-
70
- if (fieldIsSearchable(model, relation.name)) {
71
- filters += `, search: $${relation.name}Search`;
72
- }
73
-
74
- return `${relation.name}: ${relation.targetModel.pluralField}(where: $${relation.name}Where, limit: $${
75
- relation.name
76
- }Limit${filters}) {
77
- id
78
- display: ${relation.targetModel.displayField || 'id'}
79
- }`;
80
- })
81
- .join(' ')}
82
- }`
83
- );
84
- };
85
-
86
46
  export const getManyToManyRelationsQuery = (
87
47
  model: Model,
88
48
  action: 'create' | 'update',
package/src/context.ts CHANGED
@@ -2,7 +2,7 @@ import { DocumentNode, GraphQLResolveInfo } from 'graphql';
2
2
  import { IncomingMessage } from 'http';
3
3
  import { Knex } from 'knex';
4
4
  import { Models } from './models/models';
5
- import { MutationHook } from './models/mutation-hook';
5
+ import { MutationHook, QueryHook } from './models/mutation-hook';
6
6
  import { Permissions } from './permissions/generate';
7
7
  import { AliasGenerator } from './resolvers/utils';
8
8
  import { AnyDateType } from './utils';
@@ -22,6 +22,7 @@ export type Context<DateType extends AnyDateType = AnyDateType> = {
22
22
  models: Models;
23
23
  permissions: Permissions;
24
24
  mutationHook?: MutationHook<DateType>;
25
+ queryHook?: QueryHook<DateType>;
25
26
  };
26
27
 
27
28
  export type FullContext = Context & {
@@ -140,7 +140,7 @@ export type ModelDefinition = {
140
140
  parent?: string;
141
141
  interfaces?: readonly string[];
142
142
  queriable?: boolean;
143
- listQueriable?: boolean;
143
+ listQueriable?: boolean | { args?: readonly Field[] };
144
144
  creatable?: boolean | { createdBy?: Partial<RelationFieldDefinition>; createdAt?: Partial<DateTimeFieldDefinition> };
145
145
  updatable?: boolean | { updatedBy?: Partial<RelationFieldDefinition>; updatedAt?: Partial<DateTimeFieldDefinition> };
146
146
  deletable?:
@@ -150,6 +150,7 @@ export type ModelDefinition = {
150
150
  deletedBy?: Partial<RelationFieldDefinition>;
151
151
  deletedAt?: Partial<DateTimeFieldDefinition>;
152
152
  };
153
+ aggregatable?: boolean;
153
154
  displayField?: string;
154
155
  defaultOrderBy?: OrderBy[];
155
156
  fields: EntityFieldDefinition[];
@@ -7,6 +7,7 @@ import { isRelation } from '.';
7
7
  import {
8
8
  CustomFieldDefinition,
9
9
  EnumFieldDefinition,
10
+ Field,
10
11
  FloatFieldDefinition,
11
12
  IDFieldDefinition,
12
13
  InputModelDefinition,
@@ -334,7 +335,7 @@ export class EntityModel extends Model {
334
335
  parent?: string;
335
336
  interfaces?: string[];
336
337
  queriable?: boolean;
337
- listQueriable?: boolean;
338
+ listQueriable?: boolean | { args?: readonly Field[] };
338
339
  creatable?: boolean | { createdBy?: Partial<RelationFieldDefinition>; createdAt?: Partial<DateTimeFieldDefinition> };
339
340
  updatable?: boolean | { updatedBy?: Partial<RelationFieldDefinition>; updatedAt?: Partial<DateTimeFieldDefinition> };
340
341
  deletable?:
@@ -344,6 +345,7 @@ export class EntityModel extends Model {
344
345
  deletedBy?: Partial<RelationFieldDefinition>;
345
346
  deletedAt?: Partial<DateTimeFieldDefinition>;
346
347
  };
348
+ aggregatable?: boolean;
347
349
  displayField?: string;
348
350
  defaultOrderBy?: OrderBy[];
349
351
  fields: EntityField[];
@@ -1,4 +1,5 @@
1
- import { AnyDateType, Context } from '..';
1
+ import { Knex } from 'knex';
2
+ import { AnyDateType, Context, NormalizedArguments } from '..';
2
3
  import { EntityModel } from './models';
3
4
 
4
5
  export type Entity = Record<string, unknown>;
@@ -20,3 +21,10 @@ export type MutationHook<DateType extends AnyDateType = AnyDateType> = (args: {
20
21
  data: { prev: Entity; input: Entity; normalizedInput: Entity; next: Entity };
21
22
  ctx: MutationContext<DateType>;
22
23
  }) => Promise<void> | void;
24
+
25
+ export type QueryHook<DateType extends AnyDateType = AnyDateType> = (args: {
26
+ model: EntityModel;
27
+ query: Knex.QueryBuilder;
28
+ args: NormalizedArguments;
29
+ ctx: Context<DateType>;
30
+ }) => Promise<void> | void;
@@ -23,15 +23,20 @@ export type FilterNode = {
23
23
 
24
24
  export const applyFilters = (node: FieldResolverNode, query: Knex.QueryBuilder, joins: Joins) => {
25
25
  const normalizedArguments = normalizeArguments(node);
26
- if (!normalizedArguments.orderBy) {
27
- if (node.model.defaultOrderBy) {
28
- normalizedArguments.orderBy = node.model.defaultOrderBy;
29
- } else if (node.model.creatable) {
30
- normalizedArguments.orderBy = [{ createdAt: 'DESC' }];
26
+ // No need for default order by in aggregates
27
+ if (!node.isAggregate) {
28
+ if (!normalizedArguments.orderBy) {
29
+ if (node.model.defaultOrderBy) {
30
+ normalizedArguments.orderBy = node.model.defaultOrderBy;
31
+ } else if (node.model.creatable) {
32
+ normalizedArguments.orderBy = [{ createdAt: 'DESC' }];
33
+ }
31
34
  }
32
35
  }
33
36
  const { limit, offset, orderBy, where, search } = normalizedArguments;
34
37
 
38
+ void node.ctx.queryHook?.({ model: node.model, query, args: normalizedArguments, ctx: node.ctx });
39
+
35
40
  if (limit) {
36
41
  query.limit(limit);
37
42
  }
@@ -38,6 +38,8 @@ export type ResolverNode = {
38
38
  typeDefinition: ObjectTypeDefinitionNode;
39
39
 
40
40
  selectionSet: readonly SelectionNode[];
41
+
42
+ isAggregate: boolean;
41
43
  };
42
44
 
43
45
  export type FieldResolverNode = ResolverNode & {
@@ -86,6 +88,7 @@ export const getResolverNode = ({
86
88
  baseModel: ctx.models.entities.find((model) => model.name === baseTypeDefinition.name.value),
87
89
  typeDefinition: getType(ctx.info.schema, typeName),
88
90
  selectionSet: get(node.selectionSet, 'selections'),
91
+ isAggregate: false,
89
92
  };
90
93
  };
91
94
 
@@ -102,7 +105,9 @@ export const getRootFieldNode = ({
102
105
  const fieldDefinition = summonByKey(baseTypeDefinition.fields || [], 'name.value', fieldName);
103
106
 
104
107
  const typeName = getTypeName(fieldDefinition.type);
105
- const model = ctx.models.getModel(typeName, 'entity');
108
+ const isAggregate = typeName.endsWith('Aggregate');
109
+ const modelName = typeName.replace('Aggregate', '');
110
+ const model = ctx.models.getModel(modelName, 'entity');
106
111
  const rootModel = model.parent ? ctx.models.getModel(model.parent, 'entity') : model;
107
112
 
108
113
  return {
@@ -122,6 +127,7 @@ export const getRootFieldNode = ({
122
127
  field: node,
123
128
  fieldDefinition,
124
129
  isList: isListType(fieldDefinition.type),
130
+ isAggregate,
125
131
  };
126
132
  };
127
133
 
@@ -215,6 +221,7 @@ export const getJoins = (node: ResolverNode, toMany: boolean) => {
215
221
  relation,
216
222
  foreignKey: relation.field.foreignKey,
217
223
  isList: isListType(fieldDefinition.type),
224
+ isAggregate: false,
218
225
  });
219
226
  }
220
227
 
@@ -114,6 +114,10 @@ const applySubQueries = async (
114
114
  entries: Entry[],
115
115
  parentVerifiedPermissionStacks: VerifiedPermissionStacks,
116
116
  ): Promise<void> => {
117
+ if (node.isAggregate) {
118
+ return;
119
+ }
120
+
117
121
  if (!entries.length) {
118
122
  return;
119
123
  }
@@ -19,6 +19,11 @@ export const getResolvers = (models: Models) => {
19
19
  .map((model) => ({
20
20
  [model.pluralField]: queryResolver,
21
21
  })),
22
+ ...models.entities
23
+ .filter(({ aggregatable }) => aggregatable)
24
+ .map((model) => ({
25
+ [`${model.pluralField}_AGGREGATE`]: queryResolver,
26
+ })),
22
27
  ]),
23
28
  };
24
29
  const mutations = [
@@ -10,10 +10,23 @@ import {
10
10
  getJoins,
11
11
  getNameOrAlias,
12
12
  getSimpleFields,
13
+ isFieldNode,
13
14
  } from '.';
14
15
  import { PermissionError, UserInputError, getRole } from '..';
15
16
 
16
17
  export const applySelects = (node: ResolverNode, query: Knex.QueryBuilder, joins: Joins) => {
18
+ if (node.isAggregate) {
19
+ void query.select(
20
+ node.selectionSet
21
+ .filter(isFieldNode)
22
+ .map((field) =>
23
+ node.ctx.knex.raw(`COUNT(*) as ??`, [`${node.ctx.aliases.getShort(node.resultAlias)}__${getNameOrAlias(field)}`]),
24
+ ),
25
+ );
26
+
27
+ return;
28
+ }
29
+
17
30
  // Simple field selects
18
31
  void query.select(
19
32
  ...[
@@ -82,9 +82,11 @@ export function hydrate<T extends Entry>(
82
82
  const part = allParts[i];
83
83
 
84
84
  if (!current[part]) {
85
- const idField = [node.ctx.aliases.getShort(allParts.slice(0, i + 1).join('__')), ID_ALIAS].join('__');
86
- if (!entry[idField]) {
87
- continue outer;
85
+ if (!node.isAggregate) {
86
+ const idField = [node.ctx.aliases.getShort(allParts.slice(0, i + 1).join('__')), ID_ALIAS].join('__');
87
+ if (!entry[idField]) {
88
+ continue outer;
89
+ }
88
90
  }
89
91
  current[part] = {};
90
92
  }
@@ -167,6 +167,10 @@ export const generateDefinitions = ({
167
167
  ),
168
168
  );
169
169
  }
170
+
171
+ if (model.aggregatable) {
172
+ types.push(object(`${model.name}Aggregate`, [{ name: 'COUNT', type: 'Int' }]));
173
+ }
170
174
  }
171
175
 
172
176
  return types;
@@ -205,6 +209,20 @@ export const generateDefinitions = ({
205
209
  : []),
206
210
  { name: 'limit', type: 'Int' },
207
211
  { name: 'offset', type: 'Int' },
212
+ ...((model.listQueriable && model.listQueriable !== true && model.listQueriable.args) || []),
213
+ ],
214
+ })),
215
+ ...entities
216
+ .filter(({ aggregatable }) => aggregatable)
217
+ .map((model) => ({
218
+ name: `${model.pluralField}_AGGREGATE`,
219
+ type: `${model.name}Aggregate`,
220
+ nonNull: true,
221
+ args: [
222
+ { name: 'where', type: `${model.name}Where` },
223
+ ...(model.fields.some(({ searchable }) => searchable) ? [{ name: 'search', type: 'String' }] : []),
224
+ { name: 'limit', type: 'Int' },
225
+ { name: 'offset', type: 'Int' },
208
226
  ],
209
227
  })),
210
228
  ...objects.filter((model) => model.name === 'Query').flatMap((model) => model.fields),
@@ -1,3 +1,4 @@
1
1
  // created from 'create-ts-index'
2
2
 
3
3
  export * from './dates';
4
+ export * from './rules';
@@ -1,11 +1,43 @@
1
1
  import { DateTime } from 'luxon';
2
2
 
3
+ export type ID = string;
4
+
5
+ export type Boolean = boolean;
6
+
7
+ export type Upload = string;
8
+
9
+ export type Int = number;
10
+
11
+ export type Float = number;
12
+
13
+ export type String = string;
14
+
3
15
  export type SomeEnum = 'A' | 'B' | 'C';
4
16
 
5
17
  export type Role = 'ADMIN' | 'USER';
6
18
 
7
19
  export type ReactionType = 'Review' | 'Question' | 'Answer';
8
20
 
21
+ export type Order = 'ASC' | 'DESC';
22
+
23
+ export type Bird = Duck | Eagle;
24
+
25
+ export type SomeRawObject = {
26
+ 'field': string | null;
27
+ }
28
+
29
+ export type Duck = {
30
+ 'name': string | null;
31
+ }
32
+
33
+ export type Eagle = {
34
+ 'name': string | null;
35
+ }
36
+
37
+ export type Query = {
38
+ 'birds': Bird;
39
+ }
40
+
9
41
  export type User = {
10
42
  'id': string;
11
43
  'username': string | null;