@astrale-os/kernel-dsl 0.2.0-beta.1 → 0.2.0-beta.10
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 +117 -0
- package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -5
- package/dist/v1/builder/class/authoring.d.ts +367 -0
- package/dist/v1/builder/class/authoring.js +134 -0
- package/dist/v1/builder/class/property.d.ts +52 -0
- package/dist/v1/builder/class/property.js +49 -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 +17 -21
- package/dist/v1/builder/lowering/class.d.ts +22 -0
- package/dist/v1/builder/lowering/class.js +129 -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} +37 -50
- 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} +4 -5
- package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +5 -6
- 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 +364 -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} +2 -3
- 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 +881 -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 +1091 -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/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 +4 -0
- package/dist/v1/compiled/loader/load.js +141 -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 +200 -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 +12 -5
- package/dist/v1/index.js +5 -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 +36 -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/language/class/model/edge.d.ts +38 -0
- package/dist/v1/language/class/model/edge.js +1 -0
- package/dist/v1/language/class/model/property.d.ts +18 -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 +123 -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 +23 -0
- package/dist/v1/language/index.js +1 -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 +5 -28
- 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/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 +2 -3
- package/dist/v1/language/value/profile/meta-schema.compiled.d.ts +78 -0
- package/dist/v1/language/value/profile/meta-schema.compiled.js +2079 -0
- package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
- package/dist/v1/language/value/profile/meta-schema.js +19 -0
- 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/{builder → language/value/syntax}/full-match.js +6 -7
- 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 +12 -12
- 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} +9 -10
- package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +16 -16
- package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -28
- 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 -191
- 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} +120 -123
- 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 +207 -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 +36 -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 +208 -0
- package/dist/v1/schema/validation/core.d.ts +5 -0
- package/dist/v1/schema/{core/validate.js → validation/core.js} +65 -38
- 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 +1 -2
- package/dist/v1/schema/validation/domain.structure.js +98 -93
- 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 +16 -9
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
- package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +33 -72
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
- package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +25 -36
- 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 +63 -14
- 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 -81
- 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 -26
- package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
- package/dist/v1/builder/compiler/definition.js +0 -154
- 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 -22
- 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 -105
- package/dist/v1/builder/definition.d.ts.map +0 -1
- package/dist/v1/builder/definition.js +0 -97
- 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.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 -23
- package/dist/v1/builder/property.d.ts.map +0 -1
- package/dist/v1/builder/property.js +0 -12
- 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 +0 -22
- 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 -11
- 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 -152
- 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.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 +0 -25
- 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 -219
- 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,20 @@
|
|
|
1
|
+
import type { ClassRef, CoreRef, DefinitionBase } from '../../../addressing/index.js';
|
|
2
|
+
import type { PropertyValues } from '../../class/property-values.js';
|
|
3
|
+
export interface DomainEndpointRef {
|
|
4
|
+
readonly kind: 'domain';
|
|
5
|
+
}
|
|
6
|
+
export type CoreEndpointRef = CoreRef | DomainEndpointRef;
|
|
7
|
+
export interface CoreDefinition extends DefinitionBase<CoreRef> {
|
|
8
|
+
readonly class: ClassRef;
|
|
9
|
+
readonly properties: PropertyValues;
|
|
10
|
+
}
|
|
11
|
+
export interface CoreEdge {
|
|
12
|
+
readonly class: ClassRef;
|
|
13
|
+
readonly source: CoreEndpointRef;
|
|
14
|
+
readonly target: CoreEndpointRef;
|
|
15
|
+
readonly properties: PropertyValues;
|
|
16
|
+
}
|
|
17
|
+
export interface CoreContent {
|
|
18
|
+
readonly nodes: Readonly<Record<string, CoreDefinition>>;
|
|
19
|
+
readonly edges: readonly CoreEdge[];
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { DefinitionKey } from '../../addressing/index.js';
|
|
2
|
+
import type { PropertyValues } from '../class/property-values.js';
|
|
3
|
+
import type { ResolvedClass } from '../class/resolved.js';
|
|
4
|
+
import type { CoreDefinition } from './model/core.js';
|
|
5
|
+
export interface ResolvedCoreDefinition {
|
|
6
|
+
readonly ref: CoreDefinition['ref'];
|
|
7
|
+
readonly key: DefinitionKey<string, 'core'>;
|
|
8
|
+
readonly class: ResolvedClass<'node'>;
|
|
9
|
+
readonly properties: PropertyValues;
|
|
10
|
+
readonly definition: CoreDefinition;
|
|
11
|
+
}
|
|
12
|
+
export interface ResolvedDomainEndpoint {
|
|
13
|
+
readonly kind: 'domain';
|
|
14
|
+
readonly origin: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ResolvedCoreEdge {
|
|
17
|
+
readonly class: ResolvedClass<'edge'>;
|
|
18
|
+
readonly source: ResolvedCoreDefinition | ResolvedDomainEndpoint;
|
|
19
|
+
readonly target: ResolvedCoreDefinition | ResolvedDomainEndpoint;
|
|
20
|
+
readonly properties: PropertyValues;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { FunctionDefinition } from './callable/model/callable.js';
|
|
2
|
+
import type { ClassDefinition } from './class/model/class.js';
|
|
3
|
+
import type { CoreDefinition } from './core/model/core.js';
|
|
4
|
+
import type { PolicyDefinition } from './policy/model/policy.js';
|
|
5
|
+
import type { ViewDefinition } from './view/model/view.js';
|
|
6
|
+
/** Every named V1 product Definition. Property and Method remain Class-owned members. */
|
|
7
|
+
export type Definition = ClassDefinition | FunctionDefinition | PolicyDefinition | ViewDefinition | CoreDefinition;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type { ClassRef, CoreRef, DefinitionBase, DefinitionKey, DefinitionRef, FunctionRef, MethodKey, PolicyRef, PropertyKey, ViewRef, } from '../addressing/index.js';
|
|
2
|
+
export type { Value as PropertyValue } from '@astrale-os/kernel-dsl/value';
|
|
3
|
+
export type { JsonSchema as ValueSchema, JsonSchemaObject as ValueSchemaObject, } from './value/model/schema.js';
|
|
4
|
+
export type { OrderingKind } from './value/ordering.js';
|
|
5
|
+
export type * from './callable/model/callable.js';
|
|
6
|
+
export type * from './callable/resolved.js';
|
|
7
|
+
export type * from './class/model/class.js';
|
|
8
|
+
export type { DataDefinition, DataFacet, MediaType } from './class/model/data.js';
|
|
9
|
+
export type * from './class/model/edge.js';
|
|
10
|
+
export type * from './class/model/property.js';
|
|
11
|
+
export type * from './class/resolved.js';
|
|
12
|
+
export type * from './class/facets.js';
|
|
13
|
+
export { PropertyValues } from './class/property-values.js';
|
|
14
|
+
export type { PropertyValuesOperations } from './class/property-values.js';
|
|
15
|
+
export type * from './core/model/core.js';
|
|
16
|
+
export type * from './core/resolved.js';
|
|
17
|
+
export type { Definition } from './definition.js';
|
|
18
|
+
export type { ResolvedDefinition, ResolvedDefinitionOf } from './resolved.js';
|
|
19
|
+
export type { Diagnostic, DiagnosticCode } from './validation/diagnostic.js';
|
|
20
|
+
export type * from './policy/model/policy.js';
|
|
21
|
+
export type * from './policy/resolved.js';
|
|
22
|
+
export type * from './view/model/view.js';
|
|
23
|
+
export type * from './view/resolved.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { PropertyValues } from './class/property-values.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ClassRef } from '
|
|
2
|
-
import type { PolicyEdgePattern, PolicyPatternExpression, PolicyPatternTerm } from '../
|
|
1
|
+
import type { ClassRef } from '../../../addressing/index.js';
|
|
2
|
+
import type { PolicyEdgePattern, PolicyPatternExpression, PolicyPatternTerm } from '../model/policy.js';
|
|
3
3
|
export interface PatternBranch {
|
|
4
4
|
readonly edges: readonly PatternEdgeUse[];
|
|
5
5
|
readonly variables: ReadonlyMap<string, ClassRef>;
|
|
@@ -15,7 +15,5 @@ export declare function branchesOf(pattern: PolicyPatternExpression, namespace:
|
|
|
15
15
|
export declare function branchProduct(children: readonly (readonly PatternBranch[])[]): readonly PatternBranch[];
|
|
16
16
|
export declare function capBranches(values: readonly PatternBranch[]): readonly PatternBranch[];
|
|
17
17
|
export declare function isConnected(branch: PatternBranch): boolean;
|
|
18
|
-
/** A normalized branch targets either one object or both authored Edge endpoints, never a mixture. */
|
|
19
18
|
export declare function targetMode(branch: PatternBranch): PolicyTargetMode | undefined;
|
|
20
19
|
export declare function termKey(term: PolicyPatternTerm, namespace: string): string;
|
|
21
|
-
//# sourceMappingURL=branches.d.ts.map
|
|
@@ -39,7 +39,6 @@ export function isConnected(branch) {
|
|
|
39
39
|
const root = union.find('subject');
|
|
40
40
|
return [...vertices].every((vertex) => union.find(vertex) === root);
|
|
41
41
|
}
|
|
42
|
-
/** A normalized branch targets either one object or both authored Edge endpoints, never a mixture. */
|
|
43
42
|
export function targetMode(branch) {
|
|
44
43
|
let object = false;
|
|
45
44
|
let source = false;
|
|
@@ -61,15 +60,8 @@ export function termKey(term, namespace) {
|
|
|
61
60
|
return term.kind === 'variable' ? variableKey(namespace, term.id) : term.kind;
|
|
62
61
|
}
|
|
63
62
|
function branchesForNode(pattern, namespace, variables) {
|
|
64
|
-
if (
|
|
65
|
-
return [
|
|
66
|
-
{
|
|
67
|
-
edges: [{ pattern, namespace }],
|
|
68
|
-
variables,
|
|
69
|
-
requiredVariables: new Set(),
|
|
70
|
-
namespace,
|
|
71
|
-
},
|
|
72
|
-
];
|
|
63
|
+
if ('source' in pattern) {
|
|
64
|
+
return [{ edges: [{ pattern, namespace }], variables, requiredVariables: new Set(), namespace }];
|
|
73
65
|
}
|
|
74
66
|
if ('exists' in pattern) {
|
|
75
67
|
const direct = new Set(pattern.exists.nodes.map((node) => variableKey(namespace, node.variable.id)));
|
|
@@ -78,17 +70,11 @@ function branchesForNode(pattern, namespace, variables) {
|
|
|
78
70
|
requiredVariables: new Set([...branch.requiredVariables, ...direct]),
|
|
79
71
|
}));
|
|
80
72
|
}
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
return key === 'allOf' ? branchProduct(children) : capBranches(children.flat());
|
|
73
|
+
const children = ('allOf' in pattern ? pattern.allOf : pattern.anyOf).map((child) => branchesForNode(child, namespace, variables));
|
|
74
|
+
return 'allOf' in pattern ? branchProduct(children) : capBranches(children.flat());
|
|
84
75
|
}
|
|
85
76
|
function emptyBranch() {
|
|
86
|
-
return {
|
|
87
|
-
edges: [],
|
|
88
|
-
variables: new Map(),
|
|
89
|
-
requiredVariables: new Set(),
|
|
90
|
-
namespace: '$',
|
|
91
|
-
};
|
|
77
|
+
return { edges: [], variables: new Map(), requiredVariables: new Set(), namespace: '$' };
|
|
92
78
|
}
|
|
93
79
|
function mergeBranches(left, right) {
|
|
94
80
|
return {
|
|
@@ -118,14 +104,6 @@ function collectVariableClasses(pattern, namespace) {
|
|
|
118
104
|
function variableKey(namespace, id) {
|
|
119
105
|
return `variable:${namespace}:${id}`;
|
|
120
106
|
}
|
|
121
|
-
function patternOperands(value) {
|
|
122
|
-
return 'allOf' in value
|
|
123
|
-
? { key: 'allOf', values: value.allOf }
|
|
124
|
-
: { key: 'anyOf', values: value.anyOf };
|
|
125
|
-
}
|
|
126
|
-
function isEdge(value) {
|
|
127
|
-
return 'source' in value;
|
|
128
|
-
}
|
|
129
107
|
class UnionFind {
|
|
130
108
|
#parents = new Map();
|
|
131
109
|
constructor(values) {
|
|
@@ -152,4 +130,3 @@ class UnionFind {
|
|
|
152
130
|
this.#parents.set(b, a);
|
|
153
131
|
}
|
|
154
132
|
}
|
|
155
|
-
//# sourceMappingURL=branches.js.map
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type { PolicyCheckExpression } from '../
|
|
2
|
-
import type { PolicyValidationContext } from './context.js';
|
|
1
|
+
import type { PolicyCheckExpression } from '../model/policy.js';
|
|
3
2
|
export declare const MAX_PATTERN_DEPTH = 4;
|
|
4
3
|
export declare const MAX_BRANCHES = 8;
|
|
5
4
|
export declare const MAX_VARIABLES = 4;
|
|
@@ -14,6 +13,4 @@ export interface CheckMeasure {
|
|
|
14
13
|
readonly branches: number;
|
|
15
14
|
readonly leaves: number;
|
|
16
15
|
}
|
|
17
|
-
export declare function validatePolicyBudgets(context: PolicyValidationContext): void;
|
|
18
16
|
export declare function measureChecks(expression: PolicyCheckExpression): CheckMeasure;
|
|
19
|
-
//# sourceMappingURL=budgets.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export const MAX_PATTERN_DEPTH = 4;
|
|
2
|
+
export const MAX_BRANCHES = 8;
|
|
3
|
+
export const MAX_VARIABLES = 4;
|
|
4
|
+
export const MAX_EDGES = 6;
|
|
5
|
+
export const MAX_REPEAT = 3;
|
|
6
|
+
export const MAX_DOMAINS = 4;
|
|
7
|
+
export const MAX_CHECK_DEPTH = 4;
|
|
8
|
+
export const MAX_CHECK_LEAVES = 8;
|
|
9
|
+
export const BRANCH_OVERFLOW = MAX_BRANCHES + 1;
|
|
10
|
+
export function measureChecks(expression) {
|
|
11
|
+
if ('check' in expression)
|
|
12
|
+
return { depth: 1, branches: 1, leaves: 1 };
|
|
13
|
+
const children = ('allOf' in expression ? expression.allOf : expression.anyOf).map(measureChecks);
|
|
14
|
+
const branches = 'allOf' in expression
|
|
15
|
+
? children.reduce((value, child) => saturatingProduct(value, child.branches), 1)
|
|
16
|
+
: children.reduce((value, child) => Math.min(BRANCH_OVERFLOW, value + child.branches), 0);
|
|
17
|
+
return {
|
|
18
|
+
depth: 1 + Math.max(0, ...children.map((child) => child.depth)),
|
|
19
|
+
branches,
|
|
20
|
+
leaves: children.reduce((value, child) => value + child.leaves, 0),
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function saturatingProduct(left, right) {
|
|
24
|
+
return Math.min(BRANCH_OVERFLOW, left * right);
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './normalization/normalize.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CoreRef, ClassRef,
|
|
1
|
+
import type { CoreRef, ClassRef, FunctionRef, PolicyRef, ViewRef, DefinitionBase } from '../../../addressing/index.js';
|
|
2
2
|
export type PolicyPatternTerm = {
|
|
3
3
|
readonly kind: 'subject';
|
|
4
4
|
} | {
|
|
@@ -38,18 +38,19 @@ export type PolicyPatternExpression = PolicyEdgePattern | {
|
|
|
38
38
|
} | {
|
|
39
39
|
readonly anyOf: readonly PolicyPatternExpression[];
|
|
40
40
|
};
|
|
41
|
-
export type
|
|
42
|
-
readonly description?: string;
|
|
41
|
+
export type PolicyExpression = {
|
|
43
42
|
readonly match: PolicyPatternExpression;
|
|
44
43
|
} | {
|
|
45
|
-
readonly description?: string;
|
|
46
44
|
readonly allOf: readonly PolicyRef[];
|
|
47
45
|
} | {
|
|
48
|
-
readonly description?: string;
|
|
49
46
|
readonly anyOf: readonly PolicyRef[];
|
|
50
47
|
};
|
|
48
|
+
export interface PolicyDefinition extends DefinitionBase<PolicyRef> {
|
|
49
|
+
readonly expression: PolicyExpression;
|
|
50
|
+
readonly description?: string;
|
|
51
|
+
}
|
|
51
52
|
/** Local Domain members whose installed projection resolves through one exact member Path. */
|
|
52
|
-
export type PolicyObjectRef =
|
|
53
|
+
export type PolicyObjectRef = ClassRef | FunctionRef | PolicyRef | ViewRef | CoreRef;
|
|
53
54
|
export type PolicyCheckObject = {
|
|
54
55
|
readonly kind: 'self';
|
|
55
56
|
} | {
|
|
@@ -74,4 +75,3 @@ export type PolicyCheckExpression<Policy = PolicyRef, Object = PolicyCheckObject
|
|
|
74
75
|
...PolicyCheckExpression<Policy, Object>[]
|
|
75
76
|
];
|
|
76
77
|
};
|
|
77
|
-
//# sourceMappingURL=ast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PolicyCheckExpression, PolicyExpression, PolicyPatternExpression } from '../model/policy.js';
|
|
2
|
+
export declare function normalizePolicyExpression(value: PolicyExpression): PolicyExpression;
|
|
3
|
+
export declare function normalizePolicyPattern(value: PolicyPatternExpression): PolicyPatternExpression;
|
|
4
|
+
export declare function normalizePolicyChecks(value: PolicyCheckExpression): PolicyCheckExpression;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { json } from '@astrale-os/kernel-dsl/value';
|
|
2
|
-
import {
|
|
2
|
+
import { definitionRefIndex, compareDefinitionRefs } from '../../../addressing/ordering.js';
|
|
3
3
|
const textEncoder = new TextEncoder();
|
|
4
|
-
export function
|
|
4
|
+
export function normalizePolicyExpression(value) {
|
|
5
5
|
if ('match' in value) {
|
|
6
|
-
return
|
|
6
|
+
return { match: normalizePolicyPattern(value.match) };
|
|
7
7
|
}
|
|
8
8
|
if ('allOf' in value) {
|
|
9
|
-
return
|
|
9
|
+
return { allOf: uniqueRefs(value.allOf) };
|
|
10
10
|
}
|
|
11
|
-
return
|
|
11
|
+
return { anyOf: uniqueRefs(value.anyOf) };
|
|
12
12
|
}
|
|
13
13
|
export function normalizePolicyPattern(value) {
|
|
14
14
|
const rewritten = rewriteVariables(value, canonicalVariableIds(value));
|
|
@@ -101,7 +101,7 @@ function canonicalVariableIds(value) {
|
|
|
101
101
|
function collectDeclarations(value, result) {
|
|
102
102
|
if ('exists' in value) {
|
|
103
103
|
for (const node of value.exists.nodes) {
|
|
104
|
-
result.set(node.variable.id,
|
|
104
|
+
result.set(node.variable.id, definitionRefIndex(node.class));
|
|
105
105
|
}
|
|
106
106
|
collectDeclarations(value.exists.where, result);
|
|
107
107
|
return;
|
|
@@ -116,10 +116,10 @@ function collectDeclarations(value, result) {
|
|
|
116
116
|
function collectUses(value, target, colors, result) {
|
|
117
117
|
if (isEdge(value)) {
|
|
118
118
|
if (value.source.kind === 'variable' && value.source.id === target) {
|
|
119
|
-
result.push(`s:${
|
|
119
|
+
result.push(`s:${definitionRefIndex(value.class)}:${termColor(value.target, colors)}`);
|
|
120
120
|
}
|
|
121
121
|
if (value.target.kind === 'variable' && value.target.id === target) {
|
|
122
|
-
result.push(`t:${
|
|
122
|
+
result.push(`t:${definitionRefIndex(value.class)}:${termColor(value.source, colors)}`);
|
|
123
123
|
}
|
|
124
124
|
return;
|
|
125
125
|
}
|
|
@@ -141,7 +141,7 @@ function collectFirstUseKeys(value, colors, result, prefix = '$') {
|
|
|
141
141
|
['target', value.target],
|
|
142
142
|
]) {
|
|
143
143
|
if (term.kind === 'variable') {
|
|
144
|
-
const key = `${prefix}:${
|
|
144
|
+
const key = `${prefix}:${definitionRefIndex(value.class)}:${position}`;
|
|
145
145
|
const current = result.get(term.id);
|
|
146
146
|
if (current === undefined || key < current)
|
|
147
147
|
result.set(term.id, key);
|
|
@@ -160,7 +160,7 @@ function collectFirstUseKeys(value, colors, result, prefix = '$') {
|
|
|
160
160
|
}
|
|
161
161
|
function patternSignature(value, colors) {
|
|
162
162
|
if (isEdge(value)) {
|
|
163
|
-
return `edge:${
|
|
163
|
+
return `edge:${definitionRefIndex(value.class)}:${termColor(value.source, colors)}:${termColor(value.target, colors)}:${value.repeat?.min ?? 1}:${value.repeat?.max ?? 1}`;
|
|
164
164
|
}
|
|
165
165
|
if ('exists' in value) {
|
|
166
166
|
return `exists:${value.exists.nodes
|
|
@@ -202,8 +202,8 @@ function rewriteTerm(value, ids) {
|
|
|
202
202
|
return value.kind === 'variable' ? { kind: 'variable', id: ids.get(value.id) ?? value.id } : value;
|
|
203
203
|
}
|
|
204
204
|
function uniqueRefs(values) {
|
|
205
|
-
const byKey = new Map(values.map((value) => [
|
|
206
|
-
return [...byKey.values()].sort(
|
|
205
|
+
const byKey = new Map(values.map((value) => [definitionRefIndex(value), value]));
|
|
206
|
+
return [...byKey.values()].sort(compareDefinitionRefs);
|
|
207
207
|
}
|
|
208
208
|
function uniqueJson(values) {
|
|
209
209
|
const byEncoding = new Map(values.map((value) => [json.serialize(value), value]));
|
|
@@ -221,10 +221,6 @@ function compareUtf8Bytes(left, right) {
|
|
|
221
221
|
}
|
|
222
222
|
return a.length - b.length;
|
|
223
223
|
}
|
|
224
|
-
function withDescription(source, value) {
|
|
225
|
-
return source.description === undefined ? value : { description: source.description, ...value };
|
|
226
|
-
}
|
|
227
224
|
function isEdge(value) {
|
|
228
225
|
return 'source' in value;
|
|
229
226
|
}
|
|
230
|
-
//# sourceMappingURL=normalize.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DefinitionKey, PolicyRef } from '../../addressing/index.js';
|
|
2
|
+
import type { PolicyDefinition } from './model/policy.js';
|
|
3
|
+
export interface ResolvedPolicy {
|
|
4
|
+
readonly ref: PolicyRef;
|
|
5
|
+
readonly key: DefinitionKey<string, 'policy'>;
|
|
6
|
+
readonly expression: PolicyDefinition['expression'];
|
|
7
|
+
readonly description?: PolicyDefinition['description'];
|
|
8
|
+
readonly definition: PolicyDefinition;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { DefinitionRef } from '../addressing/index.js';
|
|
2
|
+
import type { ResolvedFunction } from './callable/resolved.js';
|
|
3
|
+
import type { AnyResolvedClass } from './class/resolved.js';
|
|
4
|
+
import type { ResolvedCoreDefinition } from './core/resolved.js';
|
|
5
|
+
import type { ResolvedPolicy } from './policy/resolved.js';
|
|
6
|
+
import type { ResolvedView } from './view/resolved.js';
|
|
7
|
+
export type ResolvedDefinition = AnyResolvedClass | ResolvedFunction | ResolvedPolicy | ResolvedView | ResolvedCoreDefinition;
|
|
8
|
+
export type ResolvedDefinitionOf<Kind extends DefinitionRef['kind']> = Extract<ResolvedDefinition, {
|
|
9
|
+
readonly ref: DefinitionRef<Kind>;
|
|
10
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { CompiledInstanceSchema } from '../evaluate/types.js';
|
|
2
|
+
import type { ValueProgram } from './model.js';
|
|
3
|
+
/** Bind admitted portable indices to the canonical instance evaluator. */
|
|
4
|
+
export declare function loadValueProgram(program: ValueProgram): CompiledInstanceSchema;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { loadPattern } from '../regexp/matcher.js';
|
|
2
|
+
import { appendPointer } from '../syntax/pointer.js';
|
|
3
|
+
/** Bind admitted portable indices to the canonical instance evaluator. */
|
|
4
|
+
export function loadValueProgram(program) {
|
|
5
|
+
const resource = { key: 'compiled', schema: true, ownerOrigin: 'compiled' };
|
|
6
|
+
const locations = program.nodes.map((node, index) => ({
|
|
7
|
+
key: String(index),
|
|
8
|
+
pointer: '',
|
|
9
|
+
resource,
|
|
10
|
+
schema: node.schema,
|
|
11
|
+
}));
|
|
12
|
+
const patterns = new Map(program.patterns.map((pattern) => [pattern.source, loadPattern(pattern)]));
|
|
13
|
+
const root = locations[program.root];
|
|
14
|
+
if (root === undefined)
|
|
15
|
+
throw new TypeError('Compiled value program root is absent.');
|
|
16
|
+
return {
|
|
17
|
+
root,
|
|
18
|
+
locations: new Map(locations.map((location) => [location.key, location])),
|
|
19
|
+
resolutions: new Map(),
|
|
20
|
+
program: () => program,
|
|
21
|
+
child(location, keyword, member) {
|
|
22
|
+
const base = appendPointer('', keyword);
|
|
23
|
+
const key = (member === undefined ? base : appendPointer(base, member)).slice(1);
|
|
24
|
+
const index = program.nodes[Number(location.key)]?.children[key];
|
|
25
|
+
const child = index === undefined ? undefined : locations[index];
|
|
26
|
+
if (child === undefined)
|
|
27
|
+
throw new TypeError('Compiled value program child is absent.');
|
|
28
|
+
return child;
|
|
29
|
+
},
|
|
30
|
+
reference(location) {
|
|
31
|
+
const index = program.nodes[Number(location.key)]?.reference;
|
|
32
|
+
return index === undefined ? undefined : locations[index];
|
|
33
|
+
},
|
|
34
|
+
matcher(source) {
|
|
35
|
+
const matcher = patterns.get(source);
|
|
36
|
+
if (matcher === undefined)
|
|
37
|
+
throw new TypeError('Compiled value program pattern is absent.');
|
|
38
|
+
return matcher;
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
@@ -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,7 +1,6 @@
|
|
|
1
|
-
import { isInstantValue } from '../instant.js';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { locationKey } from '../resources/closure.js';
|
|
1
|
+
import { isInstantValue } from '../model/instant.js';
|
|
2
|
+
import { isValueObject as isJsonObject } from '../model/object.js';
|
|
3
|
+
import { appendPointer } from '../syntax/pointer.js';
|
|
5
4
|
import { isMultipleOf, jsonEqual, matchesType, unique } from './assertions.js';
|
|
6
5
|
import { evaluation, mergeAnnotations } from './types.js';
|
|
7
6
|
/** Evaluate complete Draft 2020-12 acceptance without dynamic source generation. */
|
|
@@ -45,13 +44,9 @@ class InstanceEvaluator {
|
|
|
45
44
|
failures.push(...result.failures);
|
|
46
45
|
};
|
|
47
46
|
if (Object.hasOwn(schema, '$ref')) {
|
|
48
|
-
const
|
|
49
|
-
if (resolved === undefined) {
|
|
50
|
-
throw new TypeError('Admitted value schema reference has no prepared resolution.');
|
|
51
|
-
}
|
|
52
|
-
const target = this.compiled.locations.get(locationKey(resolved.resource.key, resolved.pointer));
|
|
47
|
+
const target = this.compiled.reference(location);
|
|
53
48
|
if (target === undefined) {
|
|
54
|
-
throw new TypeError('
|
|
49
|
+
throw new TypeError('Admitted value schema reference has no prepared resolution.');
|
|
55
50
|
}
|
|
56
51
|
absorbSameLocation(this.evaluate(target, input, instancePointer));
|
|
57
52
|
}
|
|
@@ -352,13 +347,7 @@ class InstanceEvaluator {
|
|
|
352
347
|
}
|
|
353
348
|
}
|
|
354
349
|
child(parent, keyword, member) {
|
|
355
|
-
|
|
356
|
-
const pointer = member === undefined ? keywordPointer : appendPointer(keywordPointer, member);
|
|
357
|
-
const child = this.compiled.locations.get(locationKey(parent.resource.key, pointer));
|
|
358
|
-
if (child === undefined) {
|
|
359
|
-
throw new TypeError(`Admitted value schema child ${pointer} is absent from its closure.`);
|
|
360
|
-
}
|
|
361
|
-
return child;
|
|
350
|
+
return this.compiled.child(parent, keyword, member);
|
|
362
351
|
}
|
|
363
352
|
}
|
|
364
353
|
function schemaList(input) {
|
|
@@ -370,4 +359,3 @@ function isSchema(input) {
|
|
|
370
359
|
function invalid(instancePointer, keyword, message) {
|
|
371
360
|
return { instancePointer, keyword, message };
|
|
372
361
|
}
|
|
373
|
-
//# sourceMappingURL=evaluator.js.map
|
package/dist/v1/{schema/value/instance/compiler.d.ts → language/value/evaluate/preparation.d.ts}
RENAMED
|
@@ -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;
|
|
@@ -9,5 +9,5 @@ export type InstanceSchemaCompilation = {
|
|
|
9
9
|
readonly message: string;
|
|
10
10
|
};
|
|
11
11
|
/** Prepare reference and linear-regexp state without generating executable source. */
|
|
12
|
-
export declare function
|
|
13
|
-
|
|
12
|
+
export declare function prepareValueSchema(schema: JsonSchema, registry: ValueSchemaRegistry, pointer: string): InstanceSchemaCompilation;
|
|
13
|
+
export declare function childKey(pointer: string): string;
|