@baseplate-dev/fastify-generators 0.5.0 → 0.5.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 (64) hide show
  1. package/dist/constants/fastify-packages.d.ts +1 -0
  2. package/dist/constants/fastify-packages.d.ts.map +1 -1
  3. package/dist/constants/fastify-packages.js +1 -0
  4. package/dist/constants/fastify-packages.js.map +1 -1
  5. package/dist/generators/core/app-module-setup/app-module-setup.generator.js +2 -2
  6. package/dist/generators/core/app-module-setup/app-module-setup.generator.js.map +1 -1
  7. package/dist/generators/core/fastify/fastify.generator.js +2 -1
  8. package/dist/generators/core/fastify/fastify.generator.js.map +1 -1
  9. package/dist/generators/core/fastify-cookie-context/fastify-cookie-context.generator.js +1 -1
  10. package/dist/generators/core/fastify-cookie-context/fastify-cookie-context.generator.js.map +1 -1
  11. package/dist/generators/index.d.ts +0 -1
  12. package/dist/generators/index.d.ts.map +1 -1
  13. package/dist/generators/index.js +0 -1
  14. package/dist/generators/index.js.map +1 -1
  15. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts.map +1 -1
  16. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js +2 -4
  17. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js.map +1 -1
  18. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts +27 -39
  19. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts.map +1 -1
  20. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js +28 -62
  21. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js.map +1 -1
  22. package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts +10 -0
  23. package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts.map +1 -1
  24. package/dist/generators/prisma/_shared/crud-method/primary-key-input.js +26 -0
  25. package/dist/generators/prisma/_shared/crud-method/primary-key-input.js.map +1 -1
  26. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/define-operations.ts +139 -75
  27. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/field-definitions.ts +77 -63
  28. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-utils.ts +4 -2
  29. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts.map +1 -1
  30. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js +6 -1
  31. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js.map +1 -1
  32. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.d.ts.map +1 -1
  33. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js +10 -9
  34. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js.map +1 -1
  35. package/package.json +5 -5
  36. package/dist/generators/email/fastify-postmark/fastify-postmark.generator.d.ts +0 -25
  37. package/dist/generators/email/fastify-postmark/fastify-postmark.generator.d.ts.map +0 -1
  38. package/dist/generators/email/fastify-postmark/fastify-postmark.generator.js +0 -66
  39. package/dist/generators/email/fastify-postmark/fastify-postmark.generator.js.map +0 -1
  40. package/dist/generators/email/fastify-postmark/generated/index.d.ts +0 -33
  41. package/dist/generators/email/fastify-postmark/generated/index.d.ts.map +0 -1
  42. package/dist/generators/email/fastify-postmark/generated/index.js +0 -9
  43. package/dist/generators/email/fastify-postmark/generated/index.js.map +0 -1
  44. package/dist/generators/email/fastify-postmark/generated/template-paths.d.ts +0 -12
  45. package/dist/generators/email/fastify-postmark/generated/template-paths.d.ts.map +0 -1
  46. package/dist/generators/email/fastify-postmark/generated/template-paths.js +0 -22
  47. package/dist/generators/email/fastify-postmark/generated/template-paths.js.map +0 -1
  48. package/dist/generators/email/fastify-postmark/generated/template-renderers.d.ts +0 -21
  49. package/dist/generators/email/fastify-postmark/generated/template-renderers.d.ts.map +0 -1
  50. package/dist/generators/email/fastify-postmark/generated/template-renderers.js +0 -39
  51. package/dist/generators/email/fastify-postmark/generated/template-renderers.js.map +0 -1
  52. package/dist/generators/email/fastify-postmark/generated/typed-templates.d.ts +0 -11
  53. package/dist/generators/email/fastify-postmark/generated/typed-templates.d.ts.map +0 -1
  54. package/dist/generators/email/fastify-postmark/generated/typed-templates.js +0 -14
  55. package/dist/generators/email/fastify-postmark/generated/typed-templates.js.map +0 -1
  56. package/dist/generators/email/fastify-postmark/index.d.ts +0 -2
  57. package/dist/generators/email/fastify-postmark/index.d.ts.map +0 -1
  58. package/dist/generators/email/fastify-postmark/index.js +0 -2
  59. package/dist/generators/email/fastify-postmark/index.js.map +0 -1
  60. package/dist/generators/email/fastify-postmark/templates/src/services/postmark.ts +0 -60
  61. package/dist/generators/email/index.d.ts +0 -2
  62. package/dist/generators/email/index.d.ts.map +0 -1
  63. package/dist/generators/email/index.js +0 -2
  64. package/dist/generators/email/index.js.map +0 -1
