@baseplate-dev/project-builder-lib 0.5.3 → 0.6.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/CHANGELOG.md +60 -0
- package/dist/definition/index.d.ts +0 -1
- package/dist/definition/index.d.ts.map +1 -1
- package/dist/definition/index.js +0 -1
- package/dist/definition/index.js.map +1 -1
- package/dist/definition/model/model-field-utils.js +2 -2
- package/dist/definition/model/model-field-utils.js.map +1 -1
- package/dist/definition/model/model-utils.d.ts.map +1 -1
- package/dist/definition/model/model-utils.js +2 -2
- package/dist/definition/model/model-utils.js.map +1 -1
- package/dist/definition/project-definition-container.d.ts +21 -12
- package/dist/definition/project-definition-container.d.ts.map +1 -1
- package/dist/definition/project-definition-container.js +42 -23
- package/dist/definition/project-definition-container.js.map +1 -1
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +6 -0
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/migration-024-graphql-object-type-field-auth.d.ts +30 -0
- package/dist/migrations/migration-024-graphql-object-type-field-auth.d.ts.map +1 -0
- package/dist/migrations/migration-024-graphql-object-type-field-auth.js +54 -0
- package/dist/migrations/migration-024-graphql-object-type-field-auth.js.map +1 -0
- package/dist/migrations/migration-025-service-method-auth.d.ts +44 -0
- package/dist/migrations/migration-025-service-method-auth.d.ts.map +1 -0
- package/dist/migrations/migration-025-service-method-auth.js +62 -0
- package/dist/migrations/migration-025-service-method-auth.js.map +1 -0
- package/dist/migrations/migration-026-query-shared-roles.d.ts +32 -0
- package/dist/migrations/migration-026-query-shared-roles.d.ts.map +1 -0
- package/dist/migrations/migration-026-query-shared-roles.js +48 -0
- package/dist/migrations/migration-026-query-shared-roles.js.map +1 -0
- package/dist/parser/apply-definition-fixes.d.ts +13 -0
- package/dist/parser/apply-definition-fixes.d.ts.map +1 -0
- package/dist/parser/apply-definition-fixes.js +25 -0
- package/dist/parser/apply-definition-fixes.js.map +1 -0
- package/dist/parser/clean-default-values.d.ts +14 -0
- package/dist/parser/clean-default-values.d.ts.map +1 -0
- package/dist/parser/clean-default-values.js +24 -0
- package/dist/parser/clean-default-values.js.map +1 -0
- package/dist/parser/collect-definition-issues.d.ts +36 -0
- package/dist/parser/collect-definition-issues.d.ts.map +1 -0
- package/dist/parser/collect-definition-issues.js +94 -0
- package/dist/parser/collect-definition-issues.js.map +1 -0
- package/dist/parser/collect-expression-issues.d.ts +17 -0
- package/dist/parser/collect-expression-issues.d.ts.map +1 -0
- package/dist/parser/collect-expression-issues.js +33 -0
- package/dist/parser/collect-expression-issues.js.map +1 -0
- package/dist/parser/definition-issue-checkers/mutation-roles-checker.d.ts +11 -0
- package/dist/parser/definition-issue-checkers/mutation-roles-checker.d.ts.map +1 -0
- package/dist/parser/definition-issue-checkers/mutation-roles-checker.js +41 -0
- package/dist/parser/definition-issue-checkers/mutation-roles-checker.js.map +1 -0
- package/dist/parser/definition-issue-checkers/relation-type-mismatch-checker.d.ts +10 -0
- package/dist/parser/definition-issue-checkers/relation-type-mismatch-checker.d.ts.map +1 -0
- package/dist/parser/definition-issue-checkers/relation-type-mismatch-checker.js +36 -0
- package/dist/parser/definition-issue-checkers/relation-type-mismatch-checker.js.map +1 -0
- package/dist/parser/definition-issue-utils.d.ts +23 -0
- package/dist/parser/definition-issue-utils.d.ts.map +1 -0
- package/dist/parser/definition-issue-utils.js +33 -0
- package/dist/parser/definition-issue-utils.js.map +1 -0
- package/dist/parser/index.d.ts +9 -0
- package/dist/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +8 -0
- package/dist/parser/index.js.map +1 -1
- package/dist/parser/parser.d.ts.map +1 -1
- package/dist/parser/parser.js +7 -2
- package/dist/parser/parser.js.map +1 -1
- package/dist/parser/schema-structure.d.ts +53 -0
- package/dist/parser/schema-structure.d.ts.map +1 -0
- package/dist/parser/schema-structure.js +171 -0
- package/dist/parser/schema-structure.js.map +1 -0
- package/dist/parser/transform-data-with-schema.d.ts +35 -0
- package/dist/parser/transform-data-with-schema.d.ts.map +1 -0
- package/dist/parser/transform-data-with-schema.js +140 -0
- package/dist/parser/transform-data-with-schema.js.map +1 -0
- package/dist/parser/types.d.ts +6 -3
- package/dist/parser/types.d.ts.map +1 -1
- package/dist/parser/walk-data-with-schema.d.ts +46 -0
- package/dist/parser/walk-data-with-schema.d.ts.map +1 -0
- package/dist/parser/walk-data-with-schema.js +140 -0
- package/dist/parser/walk-data-with-schema.js.map +1 -0
- package/dist/parser/walk-schema-structure.d.ts +60 -0
- package/dist/parser/walk-schema-structure.d.ts.map +1 -0
- package/dist/parser/walk-schema-structure.js +163 -0
- package/dist/parser/walk-schema-structure.js.map +1 -0
- package/dist/plugins/imports/loader.d.ts +1 -1
- package/dist/plugins/imports/loader.d.ts.map +1 -1
- package/dist/plugins/imports/loader.js +2 -2
- package/dist/plugins/imports/loader.js.map +1 -1
- package/dist/plugins/imports/types.d.ts +1 -1
- package/dist/plugins/imports/types.d.ts.map +1 -1
- package/dist/plugins/metadata/types.d.ts +1 -1
- package/dist/plugins/metadata/types.js +1 -1
- package/dist/plugins/plugins.test-utils.d.ts +15 -0
- package/dist/plugins/plugins.test-utils.d.ts.map +1 -1
- package/dist/plugins/plugins.test-utils.js +24 -0
- package/dist/plugins/plugins.test-utils.js.map +1 -1
- package/dist/plugins/spec/config-spec.d.ts +1 -0
- package/dist/plugins/spec/config-spec.d.ts.map +1 -1
- package/dist/plugins/spec/config-spec.js +1 -0
- package/dist/plugins/spec/config-spec.js.map +1 -1
- package/dist/plugins/store/store.d.ts +6 -1
- package/dist/plugins/store/store.d.ts.map +1 -1
- package/dist/plugins/store/store.js +9 -1
- package/dist/plugins/store/store.js.map +1 -1
- package/dist/references/definition-ref-registry.d.ts +105 -0
- package/dist/references/definition-ref-registry.d.ts.map +1 -0
- package/dist/references/definition-ref-registry.js +40 -0
- package/dist/references/definition-ref-registry.js.map +1 -0
- package/dist/references/deserialize-schema.d.ts +4 -6
- package/dist/references/deserialize-schema.d.ts.map +1 -1
- package/dist/references/deserialize-schema.js +4 -5
- package/dist/references/deserialize-schema.js.map +1 -1
- package/dist/references/expression-types.d.ts +46 -14
- package/dist/references/expression-types.d.ts.map +1 -1
- package/dist/references/expression-types.js +17 -0
- package/dist/references/expression-types.js.map +1 -1
- package/dist/references/extend-parser-context-with-refs.d.ts +32 -2
- package/dist/references/extend-parser-context-with-refs.d.ts.map +1 -1
- package/dist/references/extend-parser-context-with-refs.js +123 -163
- package/dist/references/extend-parser-context-with-refs.js.map +1 -1
- package/dist/references/extract-definition-refs.d.ts +9 -8
- package/dist/references/extract-definition-refs.d.ts.map +1 -1
- package/dist/references/extract-definition-refs.js +110 -26
- package/dist/references/extract-definition-refs.js.map +1 -1
- package/dist/references/fix-ref-deletions.d.ts +6 -6
- package/dist/references/fix-ref-deletions.d.ts.map +1 -1
- package/dist/references/fix-ref-deletions.js +2 -2
- package/dist/references/fix-ref-deletions.js.map +1 -1
- package/dist/references/index.d.ts +3 -0
- package/dist/references/index.d.ts.map +1 -1
- package/dist/references/index.js +3 -0
- package/dist/references/index.js.map +1 -1
- package/dist/references/parse-schema-with-references.d.ts +8 -6
- package/dist/references/parse-schema-with-references.d.ts.map +1 -1
- package/dist/references/parse-schema-with-references.js +10 -12
- package/dist/references/parse-schema-with-references.js.map +1 -1
- package/dist/references/ref-schema-visitor.d.ts +33 -0
- package/dist/references/ref-schema-visitor.d.ts.map +1 -0
- package/dist/references/ref-schema-visitor.js +61 -0
- package/dist/references/ref-schema-visitor.js.map +1 -0
- package/dist/references/resolve-slots.d.ts +1 -1
- package/dist/references/resolve-slots.d.ts.map +1 -1
- package/dist/references/serialize-schema.d.ts +9 -2
- package/dist/references/serialize-schema.d.ts.map +1 -1
- package/dist/references/serialize-schema.js +20 -4
- package/dist/references/serialize-schema.js.map +1 -1
- package/dist/schema/apps/web/admin/admin.d.ts +22 -37
- package/dist/schema/apps/web/admin/admin.d.ts.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.d.ts +6 -15
- 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 +3 -8
- package/dist/schema/apps/web/admin/sections/crud-actions/admin-crud-action.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.d.ts +6 -15
- 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 +3 -8
- package/dist/schema/apps/web/admin/sections/crud-columns/admin-crud-column.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.d.ts +9 -15
- 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 +3 -8
- package/dist/schema/apps/web/admin/sections/crud-form/admin-crud-input.js.map +1 -1
- package/dist/schema/apps/web/admin/sections/crud.d.ts +6 -6
- package/dist/schema/apps/web/web-app.d.ts +32 -47
- package/dist/schema/apps/web/web-app.d.ts.map +1 -1
- package/dist/schema/creator/definition-default-registry.d.ts +22 -0
- package/dist/schema/creator/definition-default-registry.d.ts.map +1 -0
- package/dist/schema/creator/definition-default-registry.js +18 -0
- package/dist/schema/creator/definition-default-registry.js.map +1 -0
- package/dist/schema/creator/definition-fix-registry.d.ts +45 -0
- package/dist/schema/creator/definition-fix-registry.d.ts.map +1 -0
- package/dist/schema/creator/definition-fix-registry.js +41 -0
- package/dist/schema/creator/definition-fix-registry.js.map +1 -0
- package/dist/schema/creator/definition-issue-checker-spec.d.ts +37 -0
- package/dist/schema/creator/definition-issue-checker-spec.d.ts.map +1 -0
- package/dist/schema/creator/definition-issue-checker-spec.js +28 -0
- package/dist/schema/creator/definition-issue-checker-spec.js.map +1 -0
- package/dist/schema/creator/definition-issue-checkers.d.ts +16 -0
- package/dist/schema/creator/definition-issue-checkers.d.ts.map +1 -0
- package/dist/schema/creator/definition-issue-checkers.js +35 -0
- package/dist/schema/creator/definition-issue-checkers.js.map +1 -0
- package/dist/schema/creator/definition-issue-registry.d.ts +54 -0
- package/dist/schema/creator/definition-issue-registry.d.ts.map +1 -0
- package/dist/schema/creator/definition-issue-registry.js +47 -0
- package/dist/schema/creator/definition-issue-registry.js.map +1 -0
- package/dist/schema/creator/definition-issue-types.d.ts +53 -0
- package/dist/schema/creator/definition-issue-types.d.ts.map +1 -0
- package/dist/schema/creator/definition-issue-types.js +2 -0
- package/dist/schema/creator/definition-issue-types.js.map +1 -0
- package/dist/schema/creator/extend-parser-context-with-defaults.d.ts +20 -4
- package/dist/schema/creator/extend-parser-context-with-defaults.d.ts.map +1 -1
- package/dist/schema/creator/extend-parser-context-with-defaults.js +24 -42
- package/dist/schema/creator/extend-parser-context-with-defaults.js.map +1 -1
- package/dist/schema/creator/index.d.ts +6 -0
- package/dist/schema/creator/index.d.ts.map +1 -1
- package/dist/schema/creator/index.js +5 -0
- package/dist/schema/creator/index.js.map +1 -1
- package/dist/schema/creator/schema-creator.d.ts.map +1 -1
- package/dist/schema/creator/schema-creator.js +18 -4
- package/dist/schema/creator/schema-creator.js.map +1 -1
- package/dist/schema/creator/types.d.ts +3 -30
- package/dist/schema/creator/types.d.ts.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-acorn-parser.d.ts.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-acorn-parser.js +116 -25
- package/dist/schema/models/authorizer/authorizer-expression-acorn-parser.js.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-ast.d.ts +82 -1
- package/dist/schema/models/authorizer/authorizer-expression-ast.d.ts.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-ast.js.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-parser.d.ts +8 -9
- package/dist/schema/models/authorizer/authorizer-expression-parser.d.ts.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-parser.js +28 -35
- package/dist/schema/models/authorizer/authorizer-expression-parser.js.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-validator.d.ts +42 -4
- package/dist/schema/models/authorizer/authorizer-expression-validator.d.ts.map +1 -1
- package/dist/schema/models/authorizer/authorizer-expression-validator.js +119 -18
- package/dist/schema/models/authorizer/authorizer-expression-validator.js.map +1 -1
- package/dist/schema/models/graphql.d.ts +42 -111
- package/dist/schema/models/graphql.d.ts.map +1 -1
- package/dist/schema/models/graphql.js +59 -19
- package/dist/schema/models/graphql.js.map +1 -1
- package/dist/schema/models/models.d.ts +1134 -343
- package/dist/schema/models/models.d.ts.map +1 -1
- package/dist/schema/models/models.js +258 -86
- package/dist/schema/models/models.js.map +1 -1
- package/dist/schema/plugins/definition.d.ts +2 -30
- package/dist/schema/plugins/definition.d.ts.map +1 -1
- package/dist/schema/plugins/definition.js +26 -15
- package/dist/schema/plugins/definition.js.map +1 -1
- package/dist/schema/project-definition.d.ts +532 -186
- package/dist/schema/project-definition.d.ts.map +1 -1
- package/dist/schema/project-definition.js +15 -3
- package/dist/schema/project-definition.js.map +1 -1
- package/dist/schema/settings/general.d.ts +1 -1
- package/dist/schema/settings/general.d.ts.map +1 -1
- package/dist/schema/settings/general.js +4 -1
- package/dist/schema/settings/general.js.map +1 -1
- package/dist/schema/settings/settings.d.ts +3 -3
- package/dist/schema/settings/theme.d.ts +3 -3
- package/dist/testing/definition-helpers.test-helper.d.ts +12 -0
- package/dist/testing/definition-helpers.test-helper.d.ts.map +1 -0
- package/dist/testing/definition-helpers.test-helper.js +77 -0
- package/dist/testing/definition-helpers.test-helper.js.map +1 -0
- package/dist/testing/expression-stub-parser.test-helper.d.ts +59 -0
- package/dist/testing/expression-stub-parser.test-helper.d.ts.map +1 -0
- package/dist/testing/expression-stub-parser.test-helper.js +79 -0
- package/dist/testing/expression-stub-parser.test-helper.js.map +1 -0
- package/dist/testing/expression-warning-parser.test-helper.d.ts +39 -0
- package/dist/testing/expression-warning-parser.test-helper.d.ts.map +1 -0
- package/dist/testing/expression-warning-parser.test-helper.js +62 -0
- package/dist/testing/expression-warning-parser.test-helper.js.map +1 -0
- package/dist/testing/index.d.ts +5 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +5 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/parser-context.test-helper.d.ts +8 -0
- package/dist/testing/parser-context.test-helper.d.ts.map +1 -0
- package/dist/testing/parser-context.test-helper.js +16 -0
- package/dist/testing/parser-context.test-helper.js.map +1 -0
- package/dist/{definition/project-definition-container.test-utils.d.ts → testing/project-definition-container.test-helper.d.ts} +4 -2
- package/dist/testing/project-definition-container.test-helper.d.ts.map +1 -0
- package/dist/{definition/project-definition-container.test-utils.js → testing/project-definition-container.test-helper.js} +11 -5
- package/dist/testing/project-definition-container.test-helper.js.map +1 -0
- package/dist/tools/assign-entity-ids.d.ts +17 -0
- package/dist/tools/assign-entity-ids.d.ts.map +1 -0
- package/dist/tools/assign-entity-ids.js +34 -0
- package/dist/tools/assign-entity-ids.js.map +1 -0
- package/dist/tools/entity-service/entity-navigation.d.ts +13 -0
- package/dist/tools/entity-service/entity-navigation.d.ts.map +1 -0
- package/dist/tools/entity-service/entity-navigation.js +84 -0
- package/dist/tools/entity-service/entity-navigation.js.map +1 -0
- package/dist/tools/entity-service/entity-read.d.ts +38 -0
- package/dist/tools/entity-service/entity-read.d.ts.map +1 -0
- package/dist/tools/entity-service/entity-read.js +56 -0
- package/dist/tools/entity-service/entity-read.js.map +1 -0
- package/dist/tools/entity-service/entity-type-map.d.ts +18 -0
- package/dist/tools/entity-service/entity-type-map.d.ts.map +1 -0
- package/dist/tools/entity-service/entity-type-map.js +75 -0
- package/dist/tools/entity-service/entity-type-map.js.map +1 -0
- package/dist/tools/entity-service/entity-write.d.ts +39 -0
- package/dist/tools/entity-service/entity-write.d.ts.map +1 -0
- package/dist/tools/entity-service/entity-write.js +99 -0
- package/dist/tools/entity-service/entity-write.js.map +1 -0
- package/dist/tools/entity-service/index.d.ts +5 -0
- package/dist/tools/entity-service/index.d.ts.map +1 -0
- package/dist/tools/entity-service/index.js +4 -0
- package/dist/tools/entity-service/index.js.map +1 -0
- package/dist/tools/entity-service/types.d.ts +41 -0
- package/dist/tools/entity-service/types.d.ts.map +1 -0
- package/dist/tools/entity-service/types.js +2 -0
- package/dist/tools/entity-service/types.js.map +1 -0
- package/dist/tools/index.d.ts +2 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/merge-schema/diff-definition.d.ts +74 -0
- package/dist/tools/merge-schema/diff-definition.d.ts.map +1 -0
- package/dist/tools/merge-schema/diff-definition.js +163 -0
- package/dist/tools/merge-schema/diff-definition.js.map +1 -0
- package/dist/tools/merge-schema/entity-utils.d.ts +18 -0
- package/dist/tools/merge-schema/entity-utils.d.ts.map +1 -0
- package/dist/tools/merge-schema/entity-utils.js +42 -0
- package/dist/tools/merge-schema/entity-utils.js.map +1 -0
- package/dist/tools/merge-schema/index.d.ts +10 -0
- package/dist/tools/merge-schema/index.d.ts.map +1 -0
- package/dist/tools/merge-schema/index.js +7 -0
- package/dist/tools/merge-schema/index.js.map +1 -0
- package/dist/tools/merge-schema/merge-data-with-schema.d.ts +21 -0
- package/dist/tools/merge-schema/merge-data-with-schema.d.ts.map +1 -0
- package/dist/tools/merge-schema/merge-data-with-schema.js +168 -0
- package/dist/tools/merge-schema/merge-data-with-schema.js.map +1 -0
- package/dist/tools/merge-schema/merge-definition.d.ts +42 -0
- package/dist/tools/merge-schema/merge-definition.d.ts.map +1 -0
- package/dist/tools/merge-schema/merge-definition.js +53 -0
- package/dist/tools/merge-schema/merge-definition.js.map +1 -0
- package/dist/tools/merge-schema/merge-rule-registry.d.ts +47 -0
- package/dist/tools/merge-schema/merge-rule-registry.d.ts.map +1 -0
- package/dist/tools/merge-schema/merge-rule-registry.js +53 -0
- package/dist/tools/merge-schema/merge-rule-registry.js.map +1 -0
- package/dist/tools/merge-schema/walk-schema.d.ts +26 -0
- package/dist/tools/merge-schema/walk-schema.d.ts.map +1 -0
- package/dist/tools/merge-schema/walk-schema.js +94 -0
- package/dist/tools/merge-schema/walk-schema.js.map +1 -0
- package/dist/utils/definition-diff/definition-diff.js.map +1 -1
- package/dist/web/components/definition-diff-alert.d.ts +9 -0
- package/dist/web/components/definition-diff-alert.d.ts.map +1 -0
- package/dist/web/components/definition-diff-alert.js +17 -0
- package/dist/web/components/definition-diff-alert.js.map +1 -0
- package/dist/web/components/index.d.ts +1 -1
- package/dist/web/components/index.d.ts.map +1 -1
- package/dist/web/components/index.js +1 -1
- package/dist/web/components/index.js.map +1 -1
- package/dist/web/hooks/use-project-definition.d.ts +10 -2
- package/dist/web/hooks/use-project-definition.d.ts.map +1 -1
- package/dist/web/hooks/use-project-definition.js.map +1 -1
- package/dist/web/specs/entity-type-url-web-spec.d.ts +68 -0
- package/dist/web/specs/entity-type-url-web-spec.d.ts.map +1 -0
- package/dist/web/specs/entity-type-url-web-spec.js +27 -0
- package/dist/web/specs/entity-type-url-web-spec.js.map +1 -0
- package/dist/web/specs/index.d.ts +1 -0
- package/dist/web/specs/index.d.ts.map +1 -1
- package/dist/web/specs/index.js +1 -0
- package/dist/web/specs/index.js.map +1 -1
- package/package.json +12 -11
- package/dist/definition/project-definition-container.test-utils.d.ts.map +0 -1
- package/dist/definition/project-definition-container.test-utils.js.map +0 -1
- package/dist/references/collect-refs.d.ts +0 -24
- package/dist/references/collect-refs.d.ts.map +0 -1
- package/dist/references/collect-refs.js +0 -86
- package/dist/references/collect-refs.js.map +0 -1
- package/dist/references/markers.d.ts +0 -59
- package/dist/references/markers.d.ts.map +0 -1
- package/dist/references/markers.js +0 -29
- package/dist/references/markers.js.map +0 -1
- package/dist/references/strip-ref-markers.d.ts +0 -7
- package/dist/references/strip-ref-markers.d.ts.map +0 -1
- package/dist/references/strip-ref-markers.js +0 -25
- package/dist/references/strip-ref-markers.js.map +0 -1
- package/dist/schema/models/mocks.d.ts +0 -6
- package/dist/schema/models/mocks.d.ts.map +0 -1
- package/dist/schema/models/mocks.js +0 -55
- package/dist/schema/models/mocks.js.map +0 -1
- package/dist/tools/model-merger/index.d.ts +0 -2
- package/dist/tools/model-merger/index.d.ts.map +0 -1
- package/dist/tools/model-merger/index.js +0 -2
- package/dist/tools/model-merger/index.js.map +0 -1
- package/dist/tools/model-merger/model-merger.d.ts +0 -569
- package/dist/tools/model-merger/model-merger.d.ts.map +0 -1
- package/dist/tools/model-merger/model-merger.js +0 -319
- package/dist/tools/model-merger/model-merger.js.map +0 -1
- package/dist/web/components/model-merger-result-alert.d.ts +0 -8
- package/dist/web/components/model-merger-result-alert.d.ts.map +0 -1
- package/dist/web/components/model-merger-result-alert.js +0 -20
- package/dist/web/components/model-merger-result-alert.js.map +0 -1
|
@@ -1,171 +1,131 @@
|
|
|
1
|
-
import { get } from 'es-toolkit/compat';
|
|
2
1
|
import { z } from 'zod';
|
|
3
|
-
import {
|
|
2
|
+
import { definitionRefRegistry } from './definition-ref-registry.js';
|
|
4
3
|
import { createRefContextSlotMap } from './ref-context-slot.js';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
});
|
|
56
|
-
return value;
|
|
57
|
-
}
|
|
58
|
-
// Check if the id is valid
|
|
59
|
-
const idPath = entity.idPath ?? ['id'];
|
|
60
|
-
const id = get(value, idPath);
|
|
61
|
-
if (typeof id !== 'string' || !id || !entity.type.isId(id)) {
|
|
62
|
-
ctx.addIssue({
|
|
63
|
-
code: 'custom',
|
|
64
|
-
message: `Unable to find string id field '${entity.idPath?.join('.') ?? 'id'}' in entity ${entity.type.name}`,
|
|
65
|
-
input: value,
|
|
66
|
-
});
|
|
67
|
-
return value;
|
|
68
|
-
}
|
|
69
|
-
const nameResolver = (() => {
|
|
70
|
-
if (entity.getNameResolver) {
|
|
71
|
-
return entity.getNameResolver(stripRefMarkers(value));
|
|
72
|
-
}
|
|
73
|
-
if (!('name' in value) || typeof value.name !== 'string') {
|
|
74
|
-
ctx.addIssue({
|
|
75
|
-
code: 'custom',
|
|
76
|
-
message: `Unable to find string name field in entity ${entity.type.name}`,
|
|
77
|
-
input: value,
|
|
78
|
-
});
|
|
79
|
-
return 'invalid';
|
|
80
|
-
}
|
|
81
|
-
return value.name;
|
|
82
|
-
})();
|
|
83
|
-
const newEntity = {
|
|
84
|
-
id,
|
|
85
|
-
idPath,
|
|
86
|
-
path: [],
|
|
87
|
-
type: entity.type,
|
|
88
|
-
nameResolver,
|
|
89
|
-
parentSlot: entity.parentSlot,
|
|
90
|
-
provides: entity.provides,
|
|
91
|
-
};
|
|
92
|
-
return modifyAnnotations(value, ctx, (annotations) => ({
|
|
93
|
-
...annotations,
|
|
94
|
-
entities: [...annotations.entities, newEntity],
|
|
95
|
-
}));
|
|
96
|
-
}
|
|
97
|
-
return value;
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Creates ref context slots for use within a schema definition.
|
|
102
|
-
* Slots provide type-safe context for parent-child entity relationships.
|
|
103
|
-
*
|
|
104
|
-
* @example
|
|
105
|
-
* ```typescript
|
|
106
|
-
* ctx.refContext(
|
|
107
|
-
* { modelSlot: modelEntityType },
|
|
108
|
-
* ({ modelSlot }) =>
|
|
109
|
-
* ctx.withEnt(schema, {
|
|
110
|
-
* type: modelEntityType,
|
|
111
|
-
* provides: modelSlot,
|
|
112
|
-
* }),
|
|
113
|
-
* );
|
|
114
|
-
* ```
|
|
115
|
-
*/
|
|
116
|
-
function refContext(slotDefinition, schemaBuilder) {
|
|
117
|
-
const slots = createRefContextSlotMap(slotDefinition);
|
|
118
|
-
return schemaBuilder(slots).transform((value, ctx) => modifyAnnotations(value, ctx, (annotations) => ({
|
|
119
|
-
...annotations,
|
|
120
|
-
slots: [
|
|
121
|
-
...annotations.slots,
|
|
122
|
-
...Object.values(slots).map((slot) => ({
|
|
123
|
-
path: [],
|
|
124
|
-
slot,
|
|
125
|
-
})),
|
|
126
|
-
],
|
|
127
|
-
})));
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Wraps a value with a ref expression parser for deferred validation.
|
|
131
|
-
* The parser handles all parsing, validation, and rename handling.
|
|
132
|
-
*
|
|
133
|
-
* If the parser declares required slots (via TRequiredSlots), they must be
|
|
134
|
-
* provided as the second argument. TypeScript enforces this at compile time.
|
|
135
|
-
*
|
|
136
|
-
* The parser's `schema` property is used for input validation.
|
|
137
|
-
*
|
|
138
|
-
* @example
|
|
139
|
-
* ```typescript
|
|
140
|
-
* // Parser without required slots
|
|
141
|
-
* const expressionSchema = ctx.withExpression(simpleParser);
|
|
142
|
-
*
|
|
143
|
-
* // Parser with required slots (TypeScript enforces the second argument)
|
|
144
|
-
* ctx.refContext(
|
|
145
|
-
* { modelSlot: modelEntityType },
|
|
146
|
-
* ({ modelSlot }) =>
|
|
147
|
-
* z.object({
|
|
148
|
-
* condition: ctx.withExpression(authorizerParser, { model: modelSlot }),
|
|
149
|
-
* })
|
|
150
|
-
* );
|
|
151
|
-
* ```
|
|
152
|
-
*/
|
|
153
|
-
function withExpression(parser, slots) {
|
|
154
|
-
return parser.schema.transform((value) => {
|
|
155
|
-
if (transformReferences && value !== undefined) {
|
|
156
|
-
return new DefinitionExpressionMarker(value, {
|
|
157
|
-
path: [],
|
|
158
|
-
value,
|
|
159
|
-
parser,
|
|
160
|
-
slots,
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
return value;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a string schema annotated as a reference to another entity.
|
|
6
|
+
*
|
|
7
|
+
* Can be used standalone:
|
|
8
|
+
* ```typescript
|
|
9
|
+
* withRef({ type: modelEnumEntityType, onDelete: 'RESTRICT' })
|
|
10
|
+
* ```
|
|
11
|
+
*
|
|
12
|
+
* Or on the parser context:
|
|
13
|
+
* ```typescript
|
|
14
|
+
* ctx.withRef({ type: modelEnumEntityType, onDelete: 'RESTRICT' })
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export function withRef(reference) {
|
|
18
|
+
const schema = z.string().min(1);
|
|
19
|
+
definitionRefRegistry.add(schema, {
|
|
20
|
+
kind: 'reference',
|
|
21
|
+
type: reference.type,
|
|
22
|
+
onDelete: reference.onDelete,
|
|
23
|
+
parentSlot: reference.parentSlot,
|
|
24
|
+
provides: reference.provides,
|
|
25
|
+
});
|
|
26
|
+
return schema;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Creates a schema decorator that marks a schema as defining an entity.
|
|
30
|
+
*
|
|
31
|
+
* Can be used with `.apply()`:
|
|
32
|
+
* ```typescript
|
|
33
|
+
* schema.apply(withEnt({ type: modelEntityType, provides: modelSlot }))
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* Or via the parser context (2-arg legacy form):
|
|
37
|
+
* ```typescript
|
|
38
|
+
* ctx.withEnt(schema, { type: modelEntityType, provides: modelSlot })
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @param entity - The entity definition input
|
|
42
|
+
* @returns A function that decorates a schema with entity metadata
|
|
43
|
+
*/
|
|
44
|
+
export function withEnt(entity) {
|
|
45
|
+
return (schema) => {
|
|
46
|
+
const idPath = entity.idPath ?? ['id'];
|
|
47
|
+
definitionRefRegistry.add(schema, {
|
|
48
|
+
kind: 'entity',
|
|
49
|
+
type: entity.type,
|
|
50
|
+
idPath,
|
|
51
|
+
getNameResolver: entity.getNameResolver,
|
|
52
|
+
parentSlot: entity.parentSlot,
|
|
53
|
+
provides: entity.provides,
|
|
164
54
|
});
|
|
165
|
-
|
|
55
|
+
return schema;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Creates ref context slots for use within a schema definition.
|
|
60
|
+
* Slots provide type-safe context for parent-child entity relationships.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```typescript
|
|
64
|
+
* ctx.refContext(
|
|
65
|
+
* { modelSlot: modelEntityType },
|
|
66
|
+
* ({ modelSlot }) =>
|
|
67
|
+
* ctx.withEnt(schema, {
|
|
68
|
+
* type: modelEntityType,
|
|
69
|
+
* provides: modelSlot,
|
|
70
|
+
* }),
|
|
71
|
+
* );
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
function refContext(slotDefinition, schemaBuilder) {
|
|
75
|
+
const slots = createRefContextSlotMap(slotDefinition);
|
|
76
|
+
const schema = schemaBuilder(slots);
|
|
77
|
+
definitionRefRegistry.add(schema, {
|
|
78
|
+
kind: 'ref-context',
|
|
79
|
+
slots: Object.values(slots),
|
|
80
|
+
});
|
|
81
|
+
return schema;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Wraps a value with a ref expression parser for deferred validation.
|
|
85
|
+
* The parser handles all parsing, validation, and rename handling.
|
|
86
|
+
*
|
|
87
|
+
* If the parser declares required slots (via TRequiredSlots), they must be
|
|
88
|
+
* provided as the second argument. TypeScript enforces this at compile time.
|
|
89
|
+
*
|
|
90
|
+
* The parser's `createSchema()` method is called to get a fresh schema
|
|
91
|
+
* instance per call site, allowing per-call metadata to be registered
|
|
92
|
+
* independently in the Baseplate registry.
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* // Parser without required slots
|
|
97
|
+
* const expressionSchema = ctx.withExpression(simpleParser);
|
|
98
|
+
*
|
|
99
|
+
* // Parser with required slots (TypeScript enforces the second argument)
|
|
100
|
+
* ctx.refContext(
|
|
101
|
+
* { modelSlot: modelEntityType },
|
|
102
|
+
* ({ modelSlot }) =>
|
|
103
|
+
* z.object({
|
|
104
|
+
* condition: ctx.withExpression(authorizerParser, { model: modelSlot }),
|
|
105
|
+
* })
|
|
106
|
+
* );
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
function withExpression(parser, slots) {
|
|
110
|
+
// createSchema() returns a fresh instance per call, allowing per-call
|
|
111
|
+
// metadata to be registered without conflicting across call sites.
|
|
112
|
+
const schema = parser.createSchema();
|
|
113
|
+
definitionRefRegistry.add(schema, {
|
|
114
|
+
kind: 'expression',
|
|
115
|
+
parser,
|
|
116
|
+
slots,
|
|
117
|
+
});
|
|
118
|
+
return schema;
|
|
119
|
+
}
|
|
120
|
+
export function extendParserContextWithRefs() {
|
|
166
121
|
return {
|
|
167
122
|
withRef,
|
|
168
|
-
withEnt
|
|
123
|
+
// Legacy 2-arg API that delegates to the standalone withEnt decorator.
|
|
124
|
+
// Uses a cast because the standalone accepts DefinitionEntityInput<unknown, ...>
|
|
125
|
+
// while this 2-arg form infers the full z.output<TType> for type-safe idPath.
|
|
126
|
+
withEnt(schema, entity) {
|
|
127
|
+
return schema.apply(withEnt(entity));
|
|
128
|
+
},
|
|
169
129
|
refContext,
|
|
170
130
|
withExpression,
|
|
171
131
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend-parser-context-with-refs.js","sourceRoot":"","sources":["../../src/references/extend-parser-context-with-refs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"extend-parser-context-with-refs.js","sourceRoot":"","sources":["../../src/references/extend-parser-context-with-refs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AA2DhE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,OAAO,CACrB,SAAgD;IAEhD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE;QAChC,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,OAAO,CACrB,MAAmD;IAEnD,OAAO,CACL,MAAa,EACe,EAAE;QAC9B,MAAM,MAAM,GAAI,MAAM,CAAC,MAA0C,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE;YAChC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM;YACN,eAAe,EAAE,MAAM,CAAC,eAGJ;YACpB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,CAAC;QACH,OAAO,MAA+C,CAAC;IACzD,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,UAAU,CAIjB,cAAwB,EACxB,aAA8D;IAE9D,MAAM,KAAK,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE;QAChC,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAqB;KAChD,CAAC,CAAC;IACH,OAAO,MAAiD,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAS,cAAc,CAKrB,MAAiE,EACjE,KAAyC;IAEzC,sEAAsE;IACtE,mEAAmE;IACnE,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAA+B,CAAC;IAElE,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE;QAChC,IAAI,EAAE,YAAY;QAElB,MAAM;QACN,KAAK;KACN,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,2BAA2B;IAMzC,OAAO;QACL,OAAO;QACP,uEAAuE;QACvE,iFAAiF;QACjF,8EAA8E;QAC9E,OAAO,CAKL,MAAa,EACb,MAAoE;YAEpE,OAAO,MAAM,CAAC,KAAK,CACjB,OAAO,CAAC,MAAqD,CAAC,CAC/D,CAAC;QACJ,CAAC;QACD,UAAU;QACV,cAAc;KACf,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
1
2
|
import type { DefinitionEntityWithNameResolver } from './definition-ref-builder.js';
|
|
2
3
|
import type { DefinitionExpression } from './expression-types.js';
|
|
3
4
|
import type { DefinitionReference } from './types.js';
|
|
@@ -13,17 +14,17 @@ export interface ExtractDefinitionRefsPayload<TData> {
|
|
|
13
14
|
expressions: DefinitionExpression[];
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
|
-
* Extracts definition refs
|
|
17
|
+
* Extracts definition refs by walking the schema structure alongside the parsed data.
|
|
17
18
|
*
|
|
18
19
|
* Flow:
|
|
19
|
-
* 1.
|
|
20
|
+
* 1. Walk schema+data in parallel using registered collectors
|
|
20
21
|
* 2. Resolve all slot references to actual paths
|
|
21
|
-
* 3.
|
|
22
|
-
* 4.
|
|
23
|
-
* 5. Validate no duplicate IDs
|
|
22
|
+
* 3. Resolve entity, reference, and expression parent/slot paths
|
|
23
|
+
* 4. Validate no duplicate IDs
|
|
24
24
|
*
|
|
25
|
-
* @param
|
|
26
|
-
* @
|
|
25
|
+
* @param schema - The Zod schema used to validate the data
|
|
26
|
+
* @param value - The parsed value (output of schema.parse())
|
|
27
|
+
* @returns The extracted refs with the original data unchanged
|
|
27
28
|
*/
|
|
28
|
-
export declare function extractDefinitionRefs<T>(value: T): ExtractDefinitionRefsPayload<T>;
|
|
29
|
+
export declare function extractDefinitionRefs<T>(schema: z.ZodType, value: T): ExtractDefinitionRefsPayload<T>;
|
|
29
30
|
//# sourceMappingURL=extract-definition-refs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-definition-refs.d.ts","sourceRoot":"","sources":["../../src/references/extract-definition-refs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"extract-definition-refs.d.ts","sourceRoot":"","sources":["../../src/references/extract-definition-refs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAM7B,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAOpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,YAAY,CAAC;AAQrE;;;;GAIG;AACH,MAAM,WAAW,4BAA4B,CAAC,KAAK;IACjD,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,wBAAwB,EAAE,gCAAgC,EAAE,CAAC;IAC7D,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,MAAM,EAAE,CAAC,CAAC,OAAO,EACjB,KAAK,EAAE,CAAC,GACP,4BAA4B,CAAC,CAAC,CAAC,CA6LjC"}
|
|
@@ -1,35 +1,119 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { get } from 'es-toolkit/compat';
|
|
2
|
+
import { walkDataWithSchema } from '#src/parser/walk-data-with-schema.js';
|
|
3
|
+
import { createRefSchemaCollector, createRefSchemaVisitor, } from './ref-schema-visitor.js';
|
|
2
4
|
import { findNearestAncestorSlot, resolveSlots } from './resolve-slots.js';
|
|
3
|
-
import { stripRefMarkers } from './strip-ref-markers.js';
|
|
4
5
|
/**
|
|
5
|
-
* Extracts definition refs
|
|
6
|
+
* Extracts definition refs by walking the schema structure alongside the parsed data.
|
|
6
7
|
*
|
|
7
8
|
* Flow:
|
|
8
|
-
* 1.
|
|
9
|
+
* 1. Walk schema+data in parallel using registered collectors
|
|
9
10
|
* 2. Resolve all slot references to actual paths
|
|
10
|
-
* 3.
|
|
11
|
-
* 4.
|
|
12
|
-
* 5. Validate no duplicate IDs
|
|
11
|
+
* 3. Resolve entity, reference, and expression parent/slot paths
|
|
12
|
+
* 4. Validate no duplicate IDs
|
|
13
13
|
*
|
|
14
|
-
* @param
|
|
15
|
-
* @
|
|
14
|
+
* @param schema - The Zod schema used to validate the data
|
|
15
|
+
* @param value - The parsed value (output of schema.parse())
|
|
16
|
+
* @returns The extracted refs with the original data unchanged
|
|
16
17
|
*/
|
|
17
|
-
export function extractDefinitionRefs(value) {
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const
|
|
22
|
-
//
|
|
23
|
-
const
|
|
24
|
-
|
|
18
|
+
export function extractDefinitionRefs(schema, value) {
|
|
19
|
+
const entities = [];
|
|
20
|
+
const references = [];
|
|
21
|
+
const slots = [];
|
|
22
|
+
const expressionAnnotations = [];
|
|
23
|
+
// Entity collector: validates ID and captures name resolver
|
|
24
|
+
const entityCollector = createRefSchemaCollector({
|
|
25
|
+
kind: 'entity',
|
|
26
|
+
visit(meta, data, context) {
|
|
27
|
+
if (data === null || data === undefined || typeof data !== 'object')
|
|
28
|
+
return;
|
|
29
|
+
const id = get(data, meta.idPath);
|
|
30
|
+
if (typeof id !== 'string' || !id || !meta.type.isId(id)) {
|
|
31
|
+
throw new Error(`Unable to find valid id field '${meta.idPath.join('.')}' in entity ${meta.type.name} at path ${context.path.join('.')}`);
|
|
32
|
+
}
|
|
33
|
+
const nameResolver = (() => {
|
|
34
|
+
if (meta.getNameResolver) {
|
|
35
|
+
return meta.getNameResolver(data);
|
|
36
|
+
}
|
|
37
|
+
if (!('name' in data) ||
|
|
38
|
+
typeof data.name !== 'string') {
|
|
39
|
+
throw new Error(`Unable to find string name field in entity ${meta.type.name} at path ${context.path.join('.')}`);
|
|
40
|
+
}
|
|
41
|
+
return data.name;
|
|
42
|
+
})();
|
|
43
|
+
entities.push({
|
|
44
|
+
id,
|
|
45
|
+
idPath: meta.idPath,
|
|
46
|
+
path: context.path,
|
|
47
|
+
type: meta.type,
|
|
48
|
+
nameResolver,
|
|
49
|
+
parentSlot: meta.parentSlot,
|
|
50
|
+
provides: meta.provides,
|
|
51
|
+
});
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
// Reference collector: records non-empty string references
|
|
55
|
+
const referenceCollector = createRefSchemaCollector({
|
|
56
|
+
kind: 'reference',
|
|
57
|
+
visit(meta, data, context) {
|
|
58
|
+
// Skip empty/undefined references
|
|
59
|
+
if (typeof data !== 'string' || !data)
|
|
60
|
+
return;
|
|
61
|
+
references.push({
|
|
62
|
+
path: context.path,
|
|
63
|
+
type: meta.type,
|
|
64
|
+
onDelete: meta.onDelete,
|
|
65
|
+
parentSlot: meta.parentSlot,
|
|
66
|
+
provides: meta.provides,
|
|
67
|
+
});
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
// Slot collector: records which ref-context scopes exist and where
|
|
71
|
+
const slotCollector = createRefSchemaCollector({
|
|
72
|
+
kind: 'ref-context',
|
|
73
|
+
visit(meta, _data, context) {
|
|
74
|
+
for (const slot of meta.slots) {
|
|
75
|
+
slots.push({ path: context.path, slot });
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
// Expression collector: records expression annotations
|
|
80
|
+
const expressionCollector = createRefSchemaCollector({
|
|
81
|
+
kind: 'expression',
|
|
82
|
+
visit(meta, data, context) {
|
|
83
|
+
if (data === undefined || data === null)
|
|
84
|
+
return;
|
|
85
|
+
expressionAnnotations.push({
|
|
86
|
+
path: context.path,
|
|
87
|
+
value: data,
|
|
88
|
+
parser: meta.parser,
|
|
89
|
+
slots: meta.slots,
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
// Walk schema+data in parallel to collect all metadata
|
|
94
|
+
const refVisitor = createRefSchemaVisitor([
|
|
95
|
+
entityCollector,
|
|
96
|
+
referenceCollector,
|
|
97
|
+
slotCollector,
|
|
98
|
+
expressionCollector,
|
|
99
|
+
]);
|
|
100
|
+
walkDataWithSchema(schema, value, [refVisitor]);
|
|
101
|
+
// Resolve all slots to paths (reuses existing slot resolution logic)
|
|
102
|
+
const resolvedSlots = resolveSlots({
|
|
103
|
+
entities,
|
|
104
|
+
references,
|
|
105
|
+
slots,
|
|
106
|
+
expressions: expressionAnnotations,
|
|
107
|
+
});
|
|
108
|
+
// Helper to resolve a parentSlot to a path
|
|
25
109
|
function resolveParentPath(parentSlot, path) {
|
|
26
110
|
const resolvedSlot = findNearestAncestorSlot(resolvedSlots.get(parentSlot.id), path);
|
|
27
111
|
if (!resolvedSlot) {
|
|
28
|
-
throw new Error(`Could not resolve parent path from ${path.join('.')} for slot ${parentSlot.id.description}`);
|
|
112
|
+
throw new Error(`Could not resolve parent path from ${path.join('.')} for slot ${String(parentSlot.id.description)}`);
|
|
29
113
|
}
|
|
30
114
|
return resolvedSlot.resolvedPath;
|
|
31
115
|
}
|
|
32
|
-
const entitiesWithNameResolver =
|
|
116
|
+
const entitiesWithNameResolver = entities.map((entity) => ({
|
|
33
117
|
id: entity.id,
|
|
34
118
|
idPath: entity.idPath,
|
|
35
119
|
nameResolver: entity.nameResolver,
|
|
@@ -39,7 +123,7 @@ export function extractDefinitionRefs(value) {
|
|
|
39
123
|
? resolveParentPath(entity.parentSlot, entity.path)
|
|
40
124
|
: undefined,
|
|
41
125
|
}));
|
|
42
|
-
const
|
|
126
|
+
const resolvedReferences = references.map((reference) => ({
|
|
43
127
|
type: reference.type,
|
|
44
128
|
path: reference.path,
|
|
45
129
|
onDelete: reference.onDelete,
|
|
@@ -48,13 +132,13 @@ export function extractDefinitionRefs(value) {
|
|
|
48
132
|
: undefined,
|
|
49
133
|
}));
|
|
50
134
|
// Resolve expression slots
|
|
51
|
-
const expressions =
|
|
135
|
+
const expressions = expressionAnnotations.map((expression) => {
|
|
52
136
|
const resolvedSlotPaths = {};
|
|
53
137
|
if (expression.slots) {
|
|
54
138
|
for (const [key, slot] of Object.entries(expression.slots)) {
|
|
55
139
|
const resolvedSlot = findNearestAncestorSlot(resolvedSlots.get(slot.id), expression.path);
|
|
56
140
|
if (!resolvedSlot) {
|
|
57
|
-
throw new Error(`Could not resolve expression slot "${key}" at path ${expression.path.join('.')}
|
|
141
|
+
throw new Error(`Could not resolve expression slot "${key}" at path ${expression.path.join('.')}`);
|
|
58
142
|
}
|
|
59
143
|
resolvedSlotPaths[key] = resolvedSlot.resolvedPath;
|
|
60
144
|
}
|
|
@@ -66,17 +150,17 @@ export function extractDefinitionRefs(value) {
|
|
|
66
150
|
resolvedSlots: resolvedSlotPaths,
|
|
67
151
|
};
|
|
68
152
|
});
|
|
69
|
-
//
|
|
153
|
+
// Validate no duplicate entity IDs
|
|
70
154
|
const idSet = new Set();
|
|
71
|
-
for (const entity of
|
|
155
|
+
for (const entity of entities) {
|
|
72
156
|
if (idSet.has(entity.id)) {
|
|
73
157
|
throw new Error(`Duplicate ID found: ${entity.id}`);
|
|
74
158
|
}
|
|
75
159
|
idSet.add(entity.id);
|
|
76
160
|
}
|
|
77
161
|
return {
|
|
78
|
-
data:
|
|
79
|
-
references,
|
|
162
|
+
data: value,
|
|
163
|
+
references: resolvedReferences,
|
|
80
164
|
entitiesWithNameResolver,
|
|
81
165
|
expressions,
|
|
82
166
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract-definition-refs.js","sourceRoot":"","sources":["../../src/references/extract-definition-refs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extract-definition-refs.js","sourceRoot":"","sources":["../../src/references/extract-definition-refs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { z } from 'zod';
|
|
2
2
|
import type { DefinitionReference, ResolvedZodRefPayload } from './types.js';
|
|
3
|
-
interface FixRefDeletionSuccessResult<T
|
|
3
|
+
interface FixRefDeletionSuccessResult<T> {
|
|
4
4
|
type: 'success';
|
|
5
|
-
value:
|
|
6
|
-
refPayload: ResolvedZodRefPayload<
|
|
5
|
+
value: T;
|
|
6
|
+
refPayload: ResolvedZodRefPayload<T>;
|
|
7
7
|
}
|
|
8
8
|
export interface FixRefDeletionError {
|
|
9
9
|
ref: DefinitionReference;
|
|
@@ -13,10 +13,10 @@ interface FixRefDeletionFailureResult {
|
|
|
13
13
|
type: 'failure';
|
|
14
14
|
issues: FixRefDeletionError[];
|
|
15
15
|
}
|
|
16
|
-
export type FixRefDeletionResult<T
|
|
16
|
+
export type FixRefDeletionResult<T> = FixRefDeletionSuccessResult<T> | FixRefDeletionFailureResult;
|
|
17
17
|
/**
|
|
18
18
|
* Fixes any reference deletions by performing the appropriate action for the reference
|
|
19
19
|
*/
|
|
20
|
-
export declare function fixRefDeletions<T extends
|
|
20
|
+
export declare function fixRefDeletions<T extends z.ZodType>(schema: T, value: unknown): FixRefDeletionResult<z.output<T>>;
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=fix-ref-deletions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix-ref-deletions.d.ts","sourceRoot":"","sources":["../../src/references/fix-ref-deletions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fix-ref-deletions.d.ts","sourceRoot":"","sources":["../../src/references/fix-ref-deletions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAK7B,OAAO,KAAK,EACV,mBAAmB,EAEnB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAIpB,UAAU,2BAA2B,CAAC,CAAC;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,CAAC,CAAC;IACT,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,mBAAmB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,2BAA2B;IACnC,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,mBAAmB,EAAE,CAAC;CAC/B;AAED,MAAM,MAAM,oBAAoB,CAAC,CAAC,IAC9B,2BAA2B,CAAC,CAAC,CAAC,GAC9B,2BAA2B,CAAC;AAKhC;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EACjD,MAAM,EAAE,CAAC,EACT,KAAK,EAAE,OAAO,GACb,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAqHnC"}
|
|
@@ -6,13 +6,13 @@ const DELETED_SENTINEL_ID = 'deleted-sentinel-id';
|
|
|
6
6
|
/**
|
|
7
7
|
* Fixes any reference deletions by performing the appropriate action for the reference
|
|
8
8
|
*/
|
|
9
|
-
export function fixRefDeletions(
|
|
9
|
+
export function fixRefDeletions(schema, value) {
|
|
10
10
|
const issues = [];
|
|
11
11
|
// find all references that do not have a corresponding entity
|
|
12
12
|
let iterations;
|
|
13
13
|
let valueToEdit = value;
|
|
14
14
|
for (iterations = 0; iterations < 100; iterations++) {
|
|
15
|
-
const parseResult = parseSchemaWithTransformedReferences(
|
|
15
|
+
const parseResult = parseSchemaWithTransformedReferences(schema, valueToEdit, {
|
|
16
16
|
allowInvalidReferences: true,
|
|
17
17
|
});
|
|
18
18
|
const { references, entities } = parseResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix-ref-deletions.js","sourceRoot":"","sources":["../../src/references/fix-ref-deletions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fix-ref-deletions.js","sourceRoot":"","sources":["../../src/references/fix-ref-deletions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAQtD,OAAO,EAAE,oCAAoC,EAAE,MAAM,mCAAmC,CAAC;AAsBzF,qEAAqE;AACrE,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAElD;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAS,EACT,KAAc;IAEd,MAAM,MAAM,GAA0B,EAAE,CAAC;IAEzC,8DAA8D;IAC9D,IAAI,UAAU,CAAC;IACf,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,KAAK,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,GAAG,EAAE,UAAU,EAAE,EAAE,CAAC;QACpD,MAAM,WAAW,GAAG,oCAAoC,CACtD,MAAM,EACN,WAAW,EACX;YACE,sBAAsB,EAAE,IAAI;SAC7B,CACF,CAAC;QACF,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;QAC7C,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,uBAAuB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACtD,MAAM,EAAE,GAAG,GAAG,CAAC,WAAqB,EAAE,CAAC,CAAC,IAAI,CAAW,CAAC;YACxD,OAAO,EAAE,KAAK,mBAAmB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QACH,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,MAAM;iBACP,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,WAA0B;gBACjC,UAAU,EAAE,WAAW;aACxB,CAAC;QACJ,CAAC;QAED,MAAM,sBAAsB,GAGtB,EAAE,CAAC;QAET,SAAS,eAAe,CAAC,IAAmB;YAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,GAAG,CAAC,WAAqB,EAAE,UAAU,CAAY,CAAC;YACjE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,sBAAsB,CAAC,IAAI,CAAC;gBAC1B,IAAI,EAAE,UAAU;gBAChB,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAW;aAC3B,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2BAA2B;QAC3B,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,GAAG,CAAC,WAAqB,EAAE,GAAG,CAAC,IAAI,CAAW,CAAC;YAE1D,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACrB,KAAK,eAAe,CAAC,CAAC,CAAC;oBACrB,wCAAwC;oBACxC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBACzC,MAAM,MAAM,GAAG,GAAG,CAAC,WAAqB,EAAE,UAAU,CAAY,CAAC;wBACjE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;4BAC1B,MAAM,IAAI,SAAS,CACjB,qEAAqE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,mDAAmD,CAC3I,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,GAAG,CAAC,WAAqB,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;oBAChD,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;oBACnC,GAAG,CAAC,WAAqB,EAAE,GAAG,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;oBAC1D,MAAM;gBACR,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC/B,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;oBAC7D,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,KAAK,eAAe,CAAC,CAAC,CAAC;oBACrB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5C,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;oBAC7D,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACR,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,CAAC,QAAkB,EAAE,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC,EAAE,EAAE,CAClE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CACjB,CAAC;QAEF,0DAA0D;QAC1D,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAChE,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACvD,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,GAAG,CAAC,WAAqB,EAAE,CAAC,CAAC,IAAI,CAAY,CAAC;gBAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3B,MAAM,IAAI,SAAS,CACjB,0CAA0C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC7D,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC9D,CAAC"}
|