@baseplate-dev/fastify-generators 0.3.8 → 0.4.0

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 (431) hide show
  1. package/dist/constants/fastify-packages.d.ts +12 -11
  2. package/dist/constants/fastify-packages.d.ts.map +1 -1
  3. package/dist/constants/fastify-packages.js +12 -11
  4. package/dist/constants/fastify-packages.js.map +1 -1
  5. package/dist/generators/auth/auth-context/generated/ts-import-providers.d.ts +1 -2
  6. package/dist/generators/auth/auth-context/generated/ts-import-providers.d.ts.map +1 -1
  7. package/dist/generators/auth/auth-context/generated/ts-import-providers.js +1 -1
  8. package/dist/generators/auth/auth-context/generated/ts-import-providers.js.map +1 -1
  9. package/dist/generators/auth/auth-roles/generated/ts-import-providers.d.ts +1 -2
  10. package/dist/generators/auth/auth-roles/generated/ts-import-providers.d.ts.map +1 -1
  11. package/dist/generators/auth/auth-roles/generated/ts-import-providers.js +1 -1
  12. package/dist/generators/auth/auth-roles/generated/ts-import-providers.js.map +1 -1
  13. package/dist/generators/auth/index.d.ts +0 -1
  14. package/dist/generators/auth/index.d.ts.map +1 -1
  15. package/dist/generators/auth/index.js +0 -1
  16. package/dist/generators/auth/index.js.map +1 -1
  17. package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.d.ts +1 -2
  18. package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.d.ts.map +1 -1
  19. package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.js +1 -1
  20. package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.js.map +1 -1
  21. package/dist/generators/auth/user-session-types/generated/ts-import-providers.d.ts +1 -2
  22. package/dist/generators/auth/user-session-types/generated/ts-import-providers.d.ts.map +1 -1
  23. package/dist/generators/auth/user-session-types/generated/ts-import-providers.js +1 -1
  24. package/dist/generators/auth/user-session-types/generated/ts-import-providers.js.map +1 -1
  25. package/dist/generators/bull/bull-mq/generated/ts-import-providers.d.ts +1 -2
  26. package/dist/generators/bull/bull-mq/generated/ts-import-providers.d.ts.map +1 -1
  27. package/dist/generators/bull/bull-mq/generated/ts-import-providers.js +1 -1
  28. package/dist/generators/bull/bull-mq/generated/ts-import-providers.js.map +1 -1
  29. package/dist/generators/core/app-module-setup/generated/ts-import-providers.d.ts +1 -2
  30. package/dist/generators/core/app-module-setup/generated/ts-import-providers.d.ts.map +1 -1
  31. package/dist/generators/core/app-module-setup/generated/ts-import-providers.js +1 -1
  32. package/dist/generators/core/app-module-setup/generated/ts-import-providers.js.map +1 -1
  33. package/dist/generators/core/axios/generated/ts-import-providers.d.ts +1 -2
  34. package/dist/generators/core/axios/generated/ts-import-providers.d.ts.map +1 -1
  35. package/dist/generators/core/axios/generated/ts-import-providers.js +3 -1
  36. package/dist/generators/core/axios/generated/ts-import-providers.js.map +1 -1
  37. package/dist/generators/core/config-service/generated/ts-import-providers.d.ts +1 -2
  38. package/dist/generators/core/config-service/generated/ts-import-providers.d.ts.map +1 -1
  39. package/dist/generators/core/config-service/generated/ts-import-providers.js +3 -1
  40. package/dist/generators/core/config-service/generated/ts-import-providers.js.map +1 -1
  41. package/dist/generators/core/error-handler-service/generated/ts-import-providers.d.ts +1 -2
  42. package/dist/generators/core/error-handler-service/generated/ts-import-providers.d.ts.map +1 -1
  43. package/dist/generators/core/error-handler-service/generated/ts-import-providers.js +1 -1
  44. package/dist/generators/core/error-handler-service/generated/ts-import-providers.js.map +1 -1
  45. package/dist/generators/core/fastify/fastify.generator.js +1 -1
  46. package/dist/generators/core/fastify/fastify.generator.js.map +1 -1
  47. package/dist/generators/core/fastify-redis/generated/ts-import-providers.d.ts +1 -2
  48. package/dist/generators/core/fastify-redis/generated/ts-import-providers.d.ts.map +1 -1
  49. package/dist/generators/core/fastify-redis/generated/ts-import-providers.js +1 -1
  50. package/dist/generators/core/fastify-redis/generated/ts-import-providers.js.map +1 -1
  51. package/dist/generators/core/fastify-sentry/fastify-sentry.generator.js +1 -1
  52. package/dist/generators/core/fastify-sentry/generated/ts-import-providers.d.ts +1 -2
  53. package/dist/generators/core/fastify-sentry/generated/ts-import-providers.d.ts.map +1 -1
  54. package/dist/generators/core/fastify-sentry/generated/ts-import-providers.js +1 -1
  55. package/dist/generators/core/fastify-sentry/generated/ts-import-providers.js.map +1 -1
  56. package/dist/generators/core/logger-service/generated/ts-import-providers.d.ts +1 -2
  57. package/dist/generators/core/logger-service/generated/ts-import-providers.d.ts.map +1 -1
  58. package/dist/generators/core/logger-service/generated/ts-import-providers.js +3 -1
  59. package/dist/generators/core/logger-service/generated/ts-import-providers.js.map +1 -1
  60. package/dist/generators/core/readme/templates/package/README.md +4 -4
  61. package/dist/generators/core/request-context/generated/ts-import-providers.d.ts +1 -2
  62. package/dist/generators/core/request-context/generated/ts-import-providers.d.ts.map +1 -1
  63. package/dist/generators/core/request-context/generated/ts-import-providers.js +1 -1
  64. package/dist/generators/core/request-context/generated/ts-import-providers.js.map +1 -1
  65. package/dist/generators/core/request-service-context/generated/ts-import-providers.d.ts +1 -2
  66. package/dist/generators/core/request-service-context/generated/ts-import-providers.d.ts.map +1 -1
  67. package/dist/generators/core/request-service-context/generated/ts-import-providers.js +1 -1
  68. package/dist/generators/core/request-service-context/generated/ts-import-providers.js.map +1 -1
  69. package/dist/generators/core/service-context/generated/ts-import-providers.d.ts +1 -2
  70. package/dist/generators/core/service-context/generated/ts-import-providers.d.ts.map +1 -1
  71. package/dist/generators/core/service-context/generated/ts-import-providers.js +1 -1
  72. package/dist/generators/core/service-context/generated/ts-import-providers.js.map +1 -1
  73. package/dist/generators/core/service-file/service-file.generator.d.ts +7 -0
  74. package/dist/generators/core/service-file/service-file.generator.d.ts.map +1 -1
  75. package/dist/generators/core/service-file/service-file.generator.js +12 -2
  76. package/dist/generators/core/service-file/service-file.generator.js.map +1 -1
  77. package/dist/generators/pothos/pothos/generated/index.d.ts +3 -1
  78. package/dist/generators/pothos/pothos/generated/index.d.ts.map +1 -1
  79. package/dist/generators/pothos/pothos/generated/ts-import-providers.d.ts +1 -2
  80. package/dist/generators/pothos/pothos/generated/ts-import-providers.d.ts.map +1 -1
  81. package/dist/generators/pothos/pothos/generated/ts-import-providers.js +1 -1
  82. package/dist/generators/pothos/pothos/generated/ts-import-providers.js.map +1 -1
  83. package/dist/generators/pothos/pothos/generated/typed-templates.d.ts +6 -2
  84. package/dist/generators/pothos/pothos/generated/typed-templates.d.ts.map +1 -1
  85. package/dist/generators/pothos/pothos/generated/typed-templates.js +1 -0
  86. package/dist/generators/pothos/pothos/generated/typed-templates.js.map +1 -1
  87. package/dist/generators/pothos/pothos/pothos.generator.d.ts +3 -3
  88. package/dist/generators/pothos/pothos/pothos.generator.d.ts.map +1 -1
  89. package/dist/generators/pothos/pothos/pothos.generator.js +4 -0
  90. package/dist/generators/pothos/pothos/pothos.generator.js.map +1 -1
  91. package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/global-types.ts +3 -5
  92. package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/schema-builder.ts +9 -4
  93. package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/types.ts +6 -1
  94. package/dist/generators/pothos/pothos-auth/pothos-auth.generator.d.ts +1 -1
  95. package/dist/generators/pothos/pothos-enums-file/pothos-enums-file.generator.d.ts +1 -1
  96. package/dist/generators/pothos/pothos-prisma/generated/index.d.ts +36 -0
  97. package/dist/generators/pothos/pothos-prisma/generated/index.d.ts.map +1 -0
  98. package/dist/generators/pothos/pothos-prisma/generated/index.js +11 -0
  99. package/dist/generators/pothos/pothos-prisma/generated/index.js.map +1 -0
  100. package/dist/generators/pothos/pothos-prisma/generated/template-paths.d.ts +12 -0
  101. package/dist/generators/pothos/pothos-prisma/generated/template-paths.d.ts.map +1 -0
  102. package/dist/generators/pothos/pothos-prisma/generated/template-paths.js +22 -0
  103. package/dist/generators/pothos/pothos-prisma/generated/template-paths.js.map +1 -0
  104. package/dist/generators/pothos/pothos-prisma/generated/template-renderers.d.ts +18 -0
  105. package/dist/generators/pothos/pothos-prisma/generated/template-renderers.d.ts.map +1 -0
  106. package/dist/generators/pothos/pothos-prisma/generated/template-renderers.js +34 -0
  107. package/dist/generators/pothos/pothos-prisma/generated/template-renderers.js.map +1 -0
  108. package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.d.ts +30 -0
  109. package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.d.ts.map +1 -0
  110. package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.js +30 -0
  111. package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.js.map +1 -0
  112. package/dist/generators/pothos/pothos-prisma/generated/typed-templates.d.ts +4 -0
  113. package/dist/generators/pothos/pothos-prisma/generated/typed-templates.d.ts.map +1 -0
  114. package/dist/generators/pothos/pothos-prisma/generated/typed-templates.js +14 -0
  115. package/dist/generators/pothos/pothos-prisma/generated/typed-templates.js.map +1 -0
  116. package/dist/generators/pothos/pothos-prisma/index.d.ts +2 -0
  117. package/dist/generators/pothos/pothos-prisma/index.d.ts.map +1 -1
  118. package/dist/generators/pothos/pothos-prisma/index.js +1 -0
  119. package/dist/generators/pothos/pothos-prisma/index.js.map +1 -1
  120. package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.d.ts +34 -1
  121. package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.d.ts.map +1 -1
  122. package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.js +20 -6
  123. package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.js.map +1 -1
  124. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.d.ts +2 -2
  125. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.d.ts.map +1 -1
  126. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js +87 -50
  127. package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js.map +1 -1
  128. package/dist/generators/pothos/pothos-scalar/generated/index.d.ts +9 -39
  129. package/dist/generators/pothos/pothos-scalar/generated/index.d.ts.map +1 -1
  130. package/dist/generators/pothos/pothos-scalar/generated/template-paths.d.ts +2 -0
  131. package/dist/generators/pothos/pothos-scalar/generated/template-paths.d.ts.map +1 -1
  132. package/dist/generators/pothos/pothos-scalar/generated/template-paths.js +2 -0
  133. package/dist/generators/pothos/pothos-scalar/generated/template-paths.js.map +1 -1
  134. package/dist/generators/pothos/pothos-scalar/generated/template-renderers.d.ts +6 -10
  135. package/dist/generators/pothos/pothos-scalar/generated/template-renderers.d.ts.map +1 -1
  136. package/dist/generators/pothos/pothos-scalar/generated/template-renderers.js +21 -6
  137. package/dist/generators/pothos/pothos-scalar/generated/template-renderers.js.map +1 -1
  138. package/dist/generators/pothos/pothos-scalar/generated/typed-templates.d.ts +9 -29
  139. package/dist/generators/pothos/pothos-scalar/generated/typed-templates.d.ts.map +1 -1
  140. package/dist/generators/pothos/pothos-scalar/generated/typed-templates.js +28 -14
  141. package/dist/generators/pothos/pothos-scalar/generated/typed-templates.js.map +1 -1
  142. package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.d.ts +2 -12
  143. package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.d.ts.map +1 -1
  144. package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.js +35 -11
  145. package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.js.map +1 -1
  146. package/dist/generators/pothos/pothos-scalar/templates/module/scalars/date-time.ts +21 -28
  147. package/dist/generators/pothos/pothos-scalar/templates/module/scalars/date.ts +13 -45
  148. package/dist/generators/pothos/pothos-scalar/templates/module/scalars/json-object.ts +28 -0
  149. package/dist/generators/pothos/pothos-scalar/templates/module/scalars/json.ts +23 -0
  150. package/dist/generators/pothos/pothos-scalar/templates/module/scalars/uuid.ts +13 -31
  151. package/dist/generators/pothos/pothos-sentry/pothos-sentry.generator.d.ts +1 -1
  152. package/dist/generators/prisma/_providers/index.d.ts +2 -0
  153. package/dist/generators/prisma/_providers/index.d.ts.map +1 -0
  154. package/dist/generators/prisma/_providers/index.js +2 -0
  155. package/dist/generators/prisma/_providers/index.js.map +1 -0
  156. package/dist/generators/prisma/_providers/prisma-generated-imports.d.ts +15 -0
  157. package/dist/generators/prisma/_providers/prisma-generated-imports.d.ts.map +1 -0
  158. package/dist/generators/prisma/_providers/prisma-generated-imports.js +10 -0
  159. package/dist/generators/prisma/_providers/prisma-generated-imports.js.map +1 -0
  160. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts +124 -0
  161. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts.map +1 -0
  162. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js +137 -0
  163. package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js.map +1 -0
  164. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts +82 -0
  165. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts.map +1 -0
  166. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js +215 -0
  167. package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js.map +1 -0
  168. package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts +3 -0
  169. package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts.map +1 -0
  170. package/dist/generators/prisma/_shared/build-data-helpers/index.js +3 -0
  171. package/dist/generators/prisma/_shared/build-data-helpers/index.js.map +1 -0
  172. package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts +0 -9
  173. package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts.map +1 -1
  174. package/dist/generators/prisma/_shared/crud-method/primary-key-input.js +0 -32
  175. package/dist/generators/prisma/_shared/crud-method/primary-key-input.js.map +1 -1
  176. package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.d.ts +26 -0
  177. package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.d.ts.map +1 -0
  178. package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.js +47 -0
  179. package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.js.map +1 -0
  180. package/dist/generators/prisma/_shared/field-definition-generators/types.d.ts +8 -0
  181. package/dist/generators/prisma/_shared/field-definition-generators/types.d.ts.map +1 -0
  182. package/dist/generators/prisma/_shared/field-definition-generators/types.js +2 -0
  183. package/dist/generators/prisma/_shared/field-definition-generators/types.js.map +1 -0
  184. package/dist/generators/prisma/data-utils/data-utils.generator.d.ts +109 -0
  185. package/dist/generators/prisma/data-utils/data-utils.generator.d.ts.map +1 -0
  186. package/dist/generators/prisma/data-utils/data-utils.generator.js +32 -0
  187. package/dist/generators/prisma/data-utils/data-utils.generator.js.map +1 -0
  188. package/dist/generators/prisma/data-utils/generated/index.d.ts +190 -0
  189. package/dist/generators/prisma/data-utils/generated/index.d.ts.map +1 -0
  190. package/dist/generators/prisma/data-utils/generated/index.js +11 -0
  191. package/dist/generators/prisma/data-utils/generated/index.js.map +1 -0
  192. package/dist/generators/prisma/data-utils/generated/template-paths.d.ts +17 -0
  193. package/dist/generators/prisma/data-utils/generated/template-paths.d.ts.map +1 -0
  194. package/dist/generators/prisma/data-utils/generated/template-paths.js +27 -0
  195. package/dist/generators/prisma/data-utils/generated/template-paths.js.map +1 -0
  196. package/dist/generators/prisma/data-utils/generated/template-renderers.d.ts +45 -0
  197. package/dist/generators/prisma/data-utils/generated/template-renderers.d.ts.map +1 -0
  198. package/dist/generators/prisma/data-utils/generated/template-renderers.js +47 -0
  199. package/dist/generators/prisma/data-utils/generated/template-renderers.js.map +1 -0
  200. package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts +183 -0
  201. package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts.map +1 -0
  202. package/dist/generators/prisma/data-utils/generated/ts-import-providers.js +72 -0
  203. package/dist/generators/prisma/data-utils/generated/ts-import-providers.js.map +1 -0
  204. package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts +157 -0
  205. package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts.map +1 -0
  206. package/dist/generators/prisma/data-utils/generated/typed-templates.js +125 -0
  207. package/dist/generators/prisma/data-utils/generated/typed-templates.js.map +1 -0
  208. package/dist/generators/prisma/data-utils/index.d.ts +4 -0
  209. package/dist/generators/prisma/data-utils/index.d.ts.map +1 -0
  210. package/dist/generators/prisma/data-utils/index.js +3 -0
  211. package/dist/generators/prisma/data-utils/index.js.map +1 -0
  212. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/define-operations.ts +1030 -0
  213. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/field-definitions.ts +782 -0
  214. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-types.ts +164 -0
  215. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-utils.ts +80 -0
  216. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/relation-helpers.ts +196 -0
  217. package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/types.ts +372 -0
  218. package/dist/generators/prisma/index.d.ts +7 -6
  219. package/dist/generators/prisma/index.d.ts.map +1 -1
  220. package/dist/generators/prisma/index.js +7 -6
  221. package/dist/generators/prisma/index.js.map +1 -1
  222. package/dist/generators/prisma/prisma/generated/index.d.ts +19 -1
  223. package/dist/generators/prisma/prisma/generated/index.d.ts.map +1 -1
  224. package/dist/generators/prisma/prisma/generated/template-paths.d.ts +1 -0
  225. package/dist/generators/prisma/prisma/generated/template-paths.d.ts.map +1 -1
  226. package/dist/generators/prisma/prisma/generated/template-paths.js +1 -0
  227. package/dist/generators/prisma/prisma/generated/template-paths.js.map +1 -1
  228. package/dist/generators/prisma/prisma/generated/template-renderers.d.ts +7 -1
  229. package/dist/generators/prisma/prisma/generated/template-renderers.d.ts.map +1 -1
  230. package/dist/generators/prisma/prisma/generated/template-renderers.js +14 -1
  231. package/dist/generators/prisma/prisma/generated/template-renderers.js.map +1 -1
  232. package/dist/generators/prisma/prisma/generated/ts-import-providers.d.ts +7 -2
  233. package/dist/generators/prisma/prisma/generated/ts-import-providers.d.ts.map +1 -1
  234. package/dist/generators/prisma/prisma/generated/ts-import-providers.js +12 -2
  235. package/dist/generators/prisma/prisma/generated/ts-import-providers.js.map +1 -1
  236. package/dist/generators/prisma/prisma/generated/typed-templates.d.ts +13 -1
  237. package/dist/generators/prisma/prisma/generated/typed-templates.d.ts.map +1 -1
  238. package/dist/generators/prisma/prisma/generated/typed-templates.js +19 -2
  239. package/dist/generators/prisma/prisma/generated/typed-templates.js.map +1 -1
  240. package/dist/generators/prisma/prisma/prisma.generator.d.ts +21 -0
  241. package/dist/generators/prisma/prisma/prisma.generator.d.ts.map +1 -1
  242. package/dist/generators/prisma/prisma/prisma.generator.js +42 -8
  243. package/dist/generators/prisma/prisma/prisma.generator.js.map +1 -1
  244. package/dist/generators/prisma/prisma/templates/package/prisma.config.mts +7 -2
  245. package/dist/generators/prisma/prisma/templates/src/services/prisma.ts +5 -2
  246. package/dist/generators/prisma/prisma-data-create/index.d.ts +2 -0
  247. package/dist/generators/prisma/prisma-data-create/index.d.ts.map +1 -0
  248. package/dist/generators/prisma/prisma-data-create/index.js +2 -0
  249. package/dist/generators/prisma/prisma-data-create/index.js.map +1 -0
  250. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts +73 -0
  251. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts.map +1 -0
  252. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js +102 -0
  253. package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js.map +1 -0
  254. package/dist/generators/prisma/prisma-data-delete/index.d.ts +2 -0
  255. package/dist/generators/prisma/prisma-data-delete/index.d.ts.map +1 -0
  256. package/dist/generators/prisma/prisma-data-delete/index.js +2 -0
  257. package/dist/generators/prisma/prisma-data-delete/index.js.map +1 -0
  258. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts +72 -0
  259. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts.map +1 -0
  260. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js +82 -0
  261. package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js.map +1 -0
  262. package/dist/generators/prisma/prisma-data-nested-field/index.d.ts +2 -0
  263. package/dist/generators/prisma/prisma-data-nested-field/index.d.ts.map +1 -0
  264. package/dist/generators/prisma/prisma-data-nested-field/index.js +2 -0
  265. package/dist/generators/prisma/prisma-data-nested-field/index.js.map +1 -0
  266. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.d.ts +16 -0
  267. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.d.ts.map +1 -0
  268. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js +179 -0
  269. package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js.map +1 -0
  270. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts +95 -0
  271. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts.map +1 -0
  272. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.js +120 -0
  273. package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.js.map +1 -0
  274. package/dist/generators/prisma/prisma-data-service/index.d.ts +2 -0
  275. package/dist/generators/prisma/prisma-data-service/index.d.ts.map +1 -0
  276. package/dist/generators/prisma/prisma-data-service/index.js +2 -0
  277. package/dist/generators/prisma/prisma-data-service/index.js.map +1 -0
  278. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts +117 -0
  279. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts.map +1 -0
  280. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.js +127 -0
  281. package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.js.map +1 -0
  282. package/dist/generators/prisma/prisma-data-update/index.d.ts +2 -0
  283. package/dist/generators/prisma/prisma-data-update/index.d.ts.map +1 -0
  284. package/dist/generators/prisma/prisma-data-update/index.js +2 -0
  285. package/dist/generators/prisma/prisma-data-update/index.js.map +1 -0
  286. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts +73 -0
  287. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts.map +1 -0
  288. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js +114 -0
  289. package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js.map +1 -0
  290. package/dist/generators/prisma/prisma-field/prisma-field.generator.d.ts +6 -6
  291. package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.d.ts +1 -2
  292. package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.d.ts.map +1 -1
  293. package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.js +1 -1
  294. package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.js.map +1 -1
  295. package/dist/generators/vitest/prisma-vitest/generated/index.d.ts +20 -1
  296. package/dist/generators/vitest/prisma-vitest/generated/index.d.ts.map +1 -1
  297. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.d.ts +6 -0
  298. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.d.ts.map +1 -1
  299. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js +7 -1
  300. package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js.map +1 -1
  301. package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.d.ts +1 -2
  302. package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.d.ts.map +1 -1
  303. package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.js +1 -1
  304. package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.js.map +1 -1
  305. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts +14 -1
  306. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts.map +1 -1
  307. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js +8 -2
  308. package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js.map +1 -1
  309. package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.d.ts +16 -0
  310. package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.d.ts.map +1 -1
  311. package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.js +5 -10
  312. package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.js.map +1 -1
  313. package/dist/generators/vitest/prisma-vitest/templates/src/tests/helpers/db.test-helper.ts +3 -2
  314. package/dist/generators/vitest/prisma-vitest/templates/src/tests/helpers/prisma.test-helper.ts +1 -1
  315. package/dist/types/field-types.d.ts +1 -1
  316. package/dist/types/field-types.d.ts.map +1 -1
  317. package/dist/types/field-types.js +2 -0
  318. package/dist/types/field-types.js.map +1 -1
  319. package/dist/types/service-dto-kinds.d.ts +59 -0
  320. package/dist/types/service-dto-kinds.d.ts.map +1 -0
  321. package/dist/types/service-dto-kinds.js +53 -0
  322. package/dist/types/service-dto-kinds.js.map +1 -0
  323. package/dist/types/service-output.d.ts +25 -2
  324. package/dist/types/service-output.d.ts.map +1 -1
  325. package/dist/types/service-output.js +22 -2
  326. package/dist/types/service-output.js.map +1 -1
  327. package/dist/writers/pothos/input-types.d.ts +1 -1
  328. package/dist/writers/pothos/input-types.d.ts.map +1 -1
  329. package/dist/writers/pothos/input-types.js +7 -10
  330. package/dist/writers/pothos/input-types.js.map +1 -1
  331. package/dist/writers/pothos/resolvers.d.ts.map +1 -1
  332. package/dist/writers/pothos/resolvers.js +9 -6
  333. package/dist/writers/pothos/resolvers.js.map +1 -1
  334. package/dist/writers/pothos/scalars.d.ts.map +1 -1
  335. package/dist/writers/pothos/scalars.js +5 -0
  336. package/dist/writers/pothos/scalars.js.map +1 -1
  337. package/dist/writers/prisma-schema/fields.d.ts +3 -0
  338. package/dist/writers/prisma-schema/fields.d.ts.map +1 -1
  339. package/dist/writers/prisma-schema/fields.js +1 -0
  340. package/dist/writers/prisma-schema/fields.js.map +1 -1
  341. package/package.json +8 -6
  342. package/dist/generators/auth/prisma-password-transformer/index.d.ts +0 -2
  343. package/dist/generators/auth/prisma-password-transformer/index.d.ts.map +0 -1
  344. package/dist/generators/auth/prisma-password-transformer/index.js +0 -2
  345. package/dist/generators/auth/prisma-password-transformer/index.js.map +0 -1
  346. package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.d.ts +0 -12
  347. package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.d.ts.map +0 -1
  348. package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.js +0 -48
  349. package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.js.map +0 -1
  350. package/dist/generators/prisma/_shared/crud-method/data-method.d.ts +0 -31
  351. package/dist/generators/prisma/_shared/crud-method/data-method.d.ts.map +0 -1
  352. package/dist/generators/prisma/_shared/crud-method/data-method.js +0 -195
  353. package/dist/generators/prisma/_shared/crud-method/data-method.js.map +0 -1
  354. package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.d.ts +0 -50
  355. package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.d.ts.map +0 -1
  356. package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.js +0 -371
  357. package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.js.map +0 -1
  358. package/dist/generators/prisma/embedded-relation-transformer/index.d.ts +0 -2
  359. package/dist/generators/prisma/embedded-relation-transformer/index.d.ts.map +0 -1
  360. package/dist/generators/prisma/embedded-relation-transformer/index.js +0 -2
  361. package/dist/generators/prisma/embedded-relation-transformer/index.js.map +0 -1
  362. package/dist/generators/prisma/prisma-crud-create/index.d.ts +0 -2
  363. package/dist/generators/prisma/prisma-crud-create/index.d.ts.map +0 -1
  364. package/dist/generators/prisma/prisma-crud-create/index.js +0 -2
  365. package/dist/generators/prisma/prisma-crud-create/index.js.map +0 -1
  366. package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.d.ts +0 -48
  367. package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.d.ts.map +0 -1
  368. package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.js +0 -130
  369. package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.js.map +0 -1
  370. package/dist/generators/prisma/prisma-crud-delete/index.d.ts +0 -2
  371. package/dist/generators/prisma/prisma-crud-delete/index.d.ts.map +0 -1
  372. package/dist/generators/prisma/prisma-crud-delete/index.js +0 -2
  373. package/dist/generators/prisma/prisma-crud-delete/index.js.map +0 -1
  374. package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.d.ts +0 -38
  375. package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.d.ts.map +0 -1
  376. package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.js +0 -94
  377. package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.js.map +0 -1
  378. package/dist/generators/prisma/prisma-crud-service/index.d.ts +0 -2
  379. package/dist/generators/prisma/prisma-crud-service/index.d.ts.map +0 -1
  380. package/dist/generators/prisma/prisma-crud-service/index.js +0 -2
  381. package/dist/generators/prisma/prisma-crud-service/index.js.map +0 -1
  382. package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.d.ts +0 -20
  383. package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.d.ts.map +0 -1
  384. package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.js +0 -53
  385. package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.js.map +0 -1
  386. package/dist/generators/prisma/prisma-crud-update/index.d.ts +0 -2
  387. package/dist/generators/prisma/prisma-crud-update/index.d.ts.map +0 -1
  388. package/dist/generators/prisma/prisma-crud-update/index.js +0 -2
  389. package/dist/generators/prisma/prisma-crud-update/index.js.map +0 -1
  390. package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.d.ts +0 -48
  391. package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.d.ts.map +0 -1
  392. package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.js +0 -145
  393. package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.js.map +0 -1
  394. package/dist/generators/prisma/prisma-utils/generated/index.d.ts +0 -134
  395. package/dist/generators/prisma/prisma-utils/generated/index.d.ts.map +0 -1
  396. package/dist/generators/prisma/prisma-utils/generated/index.js +0 -11
  397. package/dist/generators/prisma/prisma-utils/generated/index.js.map +0 -1
  398. package/dist/generators/prisma/prisma-utils/generated/template-paths.d.ts +0 -17
  399. package/dist/generators/prisma/prisma-utils/generated/template-paths.d.ts.map +0 -1
  400. package/dist/generators/prisma/prisma-utils/generated/template-paths.js +0 -27
  401. package/dist/generators/prisma/prisma-utils/generated/template-paths.js.map +0 -1
  402. package/dist/generators/prisma/prisma-utils/generated/template-renderers.d.ts +0 -37
  403. package/dist/generators/prisma/prisma-utils/generated/template-renderers.d.ts.map +0 -1
  404. package/dist/generators/prisma/prisma-utils/generated/template-renderers.js +0 -43
  405. package/dist/generators/prisma/prisma-utils/generated/template-renderers.js.map +0 -1
  406. package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.d.ts +0 -88
  407. package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.d.ts.map +0 -1
  408. package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.js +0 -54
  409. package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.js.map +0 -1
  410. package/dist/generators/prisma/prisma-utils/generated/typed-templates.d.ts +0 -125
  411. package/dist/generators/prisma/prisma-utils/generated/typed-templates.d.ts.map +0 -1
  412. package/dist/generators/prisma/prisma-utils/generated/typed-templates.js +0 -104
  413. package/dist/generators/prisma/prisma-utils/generated/typed-templates.js.map +0 -1
  414. package/dist/generators/prisma/prisma-utils/index.d.ts +0 -4
  415. package/dist/generators/prisma/prisma-utils/index.d.ts.map +0 -1
  416. package/dist/generators/prisma/prisma-utils/index.js +0 -3
  417. package/dist/generators/prisma/prisma-utils/index.js.map +0 -1
  418. package/dist/generators/prisma/prisma-utils/prisma-utils.generator.d.ts +0 -61
  419. package/dist/generators/prisma/prisma-utils/prisma-utils.generator.d.ts.map +0 -1
  420. package/dist/generators/prisma/prisma-utils/prisma-utils.generator.js +0 -43
  421. package/dist/generators/prisma/prisma-utils/prisma-utils.generator.js.map +0 -1
  422. package/dist/generators/prisma/prisma-utils/templates/src/utils/crud-service-types.ts +0 -35
  423. package/dist/generators/prisma/prisma-utils/templates/src/utils/data-pipes.ts +0 -86
  424. package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-one-to-many.ts +0 -245
  425. package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-one-to-one.ts +0 -147
  426. package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-types.ts +0 -6
  427. package/dist/generators/prisma/prisma-utils/templates/src/utils/prisma-relations.ts +0 -24
  428. package/dist/providers/prisma/prisma-data-transformable.d.ts +0 -27
  429. package/dist/providers/prisma/prisma-data-transformable.d.ts.map +0 -1
  430. package/dist/providers/prisma/prisma-data-transformable.js +0 -2
  431. package/dist/providers/prisma/prisma-data-transformable.js.map +0 -1
