@baseplate-dev/fastify-generators 0.5.3 → 0.6.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 (177) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/dist/constants/fastify-packages.d.ts +14 -14
  3. package/dist/constants/fastify-packages.js +14 -14
  4. package/dist/constants/fastify-packages.js.map +1 -1
  5. package/dist/generators/auth/auth-context/templates/module/types/auth-context.types.ts +1 -0
  6. package/dist/generators/auth/auth-context/templates/module/utils/auth-context.utils.ts +3 -1
  7. package/dist/generators/core/fastify/fastify.generator.d.ts.map +1 -1
  8. package/dist/generators/core/fastify/fastify.generator.js +3 -1
  9. package/dist/generators/core/fastify/fastify.generator.js.map +1 -1
  10. package/dist/generators/pothos/index.d.ts +1 -0
  11. package/dist/generators/pothos/index.d.ts.map +1 -1
  12. package/dist/generators/pothos/index.js +1 -0
  13. package/dist/generators/pothos/index.js.map +1 -1
  14. package/dist/generators/pothos/pothos-auth/pothos-auth.generator.d.ts +5 -0
  15. package/dist/generators/pothos/pothos-auth/pothos-auth.generator.d.ts.map +1 -1
  16. package/dist/generators/pothos/pothos-auth/pothos-auth.generator.js +8 -0
  17. package/dist/generators/pothos/pothos-auth/pothos-auth.generator.js.map +1 -1
  18. package/dist/generators/pothos/pothos-prisma-count-query/index.d.ts +2 -0
  19. package/dist/generators/pothos/pothos-prisma-count-query/index.d.ts.map +1 -0
  20. package/dist/generators/pothos/pothos-prisma-count-query/index.js +2 -0
  21. package/dist/generators/pothos/pothos-prisma-count-query/index.js.map +1 -0
  22. package/dist/generators/pothos/pothos-prisma-count-query/pothos-prisma-count-query.generator.d.ts +16 -0
  23. package/dist/generators/pothos/pothos-prisma-count-query/pothos-prisma-count-query.generator.d.ts.map +1 -0
  24. package/dist/generators/pothos/pothos-prisma-count-query/pothos-prisma-count-query.generator.js +104 -0
  25. package/dist/generators/pothos/pothos-prisma-count-query/pothos-prisma-count-query.generator.js.map +1 -0
  26. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.d.ts.map +1 -1
  27. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js +2 -5
  28. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js.map +1 -1
  29. package/dist/generators/pothos/pothos-prisma-find-query/pothos-prisma-find-query.generator.d.ts +4 -0
  30. package/dist/generators/pothos/pothos-prisma-find-query/pothos-prisma-find-query.generator.d.ts.map +1 -1
  31. package/dist/generators/pothos/pothos-prisma-find-query/pothos-prisma-find-query.generator.js +52 -10
  32. package/dist/generators/pothos/pothos-prisma-find-query/pothos-prisma-find-query.generator.js.map +1 -1
  33. package/dist/generators/pothos/pothos-prisma-list-query/pothos-prisma-list-query.generator.d.ts +4 -0
  34. package/dist/generators/pothos/pothos-prisma-list-query/pothos-prisma-list-query.generator.d.ts.map +1 -1
  35. package/dist/generators/pothos/pothos-prisma-list-query/pothos-prisma-list-query.generator.js +39 -3
  36. package/dist/generators/pothos/pothos-prisma-list-query/pothos-prisma-list-query.generator.js.map +1 -1
  37. package/dist/generators/pothos/pothos-prisma-object/pothos-prisma-object.generator.d.ts +7 -1
  38. package/dist/generators/pothos/pothos-prisma-object/pothos-prisma-object.generator.d.ts.map +1 -1
  39. package/dist/generators/pothos/pothos-prisma-object/pothos-prisma-object.generator.js +73 -13
  40. package/dist/generators/pothos/pothos-prisma-object/pothos-prisma-object.generator.js.map +1 -1
  41. package/dist/generators/prisma/_shared/build-data-helpers/generate-authorize-fragment.d.ts +20 -0
  42. package/dist/generators/prisma/_shared/build-data-helpers/generate-authorize-fragment.d.ts.map +1 -0
  43. package/dist/generators/prisma/_shared/build-data-helpers/generate-authorize-fragment.js +28 -0
  44. package/dist/generators/prisma/_shared/build-data-helpers/generate-authorize-fragment.js.map +1 -0
  45. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts +48 -55
  46. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts.map +1 -1
  47. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js +130 -67
  48. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js.map +1 -1
  49. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts +2 -0
  50. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts.map +1 -1
  51. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js +3 -3
  52. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js.map +1 -1
  53. package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts +1 -0
  54. package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts.map +1 -1
  55. package/dist/generators/prisma/_shared/build-data-helpers/index.js +1 -0
  56. package/dist/generators/prisma/_shared/build-data-helpers/index.js.map +1 -1
  57. package/dist/generators/prisma/data-utils/data-utils.generator.d.ts +25 -6
  58. package/dist/generators/prisma/data-utils/data-utils.generator.d.ts.map +1 -1
  59. package/dist/generators/prisma/data-utils/generated/index.d.ts +78 -23
  60. package/dist/generators/prisma/data-utils/generated/index.d.ts.map +1 -1
  61. package/dist/generators/prisma/data-utils/generated/template-paths.d.ts +3 -1
  62. package/dist/generators/prisma/data-utils/generated/template-paths.d.ts.map +1 -1
  63. package/dist/generators/prisma/data-utils/generated/template-paths.js +3 -1
  64. package/dist/generators/prisma/data-utils/generated/template-paths.js.map +1 -1
  65. package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts +75 -18
  66. package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts.map +1 -1
  67. package/dist/generators/prisma/data-utils/generated/ts-import-providers.js +26 -8
  68. package/dist/generators/prisma/data-utils/generated/ts-import-providers.js.map +1 -1
  69. package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts +106 -34
  70. package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts.map +1 -1
  71. package/dist/generators/prisma/data-utils/generated/typed-templates.js +61 -14
  72. package/dist/generators/prisma/data-utils/generated/typed-templates.js.map +1 -1
  73. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/commit-operations.ts +366 -0
  74. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/compose-operations.ts +131 -0
  75. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/field-definitions.ts +26 -30
  76. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/field-utils.ts +201 -0
  77. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-types.ts +24 -20
  78. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-utils.ts +14 -6
  79. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/relation-helpers.ts +21 -26
  80. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/types.ts +374 -25
  81. package/dist/generators/prisma/index.d.ts +2 -0
  82. package/dist/generators/prisma/index.d.ts.map +1 -1
  83. package/dist/generators/prisma/index.js +2 -0
  84. package/dist/generators/prisma/index.js.map +1 -1
  85. package/dist/generators/prisma/prisma-authorizer-utils/generated/index.d.ts +50 -12
  86. package/dist/generators/prisma/prisma-authorizer-utils/generated/index.d.ts.map +1 -1
  87. package/dist/generators/prisma/prisma-authorizer-utils/generated/template-renderers.d.ts +25 -6
  88. package/dist/generators/prisma/prisma-authorizer-utils/generated/template-renderers.d.ts.map +1 -1
  89. package/dist/generators/prisma/prisma-authorizer-utils/generated/typed-templates.d.ts +50 -12
  90. package/dist/generators/prisma/prisma-authorizer-utils/generated/typed-templates.d.ts.map +1 -1
  91. package/dist/generators/prisma/prisma-authorizer-utils/prisma-authorizer-utils.generator.d.ts +25 -6
  92. package/dist/generators/prisma/prisma-authorizer-utils/prisma-authorizer-utils.generator.d.ts.map +1 -1
  93. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts +26 -6
  94. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts.map +1 -1
  95. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js +53 -25
  96. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js.map +1 -1
  97. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts +31 -6
  98. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts.map +1 -1
  99. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js +52 -15
  100. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js.map +1 -1
  101. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts +25 -6
  102. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts.map +1 -1
  103. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts +25 -6
  104. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts.map +1 -1
  105. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts +31 -6
  106. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts.map +1 -1
  107. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js +65 -23
  108. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js.map +1 -1
  109. package/dist/generators/prisma/prisma-model-authorizer/prisma-model-authorizer.generator.d.ts +2 -0
  110. package/dist/generators/prisma/prisma-model-authorizer/prisma-model-authorizer.generator.d.ts.map +1 -1
  111. package/dist/generators/prisma/prisma-model-authorizer/prisma-model-authorizer.generator.js +86 -53
  112. package/dist/generators/prisma/prisma-model-authorizer/prisma-model-authorizer.generator.js.map +1 -1
  113. package/dist/generators/prisma/prisma-model-query-filter/index.d.ts +2 -0
  114. package/dist/generators/prisma/prisma-model-query-filter/index.d.ts.map +1 -0
  115. package/dist/generators/prisma/prisma-model-query-filter/index.js +2 -0
  116. package/dist/generators/prisma/prisma-model-query-filter/index.js.map +1 -0
  117. package/dist/generators/prisma/prisma-model-query-filter/prisma-model-query-filter.generator.d.ts +60 -0
  118. package/dist/generators/prisma/prisma-model-query-filter/prisma-model-query-filter.generator.d.ts.map +1 -0
  119. package/dist/generators/prisma/prisma-model-query-filter/prisma-model-query-filter.generator.js +124 -0
  120. package/dist/generators/prisma/prisma-model-query-filter/prisma-model-query-filter.generator.js.map +1 -0
  121. package/dist/generators/prisma/prisma-query-filter-utils/generated/index.d.ts +364 -0
  122. package/dist/generators/prisma/prisma-query-filter-utils/generated/index.d.ts.map +1 -0
  123. package/dist/generators/prisma/prisma-query-filter-utils/generated/index.js +13 -0
  124. package/dist/generators/prisma/prisma-query-filter-utils/generated/index.js.map +1 -0
  125. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-paths.d.ts +13 -0
  126. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-paths.d.ts.map +1 -0
  127. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-paths.js +25 -0
  128. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-paths.js.map +1 -0
  129. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-renderers.d.ts +131 -0
  130. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-renderers.d.ts.map +1 -0
  131. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-renderers.js +49 -0
  132. package/dist/generators/prisma/prisma-query-filter-utils/generated/template-renderers.js.map +1 -0
  133. package/dist/generators/prisma/prisma-query-filter-utils/generated/ts-import-providers.d.ts +66 -0
  134. package/dist/generators/prisma/prisma-query-filter-utils/generated/ts-import-providers.d.ts.map +1 -0
  135. package/dist/generators/prisma/prisma-query-filter-utils/generated/ts-import-providers.js +40 -0
  136. package/dist/generators/prisma/prisma-query-filter-utils/generated/ts-import-providers.js.map +1 -0
  137. package/dist/generators/prisma/prisma-query-filter-utils/generated/typed-templates.d.ts +411 -0
  138. package/dist/generators/prisma/prisma-query-filter-utils/generated/typed-templates.d.ts.map +1 -0
  139. package/dist/generators/prisma/prisma-query-filter-utils/generated/typed-templates.js +46 -0
  140. package/dist/generators/prisma/prisma-query-filter-utils/generated/typed-templates.js.map +1 -0
  141. package/dist/generators/prisma/prisma-query-filter-utils/index.d.ts +4 -0
  142. package/dist/generators/prisma/prisma-query-filter-utils/index.d.ts.map +1 -0
  143. package/dist/generators/prisma/prisma-query-filter-utils/index.js +3 -0
  144. package/dist/generators/prisma/prisma-query-filter-utils/index.js.map +1 -0
  145. package/dist/generators/prisma/prisma-query-filter-utils/prisma-query-filter-utils.generator.d.ts +156 -0
  146. package/dist/generators/prisma/prisma-query-filter-utils/prisma-query-filter-utils.generator.d.ts.map +1 -0
  147. package/dist/generators/prisma/prisma-query-filter-utils/prisma-query-filter-utils.generator.js +32 -0
  148. package/dist/generators/prisma/prisma-query-filter-utils/prisma-query-filter-utils.generator.js.map +1 -0
  149. package/dist/generators/prisma/prisma-query-filter-utils/templates/src/utils/query-filters.ts +209 -0
  150. package/dist/generators/prisma/prisma-query-filter-utils/templates/src/utils/query-helpers.ts +70 -0
  151. package/dist/generators/vitest/prisma-vitest/generated/index.d.ts +0 -6
  152. package/dist/generators/vitest/prisma-vitest/generated/index.d.ts.map +1 -1
  153. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.d.ts.map +1 -1
  154. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js +0 -1
  155. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js.map +1 -1
  156. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts +0 -6
  157. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts.map +1 -1
  158. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js +1 -4
  159. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js.map +1 -1
  160. package/dist/generators/vitest/prisma-vitest/templates/src/tests/helpers/prisma.test-helper.ts +2 -10
  161. package/dist/types/service-dto-kinds.d.ts +0 -6
  162. package/dist/types/service-dto-kinds.d.ts.map +1 -1
  163. package/dist/types/service-dto-kinds.js +0 -6
  164. package/dist/types/service-dto-kinds.js.map +1 -1
  165. package/dist/writers/pothos/helpers.d.ts +1 -0
  166. package/dist/writers/pothos/helpers.d.ts.map +1 -1
  167. package/dist/writers/pothos/helpers.js +1 -0
  168. package/dist/writers/pothos/helpers.js.map +1 -1
  169. package/dist/writers/pothos/scalar-fields.d.ts +3 -1
  170. package/dist/writers/pothos/scalar-fields.d.ts.map +1 -1
  171. package/dist/writers/pothos/scalar-fields.js +1 -0
  172. package/dist/writers/pothos/scalar-fields.js.map +1 -1
  173. package/dist/writers/prisma-schema/fields.d.ts +1 -1
  174. package/dist/writers/prisma-schema/fields.js +2 -2
  175. package/dist/writers/prisma-schema/fields.js.map +1 -1
  176. package/package.json +8 -8
  177. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/define-operations.ts +0 -1134
