@memoarchitect/tools 0.6.7 → 0.7.2
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/README.md +36 -11
- package/package.json +19 -7
- package/packages/tools/lib/bin/memo.js +161 -10
- package/packages/tools/lib/bin/memo.js.map +1 -1
- package/packages/tools/lib/browser/index.d.ts +1 -1
- package/packages/tools/lib/browser/index.d.ts.map +1 -1
- package/packages/tools/lib/browser/index.js +1 -1
- package/packages/tools/lib/browser/index.js.map +1 -1
- package/packages/tools/lib/commands/ask.js +1 -1
- package/packages/tools/lib/commands/ask.js.map +1 -1
- package/packages/tools/lib/commands/check.d.ts.map +1 -1
- package/packages/tools/lib/commands/check.js +3 -9
- package/packages/tools/lib/commands/check.js.map +1 -1
- package/packages/tools/lib/commands/conformance.d.ts +36 -0
- package/packages/tools/lib/commands/conformance.d.ts.map +1 -0
- package/packages/tools/lib/commands/conformance.js +212 -0
- package/packages/tools/lib/commands/conformance.js.map +1 -0
- package/packages/tools/lib/commands/convert.d.ts +12 -0
- package/packages/tools/lib/commands/convert.d.ts.map +1 -0
- package/packages/tools/lib/commands/convert.js +103 -0
- package/packages/tools/lib/commands/convert.js.map +1 -0
- package/packages/tools/lib/commands/create-package.d.ts +1 -2
- package/packages/tools/lib/commands/create-package.d.ts.map +1 -1
- package/packages/tools/lib/commands/create-package.js.map +1 -1
- package/packages/tools/lib/commands/dev.d.ts +13 -0
- package/packages/tools/lib/commands/dev.d.ts.map +1 -1
- package/packages/tools/lib/commands/dev.js +208 -74
- package/packages/tools/lib/commands/dev.js.map +1 -1
- package/packages/tools/lib/commands/dhf-draft.js +1 -1
- package/packages/tools/lib/commands/dhf-draft.js.map +1 -1
- package/packages/tools/lib/commands/dhf-preview.js +1 -1
- package/packages/tools/lib/commands/dhf-preview.js.map +1 -1
- package/packages/tools/lib/commands/dhf.js +1 -1
- package/packages/tools/lib/commands/dhf.js.map +1 -1
- package/packages/tools/lib/commands/element.d.ts +34 -0
- package/packages/tools/lib/commands/element.d.ts.map +1 -0
- package/packages/tools/lib/commands/element.js +174 -0
- package/packages/tools/lib/commands/element.js.map +1 -0
- package/packages/tools/lib/commands/export.d.ts.map +1 -1
- package/packages/tools/lib/commands/export.js +39 -40
- package/packages/tools/lib/commands/export.js.map +1 -1
- package/packages/tools/lib/commands/generate.d.ts.map +1 -1
- package/packages/tools/lib/commands/generate.js +10 -7
- package/packages/tools/lib/commands/generate.js.map +1 -1
- package/packages/tools/lib/commands/import.d.ts.map +1 -1
- package/packages/tools/lib/commands/import.js +25 -12
- package/packages/tools/lib/commands/import.js.map +1 -1
- package/packages/tools/lib/commands/init.d.ts.map +1 -1
- package/packages/tools/lib/commands/init.js +34 -14
- package/packages/tools/lib/commands/init.js.map +1 -1
- package/packages/tools/lib/commands/inspect.d.ts +5 -0
- package/packages/tools/lib/commands/inspect.d.ts.map +1 -0
- package/packages/tools/lib/commands/inspect.js +56 -0
- package/packages/tools/lib/commands/inspect.js.map +1 -0
- package/packages/tools/lib/commands/lock.d.ts.map +1 -1
- package/packages/tools/lib/commands/lock.js +7 -2
- package/packages/tools/lib/commands/lock.js.map +1 -1
- package/packages/tools/lib/commands/ontology.d.ts.map +1 -1
- package/packages/tools/lib/commands/ontology.js +69 -116
- package/packages/tools/lib/commands/ontology.js.map +1 -1
- package/packages/tools/lib/commands/pack.d.ts +1 -1
- package/packages/tools/lib/commands/pack.d.ts.map +1 -1
- package/packages/tools/lib/commands/pack.js +20 -78
- package/packages/tools/lib/commands/pack.js.map +1 -1
- package/packages/tools/lib/commands/package.d.ts +10 -0
- package/packages/tools/lib/commands/package.d.ts.map +1 -0
- package/packages/tools/lib/commands/package.js +113 -0
- package/packages/tools/lib/commands/package.js.map +1 -0
- package/packages/tools/lib/commands/plugin.js +1 -1
- package/packages/tools/lib/commands/plugin.js.map +1 -1
- package/packages/tools/lib/commands/rules.d.ts.map +1 -1
- package/packages/tools/lib/commands/rules.js +120 -30
- package/packages/tools/lib/commands/rules.js.map +1 -1
- package/packages/tools/lib/commands/sysand-publish.d.ts.map +1 -1
- package/packages/tools/lib/commands/sysand-publish.js +14 -16
- package/packages/tools/lib/commands/sysand-publish.js.map +1 -1
- package/packages/tools/lib/commands/toolchain.d.ts +8 -0
- package/packages/tools/lib/commands/toolchain.d.ts.map +1 -0
- package/packages/tools/lib/commands/toolchain.js +64 -0
- package/packages/tools/lib/commands/toolchain.js.map +1 -0
- package/packages/tools/lib/commands/validate.d.ts +1 -1
- package/packages/tools/lib/commands/validate.d.ts.map +1 -1
- package/packages/tools/lib/commands/validate.js +183 -56
- package/packages/tools/lib/commands/validate.js.map +1 -1
- package/packages/tools/lib/completeness/tracker.d.ts +10 -2
- package/packages/tools/lib/completeness/tracker.d.ts.map +1 -1
- package/packages/tools/lib/completeness/tracker.js +16 -21
- package/packages/tools/lib/completeness/tracker.js.map +1 -1
- package/packages/tools/lib/conformance/baseline.d.ts +26 -0
- package/packages/tools/lib/conformance/baseline.d.ts.map +1 -0
- package/packages/tools/lib/conformance/baseline.js +170 -0
- package/packages/tools/lib/conformance/baseline.js.map +1 -0
- package/packages/tools/lib/conformance/bnf.d.ts +84 -0
- package/packages/tools/lib/conformance/bnf.d.ts.map +1 -0
- package/packages/tools/lib/conformance/bnf.js +166 -0
- package/packages/tools/lib/conformance/bnf.js.map +1 -0
- package/packages/tools/lib/conformance/corpus.d.ts +125 -0
- package/packages/tools/lib/conformance/corpus.d.ts.map +1 -0
- package/packages/tools/lib/conformance/corpus.js +190 -0
- package/packages/tools/lib/conformance/corpus.js.map +1 -0
- package/packages/tools/lib/conformance/diff-xmi.d.ts +118 -0
- package/packages/tools/lib/conformance/diff-xmi.d.ts.map +1 -0
- package/packages/tools/lib/conformance/diff-xmi.js +276 -0
- package/packages/tools/lib/conformance/diff-xmi.js.map +1 -0
- package/packages/tools/lib/conformance/generated/syside-rules.d.ts +10 -0
- package/packages/tools/lib/conformance/generated/syside-rules.d.ts.map +1 -0
- package/packages/tools/lib/conformance/generated/syside-rules.js +1142 -0
- package/packages/tools/lib/conformance/generated/syside-rules.js.map +1 -0
- package/packages/tools/lib/conformance/index.d.ts +7 -0
- package/packages/tools/lib/conformance/index.d.ts.map +1 -0
- package/packages/tools/lib/conformance/index.js +19 -0
- package/packages/tools/lib/conformance/index.js.map +1 -0
- package/packages/tools/lib/conformance/run.d.ts +117 -0
- package/packages/tools/lib/conformance/run.d.ts.map +1 -0
- package/packages/tools/lib/conformance/run.js +0 -0
- package/packages/tools/lib/conformance/run.js.map +1 -0
- package/packages/tools/lib/conformance/xmi.d.ts +45 -0
- package/packages/tools/lib/conformance/xmi.d.ts.map +1 -0
- package/packages/tools/lib/conformance/xmi.js +148 -0
- package/packages/tools/lib/conformance/xmi.js.map +1 -0
- package/packages/tools/lib/dhf/template-resolver.js +1 -1
- package/packages/tools/lib/dhf/template-resolver.js.map +1 -1
- package/packages/tools/lib/import/column-mapper.d.ts +2 -2
- package/packages/tools/lib/import/column-mapper.d.ts.map +1 -1
- package/packages/tools/lib/import/column-mapper.js +3 -3
- package/packages/tools/lib/import/column-mapper.js.map +1 -1
- package/packages/tools/lib/index.d.ts +20 -3
- package/packages/tools/lib/index.d.ts.map +1 -1
- package/packages/tools/lib/index.js +19 -2
- package/packages/tools/lib/index.js.map +1 -1
- package/packages/tools/lib/language/generated/ast.d.ts +196 -51
- package/packages/tools/lib/language/generated/ast.d.ts.map +1 -1
- package/packages/tools/lib/language/generated/ast.js +136 -15
- package/packages/tools/lib/language/generated/ast.js.map +1 -1
- package/packages/tools/lib/language/generated/grammar.d.ts.map +1 -1
- package/packages/tools/lib/language/generated/grammar.js +867 -295
- package/packages/tools/lib/language/generated/grammar.js.map +1 -1
- package/packages/tools/lib/llm/chat-engine.d.ts +4 -3
- package/packages/tools/lib/llm/chat-engine.d.ts.map +1 -1
- package/packages/tools/lib/llm/chat-engine.js +15 -12
- package/packages/tools/lib/llm/chat-engine.js.map +1 -1
- package/packages/tools/lib/llm/generate-engine.d.ts +7 -2
- package/packages/tools/lib/llm/generate-engine.d.ts.map +1 -1
- package/packages/tools/lib/llm/generate-engine.js +22 -4
- package/packages/tools/lib/llm/generate-engine.js.map +1 -1
- package/packages/tools/lib/llm/index.d.ts +1 -0
- package/packages/tools/lib/llm/index.d.ts.map +1 -1
- package/packages/tools/lib/llm/index.js +1 -0
- package/packages/tools/lib/llm/index.js.map +1 -1
- package/packages/tools/lib/llm/model-context.d.ts +2 -2
- package/packages/tools/lib/llm/model-context.d.ts.map +1 -1
- package/packages/tools/lib/llm/model-context.js +7 -13
- package/packages/tools/lib/llm/model-context.js.map +1 -1
- package/packages/tools/lib/llm/sysml-guidance.d.ts +8 -0
- package/packages/tools/lib/llm/sysml-guidance.d.ts.map +1 -0
- package/packages/tools/lib/llm/sysml-guidance.js +28 -0
- package/packages/tools/lib/llm/sysml-guidance.js.map +1 -0
- package/packages/tools/lib/lock.d.ts +14 -8
- package/packages/tools/lib/lock.d.ts.map +1 -1
- package/packages/tools/lib/lock.js +97 -108
- package/packages/tools/lib/lock.js.map +1 -1
- package/packages/tools/lib/mcp/model-loader.d.ts +3 -0
- package/packages/tools/lib/mcp/model-loader.d.ts.map +1 -1
- package/packages/tools/lib/mcp/model-loader.js +9 -5
- package/packages/tools/lib/mcp/model-loader.js.map +1 -1
- package/packages/tools/lib/mcp/tools.d.ts +3 -0
- package/packages/tools/lib/mcp/tools.d.ts.map +1 -1
- package/packages/tools/lib/mcp/tools.js +8 -9
- package/packages/tools/lib/mcp/tools.js.map +1 -1
- package/packages/tools/lib/model/activity-notation.d.ts +54 -0
- package/packages/tools/lib/model/activity-notation.d.ts.map +1 -0
- package/packages/tools/lib/model/activity-notation.js +208 -0
- package/packages/tools/lib/model/activity-notation.js.map +1 -0
- package/packages/tools/lib/model/builder.d.ts +3 -0
- package/packages/tools/lib/model/builder.d.ts.map +1 -1
- package/packages/tools/lib/model/builder.js +231 -19
- package/packages/tools/lib/model/builder.js.map +1 -1
- package/packages/tools/lib/model/config-loader.d.ts +19 -25
- package/packages/tools/lib/model/config-loader.d.ts.map +1 -1
- package/packages/tools/lib/model/config-loader.js +51 -233
- package/packages/tools/lib/model/config-loader.js.map +1 -1
- package/packages/tools/lib/model/config.d.ts +42 -213
- package/packages/tools/lib/model/config.d.ts.map +1 -1
- package/packages/tools/lib/model/config.js +11 -9
- package/packages/tools/lib/model/config.js.map +1 -1
- package/packages/tools/lib/model/effective-scope.d.ts +74 -0
- package/packages/tools/lib/model/effective-scope.d.ts.map +1 -0
- package/packages/tools/lib/model/effective-scope.js +133 -0
- package/packages/tools/lib/model/effective-scope.js.map +1 -0
- package/packages/tools/lib/model/ir-identity.d.ts +94 -0
- package/packages/tools/lib/model/ir-identity.d.ts.map +1 -0
- package/packages/tools/lib/model/ir-identity.js +178 -0
- package/packages/tools/lib/model/ir-identity.js.map +1 -0
- package/packages/tools/lib/model/kind-registry.d.ts +114 -1
- package/packages/tools/lib/model/kind-registry.d.ts.map +1 -1
- package/packages/tools/lib/model/kind-registry.js +148 -4
- package/packages/tools/lib/model/kind-registry.js.map +1 -1
- package/packages/tools/lib/model/layer-resolver.js +1 -1
- package/packages/tools/lib/model/layer-resolver.js.map +1 -1
- package/packages/tools/lib/model/methodology-loader.d.ts +19 -24
- package/packages/tools/lib/model/methodology-loader.d.ts.map +1 -1
- package/packages/tools/lib/model/methodology-loader.js +179 -176
- package/packages/tools/lib/model/methodology-loader.js.map +1 -1
- package/packages/tools/lib/model/methodology-resolver.d.ts +115 -0
- package/packages/tools/lib/model/methodology-resolver.d.ts.map +1 -0
- package/packages/tools/lib/model/methodology-resolver.js +317 -0
- package/packages/tools/lib/model/methodology-resolver.js.map +1 -0
- package/packages/tools/lib/model/native-project.d.ts +130 -0
- package/packages/tools/lib/model/native-project.d.ts.map +1 -0
- package/packages/tools/lib/model/native-project.js +570 -0
- package/packages/tools/lib/model/native-project.js.map +1 -0
- package/packages/tools/lib/model/ontology-loader.d.ts +34 -21
- package/packages/tools/lib/model/ontology-loader.d.ts.map +1 -1
- package/packages/tools/lib/model/ontology-loader.js +340 -614
- package/packages/tools/lib/model/ontology-loader.js.map +1 -1
- package/packages/tools/lib/model/package-manifest.d.ts +37 -0
- package/packages/tools/lib/model/package-manifest.d.ts.map +1 -0
- package/packages/tools/lib/model/package-manifest.js +96 -0
- package/packages/tools/lib/model/package-manifest.js.map +1 -0
- package/packages/tools/lib/model/parser-utils.d.ts +31 -0
- package/packages/tools/lib/model/parser-utils.d.ts.map +1 -1
- package/packages/tools/lib/model/parser-utils.js +89 -1
- package/packages/tools/lib/model/parser-utils.js.map +1 -1
- package/packages/tools/lib/model/paths.d.ts +10 -4
- package/packages/tools/lib/model/paths.d.ts.map +1 -1
- package/packages/tools/lib/model/paths.js +10 -4
- package/packages/tools/lib/model/paths.js.map +1 -1
- package/packages/tools/lib/model/project-conversion.d.ts +226 -0
- package/packages/tools/lib/model/project-conversion.d.ts.map +1 -0
- package/packages/tools/lib/model/project-conversion.js +946 -0
- package/packages/tools/lib/model/project-conversion.js.map +1 -0
- package/packages/tools/lib/model/relationship-legality.d.ts +10 -0
- package/packages/tools/lib/model/relationship-legality.d.ts.map +1 -1
- package/packages/tools/lib/model/relationship-legality.js.map +1 -1
- package/packages/tools/lib/model/relationship-registry.d.ts +16 -1
- package/packages/tools/lib/model/relationship-registry.d.ts.map +1 -1
- package/packages/tools/lib/model/relationship-registry.js.map +1 -1
- package/packages/tools/lib/model/semantic.d.ts +27 -0
- package/packages/tools/lib/model/semantic.d.ts.map +1 -1
- package/packages/tools/lib/model/semantic.js +3 -0
- package/packages/tools/lib/model/semantic.js.map +1 -1
- package/packages/tools/lib/model/settings-boundary.d.ts +19 -0
- package/packages/tools/lib/model/settings-boundary.d.ts.map +1 -0
- package/packages/tools/lib/model/settings-boundary.js +118 -0
- package/packages/tools/lib/model/settings-boundary.js.map +1 -0
- package/packages/tools/lib/model/short-id.d.ts.map +1 -1
- package/packages/tools/lib/model/short-id.js +2 -0
- package/packages/tools/lib/model/short-id.js.map +1 -1
- package/packages/tools/lib/model/source-graph.d.ts.map +1 -1
- package/packages/tools/lib/model/source-graph.js +5 -1
- package/packages/tools/lib/model/source-graph.js.map +1 -1
- package/packages/tools/lib/model/source-provenance.d.ts +112 -0
- package/packages/tools/lib/model/source-provenance.d.ts.map +1 -0
- package/packages/tools/lib/model/source-provenance.js +169 -0
- package/packages/tools/lib/model/source-provenance.js.map +1 -0
- package/packages/tools/lib/model/sysml-ir.d.ts +9 -0
- package/packages/tools/lib/model/sysml-ir.d.ts.map +1 -0
- package/packages/tools/lib/model/sysml-ir.js +105 -0
- package/packages/tools/lib/model/sysml-ir.js.map +1 -0
- package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
- package/packages/tools/lib/model/view-deriver.js +36 -6
- package/packages/tools/lib/model/view-deriver.js.map +1 -1
- package/packages/tools/lib/model/view-kinds.d.ts +2 -0
- package/packages/tools/lib/model/view-kinds.d.ts.map +1 -1
- package/packages/tools/lib/model/view-kinds.js +11 -0
- package/packages/tools/lib/model/view-kinds.js.map +1 -1
- package/packages/tools/lib/ontology/owl-exporter.d.ts +2 -2
- package/packages/tools/lib/ontology/owl-exporter.d.ts.map +1 -1
- package/packages/tools/lib/ontology/owl-exporter.js +12 -12
- package/packages/tools/lib/ontology/owl-exporter.js.map +1 -1
- package/packages/tools/lib/operations/ai-authoring.d.ts +24 -0
- package/packages/tools/lib/operations/ai-authoring.d.ts.map +1 -0
- package/packages/tools/lib/operations/ai-authoring.js +77 -0
- package/packages/tools/lib/operations/ai-authoring.js.map +1 -0
- package/packages/tools/lib/operations/authoring.d.ts +40 -0
- package/packages/tools/lib/operations/authoring.d.ts.map +1 -0
- package/packages/tools/lib/operations/authoring.js +56 -0
- package/packages/tools/lib/operations/authoring.js.map +1 -0
- package/packages/tools/lib/operations/index.d.ts +2 -0
- package/packages/tools/lib/operations/index.d.ts.map +1 -1
- package/packages/tools/lib/operations/index.js +2 -0
- package/packages/tools/lib/operations/index.js.map +1 -1
- package/packages/tools/lib/operations/project-snapshot.d.ts +28 -3
- package/packages/tools/lib/operations/project-snapshot.d.ts.map +1 -1
- package/packages/tools/lib/operations/project-snapshot.js +79 -30
- package/packages/tools/lib/operations/project-snapshot.js.map +1 -1
- package/packages/tools/lib/protocol/messages.d.ts +298 -11
- package/packages/tools/lib/protocol/messages.d.ts.map +1 -1
- package/packages/tools/lib/serializer/csv-io.d.ts +7 -7
- package/packages/tools/lib/serializer/csv-io.d.ts.map +1 -1
- package/packages/tools/lib/serializer/csv-io.js +11 -11
- package/packages/tools/lib/serializer/csv-io.js.map +1 -1
- package/packages/tools/lib/serializer/sysml-generator.d.ts.map +1 -1
- package/packages/tools/lib/serializer/sysml-generator.js +34 -2
- package/packages/tools/lib/serializer/sysml-generator.js.map +1 -1
- package/packages/tools/lib/server/config-resolver.d.ts +8 -4
- package/packages/tools/lib/server/config-resolver.d.ts.map +1 -1
- package/packages/tools/lib/server/config-resolver.js +25 -44
- package/packages/tools/lib/server/config-resolver.js.map +1 -1
- package/packages/tools/lib/server/conflict-policy.d.ts +44 -0
- package/packages/tools/lib/server/conflict-policy.d.ts.map +1 -0
- package/packages/tools/lib/server/conflict-policy.js +94 -0
- package/packages/tools/lib/server/conflict-policy.js.map +1 -0
- package/packages/tools/lib/server/dev-server.d.ts +32 -2
- package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
- package/packages/tools/lib/server/dev-server.js +721 -53
- package/packages/tools/lib/server/dev-server.js.map +1 -1
- package/packages/tools/lib/server/element-writer.d.ts +11 -0
- package/packages/tools/lib/server/element-writer.d.ts.map +1 -0
- package/packages/tools/lib/server/element-writer.js +123 -0
- package/packages/tools/lib/server/element-writer.js.map +1 -0
- package/packages/tools/lib/server/file-watcher.d.ts +4 -1
- package/packages/tools/lib/server/file-watcher.d.ts.map +1 -1
- package/packages/tools/lib/server/file-watcher.js +17 -7
- package/packages/tools/lib/server/file-watcher.js.map +1 -1
- package/packages/tools/lib/server/mutation-domain.d.ts +22 -0
- package/packages/tools/lib/server/mutation-domain.d.ts.map +1 -0
- package/packages/tools/lib/server/mutation-domain.js +87 -0
- package/packages/tools/lib/server/mutation-domain.js.map +1 -0
- package/packages/tools/lib/server/persistor.d.ts +63 -8
- package/packages/tools/lib/server/persistor.d.ts.map +1 -1
- package/packages/tools/lib/server/persistor.js +152 -44
- package/packages/tools/lib/server/persistor.js.map +1 -1
- package/packages/tools/lib/server/relationship-writer.d.ts +28 -4
- package/packages/tools/lib/server/relationship-writer.d.ts.map +1 -1
- package/packages/tools/lib/server/relationship-writer.js +98 -13
- package/packages/tools/lib/server/relationship-writer.js.map +1 -1
- package/packages/tools/lib/server/rule-policy-writer.d.ts +40 -0
- package/packages/tools/lib/server/rule-policy-writer.d.ts.map +1 -0
- package/packages/tools/lib/server/rule-policy-writer.js +124 -0
- package/packages/tools/lib/server/rule-policy-writer.js.map +1 -0
- package/packages/tools/lib/server/runtime-budget.d.ts +14 -0
- package/packages/tools/lib/server/runtime-budget.d.ts.map +1 -0
- package/packages/tools/lib/server/runtime-budget.js +15 -0
- package/packages/tools/lib/server/runtime-budget.js.map +1 -0
- package/packages/tools/lib/server/sysml-notation.d.ts +36 -0
- package/packages/tools/lib/server/sysml-notation.d.ts.map +1 -0
- package/packages/tools/lib/server/sysml-notation.js +87 -0
- package/packages/tools/lib/server/sysml-notation.js.map +1 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-derivations.d.ts +9 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-derivations.d.ts.map +1 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-derivations.js +315 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-derivations.js.map +1 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.d.ts +5206 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.d.ts.map +1 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.js +1933 -0
- package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.js.map +1 -0
- package/packages/tools/lib/sysml-ir/index.d.ts +3 -0
- package/packages/tools/lib/sysml-ir/index.d.ts.map +1 -0
- package/packages/tools/lib/sysml-ir/index.js +3 -0
- package/packages/tools/lib/sysml-ir/index.js.map +1 -0
- package/packages/tools/lib/sysml-ir/ir.d.ts +50 -0
- package/packages/tools/lib/sysml-ir/ir.d.ts.map +1 -0
- package/packages/tools/lib/sysml-ir/ir.js +2 -0
- package/packages/tools/lib/sysml-ir/ir.js.map +1 -0
- package/packages/tools/lib/sysmlc/bin/memo-sysmlc.d.ts +3 -0
- package/packages/tools/lib/sysmlc/bin/memo-sysmlc.d.ts.map +1 -0
- package/packages/tools/lib/sysmlc/bin/memo-sysmlc.js +97 -0
- package/packages/tools/lib/sysmlc/bin/memo-sysmlc.js.map +1 -0
- package/packages/tools/lib/sysmlc/index.d.ts +2 -0
- package/packages/tools/lib/sysmlc/index.d.ts.map +1 -0
- package/packages/tools/lib/sysmlc/index.js +7 -0
- package/packages/tools/lib/sysmlc/index.js.map +1 -0
- package/packages/tools/lib/sysmlc/server.d.ts +29 -0
- package/packages/tools/lib/sysmlc/server.d.ts.map +1 -0
- package/packages/tools/lib/sysmlc/server.js +168 -0
- package/packages/tools/lib/sysmlc/server.js.map +1 -0
- package/packages/tools/lib/toolchain/default-registry.d.ts +12 -0
- package/packages/tools/lib/toolchain/default-registry.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/default-registry.js +28 -0
- package/packages/tools/lib/toolchain/default-registry.js.map +1 -0
- package/packages/tools/lib/toolchain/diagnostic.d.ts +57 -0
- package/packages/tools/lib/toolchain/diagnostic.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/diagnostic.js +69 -0
- package/packages/tools/lib/toolchain/diagnostic.js.map +1 -0
- package/packages/tools/lib/toolchain/effective.d.ts +36 -0
- package/packages/tools/lib/toolchain/effective.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/effective.js +91 -0
- package/packages/tools/lib/toolchain/effective.js.map +1 -0
- package/packages/tools/lib/toolchain/index.d.ts +11 -0
- package/packages/tools/lib/toolchain/index.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/index.js +21 -0
- package/packages/tools/lib/toolchain/index.js.map +1 -0
- package/packages/tools/lib/toolchain/lowering.d.ts +63 -0
- package/packages/tools/lib/toolchain/lowering.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/lowering.js +100 -0
- package/packages/tools/lib/toolchain/lowering.js.map +1 -0
- package/packages/tools/lib/toolchain/operations.d.ts +87 -0
- package/packages/tools/lib/toolchain/operations.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/operations.js +111 -0
- package/packages/tools/lib/toolchain/operations.js.map +1 -0
- package/packages/tools/lib/toolchain/process.d.ts +45 -0
- package/packages/tools/lib/toolchain/process.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/process.js +125 -0
- package/packages/tools/lib/toolchain/process.js.map +1 -0
- package/packages/tools/lib/toolchain/protocol.d.ts +122 -0
- package/packages/tools/lib/toolchain/protocol.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/protocol.js +74 -0
- package/packages/tools/lib/toolchain/protocol.js.map +1 -0
- package/packages/tools/lib/toolchain/providers/internal-kpar.d.ts +9 -0
- package/packages/tools/lib/toolchain/providers/internal-kpar.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/providers/internal-kpar.js +84 -0
- package/packages/tools/lib/toolchain/providers/internal-kpar.js.map +1 -0
- package/packages/tools/lib/toolchain/providers/internal.d.ts +33 -0
- package/packages/tools/lib/toolchain/providers/internal.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/providers/internal.js +286 -0
- package/packages/tools/lib/toolchain/providers/internal.js.map +1 -0
- package/packages/tools/lib/toolchain/providers/sysand.d.ts +12 -0
- package/packages/tools/lib/toolchain/providers/sysand.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/providers/sysand.js +110 -0
- package/packages/tools/lib/toolchain/providers/sysand.js.map +1 -0
- package/packages/tools/lib/toolchain/providers/syside.d.ts +24 -0
- package/packages/tools/lib/toolchain/providers/syside.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/providers/syside.js +208 -0
- package/packages/tools/lib/toolchain/providers/syside.js.map +1 -0
- package/packages/tools/lib/toolchain/registry.d.ts +192 -0
- package/packages/tools/lib/toolchain/registry.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/registry.js +130 -0
- package/packages/tools/lib/toolchain/registry.js.map +1 -0
- package/packages/tools/lib/toolchain/schema.d.ts +30 -0
- package/packages/tools/lib/toolchain/schema.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/schema.js +112 -0
- package/packages/tools/lib/toolchain/schema.js.map +1 -0
- package/packages/tools/lib/toolchain/sysmlc-client.d.ts +77 -0
- package/packages/tools/lib/toolchain/sysmlc-client.d.ts.map +1 -0
- package/packages/tools/lib/toolchain/sysmlc-client.js +0 -0
- package/packages/tools/lib/toolchain/sysmlc-client.js.map +1 -0
- package/packages/tools/lib/validator/architecture-validator.d.ts +8 -1
- package/packages/tools/lib/validator/architecture-validator.d.ts.map +1 -1
- package/packages/tools/lib/validator/architecture-validator.js +25 -1
- package/packages/tools/lib/validator/architecture-validator.js.map +1 -1
- package/packages/tools/lib/validator/builtin-rules.d.ts +16 -0
- package/packages/tools/lib/validator/builtin-rules.d.ts.map +1 -0
- package/packages/tools/lib/validator/builtin-rules.js +62 -0
- package/packages/tools/lib/validator/builtin-rules.js.map +1 -0
- package/packages/tools/lib/validator/constraint-eval.d.ts +15 -0
- package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -1
- package/packages/tools/lib/validator/constraint-eval.js +62 -7
- package/packages/tools/lib/validator/constraint-eval.js.map +1 -1
- package/packages/tools/lib/validator/constraint-loader.d.ts +22 -4
- package/packages/tools/lib/validator/constraint-loader.d.ts.map +1 -1
- package/packages/tools/lib/validator/constraint-loader.js +100 -27
- package/packages/tools/lib/validator/constraint-loader.js.map +1 -1
- package/packages/tools/lib/validator/rule-engine.d.ts +2 -1
- package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -1
- package/packages/tools/lib/validator/rule-engine.js +56 -5
- package/packages/tools/lib/validator/rule-engine.js.map +1 -1
- package/packages/tools/lib/validator/sysml-constraints.d.ts +64 -0
- package/packages/tools/lib/validator/sysml-constraints.d.ts.map +1 -0
- package/packages/tools/lib/validator/sysml-constraints.js +251 -0
- package/packages/tools/lib/validator/sysml-constraints.js.map +1 -0
- package/packages/tools/lib/validator/types.d.ts +33 -0
- package/packages/tools/lib/validator/types.d.ts.map +1 -1
- package/packages/tools/lib/version.d.ts +2 -0
- package/packages/tools/lib/version.d.ts.map +1 -0
- package/packages/tools/lib/version.js +26 -0
- package/packages/tools/lib/version.js.map +1 -0
- package/packages/tools/src/grammar/memo-sysml.langium +104 -18
- package/packages/tools/lib/model/dimension-filter.d.ts +0 -33
- package/packages/tools/lib/model/dimension-filter.d.ts.map +0 -1
- package/packages/tools/lib/model/dimension-filter.js +0 -57
- package/packages/tools/lib/model/dimension-filter.js.map +0 -1
- package/packages/tools/lib/model/toolchain.d.ts +0 -12
- package/packages/tools/lib/model/toolchain.d.ts.map +0 -1
- package/packages/tools/lib/model/toolchain.js +0 -92
- package/packages/tools/lib/model/toolchain.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-graph.js","sourceRoot":"","sources":["../../src/model/source-graph.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"source-graph.js","sourceRoot":"","sources":["../../src/model/source-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authority category of a source unit.
|
|
3
|
+
*
|
|
4
|
+
* `memo-core` is listed by the design as distinct from `ontology`, but core
|
|
5
|
+
* currently ships INSIDE the ontology package rather than as its own resolved
|
|
6
|
+
* artifact. Origin is assigned from roots, so core is reported as `ontology`
|
|
7
|
+
* until it is separately resolvable — inferring it from the `memo::core::`
|
|
8
|
+
* package prefix would be exactly the path/name heuristic this module exists to
|
|
9
|
+
* avoid. The variant stays in the union so that the split needs no DTO change.
|
|
10
|
+
*/
|
|
11
|
+
export type SemanticOrigin = 'standard-library' | 'memo-core' | 'ontology' | 'extension' | 'methodology' | 'project';
|
|
12
|
+
/** Provenance of one source file. */
|
|
13
|
+
export interface SourceProvenance {
|
|
14
|
+
origin: SemanticOrigin;
|
|
15
|
+
/** Package name from the manifest, e.g. "@memoarchitect/ontology". */
|
|
16
|
+
packageName: string;
|
|
17
|
+
/** Declared SysML package qualified name, when the file declares one. */
|
|
18
|
+
packageQualifiedName?: string;
|
|
19
|
+
packageVersion?: string;
|
|
20
|
+
/** Absolute path of the file. */
|
|
21
|
+
sourceUri: string;
|
|
22
|
+
/** Path relative to the root that owns it — stable across checkouts. */
|
|
23
|
+
sourceFile: string;
|
|
24
|
+
/** Content hash, populated only where a caller needs change detection. */
|
|
25
|
+
sourceHash?: string;
|
|
26
|
+
/** False for anything under a resolved dependency root. */
|
|
27
|
+
writable: boolean;
|
|
28
|
+
/** Distance from the project in the resolved dependency graph; project is 0. */
|
|
29
|
+
importDepth: number;
|
|
30
|
+
importedBy?: string[];
|
|
31
|
+
/** What brought this root into the graph (methodology id, module name, …). */
|
|
32
|
+
selectedBy?: string;
|
|
33
|
+
}
|
|
34
|
+
/** A resolved dependency root: one package directory and what it contributes. */
|
|
35
|
+
export interface ResolvedRoot {
|
|
36
|
+
/** Absolute directory of the package. */
|
|
37
|
+
dir: string;
|
|
38
|
+
origin: SemanticOrigin;
|
|
39
|
+
packageName: string;
|
|
40
|
+
packageVersion?: string;
|
|
41
|
+
importDepth: number;
|
|
42
|
+
selectedBy?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Map a package manifest `type:` to an authority category.
|
|
46
|
+
*
|
|
47
|
+
* `profile` is ontology content: it ships definitions that projects specialize,
|
|
48
|
+
* and is frozen for the session exactly as the ontology is. `device` is what a
|
|
49
|
+
* project declares about itself, so a device root is only ever the workspace.
|
|
50
|
+
*/
|
|
51
|
+
export declare function originForPackageType(type: string | undefined): SemanticOrigin;
|
|
52
|
+
/** True when a change to this origin requires a runtime restart (section 13.3). */
|
|
53
|
+
export declare function isReusableOrigin(origin: SemanticOrigin): boolean;
|
|
54
|
+
/** Classify a watched source path from the resolved provenance table. */
|
|
55
|
+
export declare function classifySourceChange(filePath: string, provenance: ProvenanceTable): 'project' | 'reusable' | 'unknown';
|
|
56
|
+
/**
|
|
57
|
+
* Resolves any file path to its provenance.
|
|
58
|
+
*
|
|
59
|
+
* Roots may nest — a project can contain a vendored dependency under
|
|
60
|
+
* `node_modules/` — so the LONGEST matching root wins. A path under no
|
|
61
|
+
* dependency root but under the workspace is project content; a path under
|
|
62
|
+
* neither is reported as unknown rather than guessed at.
|
|
63
|
+
*/
|
|
64
|
+
export declare class ProvenanceTable {
|
|
65
|
+
private readonly roots;
|
|
66
|
+
private readonly projectRoot;
|
|
67
|
+
private readonly cache;
|
|
68
|
+
constructor(projectRoot: string, roots: readonly ResolvedRoot[]);
|
|
69
|
+
/** All dependency roots, longest path first. */
|
|
70
|
+
getRoots(): readonly ResolvedRoot[];
|
|
71
|
+
/**
|
|
72
|
+
* Provenance for one file, or undefined when it belongs to no known root.
|
|
73
|
+
*
|
|
74
|
+
* Undefined is deliberate: a caller that cannot establish origin must say
|
|
75
|
+
* so rather than defaulting to project (which would offer edits on library
|
|
76
|
+
* content) or to ontology (which would hide a real project file).
|
|
77
|
+
*/
|
|
78
|
+
lookup(filePath: string): SourceProvenance | undefined;
|
|
79
|
+
/**
|
|
80
|
+
* Provenance for a file that must have one.
|
|
81
|
+
*
|
|
82
|
+
* Falls back to project so that a caller in the middle of building a model
|
|
83
|
+
* is not forced to handle undefined; use `lookup` where the distinction
|
|
84
|
+
* between "project" and "unknown" carries meaning.
|
|
85
|
+
*/
|
|
86
|
+
lookupOrProject(filePath: string): SourceProvenance;
|
|
87
|
+
private compute;
|
|
88
|
+
private projectProvenance;
|
|
89
|
+
}
|
|
90
|
+
/** Identity of a definition, sufficient to name it unambiguously. */
|
|
91
|
+
export interface DefinitionIdentity {
|
|
92
|
+
qualifiedName: string;
|
|
93
|
+
shortName: string;
|
|
94
|
+
stableId?: string;
|
|
95
|
+
provenance?: SourceProvenance;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Provenance of a model element, keeping declaration and classification apart.
|
|
99
|
+
*
|
|
100
|
+
* A project usage typed by an ontology definition is project-owned content that
|
|
101
|
+
* happens to be classified by library content. Collapsing the two is what made
|
|
102
|
+
* Architect label project usages as read-only ontology elements.
|
|
103
|
+
*/
|
|
104
|
+
export interface SemanticElementProvenance {
|
|
105
|
+
/** Source that declares this definition or usage. */
|
|
106
|
+
declaration: SourceProvenance;
|
|
107
|
+
/** Definition that types the usage; absent for an untyped declaration. */
|
|
108
|
+
classifier?: DefinitionIdentity;
|
|
109
|
+
/** Full specialization chain, nearest definition first. */
|
|
110
|
+
classifierChain?: DefinitionIdentity[];
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=source-provenance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-provenance.d.ts","sourceRoot":"","sources":["../../src/model/source-provenance.ts"],"names":[],"mappings":"AAqBA;;;;;;;;;GASG;AACH,MAAM,MAAM,cAAc,GACpB,kBAAkB,GAClB,WAAW,GACX,UAAU,GACV,WAAW,GACX,aAAa,GACb,SAAS,CAAC;AAEhB,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,cAAc,CAAC;IACvB,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;IAClB,gFAAgF;IAChF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,iFAAiF;AACjF,MAAM,WAAW,YAAY;IACzB,yCAAyC;IACzC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,cAAc,CAiB7E;AAOD,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAEhE;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,GAC5B,SAAS,GAAG,UAAU,GAAG,SAAS,CAIpC;AAED;;;;;;;GAOG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmD;gBAE7D,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,YAAY,EAAE;IAQ/D,gDAAgD;IAChD,QAAQ,IAAI,SAAS,YAAY,EAAE;IAInC;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAoBtD;;;;;;OAMG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB;IAKnD,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,iBAAiB;CAU5B;AAED,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACtC,qDAAqD;IACrD,WAAW,EAAE,gBAAgB,CAAC;IAC9B,0EAA0E;IAC1E,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,2DAA2D;IAC3D,eAAe,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC1C"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
// ─── Source Provenance ────────────────────────────────────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// Where a piece of semantic content came from, and whether the user may edit it.
|
|
4
|
+
//
|
|
5
|
+
// The rule that makes this trustworthy is that origin is decided by the
|
|
6
|
+
// RESOLVED DEPENDENCY ROOT a file sits under — never by what kind of construct
|
|
7
|
+
// it declares, what the file is called, or where it sits in a directory tree.
|
|
8
|
+
// `action def LocalCalibration` written in the workspace is project content;
|
|
9
|
+
// the same declaration inside a resolved methodology package is methodology
|
|
10
|
+
// content. Nothing about the declaration itself is consulted.
|
|
11
|
+
//
|
|
12
|
+
// This matters because the previous behaviour inferred ownership from
|
|
13
|
+
// configured filesystem roots, which made a project-local definition look like
|
|
14
|
+
// ontology content whenever the roots overlapped, and left every DTO unable to
|
|
15
|
+
// say which package a name actually came from.
|
|
16
|
+
//
|
|
17
|
+
// Design reference: sections 7.1-7.3.
|
|
18
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
19
|
+
import { isAbsolute, resolve, sep } from 'node:path';
|
|
20
|
+
/**
|
|
21
|
+
* Map a package manifest `type:` to an authority category.
|
|
22
|
+
*
|
|
23
|
+
* `profile` is ontology content: it ships definitions that projects specialize,
|
|
24
|
+
* and is frozen for the session exactly as the ontology is. `device` is what a
|
|
25
|
+
* project declares about itself, so a device root is only ever the workspace.
|
|
26
|
+
*/
|
|
27
|
+
export function originForPackageType(type) {
|
|
28
|
+
switch ((type ?? '').trim()) {
|
|
29
|
+
case 'ontology':
|
|
30
|
+
case 'profile':
|
|
31
|
+
return 'ontology';
|
|
32
|
+
case 'methodology':
|
|
33
|
+
return 'methodology';
|
|
34
|
+
case 'extension':
|
|
35
|
+
return 'extension';
|
|
36
|
+
case 'device':
|
|
37
|
+
return 'project';
|
|
38
|
+
default:
|
|
39
|
+
// An unrecognized type is treated as ontology rather than project:
|
|
40
|
+
// it arrived through dependency resolution, so it is not writable,
|
|
41
|
+
// and calling it project content would wrongly offer edits on it.
|
|
42
|
+
return 'ontology';
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/** Origins whose content is frozen for the lifetime of a runtime session. */
|
|
46
|
+
const REUSABLE_ORIGINS = new Set([
|
|
47
|
+
'standard-library', 'memo-core', 'ontology', 'extension', 'methodology',
|
|
48
|
+
]);
|
|
49
|
+
/** True when a change to this origin requires a runtime restart (section 13.3). */
|
|
50
|
+
export function isReusableOrigin(origin) {
|
|
51
|
+
return REUSABLE_ORIGINS.has(origin);
|
|
52
|
+
}
|
|
53
|
+
/** Classify a watched source path from the resolved provenance table. */
|
|
54
|
+
export function classifySourceChange(filePath, provenance) {
|
|
55
|
+
const source = provenance.lookup(filePath);
|
|
56
|
+
if (!source)
|
|
57
|
+
return 'unknown';
|
|
58
|
+
return isReusableOrigin(source.origin) ? 'reusable' : 'project';
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Resolves any file path to its provenance.
|
|
62
|
+
*
|
|
63
|
+
* Roots may nest — a project can contain a vendored dependency under
|
|
64
|
+
* `node_modules/` — so the LONGEST matching root wins. A path under no
|
|
65
|
+
* dependency root but under the workspace is project content; a path under
|
|
66
|
+
* neither is reported as unknown rather than guessed at.
|
|
67
|
+
*/
|
|
68
|
+
export class ProvenanceTable {
|
|
69
|
+
roots;
|
|
70
|
+
projectRoot;
|
|
71
|
+
cache = new Map();
|
|
72
|
+
constructor(projectRoot, roots) {
|
|
73
|
+
this.projectRoot = normalizeDir(projectRoot);
|
|
74
|
+
// Longest first so nested roots resolve before their parents.
|
|
75
|
+
this.roots = [...roots]
|
|
76
|
+
.map(root => ({ ...root, dir: normalizeDir(root.dir) }))
|
|
77
|
+
.sort((a, b) => b.dir.length - a.dir.length);
|
|
78
|
+
}
|
|
79
|
+
/** All dependency roots, longest path first. */
|
|
80
|
+
getRoots() {
|
|
81
|
+
return this.roots;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Provenance for one file, or undefined when it belongs to no known root.
|
|
85
|
+
*
|
|
86
|
+
* Undefined is deliberate: a caller that cannot establish origin must say
|
|
87
|
+
* so rather than defaulting to project (which would offer edits on library
|
|
88
|
+
* content) or to ontology (which would hide a real project file).
|
|
89
|
+
*/
|
|
90
|
+
lookup(filePath) {
|
|
91
|
+
// Parsers retain project-relative paths for transport. Resolve those
|
|
92
|
+
// against the project that owns this table, never the CLI's own cwd.
|
|
93
|
+
const absolute = isAbsolute(filePath) ? resolve(filePath) : resolve(this.projectRoot, filePath);
|
|
94
|
+
if (this.cache.has(absolute))
|
|
95
|
+
return this.cache.get(absolute);
|
|
96
|
+
let provenance = this.compute(absolute);
|
|
97
|
+
// Registry entries originating from package scans may retain a path
|
|
98
|
+
// relative to their package root. Try every resolved root only after
|
|
99
|
+
// the project-relative interpretation, so authored project paths keep
|
|
100
|
+
// their normal meaning.
|
|
101
|
+
if (!provenance && !isAbsolute(filePath)) {
|
|
102
|
+
for (const root of this.roots) {
|
|
103
|
+
provenance = this.compute(resolve(root.dir, filePath));
|
|
104
|
+
if (provenance)
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
this.cache.set(absolute, provenance);
|
|
109
|
+
return provenance;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Provenance for a file that must have one.
|
|
113
|
+
*
|
|
114
|
+
* Falls back to project so that a caller in the middle of building a model
|
|
115
|
+
* is not forced to handle undefined; use `lookup` where the distinction
|
|
116
|
+
* between "project" and "unknown" carries meaning.
|
|
117
|
+
*/
|
|
118
|
+
lookupOrProject(filePath) {
|
|
119
|
+
const absolute = isAbsolute(filePath) ? resolve(filePath) : resolve(this.projectRoot, filePath);
|
|
120
|
+
return this.lookup(absolute) ?? this.projectProvenance(absolute);
|
|
121
|
+
}
|
|
122
|
+
compute(absolute) {
|
|
123
|
+
for (const root of this.roots) {
|
|
124
|
+
if (!isUnder(absolute, root.dir))
|
|
125
|
+
continue;
|
|
126
|
+
return {
|
|
127
|
+
origin: root.origin,
|
|
128
|
+
packageName: root.packageName,
|
|
129
|
+
packageVersion: root.packageVersion,
|
|
130
|
+
sourceUri: absolute,
|
|
131
|
+
sourceFile: relativeTo(root.dir, absolute),
|
|
132
|
+
writable: root.origin === 'project',
|
|
133
|
+
importDepth: root.importDepth,
|
|
134
|
+
selectedBy: root.selectedBy,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
if (isUnder(absolute, this.projectRoot))
|
|
138
|
+
return this.projectProvenance(absolute);
|
|
139
|
+
return undefined;
|
|
140
|
+
}
|
|
141
|
+
projectProvenance(absolute) {
|
|
142
|
+
return {
|
|
143
|
+
origin: 'project',
|
|
144
|
+
packageName: '(project)',
|
|
145
|
+
sourceUri: absolute,
|
|
146
|
+
sourceFile: relativeTo(this.projectRoot, absolute),
|
|
147
|
+
writable: true,
|
|
148
|
+
importDepth: 0,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
function normalizeDir(dir) {
|
|
153
|
+
const resolved = resolve(dir);
|
|
154
|
+
return resolved.endsWith(sep) ? resolved.slice(0, -sep.length) : resolved;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Containment test on path segments.
|
|
158
|
+
*
|
|
159
|
+
* A plain `startsWith` would place `/a/project-old/x` under `/a/project`, so the
|
|
160
|
+
* boundary must land on a separator.
|
|
161
|
+
*/
|
|
162
|
+
function isUnder(absolute, dir) {
|
|
163
|
+
return absolute === dir || absolute.startsWith(dir + sep);
|
|
164
|
+
}
|
|
165
|
+
function relativeTo(dir, absolute) {
|
|
166
|
+
const rel = absolute === dir ? '' : absolute.slice(dir.length + sep.length);
|
|
167
|
+
return rel.split(sep).join('/');
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=source-provenance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-provenance.js","sourceRoot":"","sources":["../../src/model/source-provenance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type SysmlIR } from '../sysml-ir/index.js';
|
|
2
|
+
import type { ParsedDocument } from './parser-utils.js';
|
|
3
|
+
import type { MemoModelDTO } from './semantic.js';
|
|
4
|
+
export declare const SYSML_IR_VERSION = "2.0.0";
|
|
5
|
+
/** Build the canonical record stream before exposing Memo's legacy projection. */
|
|
6
|
+
export declare function lowerAstToSysmlIr(documents: ParsedDocument[], model: MemoModelDTO, projectRoot?: string): SysmlIR;
|
|
7
|
+
/** Memo is now explicitly a projection of IR, rather than its ingestion boundary. */
|
|
8
|
+
export declare function projectSysmlIrToMemo(ir: SysmlIR, model: MemoModelDTO): MemoModelDTO;
|
|
9
|
+
//# sourceMappingURL=sysml-ir.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sysml-ir.d.ts","sourceRoot":"","sources":["../../src/model/sysml-ir.ts"],"names":[],"mappings":"AAIA,OAAO,EAKH,KAAK,OAAO,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,eAAO,MAAM,gBAAgB,UAAU,CAAC;AAExC,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,SAAgB,GAAG,OAAO,CA8DxH;AA+BD,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,GAAG,YAAY,CAEnF"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
// AST → canonical SysML IR → Memo projection. The builder remains the
|
|
2
|
+
// projection implementation while the IR owns ingestion completeness.
|
|
3
|
+
import { resolve } from 'node:path';
|
|
4
|
+
import { pathToFileURL } from 'node:url';
|
|
5
|
+
import { sysmlIdentity, } from '../sysml-ir/index.js';
|
|
6
|
+
export const SYSML_IR_VERSION = '2.0.0';
|
|
7
|
+
/** Build the canonical record stream before exposing Memo's legacy projection. */
|
|
8
|
+
export function lowerAstToSysmlIr(documents, model, projectRoot = process.cwd()) {
|
|
9
|
+
const elements = [];
|
|
10
|
+
const diagnostics = [];
|
|
11
|
+
const projected = new Set();
|
|
12
|
+
for (const document of documents) {
|
|
13
|
+
// Langium's EmptyFileSystem assigns ephemeral document URIs. Identity
|
|
14
|
+
// must instead name the authored file, identically in-process and over
|
|
15
|
+
// sysmlc's pipe.
|
|
16
|
+
const uri = pathToFileURL(resolve(projectRoot, document.filePath)).href;
|
|
17
|
+
const visitPackage = (pkg, path, packageName) => {
|
|
18
|
+
for (const [index, member] of (pkg.members ?? []).entries()) {
|
|
19
|
+
const memberPath = `${path}/members[${index}]`;
|
|
20
|
+
if (member.$type === 'PackageDeclaration') {
|
|
21
|
+
visitPackage(member, memberPath, packageName ? `${packageName}::${member.name}` : member.name);
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
// Imports, metadata and constraints are declarations too. They
|
|
25
|
+
// cannot disappear merely because the current Memo projection
|
|
26
|
+
// has no shape for them.
|
|
27
|
+
const name = member.name ?? member.$type;
|
|
28
|
+
const range = sourceRange(document, member);
|
|
29
|
+
const identity = sysmlIdentity(uri, memberPath, member.$type);
|
|
30
|
+
const candidate = Object.entries(model.elements).find(([, element]) => element.file === document.filePath && element.id === name && element.package === (packageName || undefined));
|
|
31
|
+
if (candidate && !projected.has(candidate[0])) {
|
|
32
|
+
projected.add(candidate[0]);
|
|
33
|
+
const mapped = {
|
|
34
|
+
kind: 'mapped', identity, source: range,
|
|
35
|
+
standardProperties: declaredProperties(member), providerProperties: {}, effectiveTypes: [], memoElementId: candidate[0],
|
|
36
|
+
};
|
|
37
|
+
elements.push(mapped);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
const unmappable = `Memo has no projection for ${member.$type} '${name}'`;
|
|
41
|
+
const generic = {
|
|
42
|
+
kind: 'generic', identity, source: range,
|
|
43
|
+
standardProperties: declaredProperties(member), providerProperties: {}, effectiveTypes: [], unmappable,
|
|
44
|
+
};
|
|
45
|
+
elements.push(generic);
|
|
46
|
+
diagnostics.push({ domain: 'memo-ingest', severity: 'warning', code: 'unmapped-sysml-element', message: unmappable, elementId: identity.id, file: document.filePath, range });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
for (const [index, member] of (document.document.parseResult.value.members ?? []).entries()) {
|
|
51
|
+
// The package's own name is where the qualified name starts. Passing
|
|
52
|
+
// '' here matched every element against `package === undefined`, so
|
|
53
|
+
// nothing inside a top-level package ever projected: conservation
|
|
54
|
+
// still held — every declaration was reported — but as a file full
|
|
55
|
+
// of unmapped generics rather than the elements MEMO does model.
|
|
56
|
+
if (member.$type === 'PackageDeclaration')
|
|
57
|
+
visitPackage(member, `members[${index}]`, member.name);
|
|
58
|
+
else {
|
|
59
|
+
// A top-level non-package declaration is rare but valid input;
|
|
60
|
+
// preserve it with the same guarantee.
|
|
61
|
+
const range = sourceRange(document, member);
|
|
62
|
+
const identity = sysmlIdentity(uri, `members[${index}]`, member.$type);
|
|
63
|
+
const message = `Memo has no projection for ${member.$type} '${member.name ?? member.$type}'`;
|
|
64
|
+
elements.push({ kind: 'generic', identity, source: range, standardProperties: declaredProperties(member), providerProperties: {}, effectiveTypes: [], unmappable: message });
|
|
65
|
+
diagnostics.push({ domain: 'memo-ingest', severity: 'warning', code: 'unmapped-sysml-element', message, elementId: identity.id, file: document.filePath, range });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return { irVersion: SYSML_IR_VERSION, elements, diagnostics };
|
|
70
|
+
}
|
|
71
|
+
function declaredProperties(node) {
|
|
72
|
+
const properties = {};
|
|
73
|
+
for (const [key, value] of Object.entries(node)) {
|
|
74
|
+
if (!key.startsWith('$') && typeof value !== 'function' && value !== undefined)
|
|
75
|
+
properties[key] = jsonProperty(value);
|
|
76
|
+
}
|
|
77
|
+
return properties;
|
|
78
|
+
}
|
|
79
|
+
/** AST nodes contain parent links; retain their declared shape without leaking a cycle into IR JSON. */
|
|
80
|
+
function jsonProperty(value) {
|
|
81
|
+
if (value === null || ['string', 'number', 'boolean'].includes(typeof value))
|
|
82
|
+
return value;
|
|
83
|
+
if (Array.isArray(value))
|
|
84
|
+
return value.map(jsonProperty);
|
|
85
|
+
if (typeof value === 'object') {
|
|
86
|
+
const result = {};
|
|
87
|
+
for (const [key, child] of Object.entries(value)) {
|
|
88
|
+
if (!key.startsWith('$') && typeof child !== 'function' && child !== undefined)
|
|
89
|
+
result[key] = jsonProperty(child);
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
}
|
|
93
|
+
return String(value);
|
|
94
|
+
}
|
|
95
|
+
function sourceRange(document, node) {
|
|
96
|
+
const offset = node.$cstNode?.range?.start ?? 0;
|
|
97
|
+
const position = document.document.textDocument.positionAt(offset);
|
|
98
|
+
const start = { line: position.line + 1, ...(Number.isFinite(position.character) ? { column: position.character + 1 } : {}) };
|
|
99
|
+
return { file: document.filePath, start };
|
|
100
|
+
}
|
|
101
|
+
/** Memo is now explicitly a projection of IR, rather than its ingestion boundary. */
|
|
102
|
+
export function projectSysmlIrToMemo(ir, model) {
|
|
103
|
+
return { ...model, sysmlIr: ir };
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=sysml-ir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sysml-ir.js","sourceRoot":"","sources":["../../src/model/sysml-ir.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-deriver.d.ts","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAkCvD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,SAAS,EAChB,YAAY,CAAC,EAAE,YAAY,GAC5B,MAAM,EAAE,CA2BV;
|
|
1
|
+
{"version":3,"file":"view-deriver.d.ts","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAkCvD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,SAAS,EAChB,YAAY,CAAC,EAAE,YAAY,GAC5B,MAAM,EAAE,CA2BV;AAgDD,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,YAAY,CAgI5F"}
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
// already consumes for config-defined viewpoints, so SysML-modelled views
|
|
13
13
|
// appear in the Diagrams browser with an auto-populated element selection.
|
|
14
14
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
15
|
-
import { resolveViewKind } from './view-kinds.js';
|
|
15
|
+
import { resolveViewKind, VIEW_KIND_SHORT_ID_PREFIX } from './view-kinds.js';
|
|
16
16
|
/** Kinds whose instances are treated as model-defined views. */
|
|
17
17
|
function isViewElement(el, kindRegistry) {
|
|
18
18
|
if (el.kind === 'Viewpoint' || el.kind === 'ViewSelectionQuery' || el.kind === 'ViewInclusionRule')
|
|
@@ -116,6 +116,10 @@ function resolveViewpoints(view, model) {
|
|
|
116
116
|
// that bind to it — a viewpoint states which layers it frames even
|
|
117
117
|
// before any view exists.
|
|
118
118
|
declaredLayers: splitList(authored?.attributes['includedLayers'] ?? ''),
|
|
119
|
+
explorerLane: authored?.attributes['explorerLane'],
|
|
120
|
+
explorerOrder: Number.isFinite(Number(authored?.attributes['explorerOrder']))
|
|
121
|
+
? Number(authored?.attributes['explorerOrder'])
|
|
122
|
+
: undefined,
|
|
119
123
|
ref,
|
|
120
124
|
};
|
|
121
125
|
});
|
|
@@ -143,10 +147,15 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
143
147
|
? el.package.split('::').some(segment => /(?:^|_)samples(?:_|$)/.test(segment))
|
|
144
148
|
: false;
|
|
145
149
|
const authoredViewpoints = resolveViewpoints(el, model);
|
|
150
|
+
// A renderer sample without a binding remains in Model > Samples, but
|
|
151
|
+
// an authored ISO 42010 binding is always authoritative. In
|
|
152
|
+
// particular, a real project may legitimately contain `samples` in
|
|
153
|
+
// its package name and still organize its views by viewpoint.
|
|
154
|
+
const usesRendererSampleFallback = isRendererSample && authoredViewpoints.length === 0;
|
|
146
155
|
// A view with no viewpoint binding is genuinely unassigned. Do not
|
|
147
156
|
// misclassify it as a "Document View" merely because its binding was
|
|
148
157
|
// absent or could not be resolved.
|
|
149
|
-
const vpIds =
|
|
158
|
+
const vpIds = usesRendererSampleFallback
|
|
150
159
|
? ['__model']
|
|
151
160
|
: authoredViewpoints.length > 0
|
|
152
161
|
? authoredViewpoints.map(vp => vp.id)
|
|
@@ -155,11 +164,13 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
155
164
|
for (const authoredViewpoint of authoredViewpoints.length > 0
|
|
156
165
|
? authoredViewpoints
|
|
157
166
|
: [{ id: '__unassigned', label: 'Unassigned Views', ref: '__unassigned' }]) {
|
|
158
|
-
if (!
|
|
167
|
+
if (!usesRendererSampleFallback && !viewpointsById.has(authoredViewpoint.id)) {
|
|
159
168
|
viewpointsById.set(authoredViewpoint.id, {
|
|
160
169
|
id: authoredViewpoint.id,
|
|
161
170
|
label: authoredViewpoint.label,
|
|
162
171
|
group: authoredViewpoint.group,
|
|
172
|
+
explorerLane: authoredViewpoint.explorerLane,
|
|
173
|
+
explorerOrder: authoredViewpoint.explorerOrder,
|
|
163
174
|
declaredLayers: authoredViewpoint.declaredLayers?.length
|
|
164
175
|
? authoredViewpoint.declaredLayers : undefined,
|
|
165
176
|
visibleKinds: [],
|
|
@@ -188,17 +199,24 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
188
199
|
vp.visibleRelationships.push(r);
|
|
189
200
|
}
|
|
190
201
|
}
|
|
202
|
+
// A view usage inherits the attribute values its `view def` binds, and
|
|
203
|
+
// SysIDE forbids restating them on the usage, so the definition is the
|
|
204
|
+
// only place they can live. The usage's own values still win where it
|
|
205
|
+
// declares any.
|
|
206
|
+
const inherited = kindRegistry?.getViewDefaults(el.kind) ?? {};
|
|
207
|
+
const attr = (name) => el.attributes[name] || inherited[name];
|
|
191
208
|
// Presentation hints declared on the view — the renderer stays dumb and
|
|
192
209
|
// just honors them
|
|
193
210
|
const properties = {};
|
|
194
211
|
for (const hint of ['layoutHint', 'styleHint', 'presentationKind']) {
|
|
195
|
-
|
|
196
|
-
|
|
212
|
+
const value = attr(hint);
|
|
213
|
+
if (value)
|
|
214
|
+
properties[hint] = value;
|
|
197
215
|
}
|
|
198
216
|
// Every view resolves to exactly one of the 8 spec view kinds: an
|
|
199
217
|
// explicit `viewKind` declaration wins, else the legacy diagramType
|
|
200
218
|
// key maps; document-backed views (no diagramType) become browser.
|
|
201
|
-
const viewKind = resolveViewKind(
|
|
219
|
+
const viewKind = resolveViewKind(attr('viewKind'), el.attributes['diagramType']);
|
|
202
220
|
diagrams.push({
|
|
203
221
|
id: isRendererSample
|
|
204
222
|
? `diag-sample-${el.id}`
|
|
@@ -227,6 +245,18 @@ export function deriveModelViews(model, kindRegistry) {
|
|
|
227
245
|
sourceFile: el.file,
|
|
228
246
|
});
|
|
229
247
|
}
|
|
248
|
+
// Views use their standard SysML view-kind family, rather than the generic
|
|
249
|
+
// MemoDiagramView element family: GEN-1, ACT-1, STM-1, and so on.
|
|
250
|
+
const diagramsByPrefix = new Map();
|
|
251
|
+
for (const diagram of diagrams) {
|
|
252
|
+
const prefix = VIEW_KIND_SHORT_ID_PREFIX[diagram.viewKind] ?? 'BRW';
|
|
253
|
+
diagramsByPrefix.set(prefix, [...(diagramsByPrefix.get(prefix) ?? []), diagram]);
|
|
254
|
+
}
|
|
255
|
+
for (const [prefix, views] of diagramsByPrefix) {
|
|
256
|
+
views.sort((a, b) => a.id.localeCompare(b.id)).forEach((diagram, index) => {
|
|
257
|
+
diagram.shortId = `${prefix}-${index + 1}`;
|
|
258
|
+
});
|
|
259
|
+
}
|
|
230
260
|
return { viewpoints: [...viewpointsById.values()], diagrams };
|
|
231
261
|
}
|
|
232
262
|
//# sourceMappingURL=view-deriver.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-deriver.js","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,0EAA0E;AAC1E,EAAE;AACF,8EAA8E;AAC9E,6EAA6E;AAC7E,gFAAgF;AAChF,2EAA2E;AAC3E,0EAA0E;AAC1E,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,2EAA2E;AAC3E,gFAAgF;AAIhF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"view-deriver.js","sourceRoot":"","sources":["../../src/model/view-deriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/** The eight standard SysML v2 view kinds. */
|
|
2
2
|
export declare const VIEW_KINDS: readonly ["general", "interconnection", "actionflow", "statetransition", "sequence", "grid", "browser", "geometry"];
|
|
3
3
|
export type ViewKind = (typeof VIEW_KINDS)[number];
|
|
4
|
+
/** Compact identifier prefix used by views of each standard SysML view kind. */
|
|
5
|
+
export declare const VIEW_KIND_SHORT_ID_PREFIX: Record<ViewKind, string>;
|
|
4
6
|
export declare function isViewKind(value: string): value is ViewKind;
|
|
5
7
|
/**
|
|
6
8
|
* Map every legacy `diagramType` key to its spec view kind.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-kinds.d.ts","sourceRoot":"","sources":["../../src/model/view-kinds.ts"],"names":[],"mappings":"AAYA,8CAA8C;AAC9C,eAAO,MAAM,UAAU,qHASb,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"view-kinds.d.ts","sourceRoot":"","sources":["../../src/model/view-kinds.ts"],"names":[],"mappings":"AAYA,8CAA8C;AAC9C,eAAO,MAAM,UAAU,qHASb,CAAC;AAEX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,gFAAgF;AAChF,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAS9D,CAAC;AAIF,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE3D;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAkB9D,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAI/E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC3B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,WAAW,EAAE,MAAM,GAAG,SAAS,GAChC,QAAQ,CAKV"}
|