@@ -0,0 +1,372 @@
1
+ // @ts-nocheck
2
+
3
+ import type { PrismaClient } from '%prismaGeneratedImports';
4
+ import type { ServiceContext } from '%serviceContextImports';
5
+ import type { ITXClientDenyList } from '@prisma/client/runtime/client';
6
+ import type { z } from 'zod';
7
+
8
+ /**
9
+ * Prisma transaction client type for data operations.
10
+ *
11
+ * This is the Prisma client type available within transaction callbacks,
12
+ * with operations that cannot be used inside transactions excluded.
13
+ */
14
+ export type PrismaTransaction = Omit<PrismaClient, ITXClientDenyList>;
15
+
16
+ /**
17
+ * Type of data operation being performed.
18
+ *
19
+ * - **create**: Inserting a new record
20
+ * - **update**: Modifying an existing record
21
+ * - **upsert**: Creating or updating a record (used internally for nested relations)
22
+ * - **delete**: Removing a record
23
+ */
24
+ export type DataOperationType = 'create' | 'update' | 'upsert' | 'delete';
25
+
26
+ /* eslint-disable @typescript-eslint/no-explicit-any -- to allow any generic types */
27
+
28
+ /**
29
+ * =========================================
30
+ * Operation Contexts and Hooks
31
+ * =========================================
32
+ */
33
+
34
+ /**
35
+ * Context object provided to operation hooks and authorization functions.
36
+ *
37
+ * Contains information about the operation being performed and provides
38
+ * access to the service context and existing data.
39
+ *
40
+ * @template TModel - The Prisma model type
41
+ * @template TConfig - Configuration object with hasResult flag
42
+ */
43
+ export interface OperationContext<
44
+ TModel,
45
+ TConfig extends {
46
+ hasResult: boolean;
47
+ },
48
+ > {
49
+ /** Type of operation being performed */
50
+ operation: DataOperationType;
51
+ /** Service context with user info, request details, etc. */
52
+ serviceContext: ServiceContext;
53
+ /** Function to load the existing model data (for update/delete operations) */
54
+ loadExisting: () => Promise<TModel | undefined>;
55
+ /** The operation result (only available after execution) */
56
+ result: TConfig['hasResult'] extends true ? TModel : undefined;
57
+ }
58
+
59
+ /**
60
+ * Context object provided to hooks that run inside a transaction.
61
+ *
62
+ * Extends {@link OperationContext} with access to the Prisma transaction client,
63
+ * allowing hooks to perform additional database operations within the same transaction.
64
+ *
65
+ * @template TModel - The Prisma model type
66
+ * @template TConfig - Configuration object with hasResult flag
67
+ */
68
+ export interface TransactionalOperationContext<
69
+ TModel,
70
+ TConfig extends { hasResult: boolean },
71
+ > extends OperationContext<TModel, TConfig> {
72
+ /** Prisma transaction client for performing database operations */
73
+ tx: PrismaTransaction;
74
+ }
75
+
76
+ /**
77
+ * Lifecycle hooks for data operations.
78
+ *
79
+ * Hooks allow you to execute custom logic at different points in the operation lifecycle:
80
+ * - **beforeExecute**: Runs inside transaction, before the database operation
81
+ * - **afterExecute**: Runs inside transaction, after the database operation (has access to result)
82
+ * - **afterCommit**: Runs outside transaction, after successful commit (for side effects)
83
+ *
84
+ * @template TModel - The Prisma model type
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const hooks: OperationHooks<User> = {
89
+ * beforeExecute: [
90
+ * async (ctx) => {
91
+ * // Validate business rules before saving
92
+ * },
93
+ * ],
94
+ * afterExecute: [
95
+ * async (ctx) => {
96
+ * // Update related records within same transaction
97
+ * await ctx.tx.auditLog.create({
98
+ * data: { action: 'user_created', userId: ctx.result.id },
99
+ * });
100
+ * },
101
+ * ],
102
+ * afterCommit: [
103
+ * async (ctx) => {
104
+ * // Send email notification (outside transaction)
105
+ * await emailService.sendWelcome(ctx.result.email);
106
+ * },
107
+ * ],
108
+ * };
109
+ * ```
110
+ */
111
+ export interface OperationHooks<TModel> {
112
+ /** Hooks that run inside transaction, before the database operation */
113
+ beforeExecute?: ((
114
+ context: TransactionalOperationContext<TModel, { hasResult: false }>,
115
+ ) => Promise<void>)[];
116
+ /** Hooks that run inside transaction, after the database operation */
117
+ afterExecute?: ((
118
+ context: TransactionalOperationContext<TModel, { hasResult: true }>,
119
+ ) => Promise<void>)[];
120
+ /** Hooks that run outside transaction, after successful commit */
121
+ afterCommit?: ((
122
+ context: OperationContext<TModel, { hasResult: true }>,
123
+ ) => Promise<void>)[];
124
+ }
125
+
126
+ export type AnyOperationHooks = OperationHooks<any>;
127
+
128
+ /**
129
+ * =========================================
130
+ * Field Types
131
+ * =========================================
132
+ */
133
+
134
+ /**
135
+ * Context provided to field `processInput` functions.
136
+ *
137
+ * Contains information about the operation and provides access to
138
+ * existing data and service context.
139
+ */
140
+ export interface FieldContext {
141
+ /** Type of operation being performed */
142
+ operation: DataOperationType;
143
+ /** Name of the field being processed */
144
+ fieldName: string;
145
+ /** Service context with user info, request details, etc. */
146
+ serviceContext: ServiceContext;
147
+ /** Function to load existing model data (for updates) */
148
+ loadExisting: () => Promise<object | undefined>;
149
+ }
150
+
151
+ /**
152
+ * Transformed field data for create and update operations.
153
+ *
154
+ * Fields can produce different data structures for create vs. update operations.
155
+ *
156
+ * @template TCreateOutput - Data type for create operations
157
+ * @template TUpdateOutput - Data type for update operations
158
+ */
159
+ export interface FieldTransformData<TCreateOutput, TUpdateOutput> {
160
+ /** Data to use when creating a new record */
161
+ create?: TCreateOutput;
162
+ /** Data to use when updating an existing record */
163
+ update?: TUpdateOutput;
164
+ }
165
+
166
+ /**
167
+ * Result of field processing, including transformed data and optional hooks.
168
+ *
169
+ * The data can be either synchronous or asynchronous (resolved inside transaction).
170
+ * Hooks allow fields to perform side effects during the operation lifecycle.
171
+ *
172
+ * @template TCreateOutput - Data type for create operations
173
+ * @template TUpdateOutput - Data type for update operations
174
+ */
175
+ export interface FieldTransformResult<TCreateOutput, TUpdateOutput> {
176
+ /**
177
+ * Transformed field data or an async function that resolves to field data.
178
+ * Async functions are resolved inside the transaction, allowing access to tx client.
179
+ */
180
+ data?:
181
+ | FieldTransformData<TCreateOutput, TUpdateOutput>
182
+ | ((
183
+ tx: PrismaTransaction,
184
+ ) => Promise<FieldTransformData<TCreateOutput, TUpdateOutput>>);
185
+
186
+ /** Optional hooks to execute during operation lifecycle */
187
+ hooks?: AnyOperationHooks;
188
+ }
189
+
190
+ /**
191
+ * Field definition for validating and transforming input values.
192
+ *
193
+ * A field definition specifies how to process a single input field:
194
+ * - Validate the input value using a Zod schema
195
+ * - Transform it into Prisma-compatible create/update data
196
+ * - Optionally attach hooks for side effects
197
+ *
198
+ * @template TInputSchema - The Zod schema type for validation
199
+ * @template TCreateOutput - Output type for create operations
200
+ * @template TUpdateOutput - Output type for update operations
201
+ *
202
+ * @example
203
+ * ```typescript
204
+ * const nameField: FieldDefinition<z.ZodString, string, string> = {
205
+ * zodSchema: z.string().min(1),
206
+ * processInput: (value, ctx) => {
207
+ * const validated = z.string().min(1).parse(value);
208
+ * return {
209
+ * data: {
210
+ * create: validated,
211
+ * update: validated,
212
+ * },
213
+ * };
214
+ * },
215
+ * };
216
+ * ```
217
+ */
218
+ export interface FieldDefinition<
219
+ TInputSchema extends z.ZodSchema,
220
+ TCreateOutput,
221
+ TUpdateOutput,
222
+ > {
223
+ /**
224
+ * The Zod schema for validating this field's input.
225
+ * This schema can be extracted and reused for validation in other contexts
226
+ * (e.g., GraphQL mutations, REST endpoints, tRPC procedures).
227
+ */
228
+ schema: TInputSchema;
229
+
230
+ /**
231
+ * Processes and transforms an input value.
232
+ *
233
+ * Note: Validation happens at the operation level (defineCreateOperation/defineUpdateOperation),
234
+ * not at the field level. This function receives already-validated input.
235
+ *
236
+ * @param value - The validated input value to process
237
+ * @param ctx - Context about the operation
238
+ * @returns Transformed data and optional hooks
239
+ */
240
+ processInput: (
241
+ value: z.output<TInputSchema>,
242
+ ctx: FieldContext,
243
+ ) =>
244
+ | Promise<FieldTransformResult<TCreateOutput, TUpdateOutput>>
245
+ | FieldTransformResult<TCreateOutput, TUpdateOutput>;
246
+ }
247
+
248
+ /** Type alias for any field definition (used for generic constraints) */
249
+ export type AnyFieldDefinition = FieldDefinition<any, any, any>;
250
+
251
+ /**
252
+ * =========================================
253
+ * Type Inference Utilities
254
+ * =========================================
255
+ */
256
+
257
+ /** Identity type that expands type aliases for better IDE tooltips */
258
+ type Identity<T> = T extends object
259
+ ? {} & {
260
+ [P in keyof T]: T[P];
261
+ }
262
+ : T;
263
+
264
+ /**
265
+ * Infers the input schema from a record of field definitions.
266
+ *
267
+ * Creates an object type where:
268
+ * - Each key corresponds to a field name
269
+ * - Each value type is the field's Zod schema type
270
+ *
271
+ * @template TFields - Record of field definitions
272
+ *
273
+ * @example
274
+ * ```typescript
275
+ * const fields = {
276
+ * name: scalarField(z.string()),
277
+ * email: scalarField(z.string().email().optional()),
278
+ * };
279
+ *
280
+ * type InputSchema = InferInputSchema<typeof fields>;
281
+ * // { name: z.ZodString; email?: z.ZodString | undefined }
282
+ * ```
283
+ */
284
+ export type InferInputSchema<
285
+ TFields extends Record<string, AnyFieldDefinition>,
286
+ > = z.ZodObject<{
287
+ [K in keyof TFields]: TFields[K] extends FieldDefinition<
288
+ infer TInputSchema,
289
+ any,
290
+ any
291
+ >
292
+ ? TInputSchema
293
+ : never;
294
+ }>;
295
+
296
+ /**
297
+ * Infers the input type from a record of field definitions.
298
+ *
299
+ * Creates an object type where:
300
+ * - Each key corresponds to a field name
301
+ * - Each value type is the field's Zod schema type
302
+ * - Fields accepting undefined become optional properties
303
+ *
304
+ * @template TFields - Record of field definitions
305
+ *
306
+ * @example
307
+ * ```typescript
308
+ * const fields = {
309
+ * name: scalarField(z.string()),
310
+ * email: scalarField(z.string().email().optional()),
311
+ * };
312
+ *
313
+ * type Input = InferInput<typeof fields>;
314
+ * // { name: string; email?: string | undefined }
315
+ * ```
316
+ */
317
+ export type InferInput<TFields extends Record<string, AnyFieldDefinition>> =
318
+ z.output<InferInputSchema<TFields>>;
319
+
320
+ /**
321
+ * Infers the output type (create and update) from a single field definition.
322
+ *
323
+ * @template TField - A field definition
324
+ */
325
+ export type InferFieldOutput<TField extends FieldDefinition<any, any, any>> =
326
+ TField extends FieldDefinition<any, infer TCreateOutput, infer TUpdateOutput>
327
+ ? {
328
+ create: TCreateOutput;
329
+ update: TUpdateOutput;
330
+ }
331
+ : never;
332
+
333
+ /**
334
+ * Infers the create output type from a record of field definitions.
335
+ *
336
+ * Creates an object type where each property is the field's create output type.
337
+ *
338
+ * @template TFields - Record of field definitions
339
+ */
340
+ export type InferFieldsCreateOutput<
341
+ TFields extends Record<string, AnyFieldDefinition>,
342
+ > = Identity<{
343
+ [K in keyof TFields]: InferFieldOutput<TFields[K]>['create'];
344
+ }>;
345
+
346
+ /**
347
+ * Infers the update output type from a record of field definitions.
348
+ *
349
+ * Creates an object type where each property is the field's update output type
350
+ * or undefined (since updates are partial).
351
+ *
352
+ * @template TFields - Record of field definitions
353
+ */
354
+ export type InferFieldsUpdateOutput<
355
+ TFields extends Record<string, AnyFieldDefinition>,
356
+ > = Identity<{
357
+ [K in keyof TFields]: InferFieldOutput<TFields[K]>['update'] | undefined;
358
+ }>;
359
+
360
+ /**
361
+ * Combined create and update output types for a set of fields.
362
+ *
363
+ * @template TFields - Record of field definitions
364
+ */
365
+ export interface InferFieldsOutput<
366
+ TFields extends Record<string, AnyFieldDefinition>,
367
+ > {
368
+ /** Field outputs for create operations */
369
+ create: InferFieldsCreateOutput<TFields>;
370
+ /** Field outputs for update operations */
371
+ update: InferFieldsUpdateOutput<TFields>;
372
+ }
@@ -1,8 +1,10 @@
1
- export * from './embedded-relation-transformer/index.js';
2
- export * from './prisma-crud-create/index.js';
3
- export * from './prisma-crud-delete/index.js';
4
- export * from './prisma-crud-service/index.js';
5
- export * from './prisma-crud-update/index.js';
1
+ export * from './_providers/index.js';
2
+ export * from './data-utils/index.js';
3
+ export * from './prisma-data-create/index.js';
4
+ export * from './prisma-data-delete/index.js';
5
+ export * from './prisma-data-nested-field/index.js';
6
+ export * from './prisma-data-service/index.js';
7
+ export * from './prisma-data-update/index.js';
6
8
  export * from './prisma-enum/index.js';
