@baseplate-dev/fastify-generators 0.3.7 → 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.
- package/dist/constants/fastify-packages.d.ts +12 -11
- package/dist/constants/fastify-packages.d.ts.map +1 -1
- package/dist/constants/fastify-packages.js +12 -11
- package/dist/constants/fastify-packages.js.map +1 -1
- package/dist/generators/auth/auth-context/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/auth/auth-context/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/auth/auth-context/generated/ts-import-providers.js +1 -1
- package/dist/generators/auth/auth-context/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/auth/auth-roles/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/auth/auth-roles/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/auth/auth-roles/generated/ts-import-providers.js +1 -1
- package/dist/generators/auth/auth-roles/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/auth/index.d.ts +0 -1
- package/dist/generators/auth/index.d.ts.map +1 -1
- package/dist/generators/auth/index.js +0 -1
- package/dist/generators/auth/index.js.map +1 -1
- package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.js +1 -1
- package/dist/generators/auth/password-hasher-service/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/auth/user-session-types/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/auth/user-session-types/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/auth/user-session-types/generated/ts-import-providers.js +1 -1
- package/dist/generators/auth/user-session-types/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/bull/bull-mq/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/bull/bull-mq/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/bull/bull-mq/generated/ts-import-providers.js +1 -1
- package/dist/generators/bull/bull-mq/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/app-module-setup/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/app-module-setup/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/app-module-setup/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/app-module-setup/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/axios/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/axios/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/axios/generated/ts-import-providers.js +3 -1
- package/dist/generators/core/axios/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/config-service/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/config-service/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/config-service/generated/ts-import-providers.js +3 -1
- package/dist/generators/core/config-service/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/error-handler-service/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/error-handler-service/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/error-handler-service/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/error-handler-service/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/fastify/fastify.generator.js +1 -1
- package/dist/generators/core/fastify/fastify.generator.js.map +1 -1
- package/dist/generators/core/fastify-redis/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/fastify-redis/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/fastify-redis/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/fastify-redis/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/fastify-sentry/fastify-sentry.generator.js +1 -1
- package/dist/generators/core/fastify-sentry/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/fastify-sentry/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/fastify-sentry/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/fastify-sentry/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/logger-service/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/logger-service/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/logger-service/generated/ts-import-providers.js +3 -1
- package/dist/generators/core/logger-service/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/readme/templates/package/README.md +4 -4
- package/dist/generators/core/request-context/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/request-context/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/request-context/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/request-context/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/request-service-context/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/request-service-context/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/request-service-context/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/request-service-context/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/service-context/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/core/service-context/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/core/service-context/generated/ts-import-providers.js +1 -1
- package/dist/generators/core/service-context/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/core/service-file/service-file.generator.d.ts +7 -0
- package/dist/generators/core/service-file/service-file.generator.d.ts.map +1 -1
- package/dist/generators/core/service-file/service-file.generator.js +12 -2
- package/dist/generators/core/service-file/service-file.generator.js.map +1 -1
- package/dist/generators/pothos/pothos/generated/index.d.ts +3 -1
- package/dist/generators/pothos/pothos/generated/index.d.ts.map +1 -1
- package/dist/generators/pothos/pothos/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/pothos/pothos/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/pothos/pothos/generated/ts-import-providers.js +1 -1
- package/dist/generators/pothos/pothos/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/pothos/pothos/generated/typed-templates.d.ts +6 -2
- package/dist/generators/pothos/pothos/generated/typed-templates.d.ts.map +1 -1
- package/dist/generators/pothos/pothos/generated/typed-templates.js +1 -0
- package/dist/generators/pothos/pothos/generated/typed-templates.js.map +1 -1
- package/dist/generators/pothos/pothos/pothos.generator.d.ts +3 -3
- package/dist/generators/pothos/pothos/pothos.generator.d.ts.map +1 -1
- package/dist/generators/pothos/pothos/pothos.generator.js +4 -0
- package/dist/generators/pothos/pothos/pothos.generator.js.map +1 -1
- package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/global-types.ts +3 -5
- package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/schema-builder.ts +9 -4
- package/dist/generators/pothos/pothos/templates/src/plugins/graphql/FieldWithInputPayloadPlugin/types.ts +6 -1
- package/dist/generators/pothos/pothos-auth/pothos-auth.generator.d.ts +1 -1
- package/dist/generators/pothos/pothos-enums-file/pothos-enums-file.generator.d.ts +1 -1
- package/dist/generators/pothos/pothos-prisma/generated/index.d.ts +36 -0
- package/dist/generators/pothos/pothos-prisma/generated/index.d.ts.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/index.js +11 -0
- package/dist/generators/pothos/pothos-prisma/generated/index.js.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-paths.d.ts +12 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-paths.d.ts.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-paths.js +22 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-paths.js.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-renderers.d.ts +18 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-renderers.d.ts.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-renderers.js +34 -0
- package/dist/generators/pothos/pothos-prisma/generated/template-renderers.js.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.d.ts +30 -0
- package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.d.ts.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.js +30 -0
- package/dist/generators/pothos/pothos-prisma/generated/ts-import-providers.js.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/typed-templates.d.ts +4 -0
- package/dist/generators/pothos/pothos-prisma/generated/typed-templates.d.ts.map +1 -0
- package/dist/generators/pothos/pothos-prisma/generated/typed-templates.js +14 -0
- package/dist/generators/pothos/pothos-prisma/generated/typed-templates.js.map +1 -0
- package/dist/generators/pothos/pothos-prisma/index.d.ts +2 -0
- package/dist/generators/pothos/pothos-prisma/index.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-prisma/index.js +1 -0
- package/dist/generators/pothos/pothos-prisma/index.js.map +1 -1
- package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.d.ts +34 -1
- package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.js +20 -6
- package/dist/generators/pothos/pothos-prisma/pothos-prisma.generator.js.map +1 -1
- package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.d.ts +2 -2
- package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js +87 -50
- package/dist/generators/pothos/pothos-prisma-crud-mutation/pothos-prisma-crud-mutation.generator.js.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/index.d.ts +9 -39
- package/dist/generators/pothos/pothos-scalar/generated/index.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/template-paths.d.ts +2 -0
- package/dist/generators/pothos/pothos-scalar/generated/template-paths.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/template-paths.js +2 -0
- package/dist/generators/pothos/pothos-scalar/generated/template-paths.js.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/template-renderers.d.ts +6 -10
- package/dist/generators/pothos/pothos-scalar/generated/template-renderers.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/template-renderers.js +21 -6
- package/dist/generators/pothos/pothos-scalar/generated/template-renderers.js.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/typed-templates.d.ts +9 -29
- package/dist/generators/pothos/pothos-scalar/generated/typed-templates.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-scalar/generated/typed-templates.js +28 -14
- package/dist/generators/pothos/pothos-scalar/generated/typed-templates.js.map +1 -1
- package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.d.ts +2 -12
- package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.d.ts.map +1 -1
- package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.js +35 -11
- package/dist/generators/pothos/pothos-scalar/pothos-scalar.generator.js.map +1 -1
- package/dist/generators/pothos/pothos-scalar/templates/module/scalars/date-time.ts +21 -28
- package/dist/generators/pothos/pothos-scalar/templates/module/scalars/date.ts +13 -45
- package/dist/generators/pothos/pothos-scalar/templates/module/scalars/json-object.ts +28 -0
- package/dist/generators/pothos/pothos-scalar/templates/module/scalars/json.ts +23 -0
- package/dist/generators/pothos/pothos-scalar/templates/module/scalars/uuid.ts +13 -31
- package/dist/generators/pothos/pothos-sentry/pothos-sentry.generator.d.ts +1 -1
- package/dist/generators/prisma/_providers/index.d.ts +2 -0
- package/dist/generators/prisma/_providers/index.d.ts.map +1 -0
- package/dist/generators/prisma/_providers/index.js +2 -0
- package/dist/generators/prisma/_providers/index.js.map +1 -0
- package/dist/generators/prisma/_providers/prisma-generated-imports.d.ts +15 -0
- package/dist/generators/prisma/_providers/prisma-generated-imports.d.ts.map +1 -0
- package/dist/generators/prisma/_providers/prisma-generated-imports.js +10 -0
- package/dist/generators/prisma/_providers/prisma-generated-imports.js.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts +124 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.d.ts.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js +137 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-operation-callbacks.js.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts +82 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.d.ts.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js +215 -0
- package/dist/generators/prisma/_shared/build-data-helpers/generate-relation-build-data.js.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts +3 -0
- package/dist/generators/prisma/_shared/build-data-helpers/index.d.ts.map +1 -0
- package/dist/generators/prisma/_shared/build-data-helpers/index.js +3 -0
- package/dist/generators/prisma/_shared/build-data-helpers/index.js.map +1 -0
- package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts +0 -9
- package/dist/generators/prisma/_shared/crud-method/primary-key-input.d.ts.map +1 -1
- package/dist/generators/prisma/_shared/crud-method/primary-key-input.js +0 -32
- package/dist/generators/prisma/_shared/crud-method/primary-key-input.js.map +1 -1
- package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.d.ts +26 -0
- package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.d.ts.map +1 -0
- package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.js +47 -0
- package/dist/generators/prisma/_shared/field-definition-generators/generate-scalar-input-field.js.map +1 -0
- package/dist/generators/prisma/_shared/field-definition-generators/types.d.ts +8 -0
- package/dist/generators/prisma/_shared/field-definition-generators/types.d.ts.map +1 -0
- package/dist/generators/prisma/_shared/field-definition-generators/types.js +2 -0
- package/dist/generators/prisma/_shared/field-definition-generators/types.js.map +1 -0
- package/dist/generators/prisma/data-utils/data-utils.generator.d.ts +109 -0
- package/dist/generators/prisma/data-utils/data-utils.generator.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/data-utils.generator.js +32 -0
- package/dist/generators/prisma/data-utils/data-utils.generator.js.map +1 -0
- package/dist/generators/prisma/data-utils/generated/index.d.ts +190 -0
- package/dist/generators/prisma/data-utils/generated/index.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/generated/index.js +11 -0
- package/dist/generators/prisma/data-utils/generated/index.js.map +1 -0
- package/dist/generators/prisma/data-utils/generated/template-paths.d.ts +17 -0
- package/dist/generators/prisma/data-utils/generated/template-paths.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/generated/template-paths.js +27 -0
- package/dist/generators/prisma/data-utils/generated/template-paths.js.map +1 -0
- package/dist/generators/prisma/data-utils/generated/template-renderers.d.ts +45 -0
- package/dist/generators/prisma/data-utils/generated/template-renderers.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/generated/template-renderers.js +47 -0
- package/dist/generators/prisma/data-utils/generated/template-renderers.js.map +1 -0
- package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts +183 -0
- package/dist/generators/prisma/data-utils/generated/ts-import-providers.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/generated/ts-import-providers.js +72 -0
- package/dist/generators/prisma/data-utils/generated/ts-import-providers.js.map +1 -0
- package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts +157 -0
- package/dist/generators/prisma/data-utils/generated/typed-templates.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/generated/typed-templates.js +125 -0
- package/dist/generators/prisma/data-utils/generated/typed-templates.js.map +1 -0
- package/dist/generators/prisma/data-utils/index.d.ts +4 -0
- package/dist/generators/prisma/data-utils/index.d.ts.map +1 -0
- package/dist/generators/prisma/data-utils/index.js +3 -0
- package/dist/generators/prisma/data-utils/index.js.map +1 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/define-operations.ts +1030 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/field-definitions.ts +782 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-types.ts +164 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/prisma-utils.ts +80 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/relation-helpers.ts +196 -0
- package/dist/generators/prisma/data-utils/templates/src/utils/data-operations/types.ts +372 -0
- package/dist/generators/prisma/index.d.ts +7 -6
- package/dist/generators/prisma/index.d.ts.map +1 -1
- package/dist/generators/prisma/index.js +7 -6
- package/dist/generators/prisma/index.js.map +1 -1
- package/dist/generators/prisma/prisma/generated/index.d.ts +22 -1
- package/dist/generators/prisma/prisma/generated/index.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/generated/template-paths.d.ts +2 -0
- package/dist/generators/prisma/prisma/generated/template-paths.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/generated/template-paths.js +3 -0
- package/dist/generators/prisma/prisma/generated/template-paths.js.map +1 -1
- package/dist/generators/prisma/prisma/generated/template-renderers.d.ts +10 -1
- package/dist/generators/prisma/prisma/generated/template-renderers.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/generated/template-renderers.js +21 -1
- package/dist/generators/prisma/prisma/generated/template-renderers.js.map +1 -1
- package/dist/generators/prisma/prisma/generated/ts-import-providers.d.ts +7 -2
- package/dist/generators/prisma/prisma/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/generated/ts-import-providers.js +12 -2
- package/dist/generators/prisma/prisma/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/prisma/prisma/generated/typed-templates.d.ts +16 -1
- package/dist/generators/prisma/prisma/generated/typed-templates.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/generated/typed-templates.js +28 -2
- package/dist/generators/prisma/prisma/generated/typed-templates.js.map +1 -1
- package/dist/generators/prisma/prisma/prisma.generator.d.ts +30 -1
- package/dist/generators/prisma/prisma/prisma.generator.d.ts.map +1 -1
- package/dist/generators/prisma/prisma/prisma.generator.js +55 -13
- package/dist/generators/prisma/prisma/prisma.generator.js.map +1 -1
- package/dist/generators/prisma/prisma/templates/package/prisma.config.mts +17 -0
- package/dist/generators/prisma/prisma/templates/src/services/prisma.ts +5 -2
- package/dist/generators/prisma/prisma-data-create/index.d.ts +2 -0
- package/dist/generators/prisma/prisma-data-create/index.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-create/index.js +2 -0
- package/dist/generators/prisma/prisma-data-create/index.js.map +1 -0
- package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts +73 -0
- package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js +102 -0
- package/dist/generators/prisma/prisma-data-create/prisma-data-create.generator.js.map +1 -0
- package/dist/generators/prisma/prisma-data-delete/index.d.ts +2 -0
- package/dist/generators/prisma/prisma-data-delete/index.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-delete/index.js +2 -0
- package/dist/generators/prisma/prisma-data-delete/index.js.map +1 -0
- package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts +72 -0
- package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js +82 -0
- package/dist/generators/prisma/prisma-data-delete/prisma-data-delete.generator.js.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/index.d.ts +2 -0
- package/dist/generators/prisma/prisma-data-nested-field/index.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/index.js +2 -0
- package/dist/generators/prisma/prisma-data-nested-field/index.js.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.d.ts +16 -0
- package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js +179 -0
- package/dist/generators/prisma/prisma-data-nested-field/nested-field-writer.js.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts +95 -0
- package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.js +120 -0
- package/dist/generators/prisma/prisma-data-nested-field/prisma-data-nested-field.generator.js.map +1 -0
- package/dist/generators/prisma/prisma-data-service/index.d.ts +2 -0
- package/dist/generators/prisma/prisma-data-service/index.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-service/index.js +2 -0
- package/dist/generators/prisma/prisma-data-service/index.js.map +1 -0
- package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts +117 -0
- package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.js +127 -0
- package/dist/generators/prisma/prisma-data-service/prisma-data-service.generator.js.map +1 -0
- package/dist/generators/prisma/prisma-data-update/index.d.ts +2 -0
- package/dist/generators/prisma/prisma-data-update/index.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-update/index.js +2 -0
- package/dist/generators/prisma/prisma-data-update/index.js.map +1 -0
- package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts +73 -0
- package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.d.ts.map +1 -0
- package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js +114 -0
- package/dist/generators/prisma/prisma-data-update/prisma-data-update.generator.js.map +1 -0
- package/dist/generators/prisma/prisma-field/prisma-field.generator.d.ts +6 -6
- package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.js +1 -1
- package/dist/generators/stripe/fastify-stripe/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/index.d.ts +20 -1
- package/dist/generators/vitest/prisma-vitest/generated/index.d.ts.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/template-renderers.d.ts +6 -0
- package/dist/generators/vitest/prisma-vitest/generated/template-renderers.d.ts.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js +7 -1
- package/dist/generators/vitest/prisma-vitest/generated/template-renderers.js.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.d.ts +1 -2
- package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.d.ts.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.js +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/ts-import-providers.js.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts +14 -1
- package/dist/generators/vitest/prisma-vitest/generated/typed-templates.d.ts.map +1 -1
- package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js +8 -2
- package/dist/generators/vitest/prisma-vitest/generated/typed-templates.js.map +1 -1
- package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.d.ts +16 -0
- package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.d.ts.map +1 -1
- package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.js +5 -10
- package/dist/generators/vitest/prisma-vitest/prisma-vitest.generator.js.map +1 -1
- package/dist/generators/vitest/prisma-vitest/templates/src/tests/helpers/db.test-helper.ts +3 -2
- package/dist/generators/vitest/prisma-vitest/templates/src/tests/helpers/prisma.test-helper.ts +1 -1
- package/dist/types/field-types.d.ts +1 -1
- package/dist/types/field-types.d.ts.map +1 -1
- package/dist/types/field-types.js +2 -0
- package/dist/types/field-types.js.map +1 -1
- package/dist/types/service-dto-kinds.d.ts +59 -0
- package/dist/types/service-dto-kinds.d.ts.map +1 -0
- package/dist/types/service-dto-kinds.js +53 -0
- package/dist/types/service-dto-kinds.js.map +1 -0
- package/dist/types/service-output.d.ts +25 -2
- package/dist/types/service-output.d.ts.map +1 -1
- package/dist/types/service-output.js +22 -2
- package/dist/types/service-output.js.map +1 -1
- package/dist/writers/pothos/input-types.d.ts +1 -1
- package/dist/writers/pothos/input-types.d.ts.map +1 -1
- package/dist/writers/pothos/input-types.js +7 -10
- package/dist/writers/pothos/input-types.js.map +1 -1
- package/dist/writers/pothos/resolvers.d.ts.map +1 -1
- package/dist/writers/pothos/resolvers.js +9 -6
- package/dist/writers/pothos/resolvers.js.map +1 -1
- package/dist/writers/pothos/scalars.d.ts.map +1 -1
- package/dist/writers/pothos/scalars.js +5 -0
- package/dist/writers/pothos/scalars.js.map +1 -1
- package/dist/writers/prisma-schema/fields.d.ts +3 -0
- package/dist/writers/prisma-schema/fields.d.ts.map +1 -1
- package/dist/writers/prisma-schema/fields.js +1 -0
- package/dist/writers/prisma-schema/fields.js.map +1 -1
- package/package.json +8 -6
- package/dist/generators/auth/prisma-password-transformer/index.d.ts +0 -2
- package/dist/generators/auth/prisma-password-transformer/index.d.ts.map +0 -1
- package/dist/generators/auth/prisma-password-transformer/index.js +0 -2
- package/dist/generators/auth/prisma-password-transformer/index.js.map +0 -1
- package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.d.ts +0 -12
- package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.d.ts.map +0 -1
- package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.js +0 -48
- package/dist/generators/auth/prisma-password-transformer/prisma-password-transformer.generator.js.map +0 -1
- package/dist/generators/prisma/_shared/crud-method/data-method.d.ts +0 -31
- package/dist/generators/prisma/_shared/crud-method/data-method.d.ts.map +0 -1
- package/dist/generators/prisma/_shared/crud-method/data-method.js +0 -195
- package/dist/generators/prisma/_shared/crud-method/data-method.js.map +0 -1
- package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.d.ts +0 -50
- package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.d.ts.map +0 -1
- package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.js +0 -371
- package/dist/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.js.map +0 -1
- package/dist/generators/prisma/embedded-relation-transformer/index.d.ts +0 -2
- package/dist/generators/prisma/embedded-relation-transformer/index.d.ts.map +0 -1
- package/dist/generators/prisma/embedded-relation-transformer/index.js +0 -2
- package/dist/generators/prisma/embedded-relation-transformer/index.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-create/index.d.ts +0 -2
- package/dist/generators/prisma/prisma-crud-create/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-create/index.js +0 -2
- package/dist/generators/prisma/prisma-crud-create/index.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.d.ts +0 -48
- package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.js +0 -130
- package/dist/generators/prisma/prisma-crud-create/prisma-crud-create.generator.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-delete/index.d.ts +0 -2
- package/dist/generators/prisma/prisma-crud-delete/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-delete/index.js +0 -2
- package/dist/generators/prisma/prisma-crud-delete/index.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.d.ts +0 -38
- package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.js +0 -94
- package/dist/generators/prisma/prisma-crud-delete/prisma-crud-delete.generator.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-service/index.d.ts +0 -2
- package/dist/generators/prisma/prisma-crud-service/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-service/index.js +0 -2
- package/dist/generators/prisma/prisma-crud-service/index.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.d.ts +0 -20
- package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.js +0 -53
- package/dist/generators/prisma/prisma-crud-service/prisma-crud-service.generator.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-update/index.d.ts +0 -2
- package/dist/generators/prisma/prisma-crud-update/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-update/index.js +0 -2
- package/dist/generators/prisma/prisma-crud-update/index.js.map +0 -1
- package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.d.ts +0 -48
- package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.js +0 -145
- package/dist/generators/prisma/prisma-crud-update/prisma-crud-update.generator.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/index.d.ts +0 -134
- package/dist/generators/prisma/prisma-utils/generated/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/index.js +0 -11
- package/dist/generators/prisma/prisma-utils/generated/index.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/template-paths.d.ts +0 -17
- package/dist/generators/prisma/prisma-utils/generated/template-paths.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/template-paths.js +0 -27
- package/dist/generators/prisma/prisma-utils/generated/template-paths.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/template-renderers.d.ts +0 -37
- package/dist/generators/prisma/prisma-utils/generated/template-renderers.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/template-renderers.js +0 -43
- package/dist/generators/prisma/prisma-utils/generated/template-renderers.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.d.ts +0 -88
- package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.js +0 -54
- package/dist/generators/prisma/prisma-utils/generated/ts-import-providers.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/typed-templates.d.ts +0 -125
- package/dist/generators/prisma/prisma-utils/generated/typed-templates.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/generated/typed-templates.js +0 -104
- package/dist/generators/prisma/prisma-utils/generated/typed-templates.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/index.d.ts +0 -4
- package/dist/generators/prisma/prisma-utils/index.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/index.js +0 -3
- package/dist/generators/prisma/prisma-utils/index.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/prisma-utils.generator.d.ts +0 -61
- package/dist/generators/prisma/prisma-utils/prisma-utils.generator.d.ts.map +0 -1
- package/dist/generators/prisma/prisma-utils/prisma-utils.generator.js +0 -43
- package/dist/generators/prisma/prisma-utils/prisma-utils.generator.js.map +0 -1
- package/dist/generators/prisma/prisma-utils/templates/src/utils/crud-service-types.ts +0 -35
- package/dist/generators/prisma/prisma-utils/templates/src/utils/data-pipes.ts +0 -86
- package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-one-to-many.ts +0 -245
- package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-one-to-one.ts +0 -147
- package/dist/generators/prisma/prisma-utils/templates/src/utils/embedded-pipes/embedded-types.ts +0 -6
- package/dist/generators/prisma/prisma-utils/templates/src/utils/prisma-relations.ts +0 -24
- package/dist/providers/prisma/prisma-data-transformable.d.ts +0 -27
- package/dist/providers/prisma/prisma-data-transformable.d.ts.map +0 -1
- package/dist/providers/prisma/prisma-data-transformable.js +0 -2
- package/dist/providers/prisma/prisma-data-transformable.js.map +0 -1
|
@@ -1,371 +0,0 @@
|
|
|
1
|
-
import { tsCodeFragment, TsCodeUtils, tsHoistedFragment, tsTemplate, tsTypeImportBuilder, } from '@baseplate-dev/core-generators';
|
|
2
|
-
import { createGenerator, createGeneratorTask } from '@baseplate-dev/sync';
|
|
3
|
-
import { notEmpty, quot } from '@baseplate-dev/utils';
|
|
4
|
-
import { z } from 'zod';
|
|
5
|
-
import { serviceContextImportsProvider } from '#src/generators/core/service-context/index.js';
|
|
6
|
-
import { upperCaseFirst } from '#src/utils/case.js';
|
|
7
|
-
import { getDataInputTypeBlock, getDataMethodDataExpressions, getDataMethodDataType, } from '../_shared/crud-method/data-method.js';
|
|
8
|
-
import { prismaCrudServiceProvider, prismaCrudServiceSetupProvider, } from '../prisma-crud-service/index.js';
|
|
9
|
-
import { prismaUtilsImportsProvider } from '../prisma-utils/index.js';
|
|
10
|
-
import { prismaOutputProvider } from '../prisma/index.js';
|
|
11
|
-
const descriptorSchema = z.object({
|
|
12
|
-
name: z.string().min(1),
|
|
13
|
-
inputName: z.string().optional(),
|
|
14
|
-
localRelationName: z.string().optional(),
|
|
15
|
-
embeddedFieldNames: z.array(z.string().min(1)),
|
|
16
|
-
foreignModelName: z.string().optional(),
|
|
17
|
-
embeddedTransformerNames: z.array(z.string().min(1)).optional(),
|
|
18
|
-
});
|
|
19
|
-
function getForeignModelRelation(prismaOutput, modelName, localRelationName) {
|
|
20
|
-
const localModel = prismaOutput.getPrismaModel(modelName);
|
|
21
|
-
const localRelation = localModel.fields.find((f) => f.name === localRelationName);
|
|
22
|
-
if (!localRelation || localRelation.type !== 'relation') {
|
|
23
|
-
throw new Error(`${modelName}.${localRelationName} is not a relation field`);
|
|
24
|
-
}
|
|
25
|
-
// find the relationship on the foreign model since that's where the details of the relation exist
|
|
26
|
-
const foreignModel = prismaOutput.getPrismaModel(localRelation.modelType);
|
|
27
|
-
const foreignRelation = foreignModel.fields.find((f) => f.type === 'relation' &&
|
|
28
|
-
(localRelation.relationName
|
|
29
|
-
? f.name === localRelation.relationName
|
|
30
|
-
: f.modelType === modelName));
|
|
31
|
-
if (!foreignRelation) {
|
|
32
|
-
throw new Error(`Could not find foreign relation on ${localRelation.modelType} for ${modelName}.${localRelationName}`);
|
|
33
|
-
}
|
|
34
|
-
return { localModel, foreignModel, localRelation, foreignRelation };
|
|
35
|
-
}
|
|
36
|
-
function createEmbeddedTransformFunction(options) {
|
|
37
|
-
const { name, inputDataType, outputDataType, serviceContextType, prismaUtils, isOneToOne, dataMethodOptions, whereUniqueType, } = options;
|
|
38
|
-
dataMethodOptions.prismaOutput.getPrismaModel(dataMethodOptions.modelName);
|
|
39
|
-
const isAsync = dataMethodOptions.transformers.some((t) => t.isAsync);
|
|
40
|
-
const { functionBody, createExpression, updateExpression, dataPipeNames } = getDataMethodDataExpressions(dataMethodOptions);
|
|
41
|
-
const outputPipeType = tsCodeFragment(`DataPipeOutput<${outputDataType}>`, prismaUtils.DataPipeOutput.typeDeclaration());
|
|
42
|
-
const outputType = isAsync
|
|
43
|
-
? tsTemplate `Promise<${outputPipeType}>`
|
|
44
|
-
: outputPipeType;
|
|
45
|
-
// get a primary key to add a dummy where unique (since create operations don't have a whereunique)
|
|
46
|
-
const prismaModel = options.dataMethodOptions.prismaOutput.getPrismaModel(options.dataMethodOptions.modelName);
|
|
47
|
-
const primaryKey = prismaModel.idFields?.[0];
|
|
48
|
-
if (!primaryKey) {
|
|
49
|
-
throw new Error(`Model ${options.dataMethodOptions.modelName} must have at least one primary key`);
|
|
50
|
-
}
|
|
51
|
-
const func = TsCodeUtils.formatFragment(`${isAsync ? 'async ' : ''}function FUNC_NAME(data: INPUT_DATA_TYPE, context: CONTEXT_TYPE, whereUnique?: WHERE_UNIQUE_TYPE, parentId?: string): OUTPUT_TYPE {
|
|
52
|
-
FUNCTION_BODY
|
|
53
|
-
|
|
54
|
-
return DATA_RESULT;
|
|
55
|
-
}`, {
|
|
56
|
-
FUNC_NAME: name,
|
|
57
|
-
INPUT_DATA_TYPE: inputDataType,
|
|
58
|
-
FUNCTION_BODY: functionBody,
|
|
59
|
-
WHERE_UNIQUE_TYPE: whereUniqueType,
|
|
60
|
-
DATA_RESULT: TsCodeUtils.mergeFragmentsAsObject({
|
|
61
|
-
data: TsCodeUtils.mergeFragmentsAsObject({
|
|
62
|
-
where: isOneToOne
|
|
63
|
-
? undefined
|
|
64
|
-
: `whereUnique ?? { ${primaryKey}: '' }`,
|
|
65
|
-
create: createExpression,
|
|
66
|
-
update: updateExpression,
|
|
67
|
-
}),
|
|
68
|
-
operations: dataPipeNames.length === 0
|
|
69
|
-
? undefined
|
|
70
|
-
: tsCodeFragment(`mergePipeOperations([${dataPipeNames.join(', ')}])`, prismaUtils.mergePipeOperations.declaration()),
|
|
71
|
-
}),
|
|
72
|
-
OUTPUT_TYPE: outputType,
|
|
73
|
-
CONTEXT_TYPE: serviceContextType,
|
|
74
|
-
});
|
|
75
|
-
return {
|
|
76
|
-
name,
|
|
77
|
-
func: tsHoistedFragment(`embedded-transform-${name}`, func),
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
export const embeddedRelationTransformerGenerator = createGenerator({
|
|
81
|
-
name: 'prisma/embedded-relation-transformer',
|
|
82
|
-
generatorFileUrl: import.meta.url,
|
|
83
|
-
descriptorSchema,
|
|
84
|
-
getInstanceName: (descriptor) => descriptor.name,
|
|
85
|
-
buildTasks: ({ name: localRelationName, embeddedFieldNames = [], embeddedTransformerNames, inputName: inputNameDescriptor, foreignModelName, }) => ({
|
|
86
|
-
main: createGeneratorTask({
|
|
87
|
-
dependencies: {
|
|
88
|
-
prismaOutput: prismaOutputProvider,
|
|
89
|
-
prismaCrudServiceSetup: prismaCrudServiceSetupProvider,
|
|
90
|
-
foreignCrudService: prismaCrudServiceProvider
|
|
91
|
-
.dependency()
|
|
92
|
-
.optionalReference(foreignModelName),
|
|
93
|
-
serviceContextImports: serviceContextImportsProvider,
|
|
94
|
-
prismaUtilsImports: prismaUtilsImportsProvider,
|
|
95
|
-
},
|
|
96
|
-
run({ prismaOutput, prismaCrudServiceSetup, foreignCrudService, serviceContextImports, prismaUtilsImports, }) {
|
|
97
|
-
function buildTransformer({ operationType, }) {
|
|
98
|
-
const modelName = prismaCrudServiceSetup.getModelName();
|
|
99
|
-
const inputName = inputNameDescriptor ?? localRelationName;
|
|
100
|
-
const { localModel, foreignModel, localRelation, foreignRelation } = getForeignModelRelation(prismaOutput, modelName, localRelationName);
|
|
101
|
-
if (localModel.idFields?.length !== 1) {
|
|
102
|
-
throw new Error(`${modelName} must have exactly one id field if used in an embedded relation`);
|
|
103
|
-
}
|
|
104
|
-
const localId = localModel.idFields[0];
|
|
105
|
-
if (embeddedTransformerNames && !foreignCrudService) {
|
|
106
|
-
throw new Error(`Cannot use embedded transformers without a foreign crud service`);
|
|
107
|
-
}
|
|
108
|
-
const isOneToOne = !localRelation.isList;
|
|
109
|
-
// get transformers
|
|
110
|
-
const embeddedTransformerFactories = embeddedTransformerNames
|
|
111
|
-
?.map((name) => foreignCrudService?.getTransformerByName(name))
|
|
112
|
-
.filter(notEmpty) ?? [];
|
|
113
|
-
const embeddedFields = embeddedFieldNames.map((name) => {
|
|
114
|
-
const field = foreignModel.fields.find((f) => f.name === name);
|
|
115
|
-
if (!field) {
|
|
116
|
-
throw new Error(`Could not find field ${name} on ${foreignModel.name}`);
|
|
117
|
-
}
|
|
118
|
-
if (field.type !== 'scalar') {
|
|
119
|
-
throw new Error(`Field ${name} on ${foreignModel.name} is not a scalar`);
|
|
120
|
-
}
|
|
121
|
-
return field;
|
|
122
|
-
});
|
|
123
|
-
const dataInputName = `${modelName}Embedded${upperCaseFirst(localRelationName)}Data`;
|
|
124
|
-
const upsertTransformers = embeddedTransformerFactories.map((factory) => factory.buildTransformer({ operationType: 'upsert' }));
|
|
125
|
-
// If we use the existing item, we should check that its ID is actually owned
|
|
126
|
-
// by the parent
|
|
127
|
-
const getForeignRelationParentField = () => {
|
|
128
|
-
// figure out which field is parent ID
|
|
129
|
-
const foreignParentIdx = foreignRelation.references?.findIndex((reference) => reference === localId);
|
|
130
|
-
// foreign parent ID is not in list
|
|
131
|
-
if (foreignParentIdx == null || foreignParentIdx === -1) {
|
|
132
|
-
throw new Error(`Foreign reference must contain primary key of local model`);
|
|
133
|
-
}
|
|
134
|
-
const foreignParentField = foreignRelation.fields?.[foreignParentIdx];
|
|
135
|
-
if (!foreignParentField) {
|
|
136
|
-
throw new Error(`Unable to find foreign parent field`);
|
|
137
|
-
}
|
|
138
|
-
return foreignParentField;
|
|
139
|
-
};
|
|
140
|
-
const dataMethodOptions = {
|
|
141
|
-
modelName: foreignModel.name,
|
|
142
|
-
prismaFieldNames: embeddedFields.map((f) => f.name),
|
|
143
|
-
operationName: 'create',
|
|
144
|
-
transformers: upsertTransformers,
|
|
145
|
-
prismaOutput,
|
|
146
|
-
isPartial: false,
|
|
147
|
-
serviceContextImports,
|
|
148
|
-
prismaUtils: prismaUtilsImports,
|
|
149
|
-
operationType: 'upsert',
|
|
150
|
-
whereUniqueExpression: 'whereUnique',
|
|
151
|
-
parentIdCheckField: upsertTransformers.some((t) => t.needsExistingItem)
|
|
152
|
-
? getForeignRelationParentField()
|
|
153
|
-
: undefined,
|
|
154
|
-
};
|
|
155
|
-
const foreignModelName = upperCaseFirst(foreignModel.name);
|
|
156
|
-
const foreignRelationName = upperCaseFirst(foreignRelation.name);
|
|
157
|
-
const outputDataType = `{
|
|
158
|
-
where${isOneToOne ? '?' : ''}: Prisma.${foreignModelName}WhereUniqueInput;
|
|
159
|
-
create: Prisma.${foreignModelName}CreateWithout${foreignRelationName}Input;
|
|
160
|
-
update: Prisma.${foreignModelName}UpdateWithout${foreignRelationName}Input;
|
|
161
|
-
}`;
|
|
162
|
-
const upsertFunction = embeddedTransformerFactories.length === 0
|
|
163
|
-
? undefined
|
|
164
|
-
: createEmbeddedTransformFunction({
|
|
165
|
-
name: `prepareUpsertEmbedded${upperCaseFirst(localRelationName)}Data`,
|
|
166
|
-
inputDataType: dataInputName,
|
|
167
|
-
outputDataType,
|
|
168
|
-
dataMethodOptions,
|
|
169
|
-
isOneToOne,
|
|
170
|
-
prismaUtils: prismaUtilsImports,
|
|
171
|
-
serviceContextType: serviceContextImports.ServiceContext.typeFragment(),
|
|
172
|
-
whereUniqueType: `Prisma.${upperCaseFirst(foreignModel.name)}WhereUniqueInput`,
|
|
173
|
-
});
|
|
174
|
-
const dataInputType = getDataInputTypeBlock(dataInputName, dataMethodOptions);
|
|
175
|
-
const dataMethodDataType = getDataMethodDataType(dataMethodOptions);
|
|
176
|
-
const isNullable = !localRelation.isList && operationType === 'update';
|
|
177
|
-
const inputField = {
|
|
178
|
-
type: tsCodeFragment(`${dataInputName}${localRelation.isList ? '[]' : ''}${isNullable ? ' | null' : ''}`, undefined, {
|
|
179
|
-
hoistedFragments: [dataInputType],
|
|
180
|
-
}),
|
|
181
|
-
dtoField: {
|
|
182
|
-
name: inputName,
|
|
183
|
-
isOptional: true,
|
|
184
|
-
isNullable,
|
|
185
|
-
type: 'nested',
|
|
186
|
-
isList: localRelation.isList,
|
|
187
|
-
nestedType: {
|
|
188
|
-
name: dataInputName,
|
|
189
|
-
fields: dataMethodDataType.fields,
|
|
190
|
-
},
|
|
191
|
-
},
|
|
192
|
-
};
|
|
193
|
-
/**
|
|
194
|
-
* This is a fairly complex piece of logic. We have the following scenarios:
|
|
195
|
-
*
|
|
196
|
-
* Update/Create:
|
|
197
|
-
* - Update operation
|
|
198
|
-
* - Create operation
|
|
199
|
-
*
|
|
200
|
-
* Relationship Type:
|
|
201
|
-
* - 1:many relationship
|
|
202
|
-
* - 1:1 relationship
|
|
203
|
-
*
|
|
204
|
-
* Data Preprocessing:
|
|
205
|
-
* - May have transform function
|
|
206
|
-
* - May have no transform function
|
|
207
|
-
*/
|
|
208
|
-
const embeddedCallExpression = (() => {
|
|
209
|
-
if (operationType === 'create') {
|
|
210
|
-
return isOneToOne
|
|
211
|
-
? prismaUtilsImports.createOneToOneCreateData.fragment()
|
|
212
|
-
: prismaUtilsImports.createOneToManyCreateData.fragment();
|
|
213
|
-
}
|
|
214
|
-
return isOneToOne
|
|
215
|
-
? prismaUtilsImports.createOneToOneUpsertData.fragment()
|
|
216
|
-
: prismaUtilsImports.createOneToManyUpsertData.fragment();
|
|
217
|
-
})();
|
|
218
|
-
// finds the discriminator ID field in the input for 1:many relationships
|
|
219
|
-
const getDiscriminatorIdField = () => {
|
|
220
|
-
const foreignIds = foreignModel.idFields ?? [];
|
|
221
|
-
const discriminatorIdFields = foreignIds.filter((foreignId) => embeddedFieldNames.includes(foreignId));
|
|
222
|
-
if (discriminatorIdFields.length !== 1) {
|
|
223
|
-
throw new Error(`Expected 1 discriminator ID field for ${localRelationName}, found ${discriminatorIdFields.length}`);
|
|
224
|
-
}
|
|
225
|
-
return discriminatorIdFields[0];
|
|
226
|
-
};
|
|
227
|
-
const getWhereUniqueFunction = () => {
|
|
228
|
-
const returnType = tsCodeFragment(`Prisma.${upperCaseFirst(foreignModel.name)}WhereUniqueInput | undefined`, tsTypeImportBuilder(['Prisma']).from('@prisma/client'));
|
|
229
|
-
// convert primary keys to where unique
|
|
230
|
-
const foreignIds = foreignModel.idFields ?? [];
|
|
231
|
-
const primaryKeyFields = foreignIds.map((idField) => {
|
|
232
|
-
// check if ID field is in relation
|
|
233
|
-
const idRelationIdx = foreignRelation.fields?.findIndex((relationField) => relationField === idField);
|
|
234
|
-
if (idRelationIdx != null && idRelationIdx !== -1) {
|
|
235
|
-
const localField = foreignRelation.references?.[idRelationIdx];
|
|
236
|
-
if (!localField) {
|
|
237
|
-
throw new Error(`Could not find corresponding relation field for ${idField}`);
|
|
238
|
-
}
|
|
239
|
-
// short-circuit case for updates
|
|
240
|
-
if (operationType === 'update' && localId === localField) {
|
|
241
|
-
return { name: idField, value: localId };
|
|
242
|
-
}
|
|
243
|
-
return {
|
|
244
|
-
name: idField,
|
|
245
|
-
value: `existingItem.${localField}`,
|
|
246
|
-
needsExistingItem: true,
|
|
247
|
-
};
|
|
248
|
-
}
|
|
249
|
-
// check if ID field is in input
|
|
250
|
-
const embeddedField = embeddedFields.find((f) => f.name === idField);
|
|
251
|
-
if (embeddedField) {
|
|
252
|
-
return {
|
|
253
|
-
name: idField,
|
|
254
|
-
value: `input.${idField}`,
|
|
255
|
-
usesInput: true,
|
|
256
|
-
requiredInputField: embeddedField.isOptional || embeddedField.hasDefault
|
|
257
|
-
? idField
|
|
258
|
-
: undefined,
|
|
259
|
-
};
|
|
260
|
-
}
|
|
261
|
-
throw new Error(`Could not find ID field ${idField} in either embedded object or relation for relation ${localRelationName} of ${modelName}`);
|
|
262
|
-
});
|
|
263
|
-
const primaryKeyExpression = TsCodeUtils.mergeFragmentsAsObject(Object.fromEntries(primaryKeyFields.map((keyField) => [
|
|
264
|
-
keyField.name,
|
|
265
|
-
keyField.value,
|
|
266
|
-
])), { wrapWithParenthesis: true });
|
|
267
|
-
const value = primaryKeyFields.length > 1
|
|
268
|
-
? TsCodeUtils.mergeFragmentsAsObject({
|
|
269
|
-
[foreignIds.join('_')]: primaryKeyExpression,
|
|
270
|
-
}, { wrapWithParenthesis: true })
|
|
271
|
-
: primaryKeyExpression;
|
|
272
|
-
const usesInput = primaryKeyFields.some((k) => k.usesInput);
|
|
273
|
-
const needsExistingItem = primaryKeyFields.some((k) => k.needsExistingItem);
|
|
274
|
-
const requirementsList = [
|
|
275
|
-
...(needsExistingItem && operationType === 'upsert'
|
|
276
|
-
? ['existingItem']
|
|
277
|
-
: []),
|
|
278
|
-
...primaryKeyFields
|
|
279
|
-
.map((f) => f.requiredInputField && `input.${f.requiredInputField}`)
|
|
280
|
-
.filter(notEmpty),
|
|
281
|
-
];
|
|
282
|
-
return {
|
|
283
|
-
func: TsCodeUtils.formatFragment(`(INPUT): RETURN_TYPE => VALUE`, {
|
|
284
|
-
INPUT: usesInput ? 'input' : '',
|
|
285
|
-
RETURN_TYPE: returnType,
|
|
286
|
-
PREFIX: '',
|
|
287
|
-
VALUE: requirementsList.length > 0
|
|
288
|
-
? tsTemplate `${requirementsList.join(' && ')} ? ${value} : undefined`
|
|
289
|
-
: value,
|
|
290
|
-
}),
|
|
291
|
-
needsExistingItem,
|
|
292
|
-
};
|
|
293
|
-
};
|
|
294
|
-
const embeddedCallArgs = (() => {
|
|
295
|
-
if (operationType === 'create') {
|
|
296
|
-
return {
|
|
297
|
-
args: TsCodeUtils.mergeFragmentsAsObject({
|
|
298
|
-
input: inputName,
|
|
299
|
-
transform: upsertFunction?.name,
|
|
300
|
-
context: upsertFunction && 'context',
|
|
301
|
-
}),
|
|
302
|
-
};
|
|
303
|
-
}
|
|
304
|
-
const whereUniqueResult = getWhereUniqueFunction();
|
|
305
|
-
const parentId = operationType === 'update' ? localId : `existingItem.${localId}`;
|
|
306
|
-
const transformAdditions = upsertFunction
|
|
307
|
-
? {
|
|
308
|
-
transform: upsertFunction.name,
|
|
309
|
-
context: 'context',
|
|
310
|
-
getWhereUnique: whereUniqueResult.func,
|
|
311
|
-
parentId,
|
|
312
|
-
}
|
|
313
|
-
: {};
|
|
314
|
-
const oneToManyAdditions = isOneToOne
|
|
315
|
-
? {}
|
|
316
|
-
: {
|
|
317
|
-
idField: quot(getDiscriminatorIdField()),
|
|
318
|
-
getWhereUnique: whereUniqueResult.func,
|
|
319
|
-
};
|
|
320
|
-
const parentField = getForeignRelationParentField();
|
|
321
|
-
const oneToOneAdditions = isOneToOne
|
|
322
|
-
? {
|
|
323
|
-
deleteRelation: TsCodeUtils.formatFragment('() => PRISMA_MODEL.deleteMany({ where: WHERE_ARGS })', {
|
|
324
|
-
PRISMA_MODEL: prismaOutput.getPrismaModelFragment(foreignModel.name),
|
|
325
|
-
WHERE_ARGS: TsCodeUtils.mergeFragmentsAsObject({
|
|
326
|
-
[parentField]: parentId,
|
|
327
|
-
}),
|
|
328
|
-
}),
|
|
329
|
-
}
|
|
330
|
-
: {};
|
|
331
|
-
return {
|
|
332
|
-
args: TsCodeUtils.mergeFragmentsAsObject({
|
|
333
|
-
input: inputName,
|
|
334
|
-
...transformAdditions,
|
|
335
|
-
...oneToManyAdditions,
|
|
336
|
-
...oneToOneAdditions,
|
|
337
|
-
}),
|
|
338
|
-
needsExistingItem: whereUniqueResult.needsExistingItem ||
|
|
339
|
-
(operationType === 'upsert' && !!upsertFunction),
|
|
340
|
-
};
|
|
341
|
-
})();
|
|
342
|
-
const outputName = `${localRelationName}Output`;
|
|
343
|
-
const transformer = TsCodeUtils.formatFragment(`const OUTPUT_NAME = await EMBEDDED_CALL(ARGS)`, {
|
|
344
|
-
OUTPUT_NAME: outputName,
|
|
345
|
-
EMBEDDED_CALL: embeddedCallExpression,
|
|
346
|
-
ARGS: embeddedCallArgs.args,
|
|
347
|
-
}, [], { hoistedFragments: upsertFunction ? [upsertFunction.func] : [] });
|
|
348
|
-
return {
|
|
349
|
-
inputFields: [inputField],
|
|
350
|
-
outputFields: [
|
|
351
|
-
{
|
|
352
|
-
name: localRelationName,
|
|
353
|
-
pipeOutputName: outputName,
|
|
354
|
-
transformer,
|
|
355
|
-
createExpression: `{ create: ${outputName}.data?.create }`,
|
|
356
|
-
},
|
|
357
|
-
],
|
|
358
|
-
needsExistingItem: embeddedCallArgs.needsExistingItem,
|
|
359
|
-
isAsync: true,
|
|
360
|
-
needsContext: !!upsertFunction,
|
|
361
|
-
};
|
|
362
|
-
}
|
|
363
|
-
prismaCrudServiceSetup.addTransformer(localRelationName, {
|
|
364
|
-
buildTransformer,
|
|
365
|
-
});
|
|
366
|
-
return {};
|
|
367
|
-
},
|
|
368
|
-
}),
|
|
369
|
-
}),
|
|
370
|
-
});
|
|
371
|
-
//# sourceMappingURL=embedded-relation-transformer.generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"embedded-relation-transformer.generator.js","sourceRoot":"","sources":["../../../../src/generators/prisma/embedded-relation-transformer/embedded-relation-transformer.generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/embedded-relation-transformer/index.ts"],"names":[],"mappings":"AAAA,cAAc,8CAA8C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generators/prisma/embedded-relation-transformer/index.ts"],"names":[],"mappings":"AAAA,cAAc,8CAA8C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-create/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-create/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
export declare const prismaCrudCreateGenerator: import("@baseplate-dev/sync").GeneratorBundleCreator<{
|
|
2
|
-
name: string;
|
|
3
|
-
order: number;
|
|
4
|
-
modelName: string;
|
|
5
|
-
prismaFields: string[];
|
|
6
|
-
transformerNames?: string[] | undefined;
|
|
7
|
-
}, {
|
|
8
|
-
main: import("@baseplate-dev/sync").GeneratorTask<any, {
|
|
9
|
-
prismaOutput: import("@baseplate-dev/sync").ProviderType<import("../prisma/prisma.generator.js").PrismaOutputProvider>;
|
|
10
|
-
serviceFile: import("@baseplate-dev/sync").ProviderDependency<import("#src/generators/core/service-file/index.js").ServiceFileProvider>;
|
|
11
|
-
crudPrismaService: import("@baseplate-dev/sync").ProviderType<import("../prisma-crud-service/prisma-crud-service.generator.js").PrismaCrudServiceProvider>;
|
|
12
|
-
serviceContextImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
|
|
13
|
-
createServiceContext: {};
|
|
14
|
-
createSystemServiceContext: {};
|
|
15
|
-
createTestServiceContext: {};
|
|
16
|
-
ServiceContext: {
|
|
17
|
-
isTypeOnly: true;
|
|
18
|
-
};
|
|
19
|
-
}>>;
|
|
20
|
-
prismaUtilsImports: import("@baseplate-dev/sync").ProviderType<import("@baseplate-dev/core-generators").InferTsImportMapFromSchema<{
|
|
21
|
-
applyDataPipeOutput: {};
|
|
22
|
-
applyDataPipeOutputToOperations: {};
|
|
23
|
-
applyDataPipeOutputWithoutOperation: {};
|
|
24
|
-
createOneToManyCreateData: {};
|
|
25
|
-
createOneToManyUpsertData: {};
|
|
26
|
-
createOneToOneCreateData: {};
|
|
27
|
-
createOneToOneUpsertData: {};
|
|
28
|
-
createPrismaDisconnectOrConnectData: {};
|
|
29
|
-
CreateServiceInput: {
|
|
30
|
-
isTypeOnly: true;
|
|
31
|
-
};
|
|
32
|
-
DataPipeOutput: {
|
|
33
|
-
isTypeOnly: true;
|
|
34
|
-
};
|
|
35
|
-
DeleteServiceInput: {
|
|
36
|
-
isTypeOnly: true;
|
|
37
|
-
};
|
|
38
|
-
mergePipeOperations: {};
|
|
39
|
-
UpdateServiceInput: {
|
|
40
|
-
isTypeOnly: true;
|
|
41
|
-
};
|
|
42
|
-
UpsertPayload: {
|
|
43
|
-
isTypeOnly: true;
|
|
44
|
-
};
|
|
45
|
-
}>>;
|
|
46
|
-
}, any>;
|
|
47
|
-
}>;
|
|
48
|
-
//# sourceMappingURL=prisma-crud-create.generator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-crud-create.generator.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-create/prisma-crud-create.generator.ts"],"names":[],"mappings":"AA8HA,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoEpC,CAAC"}
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { TsCodeUtils, tsTypeImportBuilder, } from '@baseplate-dev/core-generators';
|
|
2
|
-
import { createGenerator, createGeneratorTask } from '@baseplate-dev/sync';
|
|
3
|
-
import { NUMBER_VALIDATORS } from '@baseplate-dev/utils';
|
|
4
|
-
import { z } from 'zod';
|
|
5
|
-
import { serviceContextImportsProvider } from '#src/generators/core/service-context/index.js';
|
|
6
|
-
import { serviceFileProvider } from '#src/generators/core/service-file/index.js';
|
|
7
|
-
import { prismaToServiceOutputDto } from '#src/types/service-output.js';
|
|
8
|
-
import { getDataInputTypeBlock, getDataMethodContextRequired, getDataMethodDataExpressions, getDataMethodDataType, wrapWithApplyDataPipe, } from '../_shared/crud-method/data-method.js';
|
|
9
|
-
import { prismaCrudServiceProvider } from '../prisma-crud-service/index.js';
|
|
10
|
-
import { prismaUtilsImportsProvider } from '../prisma-utils/index.js';
|
|
11
|
-
import { prismaOutputProvider } from '../prisma/index.js';
|
|
12
|
-
const descriptorSchema = z.object({
|
|
13
|
-
name: z.string().min(1),
|
|
14
|
-
order: NUMBER_VALIDATORS.POSITIVE_INT,
|
|
15
|
-
modelName: z.string().min(1),
|
|
16
|
-
prismaFields: z.array(z.string().min(1)),
|
|
17
|
-
transformerNames: z.array(z.string().min(1)).optional(),
|
|
18
|
-
});
|
|
19
|
-
function getMethodDefinition(serviceMethodReference, options) {
|
|
20
|
-
const { name, modelName, prismaOutput } = options;
|
|
21
|
-
const prismaDefinition = prismaOutput.getPrismaModel(modelName);
|
|
22
|
-
const dataType = getDataMethodDataType(options);
|
|
23
|
-
const hasContext = getDataMethodContextRequired(options);
|
|
24
|
-
return {
|
|
25
|
-
name,
|
|
26
|
-
referenceFragment: serviceMethodReference,
|
|
27
|
-
arguments: [
|
|
28
|
-
{
|
|
29
|
-
type: 'nested',
|
|
30
|
-
name: 'input',
|
|
31
|
-
nestedType: {
|
|
32
|
-
name: 'CreateServiceInput',
|
|
33
|
-
fields: [
|
|
34
|
-
{
|
|
35
|
-
name: 'data',
|
|
36
|
-
type: 'nested',
|
|
37
|
-
nestedType: dataType,
|
|
38
|
-
},
|
|
39
|
-
],
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
|
-
requiresContext: hasContext,
|
|
44
|
-
returnType: prismaToServiceOutputDto(prismaDefinition, (enumName) => prismaOutput.getServiceEnum(enumName)),
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
function getMethodBlock(options) {
|
|
48
|
-
const { name, modelName, prismaOutput, prismaUtils } = options;
|
|
49
|
-
const createInputTypeName = `${modelName}CreateData`;
|
|
50
|
-
const typeHeaderBlock = getDataInputTypeBlock(createInputTypeName, options);
|
|
51
|
-
const { functionBody, createExpression, dataPipeNames } = getDataMethodDataExpressions(options);
|
|
52
|
-
const contextRequired = getDataMethodContextRequired(options);
|
|
53
|
-
const modelType = prismaOutput.getModelTypeFragment(modelName);
|
|
54
|
-
const operation = TsCodeUtils.formatFragment(`PRISMA_MODEL.create(CREATE_ARGS)`, {
|
|
55
|
-
PRISMA_MODEL: prismaOutput.getPrismaModelFragment(modelName),
|
|
56
|
-
CREATE_ARGS: TsCodeUtils.mergeFragmentsAsObjectPresorted({
|
|
57
|
-
data: createExpression,
|
|
58
|
-
'...': 'query',
|
|
59
|
-
}),
|
|
60
|
-
});
|
|
61
|
-
return TsCodeUtils.formatFragment(`
|
|
62
|
-
export async function METHOD_NAME({ data, query, EXTRA_ARGS }: CreateServiceInput<CREATE_INPUT_TYPE_NAME, QUERY_ARGS>): Promise<MODEL_TYPE> {
|
|
63
|
-
FUNCTION_BODY
|
|
64
|
-
|
|
65
|
-
return OPERATION;
|
|
66
|
-
}
|
|
67
|
-
`.trim(), {
|
|
68
|
-
METHOD_NAME: name,
|
|
69
|
-
CREATE_INPUT_TYPE_NAME: createInputTypeName,
|
|
70
|
-
MODEL_TYPE: modelType,
|
|
71
|
-
EXTRA_ARGS: contextRequired ? 'context' : '',
|
|
72
|
-
QUERY_ARGS: `Prisma.${modelName}DefaultArgs`,
|
|
73
|
-
FUNCTION_BODY: functionBody,
|
|
74
|
-
OPERATION: wrapWithApplyDataPipe(operation, dataPipeNames, prismaUtils),
|
|
75
|
-
}, [
|
|
76
|
-
tsTypeImportBuilder(['Prisma']).from('@prisma/client'),
|
|
77
|
-
prismaUtils.CreateServiceInput.typeDeclaration(),
|
|
78
|
-
], { hoistedFragments: [typeHeaderBlock] });
|
|
79
|
-
}
|
|
80
|
-
export const prismaCrudCreateGenerator = createGenerator({
|
|
81
|
-
name: 'prisma/prisma-crud-create',
|
|
82
|
-
generatorFileUrl: import.meta.url,
|
|
83
|
-
descriptorSchema,
|
|
84
|
-
buildTasks: (descriptor) => ({
|
|
85
|
-
main: createGeneratorTask({
|
|
86
|
-
dependencies: {
|
|
87
|
-
prismaOutput: prismaOutputProvider,
|
|
88
|
-
serviceFile: serviceFileProvider.dependency(),
|
|
89
|
-
crudPrismaService: prismaCrudServiceProvider,
|
|
90
|
-
serviceContextImports: serviceContextImportsProvider,
|
|
91
|
-
prismaUtilsImports: prismaUtilsImportsProvider,
|
|
92
|
-
},
|
|
93
|
-
run({ prismaOutput, serviceFile, crudPrismaService, serviceContextImports, prismaUtilsImports, }) {
|
|
94
|
-
const { name, modelName, prismaFields, transformerNames } = descriptor;
|
|
95
|
-
const methodName = `${name}${modelName}`;
|
|
96
|
-
const serviceMethodReference = TsCodeUtils.importFragment(methodName, serviceFile.getServicePath());
|
|
97
|
-
const transformerOption = {
|
|
98
|
-
operationType: 'create',
|
|
99
|
-
};
|
|
100
|
-
const transformers = transformerNames?.map((transformerName) => crudPrismaService
|
|
101
|
-
.getTransformerByName(transformerName)
|
|
102
|
-
.buildTransformer(transformerOption)) ?? [];
|
|
103
|
-
return {
|
|
104
|
-
build: () => {
|
|
105
|
-
const methodOptions = {
|
|
106
|
-
name: methodName,
|
|
107
|
-
modelName,
|
|
108
|
-
prismaFieldNames: prismaFields,
|
|
109
|
-
prismaOutput,
|
|
110
|
-
operationName: 'create',
|
|
111
|
-
isPartial: false,
|
|
112
|
-
transformers,
|
|
113
|
-
serviceContextImports,
|
|
114
|
-
prismaUtils: prismaUtilsImports,
|
|
115
|
-
operationType: 'create',
|
|
116
|
-
whereUniqueExpression: null,
|
|
117
|
-
};
|
|
118
|
-
serviceFile.registerMethod({
|
|
119
|
-
order: descriptor.order,
|
|
120
|
-
name,
|
|
121
|
-
fragment: getMethodBlock(methodOptions),
|
|
122
|
-
outputMethod: getMethodDefinition(serviceMethodReference, methodOptions),
|
|
123
|
-
});
|
|
124
|
-
},
|
|
125
|
-
};
|
|
126
|
-
},
|
|
127
|
-
}),
|
|
128
|
-
}),
|
|
129
|
-
});
|
|
130
|
-
//# sourceMappingURL=prisma-crud-create.generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prisma-crud-create.generator.js","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-create/prisma-crud-create.generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-delete/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generators/prisma/prisma-crud-delete/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
|