@baseplate-dev/project-builder-lib 0.4.0 → 0.4.2
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/definition/model/model-field-utils.d.ts.map +1 -1
- package/dist/definition/model/model-field-utils.js +3 -7
- package/dist/definition/model/model-field-utils.js.map +1 -1
- package/dist/definition/plugins/plugin-utils.d.ts +3 -2
- package/dist/definition/plugins/plugin-utils.d.ts.map +1 -1
- package/dist/definition/plugins/plugin-utils.js +15 -6
- package/dist/definition/plugins/plugin-utils.js.map +1 -1
- package/dist/definition/project-definition-container.test-utils.d.ts.map +1 -1
- package/dist/definition/project-definition-container.test-utils.js +2 -2
- package/dist/definition/project-definition-container.test-utils.js.map +1 -1
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +2 -0
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/migration-021-migrate-bullmq-to-plugin.d.ts +42 -0
- package/dist/migrations/migration-021-migrate-bullmq-to-plugin.d.ts.map +1 -0
- package/dist/migrations/migration-021-migrate-bullmq-to-plugin.js +76 -0
- package/dist/migrations/migration-021-migrate-bullmq-to-plugin.js.map +1 -0
- package/dist/parser/parser.d.ts.map +1 -1
- package/dist/parser/parser.js +1 -0
- package/dist/parser/parser.js.map +1 -1
- package/dist/plugins/metadata/types.d.ts +7 -126
- package/dist/plugins/metadata/types.d.ts.map +1 -1
- package/dist/plugins/plugins.test-utils.d.ts +0 -8
- package/dist/plugins/plugins.test-utils.d.ts.map +1 -1
- package/dist/plugins/plugins.test-utils.js +0 -19
- package/dist/plugins/plugins.test-utils.js.map +1 -1
- package/dist/references/collect-refs.d.ts +20 -0
- package/dist/references/collect-refs.d.ts.map +1 -0
- package/dist/references/collect-refs.js +67 -0
- package/dist/references/collect-refs.js.map +1 -0
- package/dist/references/definition-ref-builder.d.ts +24 -154
- package/dist/references/definition-ref-builder.d.ts.map +1 -1
- package/dist/references/definition-ref-builder.js +0 -207
- package/dist/references/definition-ref-builder.js.map +1 -1
- package/dist/references/deserialize-schema.d.ts +2 -2
- package/dist/references/deserialize-schema.d.ts.map +1 -1
- package/dist/references/deserialize-schema.js +3 -0
- package/dist/references/deserialize-schema.js.map +1 -1
- package/dist/references/extend-parser-context-with-refs.d.ts +12 -7
- package/dist/references/extend-parser-context-with-refs.d.ts.map +1 -1
- package/dist/references/extend-parser-context-with-refs.js +111 -58
- package/dist/references/extend-parser-context-with-refs.js.map +1 -1
- package/dist/references/extract-definition-refs.d.ts +20 -13
- package/dist/references/extract-definition-refs.d.ts.map +1 -1
- package/dist/references/extract-definition-refs.js +50 -58
- package/dist/references/extract-definition-refs.js.map +1 -1
- package/dist/references/fix-ref-deletions.js.map +1 -1
- package/dist/references/index.d.ts +1 -0
- package/dist/references/index.d.ts.map +1 -1
- package/dist/references/index.js +1 -0
- package/dist/references/index.js.map +1 -1
- package/dist/references/markers.d.ts +28 -14
- package/dist/references/markers.d.ts.map +1 -1
- package/dist/references/markers.js.map +1 -1
- package/dist/references/parse-schema-with-references.d.ts.map +1 -1
- package/dist/references/parse-schema-with-references.js +0 -2
- package/dist/references/parse-schema-with-references.js.map +1 -1
- package/dist/references/ref-context-slot.d.ts +84 -0
- package/dist/references/ref-context-slot.d.ts.map +1 -0
- package/dist/references/ref-context-slot.js +38 -0
- package/dist/references/ref-context-slot.js.map +1 -0
- package/dist/references/resolve-slots.d.ts +38 -0
- package/dist/references/resolve-slots.d.ts.map +1 -0
- package/dist/references/resolve-slots.js +86 -0
- package/dist/references/resolve-slots.js.map +1 -0
- package/dist/references/resolve-zod-ref-payload-names.d.ts +2 -2
- package/dist/references/resolve-zod-ref-payload-names.d.ts.map +1 -1
- package/dist/references/resolve-zod-ref-payload-names.js +18 -7
- package/dist/references/resolve-zod-ref-payload-names.js.map +1 -1
- package/dist/references/serialize-schema.d.ts +1 -1
- package/dist/references/serialize-schema.d.ts.map +1 -1
- package/dist/references/serialize-schema.js +3 -1
- package/dist/references/serialize-schema.js.map +1 -1
- package/dist/references/types.d.ts +5 -6
- package/dist/references/types.d.ts.map +1 -1
- package/dist/schema/apps/backend/index.d.ts +4 -22
- package/dist/schema/apps/backend/index.d.ts.map +1 -1
- package/dist/schema/apps/backend/index.js +3 -4
- package/dist/schema/apps/backend/index.js.map +1 -1
- package/dist/schema/apps/base.d.ts +4 -12
- package/dist/schema/apps/base.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/admin.d.ts +270 -1699
- package/dist/schema/apps/web/admin/admin.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/admin.js +9 -10
- package/dist/schema/apps/web/admin/admin.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/base.d.ts +2 -14
- package/dist/schema/apps/web/admin/sections/base.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-action-spec.d.ts +2 -2
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-action-spec.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-action-spec.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.d.ts +13 -24
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.js +10 -19
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/built-in-actions.d.ts +10 -22
- package/dist/schema/apps/web/admin/sections/crud-actions/built-in-actions.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/types.d.ts +8 -12
- package/dist/schema/apps/web/admin/sections/crud-actions/types.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/types.js +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/types.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-column-spec.d.ts +2 -3
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-column-spec.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-column-spec.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.d.ts +11 -23
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.js +12 -20
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/built-in-columns.d.ts +8 -30
- package/dist/schema/apps/web/admin/sections/crud-columns/built-in-columns.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/built-in-columns.js +6 -6
- package/dist/schema/apps/web/admin/sections/crud-columns/built-in-columns.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/types.d.ts +15 -12
- package/dist/schema/apps/web/admin/sections/crud-columns/types.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/types.js +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/types.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.d.ts +12 -23
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.js +13 -20
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/admin-input-spec.d.ts +2 -3
- package/dist/schema/apps/web/admin/sections/crud-form/admin-input-spec.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/admin-input-spec.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.d.ts +40 -123
- package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.js +15 -14
- package/dist/schema/apps/web/admin/sections/crud-form/built-in-input.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/types.d.ts +17 -12
- package/dist/schema/apps/web/admin/sections/crud-form/types.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/types.js +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/types.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud.d.ts +202 -930
- package/dist/schema/apps/web/admin/sections/crud.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud.js +32 -26
- package/dist/schema/apps/web/admin/sections/crud.js.map +1 -1
- package/dist/schema/apps/web/web-app.d.ts +196 -1257
- package/dist/schema/apps/web/web-app.d.ts.map +1 -1
- package/dist/schema/apps/web/web-app.js +4 -4
- package/dist/schema/apps/web/web-app.js.map +1 -1
- package/dist/schema/creator/extend-parser-context-with-defaults.d.ts +2 -2
- package/dist/schema/creator/extend-parser-context-with-defaults.d.ts.map +1 -1
- package/dist/schema/creator/extend-parser-context-with-defaults.js +8 -15
- package/dist/schema/creator/extend-parser-context-with-defaults.js.map +1 -1
- package/dist/schema/creator/infer-types.d.ts +21 -4
- package/dist/schema/creator/infer-types.d.ts.map +1 -1
- package/dist/schema/creator/schema-creator.d.ts +46 -2
- package/dist/schema/creator/schema-creator.d.ts.map +1 -1
- package/dist/schema/creator/schema-creator.js +53 -0
- package/dist/schema/creator/schema-creator.js.map +1 -1
- package/dist/schema/creator/types.d.ts +11 -6
- package/dist/schema/creator/types.d.ts.map +1 -1
- package/dist/schema/features/feature.d.ts +14 -22
- package/dist/schema/features/feature.d.ts.map +1 -1
- package/dist/schema/models/enums.d.ts +34 -84
- package/dist/schema/models/enums.d.ts.map +1 -1
- package/dist/schema/models/enums.js +8 -8
- package/dist/schema/models/enums.js.map +1 -1
- package/dist/schema/models/graphql.d.ts +16 -163
- package/dist/schema/models/graphql.d.ts.map +1 -1
- package/dist/schema/models/graphql.js +8 -6
- package/dist/schema/models/graphql.js.map +1 -1
- package/dist/schema/models/index.d.ts +293 -1827
- package/dist/schema/models/index.d.ts.map +1 -1
- package/dist/schema/models/index.js +53 -54
- package/dist/schema/models/index.js.map +1 -1
- package/dist/schema/models/transformers/built-in-transformers.d.ts +20 -58
- package/dist/schema/models/transformers/built-in-transformers.d.ts.map +1 -1
- package/dist/schema/models/transformers/built-in-transformers.js +8 -9
- package/dist/schema/models/transformers/built-in-transformers.js.map +1 -1
- package/dist/schema/models/transformers/model-transformer-spec.d.ts +3 -4
- package/dist/schema/models/transformers/model-transformer-spec.d.ts.map +1 -1
- package/dist/schema/models/transformers/model-transformer-spec.js +3 -4
- package/dist/schema/models/transformers/model-transformer-spec.js.map +1 -1
- package/dist/schema/models/transformers/transformers.d.ts +7 -16
- package/dist/schema/models/transformers/transformers.d.ts.map +1 -1
- package/dist/schema/models/transformers/transformers.js +8 -13
- package/dist/schema/models/transformers/transformers.js.map +1 -1
- package/dist/schema/models/transformers/types.d.ts +14 -10
- package/dist/schema/models/transformers/types.d.ts.map +1 -1
- package/dist/schema/models/transformers/types.js +1 -1
- package/dist/schema/models/transformers/types.js.map +1 -1
- package/dist/schema/plugins/definition.d.ts +67 -95
- package/dist/schema/plugins/definition.d.ts.map +1 -1
- package/dist/schema/plugins/definition.js +8 -11
- package/dist/schema/plugins/definition.js.map +1 -1
- package/dist/schema/project-definition.d.ts +869 -4669
- package/dist/schema/project-definition.d.ts.map +1 -1
- package/dist/schema/project-definition.js +7 -9
- package/dist/schema/project-definition.js.map +1 -1
- package/dist/schema/settings/general.d.ts +3 -33
- package/dist/schema/settings/general.d.ts.map +1 -1
- package/dist/schema/settings/infrastructure.d.ts +2 -24
- package/dist/schema/settings/infrastructure.d.ts.map +1 -1
- package/dist/schema/settings/monorepo.d.ts +1 -15
- package/dist/schema/settings/monorepo.d.ts.map +1 -1
- package/dist/schema/settings/settings.d.ts +105 -242
- package/dist/schema/settings/settings.d.ts.map +1 -1
- package/dist/schema/settings/template-extractor.d.ts +1 -36
- package/dist/schema/settings/template-extractor.d.ts.map +1 -1
- package/dist/schema/settings/theme.d.ts +175 -259
- package/dist/schema/settings/theme.d.ts.map +1 -1
- package/dist/schema/settings/theme.js +1 -1
- package/dist/schema/settings/theme.js.map +1 -1
- package/dist/tools/model-merger/model-merger.d.ts +28 -28
- package/dist/tools/model-merger/model-merger.d.ts.map +1 -1
- package/dist/tools/model-merger/model-merger.js +5 -2
- package/dist/tools/model-merger/model-merger.js.map +1 -1
- package/dist/utils/theme.d.ts.map +1 -1
- package/dist/utils/theme.js +3 -4
- package/dist/utils/theme.js.map +1 -1
- package/dist/web/hooks/use-definition-schema.d.ts +9 -2
- package/dist/web/hooks/use-definition-schema.d.ts.map +1 -1
- package/dist/web/hooks/use-definition-schema.js +7 -1
- package/dist/web/hooks/use-definition-schema.js.map +1 -1
- package/package.json +7 -7
- package/dist/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-app.d.ts","sourceRoot":"","sources":["../../../../src/schema/apps/web/web-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAQxD,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"web-app.d.ts","sourceRoot":"","sources":["../../../../src/schema/apps/web/web-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAQxD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa9B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEtE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA0C,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { definitionSchemaWithSlots } from '#src/schema/creator/schema-creator.js';
|
|
3
3
|
import { baseAppValidators } from '../base.js';
|
|
4
|
-
import { createAppEntryType } from '../types.js';
|
|
4
|
+
import { appEntityType, createAppEntryType } from '../types.js';
|
|
5
5
|
import { createAdminAppSchema } from './admin/admin.js';
|
|
6
|
-
export const createWebAppSchema =
|
|
6
|
+
export const createWebAppSchema = definitionSchemaWithSlots({ appSlot: appEntityType }, (ctx, { appSlot }) => z.object({
|
|
7
7
|
...baseAppValidators,
|
|
8
8
|
type: z.literal('web'),
|
|
9
9
|
includeAuth: ctx.withDefault(z.boolean(), false),
|
|
@@ -11,7 +11,7 @@ export const createWebAppSchema = definitionSchema((ctx) => z.object({
|
|
|
11
11
|
description: z.string().default(''),
|
|
12
12
|
includeUploadComponents: ctx.withDefault(z.boolean(), false),
|
|
13
13
|
enableSubscriptions: ctx.withDefault(z.boolean(), false),
|
|
14
|
-
adminApp: createAdminAppSchema(ctx),
|
|
14
|
+
adminApp: createAdminAppSchema(ctx, { appSlot }),
|
|
15
15
|
}));
|
|
16
16
|
export const webAppEntryType = createAppEntryType('web');
|
|
17
17
|
//# sourceMappingURL=web-app.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-app.js","sourceRoot":"","sources":["../../../../src/schema/apps/web/web-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"web-app.js","sourceRoot":"","sources":["../../../../src/schema/apps/web/web-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CACzD,EAAE,OAAO,EAAE,aAAa,EAAE,EAC1B,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CACnB,CAAC,CAAC,MAAM,CAAC;IACP,GAAG,iBAAiB;IACpB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC;IAChD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC7B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACnC,uBAAuB,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC;IAC5D,mBAAmB,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC;IACxD,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC;CACjD,CAAC,CACL,CAAC;AAIF,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,CAAe,KAAK,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
1
|
+
import type { z } from 'zod';
|
|
2
2
|
import type { DefinitionSchemaCreatorOptions } from './types.js';
|
|
3
|
-
export type WithDefaultType = <T extends z.
|
|
3
|
+
export type WithDefaultType = <T extends z.ZodType>(schema: T, defaultValue: z.input<T>) => z.ZodOptional<z.ZodType<z.output<z.ZodOptional<T>>, z.input<z.ZodOptional<T>>>>;
|
|
4
4
|
/**
|
|
5
5
|
* Extends the parser context with default value handling functionality.
|
|
6
6
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend-parser-context-with-defaults.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/extend-parser-context-with-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"extend-parser-context-with-defaults.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/extend-parser-context-with-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAqBjE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAChD,MAAM,EAAE,CAAC,EACT,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KACrB,CAAC,CAAC,WAAW,CAChB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CACjE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,8BAA8B,GACtC;IACD,WAAW,EAAE,eAAe,CAAC;CAC9B,CAmCA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
1
|
function isEmpty(value) {
|
|
3
2
|
if (value === undefined || value === null) {
|
|
4
3
|
return true;
|
|
@@ -25,32 +24,26 @@ export function extendParserContextWithDefaults(options) {
|
|
|
25
24
|
const mode = options.defaultMode ?? 'populate';
|
|
26
25
|
return {
|
|
27
26
|
withDefault: function withDefault(schema, defaultValue) {
|
|
28
|
-
// Auto-add .optional() to the schema
|
|
29
|
-
const optionalSchema = schema.optional();
|
|
30
27
|
switch (mode) {
|
|
31
28
|
case 'populate': {
|
|
32
|
-
|
|
33
|
-
return z.preprocess((value) => {
|
|
34
|
-
if (value === undefined) {
|
|
35
|
-
return defaultValue;
|
|
36
|
-
}
|
|
37
|
-
return value;
|
|
38
|
-
}, optionalSchema);
|
|
29
|
+
return schema.prefault(defaultValue).optional();
|
|
39
30
|
}
|
|
40
31
|
case 'strip': {
|
|
41
32
|
// Use transform to remove values matching defaults after validation
|
|
42
|
-
return
|
|
33
|
+
return schema
|
|
34
|
+
.transform((value) => {
|
|
35
|
+
if (value === defaultValue)
|
|
36
|
+
return undefined;
|
|
43
37
|
if (isEmpty(value)) {
|
|
44
38
|
return undefined;
|
|
45
39
|
}
|
|
46
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return -- it's typed to a generic
|
|
47
40
|
return value;
|
|
48
|
-
})
|
|
41
|
+
})
|
|
42
|
+
.optional();
|
|
49
43
|
}
|
|
50
44
|
case 'preserve': {
|
|
51
45
|
// Return schema with .optional() added
|
|
52
|
-
|
|
53
|
-
return optionalSchema.transform((x) => x);
|
|
46
|
+
return schema.transform((x) => x).optional();
|
|
54
47
|
}
|
|
55
48
|
}
|
|
56
49
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend-parser-context-with-defaults.js","sourceRoot":"","sources":["../../../src/schema/creator/extend-parser-context-with-defaults.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extend-parser-context-with-defaults.js","sourceRoot":"","sources":["../../../src/schema/creator/extend-parser-context-with-defaults.ts"],"names":[],"mappings":"AAIA,SAAS,OAAO,CAAC,KAAc;IAC7B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IAC5B,CAAC;IACD,IACE,OAAO,KAAK,KAAK,QAAQ;QACzB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,SAAS,EACjD,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,KAAK,EAAE,CAAC;IACtB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AASD;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAAuC;IAIvC,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,UAAU,CAAC;IAE/C,OAAO;QACL,WAAW,EAAE,SAAS,WAAW,CAC/B,MAAS,EACT,YAAwB;YAIxB,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,OAAO,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAClD,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,oEAAoE;oBACpE,OAAO,MAAM;yBACV,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;wBACnB,IAAI,KAAK,KAAK,YAAY;4BAAE,OAAO,SAAS,CAAC;wBAC7C,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;4BACnB,OAAO,SAAS,CAAC;wBACnB,CAAC;wBAED,OAAO,KAAK,CAAC;oBACf,CAAC,CAAC;yBACD,QAAQ,EAAE,CAAC;gBAChB,CAAC;gBACD,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,uCAAuC;oBAEvC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC/C,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
import type { DefinitionSchemaParserContext } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Type constraint for any schema creator function (with or without slots).
|
|
5
|
+
* Works with both:
|
|
6
|
+
* - `definitionSchema` which returns `(ctx) => ZodType`
|
|
7
|
+
* - `definitionSchemaWithSlots` which returns `(ctx, slots) => ZodType`
|
|
8
|
+
*/
|
|
9
|
+
type AnyDefinitionSchemaCreator = (ctx: DefinitionSchemaParserContext, ...args: any[]) => z.ZodType;
|
|
10
|
+
/**
|
|
11
|
+
* Infers the Zod schema type from a schema creator function.
|
|
12
|
+
*/
|
|
13
|
+
export type InferSchema<T extends AnyDefinitionSchemaCreator> = ReturnType<T>;
|
|
14
|
+
/**
|
|
15
|
+
* Infers the input type (what you pass to parse) from a schema creator function.
|
|
16
|
+
*/
|
|
17
|
+
export type InferInput<T extends AnyDefinitionSchemaCreator> = z.input<ReturnType<T>>;
|
|
18
|
+
/**
|
|
19
|
+
* Infers the output type (what parse returns) from a schema creator function.
|
|
20
|
+
*/
|
|
21
|
+
export type InferOutput<T extends AnyDefinitionSchemaCreator> = z.output<ReturnType<T>>;
|
|
22
|
+
export {};
|
|
6
23
|
//# sourceMappingURL=infer-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infer-types.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/infer-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"infer-types.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/infer-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;GAKG;AACH,KAAK,0BAA0B,GAAG,CAChC,GAAG,EAAE,6BAA6B,EAElC,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,CAAC,CAAC,OAAO,CAAC;AAEf;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,0BAA0B,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,0BAA0B,IAAI,CAAC,CAAC,KAAK,CACpE,UAAU,CAAC,CAAC,CAAC,CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,0BAA0B,IAAI,CAAC,CAAC,MAAM,CACtE,UAAU,CAAC,CAAC,CAAC,CACd,CAAC"}
|
|
@@ -1,5 +1,49 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
|
-
import type {
|
|
2
|
+
import type { RefContextSlotDefinition, RefContextSlotMap } from '#src/references/ref-context-slot.js';
|
|
3
|
+
import type { DefinitionSchemaCreator, DefinitionSchemaCreatorOptions, DefinitionSchemaCreatorWithSlots, DefinitionSchemaParserContext } from './types.js';
|
|
3
4
|
export declare function createDefinitionSchemaParserContext(options: DefinitionSchemaCreatorOptions): DefinitionSchemaParserContext;
|
|
4
|
-
export declare function definitionSchema<T extends z.
|
|
5
|
+
export declare function definitionSchema<T extends z.ZodType>(creator: DefinitionSchemaCreator<T>): (context: DefinitionSchemaParserContext) => T;
|
|
6
|
+
/**
|
|
7
|
+
* Creates a schema that requires slots to be passed from parent schemas.
|
|
8
|
+
* Used when a schema needs to reference entities from a parent context.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* // Child schema requiring modelSlot from parent
|
|
13
|
+
* export const createModelScalarFieldSchema = definitionSchemaWithSlots(
|
|
14
|
+
* { modelSlot: modelEntityType },
|
|
15
|
+
* (ctx, { modelSlot }) =>
|
|
16
|
+
* ctx.withEnt(schema, {
|
|
17
|
+
* type: modelScalarFieldEntityType,
|
|
18
|
+
* parentSlot: modelSlot,
|
|
19
|
+
* }),
|
|
20
|
+
* );
|
|
21
|
+
*
|
|
22
|
+
* // Called from parent:
|
|
23
|
+
* createModelScalarFieldSchema(ctx, { modelSlot: parentModelSlot })
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function definitionSchemaWithSlots<TSlotDef extends RefContextSlotDefinition, T extends z.ZodType>(slotDefinition: TSlotDef, creator: (ctx: DefinitionSchemaParserContext, slots: RefContextSlotMap<TSlotDef>) => T): DefinitionSchemaCreatorWithSlots<T, TSlotDef>;
|
|
27
|
+
/**
|
|
28
|
+
* Wraps a schema creator that requires slots with placeholder slots,
|
|
29
|
+
* producing a simple schema creator that can be used for validation-only
|
|
30
|
+
* contexts (e.g., React Hook Form).
|
|
31
|
+
*
|
|
32
|
+
* The placeholder slots allow the schema to parse without actual parent context,
|
|
33
|
+
* which is useful when you only need schema validation without ref extraction.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* // Schema that normally requires modelSlot from parent
|
|
38
|
+
* const createModelScalarFieldSchema = definitionSchemaWithSlots(
|
|
39
|
+
* { modelSlot: modelEntityType },
|
|
40
|
+
* (ctx, { modelSlot }) => ctx.withEnt(schema, { parentSlot: modelSlot }),
|
|
41
|
+
* );
|
|
42
|
+
*
|
|
43
|
+
* // For React Hook Form validation, wrap with placeholder slots
|
|
44
|
+
* const fieldSchema = withPlaceholderSlots(createModelScalarFieldSchema);
|
|
45
|
+
* const zodSchema = fieldSchema(ctx); // No slots needed
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export declare function withPlaceholderSlots<T extends z.ZodType, TSlotDef extends RefContextSlotDefinition>(schemaCreator: DefinitionSchemaCreatorWithSlots<T, TSlotDef>): DefinitionSchemaCreator<T>;
|
|
5
49
|
//# sourceMappingURL=schema-creator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-creator.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/schema-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"schema-creator.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/schema-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,qCAAqC,CAAC;AAK7C,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC9B,gCAAgC,EAChC,6BAA6B,EAC9B,MAAM,YAAY,CAAC;AAIpB,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,8BAA8B,GACtC,6BAA6B,CAM/B;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAClD,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAClC,CAAC,OAAO,EAAE,6BAA6B,KAAK,CAAC,CAE/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,SAAS,wBAAwB,EACzC,CAAC,SAAS,CAAC,CAAC,OAAO,EAEnB,cAAc,EAAE,QAAQ,EACxB,OAAO,EAAE,CACP,GAAG,EAAE,6BAA6B,EAClC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,KAC/B,CAAC,GACL,gCAAgC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAO/C;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,CAAC,CAAC,OAAO,EACnB,QAAQ,SAAS,wBAAwB,EAEzC,aAAa,EAAE,gCAAgC,CAAC,CAAC,EAAE,QAAQ,CAAC,GAC3D,uBAAuB,CAAC,CAAC,CAAC,CAO5B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { extendParserContextWithRefs } from '#src/references/extend-parser-context-with-refs.js';
|
|
2
|
+
import { createRefContextSlotMap } from '#src/references/ref-context-slot.js';
|
|
2
3
|
import { extendParserContextWithDefaults } from './extend-parser-context-with-defaults.js';
|
|
3
4
|
export function createDefinitionSchemaParserContext(options) {
|
|
4
5
|
return {
|
|
@@ -10,4 +11,56 @@ export function createDefinitionSchemaParserContext(options) {
|
|
|
10
11
|
export function definitionSchema(creator) {
|
|
11
12
|
return (context) => creator(context);
|
|
12
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Creates a schema that requires slots to be passed from parent schemas.
|
|
16
|
+
* Used when a schema needs to reference entities from a parent context.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* // Child schema requiring modelSlot from parent
|
|
21
|
+
* export const createModelScalarFieldSchema = definitionSchemaWithSlots(
|
|
22
|
+
* { modelSlot: modelEntityType },
|
|
23
|
+
* (ctx, { modelSlot }) =>
|
|
24
|
+
* ctx.withEnt(schema, {
|
|
25
|
+
* type: modelScalarFieldEntityType,
|
|
26
|
+
* parentSlot: modelSlot,
|
|
27
|
+
* }),
|
|
28
|
+
* );
|
|
29
|
+
*
|
|
30
|
+
* // Called from parent:
|
|
31
|
+
* createModelScalarFieldSchema(ctx, { modelSlot: parentModelSlot })
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export function definitionSchemaWithSlots(slotDefinition, creator) {
|
|
35
|
+
const creatorWithSlots = (context, slots) => creator(context, slots);
|
|
36
|
+
creatorWithSlots.slotDefinition = slotDefinition;
|
|
37
|
+
return creatorWithSlots;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Wraps a schema creator that requires slots with placeholder slots,
|
|
41
|
+
* producing a simple schema creator that can be used for validation-only
|
|
42
|
+
* contexts (e.g., React Hook Form).
|
|
43
|
+
*
|
|
44
|
+
* The placeholder slots allow the schema to parse without actual parent context,
|
|
45
|
+
* which is useful when you only need schema validation without ref extraction.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```typescript
|
|
49
|
+
* // Schema that normally requires modelSlot from parent
|
|
50
|
+
* const createModelScalarFieldSchema = definitionSchemaWithSlots(
|
|
51
|
+
* { modelSlot: modelEntityType },
|
|
52
|
+
* (ctx, { modelSlot }) => ctx.withEnt(schema, { parentSlot: modelSlot }),
|
|
53
|
+
* );
|
|
54
|
+
*
|
|
55
|
+
* // For React Hook Form validation, wrap with placeholder slots
|
|
56
|
+
* const fieldSchema = withPlaceholderSlots(createModelScalarFieldSchema);
|
|
57
|
+
* const zodSchema = fieldSchema(ctx); // No slots needed
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export function withPlaceholderSlots(schemaCreator) {
|
|
61
|
+
return (ctx) => {
|
|
62
|
+
const placeholderSlots = createRefContextSlotMap(schemaCreator.slotDefinition);
|
|
63
|
+
return schemaCreator(ctx, placeholderSlots);
|
|
64
|
+
};
|
|
65
|
+
}
|
|
13
66
|
//# sourceMappingURL=schema-creator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-creator.js","sourceRoot":"","sources":["../../../src/schema/creator/schema-creator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema-creator.js","sourceRoot":"","sources":["../../../src/schema/creator/schema-creator.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAS9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAE3F,MAAM,UAAU,mCAAmC,CACjD,OAAuC;IAEvC,OAAO;QACL,GAAG,OAAO;QACV,GAAG,2BAA2B,CAAC,OAAO,CAAC;QACvC,GAAG,+BAA+B,CAAC,OAAO,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAmC;IAEnC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,yBAAyB,CAIvC,cAAwB,EACxB,OAGM;IAEN,MAAM,gBAAgB,GAAkD,CACtE,OAAO,EACP,KAAK,EACL,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC7B,gBAAgB,CAAC,cAAc,GAAG,cAAc,CAAC;IACjD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,oBAAoB,CAIlC,aAA4D;IAE5D,OAAO,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,gBAAgB,GAAG,uBAAuB,CAC9C,aAAa,CAAC,cAAc,CAC7B,CAAC;QACF,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC9C,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
2
|
import type { PluginImplementationStore } from '#src/plugins/index.js';
|
|
3
|
-
import type {
|
|
3
|
+
import type { RefContextType, WithEntType, WithRefType } from '#src/references/extend-parser-context-with-refs.js';
|
|
4
|
+
import type { RefContextSlotDefinition, RefContextSlotMap } from '#src/references/ref-context-slot.js';
|
|
4
5
|
import type { WithDefaultType } from './extend-parser-context-with-defaults.js';
|
|
5
6
|
/**
|
|
6
7
|
* Options for creating a definition schema.
|
|
@@ -50,10 +51,6 @@ export interface DefinitionSchemaParserContext {
|
|
|
50
51
|
* Adds an entity to the schema.
|
|
51
52
|
*/
|
|
52
53
|
withEnt: WithEntType;
|
|
53
|
-
/**
|
|
54
|
-
* Provides access to the reference builder functions for the schema.
|
|
55
|
-
*/
|
|
56
|
-
withRefBuilder: WithRefBuilder;
|
|
57
54
|
/**
|
|
58
55
|
* Wraps a schema with default value handling based on the defaultMode.
|
|
59
56
|
* - 'populate': Uses preprocess to ensure defaults are present
|
|
@@ -61,6 +58,14 @@ export interface DefinitionSchemaParserContext {
|
|
|
61
58
|
* - 'preserve': Returns schema unchanged
|
|
62
59
|
*/
|
|
63
60
|
withDefault: WithDefaultType;
|
|
61
|
+
/**
|
|
62
|
+
* Creates ref context slots for use within a schema definition.
|
|
63
|
+
* Slots provide type-safe context for parent-child entity relationships.
|
|
64
|
+
*/
|
|
65
|
+
refContext: RefContextType;
|
|
64
66
|
}
|
|
65
|
-
export type DefinitionSchemaCreator<T extends z.
|
|
67
|
+
export type DefinitionSchemaCreator<T extends z.ZodType = z.ZodType> = (ctx: DefinitionSchemaParserContext) => T;
|
|
68
|
+
export type DefinitionSchemaCreatorWithSlots<TDefinitionSchema extends z.ZodType = z.ZodType, TSlotDefinition extends RefContextSlotDefinition = RefContextSlotDefinition> = ((ctx: DefinitionSchemaParserContext, slots: RefContextSlotMap<TSlotDefinition>) => TDefinitionSchema) & {
|
|
69
|
+
slotDefinition: TSlotDefinition;
|
|
70
|
+
};
|
|
66
71
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/schema/creator/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,WAAW,EACZ,MAAM,oDAAoD,CAAC;AAC5D,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EAClB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;OAEG;IACH,OAAO,EAAE,yBAAyB,CAAC;IACnC;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;CACjD;AAED,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,OAAO,EAAE,yBAAyB,CAAC;IACnC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;IAChD;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;;;OAKG;IACH,WAAW,EAAE,eAAe,CAAC;IAC7B;;;OAGG;IACH,UAAU,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,CACrE,GAAG,EAAE,6BAA6B,KAC/B,CAAC,CAAC;AAEP,MAAM,MAAM,gCAAgC,CAC1C,iBAAiB,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,EAC/C,eAAe,SAAS,wBAAwB,GAAG,wBAAwB,IACzE,CAAC,CACH,GAAG,EAAE,6BAA6B,EAClC,KAAK,EAAE,iBAAiB,CAAC,eAAe,CAAC,KACtC,iBAAiB,CAAC,GAAG;IACxB,cAAc,EAAE,eAAe,CAAC;CACjC,CAAC"}
|
|
@@ -2,47 +2,39 @@ import { z } from 'zod';
|
|
|
2
2
|
import type { def } from '#src/schema/creator/index.js';
|
|
3
3
|
export declare const featureEntityType: import("#src/references/types.js").DefinitionEntityType<false>;
|
|
4
4
|
export declare const featureNameSchema: z.ZodString;
|
|
5
|
-
export declare const createFeatureSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.
|
|
6
|
-
id: z.ZodString;
|
|
7
|
-
name: z.ZodEffects<z.ZodString, string, string>;
|
|
8
|
-
parentRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
9
|
-
}, "strip", z.ZodTypeAny, {
|
|
10
|
-
name: string;
|
|
5
|
+
export declare const createFeatureSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodType<{
|
|
11
6
|
id: string;
|
|
7
|
+
name: string;
|
|
12
8
|
parentRef?: string | undefined;
|
|
13
9
|
}, {
|
|
14
|
-
name: string;
|
|
15
10
|
id: string;
|
|
16
|
-
parentRef?: string | undefined;
|
|
17
|
-
}>, {
|
|
18
11
|
name: string;
|
|
12
|
+
parentRef?: string | undefined;
|
|
13
|
+
}, z.core.$ZodTypeInternals<{
|
|
19
14
|
id: string;
|
|
15
|
+
name: string;
|
|
20
16
|
parentRef?: string | undefined;
|
|
21
17
|
}, {
|
|
22
|
-
name: string;
|
|
23
18
|
id: string;
|
|
19
|
+
name: string;
|
|
24
20
|
parentRef?: string | undefined;
|
|
25
|
-
}
|
|
21
|
+
}>>;
|
|
26
22
|
export type FeatureConfig = def.InferOutput<typeof createFeatureSchema>;
|
|
27
|
-
export declare const createFeaturesSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodDefault<z.ZodArray<z.
|
|
28
|
-
id: z.ZodString;
|
|
29
|
-
name: z.ZodEffects<z.ZodString, string, string>;
|
|
30
|
-
parentRef: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
31
|
-
}, "strip", z.ZodTypeAny, {
|
|
32
|
-
name: string;
|
|
23
|
+
export declare const createFeaturesSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodDefault<z.ZodArray<z.ZodType<{
|
|
33
24
|
id: string;
|
|
25
|
+
name: string;
|
|
34
26
|
parentRef?: string | undefined;
|
|
35
27
|
}, {
|
|
36
|
-
name: string;
|
|
37
28
|
id: string;
|
|
38
|
-
parentRef?: string | undefined;
|
|
39
|
-
}>, {
|
|
40
29
|
name: string;
|
|
30
|
+
parentRef?: string | undefined;
|
|
31
|
+
}, z.core.$ZodTypeInternals<{
|
|
41
32
|
id: string;
|
|
33
|
+
name: string;
|
|
42
34
|
parentRef?: string | undefined;
|
|
43
35
|
}, {
|
|
44
|
-
name: string;
|
|
45
36
|
id: string;
|
|
37
|
+
name: string;
|
|
46
38
|
parentRef?: string | undefined;
|
|
47
|
-
}
|
|
39
|
+
}>>>>;
|
|
48
40
|
//# sourceMappingURL=feature.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../../src/schema/features/feature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAKxD,eAAO,MAAM,iBAAiB,gEAA8B,CAAC;AAE7D,eAAO,MAAM,iBAAiB,aAA6B,CAAC;AAE5D,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../../src/schema/features/feature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAKxD,eAAO,MAAM,iBAAiB,gEAA8B,CAAC;AAE7D,eAAO,MAAM,iBAAiB,aAA6B,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;GA0B/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAExE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;KAEhC,CAAC"}
|
|
@@ -1,141 +1,91 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import type { def } from '#src/schema/creator/index.js';
|
|
3
|
-
export declare const createEnumValueSchema:
|
|
4
|
-
id: z.ZodString;
|
|
5
|
-
name: z.ZodString;
|
|
6
|
-
friendlyName: z.ZodString;
|
|
7
|
-
}, "strip", z.ZodTypeAny, {
|
|
8
|
-
name: string;
|
|
3
|
+
export declare const createEnumValueSchema: import("#src/schema/creator/index.js").DefinitionSchemaCreatorWithSlots<z.ZodType<{
|
|
9
4
|
id: string;
|
|
5
|
+
name: string;
|
|
10
6
|
friendlyName: string;
|
|
11
7
|
}, {
|
|
12
|
-
name: string;
|
|
13
8
|
id: string;
|
|
14
|
-
friendlyName: string;
|
|
15
|
-
}>, {
|
|
16
9
|
name: string;
|
|
10
|
+
friendlyName: string;
|
|
11
|
+
}, z.core.$ZodTypeInternals<{
|
|
17
12
|
id: string;
|
|
13
|
+
name: string;
|
|
18
14
|
friendlyName: string;
|
|
19
15
|
}, {
|
|
20
|
-
name: string;
|
|
21
16
|
id: string;
|
|
17
|
+
name: string;
|
|
22
18
|
friendlyName: string;
|
|
19
|
+
}>>, {
|
|
20
|
+
enumSlot: import("../../index.js").DefinitionEntityType<false>;
|
|
23
21
|
}>;
|
|
24
22
|
export type EnumValueConfig = def.InferOutput<typeof createEnumValueSchema>;
|
|
25
|
-
export declare const createEnumBaseSchema:
|
|
23
|
+
export declare const createEnumBaseSchema: import("#src/schema/creator/index.js").DefinitionSchemaCreatorWithSlots<z.ZodObject<{
|
|
26
24
|
id: z.ZodString;
|
|
27
25
|
name: z.ZodString;
|
|
28
|
-
featureRef: z.
|
|
29
|
-
values: z.ZodArray<z.
|
|
30
|
-
id: z.ZodString;
|
|
31
|
-
name: z.ZodString;
|
|
32
|
-
friendlyName: z.ZodString;
|
|
33
|
-
}, "strip", z.ZodTypeAny, {
|
|
34
|
-
name: string;
|
|
35
|
-
id: string;
|
|
36
|
-
friendlyName: string;
|
|
37
|
-
}, {
|
|
38
|
-
name: string;
|
|
26
|
+
featureRef: z.ZodType<string, string, z.core.$ZodTypeInternals<string, string>>;
|
|
27
|
+
values: z.ZodArray<z.ZodType<{
|
|
39
28
|
id: string;
|
|
40
|
-
friendlyName: string;
|
|
41
|
-
}>, {
|
|
42
29
|
name: string;
|
|
43
|
-
id: string;
|
|
44
30
|
friendlyName: string;
|
|
45
31
|
}, {
|
|
46
|
-
name: string;
|
|
47
32
|
id: string;
|
|
48
|
-
friendlyName: string;
|
|
49
|
-
}>, "many">;
|
|
50
|
-
isExposed: z.ZodBoolean;
|
|
51
|
-
}, "strip", z.ZodTypeAny, {
|
|
52
|
-
values: {
|
|
53
33
|
name: string;
|
|
54
|
-
id: string;
|
|
55
34
|
friendlyName: string;
|
|
56
|
-
}
|
|
57
|
-
name: string;
|
|
58
|
-
id: string;
|
|
59
|
-
featureRef: string;
|
|
60
|
-
isExposed: boolean;
|
|
61
|
-
}, {
|
|
62
|
-
values: {
|
|
63
|
-
name: string;
|
|
35
|
+
}, z.core.$ZodTypeInternals<{
|
|
64
36
|
id: string;
|
|
65
|
-
friendlyName: string;
|
|
66
|
-
}[];
|
|
67
|
-
name: string;
|
|
68
|
-
id: string;
|
|
69
|
-
featureRef: string;
|
|
70
|
-
isExposed: boolean;
|
|
71
|
-
}>;
|
|
72
|
-
export declare const createEnumSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodEffects<z.ZodObject<{
|
|
73
|
-
id: z.ZodString;
|
|
74
|
-
name: z.ZodString;
|
|
75
|
-
featureRef: z.ZodEffects<z.ZodString, string, string>;
|
|
76
|
-
values: z.ZodArray<z.ZodEffects<z.ZodObject<{
|
|
77
|
-
id: z.ZodString;
|
|
78
|
-
name: z.ZodString;
|
|
79
|
-
friendlyName: z.ZodString;
|
|
80
|
-
}, "strip", z.ZodTypeAny, {
|
|
81
37
|
name: string;
|
|
82
|
-
id: string;
|
|
83
38
|
friendlyName: string;
|
|
84
39
|
}, {
|
|
85
|
-
name: string;
|
|
86
40
|
id: string;
|
|
87
|
-
friendlyName: string;
|
|
88
|
-
}>, {
|
|
89
|
-
name: string;
|
|
90
|
-
id: string;
|
|
91
|
-
friendlyName: string;
|
|
92
|
-
}, {
|
|
93
41
|
name: string;
|
|
94
|
-
id: string;
|
|
95
42
|
friendlyName: string;
|
|
96
|
-
}
|
|
43
|
+
}>>>;
|
|
97
44
|
isExposed: z.ZodBoolean;
|
|
98
|
-
},
|
|
45
|
+
}, z.core.$strip>, {
|
|
46
|
+
enumSlot: import("../../index.js").DefinitionEntityType<false>;
|
|
47
|
+
}>;
|
|
48
|
+
export declare const createEnumSchema: (context: import("#src/schema/creator/index.js").DefinitionSchemaParserContext) => z.ZodType<{
|
|
49
|
+
id: string;
|
|
50
|
+
name: string;
|
|
51
|
+
featureRef: string;
|
|
99
52
|
values: {
|
|
100
|
-
name: string;
|
|
101
53
|
id: string;
|
|
54
|
+
name: string;
|
|
102
55
|
friendlyName: string;
|
|
103
56
|
}[];
|
|
104
|
-
name: string;
|
|
105
|
-
id: string;
|
|
106
|
-
featureRef: string;
|
|
107
57
|
isExposed: boolean;
|
|
108
58
|
}, {
|
|
59
|
+
id: string;
|
|
60
|
+
name: string;
|
|
61
|
+
featureRef: string;
|
|
109
62
|
values: {
|
|
110
|
-
name: string;
|
|
111
63
|
id: string;
|
|
64
|
+
name: string;
|
|
112
65
|
friendlyName: string;
|
|
113
66
|
}[];
|
|
114
|
-
|
|
67
|
+
isExposed: boolean;
|
|
68
|
+
}, z.core.$ZodTypeInternals<{
|
|
115
69
|
id: string;
|
|
70
|
+
name: string;
|
|
116
71
|
featureRef: string;
|
|
117
|
-
isExposed: boolean;
|
|
118
|
-
}>, {
|
|
119
72
|
values: {
|
|
120
|
-
name: string;
|
|
121
73
|
id: string;
|
|
74
|
+
name: string;
|
|
122
75
|
friendlyName: string;
|
|
123
76
|
}[];
|
|
124
|
-
name: string;
|
|
125
|
-
id: string;
|
|
126
|
-
featureRef: string;
|
|
127
77
|
isExposed: boolean;
|
|
128
78
|
}, {
|
|
79
|
+
id: string;
|
|
80
|
+
name: string;
|
|
81
|
+
featureRef: string;
|
|
129
82
|
values: {
|
|
130
|
-
name: string;
|
|
131
83
|
id: string;
|
|
84
|
+
name: string;
|
|
132
85
|
friendlyName: string;
|
|
133
86
|
}[];
|
|
134
|
-
name: string;
|
|
135
|
-
id: string;
|
|
136
|
-
featureRef: string;
|
|
137
87
|
isExposed: boolean;
|
|
138
|
-
}
|
|
88
|
+
}>>;
|
|
139
89
|
export type EnumConfig = def.InferOutput<typeof createEnumSchema>;
|
|
140
90
|
export type EnumConfigInput = def.InferInput<typeof createEnumSchema>;
|
|
141
91
|
//# sourceMappingURL=enums.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/schema/models/enums.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../src/schema/models/enums.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAUxD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;EAcjC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE5E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;EAahC,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAO5B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAElE,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { definitionSchema } from '#src/schema/creator/schema-creator.js';
|
|
2
|
+
import { definitionSchema, definitionSchemaWithSlots, } from '#src/schema/creator/schema-creator.js';
|
|
3
3
|
import { featureEntityType } from '../features/index.js';
|
|
4
4
|
import { modelEnumEntityType, modelEnumValueEntityType } from './types.js';
|
|
5
|
-
export const createEnumValueSchema =
|
|
5
|
+
export const createEnumValueSchema = definitionSchemaWithSlots({ enumSlot: modelEnumEntityType }, (ctx, { enumSlot }) => ctx.withEnt(z.object({
|
|
6
6
|
id: z.string(),
|
|
7
7
|
name: z.string().min(1),
|
|
8
8
|
friendlyName: z.string().min(1),
|
|
9
9
|
}), {
|
|
10
10
|
type: modelEnumValueEntityType,
|
|
11
|
-
|
|
11
|
+
parentSlot: enumSlot,
|
|
12
12
|
}));
|
|
13
|
-
export const createEnumBaseSchema =
|
|
13
|
+
export const createEnumBaseSchema = definitionSchemaWithSlots({ enumSlot: modelEnumEntityType }, (ctx, { enumSlot }) => z.object({
|
|
14
14
|
id: z.string(),
|
|
15
15
|
name: z.string().min(1),
|
|
16
16
|
featureRef: ctx.withRef({
|
|
17
17
|
type: featureEntityType,
|
|
18
18
|
onDelete: 'RESTRICT',
|
|
19
19
|
}),
|
|
20
|
-
values: z.array(createEnumValueSchema(ctx)),
|
|
20
|
+
values: z.array(createEnumValueSchema(ctx, { enumSlot })),
|
|
21
21
|
isExposed: z.boolean(),
|
|
22
22
|
}));
|
|
23
|
-
export const createEnumSchema = definitionSchema((ctx) => ctx.withEnt(createEnumBaseSchema(ctx), {
|
|
23
|
+
export const createEnumSchema = definitionSchema((ctx) => ctx.refContext({ enumSlot: modelEnumEntityType }, ({ enumSlot }) => ctx.withEnt(createEnumBaseSchema(ctx, { enumSlot }), {
|
|
24
24
|
type: modelEnumEntityType,
|
|
25
|
-
|
|
26
|
-
}));
|
|
25
|
+
provides: enumSlot,
|
|
26
|
+
})));
|
|
27
27
|
//# sourceMappingURL=enums.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/schema/models/enums.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../src/schema/models/enums.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3E,MAAM,CAAC,MAAM,qBAAqB,GAAG,yBAAyB,CAC5D,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EACjC,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CACpB,GAAG,CAAC,OAAO,CACT,CAAC,CAAC,MAAM,CAAC;IACP,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC,EACF;IACE,IAAI,EAAE,wBAAwB;IAC9B,UAAU,EAAE,QAAQ;CACrB,CACF,CACJ,CAAC;AAIF,MAAM,CAAC,MAAM,oBAAoB,GAAG,yBAAyB,CAC3D,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EACjC,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CACpB,CAAC,CAAC,MAAM,CAAC;IACP,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC;QACtB,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE,UAAU;KACrB,CAAC;IACF,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzD,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE;CACvB,CAAC,CACL,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,GAAG,EAAE,EAAE,CACvD,GAAG,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CACjE,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;IACnD,IAAI,EAAE,mBAAmB;IACzB,QAAQ,EAAE,QAAQ;CACnB,CAAC,CACH,CACF,CAAC"}
|