7
9
  export * from './prisma-field/index.js';
8
10
  export * from './prisma-model-id/index.js';
@@ -10,6 +12,5 @@ export * from './prisma-model-index/index.js';
10
12
  export * from './prisma-model-unique/index.js';
11
13
  export * from './prisma-model/index.js';
12
14
  export * from './prisma-relation-field/index.js';
13
- export * from './prisma-utils/index.js';
14
15
  export * from './prisma/index.js';
15
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generators/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generators/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mBAAmB,CAAC"}
@@ -1,8 +1,10 @@
1
- export * from './embedded-relation-transformer/index.js';
2
- export * from './prisma-crud-create/index.js';
3
- export * from './prisma-crud-delete/index.js';
4
- export * from './prisma-crud-service/index.js';
5
- export * from './prisma-crud-update/index.js';
1
+ export * from './_providers/index.js';
2
+ export * from './data-utils/index.js';
3
+ export * from './prisma-data-create/index.js';
4
+ export * from './prisma-data-delete/index.js';
5
+ export * from './prisma-data-nested-field/index.js';
6
+ export * from './prisma-data-service/index.js';
7
+ export * from './prisma-data-update/index.js';
6
8
  export * from './prisma-enum/index.js';
7
9
  export * from './prisma-field/index.js';