@@ -2,9 +2,9 @@ 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 create operation callback
5
+ * Configuration for generating create/update execute callbacks
6
6
  */
7
- interface GenerateCreateCallbackConfig {
7
+ interface GenerateExecuteCallbackConfig {
8
8
  /** Prisma model to analyze for relations */
9
9
  prismaModel: PrismaOutputModel;
10
10
  /** Field names that are included in the input */
@@ -15,33 +15,33 @@ interface GenerateCreateCallbackConfig {
15
15
  modelVariableName: string;
16
16
  }
17
17
  /**
18
- * Result of generating create operation callback
18
+ * Result of generating create execute callback
19
19
  */
20
- interface GenerateCreateCallbackResult {
21
- /** Complete create callback fragment: async ({ tx, data, query }) => { const item = await tx.model.create({...}); return item; } */
22
- createCallbackFragment: TsCodeFragment;
20
+ interface GenerateCreateExecuteCallbackResult {
21
+ /** Execute callback fragment: async ({ tx, data, query }) => tx.model.create({ data, ...query }) */
22
+ executeCallbackFragment: TsCodeFragment;
23
23
  }
24
24
  /**
25
- * Generates a create operation callback that transforms foreign key fields into Prisma relation objects
25
+ * Generates a create execute callback that transforms foreign key fields into Prisma relation objects.
26
26
  *
27
27
  * @param config - Configuration including Prisma model, input fields, and model name
28
- * @returns Result containing the create callback function fragment
28
+ * @returns Result containing the execute callback function fragment
29
29
  *
30
30
  * @example
31
- * // No relations
32
- * generateCreateCallback({...})
33
- * // Returns: async ({ tx, data, query }) => {
34
- * // const item = await tx.user.create({ data, ...query });
31
+ * // No relations (query is omitted since the model has no include support)
32
+ * generateCreateExecuteCallback({...})
33
+ * // Returns: async ({ tx, data }) => {
34
+ * // const item = await tx.user.create({ data });
35
35
  * // return item;
36
36
  * // }
37
37
  *
38
38
  * @example
39
39
  * // With relations
40
- * generateCreateCallback({...})
41
- * // Returns: async ({ tx, data: { assigneeId, todoListId, ...data }, query }) => {
40
+ * generateCreateExecuteCallback({...})
41
+ * // Returns: async ({ tx, data: { assigneeId, todoListId, ...rest }, query }) => {
42
42
  * // const item = await tx.todoItem.create({
43
43
  * // data: {
44
- * // ...data,
44
+ * // ...rest,
45
45
  * // assignee: relationHelpers.connectCreate({ id: assigneeId }),
46
46
  * // todoList: relationHelpers.connectCreate({ id: todoListId }),
47
47
  * // },
@@ -50,49 +50,39 @@ interface GenerateCreateCallbackResult {
50
50
  * // return item;
51
51
  * // }
52
52
  */
53
- export declare function generateCreateCallback(config: GenerateCreateCallbackConfig): GenerateCreateCallbackResult;
53
+ export declare function generateCreateExecuteCallback(config: GenerateExecuteCallbackConfig): GenerateCreateExecuteCallbackResult;
54
54
  /**
55
- * Configuration for generating update operation callback
55
+ * Result of generating update execute callback
56
56
  */
57
- interface GenerateUpdateCallbackConfig {
58
- /** Prisma model to analyze for relations */
59
- prismaModel: PrismaOutputModel;
60
- /** Field names that are included in the input */
61
- inputFieldNames: string[];
62
- /** Data utils imports provider for accessing relationHelpers fragments */
63
- dataUtilsImports: DataUtilsImportsProvider;
64
- /** Prisma model variable name in camelCase (e.g., 'todoItem', 'user') */
65
- modelVariableName: string;
66
- }
67
- /**
68
- * Result of generating update operation callback
69
- */
70
- interface GenerateUpdateCallbackResult {
71
- /** Complete update callback fragment: async ({ tx, where, data, query }) => { const item = await tx.model.update({...}); return item; } */
72
- updateCallbackFragment: TsCodeFragment;
57
+ interface GenerateUpdateExecuteCallbackResult {
58
+ /** Execute callback fragment: async ({ tx, data, query }) => tx.model.update({ where, data, ...query }) */
59
+ executeCallbackFragment: TsCodeFragment;
73
60
  }
74
61
  /**
75
- * Generates an update operation callback that transforms foreign key fields into Prisma relation objects
62
+ * Generates an update execute callback that transforms foreign key fields into Prisma relation objects.
63
+ *
64
+ * The `where` clause is captured from the enclosing function scope rather than
65
+ * passed as a callback argument.
76
66
  *
77
67
  * @param config - Configuration including Prisma model, input fields, and model name
78
- * @returns Result containing the update callback function fragment
68
+ * @returns Result containing the execute callback function fragment
79
69
  *
80
70
  * @example
81
- * // No relations
82
- * generateUpdateCallback({...})
83
- * // Returns: async ({ tx, where, data, query }) => {
84
- * // const item = await tx.user.update({ where, data, ...query });
71
+ * // No relations (query is omitted since the model has no include support)
72
+ * generateUpdateExecuteCallback({...})
73
+ * // Returns: async ({ tx, data }) => {
74
+ * // const item = await tx.user.update({ where, data });
85
75
  * // return item;
86
76
  * // }
87
77
  *
88
78
  * @example
89
79
  * // With relations
90
- * generateUpdateCallback({...})
91
- * // Returns: async ({ tx, where, data: { assigneeId, todoListId, ...data }, query }) => {
80
+ * generateUpdateExecuteCallback({...})
81
+ * // Returns: async ({ tx, data: { assigneeId, todoListId, ...rest }, query }) => {
92
82
  * // const item = await tx.todoItem.update({
93
83
  * // where,
94
84
  * // data: {
95
- * // ...data,
85
+ * // ...rest,
96
86
  * // assignee: relationHelpers.connectUpdate({ id: assigneeId }),
97
87
  * // todoList: relationHelpers.connectUpdate({ id: todoListId }),
98
88
  * // },
@@ -101,37 +91,40 @@ interface GenerateUpdateCallbackResult {
101
91
  * // return item;
102
92
  * // }
103
93
  */
104
- export declare function generateUpdateCallback(config: GenerateUpdateCallbackConfig): GenerateUpdateCallbackResult;
94
+ export declare function generateUpdateExecuteCallback(config: GenerateExecuteCallbackConfig): GenerateUpdateExecuteCallbackResult;
105
95
  /**
106
- * Configuration for generating delete operation callback
96
+ * Configuration for generating delete execute callback
107
97
  */
108
- interface GenerateDeleteCallbackConfig {
98
+ interface GenerateDeleteExecuteCallbackConfig {
99
+ /** Prisma model to check for relations */
100
+ prismaModel: PrismaOutputModel;
109
101
  /** Prisma model variable name in camelCase (e.g., 'todoItem', 'user') */
110
102
  modelVariableName: string;
111
103
  }
112
104
  /**
113
- * Result of generating delete operation callback
105
+ * Result of generating delete execute callback
114
106
  */
115
- interface GenerateDeleteCallbackResult {
116
- /** Complete delete callback fragment: async ({ tx, where, query }) => { const item = await tx.model.delete({...}); return item; } */
117
- deleteCallbackFragment: TsCodeFragment;
107
+ interface GenerateDeleteExecuteCallbackResult {
108
+ /** Execute callback fragment: async ({ tx, query }) => { const item = await tx.model.delete({ where, ...query }); return item; } */
109
+ executeCallbackFragment: TsCodeFragment;
118
110
  }
119
111
  /**
120
- * Generates a delete operation callback
112
+ * Generates a delete execute callback.
121
113
  *
122
114
  * Delete operations don't need data transformation, so this simply generates
123
- * a callback that passes through the where clause and query parameters.
115
+ * a callback that deletes the record. The `where` clause is captured from the
116
+ * enclosing function scope rather than passed as a callback argument.
124
117
  *
125
118
  * @param config - Configuration with model name
126
- * @returns Result containing the delete callback function fragment
119
+ * @returns Result containing the execute callback function fragment
127
120
  *
128
121
  * @example
129
- * generateDeleteCallback({ modelVariableName: 'todoItem' })
130
- * // Returns: async ({ tx, where, query }) => {
122
+ * generateDeleteExecuteCallback({ modelVariableName: 'todoItem' })
123
+ * // Returns: async ({ tx, query }) => {
131
124
  * // const item = await tx.todoItem.delete({ where, ...query });
132
125
  * // return item;
133
126
  * // }
134
127
  */
135
- export declare function generateDeleteCallback(config: GenerateDeleteCallbackConfig): GenerateDeleteCallbackResult;
128
+ export declare function generateDeleteExecuteCallback(config: GenerateDeleteExecuteCallbackConfig): GenerateDeleteExecuteCallbackResult;
136
129
  export {};
137
130
  //# sourceMappingURL=generate-operation-callbacks.d.ts.map
@@ -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,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"}
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,6BAA6B;IACrC,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;AAUD;;GAEG;AACH,UAAU,mCAAmC;IAC3C,oGAAoG;IACpG,uBAAuB,EAAE,cAAc,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,6BAA6B,GACpC,mCAAmC,CA4DrC;AAED;;GAEG;AACH,UAAU,mCAAmC;IAC3C,2GAA2G;IAC3G,uBAAuB,EAAE,cAAc,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,6BAA6B,GACpC,mCAAmC,CAgErC;AAED;;GAEG;AACH,UAAU,mCAAmC;IAC3C,0CAA0C;IAC1C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,UAAU,mCAAmC;IAC3C,oIAAoI;IACpI,uBAAuB,EAAE,cAAc,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,mCAAmC,GAC1C,mCAAmC,CAwBrC"}
@@ -1,26 +1,33 @@
1
1
  import { tsTemplate } from '@baseplate-dev/core-generators';
2
2
  import { generateRelationBuildData } from './generate-relation-build-data.js';
3
3
  /**
4
- * Generates a create operation callback that transforms foreign key fields into Prisma relation objects
4
+ * Check if a Prisma model has any relation fields.
5
+ * Models without relations don't have `include` in their Prisma args.
6
+ */
7
+ function modelHasRelations(prismaModel) {
8
+ return prismaModel.fields.some((field) => field.type === 'relation');
9
+ }
10
+ /**
11
+ * Generates a create execute callback that transforms foreign key fields into Prisma relation objects.
5
12
  *
6
13
  * @param config - Configuration including Prisma model, input fields, and model name
7
- * @returns Result containing the create callback function fragment
14
+ * @returns Result containing the execute callback function fragment
8
15
  *
9
16
  * @example
10
- * // No relations
11
- * generateCreateCallback({...})
12
- * // Returns: async ({ tx, data, query }) => {
13
- * // const item = await tx.user.create({ data, ...query });
17
+ * // No relations (query is omitted since the model has no include support)
18
+ * generateCreateExecuteCallback({...})
19
+ * // Returns: async ({ tx, data }) => {
20
+ * // const item = await tx.user.create({ data });
14
21
  * // return item;
15
22
  * // }
16
23
  *
17
24
  * @example
18
25
  * // With relations
19
- * generateCreateCallback({...})
20
- * // Returns: async ({ tx, data: { assigneeId, todoListId, ...data }, query }) => {
26
+ * generateCreateExecuteCallback({...})
27
+ * // Returns: async ({ tx, data: { assigneeId, todoListId, ...rest }, query }) => {
21
28
  * // const item = await tx.todoItem.create({
22
29
  * // data: {
23
- * // ...data,
30
+ * // ...rest,
24
31
  * // assignee: relationHelpers.connectCreate({ id: assigneeId }),
25
32
  * // todoList: relationHelpers.connectCreate({ id: todoListId }),
26
33
  * // },
@@ -29,60 +36,83 @@ import { generateRelationBuildData } from './generate-relation-build-data.js';
29
36
  * // return item;
30
37
  * // }
31
38
  */
32
- export function generateCreateCallback(config) {
39
+ export function generateCreateExecuteCallback(config) {
33
40
  const { prismaModel, inputFieldNames, dataUtilsImports, modelVariableName } = config;
34
41
  const { createArgumentFragment: argumentFragment, createReturnFragment: returnFragment, passthrough, } = generateRelationBuildData({
35
42
  prismaModel,
36
43
  inputFieldNames,
37
44
  dataUtilsImports,
45
+ dataName: 'rest',
38
46
  });
47
+ const hasRelations = modelHasRelations(prismaModel);
39
48
  if (passthrough) {
40
49
  return {
41
- createCallbackFragment: tsTemplate `
42
- async ({ tx, data, query }) => {
50
+ executeCallbackFragment: hasRelations
51
+ ? tsTemplate `
52
+ async ({ tx, data, query }) => {
53
+ const item = await tx.${modelVariableName}.create({
54
+ data,
55
+ ...query,
56
+ });
57
+ return item;
58
+ }
59
+ `
60
+ : tsTemplate `
61
+ async ({ tx, data }) => {
62
+ const item = await tx.${modelVariableName}.create({
63
+ data,
64
+ });
65
+ return item;
66
+ }
67
+ `,
68
+ };
69
+ }
70
+ return {
71
+ executeCallbackFragment: hasRelations
72
+ ? tsTemplate `
73
+ async ({ tx, data: ${argumentFragment}, query }) => {
43
74
  const item = await tx.${modelVariableName}.create({
44
- data,
75
+ data: ${returnFragment},
45
76
  ...query,
46
77
  });
47
78
  return item;
48
79
  }
80
+ `
81
+ : tsTemplate `
82
+ async ({ tx, data: ${argumentFragment} }) => {
83
+ const item = await tx.${modelVariableName}.create({
84
+ data: ${returnFragment},
85
+ });
86
+ return item;
87
+ }
49
88
  `,
50
- };
51
- }
52
- return {
53
- createCallbackFragment: tsTemplate `
54
- async ({ tx, data: ${argumentFragment}, query }) => {
55
- const item = await tx.${modelVariableName}.create({
56
- data: ${returnFragment},
57
- ...query,
58
- });
59
- return item;
60
- }
61
- `,
62
89
  };
63
90
  }
64
91
  /**
65
- * Generates an update operation callback that transforms foreign key fields into Prisma relation objects
92
+ * Generates an update execute callback that transforms foreign key fields into Prisma relation objects.
93
+ *
94
+ * The `where` clause is captured from the enclosing function scope rather than
95
+ * passed as a callback argument.
66
96
  *
67
97
  * @param config - Configuration including Prisma model, input fields, and model name
68
- * @returns Result containing the update callback function fragment
98
+ * @returns Result containing the execute callback function fragment
69
99
  *
70
100
  * @example
71
- * // No relations
72
- * generateUpdateCallback({...})
73
- * // Returns: async ({ tx, where, data, query }) => {
74
- * // const item = await tx.user.update({ where, data, ...query });
101
+ * // No relations (query is omitted since the model has no include support)
102
+ * generateUpdateExecuteCallback({...})
103
+ * // Returns: async ({ tx, data }) => {
104
+ * // const item = await tx.user.update({ where, data });
75
105
  * // return item;
76
106
  * // }
77
107
  *
78
108
  * @example
79
109
  * // With relations
80
- * generateUpdateCallback({...})
81
- * // Returns: async ({ tx, where, data: { assigneeId, todoListId, ...data }, query }) => {
110
+ * generateUpdateExecuteCallback({...})
111
+ * // Returns: async ({ tx, data: { assigneeId, todoListId, ...rest }, query }) => {
82
112
  * // const item = await tx.todoItem.update({
83
113
  * // where,
84
114
  * // data: {
85
- * // ...data,
115
+ * // ...rest,
86
116
  * // assignee: relationHelpers.connectUpdate({ id: assigneeId }),
87
117
  * // todoList: relationHelpers.connectUpdate({ id: todoListId }),
88
118
  * // },
@@ -91,68 +121,101 @@ export function generateCreateCallback(config) {
91
121
  * // return item;
92
122
  * // }
93
123
  */
94
- export function generateUpdateCallback(config) {
124
+ export function generateUpdateExecuteCallback(config) {
95
125
  const { prismaModel, inputFieldNames, dataUtilsImports, modelVariableName } = config;
96
126
  const { updateArgumentFragment: argumentFragment, updateReturnFragment: returnFragment, passthrough, } = generateRelationBuildData({
97
127
  prismaModel,
98
128
  inputFieldNames,
99
129
  dataUtilsImports,
130
+ dataName: 'rest',
100
131
  });
132
+ const hasRelations = modelHasRelations(prismaModel);
101
133
  if (passthrough) {
102
134
  return {
103
- updateCallbackFragment: tsTemplate `
104
- async ({ tx, where, data, query }) => {
135
+ executeCallbackFragment: hasRelations
136
+ ? tsTemplate `
137
+ async ({ tx, data, query }) => {
138
+ const item = await tx.${modelVariableName}.update({
139
+ where,
140
+ data,
141
+ ...query,
142
+ });
143
+ return item;
144
+ }
145
+ `
146
+ : tsTemplate `
147
+ async ({ tx, data }) => {
148
+ const item = await tx.${modelVariableName}.update({
149
+ where,
150
+ data,
151
+ });
152
+ return item;
153
+ }
154
+ `,
155
+ };
156
+ }
157
+ return {
158
+ executeCallbackFragment: hasRelations
159
+ ? tsTemplate `
160
+ async ({ tx, data: ${argumentFragment}, query }) => {
105
161
  const item = await tx.${modelVariableName}.update({
106
162
  where,
107
- data,
163
+ data: ${returnFragment},
108
164
  ...query,
109
165
  });
110
166
  return item;
111
167
  }
168
+ `
169
+ : tsTemplate `
170
+ async ({ tx, data: ${argumentFragment} }) => {
171
+ const item = await tx.${modelVariableName}.update({
172
+ where,
173
+ data: ${returnFragment},
174
+ });
175
+ return item;
176
+ }
112
177
  `,
113
- };
114
- }
115
- return {
116
- updateCallbackFragment: tsTemplate `
117
- async ({ tx, where, data: ${argumentFragment}, query }) => {
118
- const item = await tx.${modelVariableName}.update({
119
- where,
120
- data: ${returnFragment},
121
- ...query,
122
- });
123
- return item;
124
- }
125
- `,
126
178
  };
127
179
  }
128
180
  /**
129
- * Generates a delete operation callback
181
+ * Generates a delete execute callback.
130
182
  *
131
183
  * Delete operations don't need data transformation, so this simply generates
132
- * a callback that passes through the where clause and query parameters.
184
+ * a callback that deletes the record. The `where` clause is captured from the
185
+ * enclosing function scope rather than passed as a callback argument.
133
186
  *
134
187
  * @param config - Configuration with model name
135
- * @returns Result containing the delete callback function fragment
188
+ * @returns Result containing the execute callback function fragment
136
189
  *
137
190
  * @example
138
- * generateDeleteCallback({ modelVariableName: 'todoItem' })
139
- * // Returns: async ({ tx, where, query }) => {
191
+ * generateDeleteExecuteCallback({ modelVariableName: 'todoItem' })
192
+ * // Returns: async ({ tx, query }) => {
140
193
  * // const item = await tx.todoItem.delete({ where, ...query });
141
194
  * // return item;
142
195
  * // }
143
196
  */
144
- export function generateDeleteCallback(config) {
145
- const { modelVariableName } = config;
197
+ export function generateDeleteExecuteCallback(config) {
198
+ const { prismaModel, modelVariableName } = config;
199
+ const hasRelations = modelHasRelations(prismaModel);
146
200
  return {
147
- deleteCallbackFragment: tsTemplate `
148
- async ({ tx, where, query }) => {
149
- const item = await tx.${modelVariableName}.delete({
150
- where,
151
- ...query,
152
- });
153
- return item;
154
- }
155
- `,
201
+ executeCallbackFragment: hasRelations
202
+ ? tsTemplate `
203
+ async ({ tx, query }) => {
204
+ const item = await tx.${modelVariableName}.delete({
205
+ where,
206
+ ...query,
207
+ });
208
+ return item;
209
+ }
210
+ `
211
+ : tsTemplate `
212
+ async ({ tx }) => {
213
+ const item = await tx.${modelVariableName}.delete({
214
+ where,
215
+ });
216
+ return item;
217
+ }
218
+ `,
156
219
  };
157
220
  }
158
221
  //# sourceMappingURL=generate-operation-callbacks.js.map
@@ -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,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"}
1
+ {"version":3,"file":"generate-operation-callbacks.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ interface GenerateRelationBuildDataConfig {
11
11
  inputFieldNames: string[];
12
12
  /** Data utils imports provider for accessing relationHelpers fragments */
13
13
  dataUtilsImports: DataUtilsImportsProvider;
14
+ /** Name for the spread rest variable in destructuring (default: 'data') */
15
+ dataName?: string;
14
16
  }
15
17
  /**
16
18
  * Result of generating relation buildData functions
@@ -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,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"}
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;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;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,CAuCjC"}
@@ -158,14 +158,14 @@ function generateBuildDataBody(foreignKeyFields, operationType, dataUtilsImports
158
158
  * // buildUpdateDataFragment: (data) => data
159
159
  */
160
160
  export function generateRelationBuildData(config) {
161
- const { prismaModel, inputFieldNames, dataUtilsImports } = config;
161
+ const { prismaModel, inputFieldNames, dataUtilsImports, dataName } = config;
162
162
  // Find all relations that have at least one FK field in the input
163
163
  const relevantRelations = findRelevantRelations(prismaModel, inputFieldNames);
164
164
  // Extract all foreign key field names
165
165
  const foreignKeyFieldNames = extractForeignKeyFields(relevantRelations);
166
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);
167
+ const createBody = generateBuildDataBody(foreignKeyFieldNames, 'create', dataUtilsImports, relevantRelations, inputFieldNames, dataName);
168
+ const updateBody = generateBuildDataBody(foreignKeyFieldNames, 'update', dataUtilsImports, relevantRelations, inputFieldNames, dataName);
169
169
  // Both should have the same passthrough status since they use the same relations
170
170
  const passthrough = createBody.passthrough && updateBody.passthrough;
171
171
  return {
@@ -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":"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"}
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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"}
@@ -1,3 +1,4 @@
1
+ export * from './generate-authorize-fragment.js';
1
2
  export * from './generate-operation-callbacks.js';
2
3
  export * from './generate-relation-build-data.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './generate-authorize-fragment.js';
1
2
  export * from './generate-operation-callbacks.js';
2
3
  export * from './generate-relation-build-data.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/_shared/build-data-helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC"}
@@ -59,13 +59,24 @@ export declare const dataUtilsGenerator: import("@baseplate-dev/sync").Generator
59
59
  AnyOperationHooks: {
60
60
  isTypeOnly: true;
61
61
  };
62
+ commitCreate: {};
63
+ commitDelete: {};
64
+ commitUpdate: {};
65
+ composeCreate: {};
66
+ composeUpdate: {};
62
67
  createParentModelConfig: {};
68
+ DataCreateInput: {
69
+ isTypeOnly: true;
70
+ };
71
+ DataDeleteInput: {
72
+ isTypeOnly: true;
73
+ };
63
74
  DataOperationType: {
64
75
  isTypeOnly: true;
65
76
  };
66
- defineCreateOperation: {};
67
- defineDeleteOperation: {};
68
- defineUpdateOperation: {};
77
+ DataUpdateInput: {
78
+ isTypeOnly: true;
79
+ };
69
80
  FieldContext: {
70
81
  isTypeOnly: true;
71
82
  };
@@ -78,6 +89,8 @@ export declare const dataUtilsGenerator: import("@baseplate-dev/sync").Generator
78
89
  FieldTransformResult: {
79
90
  isTypeOnly: true;
80
91
  };
92
+ generateCreateSchema: {};
93
+ generateUpdateSchema: {};
81
94
  GetPayload: {
82
95
  isTypeOnly: true;
83
96
  };
@@ -87,6 +100,9 @@ export declare const dataUtilsGenerator: import("@baseplate-dev/sync").Generator
87
100
  InferInput: {
88
101
  isTypeOnly: true;
89
102
  };
103
+ ModelInclude: {
104
+ isTypeOnly: true;
105
+ };
90
106
  ModelPropName: {
91
107
  isTypeOnly: true;
92
108
  };
@@ -107,14 +123,17 @@ export declare const dataUtilsGenerator: import("@baseplate-dev/sync").Generator
107
123
  ParentModelConfig: {
108
124
  isTypeOnly: true;
109
125
  };
110
- PrismaTransaction: {
111
- isTypeOnly: true;
112
- };
113
126
  relationHelpers: {};
114
127
  scalarField: {};
115
128
  TransactionalOperationContext: {
116
129
  isTypeOnly: true;
117
130
  };
131
+ WhereInput: {
132
+ isTypeOnly: true;
133
+ };
134
+ WhereUniqueInput: {
135
+ isTypeOnly: true;
136
+ };
118
137
  }>>;
119
138
  }, {
120
139
  paths: import("@baseplate-dev/sync").ProviderType<import("./generated/template-paths.js").PrismaDataUtilsPaths>;
@@ -1 +1 @@
1
- {"version":3,"file":"data-utils.generator.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/data-utils/data-utils.generator.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB7B,CAAC"}
1
+ {"version":3,"file":"data-utils.generator.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/data-utils/data-utils.generator.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB7B,CAAC"}