@primmel/primmel 1.3.1 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +40 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +112 -1
- package/dist/index.js.map +1 -1
- package/dist/src/check-allowlist.d.ts +56 -0
- package/dist/src/check-allowlist.d.ts.map +1 -0
- package/dist/src/check-allowlist.js +307 -0
- package/dist/src/check-allowlist.js.map +1 -0
- package/dist/src/check-rules.d.ts +17 -0
- package/dist/src/check-rules.d.ts.map +1 -0
- package/dist/src/check-rules.js +351 -0
- package/dist/src/check-rules.js.map +1 -0
- package/dist/src/check.d.ts +115 -0
- package/dist/src/check.d.ts.map +1 -0
- package/dist/src/check.js +4164 -0
- package/dist/src/check.js.map +1 -0
- package/dist/src/export/rdf-competency-questions.d.ts +11 -0
- package/dist/src/export/rdf-competency-questions.d.ts.map +1 -0
- package/dist/src/export/rdf-competency-questions.js +99 -0
- package/dist/src/export/rdf-competency-questions.js.map +1 -0
- package/dist/src/export/rdf-shapes.d.ts +3 -0
- package/dist/src/export/rdf-shapes.d.ts.map +1 -0
- package/dist/src/export/rdf-shapes.js +225 -0
- package/dist/src/export/rdf-shapes.js.map +1 -0
- package/dist/src/export/rdf-vocabulary.d.ts +125 -0
- package/dist/src/export/rdf-vocabulary.d.ts.map +1 -0
- package/dist/src/export/rdf-vocabulary.js +230 -0
- package/dist/src/export/rdf-vocabulary.js.map +1 -0
- package/dist/src/export/rdf.d.ts +92 -0
- package/dist/src/export/rdf.d.ts.map +1 -0
- package/dist/src/export/rdf.js +707 -0
- package/dist/src/export/rdf.js.map +1 -0
- package/dist/src/export/reqif.d.ts +81 -0
- package/dist/src/export/reqif.d.ts.map +1 -0
- package/dist/src/export/reqif.js +703 -0
- package/dist/src/export/reqif.js.map +1 -0
- package/dist/src/instance-resolution.d.ts +68 -0
- package/dist/src/instance-resolution.d.ts.map +1 -0
- package/dist/src/instance-resolution.js +239 -0
- package/dist/src/instance-resolution.js.map +1 -0
- package/dist/src/mapping-coverage.d.ts +220 -0
- package/dist/src/mapping-coverage.d.ts.map +1 -0
- package/dist/src/mapping-coverage.js +528 -0
- package/dist/src/mapping-coverage.js.map +1 -0
- package/dist/src/model-diff.d.ts +198 -0
- package/dist/src/model-diff.d.ts.map +1 -0
- package/dist/src/model-diff.js +914 -0
- package/dist/src/model-diff.js.map +1 -0
- package/dist/src/operational-state.d.ts +112 -0
- package/dist/src/operational-state.d.ts.map +1 -0
- package/dist/src/operational-state.js +162 -0
- package/dist/src/operational-state.js.map +1 -0
- package/dist/src/package-diff.d.ts +36 -0
- package/dist/src/package-diff.d.ts.map +1 -0
- package/dist/src/package-diff.js +104 -0
- package/dist/src/package-diff.js.map +1 -0
- package/dist/src/ser-des/config/acceptance.d.ts +10 -0
- package/dist/src/ser-des/config/acceptance.d.ts.map +1 -0
- package/dist/src/ser-des/config/acceptance.js +163 -0
- package/dist/src/ser-des/config/acceptance.js.map +1 -0
- package/dist/src/ser-des/config/activityArchetype.d.ts +5 -0
- package/dist/src/ser-des/config/activityArchetype.d.ts.map +1 -0
- package/dist/src/ser-des/config/activityArchetype.js +78 -0
- package/dist/src/ser-des/config/activityArchetype.js.map +1 -0
- package/dist/src/ser-des/config/artifact.d.ts +16 -0
- package/dist/src/ser-des/config/artifact.d.ts.map +1 -0
- package/dist/src/ser-des/config/artifact.js +392 -0
- package/dist/src/ser-des/config/artifact.js.map +1 -0
- package/dist/src/ser-des/config/calculation.d.ts.map +1 -1
- package/dist/src/ser-des/config/calculation.js +214 -12
- package/dist/src/ser-des/config/calculation.js.map +1 -1
- package/dist/src/ser-des/config/comment.d.ts +34 -0
- package/dist/src/ser-des/config/comment.d.ts.map +1 -0
- package/dist/src/ser-des/config/comment.js +121 -0
- package/dist/src/ser-des/config/comment.js.map +1 -0
- package/dist/src/ser-des/config/competenceKind.d.ts +8 -0
- package/dist/src/ser-des/config/competenceKind.d.ts.map +1 -0
- package/dist/src/ser-des/config/competenceKind.js +266 -0
- package/dist/src/ser-des/config/competenceKind.js.map +1 -0
- package/dist/src/ser-des/config/composition.d.ts +6 -0
- package/dist/src/ser-des/config/composition.d.ts.map +1 -0
- package/dist/src/ser-des/config/composition.js +165 -0
- package/dist/src/ser-des/config/composition.js.map +1 -0
- package/dist/src/ser-des/config/conformanceClass.d.ts +9 -0
- package/dist/src/ser-des/config/conformanceClass.d.ts.map +1 -0
- package/dist/src/ser-des/config/conformanceClass.js +128 -0
- package/dist/src/ser-des/config/conformanceClass.js.map +1 -0
- package/dist/src/ser-des/config/conformanceTest.d.ts +6 -0
- package/dist/src/ser-des/config/conformanceTest.d.ts.map +1 -0
- package/dist/src/ser-des/config/conformanceTest.js +929 -0
- package/dist/src/ser-des/config/conformanceTest.js.map +1 -0
- package/dist/src/ser-des/config/constraint.d.ts +5 -0
- package/dist/src/ser-des/config/constraint.d.ts.map +1 -0
- package/dist/src/ser-des/config/constraint.js +108 -0
- package/dist/src/ser-des/config/constraint.js.map +1 -0
- package/dist/src/ser-des/config/data.d.ts.map +1 -1
- package/dist/src/ser-des/config/data.js +105 -12
- package/dist/src/ser-des/config/data.js.map +1 -1
- package/dist/src/ser-des/config/design.d.ts +9 -0
- package/dist/src/ser-des/config/design.d.ts.map +1 -0
- package/dist/src/ser-des/config/design.js +847 -0
- package/dist/src/ser-des/config/design.js.map +1 -0
- package/dist/src/ser-des/config/discrepancyRecord.d.ts +5 -0
- package/dist/src/ser-des/config/discrepancyRecord.d.ts.map +1 -0
- package/dist/src/ser-des/config/discrepancyRecord.js +109 -0
- package/dist/src/ser-des/config/discrepancyRecord.js.map +1 -0
- package/dist/src/ser-des/config/dual.d.ts +9 -0
- package/dist/src/ser-des/config/dual.d.ts.map +1 -0
- package/dist/src/ser-des/config/dual.js +84 -0
- package/dist/src/ser-des/config/dual.js.map +1 -0
- package/dist/src/ser-des/config/field-parser.d.ts +92 -7
- package/dist/src/ser-des/config/field-parser.d.ts.map +1 -1
- package/dist/src/ser-des/config/field-parser.js +832 -29
- package/dist/src/ser-des/config/field-parser.js.map +1 -1
- package/dist/src/ser-des/config/form.d.ts.map +1 -1
- package/dist/src/ser-des/config/form.js +355 -134
- package/dist/src/ser-des/config/form.js.map +1 -1
- package/dist/src/ser-des/config/formulasUsed.d.ts +9 -0
- package/dist/src/ser-des/config/formulasUsed.d.ts.map +1 -0
- package/dist/src/ser-des/config/formulasUsed.js +126 -0
- package/dist/src/ser-des/config/formulasUsed.js.map +1 -0
- package/dist/src/ser-des/config/index.d.ts.map +1 -1
- package/dist/src/ser-des/config/index.js +180 -1
- package/dist/src/ser-des/config/index.js.map +1 -1
- package/dist/src/ser-des/config/instance.d.ts +22 -0
- package/dist/src/ser-des/config/instance.d.ts.map +1 -0
- package/dist/src/ser-des/config/instance.js +266 -0
- package/dist/src/ser-des/config/instance.js.map +1 -0
- package/dist/src/ser-des/config/invariant.d.ts +9 -0
- package/dist/src/ser-des/config/invariant.d.ts.map +1 -0
- package/dist/src/ser-des/config/invariant.js +143 -0
- package/dist/src/ser-des/config/invariant.js.map +1 -0
- package/dist/src/ser-des/config/mapProfile.d.ts.map +1 -1
- package/dist/src/ser-des/config/mapProfile.js +199 -14
- package/dist/src/ser-des/config/mapProfile.js.map +1 -1
- package/dist/src/ser-des/config/metadata.js +6 -6
- package/dist/src/ser-des/config/metadata.js.map +1 -1
- package/dist/src/ser-des/config/monitor.d.ts +9 -0
- package/dist/src/ser-des/config/monitor.d.ts.map +1 -0
- package/dist/src/ser-des/config/monitor.js +322 -0
- package/dist/src/ser-des/config/monitor.js.map +1 -0
- package/dist/src/ser-des/config/note.d.ts.map +1 -1
- package/dist/src/ser-des/config/note.js +16 -1
- package/dist/src/ser-des/config/note.js.map +1 -1
- package/dist/src/ser-des/config/packageManifest.d.ts +5 -0
- package/dist/src/ser-des/config/packageManifest.d.ts.map +1 -0
- package/dist/src/ser-des/config/packageManifest.js +349 -0
- package/dist/src/ser-des/config/packageManifest.js.map +1 -0
- package/dist/src/ser-des/config/passport.d.ts +9 -0
- package/dist/src/ser-des/config/passport.d.ts.map +1 -0
- package/dist/src/ser-des/config/passport.js +191 -0
- package/dist/src/ser-des/config/passport.js.map +1 -0
- package/dist/src/ser-des/config/process.d.ts +5 -3
- package/dist/src/ser-des/config/process.d.ts.map +1 -1
- package/dist/src/ser-des/config/process.js +915 -8
- package/dist/src/ser-des/config/process.js.map +1 -1
- package/dist/src/ser-des/config/quantity.d.ts +21 -0
- package/dist/src/ser-des/config/quantity.d.ts.map +1 -0
- package/dist/src/ser-des/config/quantity.js +114 -0
- package/dist/src/ser-des/config/quantity.js.map +1 -0
- package/dist/src/ser-des/config/quantityRegister.d.ts +9 -0
- package/dist/src/ser-des/config/quantityRegister.d.ts.map +1 -0
- package/dist/src/ser-des/config/quantityRegister.js +202 -0
- package/dist/src/ser-des/config/quantityRegister.js.map +1 -0
- package/dist/src/ser-des/config/reference.d.ts.map +1 -1
- package/dist/src/ser-des/config/reference.js +6 -0
- package/dist/src/ser-des/config/reference.js.map +1 -1
- package/dist/src/ser-des/config/referenceMaterial.d.ts +5 -0
- package/dist/src/ser-des/config/referenceMaterial.d.ts.map +1 -0
- package/dist/src/ser-des/config/referenceMaterial.js +296 -0
- package/dist/src/ser-des/config/referenceMaterial.js.map +1 -0
- package/dist/src/ser-des/config/requirement.d.ts +16 -0
- package/dist/src/ser-des/config/requirement.d.ts.map +1 -0
- package/dist/src/ser-des/config/requirement.js +579 -0
- package/dist/src/ser-des/config/requirement.js.map +1 -0
- package/dist/src/ser-des/config/role.d.ts.map +1 -1
- package/dist/src/ser-des/config/role.js +12 -0
- package/dist/src/ser-des/config/role.js.map +1 -1
- package/dist/src/ser-des/config/series.d.ts +9 -0
- package/dist/src/ser-des/config/series.d.ts.map +1 -0
- package/dist/src/ser-des/config/series.js +121 -0
- package/dist/src/ser-des/config/series.js.map +1 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.d.ts +11 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.d.ts.map +1 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.js +83 -0
- package/dist/src/ser-des/config/sourceDiscrepancy.js.map +1 -0
- package/dist/src/ser-des/config/stateMachine.d.ts.map +1 -1
- package/dist/src/ser-des/config/stateMachine.js +189 -38
- package/dist/src/ser-des/config/stateMachine.js.map +1 -1
- package/dist/src/ser-des/config/subform.d.ts.map +1 -1
- package/dist/src/ser-des/config/subform.js +25 -33
- package/dist/src/ser-des/config/subform.js.map +1 -1
- package/dist/src/ser-des/config/subject.d.ts +58 -0
- package/dist/src/ser-des/config/subject.d.ts.map +1 -0
- package/dist/src/ser-des/config/subject.js +2093 -0
- package/dist/src/ser-des/config/subject.js.map +1 -0
- package/dist/src/ser-des/config/symbol.d.ts.map +1 -1
- package/dist/src/ser-des/config/symbol.js +130 -6
- package/dist/src/ser-des/config/symbol.js.map +1 -1
- package/dist/src/ser-des/config/table.d.ts.map +1 -1
- package/dist/src/ser-des/config/table.js +373 -7
- package/dist/src/ser-des/config/table.js.map +1 -1
- package/dist/src/ser-des/config/term.d.ts.map +1 -1
- package/dist/src/ser-des/config/term.js +107 -0
- package/dist/src/ser-des/config/term.js.map +1 -1
- package/dist/src/ser-des/config/testPointSet.d.ts +5 -0
- package/dist/src/ser-des/config/testPointSet.d.ts.map +1 -0
- package/dist/src/ser-des/config/testPointSet.js +199 -0
- package/dist/src/ser-des/config/testPointSet.js.map +1 -0
- package/dist/src/ser-des/config/testSequence.d.ts +9 -0
- package/dist/src/ser-des/config/testSequence.d.ts.map +1 -0
- package/dist/src/ser-des/config/testSequence.js +206 -0
- package/dist/src/ser-des/config/testSequence.js.map +1 -0
- package/dist/src/ser-des/config/text.d.ts +5 -0
- package/dist/src/ser-des/config/text.d.ts.map +1 -0
- package/dist/src/ser-des/config/text.js +106 -0
- package/dist/src/ser-des/config/text.js.map +1 -0
- package/dist/src/ser-des/config/twin.d.ts +31 -0
- package/dist/src/ser-des/config/twin.d.ts.map +1 -0
- package/dist/src/ser-des/config/twin.js +362 -0
- package/dist/src/ser-des/config/twin.js.map +1 -0
- package/dist/src/ser-des/config/verdict.d.ts +5 -0
- package/dist/src/ser-des/config/verdict.d.ts.map +1 -0
- package/dist/src/ser-des/config/verdict.js +159 -0
- package/dist/src/ser-des/config/verdict.js.map +1 -0
- package/dist/src/ser-des/config/viewProfile.d.ts.map +1 -1
- package/dist/src/ser-des/config/viewProfile.js +7 -0
- package/dist/src/ser-des/config/viewProfile.js.map +1 -1
- package/dist/src/ser-des/includes.d.ts.map +1 -1
- package/dist/src/ser-des/includes.js +10 -10
- package/dist/src/ser-des/includes.js.map +1 -1
- package/dist/src/ser-des/index.d.ts +12 -0
- package/dist/src/ser-des/index.d.ts.map +1 -1
- package/dist/src/ser-des/index.js +42 -0
- package/dist/src/ser-des/index.js.map +1 -1
- package/dist/src/ser-des/package.d.ts +53 -0
- package/dist/src/ser-des/package.d.ts.map +1 -0
- package/dist/src/ser-des/package.js +404 -0
- package/dist/src/ser-des/package.js.map +1 -0
- package/dist/src/ser-des/parse-block.d.ts.map +1 -1
- package/dist/src/ser-des/parse-block.js +7 -1
- package/dist/src/ser-des/parse-block.js.map +1 -1
- package/dist/src/ser-des/parse.d.ts.map +1 -1
- package/dist/src/ser-des/parse.js +45 -0
- package/dist/src/ser-des/parse.js.map +1 -1
- package/dist/src/ser-des/prm.d.ts +53 -0
- package/dist/src/ser-des/prm.d.ts.map +1 -0
- package/dist/src/ser-des/prm.js +257 -0
- package/dist/src/ser-des/prm.js.map +1 -0
- package/dist/src/ser-des/resolve.d.ts.map +1 -1
- package/dist/src/ser-des/resolve.js +1 -0
- package/dist/src/ser-des/resolve.js.map +1 -1
- package/dist/src/ser-des/tokenize.d.ts +11 -0
- package/dist/src/ser-des/tokenize.d.ts.map +1 -1
- package/dist/src/ser-des/tokenize.js +28 -1
- package/dist/src/ser-des/tokenize.js.map +1 -1
- package/dist/src/ser-des/types.d.ts +56 -1
- package/dist/src/ser-des/types.d.ts.map +1 -1
- package/dist/src/spelling.d.ts +35 -0
- package/dist/src/spelling.d.ts.map +1 -0
- package/dist/src/spelling.js +140 -0
- package/dist/src/spelling.js.map +1 -0
- package/dist/src/text-coverage.d.ts +164 -0
- package/dist/src/text-coverage.d.ts.map +1 -0
- package/dist/src/text-coverage.js +679 -0
- package/dist/src/text-coverage.js.map +1 -0
- package/dist/src/time.d.ts +55 -0
- package/dist/src/time.d.ts.map +1 -0
- package/dist/src/time.js +223 -0
- package/dist/src/time.js.map +1 -0
- package/dist/src/type-expr.d.ts +31 -0
- package/dist/src/type-expr.d.ts.map +1 -0
- package/dist/src/type-expr.js +110 -0
- package/dist/src/type-expr.js.map +1 -0
- package/dist/src/types/Acceptance.d.ts +31 -0
- package/dist/src/types/Acceptance.d.ts.map +1 -0
- package/dist/src/types/Acceptance.js +12 -0
- package/dist/src/types/Acceptance.js.map +1 -0
- package/dist/src/types/ActivityArchetype.d.ts +14 -0
- package/dist/src/types/ActivityArchetype.d.ts.map +1 -0
- package/dist/src/types/ActivityArchetype.js +17 -0
- package/dist/src/types/ActivityArchetype.js.map +1 -0
- package/dist/src/types/Artifact.d.ts +117 -0
- package/dist/src/types/Artifact.d.ts.map +1 -0
- package/dist/src/types/Artifact.js +35 -0
- package/dist/src/types/Artifact.js.map +1 -0
- package/dist/src/types/Calculation.d.ts +49 -0
- package/dist/src/types/Calculation.d.ts.map +1 -1
- package/dist/src/types/Comment.d.ts +23 -0
- package/dist/src/types/Comment.d.ts.map +1 -0
- package/dist/src/types/Comment.js +3 -0
- package/dist/src/types/Comment.js.map +1 -0
- package/dist/src/types/CompetenceKind.d.ts +70 -0
- package/dist/src/types/CompetenceKind.d.ts.map +1 -0
- package/dist/src/types/CompetenceKind.js +3 -0
- package/dist/src/types/CompetenceKind.js.map +1 -0
- package/dist/src/types/Composition.d.ts +80 -0
- package/dist/src/types/Composition.d.ts.map +1 -0
- package/dist/src/types/Composition.js +44 -0
- package/dist/src/types/Composition.js.map +1 -0
- package/dist/src/types/ConformanceClass.d.ts +22 -0
- package/dist/src/types/ConformanceClass.d.ts.map +1 -0
- package/dist/src/types/ConformanceClass.js +7 -0
- package/dist/src/types/ConformanceClass.js.map +1 -0
- package/dist/src/types/ConformanceTest.d.ts +206 -0
- package/dist/src/types/ConformanceTest.d.ts.map +1 -0
- package/dist/src/types/ConformanceTest.js +3 -0
- package/dist/src/types/ConformanceTest.js.map +1 -0
- package/dist/src/types/Constraint.d.ts +34 -0
- package/dist/src/types/Constraint.d.ts.map +1 -0
- package/dist/src/types/Constraint.js +3 -0
- package/dist/src/types/Constraint.js.map +1 -0
- package/dist/src/types/Design.d.ts +147 -0
- package/dist/src/types/Design.d.ts.map +1 -0
- package/dist/src/types/Design.js +10 -0
- package/dist/src/types/Design.js.map +1 -0
- package/dist/src/types/DiscrepancyRecord.d.ts +42 -0
- package/dist/src/types/DiscrepancyRecord.d.ts.map +1 -0
- package/dist/src/types/DiscrepancyRecord.js +3 -0
- package/dist/src/types/DiscrepancyRecord.js.map +1 -0
- package/dist/src/types/Form.d.ts +127 -1
- package/dist/src/types/Form.d.ts.map +1 -1
- package/dist/src/types/FormulasUsed.d.ts +95 -0
- package/dist/src/types/FormulasUsed.d.ts.map +1 -0
- package/dist/src/types/FormulasUsed.js +64 -0
- package/dist/src/types/FormulasUsed.js.map +1 -0
- package/dist/src/types/Instance.d.ts +105 -0
- package/dist/src/types/Instance.d.ts.map +1 -0
- package/dist/src/types/Instance.js +40 -0
- package/dist/src/types/Instance.js.map +1 -0
- package/dist/src/types/Invariant.d.ts +82 -0
- package/dist/src/types/Invariant.d.ts.map +1 -0
- package/dist/src/types/Invariant.js +50 -0
- package/dist/src/types/Invariant.js.map +1 -0
- package/dist/src/types/MapProfile.d.ts +36 -1
- package/dist/src/types/MapProfile.d.ts.map +1 -1
- package/dist/src/types/Monitor.d.ts +144 -0
- package/dist/src/types/Monitor.d.ts.map +1 -0
- package/dist/src/types/Monitor.js +74 -0
- package/dist/src/types/Monitor.js.map +1 -0
- package/dist/src/types/Note.d.ts +4 -1
- package/dist/src/types/Note.d.ts.map +1 -1
- package/dist/src/types/Package.d.ts +161 -0
- package/dist/src/types/Package.d.ts.map +1 -0
- package/dist/src/types/Package.js +3 -0
- package/dist/src/types/Package.js.map +1 -0
- package/dist/src/types/Passport.d.ts +125 -0
- package/dist/src/types/Passport.d.ts.map +1 -0
- package/dist/src/types/Passport.js +84 -0
- package/dist/src/types/Passport.js.map +1 -0
- package/dist/src/types/Quantity.d.ts +99 -0
- package/dist/src/types/Quantity.d.ts.map +1 -0
- package/dist/src/types/Quantity.js +24 -0
- package/dist/src/types/Quantity.js.map +1 -0
- package/dist/src/types/Reference.d.ts +2 -0
- package/dist/src/types/Reference.d.ts.map +1 -1
- package/dist/src/types/ReferenceMaterial.d.ts +53 -0
- package/dist/src/types/ReferenceMaterial.d.ts.map +1 -0
- package/dist/src/types/ReferenceMaterial.js +14 -0
- package/dist/src/types/ReferenceMaterial.js.map +1 -0
- package/dist/src/types/Requirement.d.ts +111 -0
- package/dist/src/types/Requirement.d.ts.map +1 -0
- package/dist/src/types/Requirement.js +10 -0
- package/dist/src/types/Requirement.js.map +1 -0
- package/dist/src/types/Role.d.ts +4 -0
- package/dist/src/types/Role.d.ts.map +1 -1
- package/dist/src/types/Series.d.ts +31 -0
- package/dist/src/types/Series.d.ts.map +1 -0
- package/dist/src/types/Series.js +14 -0
- package/dist/src/types/Series.js.map +1 -0
- package/dist/src/types/SourceDiscrepancy.d.ts +21 -0
- package/dist/src/types/SourceDiscrepancy.d.ts.map +1 -0
- package/dist/src/types/SourceDiscrepancy.js +13 -0
- package/dist/src/types/SourceDiscrepancy.js.map +1 -0
- package/dist/src/types/Standard.d.ts +68 -0
- package/dist/src/types/Standard.d.ts.map +1 -1
- package/dist/src/types/StateMachine.d.ts +43 -0
- package/dist/src/types/StateMachine.d.ts.map +1 -1
- package/dist/src/types/StateMachine.js +7 -0
- package/dist/src/types/StateMachine.js.map +1 -1
- package/dist/src/types/Subject.d.ts +432 -0
- package/dist/src/types/Subject.d.ts.map +1 -0
- package/dist/src/types/Subject.js +13 -0
- package/dist/src/types/Subject.js.map +1 -0
- package/dist/src/types/Symbol.d.ts +31 -1
- package/dist/src/types/Symbol.d.ts.map +1 -1
- package/dist/src/types/Table.d.ts +43 -0
- package/dist/src/types/Table.d.ts.map +1 -1
- package/dist/src/types/Term.d.ts +29 -0
- package/dist/src/types/Term.d.ts.map +1 -1
- package/dist/src/types/TestPointSet.d.ts +33 -0
- package/dist/src/types/TestPointSet.d.ts.map +1 -0
- package/dist/src/types/TestPointSet.js +11 -0
- package/dist/src/types/TestPointSet.js.map +1 -0
- package/dist/src/types/TestSequence.d.ts +105 -0
- package/dist/src/types/TestSequence.d.ts.map +1 -0
- package/dist/src/types/TestSequence.js +65 -0
- package/dist/src/types/TestSequence.js.map +1 -0
- package/dist/src/types/Text.d.ts +21 -0
- package/dist/src/types/Text.d.ts.map +1 -0
- package/dist/src/types/Text.js +38 -0
- package/dist/src/types/Text.js.map +1 -0
- package/dist/src/types/Time.d.ts +43 -0
- package/dist/src/types/Time.d.ts.map +1 -0
- package/dist/src/types/Time.js +14 -0
- package/dist/src/types/Time.js.map +1 -0
- package/dist/src/types/Twin.d.ts +155 -0
- package/dist/src/types/Twin.d.ts.map +1 -0
- package/dist/src/types/Twin.js +102 -0
- package/dist/src/types/Twin.js.map +1 -0
- package/dist/src/types/Verdict.d.ts +40 -0
- package/dist/src/types/Verdict.d.ts.map +1 -0
- package/dist/src/types/Verdict.js +14 -0
- package/dist/src/types/Verdict.js.map +1 -0
- package/dist/src/types/ViewProfile.d.ts +6 -0
- package/dist/src/types/ViewProfile.d.ts.map +1 -1
- package/dist/src/types/data.d.ts +27 -0
- package/dist/src/types/data.d.ts.map +1 -1
- package/dist/src/types/process.d.ts +231 -0
- package/dist/src/types/process.d.ts.map +1 -1
- package/dist-browser/index.mjs +6696 -663
- package/dist-cli/primmel.mjs +21453 -0
- package/package.json +61 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-coverage.js","sourceRoot":"","sources":["../../src/text-coverage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { EditionPin, ValidityWindow } from './types/Time';
|
|
2
|
+
/** ISO 8601 calendar date with REAL calendar validation (leap years). */
|
|
3
|
+
export declare function isDate(s: string): boolean;
|
|
4
|
+
/** ISO 8601 date-time (calendar + 24h clock, optional zone). */
|
|
5
|
+
export declare function isDateTime(s: string): boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Parse an ISO 8601 date/datetime to MILLISECONDS since the epoch, for
|
|
8
|
+
* instant comparison. A bare date reads as midnight UTC at the START of
|
|
9
|
+
* that day; a zone-less datetime reads as UTC. Returns null when the
|
|
10
|
+
* value is neither a valid date nor datetime — the caller's format check
|
|
11
|
+
* (isDate/isDateTime) owns the error report. Compare with this, never
|
|
12
|
+
* lexicographically: a mixed date/datetime pair ('2021-01-01' vs
|
|
13
|
+
* '2021-01-01T00:00:00Z') is the SAME instant, and string order says
|
|
14
|
+
* otherwise.
|
|
15
|
+
*/
|
|
16
|
+
export declare function timeInstantMs(s: string): number | null;
|
|
17
|
+
/**
|
|
18
|
+
* ISO 8601 duration. A bare "P" (or "PT") is NOT a duration — at least
|
|
19
|
+
* one component is required, and the week form never combines with
|
|
20
|
+
* calendar components (ISO 8601-1:2019, 5.5.3).
|
|
21
|
+
*/
|
|
22
|
+
export declare function isDuration(s: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Parse a freshness window to MILLISECONDS — the runtime form of a serve
|
|
25
|
+
* binding's `fresh_within` (TODO.roadmap/32). Two accepted shapes:
|
|
26
|
+
* - the shorthand: `500ms`, `5s`, `1min`, `1h`, `1d`;
|
|
27
|
+
* - an ISO 8601 duration restricted to FIXED-length components (D/W/T
|
|
28
|
+
* parts — `PT5S`, `PT1M`, `P1D`, `P1W`). Calendar-relative components
|
|
29
|
+
* (years, months) are NOT a fixed window and parse as null: a
|
|
30
|
+
* freshness window must be an exact age bound (§14.5's "how old a
|
|
31
|
+
* value may be before it stops meaning anything").
|
|
32
|
+
* Returns null when the window is absent or unparseable (the linter's C63
|
|
33
|
+
* reports the authoring error; the runtime never guesses).
|
|
34
|
+
*/
|
|
35
|
+
export declare function parseFreshnessWindow(s: string): number | null;
|
|
36
|
+
/**
|
|
37
|
+
* ISO 8601 interval: `start/end`, `start/duration`, or `duration/end`
|
|
38
|
+
* (start/end are dates or date-times). When both bounds are dates or
|
|
39
|
+
* date-times, end must not be before start.
|
|
40
|
+
*/
|
|
41
|
+
export declare function isPeriod(s: string): boolean;
|
|
42
|
+
/** Validate one time-typed value by primitive name; unknown names pass. */
|
|
43
|
+
export declare function isValidTimeValue(primitive: 'date' | 'datetime' | 'duration' | 'period', value: string): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* A validity window holds when both bounds are dates/date-times and the
|
|
46
|
+
* end is not before the start ("currently valid" is a computed predicate,
|
|
47
|
+
* never a flag — doctrine §6.6). Returns an error message, or null.
|
|
48
|
+
*/
|
|
49
|
+
export declare function checkValidityWindow(w: ValidityWindow): string | null;
|
|
50
|
+
/**
|
|
51
|
+
* Edition pins (INV-8): normalize a definitionVersions map into a sorted
|
|
52
|
+
* pin list (deterministic emission in test reports).
|
|
53
|
+
*/
|
|
54
|
+
export declare function editionPins(map: Record<string, string>): EditionPin[];
|
|
55
|
+
//# sourceMappingURL=time.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/time.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAgB/D,yEAAyE;AACzE,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAWzC;AAED,gEAAgE;AAChE,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAY7C;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA0BtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAW7C;AAkBD;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA0B7D;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAgB3C;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,EACtD,KAAK,EAAE,MAAM,GACZ,OAAO,CAWT;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAiBpE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU,EAAE,CAIrE"}
|
package/dist/src/time.js
ADDED
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
3
|
+
// Time primitives (TODO.roadmap/06; doctrine §6.6): parse/validate for
|
|
4
|
+
// `date`, `datetime`, `duration`, `period`, plus the validity-window and
|
|
5
|
+
// edition-pin helpers.
|
|
6
|
+
//
|
|
7
|
+
// The linter (C35 time-format) checks timer-event recurrence periods
|
|
8
|
+
// against isDuration — closing task 02's deferred format check (C15
|
|
9
|
+
// checks presence only) — and instance values against the time-typed
|
|
10
|
+
// attribute definitions (value_type date | datetime | duration | period).
|
|
11
|
+
//
|
|
12
|
+
// Pure functions only — no fs, no runtime state.
|
|
13
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.isDate = isDate;
|
|
16
|
+
exports.isDateTime = isDateTime;
|
|
17
|
+
exports.timeInstantMs = timeInstantMs;
|
|
18
|
+
exports.isDuration = isDuration;
|
|
19
|
+
exports.parseFreshnessWindow = parseFreshnessWindow;
|
|
20
|
+
exports.isPeriod = isPeriod;
|
|
21
|
+
exports.isValidTimeValue = isValidTimeValue;
|
|
22
|
+
exports.checkValidityWindow = checkValidityWindow;
|
|
23
|
+
exports.editionPins = editionPins;
|
|
24
|
+
const DATE = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
25
|
+
const DATETIME = /^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})(?::(\d{2})(?:[.,]\d+)?)?(Z|[+-]\d{2}:?\d{2})?$/;
|
|
26
|
+
// ISO 8601 duration: PnW, or PnYnMnD with an optional TnHnMnS part. The
|
|
27
|
+
// designators must be in order; each number may carry a decimal fraction.
|
|
28
|
+
const DURATION = /^P(?:(\d+(?:[.,]\d+)?)Y)?(?:(\d+(?:[.,]\d+)?)M)?(?:(\d+(?:[.,]\d+)?)D)?(?:T(?:(\d+(?:[.,]\d+)?)H)?(?:(\d+(?:[.,]\d+)?)M)?(?:(\d+(?:[.,]\d+)?)S)?)?(?:(\d+(?:[.,]\d+)?)W)?$/;
|
|
29
|
+
function daysInMonth(year, month) {
|
|
30
|
+
// month is 1-based; Date rolls over, so day 0 of month+1 is the last
|
|
31
|
+
// day of the month.
|
|
32
|
+
return new Date(Date.UTC(year, month, 0)).getUTCDate();
|
|
33
|
+
}
|
|
34
|
+
/** ISO 8601 calendar date with REAL calendar validation (leap years). */
|
|
35
|
+
function isDate(s) {
|
|
36
|
+
const m = DATE.exec(s);
|
|
37
|
+
if (!m) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
const year = Number(m[1]);
|
|
41
|
+
const month = Number(m[2]);
|
|
42
|
+
const day = Number(m[3]);
|
|
43
|
+
return (month >= 1 && month <= 12 && day >= 1 && day <= daysInMonth(year, month));
|
|
44
|
+
}
|
|
45
|
+
/** ISO 8601 date-time (calendar + 24h clock, optional zone). */
|
|
46
|
+
function isDateTime(s) {
|
|
47
|
+
const m = DATETIME.exec(s);
|
|
48
|
+
if (!m) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
if (!isDate(m.slice(1, 4).join('-'))) {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
54
|
+
const hour = Number(m[4]);
|
|
55
|
+
const minute = Number(m[5]);
|
|
56
|
+
const second = m[6] === undefined ? 0 : Number(m[6]);
|
|
57
|
+
return hour <= 23 && minute <= 59 && second <= 60; // 60: leap second
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Parse an ISO 8601 date/datetime to MILLISECONDS since the epoch, for
|
|
61
|
+
* instant comparison. A bare date reads as midnight UTC at the START of
|
|
62
|
+
* that day; a zone-less datetime reads as UTC. Returns null when the
|
|
63
|
+
* value is neither a valid date nor datetime — the caller's format check
|
|
64
|
+
* (isDate/isDateTime) owns the error report. Compare with this, never
|
|
65
|
+
* lexicographically: a mixed date/datetime pair ('2021-01-01' vs
|
|
66
|
+
* '2021-01-01T00:00:00Z') is the SAME instant, and string order says
|
|
67
|
+
* otherwise.
|
|
68
|
+
*/
|
|
69
|
+
function timeInstantMs(s) {
|
|
70
|
+
if (isDate(s)) {
|
|
71
|
+
const m = DATE.exec(s);
|
|
72
|
+
return Date.UTC(Number(m[1]), Number(m[2]) - 1, Number(m[3]));
|
|
73
|
+
}
|
|
74
|
+
if (!isDateTime(s)) {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
const m = DATETIME.exec(s);
|
|
78
|
+
let ms = Date.UTC(Number(m[1]), Number(m[2]) - 1, Number(m[3]), Number(m[4]), Number(m[5]), m[6] === undefined ? 0 : Number(m[6]));
|
|
79
|
+
const zone = m[7];
|
|
80
|
+
if (zone && zone !== 'Z') {
|
|
81
|
+
const zm = /^([+-])(\d{2}):?(\d{2})$/.exec(zone);
|
|
82
|
+
if (zm) {
|
|
83
|
+
const offset = (Number(zm[2]) * 60 + Number(zm[3])) * 60_000;
|
|
84
|
+
ms += zm[1] === '+' ? -offset : offset;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
return ms;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* ISO 8601 duration. A bare "P" (or "PT") is NOT a duration — at least
|
|
91
|
+
* one component is required, and the week form never combines with
|
|
92
|
+
* calendar components (ISO 8601-1:2019, 5.5.3).
|
|
93
|
+
*/
|
|
94
|
+
function isDuration(s) {
|
|
95
|
+
const m = DURATION.exec(s);
|
|
96
|
+
if (!m) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
const components = m.slice(1).filter(x => x !== undefined);
|
|
100
|
+
if (components.length === 0) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
// Week form is exclusive.
|
|
104
|
+
return m[7] === undefined || components.length === 1;
|
|
105
|
+
}
|
|
106
|
+
// ── freshness windows (TODO.roadmap/32, doctrine ch. 14 §14.4–14.5) ──
|
|
107
|
+
/**
|
|
108
|
+
* The shorthand freshness-window form: `<n><unit>` with unit ms | s | min
|
|
109
|
+
* | h | d (the doctrine's own idiom — `fresh_within 5s`, `every 1h`).
|
|
110
|
+
*/
|
|
111
|
+
const FRESHNESS_SHORTHAND = /^(\d+(?:\.\d+)?)(ms|min|s|h|d)$/;
|
|
112
|
+
const SHORTHAND_MILLIS = {
|
|
113
|
+
ms: 1,
|
|
114
|
+
s: 1000,
|
|
115
|
+
min: 60_000,
|
|
116
|
+
h: 3_600_000,
|
|
117
|
+
d: 86_400_000,
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* Parse a freshness window to MILLISECONDS — the runtime form of a serve
|
|
121
|
+
* binding's `fresh_within` (TODO.roadmap/32). Two accepted shapes:
|
|
122
|
+
* - the shorthand: `500ms`, `5s`, `1min`, `1h`, `1d`;
|
|
123
|
+
* - an ISO 8601 duration restricted to FIXED-length components (D/W/T
|
|
124
|
+
* parts — `PT5S`, `PT1M`, `P1D`, `P1W`). Calendar-relative components
|
|
125
|
+
* (years, months) are NOT a fixed window and parse as null: a
|
|
126
|
+
* freshness window must be an exact age bound (§14.5's "how old a
|
|
127
|
+
* value may be before it stops meaning anything").
|
|
128
|
+
* Returns null when the window is absent or unparseable (the linter's C63
|
|
129
|
+
* reports the authoring error; the runtime never guesses).
|
|
130
|
+
*/
|
|
131
|
+
function parseFreshnessWindow(s) {
|
|
132
|
+
if (!s) {
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
const short = FRESHNESS_SHORTHAND.exec(s.trim());
|
|
136
|
+
if (short) {
|
|
137
|
+
return Number(short[1]) * SHORTHAND_MILLIS[short[2]];
|
|
138
|
+
}
|
|
139
|
+
const m = DURATION.exec(s.trim());
|
|
140
|
+
if (!m) {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
// Groups: [_, Y, M, D, TH, TM, TS, W] — calendar-relative components
|
|
144
|
+
// (years, months) are not a fixed window: rejected.
|
|
145
|
+
if (m[1] !== undefined || m[2] !== undefined) {
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
const num = (x) => x === undefined ? 0 : Number(x.replace(',', '.'));
|
|
149
|
+
const millis = num(m[7]) * 7 * 86_400_000 +
|
|
150
|
+
num(m[3]) * 86_400_000 +
|
|
151
|
+
num(m[4]) * 3_600_000 +
|
|
152
|
+
num(m[5]) * 60_000 +
|
|
153
|
+
num(m[6]) * 1000;
|
|
154
|
+
return millis > 0 ? millis : null;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* ISO 8601 interval: `start/end`, `start/duration`, or `duration/end`
|
|
158
|
+
* (start/end are dates or date-times). When both bounds are dates or
|
|
159
|
+
* date-times, end must not be before start.
|
|
160
|
+
*/
|
|
161
|
+
function isPeriod(s) {
|
|
162
|
+
const parts = s.split('/');
|
|
163
|
+
if (parts.length !== 2) {
|
|
164
|
+
return false;
|
|
165
|
+
}
|
|
166
|
+
const [a, b] = parts;
|
|
167
|
+
const aDate = isDate(a) || isDateTime(a);
|
|
168
|
+
const bDate = isDate(b) || isDateTime(b);
|
|
169
|
+
if (aDate && bDate) {
|
|
170
|
+
// ISO lexicographic order agrees with chronological order here.
|
|
171
|
+
return a <= b;
|
|
172
|
+
}
|
|
173
|
+
if (aDate && isDuration(b)) {
|
|
174
|
+
return true;
|
|
175
|
+
}
|
|
176
|
+
return isDuration(a) && bDate;
|
|
177
|
+
}
|
|
178
|
+
/** Validate one time-typed value by primitive name; unknown names pass. */
|
|
179
|
+
function isValidTimeValue(primitive, value) {
|
|
180
|
+
switch (primitive) {
|
|
181
|
+
case 'date':
|
|
182
|
+
return isDate(value);
|
|
183
|
+
case 'datetime':
|
|
184
|
+
return isDateTime(value);
|
|
185
|
+
case 'duration':
|
|
186
|
+
return isDuration(value);
|
|
187
|
+
case 'period':
|
|
188
|
+
return isPeriod(value);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* A validity window holds when both bounds are dates/date-times and the
|
|
193
|
+
* end is not before the start ("currently valid" is a computed predicate,
|
|
194
|
+
* never a flag — doctrine §6.6). Returns an error message, or null.
|
|
195
|
+
*/
|
|
196
|
+
function checkValidityWindow(w) {
|
|
197
|
+
const startOk = isDate(w.start) || isDateTime(w.start);
|
|
198
|
+
const endOk = isDate(w.end) || isDateTime(w.end);
|
|
199
|
+
if (!startOk) {
|
|
200
|
+
return `validity window start "${w.start}" is not an ISO 8601 date/datetime`;
|
|
201
|
+
}
|
|
202
|
+
if (!endOk) {
|
|
203
|
+
return `validity window end "${w.end}" is not an ISO 8601 date/datetime`;
|
|
204
|
+
}
|
|
205
|
+
// Compare as instants, never lexicographically — a mixed date/datetime
|
|
206
|
+
// pair ('2021-01-01' vs '2021-01-01T00:00:00Z') is the same moment.
|
|
207
|
+
const startMs = timeInstantMs(w.start);
|
|
208
|
+
const endMs = timeInstantMs(w.end);
|
|
209
|
+
if (startMs !== null && endMs !== null && endMs < startMs) {
|
|
210
|
+
return `validity window end ${w.end} is before start ${w.start}`;
|
|
211
|
+
}
|
|
212
|
+
return null;
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Edition pins (INV-8): normalize a definitionVersions map into a sorted
|
|
216
|
+
* pin list (deterministic emission in test reports).
|
|
217
|
+
*/
|
|
218
|
+
function editionPins(map) {
|
|
219
|
+
return Object.keys(map)
|
|
220
|
+
.sort()
|
|
221
|
+
.map(definition => ({ definition, version: map[definition] }));
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=time.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/time.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type TypeExpr = {
|
|
2
|
+
kind: 'primitive';
|
|
3
|
+
name: string;
|
|
4
|
+
} | {
|
|
5
|
+
kind: 'quantity';
|
|
6
|
+
} | {
|
|
7
|
+
kind: 'reference';
|
|
8
|
+
target: string;
|
|
9
|
+
} | {
|
|
10
|
+
kind: 'map';
|
|
11
|
+
key: TypeExpr;
|
|
12
|
+
value: TypeExpr;
|
|
13
|
+
};
|
|
14
|
+
/** The closed primitive vocabulary (data/schemas/value-types.yaml + period). */
|
|
15
|
+
export declare const PRIMITIVE_TYPES: readonly ["integer", "float", "double", "string", "text", "boolean", "date", "datetime", "duration", "period", "enum", "reference", "object", "any"];
|
|
16
|
+
/**
|
|
17
|
+
* Parse a type expression. Returns null when `src` is not a recognized
|
|
18
|
+
* type expression at all (callers treat legacy free-form types as
|
|
19
|
+
* unchecked). Throws nothing — malformed `map<…>`/`reference(…)` shapes
|
|
20
|
+
* parse to null just like unrecognized names; isWellFormedMapType
|
|
21
|
+
* distinguishes the two for the linter.
|
|
22
|
+
*/
|
|
23
|
+
export declare function parseTypeExpression(src: string): TypeExpr | null;
|
|
24
|
+
/**
|
|
25
|
+
* Well-formedness of a map type for the linter (C36): a type string that
|
|
26
|
+
* HEADS with `map` must parse as map<K, V> with K = string or an enum id
|
|
27
|
+
* and V a valid type expression (QuantityValue, primitive, reference, or
|
|
28
|
+
* a nested map).
|
|
29
|
+
*/
|
|
30
|
+
export declare function isWellFormedMapType(src: string): boolean;
|
|
31
|
+
//# sourceMappingURL=type-expr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-expr.d.ts","sourceRoot":"","sources":["../../src/type-expr.ts"],"names":[],"mappings":"AAiBA,MAAM,MAAM,QAAQ,GAChB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEpD,gFAAgF;AAChF,eAAO,MAAM,eAAe,sJAelB,CAAC;AAmBX;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAmChE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGxD"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
3
|
+
// Field type expressions (TODO.roadmap/06): QuantityValue as a
|
|
4
|
+
// first-class field type, and map<K, V> for parameter maps.
|
|
5
|
+
//
|
|
6
|
+
// A type expression is one of:
|
|
7
|
+
// - a primitive name (integer, float, double, string, text, boolean,
|
|
8
|
+
// date, datetime, duration, period, enum, reference, object, any)
|
|
9
|
+
// - QuantityValue — the INV-1 quantity shape (value + unit)
|
|
10
|
+
// - reference(<ClassId>) — a typed reference to a data class
|
|
11
|
+
// - map<K, V> — a key/value map; K is `string` (or an
|
|
12
|
+
// enum id), V any type expression
|
|
13
|
+
//
|
|
14
|
+
// parseTypeExpression returns null for strings that are not recognized
|
|
15
|
+
// type expressions — legacy free-form type strings stay untouched (the
|
|
16
|
+
// linter C36 validates only well-formedness of `map<…>` heads).
|
|
17
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.PRIMITIVE_TYPES = void 0;
|
|
20
|
+
exports.parseTypeExpression = parseTypeExpression;
|
|
21
|
+
exports.isWellFormedMapType = isWellFormedMapType;
|
|
22
|
+
/** The closed primitive vocabulary (data/schemas/value-types.yaml + period). */
|
|
23
|
+
exports.PRIMITIVE_TYPES = [
|
|
24
|
+
'integer',
|
|
25
|
+
'float',
|
|
26
|
+
'double',
|
|
27
|
+
'string',
|
|
28
|
+
'text',
|
|
29
|
+
'boolean',
|
|
30
|
+
'date',
|
|
31
|
+
'datetime',
|
|
32
|
+
'duration',
|
|
33
|
+
'period',
|
|
34
|
+
'enum',
|
|
35
|
+
'reference',
|
|
36
|
+
'object',
|
|
37
|
+
'any',
|
|
38
|
+
];
|
|
39
|
+
const IDENT = /^[A-Za-z_][A-Za-z0-9_-]*$/;
|
|
40
|
+
function splitTopLevelComma(s) {
|
|
41
|
+
let depth = 0;
|
|
42
|
+
for (let i = 0; i < s.length; i++) {
|
|
43
|
+
const c = s[i];
|
|
44
|
+
if (c === '<') {
|
|
45
|
+
depth++;
|
|
46
|
+
}
|
|
47
|
+
else if (c === '>') {
|
|
48
|
+
depth--;
|
|
49
|
+
}
|
|
50
|
+
else if (c === ',' && depth === 0) {
|
|
51
|
+
return [s.slice(0, i), s.slice(i + 1)];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Parse a type expression. Returns null when `src` is not a recognized
|
|
58
|
+
* type expression at all (callers treat legacy free-form types as
|
|
59
|
+
* unchecked). Throws nothing — malformed `map<…>`/`reference(…)` shapes
|
|
60
|
+
* parse to null just like unrecognized names; isWellFormedMapType
|
|
61
|
+
* distinguishes the two for the linter.
|
|
62
|
+
*/
|
|
63
|
+
function parseTypeExpression(src) {
|
|
64
|
+
const s = src.trim();
|
|
65
|
+
if (s === 'QuantityValue') {
|
|
66
|
+
return { kind: 'quantity' };
|
|
67
|
+
}
|
|
68
|
+
if (exports.PRIMITIVE_TYPES.includes(s)) {
|
|
69
|
+
return { kind: 'primitive', name: s };
|
|
70
|
+
}
|
|
71
|
+
const refMatch = /^reference\(([^)]+)\)$/.exec(s);
|
|
72
|
+
if (refMatch) {
|
|
73
|
+
const target = refMatch[1].trim();
|
|
74
|
+
return IDENT.test(target) ? { kind: 'reference', target } : null;
|
|
75
|
+
}
|
|
76
|
+
if (s.startsWith('map<') && s.endsWith('>')) {
|
|
77
|
+
const inner = s.slice(4, -1);
|
|
78
|
+
const parts = splitTopLevelComma(inner);
|
|
79
|
+
if (!parts) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
// K is a key type: `string` (parameter maps) or a bare enum id
|
|
83
|
+
// (dimension-keyed maps) — never a composite.
|
|
84
|
+
const rawKey = parts[0].trim();
|
|
85
|
+
let key = null;
|
|
86
|
+
if (rawKey === 'string') {
|
|
87
|
+
key = { kind: 'primitive', name: 'string' };
|
|
88
|
+
}
|
|
89
|
+
else if (IDENT.test(rawKey)) {
|
|
90
|
+
key = { kind: 'reference', target: rawKey };
|
|
91
|
+
}
|
|
92
|
+
const value = parseTypeExpression(parts[1]);
|
|
93
|
+
if (!key || !value) {
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
return { kind: 'map', key, value };
|
|
97
|
+
}
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Well-formedness of a map type for the linter (C36): a type string that
|
|
102
|
+
* HEADS with `map` must parse as map<K, V> with K = string or an enum id
|
|
103
|
+
* and V a valid type expression (QuantityValue, primitive, reference, or
|
|
104
|
+
* a nested map).
|
|
105
|
+
*/
|
|
106
|
+
function isWellFormedMapType(src) {
|
|
107
|
+
const expr = parseTypeExpression(src);
|
|
108
|
+
return expr !== null && expr.kind === 'map';
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=type-expr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-expr.js","sourceRoot":"","sources":["../../src/type-expr.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared acceptance decision block (data/schemas/{rc,cc,verdicts}.yaml
|
|
3
|
+
* $defs/acceptanceDecision, TODO.refactor/10 — OIML G 1-106).
|
|
4
|
+
*
|
|
5
|
+
* Declares how a limit comparison decides conformity: the decision rule
|
|
6
|
+
* (shared_risk default | guarded with a guard band), the reference
|
|
7
|
+
* uncertainty budget, the verdict criterion taxonomy (R 91-2, 6.1), and
|
|
8
|
+
* the statistical-justification variant (R 91-2, 4.4).
|
|
9
|
+
*/
|
|
10
|
+
export default interface AcceptanceDecision {
|
|
11
|
+
/** shared_risk (default) | guarded. */
|
|
12
|
+
rule: string;
|
|
13
|
+
/** Guard band narrowing the effective limit; null when absent. */
|
|
14
|
+
guardBand: {
|
|
15
|
+
kind: string;
|
|
16
|
+
value: number;
|
|
17
|
+
} | null;
|
|
18
|
+
/** Reference-uncertainty budget (U:MPE ratio cap); null when absent. */
|
|
19
|
+
uncertainty: {
|
|
20
|
+
maxRatioToMpe: number;
|
|
21
|
+
} | null;
|
|
22
|
+
/** Verdict taxonomy: I/MPE | D/NSFa | D/NSFd | n/a. */
|
|
23
|
+
criterion: string;
|
|
24
|
+
/** Statistical-justification variant; null when absent. */
|
|
25
|
+
statistics: {
|
|
26
|
+
method: string;
|
|
27
|
+
onBasisOf: string;
|
|
28
|
+
permits: string;
|
|
29
|
+
} | null;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=Acceptance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Acceptance.d.ts","sourceRoot":"","sources":["../../../src/types/Acceptance.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,CAAC,OAAO,WAAW,kBAAkB;IACzC,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClD,wEAAwE;IACxE,WAAW,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC3E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared acceptance decision block (data/schemas/{rc,cc,verdicts}.yaml
|
|
4
|
+
* $defs/acceptanceDecision, TODO.refactor/10 — OIML G 1-106).
|
|
5
|
+
*
|
|
6
|
+
* Declares how a limit comparison decides conformity: the decision rule
|
|
7
|
+
* (shared_risk default | guarded with a guard band), the reference
|
|
8
|
+
* uncertainty budget, the verdict criterion taxonomy (R 91-2, 6.1), and
|
|
9
|
+
* the statistical-justification variant (R 91-2, 4.4).
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
//# sourceMappingURL=Acceptance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Acceptance.js","sourceRoot":"","sources":["../../../src/types/Acceptance.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** One entry of an ISO/IEC 17000 activity-archetype register. */
|
|
2
|
+
export default interface ActivityArchetype {
|
|
3
|
+
/** Snake-case kind id — the value a process's activity_kind references. */
|
|
4
|
+
id: string;
|
|
5
|
+
/** The term as it appears in the source standard (e.g. "peer assessment"). */
|
|
6
|
+
label: string;
|
|
7
|
+
/** Clause of the source standard the definition comes from ("6.2", "A.3"). */
|
|
8
|
+
clause: string;
|
|
9
|
+
/** Verbatim definition text from the source clause. */
|
|
10
|
+
definition: string;
|
|
11
|
+
/** Parent kind id (a stated type-of relationship only); '' = top-level. */
|
|
12
|
+
parent: string;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=ActivityArchetype.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityArchetype.d.ts","sourceRoot":"","sources":["../../../src/types/ActivityArchetype.ts"],"names":[],"mappings":"AAeA,iEAAiE;AACjE,MAAM,CAAC,OAAO,WAAW,iBAAiB;IACxC,2EAA2E;IAC3E,EAAE,EAAE,MAAM,CAAC;IACX,8EAA8E;IAC9E,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
3
|
+
// Activity archetype (TODO.roadmap/39) — a classifiable activity kind of
|
|
4
|
+
// the ISO/IEC 17000 functional approach (selection; determination —
|
|
5
|
+
// testing/inspection/audit/validation/verification/peer assessment;
|
|
6
|
+
// review; decision; attestation — declaration/certification/accreditation;
|
|
7
|
+
// surveillance and the statement-of-conformity lifecycle terms).
|
|
8
|
+
//
|
|
9
|
+
// An abstract (or executable) process CLASSIFIES itself against an
|
|
10
|
+
// archetype register via `activity_kind { <id>+ }` — classification, not
|
|
11
|
+
// inheritance. The linter (C58 activity-kind-resolves) resolves every
|
|
12
|
+
// tagged kind against the declared archetypes when a register is in scope.
|
|
13
|
+
// `parent` records only the type-of relationships the standard itself
|
|
14
|
+
// states (A.3.2 determination types, A.4.3 attestation types).
|
|
15
|
+
// ─────────────────────────────────────────────────────────────────────
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
//# sourceMappingURL=ActivityArchetype.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityArchetype.js","sourceRoot":"","sources":["../../../src/types/ActivityArchetype.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,yEAAyE;AACzE,oEAAoE;AACpE,oEAAoE;AACpE,2EAA2E;AAC3E,iEAAiE;AACjE,EAAE;AACF,mEAAmE;AACnE,yEAAyE;AACzE,sEAAsE;AACtE,2EAA2E;AAC3E,sEAAsE;AACtE,+DAA+D;AAC/D,wEAAwE"}
|