8
10
  export * from './prisma-model-id/index.js';
@@ -10,6 +12,5 @@ export * from './prisma-model-index/index.js';
10
12
  export * from './prisma-model-unique/index.js';
11
13
  export * from './prisma-model/index.js';
12
14
  export * from './prisma-relation-field/index.js';
13
- export * from './prisma-utils/index.js';
14
15
  export * from './prisma/index.js';
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,0CAA0C,CAAC;AACzD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/prisma/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,mBAAmB,CAAC"}
@@ -1,6 +1,12 @@
1
1
  export declare const PRISMA_PRISMA_GENERATED: {
2
2
  imports: {
3
3
  task: import("@baseplate-dev/sync").GeneratorTask<{
4
+ prismaGeneratedImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
5
+ PrismaClient: {};
6
+ Prisma: {};
7
+ '*': {};
8
+ $Enums: {};
9
+ }>>;
4
10
  prismaImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
5
11
  prisma: {};
6
12
  }>>;
@@ -21,11 +27,17 @@ export declare const PRISMA_PRISMA_GENERATED: {
21
27
  task: import("@baseplate-dev/sync").GeneratorTask<{
22
28
  prismaPrismaRenderers: import("@baseplate-dev/sync").ProviderExport<import("./template-renderers.js").PrismaPrismaRenderers>;
23
29
  }, {
30
+ configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
31
+ config: {};
32
+ }>>;
24
33
  paths: import("@baseplate-dev/sync").ProviderType<import("./template-paths.js").PrismaPrismaPaths>;
25
34
  typescriptFile: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").TypescriptFileProvider>;
26
35
  }, undefined>;
27
36
  };