@@ -33,6 +33,7 @@ export declare const FASTIFY_PACKAGES: {
33
33
  readonly '@types/ms': "0.7.34";
34
34
  readonly 'es-toolkit': "1.31.0";
35
35
  readonly 'cross-env': "7.0.3";
36
+ readonly concurrently: "9.2.1";
36
37
  readonly 'tsc-alias': "1.8.10";
37
38
  readonly tsx: "4.20.6";
38
39
  readonly '@types/node': "^22.0.0";
@@ -1 +1 @@
1
- {"version":3,"file":"fastify-packages.d.ts","sourceRoot":"","sources":["../../src/constants/fastify-packages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmFnB,CAAC"}
1
+ {"version":3,"file":"fastify-packages.d.ts","sourceRoot":"","sources":["../../src/constants/fastify-packages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoFnB,CAAC"}
@@ -38,6 +38,7 @@ export const FASTIFY_PACKAGES = {
38
38
  'es-toolkit': '1.31.0',
39
39
  // Environment
40
40
  'cross-env': '7.0.3',
41
+ concurrently: '9.2.1',
41
42
  // Compilation
42
43
  'tsc-alias': '1.8.10',
43
44
  tsx: '4.20.6',
@@ -1 +1 @@
1
- {"version":3,"file":"fastify-packages.js","sourceRoot":"","sources":["../../src/constants/fastify-packages.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU;IACV,OAAO,EAAE,OAAO;IAChB,iBAAiB,EAAE,QAAQ;IAC3B,gBAAgB,EAAE,OAAO;IACzB,MAAM,EAAE,OAAO;IAEf,IAAI,EAAE,OAAO;IACb,aAAa,EAAE,QAAQ;IAEvB,uBAAuB,EAAE,OAAO;IAChC,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,OAAO;IACxB,gCAAgC,EAAE,OAAO;IACzC,cAAc,EAAE,QAAQ;IAExB,gBAAgB,EAAE,OAAO;IACzB,WAAW,EAAE,QAAQ;IAErB,oBAAoB,EAAE,QAAQ;IAC9B,0BAA0B,EAAE,OAAO;IACnC,mBAAmB,EAAE,OAAO;IAC5B,iBAAiB,EAAE,QAAQ;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,SAAS;IACT,cAAc,EAAE,QAAQ;IACxB,+BAA+B,EAAE,OAAO;IACxC,sBAAsB,EAAE,OAAO;IAC/B,uBAAuB,EAAE,QAAQ;IACjC,2BAA2B,EAAE,OAAO;IACpC,iBAAiB,EAAE,QAAQ;IAE3B,kCAAkC,EAAE,OAAO;IAC3C,YAAY,EAAE,QAAQ;IAEtB,SAAS;IACT,gBAAgB,EAAE,OAAO;IACzB,MAAM,EAAE,OAAO;IACf,oBAAoB,EAAE,OAAO;IAE7B,QAAQ;IACR,EAAE,EAAE,OAAO;IACX,mBAAmB,EAAE,OAAO;IAC5B,WAAW,EAAE,QAAQ;IACrB,YAAY,EAAE,QAAQ;IAEtB,cAAc;IACd,WAAW,EAAE,OAAO;IAEpB,cAAc;IACd,WAAW,EAAE,QAAQ;IACrB,GAAG,EAAE,QAAQ;IACb,aAAa,EAAE,SAAS;IAExB,QAAQ;IACR,OAAO,EAAE,OAAO;IAEhB,SAAS;IACT,cAAc,EAAE,QAAQ;IACxB,cAAc,EAAE,QAAQ;IACxB,wBAAwB,EAAE,QAAQ;IAClC,wBAAwB,EAAE,OAAO;IACjC,wBAAwB,EAAE,OAAO;IAEjC,aAAa;IACb,GAAG,EAAE,QAAQ;IAEb,UAAU;IACV,sBAAsB,EAAE,OAAO;IAC/B,sBAAsB,EAAE,OAAO;IAE/B,OAAO;IACP,iBAAiB,EAAE,OAAO;IAE1B,WAAW;IACX,QAAQ,EAAE,OAAO;IAEjB,SAAS;IACT,MAAM,EAAE,QAAQ;IAEhB,SAAS;IACT,MAAM,EAAE,QAAQ;CACR,CAAC"}
1
+ {"version":3,"file":"fastify-packages.js","sourceRoot":"","sources":["../../src/constants/fastify-packages.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,UAAU;IACV,OAAO,EAAE,OAAO;IAChB,iBAAiB,EAAE,QAAQ;IAC3B,gBAAgB,EAAE,OAAO;IACzB,MAAM,EAAE,OAAO;IAEf,IAAI,EAAE,OAAO;IACb,aAAa,EAAE,QAAQ;IAEvB,uBAAuB,EAAE,OAAO;IAChC,OAAO,EAAE,SAAS;IAClB,eAAe,EAAE,OAAO;IACxB,gCAAgC,EAAE,OAAO;IACzC,cAAc,EAAE,QAAQ;IAExB,gBAAgB,EAAE,OAAO;IACzB,WAAW,EAAE,QAAQ;IAErB,oBAAoB,EAAE,QAAQ;IAC9B,0BAA0B,EAAE,OAAO;IACnC,mBAAmB,EAAE,OAAO;IAC5B,iBAAiB,EAAE,QAAQ;IAC3B,kBAAkB,EAAE,OAAO;IAE3B,SAAS;IACT,cAAc,EAAE,QAAQ;IACxB,+BAA+B,EAAE,OAAO;IACxC,sBAAsB,EAAE,OAAO;IAC/B,uBAAuB,EAAE,QAAQ;IACjC,2BAA2B,EAAE,OAAO;IACpC,iBAAiB,EAAE,QAAQ;IAE3B,kCAAkC,EAAE,OAAO;IAC3C,YAAY,EAAE,QAAQ;IAEtB,SAAS;IACT,gBAAgB,EAAE,OAAO;IACzB,MAAM,EAAE,OAAO;IACf,oBAAoB,EAAE,OAAO;IAE7B,QAAQ;IACR,EAAE,EAAE,OAAO;IACX,mBAAmB,EAAE,OAAO;IAC5B,WAAW,EAAE,QAAQ;IACrB,YAAY,EAAE,QAAQ;IAEtB,cAAc;IACd,WAAW,EAAE,OAAO;IACpB,YAAY,EAAE,OAAO;IAErB,cAAc;IACd,WAAW,EAAE,QAAQ;IACrB,GAAG,EAAE,QAAQ;IACb,aAAa,EAAE,SAAS;IAExB,QAAQ;IACR,OAAO,EAAE,OAAO;IAEhB,SAAS;IACT,cAAc,EAAE,QAAQ;IACxB,cAAc,EAAE,QAAQ;IACxB,wBAAwB,EAAE,QAAQ;IAClC,wBAAwB,EAAE,OAAO;IACjC,wBAAwB,EAAE,OAAO;IAEjC,aAAa;IACb,GAAG,EAAE,QAAQ;IAEb,UAAU;IACV,sBAAsB,EAAE,OAAO;IAC/B,sBAAsB,EAAE,OAAO;IAE/B,OAAO;IACP,iBAAiB,EAAE,OAAO;IAE1B,WAAW;IACX,QAAQ,EAAE,OAAO;IAEjB,SAAS;IACT,MAAM,EAAE,QAAQ;IAEhB,SAAS;IACT,MAAM,EAAE,QAAQ;CACR,CAAC"}
@@ -34,8 +34,8 @@ export const appModuleSetupGenerator = createGenerator({
34
34
  return {
35
35
  build: async (builder) => {
36
36
  const moduleFieldsInterface = TsCodeUtils.mergeFragments(mapValuesOfMap(moduleFields, (field, key) => TsCodeUtils.template `${key}?: ${field}[];`));
37
- const moduleInitializer = TsCodeUtils.mergeFragmentsAsObject(mapValuesOfMap(moduleFields, (field, key) => `[...(rootModule.${key} ?? [])]`));
38
- const moduleMerger = TsCodeUtils.mergeFragments(mapValuesOfMap(moduleFields, (field, key) => `result.${key}.push(...(child.${key} ?? []))`), '\n');
37
+ const moduleInitializer = TsCodeUtils.mergeFragmentsAsObject(mapValuesOfMap(moduleFields, (_field, key) => `[...(rootModule.${key} ?? [])]`));
38
+ const moduleMerger = TsCodeUtils.mergeFragments(mapValuesOfMap(moduleFields, (_field, key) => `result.${key}.push(...(child.${key} ?? []))`), '\n');
39
39
  await builder.apply(typescriptFile.renderTemplateFile({
40
40
  template: CORE_APP_MODULE_SETUP_GENERATED.templates.appModules,
41
41
  destination: paths.appModules,
@@ -1 +1 @@
1
- {"version":3,"file":"app-module-setup.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/app-module-setup/app-module-setup.generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAC;AAEvE,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEtC,MAAM,CAAC,SAAS,EAAE,uBAAuB,EAAE,6BAA6B,CAAC,GACvE,wBAAwB,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,YAAY,EAAE,CAAC,CAAC,GAAG,EAA0B;CAC9C,CAAC,EACF;IACE,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,YAAY;IACzB,iBAAiB,EAAE,YAAY;CAChC,CACF,CAAC;AAEJ,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC;IACrD,IAAI,EAAE,uBAAuB;IAC7B,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;IACjC,gBAAgB;IAChB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACjB,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,IAAI;QACjD,OAAO,EAAE,+BAA+B,CAAC,OAAO,CAAC,IAAI;QACrD,SAAS;QACT,IAAI,EAAE,mBAAmB,CAAC;YACxB,YAAY,EAAE;gBACZ,cAAc,EAAE,sBAAsB;gBACtC,qBAAqB,EAAE,6BAA6B;gBACpD,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,QAAQ;aACtD;YACD,GAAG,CAAC,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE;gBACpE,OAAO;oBACL,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACvB,MAAM,qBAAqB,GAAG,WAAW,CAAC,cAAc,CACtD,cAAc,CACZ,YAAY,EACZ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAA,GAAG,GAAG,MAAM,KAAK,KAAK,CAC3D,CACF,CAAC;wBAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC,sBAAsB,CAC1D,cAAc,CACZ,YAAY,EACZ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,mBAAmB,GAAG,UAAU,CACjD,CACF,CAAC;wBAEF,MAAM,YAAY,GAAG,WAAW,CAAC,cAAc,CAC7C,cAAc,CACZ,YAAY,EACZ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,GAAG,mBAAmB,GAAG,UAAU,CAC9D,EACD,IAAI,CACL,CAAC;wBAEF,MAAM,OAAO,CAAC,KAAK,CACjB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,+BAA+B,CAAC,SAAS,CAAC,UAAU;4BAC9D,WAAW,EAAE,KAAK,CAAC,UAAU;4BAC7B,SAAS,EAAE;gCACT,iBAAiB,EAAE,qBAAqB;gCACxC,sBAAsB,EAAE,iBAAiB;gCACzC,iBAAiB,EAAE,YAAY;6BAChC;yBACF,CAAC,CACH,CAAC;oBACJ,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;KACH,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"app-module-setup.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/app-module-setup/app-module-setup.generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,YAAY,EACZ,WAAW,EACX,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAC;AAEvE,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEtC,MAAM,CAAC,SAAS,EAAE,uBAAuB,EAAE,6BAA6B,CAAC,GACvE,wBAAwB,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACN,YAAY,EAAE,CAAC,CAAC,GAAG,EAA0B;CAC9C,CAAC,EACF;IACE,MAAM,EAAE,YAAY;IACpB,WAAW,EAAE,YAAY;IACzB,iBAAiB,EAAE,YAAY;CAChC,CACF,CAAC;AAEJ,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,CAAC;AAElE;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC;IACrD,IAAI,EAAE,uBAAuB;IAC7B,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;IACjC,gBAAgB;IAChB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACjB,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,IAAI;QACjD,OAAO,EAAE,+BAA+B,CAAC,OAAO,CAAC,IAAI;QACrD,SAAS;QACT,IAAI,EAAE,mBAAmB,CAAC;YACxB,YAAY,EAAE;gBACZ,cAAc,EAAE,sBAAsB;gBACtC,qBAAqB,EAAE,6BAA6B;gBACpD,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,QAAQ;aACtD;YACD,GAAG,CAAC,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE;gBACpE,OAAO;oBACL,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;wBACvB,MAAM,qBAAqB,GAAG,WAAW,CAAC,cAAc,CACtD,cAAc,CACZ,YAAY,EACZ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAA,GAAG,GAAG,MAAM,KAAK,KAAK,CAC3D,CACF,CAAC;wBAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC,sBAAsB,CAC1D,cAAc,CACZ,YAAY,EACZ,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,mBAAmB,GAAG,UAAU,CAClD,CACF,CAAC;wBAEF,MAAM,YAAY,GAAG,WAAW,CAAC,cAAc,CAC7C,cAAc,CACZ,YAAY,EACZ,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,UAAU,GAAG,mBAAmB,GAAG,UAAU,CAC/D,EACD,IAAI,CACL,CAAC;wBAEF,MAAM,OAAO,CAAC,KAAK,CACjB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,+BAA+B,CAAC,SAAS,CAAC,UAAU;4BAC9D,WAAW,EAAE,KAAK,CAAC,UAAU;4BAC7B,SAAS,EAAE;gCACT,iBAAiB,EAAE,qBAAqB;gCACxC,sBAAsB,EAAE,iBAAiB;gCACzC,iBAAiB,EAAE,YAAY;6BAChC;yBACF,CAAC,CACH,CAAC;oBACJ,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;KACH,CAAC;CACH,CAAC,CAAC"}
@@ -109,7 +109,8 @@ export const fastifyGenerator = createGenerator({
109
109
  start: startCommand,
110
110
  });
111
111
  if (enableParallelDevCommand) {
112
- node.scripts.set('dev', 'FORCE_COLOR=1 pnpm run --reporter-hide-prefix --parallel "/^dev:/"');
112
+ node.packages.addDevPackages(extractPackageVersions(FASTIFY_PACKAGES, ['concurrently']));
113
+ node.scripts.set('dev', 'concurrently pnpm:dev:*');
113
114
  node.scripts.set('dev:server', devCommand);
114
115
  }
115
116
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"fastify.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/fastify/fastify.generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fastify.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/fastify/fastify.generator.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ interface CookieStore {
32
32
  }`, tsTypeImportBuilder(['CookieSerializeOptions']).from('@fastify/cookie')),
33
33
  ],
34
34
  }),
35
- body: (req, reply) => tsCodeFragment(`function getReply(): FastifyReply {
35
+ body: (_req, reply) => tsCodeFragment(`function getReply(): FastifyReply {
36
36
  if (!${reply}) {
37
37
  throw new Error(
38
38
  'Reply is not defined. This may happen if calling this function from a websocket connection.'
@@ -1 +1 @@
1
- {"version":3,"file":"fastify-cookie-context.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/fastify-cookie-context/fastify-cookie-context.generator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAE1F,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,eAAe,CAAC;IAC3D,IAAI,EAAE,6BAA6B;IACnC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;IACjC,gBAAgB;IAChB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACjB,YAAY,EAAE,sBAAsB,CAAC;YACnC,IAAI,EAAE,sBAAsB,CAAC,gBAAgB,EAAE,CAAC,iBAAiB,CAAC,CAAC;SACpE,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,2BAA2B,EAC3B,CAAC,mBAAmB,EAAE,EAAE;YACtB,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE;gBACzC,MAAM,EAAE,cAAc,CACpB,eAAe,EACf,eAAe,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CACnE;aACF,CAAC,CAAC;QACL,CAAC,CACF;QACD,qBAAqB,EAAE,kBAAkB,CACvC,mCAAmC,EACnC,CAAC,2BAA2B,EAAE,EAAE;YAC9B,2BAA2B,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE;gBAC3D,IAAI,EAAE,cAAc,CAAC,aAAa,EAAE,SAAS,EAAE;oBAC7C,gBAAgB,EAAE;wBAChB,iBAAiB,CACf,wBAAwB,EACxB;;;;;kBAKE,EACF,mBAAmB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAClD,iBAAiB,CAClB,CACF;qBACF;iBACF,CAAC;gBACF,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CACnB,cAAc,CACZ;iBACG,KAAK;;;;;mBAKH,KAAK;;OAEjB,CACM;gBACH,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,cAAc,CACZ;;mBAEK,GAAG;;;;CAIrB,CACY;aACJ,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;QACZ,CAAC,CACF;KACF,CAAC;CACH,CAAC,CAAC"}
1
+ {"version":3,"file":"fastify-cookie-context.generator.js","sourceRoot":"","sources":["../../../../src/generators/core/fastify-cookie-context/fastify-cookie-context.generator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAE1F,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,eAAe,CAAC;IAC3D,IAAI,EAAE,6BAA6B;IACnC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;IACjC,gBAAgB;IAChB,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACjB,YAAY,EAAE,sBAAsB,CAAC;YACnC,IAAI,EAAE,sBAAsB,CAAC,gBAAgB,EAAE,CAAC,iBAAiB,CAAC,CAAC;SACpE,CAAC;QACF,aAAa,EAAE,kBAAkB,CAC/B,2BAA2B,EAC3B,CAAC,mBAAmB,EAAE,EAAE;YACtB,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE;gBACzC,MAAM,EAAE,cAAc,CACpB,eAAe,EACf,eAAe,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CACnE;aACF,CAAC,CAAC;QACL,CAAC,CACF;QACD,qBAAqB,EAAE,kBAAkB,CACvC,mCAAmC,EACnC,CAAC,2BAA2B,EAAE,EAAE;YAC9B,2BAA2B,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE;gBAC3D,IAAI,EAAE,cAAc,CAAC,aAAa,EAAE,SAAS,EAAE;oBAC7C,gBAAgB,EAAE;wBAChB,iBAAiB,CACf,wBAAwB,EACxB;;;;;kBAKE,EACF,mBAAmB,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAClD,iBAAiB,CAClB,CACF;qBACF;iBACF,CAAC;gBACF,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACpB,cAAc,CACZ;iBACG,KAAK;;;;;mBAKH,KAAK;;OAEjB,CACM;gBACH,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,cAAc,CACZ;;mBAEK,GAAG;;;;CAIrB,CACY;aACJ,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;QACZ,CAAC,CACF;KACF,CAAC;CACH,CAAC,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export * from './auth/index.js';
2
2
  export * from './core/index.js';
3
- export * from './email/index.js';
4
3
  export * from './pothos/index.js';
5
4
  export * from './prisma/index.js';
6
5
  export * from './stripe/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export * from './auth/index.js';
2
2
  export * from './core/index.js';
3
- export * from './email/index.js';
4
3
  export * from './pothos/index.js';
5
4
  export * from './prisma/index.js';
6
5
  export * from './stripe/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generators/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate-operation-callbacks.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAI1E;;GAEG;AACH,UAAU,4BAA4B;IACpC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,iDAAiD;IACjD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,oIAAoI;IACpI,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAqC9B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,iDAAiD;IACjD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,2IAA2I;IAC3I,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAuC9B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,qIAAqI;IACrI,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAc9B"}
1
+ {"version":3,"file":"generate-operation-callbacks.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAI1E;;GAEG;AACH,UAAU,4BAA4B;IACpC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,iDAAiD;IACjD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,oIAAoI;IACpI,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAuC9B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,iDAAiD;IACjD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,2IAA2I;IAC3I,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAyC9B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,4BAA4B;IACpC,qIAAqI;IACrI,sBAAsB,EAAE,cAAc,CAAC;CACxC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,4BAA4B,CAc9B"}
@@ -31,10 +31,9 @@ import { generateRelationBuildData } from './generate-relation-build-data.js';
31
31
  */
32
32
  export function generateCreateCallback(config) {
33
33
  const { prismaModel, inputFieldNames, dataUtilsImports, modelVariableName } = config;
34
- const { argumentFragment, returnFragment, passthrough } = generateRelationBuildData({
34
+ const { createArgumentFragment: argumentFragment, createReturnFragment: returnFragment, passthrough, } = generateRelationBuildData({
35
35
  prismaModel,
36
36
  inputFieldNames,
37
- operationType: 'create',
38
37
  dataUtilsImports,
39
38
  });
40
39
  if (passthrough) {
@@ -94,10 +93,9 @@ export function generateCreateCallback(config) {
94
93
  */
95
94
  export function generateUpdateCallback(config) {
96
95
  const { prismaModel, inputFieldNames, dataUtilsImports, modelVariableName } = config;
97
- const { argumentFragment, returnFragment, passthrough } = generateRelationBuildData({
96
+ const { updateArgumentFragment: argumentFragment, updateReturnFragment: returnFragment, passthrough, } = generateRelationBuildData({
98
97
  prismaModel,
99
98
  inputFieldNames,
100
- operationType: 'update',
101
99
  dataUtilsImports,
102
100
  });
103
101
  if (passthrough) {
@@ -1 +1 @@
1
- {"version":3,"file":"generate-operation-callbacks.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAwB9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GACzE,MAAM,CAAC;IAET,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,GACrD,yBAAyB,CAAC;QACxB,WAAW;QACX,eAAe;QACf,aAAa,EAAE,QAAQ;QACvB,gBAAgB;KACjB,CAAC,CAAC;IAEL,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,sBAAsB,EAAE,UAAU,CAAA;;kCAEN,iBAAiB;;;;;;OAM5C;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;2BACX,gBAAgB;gCACX,iBAAiB;kBAC/B,cAAc;;;;;KAK3B;KACF,CAAC;AACJ,CAAC;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GACzE,MAAM,CAAC;IAET,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,GACrD,yBAAyB,CAAC;QACxB,WAAW;QACX,eAAe;QACf,aAAa,EAAE,QAAQ;QACvB,gBAAgB;KACjB,CAAC,CAAC;IAEL,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,sBAAsB,EAAE,UAAU,CAAA;;kCAEN,iBAAiB;;;;;;;OAO5C;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;kCACJ,gBAAgB;gCAClB,iBAAiB;;kBAE/B,cAAc;;;;;KAK3B;KACF,CAAC;AACJ,CAAC;AAkBD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IAErC,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;;gCAEN,iBAAiB;;;;;;KAM5C;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"generate-operation-callbacks.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAM5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAwB9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GACzE,MAAM,CAAC;IAET,MAAM,EACJ,sBAAsB,EAAE,gBAAgB,EACxC,oBAAoB,EAAE,cAAc,EACpC,WAAW,GACZ,GAAG,yBAAyB,CAAC;QAC5B,WAAW;QACX,eAAe;QACf,gBAAgB;KACjB,CAAC,CAAC;IAEH,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,sBAAsB,EAAE,UAAU,CAAA;;kCAEN,iBAAiB;;;;;;OAM5C;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;2BACX,gBAAgB;gCACX,iBAAiB;kBAC/B,cAAc;;;;;KAK3B;KACF,CAAC;AACJ,CAAC;AAwBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GACzE,MAAM,CAAC;IAET,MAAM,EACJ,sBAAsB,EAAE,gBAAgB,EACxC,oBAAoB,EAAE,cAAc,EACpC,WAAW,GACZ,GAAG,yBAAyB,CAAC;QAC5B,WAAW;QACX,eAAe;QACf,gBAAgB;KACjB,CAAC,CAAC;IAEH,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,sBAAsB,EAAE,UAAU,CAAA;;kCAEN,iBAAiB;;;;;;;OAO5C;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;kCACJ,gBAAgB;gCAClB,iBAAiB;;kBAE/B,cAAc;;;;;KAK3B;KACF,CAAC;AACJ,CAAC;AAkBD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAoC;IAEpC,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IAErC,OAAO;QACL,sBAAsB,EAAE,UAAU,CAAA;;gCAEN,iBAAiB;;;;;;KAM5C;KACF,CAAC;AACJ,CAAC"}
@@ -2,80 +2,68 @@ import type { TsCodeFragment } from '@baseplate-dev/core-generators';
2
2
  import type { PrismaOutputModel } from '#src/types/prisma-output.js';
3
3
  import type { DataUtilsImportsProvider } from '../../data-utils/index.js';
4
4
  /**
5
- * Configuration for generating relation buildData function
5
+ * Configuration for generating relation buildData functions
6
6
  */
7
7
  interface GenerateRelationBuildDataConfig {
8
8
  /** Prisma model to analyze for relations */
9
9
  prismaModel: PrismaOutputModel;
10
10
  /** Field names that are included in the input (to determine which relations to include) */
11
11
  inputFieldNames: string[];
12
- /** Operation type - determines whether to use connectCreate or connectUpdate */
13
- operationType: 'create' | 'update' | 'upsert';
14
12
  /** Data utils imports provider for accessing relationHelpers fragments */
15
13
  dataUtilsImports: DataUtilsImportsProvider;
16
14
  }
17
15
  /**
18
- * Result of generating relation buildData function
16
+ * Result of generating relation buildData functions
19
17
  */
20
18
  interface GenerateRelationBuildDataResult {
21
- /** Argument pattern for the function (e.g., "{ ownerId, ...data }" or "data") */
22
- argumentFragment: TsCodeFragment;
23
- /** Return value with relation transformations (e.g., "{ ...data, owner: relationHelpers.connectCreate(...) }") */
24
- returnFragment: TsCodeFragment;
19
+ /** Create operation: argument pattern (e.g., "{ ownerId, ...data }") */
20
+ createArgumentFragment: TsCodeFragment;
21
+ /** Create operation: return value (e.g., "{ ...data, owner: relationHelpers.connectCreate(...) }") */
22
+ createReturnFragment: TsCodeFragment;
23
+ /** Update operation: argument pattern (e.g., "{ ownerId, ...data }") */
24
+ updateArgumentFragment: TsCodeFragment;
25
+ /** Update operation: return value (e.g., "{ ...data, owner: relationHelpers.connectUpdate(...) }") */
26
+ updateReturnFragment: TsCodeFragment;
27
+ /** buildCreateData function fragment: ({ fk1, fk2, ...data }) => ({ ...data, relation1: relationHelpers.connectCreate(...) }) */
28
+ buildCreateDataFragment: TsCodeFragment;
29
+ /** buildUpdateData function fragment: ({ fk1, fk2, ...data }) => ({ ...data, relation1: relationHelpers.connectUpdate(...) }) */
30
+ buildUpdateDataFragment: TsCodeFragment;
25
31
  /** Whether this is a simple passthrough (no relations to transform) */
26
32
  passthrough: boolean;
27
- /** Complete buildData function fragment: ({ fk1, fk2, ...data }) => ({ ...data, relation1: ..., relation2: ... }) */
28
- buildDataFunctionFragment: TsCodeFragment;
29
33
  }
30
34
  /**
31
- * Generates buildData function that transforms foreign key fields into Prisma relation objects
35
+ * Generates separate buildCreateData and buildUpdateData functions that transform
36
+ * foreign key fields into Prisma relation objects.
32
37
  *
33
38
  * This helper analyzes a Prisma model to find relations whose foreign key fields are included
34
- * in the input, then generates a buildData function that destructures those FK fields and
35
- * uses relationHelpers to build the appropriate Prisma connect/disconnect objects.
39
+ * in the input, then generates two separate functions for create and update operations.
40
+ * Each function destructures the FK fields and uses relationHelpers to build the appropriate
41
+ * Prisma connect objects.
36
42
  *
37
- * @param config - Configuration including Prisma model, input fields, and operation type
38
- * @returns Result containing FK fields, relation mappings, and the buildData function fragment
43
+ * @param config - Configuration including Prisma model, input fields, and data utils imports
44
+ * @returns Result containing buildCreateDataFragment and buildUpdateDataFragment
39
45
  *
40
46
  * @example
41
47
  * // Single relation
42
48
  * generateRelationBuildData({
43
49
  * prismaModel: { fields: [...] },
44
50
  * inputFieldNames: ['name', 'ownerId'],
45
- * operationType: 'create',
46
51
  * dataUtilsImports,
47
52
  * })
48
- * // Returns: buildData: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: ownerId }) })
49
- *
50
- * @example
51
- * // Multiple relations
52
- * generateRelationBuildData({
53
- * prismaModel: { fields: [...] },
54
- * inputFieldNames: ['text', 'todoListId', 'assigneeId'],
55
- * operationType: 'create',
56
- * dataUtilsImports,
57
- * })
58
- * // Returns: buildData: ({ todoListId, assigneeId, ...data }) => ({ ...data, todoList: ..., assignee: ... })
59
- *
60
- * @example
61
- * // Composite key relation
62
- * generateRelationBuildData({
63
- * prismaModel: { fields: [...] },
64
- * inputFieldNames: ['name', 'userId', 'tenantId'],
65
- * operationType: 'create',
66
- * dataUtilsImports,
67
- * })
68
- * // Returns: buildData: ({ userId, tenantId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: userId, tenantId }) })
53
+ * // Returns:
54
+ * // buildCreateDataFragment: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: ownerId }) })
55
+ * // buildUpdateDataFragment: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectUpdate({ id: ownerId }) })
69
56
  *
70
57
  * @example
71
58
  * // No relations (pass-through)
72
59
  * generateRelationBuildData({
73
60
  * prismaModel: { fields: [...] },
74
61
  * inputFieldNames: ['name', 'description'],
75
- * operationType: 'create',
76
62
  * dataUtilsImports,
77
63
  * })
78
- * // Returns: buildData: (data) => data
64
+ * // Returns:
65
+ * // buildCreateDataFragment: (data) => data
66
+ * // buildUpdateDataFragment: (data) => data
79
67
  */
80
68
  export declare function generateRelationBuildData(config: GenerateRelationBuildDataConfig): GenerateRelationBuildDataResult;
81
69
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"generate-relation-build-data.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAE1E;;GAEG;AACH,UAAU,+BAA+B;IACvC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,2FAA2F;IAC3F,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,gFAAgF;IAChF,aAAa,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC9C,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;CAC5C;AAED;;GAEG;AACH,UAAU,+BAA+B;IACvC,iFAAiF;IACjF,gBAAgB,EAAE,cAAc,CAAC;IACjC,kHAAkH;IAClH,cAAc,EAAE,cAAc,CAAC;IAC/B,uEAAuE;IACvE,WAAW,EAAE,OAAO,CAAC;IACrB,qHAAqH;IACrH,yBAAyB,EAAE,cAAc,CAAC;CAC3C;AAiMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,+BAA+B,GACtC,+BAA+B,CAgEjC"}
1
+ {"version":3,"file":"generate-relation-build-data.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,6BAA6B,CAAC;AAErC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAE1E;;GAEG;AACH,UAAU,+BAA+B;IACvC,4CAA4C;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,2FAA2F;IAC3F,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,gBAAgB,EAAE,wBAAwB,CAAC;CAC5C;AAED;;GAEG;AACH,UAAU,+BAA+B;IACvC,wEAAwE;IACxE,sBAAsB,EAAE,cAAc,CAAC;IACvC,sGAAsG;IACtG,oBAAoB,EAAE,cAAc,CAAC;IACrC,wEAAwE;IACxE,sBAAsB,EAAE,cAAc,CAAC;IACvC,sGAAsG;IACtG,oBAAoB,EAAE,cAAc,CAAC;IACrC,iIAAiI;IACjI,uBAAuB,EAAE,cAAc,CAAC;IACxC,iIAAiI;IACjI,uBAAuB,EAAE,cAAc,CAAC;IACxC,uEAAuE;IACvE,WAAW,EAAE,OAAO,CAAC;CACtB;AAiMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,+BAA+B,GACtC,+BAA+B,CAqCjC"}
@@ -124,92 +124,58 @@ function generateBuildDataBody(foreignKeyFields, operationType, dataUtilsImports
124
124
  };
125
125
  }
126
126
  /**
127
- * Generates buildData function that transforms foreign key fields into Prisma relation objects
127
+ * Generates separate buildCreateData and buildUpdateData functions that transform
128
+ * foreign key fields into Prisma relation objects.
128
129
  *
129
130
  * This helper analyzes a Prisma model to find relations whose foreign key fields are included
130
- * in the input, then generates a buildData function that destructures those FK fields and
131
- * uses relationHelpers to build the appropriate Prisma connect/disconnect objects.
131
+ * in the input, then generates two separate functions for create and update operations.
132
+ * Each function destructures the FK fields and uses relationHelpers to build the appropriate
133
+ * Prisma connect objects.
132
134
  *
133
- * @param config - Configuration including Prisma model, input fields, and operation type
134
- * @returns Result containing FK fields, relation mappings, and the buildData function fragment
135
+ * @param config - Configuration including Prisma model, input fields, and data utils imports
136
+ * @returns Result containing buildCreateDataFragment and buildUpdateDataFragment
135
137
  *
136
138
  * @example
137
139
  * // Single relation
138
140
  * generateRelationBuildData({
139
141
  * prismaModel: { fields: [...] },
140
142
  * inputFieldNames: ['name', 'ownerId'],
141
- * operationType: 'create',
142
143
  * dataUtilsImports,
143
144
  * })
144
- * // Returns: buildData: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: ownerId }) })
145
- *
146
- * @example
147
- * // Multiple relations
148
- * generateRelationBuildData({
149
- * prismaModel: { fields: [...] },
150
- * inputFieldNames: ['text', 'todoListId', 'assigneeId'],
151
- * operationType: 'create',
152
- * dataUtilsImports,
153
- * })
154
- * // Returns: buildData: ({ todoListId, assigneeId, ...data }) => ({ ...data, todoList: ..., assignee: ... })
155
- *
156
- * @example
157
- * // Composite key relation
158
- * generateRelationBuildData({
159
- * prismaModel: { fields: [...] },
160
- * inputFieldNames: ['name', 'userId', 'tenantId'],
161
- * operationType: 'create',
162
- * dataUtilsImports,
163
- * })
164
- * // Returns: buildData: ({ userId, tenantId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: userId, tenantId }) })
145
+ * // Returns:
146
+ * // buildCreateDataFragment: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectCreate({ id: ownerId }) })
147
+ * // buildUpdateDataFragment: ({ ownerId, ...data }) => ({ ...data, owner: relationHelpers.connectUpdate({ id: ownerId }) })
165
148
  *
166
149
  * @example
167
150
  * // No relations (pass-through)
168
151
  * generateRelationBuildData({
169
152
  * prismaModel: { fields: [...] },
170
153
  * inputFieldNames: ['name', 'description'],
171
- * operationType: 'create',
172
154
  * dataUtilsImports,
173
155
  * })
174
- * // Returns: buildData: (data) => data
156
+ * // Returns:
157
+ * // buildCreateDataFragment: (data) => data
158
+ * // buildUpdateDataFragment: (data) => data
175
159
  */
176
160
  export function generateRelationBuildData(config) {
177
- const { prismaModel, inputFieldNames, operationType, dataUtilsImports } = config;
161
+ const { prismaModel, inputFieldNames, dataUtilsImports } = config;
178
162
  // Find all relations that have at least one FK field in the input
179
163
  const relevantRelations = findRelevantRelations(prismaModel, inputFieldNames);
180
164
  // Extract all foreign key field names
181
165
  const foreignKeyFieldNames = extractForeignKeyFields(relevantRelations);
182
- // Generate the complete buildData function
183
- if (operationType === 'upsert') {
184
- const createDataBody = generateBuildDataBody(foreignKeyFieldNames, 'create', dataUtilsImports, relevantRelations, inputFieldNames, 'createData');
185
- const updateDataBody = generateBuildDataBody(foreignKeyFieldNames, 'update', dataUtilsImports, relevantRelations, inputFieldNames, 'updateData');
186
- if (createDataBody.passthrough && updateDataBody.passthrough) {
187
- return {
188
- argumentFragment: tsTemplate `data`,
189
- returnFragment: tsTemplate `data`,
190
- passthrough: true,
191
- buildDataFunctionFragment: tsTemplate `(data) => data`,
192
- };
193
- }
194
- // For upsert with relations, we don't expose individual fragments since the structure is complex
195
- // Consumers should use buildDataFunctionFragment directly
196
- return {
197
- argumentFragment: tsTemplate `{ create: ${createDataBody.argumentFragment}, update: ${updateDataBody.argumentFragment}}`,
198
- returnFragment: tsTemplate `{ create: ${createDataBody.returnFragment}, update: ${updateDataBody.returnFragment} }`,
199
- passthrough: false,
200
- buildDataFunctionFragment: tsTemplate `
201
- ({ create: ${createDataBody.argumentFragment}, update: ${updateDataBody.argumentFragment}}) =>
202
- ({ create: ${createDataBody.returnFragment}, update: ${updateDataBody.returnFragment} })`,
203
- };
204
- }
205
- else {
206
- const buildDataBody = generateBuildDataBody(foreignKeyFieldNames, operationType, dataUtilsImports, relevantRelations, inputFieldNames);
207
- return {
208
- argumentFragment: buildDataBody.argumentFragment,
209
- returnFragment: buildDataBody.returnFragment,
210
- passthrough: buildDataBody.passthrough,
211
- buildDataFunctionFragment: tsTemplate `(${buildDataBody.argumentFragment}) => (${buildDataBody.returnFragment})`,
212
- };
213
- }
166
+ // Generate both create and update buildData functions
167
+ const createBody = generateBuildDataBody(foreignKeyFieldNames, 'create', dataUtilsImports, relevantRelations, inputFieldNames);
168
+ const updateBody = generateBuildDataBody(foreignKeyFieldNames, 'update', dataUtilsImports, relevantRelations, inputFieldNames);
169
+ // Both should have the same passthrough status since they use the same relations
170
+ const passthrough = createBody.passthrough && updateBody.passthrough;
171
+ return {
172
+ createArgumentFragment: createBody.argumentFragment,
173
+ createReturnFragment: createBody.returnFragment,
174
+ updateArgumentFragment: updateBody.argumentFragment,
175
+ updateReturnFragment: updateBody.returnFragment,
176
+ buildCreateDataFragment: tsTemplate `(${createBody.argumentFragment}) => (${createBody.returnFragment})`,
177
+ buildUpdateDataFragment: tsTemplate `(${updateBody.argumentFragment}) => (${updateBody.returnFragment})`,
178
+ passthrough,
179
+ };
214
180
  }
215
181
  //# sourceMappingURL=generate-relation-build-data.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate-relation-build-data.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAqCzE;;;;;;;;;;;;;;GAcG;AACH,SAAS,2BAA2B,CAClC,gBAA0B,EAC1B,gBAA0B;IAE1B,IAAI,gBAAgB,CAAC,MAAM,KAAK,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CACb,2EAA2E,gBAAgB,CAAC,MAAM,QAAQ,gBAAgB,CAAC,MAAM,EAAE,CACpI,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC,sBAAsB,CACvC,MAAM,CAAC,WAAW,CAChB,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;QACvC,gBAAgB,CAAC,KAAK,CAAC;QACvB,OAAO;KACR,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAC5B,WAA8B,EAC9B,eAAyB;IAEzB,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CACjD,CAAC,KAAK,EAAsC,EAAE,CAC5C,KAAK,CAAC,IAAI,KAAK,UAAU;QACzB,CAAC,CAAC,KAAK,CAAC,MAAM;QACd,6EAA6E;QAC7E,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CACpE,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAC3C,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAChD,CAAC;QACF,IAAI,aAAa,EAAE,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,YAAY,QAAQ,CAAC,IAAI,2CAA2C,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAChG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAC9B,SAAsC;IAEtC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACjE,uDAAuD;IACvD,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,0BAA0B,CACjC,QAAmC,EACnC,aAAkC,EAClC,uBAAuC;IAEvC,MAAM,YAAY,GAChB,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;IACjE,MAAM,WAAW,GAAG,2BAA2B,CAC7C,QAAQ,CAAC,MAAM,IAAI,EAAE,EACrB,QAAQ,CAAC,UAAU,IAAI,EAAE,CAC1B,CAAC;IAEF,OAAO,UAAU,CAAA,GAAG,uBAAuB,IAAI,YAAY,IAAI,WAAW,GAAG,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,qBAAqB,CAC5B,gBAA0B,EAC1B,aAAkC,EAClC,gBAA0C,EAC1C,iBAA8C,EAC9C,kBAA6B,EAC7B,QAAQ,GAAG,MAAM;IAMjB,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO;YACL,gBAAgB,EAAE,UAAU,CAAA,GAAG,QAAQ,EAAE;YACzC,cAAc,EAAE,UAAU,CAAA,GAAG,QAAQ,EAAE;YACvC,WAAW,EAAE,IAAI;SAClB,CAAC;IACJ,CAAC;IAED,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;IAC5E,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC7D,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,QAAQ,EAAE,0BAA0B,CAClC,QAAQ,EACR,aAAa,EACb,uBAAuB,CACxB;KACF,CAAC,CAAC,CAAC;IAEJ,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IAE3D,gDAAgD;IAChD,MAAM,uBAAuB,GAAG,kBAAkB,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAClE,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CACjC,CAAC;IAEF,sEAAsE;IACtE,MAAM,YAAY,GAAG,uBAAuB;QAC1C,CAAC,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC5C,CAAC,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,QAAQ,IAAI,CAAC;IAE/D,mDAAmD;IACnD,MAAM,qBAAqB,GAAmC,EAAE,CAAC;IAEjE,mEAAmE;IACnE,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,qBAAqB,CAAC,MAAM,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAA,GAAG,QAAQ,EAAE,CAAC;IACpE,CAAC;IAED,yBAAyB;IACzB,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;IAC7D,KAAK,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,uBAAuB,EAAE,CAAC;QACjE,qBAAqB,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC;IACjD,CAAC;IAED,4CAA4C;IAC5C,MAAM,YAAY,GAAG,WAAW,CAAC,sBAAsB,CACrD,qBAAqB,EACrB,EAAE,WAAW,EAAE,CAAC,uBAAuB,EAAE,CAC1C,CAAC;IAEF,OAAO;QACL,gBAAgB,EAAE,UAAU,CAAA,GAAG,YAAY,EAAE;QAC7C,cAAc,EAAE,YAAY;QAC5B,WAAW,EAAE,KAAK;KACnB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAAuC;IAEvC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAE,GACrE,MAAM,CAAC;IAET,kEAAkE;IAClE,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAE9E,sCAAsC;IACtC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;IAExE,2CAA2C;IAC3C,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,qBAAqB,CAC1C,oBAAoB,EACpB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,YAAY,CACb,CAAC;QACF,MAAM,cAAc,GAAG,qBAAqB,CAC1C,oBAAoB,EACpB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,YAAY,CACb,CAAC;QAEF,IAAI,cAAc,CAAC,WAAW,IAAI,cAAc,CAAC,WAAW,EAAE,CAAC;YAC7D,OAAO;gBACL,gBAAgB,EAAE,UAAU,CAAA,MAAM;gBAClC,cAAc,EAAE,UAAU,CAAA,MAAM;gBAChC,WAAW,EAAE,IAAI;gBACjB,yBAAyB,EAAE,UAAU,CAAA,gBAAgB;aACtD,CAAC;QACJ,CAAC;QAED,iGAAiG;QACjG,0DAA0D;QAC1D,OAAO;YACL,gBAAgB,EAAE,UAAU,CAAA,aAAa,cAAc,CAAC,gBAAgB,aAAa,cAAc,CAAC,gBAAgB,GAAG;YACvH,cAAc,EAAE,UAAU,CAAA,aAAa,cAAc,CAAC,cAAc,aAAa,cAAc,CAAC,cAAc,IAAI;YAClH,WAAW,EAAE,KAAK;YAClB,yBAAyB,EAAE,UAAU,CAAA;mBACxB,cAAc,CAAC,gBAAgB,aAAa,cAAc,CAAC,gBAAgB;oBAC1E,cAAc,CAAC,cAAc,aAAa,cAAc,CAAC,cAAc,KAAK;SAC3F,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,qBAAqB,CACzC,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,CAChB,CAAC;QAEF,OAAO;YACL,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;YAChD,cAAc,EAAE,aAAa,CAAC,cAAc;YAC5C,WAAW,EAAE,aAAa,CAAC,WAAW;YACtC,yBAAyB,EAAE,UAAU,CAAA,IAAI,aAAa,CAAC,gBAAgB,SAAS,aAAa,CAAC,cAAc,GAAG;SAChH,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"generate-relation-build-data.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,14 @@ import type { PrismaOutputModel } from '#src/types/prisma-output.js';
2
2
  import type { ServiceOutputDtoField } from '#src/types/service-output.js';
3
3
  export declare function getPrimaryKeyDefinition(model: PrismaOutputModel): ServiceOutputDtoField;
4
4
  export declare function getModelIdFieldName(model: PrismaOutputModel): string;
5
+ /**
6
+ * Generates a getWhereUnique function string for use in defineCreateOperation.
7
+ *
8
+ * For single primary key: `(result) => ({ id: result.id })`
9
+ * For compound primary key: `(result) => ({ field1_field2: { field1: result.field1, field2: result.field2 } })`
10
+ *
11
+ * @param model - The Prisma model to generate the function for
12
+ * @returns A string representation of the getWhereUnique arrow function
13
+ */
14
+ export declare function generateGetWhereUniqueFragment(model: PrismaOutputModel): string;
5
15
  //# sourceMappingURL=primary-key-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"primary-key-input.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/crud-method/primary-key-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,iBAAiB,GACvB,qBAAqB,CA8CvB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAapE"}
1
+ {"version":3,"file":"primary-key-input.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/crud-method/primary-key-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,iBAAiB,GACvB,qBAAqB,CA8CvB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAapE;AAED;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,iBAAiB,GACvB,MAAM,CAkBR"}
@@ -49,4 +49,30 @@ export function getModelIdFieldName(model) {
49
49
  // handle multiple primary key case
50
50
  return idFields.join('_');
51
51
  }
52
+ /**
53
+ * Generates a getWhereUnique function string for use in defineCreateOperation.
54
+ *
55
+ * For single primary key: `(result) => ({ id: result.id })`
56
+ * For compound primary key: `(result) => ({ field1_field2: { field1: result.field1, field2: result.field2 } })`
57
+ *
58
+ * @param model - The Prisma model to generate the function for
59
+ * @returns A string representation of the getWhereUnique arrow function
60
+ */
61
+ export function generateGetWhereUniqueFragment(model) {
62
+ const { idFields } = model;
63
+ if (!idFields?.length) {
64
+ throw new Error(`Model ${model.name} has no primary key`);
65
+ }
66
+ if (idFields.length === 1) {
67
+ // Single primary key: (result) => ({ id: result.id })
68
+ const idField = idFields[0];
69
+ return `(result) => ({ ${idField}: result.${idField} })`;
70
+ }
71
+ // Compound primary key: (result) => ({ field1_field2: { field1: result.field1, field2: result.field2 } })
72
+ const whereUniqueFieldName = idFields.join('_');
73
+ const innerFields = idFields
74
+ .map((field) => `${field}: result.${field}`)
75
+ .join(', ');
76
+ return `(result) => ({ ${whereUniqueFieldName}: { ${innerFields} } })`;
77
+ }
52
78
  //# sourceMappingURL=primary-key-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"primary-key-input.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/crud-method/primary-key-input.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,uBAAuB,CACrC,KAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACnC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,sCAAsC;QACtC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,iCAAiC,CAAC,CAAC;QACxE,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,MAAM,mBAAmB,GAAG,GAAG,KAAK,CAAC,IAAI,YAAY,CAAC;IAEtD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtC,MAAM,IAAI,KAAK,CACb,YAAY,OAAO,aAAa,KAAK,CAAC,IAAI,mBAAmB,CAC9D,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,CAAC;YACJ,CAAC,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,sCAAsC;QACtC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,mCAAmC;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"primary-key-input.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/crud-method/primary-key-input.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,uBAAuB,CACrC,KAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACnC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,sCAAsC;QACtC,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,iCAAiC,CAAC,CAAC;QACxE,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC;IACJ,CAAC;IAED,mCAAmC;IACnC,MAAM,mBAAmB,GAAG,GAAG,KAAK,CAAC,IAAI,YAAY,CAAC;IAEtD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtC,MAAM,IAAI,KAAK,CACb,YAAY,OAAO,aAAa,KAAK,CAAC,IAAI,mBAAmB,CAC9D,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,CAAC;YACJ,CAAC,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC1D,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,sCAAsC;QACtC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;IAED,mCAAmC;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,8BAA8B,CAC5C,KAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,qBAAqB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,sDAAsD;QACtD,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,kBAAkB,OAAO,YAAY,OAAO,KAAK,CAAC;IAC3D,CAAC;IAED,0GAA0G;IAC1G,MAAM,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,QAAQ;SACzB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,YAAY,KAAK,EAAE,CAAC;SAC3C,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,kBAAkB,oBAAoB,OAAO,WAAW,OAAO,CAAC;AACzE,CAAC"}