@astrale-os/kernel-dsl 0.2.0-beta.3 → 0.2.0-beta.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/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 +118 -0
- package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -7
- package/dist/v1/builder/class/authoring.d.ts +380 -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 +39 -38
- 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 +20 -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 +75 -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} +102 -81
- package/dist/v1/builder/lowering/schema/ownership.d.ts +8 -0
- package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +3 -3
- 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} +28 -17
- package/dist/v1/builder/policy/authoring.js +115 -0
- 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 +961 -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 +1167 -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 +181 -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 +119 -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 +26 -0
- package/dist/v1/language/index.js +3 -0
- package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +4 -5
- package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +43 -24
- 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 +4 -0
- package/dist/v1/language/policy/index.js +2 -0
- package/dist/v1/language/policy/model/policy.d.ts +115 -0
- package/dist/v1/language/policy/model/policy.js +18 -0
- package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
- package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +65 -20
- 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/{schema/compiled/program.d.ts → language/value/compile/load.d.ts} +1 -2
- package/dist/v1/{schema/compiled/program.js → language/value/compile/load.js} +2 -3
- 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 +3 -4
- package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.d.ts +2 -3
- package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.js +6 -8
- 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 +4 -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} +4 -5
- 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 +15 -13
- 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 +0 -1
- package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
- package/dist/v1/{schema → language}/value/profile/meta-schema.js +1 -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 +13 -21
- 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/{schema → language}/value/regexp/ast.d.ts +0 -1
- package/dist/v1/{schema → language}/value/regexp/ast.js +0 -1
- package/dist/v1/{schema → language}/value/regexp/compile.d.ts +1 -2
- package/dist/v1/{schema → language}/value/regexp/compile.js +8 -12
- 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/{schema → language}/value/regexp/matcher.d.ts +1 -2
- package/dist/v1/{schema → language}/value/regexp/matcher.js +0 -1
- 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/{schema → language}/value/regexp/syntax.d.ts +0 -1
- package/dist/v1/{schema → language}/value/regexp/syntax.js +0 -1
- package/dist/v1/{schema/value → language/value/syntax}/full-match.d.ts +0 -1
- package/dist/v1/{schema/value → language/value/syntax}/full-match.js +5 -6
- 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} +7 -5
- 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 -40
- package/dist/v1/schema/index.js +11 -18
- 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 +55 -46
- 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 +241 -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 +218 -210
- package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
- package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +22 -35
- 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/validation/policy/objects.d.ts +4 -0
- package/dist/v1/schema/validation/policy/objects.js +70 -0
- package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
- package/dist/v1/schema/{policy/validation → validation/policy}/references.js +32 -13
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +56 -69
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +36 -113
- 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 +3 -1
- package/dist/value/canonical.js +11 -5
- 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 +1 -2
- package/dist/value/json.js +1 -2
- 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 +53 -21
- 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 -91
- 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 +0 -9
- 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 -5
- package/dist/v1/builder/full-match.d.ts.map +0 -1
- package/dist/v1/builder/full-match.js +0 -12
- 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 +0 -79
- 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/compiled/admission.d.ts +0 -4
- package/dist/v1/schema/compiled/admission.d.ts.map +0 -1
- package/dist/v1/schema/compiled/admission.js +0 -217
- package/dist/v1/schema/compiled/admission.js.map +0 -1
- package/dist/v1/schema/compiled/authored-validator.d.ts +0 -5
- package/dist/v1/schema/compiled/authored-validator.d.ts.map +0 -1
- package/dist/v1/schema/compiled/authored-validator.js +0 -7
- package/dist/v1/schema/compiled/authored-validator.js.map +0 -1
- package/dist/v1/schema/compiled/compiler.d.ts +0 -5
- package/dist/v1/schema/compiled/compiler.d.ts.map +0 -1
- package/dist/v1/schema/compiled/compiler.js +0 -86
- package/dist/v1/schema/compiled/compiler.js.map +0 -1
- package/dist/v1/schema/compiled/model.d.ts +0 -61
- package/dist/v1/schema/compiled/model.d.ts.map +0 -1
- package/dist/v1/schema/compiled/model.js +0 -2
- package/dist/v1/schema/compiled/model.js.map +0 -1
- package/dist/v1/schema/compiled/program.d.ts.map +0 -1
- package/dist/v1/schema/compiled/program.js.map +0 -1
- package/dist/v1/schema/compiled/validator.d.ts +0 -23
- package/dist/v1/schema/compiled/validator.d.ts.map +0 -1
- package/dist/v1/schema/compiled/validator.js +0 -62
- package/dist/v1/schema/compiled/validator.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 +0 -77
- 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/full-match.d.ts.map +0 -1
- package/dist/v1/schema/value/full-match.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/evaluator.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
- package/dist/v1/schema/value/instance/preparation.d.ts.map +0 -1
- package/dist/v1/schema/value/instance/preparation.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.d.ts +0 -5
- package/dist/v1/schema/value/profile/meta-schema.d.ts.map +0 -1
- package/dist/v1/schema/value/profile/meta-schema.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/ast.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/ast.js.map +0 -1
- package/dist/v1/schema/value/regexp/compile.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/compile.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/matcher.d.ts.map +0 -1
- package/dist/v1/schema/value/regexp/matcher.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.map +0 -1
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { stateMachine } from './machine.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ZodType } from 'zod';
|
|
2
|
+
import type { EventName, StateName, StateTopology, TransitionRelation, ValidTransitionRelation } from './topology.js';
|
|
3
|
+
export interface StateMachine<Transitions extends TransitionRelation = any, Initial extends StateName<Transitions> = StateName<Transitions>> extends StateTopology<Transitions, Initial> {
|
|
4
|
+
readonly stateSchema: ZodType<StateName<Transitions>, StateName<Transitions>>;
|
|
5
|
+
readonly eventSchema: ZodType<EventName<Transitions>, EventName<Transitions>>;
|
|
6
|
+
eventsFrom<State extends StateName<Transitions>>(state: State): readonly EventName<Transitions, State>[];
|
|
7
|
+
decide<State extends StateName<Transitions>, Event extends EventName<Transitions>>(state: State, event: Event): TransitionDecision<Transitions, State, Event>;
|
|
8
|
+
}
|
|
9
|
+
export type StateOf<Machine extends StateMachine> = StateName<Machine['transitions']>;
|
|
10
|
+
export type EventOf<Machine extends StateMachine, State extends StateOf<Machine> = StateOf<Machine>> = EventName<Machine['transitions'], State>;
|
|
11
|
+
type TransitionDecision<Transitions extends TransitionRelation, State extends StateName<Transitions>, Event extends EventName<Transitions>> = State extends StateName<Transitions> ? Event extends EventName<Transitions> ? Event extends keyof Transitions[State] ? Readonly<{
|
|
12
|
+
kind: 'allowed';
|
|
13
|
+
transition: Readonly<{
|
|
14
|
+
from: State;
|
|
15
|
+
event: Event;
|
|
16
|
+
to: Transitions[State][Event];
|
|
17
|
+
}>;
|
|
18
|
+
}> : Readonly<{
|
|
19
|
+
kind: 'rejected';
|
|
20
|
+
code: 'STATE_TRANSITION_ILLEGAL';
|
|
21
|
+
from: State;
|
|
22
|
+
event: Event;
|
|
23
|
+
}> : never : never;
|
|
24
|
+
export declare function stateMachine<const Transitions extends TransitionRelation, const Initial extends StateName<Transitions>>(input: Readonly<{
|
|
25
|
+
initial: Initial;
|
|
26
|
+
transitions: Transitions & ValidTransitionRelation<Transitions>;
|
|
27
|
+
}>): StateMachine<Transitions, Initial>;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { enum as enumeration } from 'zod';
|
|
2
|
+
import { compareUnicode } from '../../addressing/ordering.js';
|
|
3
|
+
import { admitStateTopology } from './topology.js';
|
|
4
|
+
export function stateMachine(input) {
|
|
5
|
+
const topology = admitStateTopology(input);
|
|
6
|
+
const states = Object.keys(topology.transitions);
|
|
7
|
+
const events = [
|
|
8
|
+
...new Set(states.flatMap((state) => Object.keys(topology.transitions[state]))),
|
|
9
|
+
].sort(compareUnicode);
|
|
10
|
+
const stateSet = new Set(states);
|
|
11
|
+
const eventSet = new Set(events);
|
|
12
|
+
return Object.freeze({
|
|
13
|
+
...topology,
|
|
14
|
+
stateSchema: enumeration(states),
|
|
15
|
+
eventSchema: enumeration(events),
|
|
16
|
+
eventsFrom(state) {
|
|
17
|
+
admitState(state, stateSet);
|
|
18
|
+
return Object.freeze(Object.keys(topology.transitions[state]));
|
|
19
|
+
},
|
|
20
|
+
decide(state, event) {
|
|
21
|
+
admitState(state, stateSet);
|
|
22
|
+
admitEvent(event, eventSet);
|
|
23
|
+
const target = topology.transitions[state][event];
|
|
24
|
+
return target === undefined
|
|
25
|
+
? Object.freeze({ kind: 'rejected', code: 'STATE_TRANSITION_ILLEGAL', from: state, event })
|
|
26
|
+
: Object.freeze({
|
|
27
|
+
kind: 'allowed',
|
|
28
|
+
transition: Object.freeze({ from: state, event, to: target }),
|
|
29
|
+
});
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
function admitState(state, states) {
|
|
34
|
+
if (!states.has(state))
|
|
35
|
+
throw new TypeError(`State machine does not declare state "${state}".`);
|
|
36
|
+
}
|
|
37
|
+
function admitEvent(event, events) {
|
|
38
|
+
if (!events.has(event))
|
|
39
|
+
throw new TypeError(`State machine does not declare event "${event}".`);
|
|
40
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type TransitionRelation = Readonly<Record<string, Readonly<Record<string, string>>>>;
|
|
2
|
+
export type StateName<Transitions extends TransitionRelation> = Extract<keyof Transitions, string>;
|
|
3
|
+
export type EventName<Transitions extends TransitionRelation, State extends StateName<Transitions> = StateName<Transitions>> = State extends StateName<Transitions> ? Extract<keyof Transitions[State], string> : never;
|
|
4
|
+
export type ValidTransitionRelation<Transitions extends TransitionRelation> = Readonly<{
|
|
5
|
+
[State in StateName<Transitions>]: Readonly<{
|
|
6
|
+
[Event in keyof Transitions[State]]: string extends StateName<Transitions> ? string : Exclude<StateName<Transitions>, State>;
|
|
7
|
+
}>;
|
|
8
|
+
}>;
|
|
9
|
+
export interface StateTopology<Transitions extends TransitionRelation = TransitionRelation, Initial extends StateName<Transitions> = StateName<Transitions>> {
|
|
10
|
+
readonly initial: Initial;
|
|
11
|
+
readonly transitions: Transitions;
|
|
12
|
+
}
|
|
13
|
+
export type StateTopologyOf<Value> = Value extends StateTopology<infer Transitions, infer Initial> ? StateTopology<Transitions, Initial> : undefined;
|
|
14
|
+
export declare function admitStateTopology(input: unknown): StateTopology;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { compareUnicode } from '../../addressing/ordering.js';
|
|
2
|
+
export function admitStateTopology(input) {
|
|
3
|
+
if (!isRecord(input) || !exactKeys(input, ['initial', 'transitions']))
|
|
4
|
+
invalidInput();
|
|
5
|
+
const initial = input.initial;
|
|
6
|
+
const authored = input.transitions;
|
|
7
|
+
if (typeof initial !== 'string' || initial.length === 0 || !isRecord(authored))
|
|
8
|
+
invalidInput();
|
|
9
|
+
const states = Object.keys(authored);
|
|
10
|
+
if (states.length === 0)
|
|
11
|
+
throw new TypeError('State topology requires at least one state.');
|
|
12
|
+
if (states.includes(''))
|
|
13
|
+
throw new TypeError('State topology has an empty state name.');
|
|
14
|
+
if (!states.includes(initial)) {
|
|
15
|
+
throw new TypeError(`State topology initial state "${initial}" is not declared.`);
|
|
16
|
+
}
|
|
17
|
+
const declared = new Set(states);
|
|
18
|
+
const transitions = Object.create(null);
|
|
19
|
+
let transitionCount = 0;
|
|
20
|
+
for (const state of states.sort(compareUnicode)) {
|
|
21
|
+
const outgoing = authored[state];
|
|
22
|
+
if (!isRecord(outgoing))
|
|
23
|
+
throw new TypeError(`State "${state}" transitions must be an object.`);
|
|
24
|
+
const accepted = Object.create(null);
|
|
25
|
+
for (const event of Object.keys(outgoing).sort(compareUnicode)) {
|
|
26
|
+
const target = outgoing[event];
|
|
27
|
+
if (event.length === 0)
|
|
28
|
+
throw new TypeError(`State "${state}" has an empty event name.`);
|
|
29
|
+
if (typeof target !== 'string' || !declared.has(target)) {
|
|
30
|
+
throw new TypeError(`State "${state}" event "${event}" targets undeclared state "${String(target)}".`);
|
|
31
|
+
}
|
|
32
|
+
if (target === state) {
|
|
33
|
+
throw new TypeError(`State "${state}" event "${event}" is a self-transition.`);
|
|
34
|
+
}
|
|
35
|
+
accepted[event] = target;
|
|
36
|
+
transitionCount += 1;
|
|
37
|
+
}
|
|
38
|
+
transitions[state] = Object.freeze(accepted);
|
|
39
|
+
}
|
|
40
|
+
if (transitionCount === 0)
|
|
41
|
+
throw new TypeError('State topology requires at least one transition.');
|
|
42
|
+
const reachable = new Set([initial]);
|
|
43
|
+
const pending = [initial];
|
|
44
|
+
while (pending.length > 0) {
|
|
45
|
+
const state = pending.shift();
|
|
46
|
+
for (const target of Object.values(transitions[state])) {
|
|
47
|
+
if (reachable.has(target))
|
|
48
|
+
continue;
|
|
49
|
+
reachable.add(target);
|
|
50
|
+
pending.push(target);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
for (const state of states) {
|
|
54
|
+
if (!reachable.has(state)) {
|
|
55
|
+
throw new TypeError(`State "${state}" is unreachable from initial "${initial}".`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return Object.freeze({ initial, transitions: Object.freeze(transitions) });
|
|
59
|
+
}
|
|
60
|
+
function invalidInput() {
|
|
61
|
+
throw new TypeError('State topology must contain exactly initial and transitions.');
|
|
62
|
+
}
|
|
63
|
+
function isRecord(input) {
|
|
64
|
+
return input !== null && typeof input === 'object' && !Array.isArray(input);
|
|
65
|
+
}
|
|
66
|
+
function exactKeys(input, expected) {
|
|
67
|
+
const keys = Reflect.ownKeys(input);
|
|
68
|
+
return keys.length === expected.length && keys.every((key) => expected.includes(String(key)));
|
|
69
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type DiagnosticCode = 'CALLABLE_INPUT_FIELD_UNKNOWN' | 'DOMAIN_CLASS_ABSTRACT' | 'DOMAIN_PROPERTY_INPUT_INVALID' | 'DOMAIN_PROPERTY_REQUIRED' | 'DOMAIN_PROPERTY_UNKNOWN' | 'DOMAIN_VALIDATION_TARGET_UNKNOWN' | 'VALUE_SCHEMA_INSTANCE_INVALID' | 'VS_DIALECT' | 'VS_DYNAMIC_FORBIDDEN' | 'VS_KEYWORD_CLOSED' | 'VS_META_SCHEMA' | 'VS_NUMBER_DOMAIN' | 'VS_PATH_EXTENSION' | 'VS_RECURSION_PRODUCTIVE' | 'VS_REFERENCE_FORM' | 'VS_REFERENCE_RESOLUTION' | 'VS_REGEX_PORTABLE' | 'VS_RESOURCE_ID' | 'VS_VALUE_KIND';
|
|
2
|
+
export interface Diagnostic<out Code extends DiagnosticCode = DiagnosticCode> {
|
|
3
|
+
readonly code: Code;
|
|
4
|
+
readonly pointer: string;
|
|
5
|
+
readonly message: string;
|
|
6
|
+
readonly ref?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function diagnostic<const Code extends DiagnosticCode>(code: Code, pointer: string, message: string, ref?: string): Diagnostic<Code>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/** Exact field constraints available for independent scalar route validation. */
|
|
2
|
+
export function inputFieldNodes(program) {
|
|
3
|
+
const fields = new Map();
|
|
4
|
+
const visited = new Set();
|
|
5
|
+
let closed = false;
|
|
6
|
+
let unsupported = false;
|
|
7
|
+
const visit = (index) => {
|
|
8
|
+
if (visited.has(index))
|
|
9
|
+
return;
|
|
10
|
+
visited.add(index);
|
|
11
|
+
const node = program.nodes[index];
|
|
12
|
+
if (node === undefined ||
|
|
13
|
+
node.schema === null ||
|
|
14
|
+
typeof node.schema !== 'object' ||
|
|
15
|
+
Array.isArray(node.schema))
|
|
16
|
+
return;
|
|
17
|
+
const schema = node.schema;
|
|
18
|
+
if (schema.additionalProperties === false || schema.unevaluatedProperties === false)
|
|
19
|
+
closed = true;
|
|
20
|
+
if (schema.anyOf !== undefined || schema.oneOf !== undefined || schema.if !== undefined)
|
|
21
|
+
unsupported = true;
|
|
22
|
+
if (node.reference !== undefined)
|
|
23
|
+
visit(node.reference);
|
|
24
|
+
if (Array.isArray(schema.allOf)) {
|
|
25
|
+
schema.allOf.forEach((_, position) => {
|
|
26
|
+
const child = node.children[`allOf/${position}`];
|
|
27
|
+
if (child === undefined)
|
|
28
|
+
throw new TypeError('Compiled input allOf branch is absent.');
|
|
29
|
+
visit(child);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (schema.properties === null ||
|
|
33
|
+
typeof schema.properties !== 'object' ||
|
|
34
|
+
Array.isArray(schema.properties))
|
|
35
|
+
return;
|
|
36
|
+
for (const name of Object.keys(schema.properties)) {
|
|
37
|
+
const child = node.children[`properties/${escapePointer(name)}`];
|
|
38
|
+
if (child === undefined)
|
|
39
|
+
throw new TypeError(`Compiled input field ${name} is absent.`);
|
|
40
|
+
const constraints = fields.get(name) ?? new Set();
|
|
41
|
+
constraints.add(child);
|
|
42
|
+
fields.set(name, constraints);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
visit(program.root);
|
|
46
|
+
if (!closed || unsupported)
|
|
47
|
+
return undefined;
|
|
48
|
+
return Object.freeze(Object.fromEntries([...fields]
|
|
49
|
+
.sort(([left], [right]) => compare(left, right))
|
|
50
|
+
.map(([name, nodes]) => [
|
|
51
|
+
name,
|
|
52
|
+
Object.freeze([...nodes].sort((left, right) => left - right)),
|
|
53
|
+
])));
|
|
54
|
+
}
|
|
55
|
+
function escapePointer(value) {
|
|
56
|
+
return value.replaceAll('~', '~0').replaceAll('/', '~1');
|
|
57
|
+
}
|
|
58
|
+
function compare(left, right) {
|
|
59
|
+
return left < right ? -1 : left > right ? 1 : 0;
|
|
60
|
+
}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type { CompiledInstanceSchema } from '../
|
|
1
|
+
import type { CompiledInstanceSchema } from '../evaluate/types.js';
|
|
2
2
|
import type { ValueProgram } from './model.js';
|
|
3
3
|
/** Bind admitted portable indices to the canonical instance evaluator. */
|
|
4
4
|
export declare function loadValueProgram(program: ValueProgram): CompiledInstanceSchema;
|
|
5
|
-
//# sourceMappingURL=program.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { loadPattern } from '../regexp/matcher.js';
|
|
2
|
+
import { appendPointer } from '../syntax/pointer.js';
|
|
3
3
|
/** Bind admitted portable indices to the canonical instance evaluator. */
|
|
4
4
|
export function loadValueProgram(program) {
|
|
5
5
|
const resource = { key: 'compiled', schema: true, ownerOrigin: 'compiled' };
|
|
@@ -39,4 +39,3 @@ export function loadValueProgram(program) {
|
|
|
39
39
|
},
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=program.js.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Value as JsonValue } from '@astrale-os/kernel-dsl/value';
|
|
2
|
+
export type ScalarRange = readonly [minimum: number, maximum: number];
|
|
3
|
+
export interface PatternTransition {
|
|
4
|
+
readonly to: number;
|
|
5
|
+
readonly ranges: readonly ScalarRange[];
|
|
6
|
+
}
|
|
7
|
+
export interface PatternState {
|
|
8
|
+
readonly epsilon: readonly number[];
|
|
9
|
+
readonly transitions: readonly PatternTransition[];
|
|
10
|
+
readonly accepting?: true;
|
|
11
|
+
}
|
|
12
|
+
export interface Pattern {
|
|
13
|
+
readonly source: string;
|
|
14
|
+
readonly start: number;
|
|
15
|
+
readonly states: readonly PatternState[];
|
|
16
|
+
}
|
|
17
|
+
export interface ValueNode {
|
|
18
|
+
readonly schema: JsonValue;
|
|
19
|
+
readonly children: Readonly<Record<string, number>>;
|
|
20
|
+
readonly reference?: number;
|
|
21
|
+
}
|
|
22
|
+
/** Portable, JSON-safe evaluation program for one admitted ValueSchema. */
|
|
23
|
+
export interface ValueProgram {
|
|
24
|
+
readonly root: number;
|
|
25
|
+
readonly nodes: readonly ValueNode[];
|
|
26
|
+
readonly patterns: readonly Pattern[];
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -4,4 +4,3 @@ export declare function jsonEqual(left: JsonValue, right: JsonValue): boolean;
|
|
|
4
4
|
export declare function unique(values: readonly JsonValue[]): boolean;
|
|
5
5
|
/** Compare finite JSON numbers as their exact ECMAScript decimal spellings. */
|
|
6
6
|
export declare function isMultipleOf(value: number, divisor: number): boolean;
|
|
7
|
-
//# sourceMappingURL=assertions.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { equal, json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import { isValueObject as isJsonObject } from '../object.js';
|
|
2
|
+
import { isValueObject as isJsonObject } from '../model/object.js';
|
|
3
3
|
export function matchesType(input, value) {
|
|
4
4
|
switch (input) {
|
|
5
5
|
case 'null':
|
|
@@ -56,4 +56,3 @@ function decimalInteger(input) {
|
|
|
56
56
|
function powerOfTen(exponent) {
|
|
57
57
|
return 10n ** BigInt(exponent);
|
|
58
58
|
}
|
|
59
|
-
//# sourceMappingURL=assertions.js.map
|
|
@@ -2,4 +2,3 @@ import type { Value as JsonValue } from '@astrale-os/kernel-dsl/value';
|
|
|
2
2
|
import type { CompiledInstanceSchema, Evaluation } from './types.js';
|
|
3
3
|
/** Evaluate complete Draft 2020-12 acceptance without dynamic source generation. */
|
|
4
4
|
export declare function evaluateInstance(compiled: CompiledInstanceSchema, input: JsonValue): Evaluation;
|
|
5
|
-
//# sourceMappingURL=evaluator.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { isInstantValue } from '../instant.js';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { isInstantValue } from '../model/instant.js';
|
|
2
|
+
import { isValueObject as isJsonObject } from '../model/object.js';
|
|
3
|
+
import { appendPointer } from '../syntax/pointer.js';
|
|
4
4
|
import { isMultipleOf, jsonEqual, matchesType, unique } from './assertions.js';
|
|
5
5
|
import { evaluation, mergeAnnotations } from './types.js';
|
|
6
6
|
/** Evaluate complete Draft 2020-12 acceptance without dynamic source generation. */
|
|
@@ -359,4 +359,3 @@ function isSchema(input) {
|
|
|
359
359
|
function invalid(instancePointer, keyword, message) {
|
|
360
360
|
return { instancePointer, keyword, message };
|
|
361
361
|
}
|
|
362
|
-
//# sourceMappingURL=evaluator.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { JsonSchema } from '../model/schema.js';
|
|
2
|
+
import type { ValueSchemaRegistry } from '../reference/registry.js';
|
|
3
3
|
import type { CompiledInstanceSchema } from './types.js';
|
|
4
4
|
export type InstanceSchemaCompilation = {
|
|
5
5
|
readonly compiled: true;
|
|
@@ -11,4 +11,3 @@ export type InstanceSchemaCompilation = {
|
|
|
11
11
|
/** Prepare reference and linear-regexp state without generating executable source. */
|
|
12
12
|
export declare function prepareValueSchema(schema: JsonSchema, registry: ValueSchemaRegistry, pointer: string): InstanceSchemaCompilation;
|
|
13
13
|
export declare function childKey(pointer: string): string;
|
|
14
|
-
//# sourceMappingURL=preparation.d.ts.map
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { isValueObject as isJsonObject } from '../model/object.js';
|
|
2
|
+
import { collectResourceClosure, locationKey, } from '../reference/closure.js';
|
|
3
|
+
import { indexRegistry } from '../reference/registry.index.js';
|
|
4
4
|
import { compilePattern } from '../regexp/compile.js';
|
|
5
5
|
import { loadPattern } from '../regexp/matcher.js';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { appendPointer } from '../syntax/pointer.js';
|
|
7
|
+
import { walkSchema } from '../syntax/walk.js';
|
|
8
8
|
/** Prepare reference and linear-regexp state without generating executable source. */
|
|
9
9
|
export function prepareValueSchema(schema, registry, pointer) {
|
|
10
10
|
const indexed = indexRegistry(registry, pointer);
|
|
11
11
|
if (indexed.diagnostics.length > 0)
|
|
12
12
|
return failed(indexed.diagnostics);
|
|
13
|
-
const
|
|
14
|
-
const closure = collectResourceClosure(schema, namedType === undefined ? 'callable-input' : 'named-type', indexed.index, pointer, namedType);
|
|
13
|
+
const closure = collectResourceClosure(schema, 'callable-input', indexed.index, pointer);
|
|
15
14
|
if (closure.diagnostics.length > 0)
|
|
16
15
|
return failed(closure.diagnostics);
|
|
17
16
|
const locations = new Map();
|
|
@@ -134,4 +133,3 @@ function failed(diagnostics) {
|
|
|
134
133
|
message: diagnostics.map(({ code, message }) => `${code}: ${message}`).join('; '),
|
|
135
134
|
};
|
|
136
135
|
}
|
|
137
|
-
//# sourceMappingURL=preparation.js.map
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { loadValueProgram } from '../compile/load.js';
|
|
2
|
+
import { validateCanonicalJsonDomain } from '../profile/json.validate.js';
|
|
3
|
+
import { evaluateInstance } from './evaluator.js';
|
|
4
|
+
export function validateValueProgram(program, input, roots = [program.root]) {
|
|
5
|
+
const canonical = validateCanonicalJsonDomain(input, '');
|
|
6
|
+
if (canonical.length > 0)
|
|
7
|
+
return canonical;
|
|
8
|
+
return roots.flatMap((root) => {
|
|
9
|
+
const result = evaluateInstance(loadValueProgram({ ...program, root }), input);
|
|
10
|
+
return result.failures.map((failure) => ({
|
|
11
|
+
code: 'VALUE_SCHEMA_INSTANCE_INVALID',
|
|
12
|
+
pointer: failure.instancePointer,
|
|
13
|
+
message: `Value does not satisfy its complete V1 schema at ${failure.keyword}: ${failure.message}`,
|
|
14
|
+
}));
|
|
15
|
+
});
|
|
16
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Value as JsonValue } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import type { ValueProgram } from '
|
|
2
|
+
import type { ValueProgram } from '../compile/model.js';
|
|
3
|
+
import type { JsonSchema } from '../model/schema.js';
|
|
4
|
+
import type { ResolvedAddressReference, SchemaResource } from '../reference/references.js';
|
|
3
5
|
import type { IRegexpMatcher } from '../regexp/matcher.js';
|
|
4
|
-
import type { ResolvedSchemaReference, SchemaResource } from '../resources/references.js';
|
|
5
|
-
import type { JsonSchema } from '../schema.js';
|
|
6
6
|
export interface InstanceFailure {
|
|
7
7
|
readonly instancePointer: string;
|
|
8
8
|
readonly keyword: string;
|
|
@@ -17,7 +17,7 @@ export interface SchemaLocation {
|
|
|
17
17
|
export interface CompiledInstanceSchema {
|
|
18
18
|
readonly root: SchemaLocation;
|
|
19
19
|
readonly locations: ReadonlyMap<string, SchemaLocation>;
|
|
20
|
-
readonly resolutions: ReadonlyMap<string,
|
|
20
|
+
readonly resolutions: ReadonlyMap<string, ResolvedAddressReference>;
|
|
21
21
|
program(): ValueProgram;
|
|
22
22
|
child(location: SchemaLocation, keyword: string, member?: string | number): SchemaLocation;
|
|
23
23
|
reference(location: SchemaLocation): SchemaLocation | undefined;
|
|
@@ -34,4 +34,3 @@ export interface Evaluation {
|
|
|
34
34
|
export type Instance = JsonValue;
|
|
35
35
|
export declare function evaluation(failures?: readonly InstanceFailure[], properties?: ReadonlySet<string>, items?: ReadonlySet<number>): Evaluation;
|
|
36
36
|
export declare function mergeAnnotations(targetProperties: Set<string>, targetItems: Set<number>, source: Pick<Evaluation, 'properties' | 'items'>): void;
|
|
37
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Value as JsonValue } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
2
|
+
import type { Diagnostic } from '../../validation/diagnostic.js';
|
|
3
|
+
import type { JsonSchema } from '../model/schema.js';
|
|
4
|
+
import type { ValueSchemaRegistry } from '../reference/registry.js';
|
|
5
5
|
/**
|
|
6
6
|
* Validate one complete portable value with the admitted V1 Draft 2020-12 profile.
|
|
7
7
|
*
|
|
@@ -9,5 +9,4 @@ import type { JsonSchema } from './schema.js';
|
|
|
9
9
|
* resolution or dynamic source generation, and every admitted I-Regexp executes through RE2JS.
|
|
10
10
|
* `format` remains annotation-only; the graph NodePath codec performs its separate locator check.
|
|
11
11
|
*/
|
|
12
|
-
export declare function validateJsonInstance(schema: JsonSchema, value: JsonValue, registry: ValueSchemaRegistry, pointer?: string):
|
|
13
|
-
//# sourceMappingURL=instance.validate.d.ts.map
|
|
12
|
+
export declare function validateJsonInstance(schema: JsonSchema, value: JsonValue, registry: ValueSchemaRegistry, pointer?: string): Diagnostic[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { diagnostic } from '
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { diagnostic } from '../../validation/diagnostic.js';
|
|
2
|
+
import { validateCanonicalJsonDomain } from '../profile/json.validate.js';
|
|
3
|
+
import { evaluateInstance } from './evaluator.js';
|
|
4
|
+
import { prepareValueSchema } from './preparation.js';
|
|
5
5
|
const validatorCache = new WeakMap();
|
|
6
6
|
/**
|
|
7
7
|
* Validate one complete portable value with the admitted V1 Draft 2020-12 profile.
|
|
@@ -41,4 +41,3 @@ function preparedInstanceValidator(schema, registry, pointer) {
|
|
|
41
41
|
bySchema.set(schema, prepared);
|
|
42
42
|
return prepared;
|
|
43
43
|
}
|
|
44
|
-
//# sourceMappingURL=instance.validate.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Complete V1 inline value language. Named Type Definitions do not exist. */
|
|
2
|
+
export type { JsonSchema as ValueSchema, JsonSchemaObject as ValueSchemaObject, PathAnnotation, PropertyObjectSchema, ValueSchemaContext, } from './model/schema.js';
|
|
3
|
+
export { JSON_SCHEMA_DIALECT, VALUE_SCHEMA_DIALECT, VALUE_SCHEMA_VOCABULARY, } from './model/schema.js';
|
|
4
|
+
export { instant, isInstantValue } from './model/instant.js';
|
|
5
|
+
export { classifyOrdering, type OrderingKind } from './ordering.js';
|
|
6
|
+
export { canonicalizeValueSchema } from './profile/canonicalize.js';
|
|
7
|
+
export { validateValueSchema } from './profile/validate.js';
|
|
8
|
+
export { validateJsonInstance } from './evaluate/validate.js';
|
|
9
|
+
export { prepareValueSchema, type InstanceSchemaCompilation } from './evaluate/preparation.js';
|
|
10
|
+
export type { ValueProgram } from './compile/model.js';
|
|
11
|
+
export type { ValueSchemaRegistry, ValueSchemaDomainRegistry } from './reference/registry.js';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Complete V1 inline value language. Named Type Definitions do not exist. */
|
|
2
|
+
export { JSON_SCHEMA_DIALECT, VALUE_SCHEMA_DIALECT, VALUE_SCHEMA_VOCABULARY, } from './model/schema.js';
|
|
3
|
+
export { instant, isInstantValue } from './model/instant.js';
|
|
4
|
+
export { classifyOrdering } from './ordering.js';
|
|
5
|
+
export { canonicalizeValueSchema } from './profile/canonicalize.js';
|
|
6
|
+
export { validateValueSchema } from './profile/validate.js';
|
|
7
|
+
export { validateJsonInstance } from './evaluate/validate.js';
|
|
8
|
+
export { prepareValueSchema } from './evaluate/preparation.js';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/** Exact portable UTC millisecond Instant used by the V1 value-schema dialect. */
|
|
2
|
+
/** Canonical value-language annotation for an Instant string. */
|
|
2
3
|
export declare const INSTANT_VALUE_KIND: 'instant';
|
|
3
4
|
export declare const instant: Readonly<{
|
|
4
5
|
readonly type: 'string';
|
|
@@ -6,4 +7,3 @@ export declare const instant: Readonly<{
|
|
|
6
7
|
}>;
|
|
7
8
|
/** Test the exact proleptic-Gregorian V1 Instant lexical and calendar domain. */
|
|
8
9
|
export declare function isInstantValue(input: unknown): input is string;
|
|
9
|
-
//# sourceMappingURL=instant.d.ts.map
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/** Exact portable UTC millisecond Instant used by the V1 value-schema dialect. */
|
|
2
|
+
/** Canonical value-language annotation for an Instant string. */
|
|
2
3
|
export const INSTANT_VALUE_KIND = 'instant';
|
|
3
4
|
export const instant = Object.freeze({
|
|
4
5
|
type: 'string',
|
|
@@ -34,4 +35,3 @@ function daysInMonth(year, month) {
|
|
|
34
35
|
function isLeapYear(year) {
|
|
35
36
|
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
36
37
|
}
|
|
37
|
-
//# sourceMappingURL=instant.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Object as ValueObject, Value } from '@astrale-os/kernel-dsl/value';
|
|
2
2
|
/** Internal shape refinement for values that have already crossed portable-value admission. */
|
|
3
|
+
/** Return whether an unknown value is a portable JSON object. */
|
|
3
4
|
export declare function isValueObject(value: unknown): value is ValueObject;
|
|
4
5
|
export declare function isValueObject(value: Value): value is ValueObject;
|
|
5
|
-
//# sourceMappingURL=object.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Object as JsonObject, Value as JsonValue } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ClassRef } from '../../../addressing/index.js';
|
|
3
3
|
/** Standard dialect on which the Astrale value-schema dialect is based. */
|
|
4
4
|
export declare const JSON_SCHEMA_DIALECT: 'https://json-schema.org/draft/2020-12/schema';
|
|
5
5
|
/** Required V1 dialect for every embedded Astrale value schema. */
|
|
@@ -19,8 +19,7 @@ export interface PropertyObjectSchema extends JsonSchemaObject {
|
|
|
19
19
|
export interface PathAnnotation {
|
|
20
20
|
readonly target: 'node';
|
|
21
21
|
readonly cardinality: 'one';
|
|
22
|
-
readonly accepts: readonly
|
|
22
|
+
readonly accepts: readonly ClassRef[];
|
|
23
23
|
}
|
|
24
|
-
export declare const VALUE_SCHEMA_CONTEXTS: readonly ['
|
|
24
|
+
export declare const VALUE_SCHEMA_CONTEXTS: readonly ['property-facet', 'callable-input', 'callable-output'];
|
|
25
25
|
export type ValueSchemaContext = (typeof VALUE_SCHEMA_CONTEXTS)[number];
|
|
26
|
-
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -5,9 +5,7 @@ export const VALUE_SCHEMA_DIALECT = 'https://schemas.astrale.ai/dsl/v1/value-sch
|
|
|
5
5
|
/** Required vocabulary carried by the V1 value-schema dialect. */
|
|
6
6
|
export const VALUE_SCHEMA_VOCABULARY = 'https://schemas.astrale.ai/dsl/v1/value-schema/vocabulary';
|
|
7
7
|
export const VALUE_SCHEMA_CONTEXTS = [
|
|
8
|
-
'named-type',
|
|
9
8
|
'property-facet',
|
|
10
9
|
'callable-input',
|
|
11
10
|
'callable-output',
|
|
12
11
|
];
|
|
13
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { JsonSchema } from './schema.js';
|
|
1
|
+
import type { ValueProgram } from './compile/model.js';
|
|
2
|
+
import type { JsonSchema } from './model/schema.js';
|
|
3
|
+
import type { ValueSchemaRegistry } from './reference/registry.js';
|
|
3
4
|
export type OrderingKind = 'boolean' | 'number' | 'string' | 'instant';
|
|
4
5
|
/**
|
|
5
6
|
* Classify a schema only when every value it can admit belongs to one sortable scalar domain.
|
|
@@ -8,4 +9,5 @@ export type OrderingKind = 'boolean' | 'number' | 'string' | 'instant';
|
|
|
8
9
|
* instead of guessing from annotations, examples, formats, or current data.
|
|
9
10
|
*/
|
|
10
11
|
export declare function classifyOrdering(contract: JsonSchema, registry: ValueSchemaRegistry): OrderingKind | undefined;
|
|
11
|
-
|
|
12
|
+
/** Recompute the scalar ordering classification from one admitted portable value program. */
|
|
13
|
+
export declare function classifyValueProgramOrdering(program: ValueProgram): OrderingKind | undefined;
|