@astrale-os/kernel-dsl 0.2.0-beta.2 → 0.2.0-beta.21
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 +247 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/upgrade/contract.d.ts +0 -1
- package/dist/upgrade/contract.js +0 -1
- package/dist/upgrade/index.d.ts +0 -1
- package/dist/upgrade/index.js +0 -1
- package/dist/v1/addressing/class-key.d.ts +12 -0
- package/dist/v1/addressing/class-key.js +39 -0
- package/dist/v1/addressing/definition-ref.d.ts +28 -0
- package/dist/v1/addressing/definition-ref.js +63 -0
- package/dist/v1/addressing/domain-dependency.d.ts +18 -0
- package/dist/v1/addressing/domain-dependency.js +6 -0
- package/dist/v1/addressing/index.d.ts +10 -4
- package/dist/v1/addressing/index.js +5 -3
- package/dist/v1/addressing/key.d.ts +14 -16
- package/dist/v1/addressing/key.js +24 -34
- package/dist/v1/addressing/method-address.d.ts +9 -0
- package/dist/v1/addressing/method-address.js +1 -0
- package/dist/v1/addressing/method-key.d.ts +15 -0
- package/dist/v1/addressing/method-key.js +60 -0
- package/dist/v1/addressing/ordering.d.ts +6 -0
- package/dist/v1/addressing/ordering.js +20 -0
- package/dist/v1/addressing/patterns.d.ts +12 -3
- package/dist/v1/addressing/patterns.js +11 -2
- package/dist/v1/addressing/property-key.d.ts +10 -15
- package/dist/v1/addressing/property-key.js +24 -15
- package/dist/v1/addressing/revision.d.ts +8 -0
- package/dist/v1/addressing/revision.js +8 -0
- package/dist/v1/builder/callable/authoring.d.ts +117 -0
- package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -7
- package/dist/v1/builder/class/authoring.d.ts +378 -0
- package/dist/v1/builder/class/authoring.js +134 -0
- package/dist/v1/builder/class/property.d.ts +58 -0
- package/dist/v1/builder/class/property.js +57 -0
- package/dist/v1/builder/core/authoring.d.ts +42 -0
- package/dist/v1/builder/core/authoring.js +39 -0
- package/dist/v1/builder/index.d.ts +26 -22
- package/dist/v1/builder/index.js +11 -11
- package/dist/v1/builder/lowering/callable.d.ts +24 -0
- package/dist/v1/builder/{compiler → lowering}/callable.js +11 -14
- package/dist/v1/builder/lowering/class.d.ts +22 -0
- package/dist/v1/builder/lowering/class.js +134 -0
- package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
- package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
- package/dist/v1/builder/lowering/core.d.ts +22 -0
- package/dist/v1/builder/{compiler → lowering}/core.js +17 -11
- package/dist/v1/builder/lowering/policy.d.ts +16 -0
- package/dist/v1/builder/{compiler → lowering}/policy.js +19 -14
- package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
- package/dist/v1/builder/lowering/schema/capture.js +70 -0
- package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
- package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +34 -44
- package/dist/v1/builder/lowering/schema/context.d.ts +44 -0
- package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +66 -74
- package/dist/v1/builder/{compiler/schema.ownership.d.ts → lowering/schema/ownership.d.ts} +1 -2
- package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +1 -2
- package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
- package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +44 -61
- package/dist/v1/builder/lowering/value/path.d.ts +3 -0
- package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
- package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +8 -9
- package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +10 -11
- package/dist/v1/builder/lowering/view.d.ts +11 -0
- package/dist/v1/builder/{compiler → lowering}/view.js +7 -7
- package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +19 -17
- package/dist/v1/builder/{policy.js → policy/authoring.js} +23 -12
- package/dist/v1/builder/schema/define.d.ts +11 -0
- package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
- package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
- package/dist/v1/builder/schema/diagnostic.js +31 -0
- package/dist/v1/builder/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
- package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
- package/dist/v1/builder/schema/input.d.ts +15 -0
- package/dist/v1/builder/schema/input.js +1 -0
- package/dist/v1/builder/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
- package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
- package/dist/v1/builder/schema/projection.d.ts +370 -0
- package/dist/v1/builder/schema/projection.js +1 -0
- package/dist/v1/builder/value/full-match.d.ts +4 -0
- package/dist/v1/builder/value/full-match.js +11 -0
- package/dist/v1/builder/value/path-metadata.d.ts +4 -0
- package/dist/v1/builder/{internal/path.metadata.js → value/path-metadata.js} +0 -1
- package/dist/v1/builder/value/path.d.ts +8 -0
- package/dist/v1/builder/{path.js → value/path.js} +4 -5
- package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
- package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
- package/dist/v1/builder/view/authoring.d.ts +17 -0
- package/dist/v1/builder/view/authoring.js +16 -0
- package/dist/v1/bundle/codec.d.ts +0 -1
- package/dist/v1/bundle/codec.js +36 -19
- package/dist/v1/bundle/create.d.ts +3 -0
- package/dist/v1/bundle/create.js +5 -0
- package/dist/v1/bundle/diagnostic.d.ts +10 -0
- package/dist/v1/bundle/diagnostic.js +17 -0
- package/dist/v1/bundle/index.d.ts +3 -2
- package/dist/v1/bundle/index.js +2 -2
- package/dist/v1/bundle/model.d.ts +1 -4
- package/dist/v1/bundle/model.js +0 -6
- package/dist/v1/bundle/structure.d.ts +1 -2
- package/dist/v1/bundle/structure.js +6 -6
- package/dist/v1/bundle/transport.d.ts +8 -0
- package/dist/v1/bundle/transport.js +7 -0
- package/dist/v1/compiled/admission/accept.d.ts +3 -0
- package/dist/v1/compiled/admission/accept.js +910 -0
- package/dist/v1/compiled/admission/revision.d.ts +4 -0
- package/dist/v1/compiled/admission/revision.js +73 -0
- package/dist/v1/compiled/admission/semantics.d.ts +7 -0
- package/dist/v1/compiled/admission/semantics.js +1114 -0
- package/dist/v1/compiled/codec/json.d.ts +3 -0
- package/dist/v1/compiled/codec/json.js +9 -0
- package/dist/v1/compiled/compiler/compile.d.ts +4 -0
- package/dist/v1/compiled/compiler/compile.js +113 -0
- package/dist/v1/compiled/diagnostic.d.ts +11 -0
- package/dist/v1/compiled/diagnostic.js +13 -0
- package/dist/v1/compiled/generated.d.ts +10 -0
- package/dist/v1/compiled/generated.js +15 -0
- package/dist/v1/compiled/index.d.ts +7 -0
- package/dist/v1/compiled/index.js +5 -0
- package/dist/v1/compiled/loader/index.d.ts +1 -0
- package/dist/v1/compiled/loader/index.js +1 -0
- package/dist/v1/compiled/loader/load.d.ts +9 -0
- package/dist/v1/compiled/loader/load.js +147 -0
- package/dist/v1/compiled/model/schema.d.ts +73 -0
- package/dist/v1/compiled/model/schema.js +1 -0
- package/dist/v1/domain/create.d.ts +8 -0
- package/dist/v1/domain/create.js +264 -0
- package/dist/v1/domain/index.d.ts +2 -0
- package/dist/v1/domain/index.js +1 -0
- package/dist/v1/domain/model/domain.d.ts +59 -0
- package/dist/v1/domain/model/domain.js +1 -0
- package/dist/v1/domain/model/input.d.ts +31 -0
- package/dist/v1/domain/model/input.js +1 -0
- package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
- package/dist/v1/domain/namespace/member-collection.js +81 -0
- package/dist/v1/domain/projection/classes.d.ts +4 -0
- package/dist/v1/domain/projection/classes.js +198 -0
- package/dist/v1/domain/validation/create.d.ts +18 -0
- package/dist/v1/domain/validation/create.js +75 -0
- package/dist/v1/index.d.ts +14 -5
- package/dist/v1/index.js +6 -3
- package/dist/v1/language/callable/index.d.ts +2 -0
- package/dist/v1/language/callable/index.js +1 -0
- package/dist/v1/language/callable/model/callable.d.ts +33 -0
- package/dist/v1/language/callable/model/callable.js +1 -0
- package/dist/v1/language/callable/resolved.d.ts +68 -0
- package/dist/v1/language/callable/resolved.js +1 -0
- package/dist/v1/language/class/facets.d.ts +58 -0
- package/dist/v1/language/class/facets.js +1 -0
- package/dist/v1/language/class/index.d.ts +8 -0
- package/dist/v1/language/class/index.js +1 -0
- package/dist/v1/language/class/model/class.d.ts +37 -0
- package/dist/v1/language/class/model/class.js +1 -0
- package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
- package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
- package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
- package/dist/v1/language/class/model/edge.js +1 -0
- package/dist/v1/language/class/model/property.d.ts +17 -0
- package/dist/v1/language/class/model/property.js +1 -0
- package/dist/v1/language/class/property-values.d.ts +15 -0
- package/dist/v1/language/class/property-values.js +30 -0
- package/dist/v1/language/class/resolved.d.ts +126 -0
- package/dist/v1/language/class/resolved.js +1 -0
- package/dist/v1/language/core/index.d.ts +2 -0
- package/dist/v1/language/core/index.js +1 -0
- package/dist/v1/language/core/model/core.d.ts +20 -0
- package/dist/v1/language/core/model/core.js +1 -0
- package/dist/v1/language/core/resolved.d.ts +21 -0
- package/dist/v1/language/core/resolved.js +1 -0
- package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
- package/dist/v1/{schema → language/definition}/metadata.js +0 -1
- package/dist/v1/language/definition.d.ts +7 -0
- package/dist/v1/language/definition.js +1 -0
- package/dist/v1/language/index.d.ts +25 -0
- package/dist/v1/language/index.js +2 -0
- package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +2 -4
- package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +14 -30
- package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
- package/dist/v1/language/policy/analysis/budgets.js +25 -0
- package/dist/v1/language/policy/index.d.ts +3 -0
- package/dist/v1/language/policy/index.js +1 -0
- package/dist/v1/{schema/policy/ast.d.ts → language/policy/model/policy.d.ts} +7 -7
- package/dist/v1/language/policy/model/policy.js +1 -0
- package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
- package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +12 -16
- package/dist/v1/language/policy/resolved.d.ts +9 -0
- package/dist/v1/language/policy/resolved.js +1 -0
- package/dist/v1/language/resolved.d.ts +10 -0
- package/dist/v1/language/resolved.js +1 -0
- package/dist/v1/language/state/index.d.ts +3 -0
- package/dist/v1/language/state/index.js +1 -0
- package/dist/v1/language/state/machine.d.ts +28 -0
- package/dist/v1/language/state/machine.js +40 -0
- package/dist/v1/language/state/topology.d.ts +14 -0
- package/dist/v1/language/state/topology.js +69 -0
- package/dist/v1/language/validation/diagnostic.d.ts +8 -0
- package/dist/v1/language/validation/diagnostic.js +3 -0
- package/dist/v1/language/value/compile/fields.d.ts +3 -0
- package/dist/v1/language/value/compile/fields.js +60 -0
- package/dist/v1/language/value/compile/load.d.ts +4 -0
- package/dist/v1/language/value/compile/load.js +41 -0
- package/dist/v1/language/value/compile/model.d.ts +27 -0
- package/dist/v1/language/value/compile/model.js +1 -0
- package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
- package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
- package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
- package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +6 -18
- package/dist/v1/{schema/value/instance/compiler.d.ts → language/value/evaluate/preparation.d.ts} +4 -4
- package/dist/v1/language/value/evaluate/preparation.js +135 -0
- package/dist/v1/language/value/evaluate/program.d.ts +3 -0
- package/dist/v1/language/value/evaluate/program.js +16 -0
- package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +8 -5
- package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
- package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
- package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +5 -6
- package/dist/v1/language/value/index.d.ts +11 -0
- package/dist/v1/language/value/index.js +8 -0
- package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
- package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
- package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
- package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
- package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
- package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
- package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
- package/dist/v1/{schema → language}/value/ordering.js +16 -14
- package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
- package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
- package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
- package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
- package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
- package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +1 -2
- package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
- package/dist/v1/{schema/value/profile/meta-schema.validate.js → language/value/profile/meta-schema.js} +2 -2
- package/dist/v1/language/value/profile/rules.d.ts +3 -0
- package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
- package/dist/v1/language/value/profile/validate.d.ts +4 -0
- package/dist/v1/{schema → language}/value/profile/validate.js +14 -22
- package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
- package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
- package/dist/v1/language/value/reference/closure.d.ts +11 -0
- package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
- package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
- package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
- package/dist/v1/language/value/reference/references.d.ts +17 -0
- package/dist/v1/language/value/reference/references.js +45 -0
- package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
- package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
- package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
- package/dist/v1/language/value/reference/registry.js +1 -0
- package/dist/v1/language/value/regexp/ast.d.ts +21 -0
- package/dist/v1/language/value/regexp/ast.js +326 -0
- package/dist/v1/language/value/regexp/compile.d.ts +3 -0
- package/dist/v1/language/value/regexp/compile.js +96 -0
- package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
- package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
- package/dist/v1/language/value/regexp/matcher.d.ts +7 -0
- package/dist/v1/language/value/regexp/matcher.js +50 -0
- package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
- package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
- package/dist/v1/language/value/regexp/syntax.d.ts +2 -0
- package/dist/v1/language/value/regexp/syntax.js +5 -0
- package/dist/v1/language/value/syntax/full-match.d.ts +6 -0
- package/dist/v1/language/value/syntax/full-match.js +20 -0
- package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
- package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
- package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
- package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
- package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
- package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +16 -18
- package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
- package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
- package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
- package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
- package/dist/v1/language/view/index.d.ts +2 -0
- package/dist/v1/language/view/index.js +1 -0
- package/dist/v1/language/view/model/view.d.ts +11 -0
- package/dist/v1/language/view/model/view.js +1 -0
- package/dist/v1/language/view/resolved.d.ts +9 -0
- package/dist/v1/language/view/resolved.js +1 -0
- package/dist/v1/schema/admission/accept.d.ts +3 -0
- package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
- package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +17 -18
- package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
- package/dist/v1/schema/canonical/domain.d.ts +2 -2
- package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
- package/dist/v1/schema/canonical/domain.digest.js +2 -6
- package/dist/v1/schema/canonical/domain.js +3 -224
- package/dist/v1/schema/canonical/freeze.d.ts +0 -1
- package/dist/v1/schema/canonical/freeze.js +0 -1
- package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
- package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +3 -4
- package/dist/v1/schema/codec/header.d.ts +17 -0
- package/dist/v1/schema/codec/header.js +26 -0
- package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
- package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
- package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
- package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +121 -124
- package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
- package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
- package/dist/v1/schema/diagnostic.d.ts +7 -7
- package/dist/v1/schema/diagnostic.js +9 -9
- package/dist/v1/schema/index.d.ts +24 -34
- package/dist/v1/schema/index.js +11 -14
- package/dist/v1/schema/model/format.d.ts +2 -0
- package/dist/v1/schema/model/format.js +2 -0
- package/dist/v1/schema/model/schema.d.ts +30 -0
- package/dist/v1/schema/model/schema.js +4 -0
- package/dist/v1/schema/normalization/domain.d.ts +2 -0
- package/dist/v1/schema/normalization/domain.js +210 -0
- package/dist/v1/schema/resolution/closure.d.ts +3 -4
- package/dist/v1/schema/resolution/closure.js +6 -7
- package/dist/v1/schema/resolution/context.d.ts +11 -12
- package/dist/v1/schema/resolution/context.js +82 -50
- package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
- package/dist/v1/schema/resolution/definition.index.js +8 -18
- package/dist/v1/schema/resolution/domain.d.ts +4 -0
- package/dist/v1/schema/resolution/domain.js +112 -0
- package/dist/v1/schema/resolution/origins.d.ts +11 -14
- package/dist/v1/schema/resolution/origins.js +31 -44
- package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
- package/dist/v1/schema/resolution/value.registry.js +7 -14
- package/dist/v1/schema/revision.d.ts +1 -0
- package/dist/v1/schema/revision.js +1 -0
- package/dist/v1/schema/validation/class.d.ts +5 -0
- package/dist/v1/schema/validation/class.js +257 -0
- package/dist/v1/schema/validation/core.d.ts +5 -0
- package/dist/v1/schema/{core/validate.js → validation/core.js} +39 -30
- package/dist/v1/schema/validation/domain.d.ts +11 -0
- package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
- package/dist/v1/schema/validation/domain.route.d.ts +1 -2
- package/dist/v1/schema/validation/domain.route.js +3 -4
- package/dist/v1/schema/validation/domain.structure.d.ts +3 -4
- package/dist/v1/schema/validation/domain.structure.js +203 -207
- package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
- package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +2 -32
- package/dist/v1/schema/validation/policy/context.d.ts +28 -0
- package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
- package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
- package/dist/v1/schema/{policy/validation → validation/policy}/references.js +18 -11
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +25 -67
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +27 -63
- package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
- package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
- package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
- package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
- package/dist/v1/schema/validation/value.d.ts +4 -5
- package/dist/v1/schema/validation/value.js +4 -9
- package/dist/v1/schema/validation/view.d.ts +3 -0
- package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
- package/dist/v1/value/full-match.d.ts +2 -0
- package/dist/v1/value/full-match.js +2 -0
- package/dist/v1.d.ts +1 -2
- package/dist/v1.js +1 -2
- package/dist/value/accept.d.ts +0 -1
- package/dist/value/accept.js +0 -1
- package/dist/value/canonical.d.ts +0 -1
- package/dist/value/canonical.js +0 -1
- package/dist/value/decode.d.ts +0 -1
- package/dist/value/decode.js +0 -1
- package/dist/value/equal.d.ts +0 -1
- package/dist/value/equal.js +0 -1
- package/dist/value/error.d.ts +0 -1
- package/dist/value/error.js +0 -1
- package/dist/value/index.d.ts +0 -1
- package/dist/value/index.js +0 -1
- package/dist/value/json.d.ts +0 -1
- package/dist/value/json.js +0 -1
- package/dist/value/limits.d.ts +0 -1
- package/dist/value/limits.js +0 -1
- package/dist/value/types.d.ts +0 -1
- package/dist/value/types.js +0 -1
- package/dist/value/unicode.d.ts +0 -1
- package/dist/value/unicode.js +0 -1
- package/dist/version/dispatch.d.ts +0 -1
- package/dist/version/dispatch.js +0 -1
- package/dist/version/index.d.ts +0 -1
- package/dist/version/index.js +0 -1
- package/package.json +69 -13
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/upgrade/contract.d.ts.map +0 -1
- package/dist/upgrade/contract.js.map +0 -1
- package/dist/upgrade/index.d.ts.map +0 -1
- package/dist/upgrade/index.js.map +0 -1
- package/dist/v1/addressing/index.d.ts.map +0 -1
- package/dist/v1/addressing/index.js.map +0 -1
- package/dist/v1/addressing/key.d.ts.map +0 -1
- package/dist/v1/addressing/key.js.map +0 -1
- package/dist/v1/addressing/patterns.d.ts.map +0 -1
- package/dist/v1/addressing/patterns.js.map +0 -1
- package/dist/v1/addressing/property-key.d.ts.map +0 -1
- package/dist/v1/addressing/property-key.js.map +0 -1
- package/dist/v1/addressing/ref.d.ts +0 -35
- package/dist/v1/addressing/ref.d.ts.map +0 -1
- package/dist/v1/addressing/ref.js +0 -94
- package/dist/v1/addressing/ref.js.map +0 -1
- package/dist/v1/addressing/schema-ref.d.ts +0 -8
- package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
- package/dist/v1/addressing/schema-ref.js +0 -2
- package/dist/v1/addressing/schema-ref.js.map +0 -1
- package/dist/v1/builder/callable.d.ts +0 -92
- package/dist/v1/builder/callable.d.ts.map +0 -1
- package/dist/v1/builder/callable.js.map +0 -1
- package/dist/v1/builder/compiler/callable.d.ts +0 -20
- package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
- package/dist/v1/builder/compiler/callable.js.map +0 -1
- package/dist/v1/builder/compiler/core.d.ts +0 -6
- package/dist/v1/builder/compiler/core.d.ts.map +0 -1
- package/dist/v1/builder/compiler/core.js.map +0 -1
- package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
- package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
- package/dist/v1/builder/compiler/core.properties.js.map +0 -1
- package/dist/v1/builder/compiler/definition.d.ts +0 -32
- package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
- package/dist/v1/builder/compiler/definition.js +0 -197
- package/dist/v1/builder/compiler/definition.js.map +0 -1
- package/dist/v1/builder/compiler/policy.d.ts +0 -17
- package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
- package/dist/v1/builder/compiler/policy.js.map +0 -1
- package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
- package/dist/v1/builder/compiler/schema.capture.js +0 -85
- package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
- package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
- package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
- package/dist/v1/builder/compiler/schema.context.js.map +0 -1
- package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
- package/dist/v1/builder/compiler/schema.js.map +0 -1
- package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
- package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
- package/dist/v1/builder/compiler/value.d.ts +0 -26
- package/dist/v1/builder/compiler/value.d.ts.map +0 -1
- package/dist/v1/builder/compiler/value.js.map +0 -1
- package/dist/v1/builder/compiler/value.path.d.ts +0 -4
- package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
- package/dist/v1/builder/compiler/value.path.js.map +0 -1
- package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
- package/dist/v1/builder/compiler/value.zod.js.map +0 -1
- package/dist/v1/builder/compiler/view.d.ts +0 -12
- package/dist/v1/builder/compiler/view.d.ts.map +0 -1
- package/dist/v1/builder/compiler/view.js.map +0 -1
- package/dist/v1/builder/core.d.ts +0 -27
- package/dist/v1/builder/core.d.ts.map +0 -1
- package/dist/v1/builder/core.js +0 -21
- package/dist/v1/builder/core.js.map +0 -1
- package/dist/v1/builder/definition.d.ts +0 -155
- package/dist/v1/builder/definition.d.ts.map +0 -1
- package/dist/v1/builder/definition.js +0 -141
- package/dist/v1/builder/definition.js.map +0 -1
- package/dist/v1/builder/full-match.d.ts +0 -12
- package/dist/v1/builder/full-match.d.ts.map +0 -1
- package/dist/v1/builder/full-match.js +0 -21
- package/dist/v1/builder/full-match.js.map +0 -1
- package/dist/v1/builder/index.d.ts.map +0 -1
- package/dist/v1/builder/index.js.map +0 -1
- package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
- package/dist/v1/builder/internal/authoring.js.map +0 -1
- package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
- package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
- package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
- package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
- package/dist/v1/builder/internal/diagnostic.js +0 -16
- package/dist/v1/builder/internal/diagnostic.js.map +0 -1
- package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
- package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
- package/dist/v1/builder/internal/path.metadata.js.map +0 -1
- package/dist/v1/builder/path.d.ts +0 -9
- package/dist/v1/builder/path.d.ts.map +0 -1
- package/dist/v1/builder/path.js.map +0 -1
- package/dist/v1/builder/policy.d.ts.map +0 -1
- package/dist/v1/builder/policy.js.map +0 -1
- package/dist/v1/builder/property.d.ts +0 -37
- package/dist/v1/builder/property.d.ts.map +0 -1
- package/dist/v1/builder/property.js +0 -36
- package/dist/v1/builder/property.js.map +0 -1
- package/dist/v1/builder/schema.d.ts +0 -6
- package/dist/v1/builder/schema.d.ts.map +0 -1
- package/dist/v1/builder/schema.input.d.ts +0 -19
- package/dist/v1/builder/schema.input.d.ts.map +0 -1
- package/dist/v1/builder/schema.input.js +0 -2
- package/dist/v1/builder/schema.input.js.map +0 -1
- package/dist/v1/builder/schema.js.map +0 -1
- package/dist/v1/builder/value-schema.d.ts.map +0 -1
- package/dist/v1/builder/value-schema.js.map +0 -1
- package/dist/v1/builder/view.d.ts +0 -19
- package/dist/v1/builder/view.d.ts.map +0 -1
- package/dist/v1/builder/view.js +0 -7
- package/dist/v1/builder/view.js.map +0 -1
- package/dist/v1/builder.d.ts +0 -3
- package/dist/v1/builder.d.ts.map +0 -1
- package/dist/v1/builder.js +0 -2
- package/dist/v1/builder.js.map +0 -1
- package/dist/v1/bundle/codec.d.ts.map +0 -1
- package/dist/v1/bundle/codec.js.map +0 -1
- package/dist/v1/bundle/index.d.ts.map +0 -1
- package/dist/v1/bundle/index.js.map +0 -1
- package/dist/v1/bundle/model.d.ts.map +0 -1
- package/dist/v1/bundle/model.js.map +0 -1
- package/dist/v1/bundle/structure.d.ts.map +0 -1
- package/dist/v1/bundle/structure.js.map +0 -1
- package/dist/v1/bundle.d.ts +0 -3
- package/dist/v1/bundle.d.ts.map +0 -1
- package/dist/v1/bundle.js +0 -3
- package/dist/v1/bundle.js.map +0 -1
- package/dist/v1/index.d.ts.map +0 -1
- package/dist/v1/index.js.map +0 -1
- package/dist/v1/schema/callable.d.ts +0 -29
- package/dist/v1/schema/callable.d.ts.map +0 -1
- package/dist/v1/schema/callable.js +0 -2
- package/dist/v1/schema/callable.js.map +0 -1
- package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
- package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
- package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
- package/dist/v1/schema/canonical/domain.js.map +0 -1
- package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
- package/dist/v1/schema/canonical/freeze.js.map +0 -1
- package/dist/v1/schema/core/declaration.d.ts +0 -17
- package/dist/v1/schema/core/declaration.d.ts.map +0 -1
- package/dist/v1/schema/core/declaration.js +0 -2
- package/dist/v1/schema/core/declaration.js.map +0 -1
- package/dist/v1/schema/core/validate.d.ts +0 -6
- package/dist/v1/schema/core/validate.d.ts.map +0 -1
- package/dist/v1/schema/core/validate.js.map +0 -1
- package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
- package/dist/v1/schema/definition/analysis.js.map +0 -1
- package/dist/v1/schema/definition/class.d.ts +0 -28
- package/dist/v1/schema/definition/class.d.ts.map +0 -1
- package/dist/v1/schema/definition/class.js +0 -2
- package/dist/v1/schema/definition/class.js.map +0 -1
- package/dist/v1/schema/definition/data.d.ts.map +0 -1
- package/dist/v1/schema/definition/data.js.map +0 -1
- package/dist/v1/schema/definition/edge.d.ts.map +0 -1
- package/dist/v1/schema/definition/edge.js +0 -2
- package/dist/v1/schema/definition/edge.js.map +0 -1
- package/dist/v1/schema/definition/interface.d.ts +0 -22
- package/dist/v1/schema/definition/interface.d.ts.map +0 -1
- package/dist/v1/schema/definition/interface.js +0 -2
- package/dist/v1/schema/definition/interface.js.map +0 -1
- package/dist/v1/schema/definition/property.d.ts +0 -18
- package/dist/v1/schema/definition/property.d.ts.map +0 -1
- package/dist/v1/schema/definition/property.js +0 -2
- package/dist/v1/schema/definition/property.js.map +0 -1
- package/dist/v1/schema/definition/validate.d.ts +0 -5
- package/dist/v1/schema/definition/validate.d.ts.map +0 -1
- package/dist/v1/schema/definition/validate.js +0 -221
- package/dist/v1/schema/definition/validate.js.map +0 -1
- package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
- package/dist/v1/schema/dependency.meaning.js.map +0 -1
- package/dist/v1/schema/diagnostic.d.ts.map +0 -1
- package/dist/v1/schema/diagnostic.js.map +0 -1
- package/dist/v1/schema/domain.accept.d.ts +0 -4
- package/dist/v1/schema/domain.accept.d.ts.map +0 -1
- package/dist/v1/schema/domain.accept.js.map +0 -1
- package/dist/v1/schema/domain.codec.d.ts.map +0 -1
- package/dist/v1/schema/domain.codec.js.map +0 -1
- package/dist/v1/schema/domain.header.d.ts +0 -15
- package/dist/v1/schema/domain.header.d.ts.map +0 -1
- package/dist/v1/schema/domain.header.js +0 -21
- package/dist/v1/schema/domain.header.js.map +0 -1
- package/dist/v1/schema/domain.ir.d.ts +0 -40
- package/dist/v1/schema/domain.ir.d.ts.map +0 -1
- package/dist/v1/schema/domain.ir.js +0 -5
- package/dist/v1/schema/domain.ir.js.map +0 -1
- package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
- package/dist/v1/schema/domain.lookup.js.map +0 -1
- package/dist/v1/schema/domain.resolve.d.ts +0 -26
- package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
- package/dist/v1/schema/domain.resolve.js +0 -43
- package/dist/v1/schema/domain.resolve.js.map +0 -1
- package/dist/v1/schema/domain.revision.d.ts.map +0 -1
- package/dist/v1/schema/domain.revision.js.map +0 -1
- package/dist/v1/schema/domain.validate.d.ts +0 -12
- package/dist/v1/schema/domain.validate.d.ts.map +0 -1
- package/dist/v1/schema/domain.validate.js.map +0 -1
- package/dist/v1/schema/index.d.ts.map +0 -1
- package/dist/v1/schema/index.js.map +0 -1
- package/dist/v1/schema/metadata.d.ts.map +0 -1
- package/dist/v1/schema/metadata.js.map +0 -1
- package/dist/v1/schema/policy/ast.d.ts.map +0 -1
- package/dist/v1/schema/policy/ast.js +0 -2
- package/dist/v1/schema/policy/ast.js.map +0 -1
- package/dist/v1/schema/policy/normalize.d.ts +0 -5
- package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
- package/dist/v1/schema/policy/normalize.js.map +0 -1
- package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/branches.js.map +0 -1
- package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
- package/dist/v1/schema/policy/validation/context.d.ts +0 -28
- package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/context.js.map +0 -1
- package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/references.js.map +0 -1
- package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/typing.js.map +0 -1
- package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/uses.js.map +0 -1
- package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
- package/dist/v1/schema/policy/validation/validate.js.map +0 -1
- package/dist/v1/schema/reference.d.ts +0 -43
- package/dist/v1/schema/reference.d.ts.map +0 -1
- package/dist/v1/schema/reference.js +0 -31
- package/dist/v1/schema/reference.js.map +0 -1
- package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
- package/dist/v1/schema/resolution/closure.js.map +0 -1
- package/dist/v1/schema/resolution/context.d.ts.map +0 -1
- package/dist/v1/schema/resolution/context.js.map +0 -1
- package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
- package/dist/v1/schema/resolution/definition.index.js.map +0 -1
- package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
- package/dist/v1/schema/resolution/origins.js.map +0 -1
- package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
- package/dist/v1/schema/resolution/value.registry.js.map +0 -1
- package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
- package/dist/v1/schema/validation/domain.route.js.map +0 -1
- package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
- package/dist/v1/schema/validation/domain.structure.js.map +0 -1
- package/dist/v1/schema/validation/value.d.ts.map +0 -1
- package/dist/v1/schema/validation/value.js.map +0 -1
- package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
- package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
- package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
- package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
- package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
- package/dist/v1/schema/value/index.d.ts.map +0 -1
- package/dist/v1/schema/value/index.js.map +0 -1
- package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/assertions.js.map +0 -1
- package/dist/v1/schema/value/instance/compiler.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/compiler.js +0 -69
- package/dist/v1/schema/value/instance/compiler.js.map +0 -1
- package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
- package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/types.js.map +0 -1
- package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
- package/dist/v1/schema/value/instance.validate.js.map +0 -1
- package/dist/v1/schema/value/instant.d.ts.map +0 -1
- package/dist/v1/schema/value/instant.js.map +0 -1
- package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
- package/dist/v1/schema/value/location/keywords.js.map +0 -1
- package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
- package/dist/v1/schema/value/location/pointer.js.map +0 -1
- package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
- package/dist/v1/schema/value/location/walk.js.map +0 -1
- package/dist/v1/schema/value/object.d.ts.map +0 -1
- package/dist/v1/schema/value/object.js.map +0 -1
- package/dist/v1/schema/value/ordering.d.ts.map +0 -1
- package/dist/v1/schema/value/ordering.js.map +0 -1
- package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
- package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
- package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/dialect.js +0 -36
- package/dist/v1/schema/value/profile/dialect.js.map +0 -1
- package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
- package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
- package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
- package/dist/v1/schema/value/profile/meta-schema.validate.d.ts +0 -4
- package/dist/v1/schema/value/profile/meta-schema.validate.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/meta-schema.validate.js.map +0 -1
- package/dist/v1/schema/value/profile/rules.d.ts +0 -5
- package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/rules.js.map +0 -1
- package/dist/v1/schema/value/profile/validate.d.ts +0 -5
- package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/validate.js.map +0 -1
- package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
- package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
- package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/linear.js +0 -24
- package/dist/v1/schema/value/regexp/linear.js.map +0 -1
- package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/lower.js.map +0 -1
- package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
- package/dist/v1/schema/value/regexp/syntax.d.ts +0 -3
- package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/syntax.js +0 -217
- package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
- package/dist/v1/schema/value/registry.d.ts.map +0 -1
- package/dist/v1/schema/value/registry.js +0 -2
- package/dist/v1/schema/value/registry.js.map +0 -1
- package/dist/v1/schema/value/resources/closure.d.ts +0 -12
- package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
- package/dist/v1/schema/value/resources/closure.js.map +0 -1
- package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
- package/dist/v1/schema/value/resources/recursion.js.map +0 -1
- package/dist/v1/schema/value/resources/references.d.ts +0 -25
- package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
- package/dist/v1/schema/value/resources/references.js +0 -93
- package/dist/v1/schema/value/resources/references.js.map +0 -1
- package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
- package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
- package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
- package/dist/v1/schema/value/schema.d.ts.map +0 -1
- package/dist/v1/schema/value/schema.js.map +0 -1
- package/dist/v1/schema/view/declaration.d.ts +0 -14
- package/dist/v1/schema/view/declaration.d.ts.map +0 -1
- package/dist/v1/schema/view/declaration.js +0 -2
- package/dist/v1/schema/view/declaration.js.map +0 -1
- package/dist/v1/schema/view/validate.d.ts +0 -4
- package/dist/v1/schema/view/validate.d.ts.map +0 -1
- package/dist/v1/schema/view/validate.js.map +0 -1
- package/dist/v1/schema.d.ts +0 -3
- package/dist/v1/schema.d.ts.map +0 -1
- package/dist/v1/schema.js +0 -3
- package/dist/v1/schema.js.map +0 -1
- package/dist/v1.d.ts.map +0 -1
- package/dist/v1.js.map +0 -1
- package/dist/value/accept.d.ts.map +0 -1
- package/dist/value/accept.js.map +0 -1
- package/dist/value/canonical.d.ts.map +0 -1
- package/dist/value/canonical.js.map +0 -1
- package/dist/value/decode.d.ts.map +0 -1
- package/dist/value/decode.js.map +0 -1
- package/dist/value/equal.d.ts.map +0 -1
- package/dist/value/equal.js.map +0 -1
- package/dist/value/error.d.ts.map +0 -1
- package/dist/value/error.js.map +0 -1
- package/dist/value/index.d.ts.map +0 -1
- package/dist/value/index.js.map +0 -1
- package/dist/value/json.d.ts.map +0 -1
- package/dist/value/json.js.map +0 -1
- package/dist/value/limits.d.ts.map +0 -1
- package/dist/value/limits.js.map +0 -1
- package/dist/value/types.d.ts.map +0 -1
- package/dist/value/types.js.map +0 -1
- package/dist/value/unicode.d.ts.map +0 -1
- package/dist/value/unicode.js.map +0 -1
- package/dist/version/dispatch.d.ts.map +0 -1
- package/dist/version/dispatch.js.map +0 -1
- package/dist/version/index.d.ts.map +0 -1
- package/dist/version/index.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Revision } from '
|
|
2
|
-
import { type DomainSchema, type DomainSchemaIR } from '
|
|
1
|
+
import type { Revision } from '../../addressing/index.js';
|
|
2
|
+
import { type DomainSchema, type DomainSchemaIR } from '../model/schema.js';
|
|
3
3
|
export interface CanonicalDomainSchema {
|
|
4
4
|
readonly schema: DomainSchema;
|
|
5
5
|
readonly bytes: Uint8Array;
|
|
@@ -9,4 +9,3 @@ export declare function canonicalDomainSchema(value: DomainSchema): CanonicalDom
|
|
|
9
9
|
/** Internal acceptance seam. The caller must establish whole-Domain validity first. */
|
|
10
10
|
export declare function canonicalDomainSchemaAfterValidation(value: DomainSchemaIR): CanonicalDomainSchema;
|
|
11
11
|
export declare function revisionOfDomainSchema(schema: DomainSchema): Revision;
|
|
12
|
-
//# sourceMappingURL=domain.revision.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { asDomainSchema } from '../model/schema.js';
|
|
3
|
+
import { digestDomainSchemaBytes } from './domain.digest.js';
|
|
4
|
+
import { canonicalizeDomainSchema } from './domain.js';
|
|
5
5
|
export function canonicalDomainSchema(value) {
|
|
6
6
|
return canonicalDomainSchemaAfterValidation(value);
|
|
7
7
|
}
|
|
@@ -15,4 +15,3 @@ export function canonicalDomainSchemaAfterValidation(value) {
|
|
|
15
15
|
export function revisionOfDomainSchema(schema) {
|
|
16
16
|
return canonicalDomainSchema(schema).revision;
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=domain.revision.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Key } from '../../addressing/index.js';
|
|
2
|
+
import type { DomainDependencyMap } from '../../addressing/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Structurally trusted routing information used to discover an exact
|
|
5
|
+
* dependency closure before whole-Domain semantic acceptance is possible.
|
|
6
|
+
*
|
|
7
|
+
* This is deliberately not a DomainSchema: callers must still load the
|
|
8
|
+
* declared revisions and pass the original document to acceptDomainSchema.
|
|
9
|
+
*/
|
|
10
|
+
export interface DomainSchemaHeader {
|
|
11
|
+
readonly format: 'astrale.dsl';
|
|
12
|
+
readonly version: 'v1';
|
|
13
|
+
readonly origin: Key.Origin;
|
|
14
|
+
readonly dependencies: DomainDependencyMap;
|
|
15
|
+
}
|
|
16
|
+
/** Decode detached Schema bytes or text and retain only validated closure-routing identity. */
|
|
17
|
+
export declare function header(input: string | Uint8Array): DomainSchemaHeader;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
+
import { SchemaError, diagnostic } from '../diagnostic.js';
|
|
3
|
+
import { routeDomainSchema } from '../validation/domain.route.js';
|
|
4
|
+
/** Decode detached Schema bytes or text and retain only validated closure-routing identity. */
|
|
5
|
+
export function header(input) {
|
|
6
|
+
let decoded;
|
|
7
|
+
try {
|
|
8
|
+
decoded = json.decode(input);
|
|
9
|
+
}
|
|
10
|
+
catch (error) {
|
|
11
|
+
if (error instanceof json.DecodeError) {
|
|
12
|
+
throw new SchemaError([diagnostic('DV_JSON_VALUE', '', error.message)]);
|
|
13
|
+
}
|
|
14
|
+
throw error;
|
|
15
|
+
}
|
|
16
|
+
const structured = routeDomainSchema(decoded);
|
|
17
|
+
return Object.freeze({
|
|
18
|
+
format: structured.format,
|
|
19
|
+
version: structured.version,
|
|
20
|
+
dependencies: Object.freeze(Object.fromEntries(Object.entries(structured.dependencies).map(([alias, dependency]) => [
|
|
21
|
+
alias,
|
|
22
|
+
Object.freeze({ ...dependency }),
|
|
23
|
+
]))),
|
|
24
|
+
origin: structured.origin,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { DomainSchemaLookup } from '../dependency/lookup.js';
|
|
2
|
+
import type { DomainSchema } from '../model/schema.js';
|
|
3
3
|
export declare function decodeDomainSchema(input: string | Uint8Array, lookup?: DomainSchemaLookup): DomainSchema;
|
|
4
4
|
export declare function serializeDomainSchema(schema: DomainSchema): string;
|
|
5
5
|
export declare function encodeDomainSchema(schema: DomainSchema): Uint8Array;
|
|
6
|
-
//# sourceMappingURL=domain.codec.d.ts.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { acceptDomainSchema } from '../admission/accept.js';
|
|
3
|
+
import { emptyDomainSchemaLookup } from '../dependency/lookup.js';
|
|
4
|
+
import { SchemaError, diagnostic } from '../diagnostic.js';
|
|
5
5
|
export function decodeDomainSchema(input, lookup = emptyDomainSchemaLookup()) {
|
|
6
6
|
try {
|
|
7
7
|
return acceptDomainSchema(json.decode(input), lookup);
|
|
8
8
|
}
|
|
9
9
|
catch (error) {
|
|
10
10
|
if (error instanceof json.DecodeError) {
|
|
11
|
-
throw new
|
|
11
|
+
throw new SchemaError([diagnostic('DV_JSON_VALUE', '', error.message)]);
|
|
12
12
|
}
|
|
13
13
|
throw error;
|
|
14
14
|
}
|
|
@@ -19,4 +19,3 @@ export function serializeDomainSchema(schema) {
|
|
|
19
19
|
export function encodeDomainSchema(schema) {
|
|
20
20
|
return json.encode(schema);
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=domain.codec.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Key as SemanticKey } from '
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
import { Key } from '
|
|
1
|
+
import type { Key as SemanticKey } from '../../addressing/index.js';
|
|
2
|
+
import type { Revision } from '../../addressing/index.js';
|
|
3
|
+
import type { DomainSchema } from '../model/schema.js';
|
|
4
|
+
import { Key } from '../../addressing/index.js';
|
|
5
5
|
export type DependencyMeaningChangeKind = 'missing' | 'changed';
|
|
6
6
|
export type MeaningFingerprint = `sha256:${string}`;
|
|
7
7
|
export interface DependencyMeaningChange {
|
|
@@ -27,4 +27,3 @@ export interface DependencyMeaningComparison {
|
|
|
27
27
|
export declare function compareDependencyMeaning(dependent: DomainSchema, target: DomainSchema): DependencyMeaningComparison;
|
|
28
28
|
/** Compare one explicit non-empty source member surface and its reachable V1 meaning. */
|
|
29
29
|
export declare function compareMemberMeaning(source: DomainSchema, target: DomainSchema, roots: readonly [SemanticKey, ...SemanticKey[]]): DependencyMeaningComparison;
|
|
30
|
-
//# sourceMappingURL=dependency.meaning.d.ts.map
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import { Key,
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
2
|
+
import { Key, MethodKey, PropertyKey } from '../../addressing/index.js';
|
|
3
|
+
import { compareDefinitionRefs, compareUnicode, definitionRefIndex, } from '../../addressing/ordering.js';
|
|
4
|
+
import { isValueObject as isJsonObject } from '../../language/value/model/object.js';
|
|
5
|
+
import { SCHEMA_ARRAY_KEYWORDS, SCHEMA_MAP_KEYWORDS, SCHEMA_SINGLE_KEYWORDS, } from '../../language/value/syntax/keywords.js';
|
|
6
|
+
import { digestDomainSchemaBytes } from '../canonical/domain.digest.js';
|
|
7
|
+
import { revisionOfDomainSchema } from '../canonical/revision.js';
|
|
8
|
+
import { SchemaError, diagnostic } from '../diagnostic.js';
|
|
9
|
+
import { knownDomainClosure, lookupForDomainClosure } from '../resolution/closure.js';
|
|
10
|
+
import { resolve } from '../resolution/domain.js';
|
|
11
|
+
import { collectCallableRefs, collectClassRefs, collectPolicyDefinitionRefs, collectValueDefinitionRefs, } from '../resolution/origins.js';
|
|
12
|
+
import { validateDomainSchemaSemantics } from '../validation/domain.js';
|
|
11
13
|
const VALUE_SCHEMA_ANNOTATIONS = new Set([
|
|
12
14
|
'$comment',
|
|
13
15
|
'contentEncoding',
|
|
@@ -28,16 +30,17 @@ const VALUE_SCHEMA_ANNOTATIONS = new Set([
|
|
|
28
30
|
* lifecycle-compatibility decision.
|
|
29
31
|
*/
|
|
30
32
|
export function compareDependencyMeaning(dependent, target) {
|
|
31
|
-
|
|
32
|
-
const
|
|
33
|
+
resolve(dependent);
|
|
34
|
+
const closure = knownDomainClosure(dependent) ?? [];
|
|
35
|
+
const source = closure.find((candidate) => candidate.schema.origin === target.origin)?.schema;
|
|
33
36
|
if (source === undefined) {
|
|
34
|
-
throw new
|
|
37
|
+
throw new SchemaError([
|
|
35
38
|
diagnostic('DM_DEPENDENCY_NOT_RETAINED', '/target/origin', `Domain ${dependent.origin} was not admitted with a dependency at ${target.origin}.`),
|
|
36
39
|
]);
|
|
37
40
|
}
|
|
38
41
|
const schemas = new Map([
|
|
39
42
|
[dependent.origin, dependent],
|
|
40
|
-
...
|
|
43
|
+
...closure.map(({ schema: candidate }) => [candidate.origin, candidate]),
|
|
41
44
|
]);
|
|
42
45
|
const sourceMeanings = collectDependencyMeanings(dependent, source.origin, schemas);
|
|
43
46
|
return compareSourceMeanings(source, target, sourceMeanings);
|
|
@@ -45,19 +48,20 @@ export function compareDependencyMeaning(dependent, target) {
|
|
|
45
48
|
/** Compare one explicit non-empty source member surface and its reachable V1 meaning. */
|
|
46
49
|
export function compareMemberMeaning(source, target, roots) {
|
|
47
50
|
if (source.origin !== target.origin) {
|
|
48
|
-
throw new
|
|
51
|
+
throw new SchemaError([
|
|
49
52
|
diagnostic('DM_MEMBER_ORIGIN_MISMATCH', '/target/origin', `Member comparison target ${target.origin} does not match source ${source.origin}.`),
|
|
50
53
|
]);
|
|
51
54
|
}
|
|
52
55
|
if (!Array.isArray(roots) || roots.length === 0 || new Set(roots).size !== roots.length) {
|
|
53
|
-
throw new
|
|
56
|
+
throw new SchemaError([
|
|
54
57
|
diagnostic('DM_MEMBER_ROOT_INVALID', '/roots', 'Member comparison roots must be one non-empty duplicate-free Key set.'),
|
|
55
58
|
]);
|
|
56
59
|
}
|
|
57
|
-
|
|
60
|
+
resolve(source);
|
|
61
|
+
const closure = knownDomainClosure(source) ?? [];
|
|
58
62
|
const schemas = new Map([
|
|
59
63
|
[source.origin, source],
|
|
60
|
-
...
|
|
64
|
+
...closure.map(({ schema: candidate }) => [candidate.origin, candidate]),
|
|
61
65
|
]);
|
|
62
66
|
const coordinates = roots.map((key, index) => coordinateForKey(source, key, index));
|
|
63
67
|
const sourceMeanings = collectReachableMeanings(coordinates, source.origin, schemas);
|
|
@@ -65,7 +69,7 @@ export function compareMemberMeaning(source, target, roots) {
|
|
|
65
69
|
}
|
|
66
70
|
function compareSourceMeanings(source, target, sourceMeanings) {
|
|
67
71
|
// Prove the candidate still has an exact accepted semantic context before comparing it.
|
|
68
|
-
|
|
72
|
+
resolve(target);
|
|
69
73
|
const footprint = Object.freeze([...sourceMeanings.keys()].sort(compareUnicode));
|
|
70
74
|
const changes = [];
|
|
71
75
|
const comparisonCoordinates = [];
|
|
@@ -129,7 +133,7 @@ function collectReachableMeanings(roots, selectedOrigin, schemas) {
|
|
|
129
133
|
const owner = schemas.get(Key.origin(coordinate.key));
|
|
130
134
|
const meaning = owner === undefined ? undefined : meaningForCoordinate(owner, coordinate);
|
|
131
135
|
if (owner === undefined || meaning === undefined) {
|
|
132
|
-
throw new
|
|
136
|
+
throw new SchemaError([
|
|
133
137
|
diagnostic('DM_MEMBER_ROOT_INVALID', '/roots', `Member comparison root ${coordinate.key} does not exist in its source context.`, coordinate.key),
|
|
134
138
|
]);
|
|
135
139
|
}
|
|
@@ -138,20 +142,20 @@ function collectReachableMeanings(roots, selectedOrigin, schemas) {
|
|
|
138
142
|
}
|
|
139
143
|
for (let index = 0; index < pending.length; index += 1) {
|
|
140
144
|
const ref = pending[index];
|
|
141
|
-
const refIndex =
|
|
145
|
+
const refIndex = definitionRefIndex(ref);
|
|
142
146
|
if (visited.has(refIndex))
|
|
143
147
|
continue;
|
|
144
148
|
visited.add(refIndex);
|
|
145
149
|
const owner = schemas.get(ref.origin);
|
|
146
150
|
if (owner === undefined) {
|
|
147
|
-
throw new
|
|
148
|
-
diagnostic('DM_DEPENDENCY_CONTEXT_INVALID', '', `Retained acceptance context cannot resolve ${
|
|
151
|
+
throw new SchemaError([
|
|
152
|
+
diagnostic('DM_DEPENDENCY_CONTEXT_INVALID', '', `Retained acceptance context cannot resolve ${keyForDefinitionRef(ref)}.`, keyForDefinitionRef(ref)),
|
|
149
153
|
]);
|
|
150
154
|
}
|
|
151
155
|
const primary = memberCoordinate(ref);
|
|
152
156
|
const primaryMeaning = meaningForCoordinate(owner, primary);
|
|
153
157
|
if (primaryMeaning === undefined) {
|
|
154
|
-
throw new
|
|
158
|
+
throw new SchemaError([
|
|
155
159
|
diagnostic('DM_DEPENDENCY_CONTEXT_INVALID', '', `Retained acceptance context has no meaning for ${primary.key}.`, primary.key),
|
|
156
160
|
]);
|
|
157
161
|
}
|
|
@@ -159,7 +163,7 @@ function collectReachableMeanings(roots, selectedOrigin, schemas) {
|
|
|
159
163
|
collectMemberSemanticRefs(owner, ref, (candidate) => pending.push(requireMemberRef(candidate)));
|
|
160
164
|
if (!isDefinitionRef(ref))
|
|
161
165
|
continue;
|
|
162
|
-
const analysis =
|
|
166
|
+
const analysis = effectiveDefinition(owner, ref);
|
|
163
167
|
if (analysis === undefined)
|
|
164
168
|
continue;
|
|
165
169
|
collectEffectiveMeanings(analysis, selectedOrigin, meanings, (candidate) => pending.push(requireMemberRef(candidate)));
|
|
@@ -167,16 +171,16 @@ function collectReachableMeanings(roots, selectedOrigin, schemas) {
|
|
|
167
171
|
return meanings;
|
|
168
172
|
}
|
|
169
173
|
function collectCoordinateSemanticRefs(owner, coordinate, add) {
|
|
170
|
-
const analysis =
|
|
174
|
+
const analysis = effectiveDefinition(owner, coordinate.owner);
|
|
171
175
|
if (analysis === undefined)
|
|
172
176
|
return;
|
|
173
177
|
if (coordinate.kind === 'property') {
|
|
174
178
|
const field = analysis.properties.get(coordinate.key);
|
|
175
179
|
if (field !== undefined)
|
|
176
|
-
|
|
180
|
+
collectValueDefinitionRefs(semanticValueSchema(field.schema), add);
|
|
177
181
|
return;
|
|
178
182
|
}
|
|
179
|
-
const method = [...analysis.methods.values()].find((candidate) =>
|
|
183
|
+
const method = [...analysis.methods.values()].find((candidate) => MethodKey.of(candidate.owner, candidate.name) === coordinate.key);
|
|
180
184
|
if (method !== undefined)
|
|
181
185
|
collectCallableRefs(semanticMethod(method.declaration), add);
|
|
182
186
|
}
|
|
@@ -185,7 +189,7 @@ function collectEffectiveMeanings(analysis, dependencyOrigin, meanings, add) {
|
|
|
185
189
|
const coordinate = propertyCoordinate(field.owner, field.name);
|
|
186
190
|
retainMeaning(meanings, dependencyOrigin, coordinate, propertyMeaning(field));
|
|
187
191
|
add(field.owner);
|
|
188
|
-
|
|
192
|
+
collectValueDefinitionRefs(semanticValueSchema(field.schema), add);
|
|
189
193
|
}
|
|
190
194
|
for (const method of analysis.methods.values()) {
|
|
191
195
|
const coordinate = methodCoordinate(method.owner, method.name);
|
|
@@ -200,7 +204,7 @@ function retainMeaning(meanings, dependencyOrigin, coordinate, meaning) {
|
|
|
200
204
|
const fingerprint = fingerprintMeaning(meaning);
|
|
201
205
|
const previous = meanings.get(coordinate.key);
|
|
202
206
|
if (previous !== undefined && previous.fingerprint !== fingerprint) {
|
|
203
|
-
throw new
|
|
207
|
+
throw new SchemaError([
|
|
204
208
|
diagnostic('DM_MEANING_INCONSISTENT', '', `Semantic coordinate ${coordinate.key} produced inconsistent effective meaning.`, coordinate.key),
|
|
205
209
|
]);
|
|
206
210
|
}
|
|
@@ -210,14 +214,8 @@ function collectSchemaSemanticRefs(owner) {
|
|
|
210
214
|
const refs = new Map();
|
|
211
215
|
const add = (ref) => {
|
|
212
216
|
const member = requireMemberRef(ref);
|
|
213
|
-
refs.set(
|
|
217
|
+
refs.set(definitionRefIndex(member), member);
|
|
214
218
|
};
|
|
215
|
-
for (const value of Object.values(owner.types)) {
|
|
216
|
-
collectValueSchemaRefs(semanticValueSchema(value), add);
|
|
217
|
-
}
|
|
218
|
-
for (const declaration of Object.values(owner.interfaces)) {
|
|
219
|
-
collectInterfaceRefs(semanticDefinition(declaration), add);
|
|
220
|
-
}
|
|
221
219
|
for (const declaration of Object.values(owner.classes)) {
|
|
222
220
|
collectClassRefs(semanticDefinition(declaration), add);
|
|
223
221
|
}
|
|
@@ -225,7 +223,7 @@ function collectSchemaSemanticRefs(owner) {
|
|
|
225
223
|
collectCallableRefs(semanticFunction(declaration), add);
|
|
226
224
|
}
|
|
227
225
|
for (const declaration of Object.values(owner.policies)) {
|
|
228
|
-
|
|
226
|
+
collectPolicyDefinitionRefs(semanticPolicy(declaration), add);
|
|
229
227
|
}
|
|
230
228
|
for (const declaration of Object.values(owner.views)) {
|
|
231
229
|
if (declaration.target.kind === 'definition')
|
|
@@ -240,23 +238,10 @@ function collectSchemaSemanticRefs(owner) {
|
|
|
240
238
|
if (edge.target.kind !== 'domain')
|
|
241
239
|
add(edge.target);
|
|
242
240
|
}
|
|
243
|
-
return [...refs.values()].sort(
|
|
241
|
+
return [...refs.values()].sort(compareDefinitionRefs);
|
|
244
242
|
}
|
|
245
243
|
function collectMemberSemanticRefs(owner, ref, add) {
|
|
246
244
|
switch (ref.kind) {
|
|
247
|
-
case 'type': {
|
|
248
|
-
const declaration = owner.types[ref.name];
|
|
249
|
-
if (declaration !== undefined)
|
|
250
|
-
collectValueSchemaRefs(semanticValueSchema(declaration), add);
|
|
251
|
-
return;
|
|
252
|
-
}
|
|
253
|
-
case 'interface': {
|
|
254
|
-
const declaration = owner.interfaces[ref.name];
|
|
255
|
-
if (declaration !== undefined) {
|
|
256
|
-
collectInterfaceRefs(semanticDefinition(declaration), add);
|
|
257
|
-
}
|
|
258
|
-
return;
|
|
259
|
-
}
|
|
260
245
|
case 'class': {
|
|
261
246
|
const declaration = owner.classes[ref.name];
|
|
262
247
|
if (declaration !== undefined) {
|
|
@@ -273,7 +258,7 @@ function collectMemberSemanticRefs(owner, ref, add) {
|
|
|
273
258
|
case 'policy': {
|
|
274
259
|
const declaration = owner.policies[ref.name];
|
|
275
260
|
if (declaration !== undefined) {
|
|
276
|
-
|
|
261
|
+
collectPolicyDefinitionRefs(semanticPolicy(declaration), add);
|
|
277
262
|
}
|
|
278
263
|
return;
|
|
279
264
|
}
|
|
@@ -303,27 +288,20 @@ function meaningForCoordinate(owner, coordinate) {
|
|
|
303
288
|
return undefined;
|
|
304
289
|
if (coordinate.kind === 'member')
|
|
305
290
|
return memberMeaning(owner, coordinate.ref);
|
|
306
|
-
const analysis =
|
|
291
|
+
const analysis = effectiveDefinition(owner, coordinate.owner);
|
|
307
292
|
if (analysis === undefined)
|
|
308
293
|
return undefined;
|
|
309
294
|
if (coordinate.kind === 'property') {
|
|
310
295
|
const field = analysis.properties.get(coordinate.key);
|
|
311
296
|
return field === undefined ? undefined : propertyMeaning(field);
|
|
312
297
|
}
|
|
313
|
-
const method = [...analysis.methods.values()].find((candidate) =>
|
|
298
|
+
const method = [...analysis.methods.values()].find((candidate) => MethodKey.of(candidate.owner, candidate.name) === coordinate.key);
|
|
314
299
|
return method === undefined ? undefined : methodMeaning(method);
|
|
315
300
|
}
|
|
316
301
|
function memberMeaning(owner, ref) {
|
|
317
302
|
if (ref.origin !== owner.origin)
|
|
318
303
|
return undefined;
|
|
319
304
|
switch (ref.kind) {
|
|
320
|
-
case 'type': {
|
|
321
|
-
const declaration = owner.types[ref.name];
|
|
322
|
-
return declaration === undefined
|
|
323
|
-
? undefined
|
|
324
|
-
: { kind: ref.kind, schema: semanticValueSchema(declaration) };
|
|
325
|
-
}
|
|
326
|
-
case 'interface':
|
|
327
305
|
case 'class':
|
|
328
306
|
return definitionMeaning(owner, ref);
|
|
329
307
|
case 'function': {
|
|
@@ -357,44 +335,49 @@ function memberMeaning(owner, ref) {
|
|
|
357
335
|
}
|
|
358
336
|
}
|
|
359
337
|
function definitionMeaning(owner, ref) {
|
|
360
|
-
const
|
|
361
|
-
const
|
|
362
|
-
|
|
363
|
-
if (resolved === undefined || effective === undefined || resolved.owner !== owner)
|
|
338
|
+
const declaration = owner.classes[ref.name];
|
|
339
|
+
const effective = effectiveDefinition(owner, ref);
|
|
340
|
+
if (declaration === undefined || effective === undefined || ref.origin !== owner.origin)
|
|
364
341
|
return undefined;
|
|
365
342
|
return {
|
|
366
343
|
kind: ref.kind,
|
|
367
|
-
declaration: semanticDefinition(
|
|
344
|
+
declaration: semanticDefinition(declaration),
|
|
368
345
|
effective: {
|
|
369
346
|
properties: [...effective.properties.keys()].sort(compareUnicode),
|
|
370
347
|
methods: [...effective.methods.values()]
|
|
371
|
-
.map((method) =>
|
|
348
|
+
.map((method) => MethodKey.of(method.owner, method.name))
|
|
372
349
|
.sort(compareUnicode),
|
|
373
350
|
...(effective.data === undefined
|
|
374
351
|
? {}
|
|
375
352
|
: {
|
|
376
353
|
data: {
|
|
377
|
-
owner:
|
|
354
|
+
owner: keyForDefinitionRef(effective.data.owner),
|
|
378
355
|
declaration: effective.data.declaration,
|
|
379
356
|
},
|
|
380
357
|
}),
|
|
381
358
|
},
|
|
382
359
|
};
|
|
383
360
|
}
|
|
361
|
+
function effectiveDefinition(owner, ref) {
|
|
362
|
+
const validation = validateDomainSchemaSemantics(owner, lookupForDomainClosure(owner));
|
|
363
|
+
if (validation.diagnostics.length > 0)
|
|
364
|
+
return undefined;
|
|
365
|
+
return validation.analysis.definitions.get(definitionRefIndex(ref));
|
|
366
|
+
}
|
|
384
367
|
function propertyMeaning(field) {
|
|
385
368
|
return {
|
|
386
369
|
kind: 'property',
|
|
387
|
-
owner:
|
|
370
|
+
owner: keyForDefinitionRef(field.owner),
|
|
388
371
|
name: field.name,
|
|
389
372
|
schema: semanticValueSchema(field.schema),
|
|
390
373
|
required: field.required,
|
|
391
|
-
|
|
374
|
+
...(field.state === undefined ? {} : { state: field.state }),
|
|
392
375
|
};
|
|
393
376
|
}
|
|
394
377
|
function methodMeaning(method) {
|
|
395
378
|
return {
|
|
396
379
|
kind: 'method',
|
|
397
|
-
owner:
|
|
380
|
+
owner: keyForDefinitionRef(method.owner),
|
|
398
381
|
name: method.name,
|
|
399
382
|
declaration: semanticMethod(method.declaration),
|
|
400
383
|
};
|
|
@@ -403,7 +386,13 @@ function semanticDefinition(declaration) {
|
|
|
403
386
|
const { description: _description, ...rest } = declaration;
|
|
404
387
|
const semantic = {
|
|
405
388
|
...rest,
|
|
406
|
-
properties:
|
|
389
|
+
properties: Object.fromEntries(Object.entries(declaration.properties).map(([name, property]) => [
|
|
390
|
+
name,
|
|
391
|
+
{
|
|
392
|
+
...property,
|
|
393
|
+
schema: semanticValueSchema(property.schema),
|
|
394
|
+
},
|
|
395
|
+
])),
|
|
407
396
|
};
|
|
408
397
|
if ('methods' in declaration) {
|
|
409
398
|
semantic.methods = Object.fromEntries(Object.entries(declaration.methods).map(([name, method]) => [name, semanticMethod(method)]));
|
|
@@ -419,11 +408,11 @@ function semanticFunction(declaration) {
|
|
|
419
408
|
};
|
|
420
409
|
}
|
|
421
410
|
function semanticMethod(declaration) {
|
|
422
|
-
const
|
|
411
|
+
const { description: _description, ...rest } = declaration;
|
|
423
412
|
return {
|
|
424
|
-
...
|
|
425
|
-
|
|
426
|
-
|
|
413
|
+
...rest,
|
|
414
|
+
input: semanticValueSchema(declaration.input),
|
|
415
|
+
output: semanticOutput(declaration.output),
|
|
427
416
|
};
|
|
428
417
|
}
|
|
429
418
|
function semanticOutput(output) {
|
|
@@ -480,50 +469,48 @@ function coordinateForKey(source, input, index) {
|
|
|
480
469
|
if (Key.origin(key) !== source.origin) {
|
|
481
470
|
return invalidMemberRoot(key, index, `belongs to ${Key.origin(key)}, not source ${source.origin}`);
|
|
482
471
|
}
|
|
483
|
-
const
|
|
472
|
+
const reference = keyReference(key);
|
|
484
473
|
let coordinate;
|
|
485
|
-
if (
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
474
|
+
if ((reference.member === 'property' || reference.member === 'method') &&
|
|
475
|
+
reference.ownerKind === 'class' &&
|
|
476
|
+
reference.ownerName !== undefined) {
|
|
477
|
+
const owner = definitionRefFor(source, reference.ownerKind, reference.ownerName);
|
|
478
|
+
if (owner === undefined) {
|
|
489
479
|
return invalidMemberRoot(key, index, 'has no exact owning Definition');
|
|
490
480
|
}
|
|
491
|
-
coordinate =
|
|
492
|
-
|
|
493
|
-
|
|
481
|
+
coordinate =
|
|
482
|
+
reference.member === 'property'
|
|
483
|
+
? propertyCoordinate(owner, reference.name)
|
|
484
|
+
: methodCoordinate(owner, reference.name);
|
|
494
485
|
}
|
|
495
|
-
else if (
|
|
496
|
-
const member = memberRefFor(source,
|
|
486
|
+
else if (reference.kind !== 'core') {
|
|
487
|
+
const member = memberRefFor(source, {
|
|
488
|
+
origin: source.origin,
|
|
489
|
+
kind: reference.kind,
|
|
490
|
+
name: reference.name,
|
|
491
|
+
});
|
|
497
492
|
if (member === undefined)
|
|
498
493
|
return invalidMemberRoot(key, index, 'does not exist in the source');
|
|
499
494
|
coordinate = memberCoordinate(member);
|
|
500
495
|
}
|
|
501
|
-
else
|
|
496
|
+
else {
|
|
502
497
|
coordinate = memberCoordinate({
|
|
503
498
|
origin: source.origin,
|
|
504
499
|
kind: 'core',
|
|
505
|
-
name:
|
|
500
|
+
name: reference.name,
|
|
506
501
|
});
|
|
507
502
|
}
|
|
508
|
-
else {
|
|
509
|
-
return invalidMemberRoot(key, index, 'is not an independently comparable V1 member');
|
|
510
|
-
}
|
|
511
503
|
if (meaningForCoordinate(source, coordinate) === undefined) {
|
|
512
504
|
return invalidMemberRoot(key, index, 'does not exist in the source');
|
|
513
505
|
}
|
|
514
506
|
return coordinate;
|
|
515
507
|
}
|
|
516
508
|
function memberRefFor(source, ref) {
|
|
517
|
-
const
|
|
518
|
-
const
|
|
519
|
-
const owner = definitionRefFor(source, namespace, name);
|
|
509
|
+
const name = ref.name;
|
|
510
|
+
const owner = definitionRefFor(source, ref.kind, name);
|
|
520
511
|
if (owner !== undefined)
|
|
521
512
|
return owner;
|
|
522
|
-
switch (
|
|
523
|
-
case 'type':
|
|
524
|
-
return source.types[name] === undefined
|
|
525
|
-
? undefined
|
|
526
|
-
: { origin: source.origin, kind: 'type', name };
|
|
513
|
+
switch (ref.kind) {
|
|
527
514
|
case 'function':
|
|
528
515
|
return source.functions[name] === undefined
|
|
529
516
|
? undefined
|
|
@@ -546,29 +533,50 @@ function definitionRefFor(source, namespace, name) {
|
|
|
546
533
|
? undefined
|
|
547
534
|
: { origin: source.origin, kind: 'class', name };
|
|
548
535
|
}
|
|
549
|
-
if (namespace === 'interface') {
|
|
550
|
-
return source.interfaces[name] === undefined
|
|
551
|
-
? undefined
|
|
552
|
-
: { origin: source.origin, kind: 'interface', name };
|
|
553
|
-
}
|
|
554
536
|
return undefined;
|
|
555
537
|
}
|
|
556
538
|
function invalidMemberRoot(key, index, reason) {
|
|
557
|
-
throw new
|
|
539
|
+
throw new SchemaError([
|
|
558
540
|
diagnostic('DM_MEMBER_ROOT_INVALID', `/roots/${index}`, `Member comparison root ${JSON.stringify(key)} ${reason}.`, typeof key === 'string' ? key : undefined),
|
|
559
541
|
]);
|
|
560
542
|
}
|
|
561
543
|
function memberCoordinate(ref) {
|
|
562
|
-
return Object.freeze({ kind: 'member', key:
|
|
544
|
+
return Object.freeze({ kind: 'member', key: keyForDefinitionRef(ref), ref });
|
|
563
545
|
}
|
|
564
546
|
function propertyCoordinate(owner, name) {
|
|
565
547
|
return Object.freeze({ kind: 'property', key: PropertyKey.of(owner, name), owner, name });
|
|
566
548
|
}
|
|
567
549
|
function methodCoordinate(owner, name) {
|
|
568
|
-
return Object.freeze({ kind: 'method', key:
|
|
569
|
-
}
|
|
570
|
-
function
|
|
571
|
-
return
|
|
550
|
+
return Object.freeze({ kind: 'method', key: MethodKey.of(owner, name), owner, name });
|
|
551
|
+
}
|
|
552
|
+
function keyForDefinitionRef(ref) {
|
|
553
|
+
return ref.kind === 'core'
|
|
554
|
+
? Key.of(ref)
|
|
555
|
+
: Key.of(ref);
|
|
556
|
+
}
|
|
557
|
+
function keyReference(key) {
|
|
558
|
+
const semantic = key.slice(key.indexOf(':') + 1);
|
|
559
|
+
const parts = semantic.split('.');
|
|
560
|
+
if (parts[0] === 'core' && parts.length === 2) {
|
|
561
|
+
return { kind: 'core', name: parts[1] };
|
|
562
|
+
}
|
|
563
|
+
if (parts.length === 2) {
|
|
564
|
+
return { kind: parts[0], name: parts[1] };
|
|
565
|
+
}
|
|
566
|
+
if (parts.length === 4 &&
|
|
567
|
+
parts[0] === 'class' &&
|
|
568
|
+
(parts[2] === 'property' || parts[2] === 'method')) {
|
|
569
|
+
return {
|
|
570
|
+
kind: 'class',
|
|
571
|
+
name: parts[3],
|
|
572
|
+
member: parts[2],
|
|
573
|
+
ownerKind: 'class',
|
|
574
|
+
ownerName: parts[1],
|
|
575
|
+
};
|
|
576
|
+
}
|
|
577
|
+
throw new SchemaError([
|
|
578
|
+
diagnostic('DM_MEMBER_ROOT_INVALID', '/roots', `Key ${key} has no supported V1 shape.`, key),
|
|
579
|
+
]);
|
|
572
580
|
}
|
|
573
581
|
function incidentCoreEdges(owner, name) {
|
|
574
582
|
return owner.core.edges.filter((edge) => (edge.source.kind === 'core' && edge.source.name === name) ||
|
|
@@ -578,31 +586,20 @@ function fingerprintMeaning(value) {
|
|
|
578
586
|
return digestDomainSchemaBytes(json.encode(value));
|
|
579
587
|
}
|
|
580
588
|
function isDefinitionRef(ref) {
|
|
581
|
-
|
|
582
|
-
case 'interface':
|
|
583
|
-
case 'class':
|
|
584
|
-
return true;
|
|
585
|
-
default:
|
|
586
|
-
return false;
|
|
587
|
-
}
|
|
589
|
+
return ref.kind === 'class';
|
|
588
590
|
}
|
|
589
591
|
function requireMemberRef(ref) {
|
|
590
592
|
switch (ref.kind) {
|
|
591
|
-
case 'type':
|
|
592
|
-
case 'interface':
|
|
593
593
|
case 'class':
|
|
594
594
|
case 'function':
|
|
595
595
|
case 'policy':
|
|
596
596
|
case 'view':
|
|
597
|
+
return ref;
|
|
597
598
|
case 'core':
|
|
598
599
|
return ref;
|
|
599
|
-
default:
|
|
600
|
-
throw new DomainSchemaError([
|
|
601
|
-
diagnostic('DM_DEPENDENCY_CONTEXT_INVALID', '', `Semantic reference kind ${JSON.stringify(ref.kind)} is outside V1.`),
|
|
602
|
-
]);
|
|
603
600
|
}
|
|
601
|
+
return ref;
|
|
604
602
|
}
|
|
605
603
|
function isJsonSchema(value) {
|
|
606
604
|
return typeof value === 'boolean' || isJsonObject(value);
|
|
607
605
|
}
|
|
608
|
-
//# sourceMappingURL=dependency.meaning.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Key } from '
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
1
|
+
import type { Key } from '../../addressing/index.js';
|
|
2
|
+
import type { Revision } from '../../addressing/index.js';
|
|
3
|
+
import type { DomainSchema } from '../model/schema.js';
|
|
4
4
|
/** Exact revision-addressed lookup used while accepting a dependency closure. */
|
|
5
5
|
export interface DomainSchemaLookup {
|
|
6
6
|
get(origin: Key.Origin, revision: Revision): DomainSchema | undefined;
|
|
@@ -16,4 +16,3 @@ export declare class MemoryDomainSchemaLookup implements DomainSchemaLookup {
|
|
|
16
16
|
set(entry: DomainSchemaEntry): this;
|
|
17
17
|
}
|
|
18
18
|
export declare function emptyDomainSchemaLookup(): DomainSchemaLookup;
|
|
19
|
-
//# sourceMappingURL=domain.lookup.d.ts.map
|