28
37
  templates: {
38
+ generatedGroup: {
39
+ client: import("@baseplate-dev/core-generators").TsTemplateFile<{}, Record<never, import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/sync").Provider>>, Record<never, Record<never, never>>>;
40
+ };
29
41
  prismaConfig: import("@baseplate-dev/core-generators").TsTemplateFile<{
30
42
  TPL_SEED_COMMAND: {};
31
43
  }, {}, Record<never, Record<never, never>>>;
@@ -34,7 +46,13 @@ export declare const PRISMA_PRISMA_GENERATED: {
34
46
  }, {}, {
35
47
  service: {};
36
48
  }>;
37
- service: import("@baseplate-dev/core-generators").TsTemplateFile<{}, {}, Record<never, Record<never, never>>>;
49
+ service: import("@baseplate-dev/core-generators").TsTemplateFile<{}, {
50
+ configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
51
+ config: {};
52
+ }>>;
53
+ }, {
54
+ client: {};
55
+ }>;
38
56
  };
39
57
  };
40
58
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export interface PrismaPrismaPaths {
2
+ client: string;
2
3
  prismaConfig: string;
3
4
  seed: string;
4
5
  service: string;
@@ -1 +1 @@
1
- {"version":3,"file":"template-paths.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-paths.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAyBD,eAAO,MAAM,mBAAmB;;;;;;;CAG/B,CAAC"}
1
+ {"version":3,"file":"template-paths.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-paths.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AA0BD,eAAO,MAAM,mBAAmB;;;;;;;CAG/B,CAAC"}
@@ -10,6 +10,7 @@ const prismaPrismaPathsTask = createGeneratorTask({
10
10
  return {
11
11
  providers: {
12
12
  prismaPrismaPaths: {
13
+ client: `${srcRoot}/generated/prisma/client.ts`,
13
14
  prismaConfig: `${packageRoot}/prisma.config.mts`,
14
15
  seed: `${srcRoot}/prisma/seed.ts`,
15
16
  service: `${srcRoot}/services/prisma.ts`,
@@ -1 +1 @@
1
- {"version":3,"file":"template-paths.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAQ9E,MAAM,iBAAiB,GAAG,kBAAkB,CAC1C,qBAAqB,CACtB,CAAC;AAEF,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;IAChD,YAAY,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAClD,OAAO,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,MAAM,EAAE,EAAE;IAC1D,GAAG,CAAC,EAAE,WAAW,EAAE;QACjB,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,EAAE,CAAC;QAEhD,OAAO;YACL,SAAS,EAAE;gBACT,iBAAiB,EAAE;oBACjB,YAAY,EAAE,GAAG,WAAW,oBAAoB;oBAChD,IAAI,EAAE,GAAG,OAAO,iBAAiB;oBACjC,OAAO,EAAE,GAAG,OAAO,qBAAqB;iBACzC;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,QAAQ,EAAE,iBAAiB;IAC3B,IAAI,EAAE,qBAAqB;CAC5B,CAAC"}
1
+ {"version":3,"file":"template-paths.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAS9E,MAAM,iBAAiB,GAAG,kBAAkB,CAC1C,qBAAqB,CACtB,CAAC;AAEF,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;IAChD,YAAY,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE;IAClD,OAAO,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,MAAM,EAAE,EAAE;IAC1D,GAAG,CAAC,EAAE,WAAW,EAAE;QACjB,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,EAAE,CAAC;QACjD,MAAM,OAAO,GAAG,WAAW,CAAC,iBAAiB,EAAE,CAAC;QAEhD,OAAO;YACL,SAAS,EAAE;gBACT,iBAAiB,EAAE;oBACjB,MAAM,EAAE,GAAG,OAAO,6BAA6B;oBAC/C,YAAY,EAAE,GAAG,WAAW,oBAAoB;oBAChD,IAAI,EAAE,GAAG,OAAO,iBAAiB;oBACjC,OAAO,EAAE,GAAG,OAAO,qBAAqB;iBACzC;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,QAAQ,EAAE,iBAAiB;IAC3B,IAAI,EAAE,qBAAqB;CAC5B,CAAC"}
@@ -1,7 +1,10 @@
1
- import type { RenderTsTemplateFileActionInput } from '@baseplate-dev/core-generators';
1
+ import type { RenderTsTemplateFileActionInput, RenderTsTemplateGroupActionInput } from '@baseplate-dev/core-generators';
2
2
  import type { BuilderAction } from '@baseplate-dev/sync';
3
3
  import { PRISMA_PRISMA_TEMPLATES } from './typed-templates.js';
4
4
  export interface PrismaPrismaRenderers {
5
+ generatedGroup: {
6
+ render: (options: Omit<RenderTsTemplateGroupActionInput<typeof PRISMA_PRISMA_TEMPLATES.generatedGroup>, 'importMapProviders' | 'group' | 'paths' | 'generatorPaths'>) => BuilderAction;
7
+ };
5
8
  prismaConfig: {
6
9
  render: (options: Omit<RenderTsTemplateFileActionInput<typeof PRISMA_PRISMA_TEMPLATES.prismaConfig>, 'destination' | 'importMapProviders' | 'template' | 'generatorPaths'>) => BuilderAction;
7
10
  };
@@ -17,6 +20,9 @@ export declare const PRISMA_PRISMA_RENDERERS: {
17
20
  task: import("@baseplate-dev/sync").GeneratorTask<{
18
21
  prismaPrismaRenderers: import("@baseplate-dev/sync").ProviderExport<PrismaPrismaRenderers>;
19
22
  }, {
23
+ configServiceImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
24
+ config: {};
25
+ }>>;
20
26
  paths: import("@baseplate-dev/sync").ProviderType<import("./template-paths.js").PrismaPrismaPaths>;
21
27
  typescriptFile: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").TypescriptFileProvider>;
22
28
  }, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"template-renderers.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAMzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE;QACZ,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAC7B,OAAO,uBAAuB,CAAC,YAAY,CAC5C,EACD,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAAC,OAAO,uBAAuB,CAAC,IAAI,CAAC,EACpE,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAAC,OAAO,uBAAuB,CAAC,OAAO,CAAC,EACvE,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;CACH;AA+CD,eAAO,MAAM,uBAAuB;;;;;;;;CAGnC,CAAC"}
1
+ {"version":3,"file":"template-renderers.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-renderers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,gCAAgC,EACjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE;QACd,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,gCAAgC,CAC9B,OAAO,uBAAuB,CAAC,cAAc,CAC9C,EACD,oBAAoB,GAAG,OAAO,GAAG,OAAO,GAAG,gBAAgB,CAC5D,KACE,aAAa,CAAC;KACpB,CAAC;IACF,YAAY,EAAE;QACZ,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAC7B,OAAO,uBAAuB,CAAC,YAAY,CAC5C,EACD,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAAC,OAAO,uBAAuB,CAAC,IAAI,CAAC,EACpE,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,CACN,OAAO,EAAE,IAAI,CACX,+BAA+B,CAAC,OAAO,uBAAuB,CAAC,OAAO,CAAC,EACvE,aAAa,GAAG,oBAAoB,GAAG,UAAU,GAAG,gBAAgB,CACrE,KACE,aAAa,CAAC;KACpB,CAAC;CACH;AA4DD,eAAO,MAAM,uBAAuB;;;;;;;;;;;CAGnC,CAAC"}
@@ -1,18 +1,27 @@
1
1
  import { typescriptFileProvider } from '@baseplate-dev/core-generators';
2
2
  import { createGeneratorTask, createProviderType } from '@baseplate-dev/sync';
3
+ import { configServiceImportsProvider } from '#src/generators/core/config-service/generated/ts-import-providers.js';
3
4
  import { PRISMA_PRISMA_PATHS } from './template-paths.js';
4
5
  import { PRISMA_PRISMA_TEMPLATES } from './typed-templates.js';
5
6
  const prismaPrismaRenderers = createProviderType('prisma-prisma-renderers');
6
7
  const prismaPrismaRenderersTask = createGeneratorTask({
7
8
  dependencies: {
9
+ configServiceImports: configServiceImportsProvider,
8
10
  paths: PRISMA_PRISMA_PATHS.provider,
9
11
  typescriptFile: typescriptFileProvider,
10
12
  },
11
13
  exports: { prismaPrismaRenderers: prismaPrismaRenderers.export() },
12
- run({ paths, typescriptFile }) {
14
+ run({ configServiceImports, paths, typescriptFile }) {
13
15
  return {
14
16
  providers: {
15
17
  prismaPrismaRenderers: {
18
+ generatedGroup: {
19
+ render: (options) => typescriptFile.renderTemplateGroup({
20
+ group: PRISMA_PRISMA_TEMPLATES.generatedGroup,
21
+ paths,
22
+ ...options,
23
+ }),
24
+ },
16
25
  prismaConfig: {
17
26
  render: (options) => typescriptFile.renderTemplateFile({
18
27
  template: PRISMA_PRISMA_TEMPLATES.prismaConfig,
@@ -32,6 +41,10 @@ const prismaPrismaRenderersTask = createGeneratorTask({
32
41
  render: (options) => typescriptFile.renderTemplateFile({
33
42
  template: PRISMA_PRISMA_TEMPLATES.service,
34
43
  destination: paths.service,
44
+ importMapProviders: {
45
+ configServiceImports,
46
+ },
47
+ generatorPaths: paths,
35
48
  ...options,
36
49
  }),
37
50
  },
@@ -1 +1 @@
1
- {"version":3,"file":"template-renderers.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-renderers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AA+B/D,MAAM,qBAAqB,GAAG,kBAAkB,CAC9C,yBAAyB,CAC1B,CAAC;AAEF,MAAM,yBAAyB,GAAG,mBAAmB,CAAC;IACpD,YAAY,EAAE;QACZ,KAAK,EAAE,mBAAmB,CAAC,QAAQ;QACnC,cAAc,EAAE,sBAAsB;KACvC;IACD,OAAO,EAAE,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,MAAM,EAAE,EAAE;IAClE,GAAG,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE;QAC3B,OAAO;YACL,SAAS,EAAE;gBACT,qBAAqB,EAAE;oBACrB,YAAY,EAAE;wBACZ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY;4BAC9C,WAAW,EAAE,KAAK,CAAC,YAAY;4BAC/B,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,IAAI,EAAE;wBACJ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,IAAI;4BACtC,WAAW,EAAE,KAAK,CAAC,IAAI;4BACvB,cAAc,EAAE,KAAK;4BACrB,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,OAAO,EAAE;wBACP,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,OAAO;4BACzC,WAAW,EAAE,KAAK,CAAC,OAAO;4BAC1B,GAAG,OAAO;yBACX,CAAC;qBACL;iBACF;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,qBAAqB;IAC/B,IAAI,EAAE,yBAAyB;CAChC,CAAC"}
1
+ {"version":3,"file":"template-renderers.js","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/template-renderers.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,sEAAsE,CAAC;AAEpH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAyC/D,MAAM,qBAAqB,GAAG,kBAAkB,CAC9C,yBAAyB,CAC1B,CAAC;AAEF,MAAM,yBAAyB,GAAG,mBAAmB,CAAC;IACpD,YAAY,EAAE;QACZ,oBAAoB,EAAE,4BAA4B;QAClD,KAAK,EAAE,mBAAmB,CAAC,QAAQ;QACnC,cAAc,EAAE,sBAAsB;KACvC;IACD,OAAO,EAAE,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,MAAM,EAAE,EAAE;IAClE,GAAG,CAAC,EAAE,oBAAoB,EAAE,KAAK,EAAE,cAAc,EAAE;QACjD,OAAO;YACL,SAAS,EAAE;gBACT,qBAAqB,EAAE;oBACrB,cAAc,EAAE;wBACd,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,mBAAmB,CAAC;4BACjC,KAAK,EAAE,uBAAuB,CAAC,cAAc;4BAC7C,KAAK;4BACL,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,YAAY,EAAE;wBACZ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY;4BAC9C,WAAW,EAAE,KAAK,CAAC,YAAY;4BAC/B,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,IAAI,EAAE;wBACJ,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,IAAI;4BACtC,WAAW,EAAE,KAAK,CAAC,IAAI;4BACvB,cAAc,EAAE,KAAK;4BACrB,GAAG,OAAO;yBACX,CAAC;qBACL;oBACD,OAAO,EAAE;wBACP,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,cAAc,CAAC,kBAAkB,CAAC;4BAChC,QAAQ,EAAE,uBAAuB,CAAC,OAAO;4BACzC,WAAW,EAAE,KAAK,CAAC,OAAO;4BAC1B,kBAAkB,EAAE;gCAClB,oBAAoB;6BACrB;4BACD,cAAc,EAAE,KAAK;4BACrB,GAAG,OAAO;yBACX,CAAC;qBACL;iBACF;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,QAAQ,EAAE,qBAAqB;IAC/B,IAAI,EAAE,yBAAyB;CAChC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { TsImportMapProviderFromSchema } from '@baseplate-dev/core-generators';
2
- declare const prismaImportsSchema: {
2
+ export declare const prismaImportsSchema: {
3
3
  prisma: {};
4
4
  };
5
5
  export type PrismaImportsProvider = TsImportMapProviderFromSchema<typeof prismaImportsSchema>;
@@ -8,6 +8,12 @@ export declare const prismaImportsProvider: import("@baseplate-dev/sync").Provid
8
8
  }>>;
9
9
  export declare const PRISMA_PRISMA_IMPORTS: {
10
10
  task: import("@baseplate-dev/sync").GeneratorTask<{
11
+ prismaGeneratedImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
12
+ PrismaClient: {};
13
+ Prisma: {};
14
+ '*': {};
15
+ $Enums: {};
16
+ }>>;
11
17
  prismaImports: import("@baseplate-dev/sync").ProviderExport<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
12
18
  prisma: {};
13
19
  }>>;
@@ -15,5 +21,4 @@ export declare const PRISMA_PRISMA_IMPORTS: {
15
21
  paths: import("@baseplate-dev/sync").ProviderType<import("./template-paths.js").PrismaPrismaPaths>;
16
22
  }, undefined>;
17
23
  };
18
- export {};
19
24
  //# sourceMappingURL=ts-import-providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ts-import-providers.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/ts-import-providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAcpF,QAAA,MAAM,mBAAmB;;CAA0C,CAAC;AAEpE,MAAM,MAAM,qBAAqB,GAAG,6BAA6B,CAC/D,OAAO,mBAAmB,CAC3B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;GACmC,CAAC;AAkBtE,eAAO,MAAM,qBAAqB;;;;;;;;CAEjC,CAAC"}
1
+ {"version":3,"file":"ts-import-providers.d.ts","sourceRoot":"","sources":["../../../../../src/generators/prisma/prisma/generated/ts-import-providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAmBpF,eAAO,MAAM,mBAAmB;;CAA0C,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG,6BAA6B,CAC/D,OAAO,mBAAmB,CAC3B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;GACmC,CAAC;AA8BtE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;CAEjC,CAAC"}
@@ -1,16 +1,26 @@
1
1
  import { createTsImportMap, createTsImportMapSchema, packageScope, } from '@baseplate-dev/core-generators';
2
2
  import { createGeneratorTask, createReadOnlyProviderType, } from '@baseplate-dev/sync';
3
+ import { prismaGeneratedImportsProvider, prismaGeneratedImportsSchema, } from '#src/generators/prisma/_providers/prisma-generated-imports.js';
3
4
  import { PRISMA_PRISMA_PATHS } from './template-paths.js';
4
- const prismaImportsSchema = createTsImportMapSchema({ prisma: {} });
5
+ export const prismaImportsSchema = createTsImportMapSchema({ prisma: {} });
5
6
  export const prismaImportsProvider = createReadOnlyProviderType('prisma-imports');
6
7
  const prismaPrismaImportsTask = createGeneratorTask({
7
8
  dependencies: {
8
9
  paths: PRISMA_PRISMA_PATHS.provider,
9
10
  },
10
- exports: { prismaImports: prismaImportsProvider.export(packageScope) },
11
+ exports: {
12
+ prismaGeneratedImports: prismaGeneratedImportsProvider.export(packageScope),
13
+ prismaImports: prismaImportsProvider.export(packageScope),
14
+ },
11
15
  run({ paths }) {
12
16
  return {
13
17
  providers: {
18
+ prismaGeneratedImports: createTsImportMap(prismaGeneratedImportsSchema, {
19
+ '*': paths.client,
20
+ $Enums: paths.client,
21
+ Prisma: paths.client,
22
+ PrismaClient: paths.client,
23
+ }),
14
24
  prismaImports: createTsImportMap(prismaImportsSchema, {
15
25
  prisma: paths.service,
16
26
  }),