@skmtc/core 0.18.1 → 0.26.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/README.md +0 -1
- package/esm/anchors/buildSidecar.js +1 -1
- package/esm/anchors/postPass.d.ts +1 -1
- package/esm/anchors/postPass.js +1 -1
- package/esm/anchors/sidecar.d.ts +2 -2
- package/esm/anchors/sidecar.js +1 -1
- package/esm/context/CoreContext.d.ts +7 -1
- package/esm/context/CoreContext.d.ts.map +1 -1
- package/esm/context/CoreContext.js +17 -11
- package/esm/context/GenerateContext.d.ts +25 -4
- package/esm/context/GenerateContext.d.ts.map +1 -1
- package/esm/context/GenerateContext.js +135 -70
- package/esm/context/ParseIssue.d.ts +1 -1
- package/esm/context/RenderContext.d.ts +2 -6
- package/esm/context/RenderContext.d.ts.map +1 -1
- package/esm/context/RenderContext.js +4 -14
- package/esm/context/generateTypes.d.ts +35 -8
- package/esm/context/generateTypes.d.ts.map +1 -1
- package/{script/deps/jsr.io/@std/fs/1.0.23 → esm/deps/jsr.io/@std/fs/1.0.24}/exists.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.14/_os.js +14 -0
- package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
- package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/posix/join.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
- package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/posix/normalize.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
- package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/from_file_url.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
- package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/join.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
- package/{script/deps/jsr.io/@std/path/1.1.4 → esm/deps/jsr.io/@std/path/1.1.6}/windows/normalize.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
- package/esm/dsl/CodeFileBase.d.ts +57 -24
- package/esm/dsl/CodeFileBase.d.ts.map +1 -1
- package/esm/dsl/CodeFileBase.js +35 -53
- package/esm/dsl/FileBase.d.ts +21 -25
- package/esm/dsl/FileBase.d.ts.map +1 -1
- package/esm/dsl/FileBase.js +20 -29
- package/esm/dsl/GeneratorKeys.d.ts +19 -19
- package/esm/dsl/GeneratorKeys.d.ts.map +1 -1
- package/esm/dsl/GeneratorKeys.js +6 -5
- package/esm/dsl/IdentifierBase.d.ts +19 -5
- package/esm/dsl/IdentifierBase.d.ts.map +1 -1
- package/esm/dsl/IdentifierBase.js +21 -5
- package/esm/dsl/IdentifierType.d.ts +8 -14
- package/esm/dsl/IdentifierType.d.ts.map +1 -1
- package/esm/dsl/Lang.d.ts +18 -38
- package/esm/dsl/Lang.d.ts.map +1 -1
- package/esm/dsl/MarkdownFile.d.ts +55 -0
- package/esm/dsl/MarkdownFile.d.ts.map +1 -0
- package/esm/dsl/MarkdownFile.js +58 -0
- package/esm/dsl/model/ModelDriver.d.ts +3 -1
- package/esm/dsl/model/ModelDriver.d.ts.map +1 -1
- package/esm/dsl/model/ModelDriver.js +6 -8
- package/esm/dsl/model/toModelEntry.d.ts +21 -17
- package/esm/dsl/model/toModelEntry.d.ts.map +1 -1
- package/esm/dsl/model/toModelEntry.js +3 -27
- package/esm/dsl/model/toModelProjectionBase.d.ts +15 -15
- package/esm/dsl/model/toModelProjectionBase.d.ts.map +1 -1
- package/esm/dsl/model/types.d.ts +2 -52
- package/esm/dsl/model/types.d.ts.map +1 -1
- package/esm/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
- package/esm/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
- package/esm/dsl/operation/gql/GqlOperationDriver.js +12 -9
- package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
- package/esm/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
- package/esm/dsl/operation/gql/toGqlOperationEntry.js +3 -25
- package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
- package/esm/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
- package/esm/dsl/operation/gql/types.d.ts +1 -33
- package/esm/dsl/operation/gql/types.d.ts.map +1 -1
- package/esm/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
- package/esm/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
- package/esm/dsl/operation/oas/OasOperationDriver.js +12 -9
- package/esm/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
- package/esm/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
- package/esm/dsl/operation/oas/toOasOperationEntry.js +3 -32
- package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
- package/esm/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
- package/esm/dsl/operation/oas/types.d.ts +1 -43
- package/esm/dsl/operation/oas/types.d.ts.map +1 -1
- package/esm/dsl/webhook/WebhookDriver.d.ts +3 -1
- package/esm/dsl/webhook/WebhookDriver.d.ts.map +1 -1
- package/esm/dsl/webhook/WebhookDriver.js +12 -9
- package/esm/dsl/webhook/toWebhookEntry.d.ts +21 -16
- package/esm/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
- package/esm/dsl/webhook/toWebhookEntry.js +3 -32
- package/esm/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
- package/esm/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
- package/esm/dsl/webhook/types.d.ts +1 -36
- package/esm/dsl/webhook/types.d.ts.map +1 -1
- package/esm/enrichments/toEnrichmentDescriptor.d.ts +72 -27
- package/esm/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
- package/esm/enrichments/toEnrichmentDescriptor.js +57 -31
- package/esm/enrichments/validateConfig.d.ts +1 -1
- package/esm/enrichments/validateConfig.js +2 -2
- package/esm/helpers/isImported.js +1 -1
- package/esm/helpers/toResolvedArtifactPath.js +1 -1
- package/esm/mod.d.ts +7 -1
- package/esm/mod.d.ts.map +1 -1
- package/esm/mod.js +7 -1
- package/esm/oas/array/Array.d.ts +2 -0
- package/esm/oas/array/Array.d.ts.map +1 -1
- package/esm/oas/array/Array.js +4 -0
- package/esm/oas/boolean/Boolean.d.ts +3 -1
- package/esm/oas/boolean/Boolean.d.ts.map +1 -1
- package/esm/oas/boolean/Boolean.js +4 -0
- package/esm/oas/components/Components.d.ts +5 -0
- package/esm/oas/components/Components.d.ts.map +1 -1
- package/esm/oas/components/Components.js +6 -1
- package/esm/oas/integer/Integer.d.ts +3 -1
- package/esm/oas/integer/Integer.d.ts.map +1 -1
- package/esm/oas/integer/Integer.js +4 -0
- package/esm/oas/link/Link.d.ts +68 -0
- package/esm/oas/link/Link.d.ts.map +1 -0
- package/esm/oas/link/Link.js +107 -0
- package/esm/oas/number/Number.d.ts +3 -1
- package/esm/oas/number/Number.d.ts.map +1 -1
- package/esm/oas/number/Number.js +4 -0
- package/esm/oas/object/Object.d.ts +9 -0
- package/esm/oas/object/Object.d.ts.map +1 -1
- package/esm/oas/object/Object.js +14 -0
- package/esm/oas/operation/Operation.d.ts +15 -0
- package/esm/oas/operation/Operation.d.ts.map +1 -1
- package/esm/oas/operation/Operation.js +33 -0
- package/esm/oas/ref/Ref.d.ts +23 -1
- package/esm/oas/ref/Ref.d.ts.map +1 -1
- package/esm/oas/ref/Ref.js +32 -0
- package/esm/oas/ref/ref-types.d.ts +18 -1
- package/esm/oas/ref/ref-types.d.ts.map +1 -1
- package/esm/oas/ref/ref-types.js +12 -1
- package/esm/oas/response/Response.d.ts +4 -0
- package/esm/oas/response/Response.d.ts.map +1 -1
- package/esm/oas/response/Response.js +7 -0
- package/esm/oas/schemaPath/traverseSchema.d.ts +31 -0
- package/esm/oas/schemaPath/traverseSchema.d.ts.map +1 -0
- package/esm/oas/schemaPath/traverseSchema.js +113 -0
- package/esm/oas/string/String.d.ts +3 -1
- package/esm/oas/string/String.d.ts.map +1 -1
- package/esm/oas/string/String.js +4 -0
- package/esm/oas/union/Union.d.ts +9 -0
- package/esm/oas/union/Union.d.ts.map +1 -1
- package/esm/oas/union/Union.js +14 -0
- package/esm/oas/unknown/Unknown.d.ts +3 -1
- package/esm/oas/unknown/Unknown.d.ts.map +1 -1
- package/esm/oas/unknown/Unknown.js +4 -0
- package/esm/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
- package/esm/parse/v3-0/components/toComponentsV3.js +3 -1
- package/esm/parse/v3-0/link/toLinksV3.d.ts +17 -0
- package/esm/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
- package/esm/parse/v3-0/link/toLinksV3.js +40 -0
- package/esm/parse/v3-0/object/toObject.d.ts.map +1 -1
- package/esm/parse/v3-0/object/toObject.js +3 -1
- package/esm/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
- package/esm/parse/v3-0/response/toResponseV3.js +4 -1
- package/esm/parse/v3-0/union/toUnion.d.ts.map +1 -1
- package/esm/parse/v3-0/union/toUnion.js +3 -1
- package/esm/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
- package/esm/parse/v3-1/components/toComponentsV3.js +3 -1
- package/esm/parse/v3-1/link/toLinksV3.d.ts +17 -0
- package/esm/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
- package/esm/parse/v3-1/link/toLinksV3.js +40 -0
- package/esm/parse/v3-1/object/toObject.d.ts.map +1 -1
- package/esm/parse/v3-1/object/toObject.js +3 -1
- package/esm/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
- package/esm/parse/v3-1/response/toResponseV3.js +4 -1
- package/esm/parse/v3-1/union/toUnion.d.ts.map +1 -1
- package/esm/parse/v3-1/union/toUnion.js +3 -1
- package/esm/run/toArtifacts.d.ts +8 -1
- package/esm/run/toArtifacts.d.ts.map +1 -1
- package/esm/run/toArtifacts.js +5 -5
- package/esm/run/toInspection.d.ts +8 -0
- package/esm/run/toInspection.d.ts.map +1 -0
- package/esm/run/toInspection.js +78 -0
- package/esm/types/Enrichments.d.ts +19 -8
- package/esm/types/Enrichments.d.ts.map +1 -1
- package/esm/types/Enrichments.js +4 -3
- package/esm/types/GeneratorType.d.ts +5 -5
- package/esm/types/GeneratorType.d.ts.map +1 -1
- package/esm/types/Manifest.d.ts +1 -2
- package/esm/types/Manifest.d.ts.map +1 -1
- package/esm/types/Manifest.js +1 -2
- package/esm/types/ModuleSelect.d.ts +81 -0
- package/esm/types/ModuleSelect.d.ts.map +1 -0
- package/esm/types/ModuleSelect.js +63 -0
- package/esm/types/Preview.d.ts +4 -27
- package/esm/types/Preview.d.ts.map +1 -1
- package/esm/types/Preview.js +4 -25
- package/esm/types/SchemaPath.d.ts +17 -0
- package/esm/types/SchemaPath.d.ts.map +1 -0
- package/esm/types/SchemaPath.js +9 -0
- package/esm/types/Settings.d.ts +8 -0
- package/esm/types/Settings.d.ts.map +1 -1
- package/esm/types/Settings.js +1 -0
- package/esm/types/SkmtcDocument.d.ts +1 -1
- package/esm/types/SupportedSubjects.d.ts +1 -1
- package/package.json +1 -1
- package/script/anchors/buildSidecar.js +1 -1
- package/script/anchors/postPass.d.ts +1 -1
- package/script/anchors/postPass.js +1 -1
- package/script/anchors/sidecar.d.ts +2 -2
- package/script/anchors/sidecar.js +1 -1
- package/script/context/CoreContext.d.ts +7 -1
- package/script/context/CoreContext.d.ts.map +1 -1
- package/script/context/CoreContext.js +17 -11
- package/script/context/GenerateContext.d.ts +25 -4
- package/script/context/GenerateContext.d.ts.map +1 -1
- package/script/context/GenerateContext.js +135 -70
- package/script/context/ParseIssue.d.ts +1 -1
- package/script/context/RenderContext.d.ts +2 -6
- package/script/context/RenderContext.d.ts.map +1 -1
- package/script/context/RenderContext.js +4 -14
- package/script/context/generateTypes.d.ts +35 -8
- package/script/context/generateTypes.d.ts.map +1 -1
- package/{esm/deps/jsr.io/@std/fs/1.0.23 → script/deps/jsr.io/@std/fs/1.0.24}/exists.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/internal/1.0.14/_os.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.js +7 -5
- package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/log/0.224.14/rotating_file_handler.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.js +2 -2
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.js +2 -2
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.js +1 -1
- package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/posix/join.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.js +1 -1
- package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/posix/normalize.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.js +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.js +1 -1
- package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/from_file_url.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.js +1 -1
- package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/join.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.js +1 -1
- package/{esm/deps/jsr.io/@std/path/1.1.4 → script/deps/jsr.io/@std/path/1.1.6}/windows/normalize.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.js +1 -1
- package/script/dsl/CodeFileBase.d.ts +57 -24
- package/script/dsl/CodeFileBase.d.ts.map +1 -1
- package/script/dsl/CodeFileBase.js +37 -54
- package/script/dsl/FileBase.d.ts +21 -25
- package/script/dsl/FileBase.d.ts.map +1 -1
- package/script/dsl/FileBase.js +20 -29
- package/script/dsl/GeneratorKeys.d.ts +19 -19
- package/script/dsl/GeneratorKeys.d.ts.map +1 -1
- package/script/dsl/GeneratorKeys.js +6 -5
- package/script/dsl/IdentifierBase.d.ts +19 -5
- package/script/dsl/IdentifierBase.d.ts.map +1 -1
- package/script/dsl/IdentifierBase.js +21 -5
- package/script/dsl/IdentifierType.d.ts +8 -14
- package/script/dsl/IdentifierType.d.ts.map +1 -1
- package/script/dsl/Lang.d.ts +18 -38
- package/script/dsl/Lang.d.ts.map +1 -1
- package/script/dsl/MarkdownFile.d.ts +55 -0
- package/script/dsl/MarkdownFile.d.ts.map +1 -0
- package/script/dsl/MarkdownFile.js +62 -0
- package/script/dsl/model/ModelDriver.d.ts +3 -1
- package/script/dsl/model/ModelDriver.d.ts.map +1 -1
- package/script/dsl/model/ModelDriver.js +6 -8
- package/script/dsl/model/toModelEntry.d.ts +21 -17
- package/script/dsl/model/toModelEntry.d.ts.map +1 -1
- package/script/dsl/model/toModelEntry.js +3 -63
- package/script/dsl/model/toModelProjectionBase.d.ts +15 -15
- package/script/dsl/model/toModelProjectionBase.d.ts.map +1 -1
- package/script/dsl/model/types.d.ts +2 -52
- package/script/dsl/model/types.d.ts.map +1 -1
- package/script/dsl/operation/gql/GqlOperationDriver.d.ts +3 -1
- package/script/dsl/operation/gql/GqlOperationDriver.d.ts.map +1 -1
- package/script/dsl/operation/gql/GqlOperationDriver.js +12 -9
- package/script/dsl/operation/gql/toGqlOperationEntry.d.ts +20 -15
- package/script/dsl/operation/gql/toGqlOperationEntry.d.ts.map +1 -1
- package/script/dsl/operation/gql/toGqlOperationEntry.js +3 -61
- package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts +11 -10
- package/script/dsl/operation/gql/toGqlOperationProjectionBase.d.ts.map +1 -1
- package/script/dsl/operation/gql/types.d.ts +1 -33
- package/script/dsl/operation/gql/types.d.ts.map +1 -1
- package/script/dsl/operation/oas/OasOperationDriver.d.ts +3 -1
- package/script/dsl/operation/oas/OasOperationDriver.d.ts.map +1 -1
- package/script/dsl/operation/oas/OasOperationDriver.js +12 -9
- package/script/dsl/operation/oas/toOasOperationEntry.d.ts +21 -17
- package/script/dsl/operation/oas/toOasOperationEntry.d.ts.map +1 -1
- package/script/dsl/operation/oas/toOasOperationEntry.js +3 -68
- package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts +11 -10
- package/script/dsl/operation/oas/toOasOperationProjectionBase.d.ts.map +1 -1
- package/script/dsl/operation/oas/types.d.ts +1 -43
- package/script/dsl/operation/oas/types.d.ts.map +1 -1
- package/script/dsl/webhook/WebhookDriver.d.ts +3 -1
- package/script/dsl/webhook/WebhookDriver.d.ts.map +1 -1
- package/script/dsl/webhook/WebhookDriver.js +12 -9
- package/script/dsl/webhook/toWebhookEntry.d.ts +21 -16
- package/script/dsl/webhook/toWebhookEntry.d.ts.map +1 -1
- package/script/dsl/webhook/toWebhookEntry.js +3 -68
- package/script/dsl/webhook/toWebhookProjectionBase.d.ts +11 -10
- package/script/dsl/webhook/toWebhookProjectionBase.d.ts.map +1 -1
- package/script/dsl/webhook/types.d.ts +1 -36
- package/script/dsl/webhook/types.d.ts.map +1 -1
- package/script/enrichments/toEnrichmentDescriptor.d.ts +72 -27
- package/script/enrichments/toEnrichmentDescriptor.d.ts.map +1 -1
- package/script/enrichments/toEnrichmentDescriptor.js +57 -31
- package/script/enrichments/validateConfig.d.ts +1 -1
- package/script/enrichments/validateConfig.js +2 -2
- package/script/helpers/isImported.js +1 -1
- package/script/helpers/toResolvedArtifactPath.js +1 -1
- package/script/mod.d.ts +7 -1
- package/script/mod.d.ts.map +1 -1
- package/script/mod.js +7 -1
- package/script/oas/array/Array.d.ts +2 -0
- package/script/oas/array/Array.d.ts.map +1 -1
- package/script/oas/array/Array.js +4 -0
- package/script/oas/boolean/Boolean.d.ts +3 -1
- package/script/oas/boolean/Boolean.d.ts.map +1 -1
- package/script/oas/boolean/Boolean.js +4 -0
- package/script/oas/components/Components.d.ts +5 -0
- package/script/oas/components/Components.d.ts.map +1 -1
- package/script/oas/components/Components.js +6 -1
- package/script/oas/integer/Integer.d.ts +3 -1
- package/script/oas/integer/Integer.d.ts.map +1 -1
- package/script/oas/integer/Integer.js +4 -0
- package/script/oas/link/Link.d.ts +68 -0
- package/script/oas/link/Link.d.ts.map +1 -0
- package/script/oas/link/Link.js +111 -0
- package/script/oas/number/Number.d.ts +3 -1
- package/script/oas/number/Number.d.ts.map +1 -1
- package/script/oas/number/Number.js +4 -0
- package/script/oas/object/Object.d.ts +9 -0
- package/script/oas/object/Object.d.ts.map +1 -1
- package/script/oas/object/Object.js +14 -0
- package/script/oas/operation/Operation.d.ts +15 -0
- package/script/oas/operation/Operation.d.ts.map +1 -1
- package/script/oas/operation/Operation.js +33 -0
- package/script/oas/ref/Ref.d.ts +23 -1
- package/script/oas/ref/Ref.d.ts.map +1 -1
- package/script/oas/ref/Ref.js +32 -0
- package/script/oas/ref/ref-types.d.ts +18 -1
- package/script/oas/ref/ref-types.d.ts.map +1 -1
- package/script/oas/ref/ref-types.js +13 -2
- package/script/oas/response/Response.d.ts +4 -0
- package/script/oas/response/Response.d.ts.map +1 -1
- package/script/oas/response/Response.js +7 -0
- package/script/oas/schemaPath/traverseSchema.d.ts +31 -0
- package/script/oas/schemaPath/traverseSchema.d.ts.map +1 -0
- package/script/oas/schemaPath/traverseSchema.js +117 -0
- package/script/oas/string/String.d.ts +3 -1
- package/script/oas/string/String.d.ts.map +1 -1
- package/script/oas/string/String.js +4 -0
- package/script/oas/union/Union.d.ts +9 -0
- package/script/oas/union/Union.d.ts.map +1 -1
- package/script/oas/union/Union.js +14 -0
- package/script/oas/unknown/Unknown.d.ts +3 -1
- package/script/oas/unknown/Unknown.d.ts.map +1 -1
- package/script/oas/unknown/Unknown.js +4 -0
- package/script/parse/v3-0/components/toComponentsV3.d.ts.map +1 -1
- package/script/parse/v3-0/components/toComponentsV3.js +3 -1
- package/script/parse/v3-0/link/toLinksV3.d.ts +17 -0
- package/script/parse/v3-0/link/toLinksV3.d.ts.map +1 -0
- package/script/parse/v3-0/link/toLinksV3.js +44 -0
- package/script/parse/v3-0/object/toObject.d.ts.map +1 -1
- package/script/parse/v3-0/object/toObject.js +3 -1
- package/script/parse/v3-0/response/toResponseV3.d.ts.map +1 -1
- package/script/parse/v3-0/response/toResponseV3.js +4 -1
- package/script/parse/v3-0/union/toUnion.d.ts.map +1 -1
- package/script/parse/v3-0/union/toUnion.js +3 -1
- package/script/parse/v3-1/components/toComponentsV3.d.ts.map +1 -1
- package/script/parse/v3-1/components/toComponentsV3.js +3 -1
- package/script/parse/v3-1/link/toLinksV3.d.ts +17 -0
- package/script/parse/v3-1/link/toLinksV3.d.ts.map +1 -0
- package/script/parse/v3-1/link/toLinksV3.js +44 -0
- package/script/parse/v3-1/object/toObject.d.ts.map +1 -1
- package/script/parse/v3-1/object/toObject.js +3 -1
- package/script/parse/v3-1/response/toResponseV3.d.ts.map +1 -1
- package/script/parse/v3-1/response/toResponseV3.js +4 -1
- package/script/parse/v3-1/union/toUnion.d.ts.map +1 -1
- package/script/parse/v3-1/union/toUnion.js +3 -1
- package/script/run/toArtifacts.d.ts +8 -1
- package/script/run/toArtifacts.d.ts.map +1 -1
- package/script/run/toArtifacts.js +5 -5
- package/script/run/toInspection.d.ts +8 -0
- package/script/run/toInspection.d.ts.map +1 -0
- package/script/run/toInspection.js +82 -0
- package/script/types/Enrichments.d.ts +19 -8
- package/script/types/Enrichments.d.ts.map +1 -1
- package/script/types/Enrichments.js +5 -4
- package/script/types/GeneratorType.d.ts +5 -5
- package/script/types/GeneratorType.d.ts.map +1 -1
- package/script/types/Manifest.d.ts +1 -2
- package/script/types/Manifest.d.ts.map +1 -1
- package/script/types/Manifest.js +0 -1
- package/script/types/ModuleSelect.d.ts +81 -0
- package/script/types/ModuleSelect.d.ts.map +1 -0
- package/script/types/ModuleSelect.js +101 -0
- package/script/types/Preview.d.ts +4 -27
- package/script/types/Preview.d.ts.map +1 -1
- package/script/types/Preview.js +5 -26
- package/script/types/SchemaPath.d.ts +17 -0
- package/script/types/SchemaPath.d.ts.map +1 -0
- package/script/types/{AccessorPath.js → SchemaPath.js} +7 -7
- package/script/types/Settings.d.ts +8 -0
- package/script/types/Settings.d.ts.map +1 -1
- package/script/types/Settings.js +1 -0
- package/script/types/SkmtcDocument.d.ts +1 -1
- package/script/types/SupportedSubjects.d.ts +1 -1
- package/esm/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.13/_os.js +0 -12
- package/esm/types/AccessorPath.d.ts +0 -17
- package/esm/types/AccessorPath.d.ts.map +0 -1
- package/esm/types/AccessorPath.js +0 -9
- package/script/deps/jsr.io/@std/internal/1.0.13/_os.d.ts.map +0 -1
- package/script/types/AccessorPath.d.ts +0 -17
- package/script/types/AccessorPath.d.ts.map +0 -1
- /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
- /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
- /package/esm/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.d.ts +0 -0
- /package/script/deps/jsr.io/@std/fs/{1.0.23 → 1.0.24}/exists.js +0 -0
- /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/_os.d.ts +0 -0
- /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.d.ts +0 -0
- /package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/os.js +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/assert_path.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/constants.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/from_file_url.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/_common/normalize_string.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/join.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/normalize.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/_util.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/from_file_url.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/join.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/posix/normalize.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/_util.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/from_file_url.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/join.d.ts +0 -0
- /package/script/deps/jsr.io/@std/path/{1.1.4 → 1.1.6}/windows/normalize.d.ts +0 -0
package/esm/dsl/CodeFileBase.js
CHANGED
|
@@ -1,60 +1,42 @@
|
|
|
1
1
|
import { FileBase } from './FileBase.js';
|
|
2
|
+
/**
|
|
3
|
+
* The neutral name/type filter every language's `findDefinitions` shares. The
|
|
4
|
+
* language passes its definition list and a `typeOf` extractor — the one
|
|
5
|
+
* lang-specific bit, which narrows to the language's Identifier subclass to
|
|
6
|
+
* read the typed `type` (returned here as the opaque `string`).
|
|
7
|
+
*
|
|
8
|
+
* - no `name` and no `type` → returns `all` (the whole list; the former
|
|
9
|
+
* `listDefinitions`).
|
|
10
|
+
* - otherwise → the matching subset, or `undefined` when nothing matches.
|
|
11
|
+
*/
|
|
12
|
+
export const matchDefinitions = (all, query, typeOf) => {
|
|
13
|
+
const name = query?.name;
|
|
14
|
+
const type = query?.type;
|
|
15
|
+
if (name === undefined && type === undefined) {
|
|
16
|
+
return all;
|
|
17
|
+
}
|
|
18
|
+
const matches = all.filter(definition => {
|
|
19
|
+
const nameMatches = name === undefined || definition.identifier.name === name;
|
|
20
|
+
const typeMatches = type === undefined || typeOf(definition.identifier) === type;
|
|
21
|
+
return nameMatches && typeMatches;
|
|
22
|
+
});
|
|
23
|
+
return matches.length > 0 ? matches : undefined;
|
|
24
|
+
};
|
|
2
25
|
/**
|
|
3
26
|
* The base every language's *code* file extends — a {@link FileBase} that
|
|
4
|
-
*
|
|
5
|
-
* {@link FileBase} directly.)
|
|
27
|
+
* coordinates definitions, imports, and re-exports. (`JsonFile`, with none of
|
|
28
|
+
* these, extends {@link FileBase} directly.)
|
|
6
29
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
30
|
+
* Language-blind: the declaration type {@link findDefinitions} filters on is
|
|
31
|
+
* the opaque-boundary `string` here; a lang's concrete file narrows its own
|
|
32
|
+
* `findDefinitions` override to its `XxEntityType`.
|
|
33
|
+
*
|
|
34
|
+
* Pure contract — no fields, no merge logic. Storage AND the duplication/merge
|
|
35
|
+
* policy are language-specific and live in the concrete lang subclass; the
|
|
36
|
+
* engine speaks only these four neutral operations — three writers driven by
|
|
37
|
+
* `register`, plus {@link findDefinitions}, the read seam the cross-generator
|
|
38
|
+
* cache and file inspection use. The cache resolves a single primary by name
|
|
39
|
+
* via `findDefinitions({ name })?.[0]`.
|
|
15
40
|
*/
|
|
16
41
|
export class CodeFileBase extends FileBase {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(...arguments);
|
|
19
|
-
/** Registered imports, keyed by {@link ImportBase.mergeKey}. */
|
|
20
|
-
Object.defineProperty(this, "imports", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
configurable: true,
|
|
23
|
-
writable: true,
|
|
24
|
-
value: new Map()
|
|
25
|
-
});
|
|
26
|
-
/** Registered re-exports, keyed by {@link ReExportBase.mergeKey}. */
|
|
27
|
-
Object.defineProperty(this, "reExports", {
|
|
28
|
-
enumerable: true,
|
|
29
|
-
configurable: true,
|
|
30
|
-
writable: true,
|
|
31
|
-
value: new Map()
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Merge imports in, collapsing any that share a `mergeKey()` with an
|
|
36
|
-
* existing entry via {@link ImportBase.merge}. Neutral — the engine's
|
|
37
|
-
* `register` calls this on the abstract base for every language's file.
|
|
38
|
-
*/
|
|
39
|
-
addImports(incoming) {
|
|
40
|
-
for (const importEntry of incoming) {
|
|
41
|
-
const key = importEntry.mergeKey();
|
|
42
|
-
const existing = this.imports.get(key);
|
|
43
|
-
this.imports.set(key, existing ? existing.merge(importEntry) : importEntry);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Merge re-exports in, collapsing any that share a `mergeKey()` with an
|
|
48
|
-
* existing entry via {@link ReExportBase.merge}. Neutral — the engine's
|
|
49
|
-
* `register` calls this on the abstract base; a language without
|
|
50
|
-
* re-exports never receives any (its concise register vocabulary has no
|
|
51
|
-
* `reExports` field).
|
|
52
|
-
*/
|
|
53
|
-
addReExports(incoming) {
|
|
54
|
-
for (const reExportEntry of incoming) {
|
|
55
|
-
const key = reExportEntry.mergeKey();
|
|
56
|
-
const existing = this.reExports.get(key);
|
|
57
|
-
this.reExports.set(key, existing ? existing.merge(reExportEntry) : reExportEntry);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
42
|
}
|
package/esm/dsl/FileBase.d.ts
CHANGED
|
@@ -1,41 +1,37 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Stringable } from './Stringable.js';
|
|
2
2
|
/**
|
|
3
3
|
* The language-neutral coordination surface shared by the engine and
|
|
4
4
|
* every `@skmtc/lang-*` package's concrete file subclass.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
6
|
+
* `FileBase` carries only what is common to *every* file — code or not:
|
|
7
|
+
* its `path`, an optional free-form `custom` content slot, and the
|
|
8
|
+
* `toString()` contract. It holds NO definitions, imports, or dedup
|
|
9
|
+
* policy — those are code-file concerns that live on {@link CodeFileBase}
|
|
10
|
+
* and the language subclass, which is what keeps the engine
|
|
11
|
+
* language-blind.
|
|
12
12
|
*
|
|
13
|
-
* `JsonFile` extends this
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* `JsonFile` extends this directly — a JSON file has a `path`, serialises
|
|
14
|
+
* its content in `toString()`, and never touches definitions. (See
|
|
15
|
+
* notes/lang: "JSON is a degenerate language".)
|
|
16
16
|
*
|
|
17
|
-
* Lives in its own leaf module (only a type-only `
|
|
18
|
-
*
|
|
19
|
-
* import
|
|
17
|
+
* Lives in its own leaf module (only a type-only `Stringable` import) so
|
|
18
|
+
* that the file subclasses can import it without forming a value-level
|
|
19
|
+
* import cycle.
|
|
20
20
|
*/
|
|
21
21
|
export declare abstract class FileBase {
|
|
22
22
|
/** The file path for this generated file */
|
|
23
23
|
path: string;
|
|
24
|
-
/**
|
|
25
|
-
|
|
24
|
+
/**
|
|
25
|
+
* Optional free-form content. On a code file this is the leading banner
|
|
26
|
+
* (e.g. a codegen header); on an ad-hoc non-code file (Markdown, plain
|
|
27
|
+
* text) it can carry the body. Inert until a concrete subclass renders
|
|
28
|
+
* it in `toString()`. Set through the neutral `register` vocabulary's
|
|
29
|
+
* `custom` field (last write wins).
|
|
30
|
+
*/
|
|
31
|
+
custom: Stringable | undefined;
|
|
26
32
|
constructor({ path }: {
|
|
27
33
|
path: string;
|
|
28
34
|
});
|
|
29
|
-
/**
|
|
30
|
-
* Add a definition, deduplicating by identifier name (first write wins).
|
|
31
|
-
*
|
|
32
|
-
* Neutral: the engine's `register` calls this on the abstract base, so it
|
|
33
|
-
* works for every language's file. Per-language duplication rules (e.g.
|
|
34
|
-
* TypeScript declaration merging — a class and its `declare namespace`
|
|
35
|
-
* sharing a name) belong in the language's file subclass, which overrides
|
|
36
|
-
* this method.
|
|
37
|
-
*/
|
|
38
|
-
addDefinition(definition: DefinitionBase): void;
|
|
39
35
|
/** Renders the file's complete contents. Implemented by the subclass. */
|
|
40
36
|
abstract toString(): string;
|
|
41
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileBase.d.ts","sourceRoot":"","sources":["../../src/dsl/FileBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"FileBase.d.ts","sourceRoot":"","sources":["../../src/dsl/FileBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,8BAAsB,QAAQ;IAC5B,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IAEZ;;;;;;OAMG;IACH,MAAM,EAAE,UAAU,GAAG,SAAS,CAAA;gBAElB,EAAE,IAAI,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAItC,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,IAAI,MAAM;CAC5B"}
|
package/esm/dsl/FileBase.js
CHANGED
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
* The language-neutral coordination surface shared by the engine and
|
|
3
3
|
* every `@skmtc/lang-*` package's concrete file subclass.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
5
|
+
* `FileBase` carries only what is common to *every* file — code or not:
|
|
6
|
+
* its `path`, an optional free-form `custom` content slot, and the
|
|
7
|
+
* `toString()` contract. It holds NO definitions, imports, or dedup
|
|
8
|
+
* policy — those are code-file concerns that live on {@link CodeFileBase}
|
|
9
|
+
* and the language subclass, which is what keeps the engine
|
|
10
|
+
* language-blind.
|
|
11
11
|
*
|
|
12
|
-
* `JsonFile` extends this
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* `JsonFile` extends this directly — a JSON file has a `path`, serialises
|
|
13
|
+
* its content in `toString()`, and never touches definitions. (See
|
|
14
|
+
* notes/lang: "JSON is a degenerate language".)
|
|
15
15
|
*
|
|
16
|
-
* Lives in its own leaf module (only a type-only `
|
|
17
|
-
*
|
|
18
|
-
* import
|
|
16
|
+
* Lives in its own leaf module (only a type-only `Stringable` import) so
|
|
17
|
+
* that the file subclasses can import it without forming a value-level
|
|
18
|
+
* import cycle.
|
|
19
19
|
*/
|
|
20
20
|
export class FileBase {
|
|
21
21
|
constructor({ path }) {
|
|
@@ -26,28 +26,19 @@ export class FileBase {
|
|
|
26
26
|
writable: true,
|
|
27
27
|
value: void 0
|
|
28
28
|
});
|
|
29
|
-
/**
|
|
30
|
-
|
|
29
|
+
/**
|
|
30
|
+
* Optional free-form content. On a code file this is the leading banner
|
|
31
|
+
* (e.g. a codegen header); on an ad-hoc non-code file (Markdown, plain
|
|
32
|
+
* text) it can carry the body. Inert until a concrete subclass renders
|
|
33
|
+
* it in `toString()`. Set through the neutral `register` vocabulary's
|
|
34
|
+
* `custom` field (last write wins).
|
|
35
|
+
*/
|
|
36
|
+
Object.defineProperty(this, "custom", {
|
|
31
37
|
enumerable: true,
|
|
32
38
|
configurable: true,
|
|
33
39
|
writable: true,
|
|
34
40
|
value: void 0
|
|
35
41
|
});
|
|
36
42
|
this.path = path;
|
|
37
|
-
this.definitions = new Map();
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Add a definition, deduplicating by identifier name (first write wins).
|
|
41
|
-
*
|
|
42
|
-
* Neutral: the engine's `register` calls this on the abstract base, so it
|
|
43
|
-
* works for every language's file. Per-language duplication rules (e.g.
|
|
44
|
-
* TypeScript declaration merging — a class and its `declare namespace`
|
|
45
|
-
* sharing a name) belong in the language's file subclass, which overrides
|
|
46
|
-
* this method.
|
|
47
|
-
*/
|
|
48
|
-
addDefinition(definition) {
|
|
49
|
-
if (!this.definitions.has(definition.identifier.name)) {
|
|
50
|
-
this.definitions.set(definition.identifier.name, definition);
|
|
51
|
-
}
|
|
52
43
|
}
|
|
53
44
|
}
|
|
@@ -129,7 +129,7 @@ export type OasOperationGeneratorKey = Brand<NakedOasOperationGeneratorKey, 'Oas
|
|
|
129
129
|
* Branded type for GraphQL operation generator keys.
|
|
130
130
|
*
|
|
131
131
|
* Sibling to {@link OasOperationGeneratorKey} for the GraphQL protocol. The key
|
|
132
|
-
* encodes the generator ID, the root
|
|
132
|
+
* encodes the generator ID, the root type (`query` / `mutation` /
|
|
133
133
|
* `subscription`), and the root field name.
|
|
134
134
|
*/
|
|
135
135
|
export type GqlOperationGeneratorKey = Brand<NakedGqlOperationGeneratorKey, 'GqlOperationGeneratorKey'>;
|
|
@@ -210,15 +210,15 @@ type ToOasOperationGeneratorKeyArgs = {
|
|
|
210
210
|
path: string;
|
|
211
211
|
/** HTTP method */
|
|
212
212
|
method: Method;
|
|
213
|
-
/** Operation variant name
|
|
214
|
-
variant
|
|
213
|
+
/** Operation variant name — omitted means `'main'` */
|
|
214
|
+
variant?: string;
|
|
215
215
|
} | {
|
|
216
216
|
/** Unique identifier for the generator */
|
|
217
217
|
generatorId: string;
|
|
218
218
|
/** OpenAPI operation object containing path and method */
|
|
219
219
|
operation: OasOperation;
|
|
220
|
-
/** Operation variant name
|
|
221
|
-
variant
|
|
220
|
+
/** Operation variant name — omitted means `'main'` */
|
|
221
|
+
variant?: string;
|
|
222
222
|
};
|
|
223
223
|
/**
|
|
224
224
|
* Creates an OAS operation generator key from generator ID and operation details.
|
|
@@ -271,15 +271,15 @@ type ToWebhookGeneratorKeyArgs = {
|
|
|
271
271
|
name: string;
|
|
272
272
|
/** HTTP method */
|
|
273
273
|
method: Method;
|
|
274
|
-
/** Webhook variant name
|
|
275
|
-
variant
|
|
274
|
+
/** Webhook variant name — omitted means `'main'` */
|
|
275
|
+
variant?: string;
|
|
276
276
|
} | {
|
|
277
277
|
/** Unique identifier for the generator */
|
|
278
278
|
generatorId: string;
|
|
279
279
|
/** OpenAPI webhook object containing name and method */
|
|
280
280
|
webhook: OasWebhook;
|
|
281
|
-
/** Webhook variant name
|
|
282
|
-
variant
|
|
281
|
+
/** Webhook variant name — omitted means `'main'` */
|
|
282
|
+
variant?: string;
|
|
283
283
|
};
|
|
284
284
|
/**
|
|
285
285
|
* Creates a webhook generator key from generator ID and webhook details.
|
|
@@ -293,25 +293,25 @@ export declare const toWebhookGeneratorKey: ({ generatorId, variant, ...rest }:
|
|
|
293
293
|
* Arguments for {@link toGqlOperationGeneratorKey}.
|
|
294
294
|
*
|
|
295
295
|
* Can specify operation details directly or provide a {@link GqlOperation}
|
|
296
|
-
* object from which the root
|
|
296
|
+
* object from which the root type and field name will be extracted. The
|
|
297
297
|
* `variant` segment is always required (see {@link Variant}).
|
|
298
298
|
*/
|
|
299
299
|
type ToGqlOperationGeneratorKeyArgs = {
|
|
300
300
|
/** Unique identifier for the generator */
|
|
301
301
|
generatorId: string;
|
|
302
|
-
/** GraphQL root
|
|
302
|
+
/** GraphQL root type */
|
|
303
303
|
rootKind: GqlRootKind;
|
|
304
304
|
/** Root field name */
|
|
305
305
|
fieldName: string;
|
|
306
|
-
/** Operation variant name
|
|
307
|
-
variant
|
|
306
|
+
/** Operation variant name — omitted means `'main'` */
|
|
307
|
+
variant?: string;
|
|
308
308
|
} | {
|
|
309
309
|
/** Unique identifier for the generator */
|
|
310
310
|
generatorId: string;
|
|
311
311
|
/** GraphQL operation object */
|
|
312
312
|
operation: GqlOperation;
|
|
313
|
-
/** Operation variant name
|
|
314
|
-
variant
|
|
313
|
+
/** Operation variant name — omitted means `'main'` */
|
|
314
|
+
variant?: string;
|
|
315
315
|
};
|
|
316
316
|
/**
|
|
317
317
|
* Creates a GraphQL operation generator key.
|
|
@@ -331,8 +331,8 @@ type ToModelGeneratorKeyArgs = {
|
|
|
331
331
|
generatorId: string;
|
|
332
332
|
/** Reference name of the schema model */
|
|
333
333
|
refName: RefName;
|
|
334
|
-
/** Model variant name
|
|
335
|
-
variant
|
|
334
|
+
/** Model variant name — omitted means `'main'` */
|
|
335
|
+
variant?: string;
|
|
336
336
|
};
|
|
337
337
|
/**
|
|
338
338
|
* Creates a model generator key from generator ID, schema reference name,
|
|
@@ -455,7 +455,7 @@ export declare const isWebhookGeneratorKey: (arg: unknown) => arg is WebhookGene
|
|
|
455
455
|
*
|
|
456
456
|
* Validates that the argument is a string with the format
|
|
457
457
|
* `generatorId|rootKind|fieldName`, with `rootKind` constrained to a
|
|
458
|
-
* GraphQL root operation
|
|
458
|
+
* GraphQL root operation type (`query` / `mutation` / `subscription`).
|
|
459
459
|
*/
|
|
460
460
|
export declare const isGqlOperationGeneratorKey: (arg: unknown) => arg is GqlOperationGeneratorKey;
|
|
461
461
|
/**
|
|
@@ -572,7 +572,7 @@ export type GeneratorKeyObject = {
|
|
|
572
572
|
type: 'gqlOperation';
|
|
573
573
|
/** Generator identifier */
|
|
574
574
|
generatorId: string;
|
|
575
|
-
/** GraphQL root
|
|
575
|
+
/** GraphQL root type */
|
|
576
576
|
rootKind: GqlRootKind;
|
|
577
577
|
/** Root field name */
|
|
578
578
|
fieldName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeneratorKeys.d.ts","sourceRoot":"","sources":["../../src/dsl/GeneratorKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"GeneratorKeys.d.ts","sourceRoot":"","sources":["../../src/dsl/GeneratorKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AACjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,KAAK,MAAM,EAAY,MAAM,oBAAoB,CAAA;AAQ1D;;;;;;;;;GASG;AACH,MAAM,MAAM,6BAA6B,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAA;AAErF;;;;;;;;GAQG;AACH,MAAM,MAAM,6BAA6B,GAAG,GAAG,MAAM,IAAI,WAAW,IAAI,MAAM,IAAI,MAAM,EAAE,CAAA;AAE1F;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,sBAAsB,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAA;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,wBAAwB,GAAG,GAAG,MAAM,YAAY,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAA;AAExF;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,KAAK,CAAC,6BAA6B,EAAE,0BAA0B,CAAC,CAAA;AAEvG;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,KAAK,CAC1C,6BAA6B,EAC7B,0BAA0B,CAC3B,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,KAAK,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAA;AAElF;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAA;AAExF;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,MAAM,YAAY,GACpB,wBAAwB,GACxB,mBAAmB,GACnB,wBAAwB,GACxB,iBAAiB,GACjB,gBAAgB,CAAA;AAEpB;;;;;;;GAOG;AACH,KAAK,8BAA8B,GAC/B;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,0DAA0D;IAC1D,SAAS,EAAE,YAAY,CAAA;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,0BAA0B,GAAI,mCAIxC,8BAA8B,KAAG,wBAMnC,CAAA;AAED;;;;;;;GAOG;AACH,KAAK,yBAAyB,GAC1B;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,wDAAwD;IACxD,OAAO,EAAE,UAAU,CAAA;IACnB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAEL;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAAI,mCAInC,yBAAyB,KAAG,mBAM9B,CAAA;AAED;;;;;;GAMG;AACH,KAAK,8BAA8B,GAC/B;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,wBAAwB;IACxB,QAAQ,EAAE,WAAW,CAAA;IACrB,sBAAsB;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,SAAS,EAAE,YAAY,CAAA;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAEL;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GAAI,mCAIxC,8BAA8B,KAAG,wBASnC,CAAA;AAED;;;;;GAKG;AACH,KAAK,uBAAuB,GAAG;IAC7B,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,yCAAyC;IACzC,OAAO,EAAE,OAAO,CAAA;IAChB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,mBAAmB,GAAI,mCAIjC,uBAAuB,KAAG,iBAI5B,CAAA;AAED;;GAEG;AACH,KAAK,sBAAsB,GAAG;IAC5B,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,sBAAsB,KAAG,gBAI5E,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,YAQpD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,0BAA0B,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,wBA8BhE,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,mBAkC3D,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,wBA8BhE,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,iBA0BzD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,kBAAkB,GAAI,KAAK,OAAO,KAAG,GAAG,IAAI,gBAMxD,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,aAAa,GAAI,cAAc,YAAY,KAAG,MAkB1D,CAAA;AAED;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IACE,qDAAqD;IACrD,IAAI,EAAE,cAAc,CAAA;IACpB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,+CAA+C;IAC/C,IAAI,EAAE,SAAS,CAAA;IACf,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,yDAAyD;IACzD,IAAI,EAAE,cAAc,CAAA;IACpB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,wBAAwB;IACxB,QAAQ,EAAE,WAAW,CAAA;IACrB,sBAAsB;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,6CAA6C;IAC7C,IAAI,EAAE,OAAO,CAAA;IACb,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAA;CAChB,GACD;IACE,4CAA4C;IAC5C,IAAI,EAAE,gBAAgB,CAAA;IACtB,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,eAAO,MAAM,gBAAgB,GAAI,cAAc,YAAY,KAAG,kBA4B7D,CAAA"}
|
package/esm/dsl/GeneratorKeys.js
CHANGED
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
*/
|
|
66
66
|
import "../_dnt.polyfills.js";
|
|
67
67
|
import { isMethod } from '../types/Method.js';
|
|
68
|
+
import { DEFAULT_VARIANT } from '../types/Variant.js';
|
|
68
69
|
const GQL_ROOT_KINDS = ['query', 'mutation', 'subscription'];
|
|
69
70
|
const isGqlRootKind = (value) => GQL_ROOT_KINDS.includes(value);
|
|
70
71
|
/**
|
|
@@ -102,7 +103,7 @@ const isGqlRootKind = (value) => GQL_ROOT_KINDS.includes(value);
|
|
|
102
103
|
* // Result: 'rest-client|/posts|post' (branded)
|
|
103
104
|
* ```
|
|
104
105
|
*/
|
|
105
|
-
export const toOasOperationGeneratorKey = ({ generatorId, variant, ...rest }) => {
|
|
106
|
+
export const toOasOperationGeneratorKey = ({ generatorId, variant = DEFAULT_VARIANT, ...rest }) => {
|
|
106
107
|
const { path, method } = 'operation' in rest ? rest.operation : rest;
|
|
107
108
|
const nakedKey = `${generatorId}|${path}|${method}|${variant}`;
|
|
108
109
|
return nakedKey;
|
|
@@ -114,7 +115,7 @@ export const toOasOperationGeneratorKey = ({ generatorId, variant, ...rest }) =>
|
|
|
114
115
|
* Format: `generatorId|webhook|name|method|variant`. The literal `webhook`
|
|
115
116
|
* segment keeps webhook keys from colliding with operation keys.
|
|
116
117
|
*/
|
|
117
|
-
export const toWebhookGeneratorKey = ({ generatorId, variant, ...rest }) => {
|
|
118
|
+
export const toWebhookGeneratorKey = ({ generatorId, variant = DEFAULT_VARIANT, ...rest }) => {
|
|
118
119
|
const { name, method } = 'webhook' in rest ? rest.webhook : rest;
|
|
119
120
|
const nakedKey = `${generatorId}|webhook|${name}|${method}|${variant}`;
|
|
120
121
|
return nakedKey;
|
|
@@ -125,7 +126,7 @@ export const toWebhookGeneratorKey = ({ generatorId, variant, ...rest }) => {
|
|
|
125
126
|
* Sibling to {@link toOasOperationGeneratorKey} for the GraphQL protocol. Format:
|
|
126
127
|
* `generatorId|rootKind|fieldName|variant`.
|
|
127
128
|
*/
|
|
128
|
-
export const toGqlOperationGeneratorKey = ({ generatorId, variant, ...rest }) => {
|
|
129
|
+
export const toGqlOperationGeneratorKey = ({ generatorId, variant = DEFAULT_VARIANT, ...rest }) => {
|
|
129
130
|
const { rootKind, fieldName } = 'operation' in rest
|
|
130
131
|
? { rootKind: rest.operation.rootKind, fieldName: rest.operation.fieldName }
|
|
131
132
|
: rest;
|
|
@@ -160,7 +161,7 @@ export const toGqlOperationGeneratorKey = ({ generatorId, variant, ...rest }) =>
|
|
|
160
161
|
* // Result: 'zod-schemas|CreateUserRequest|coercive' (branded)
|
|
161
162
|
* ```
|
|
162
163
|
*/
|
|
163
|
-
export const toModelGeneratorKey = ({ generatorId, refName, variant }) => {
|
|
164
|
+
export const toModelGeneratorKey = ({ generatorId, refName, variant = DEFAULT_VARIANT }) => {
|
|
164
165
|
const nakedKey = `${generatorId}|${refName}|${variant}`;
|
|
165
166
|
return nakedKey;
|
|
166
167
|
};
|
|
@@ -305,7 +306,7 @@ export const isWebhookGeneratorKey = (arg) => {
|
|
|
305
306
|
*
|
|
306
307
|
* Validates that the argument is a string with the format
|
|
307
308
|
* `generatorId|rootKind|fieldName`, with `rootKind` constrained to a
|
|
308
|
-
* GraphQL root operation
|
|
309
|
+
* GraphQL root operation type (`query` / `mutation` / `subscription`).
|
|
309
310
|
*/
|
|
310
311
|
export const isGqlOperationGeneratorKey = (arg) => {
|
|
311
312
|
if (typeof arg !== 'string') {
|
|
@@ -17,19 +17,19 @@ export type IdentifierBaseArgs = {
|
|
|
17
17
|
* `(name, exportPath)` cross-generator cache key, and `DefinitionBase`. The
|
|
18
18
|
* engine reads ONLY `.name` (the cache-key source); `typeName` and
|
|
19
19
|
* `exported` are language-neutral facts it threads but never interprets.
|
|
20
|
-
* Crucially it carries NO `
|
|
20
|
+
* Crucially it carries NO `type` — the per-language declaration vocabulary
|
|
21
21
|
* lives, typed, on the language subclasses.
|
|
22
22
|
*
|
|
23
23
|
* It completes the neutral `*Base` family
|
|
24
24
|
* (`CodeFileBase` / `DefinitionBase` / `ImportBase`): the concrete,
|
|
25
|
-
*
|
|
25
|
+
* type-carrying subclasses (`TsIdentifier`, `KtIdentifier`) live in the
|
|
26
26
|
* `@skmtc/lang-*` packages and **extend** this base. Construction goes
|
|
27
27
|
* through a language package's factories (`createVariable` / `createType`
|
|
28
28
|
* for TypeScript; `createDataClass` / `createEnumClass` / … for Kotlin) or
|
|
29
29
|
* the engine's assembly seam `lang.toIdentifier({ name, ...identifierType })`.
|
|
30
|
-
* The engine holds the result as `IdentifierBase`; the language's `
|
|
31
|
-
* read only by the language renderers, which narrow
|
|
32
|
-
*
|
|
30
|
+
* The engine holds the result as `IdentifierBase`; the language's `type` is
|
|
31
|
+
* read only by the language renderers, which narrow back to the concrete
|
|
32
|
+
* subclass via `instanceof` (e.g. `value instanceof TsIdentifier`).
|
|
33
33
|
*/
|
|
34
34
|
export declare class IdentifierBase {
|
|
35
35
|
/** The identifier name — the only field the engine reads. */
|
|
@@ -51,5 +51,19 @@ export declare class IdentifierBase {
|
|
|
51
51
|
* identifier is interpolated into generated code.
|
|
52
52
|
*/
|
|
53
53
|
toString(): string;
|
|
54
|
+
/**
|
|
55
|
+
* The key under which a file stores and dedups this identifier's
|
|
56
|
+
* definition: two definitions whose identifiers share a `declarationKey`
|
|
57
|
+
* occupy the same declaration slot, so the later one collapses into the
|
|
58
|
+
* first (the cross-generator cache then resolves a name to its
|
|
59
|
+
* first-registered definition).
|
|
60
|
+
*
|
|
61
|
+
* The neutral default is the bare {@link name} — one definition per name,
|
|
62
|
+
* which is what most languages want. A language whose declaration space is
|
|
63
|
+
* richer overrides this: TypeScript folds in the declaration `type` so a
|
|
64
|
+
* `class Foo` and a `declare namespace Foo` — distinct declarations the
|
|
65
|
+
* compiler legitimately merges — get distinct keys instead of colliding.
|
|
66
|
+
*/
|
|
67
|
+
declarationKey(): string;
|
|
54
68
|
}
|
|
55
69
|
//# sourceMappingURL=IdentifierBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentifierBase.d.ts","sourceRoot":"","sources":["../../src/dsl/IdentifierBase.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,cAAc;IACzB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IAEZ,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;;;;;OAOG;IACH,QAAQ,EAAE,OAAO,CAAA;gBAEL,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB;IAM5D;;;OAGG;IACH,QAAQ,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"IdentifierBase.d.ts","sourceRoot":"","sources":["../../src/dsl/IdentifierBase.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,cAAc;IACzB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IAEZ,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;;;;;OAOG;IACH,QAAQ,EAAE,OAAO,CAAA;gBAEL,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB;IAM5D;;;OAGG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;;;;;;;;;OAYG;IACH,cAAc,IAAI,MAAM;CAGzB"}
|
|
@@ -6,19 +6,19 @@
|
|
|
6
6
|
* `(name, exportPath)` cross-generator cache key, and `DefinitionBase`. The
|
|
7
7
|
* engine reads ONLY `.name` (the cache-key source); `typeName` and
|
|
8
8
|
* `exported` are language-neutral facts it threads but never interprets.
|
|
9
|
-
* Crucially it carries NO `
|
|
9
|
+
* Crucially it carries NO `type` — the per-language declaration vocabulary
|
|
10
10
|
* lives, typed, on the language subclasses.
|
|
11
11
|
*
|
|
12
12
|
* It completes the neutral `*Base` family
|
|
13
13
|
* (`CodeFileBase` / `DefinitionBase` / `ImportBase`): the concrete,
|
|
14
|
-
*
|
|
14
|
+
* type-carrying subclasses (`TsIdentifier`, `KtIdentifier`) live in the
|
|
15
15
|
* `@skmtc/lang-*` packages and **extend** this base. Construction goes
|
|
16
16
|
* through a language package's factories (`createVariable` / `createType`
|
|
17
17
|
* for TypeScript; `createDataClass` / `createEnumClass` / … for Kotlin) or
|
|
18
18
|
* the engine's assembly seam `lang.toIdentifier({ name, ...identifierType })`.
|
|
19
|
-
* The engine holds the result as `IdentifierBase`; the language's `
|
|
20
|
-
* read only by the language renderers, which narrow
|
|
21
|
-
*
|
|
19
|
+
* The engine holds the result as `IdentifierBase`; the language's `type` is
|
|
20
|
+
* read only by the language renderers, which narrow back to the concrete
|
|
21
|
+
* subclass via `instanceof` (e.g. `value instanceof TsIdentifier`).
|
|
22
22
|
*/
|
|
23
23
|
export class IdentifierBase {
|
|
24
24
|
constructor({ name, typeName, exported }) {
|
|
@@ -61,4 +61,20 @@ export class IdentifierBase {
|
|
|
61
61
|
toString() {
|
|
62
62
|
return this.name;
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* The key under which a file stores and dedups this identifier's
|
|
66
|
+
* definition: two definitions whose identifiers share a `declarationKey`
|
|
67
|
+
* occupy the same declaration slot, so the later one collapses into the
|
|
68
|
+
* first (the cross-generator cache then resolves a name to its
|
|
69
|
+
* first-registered definition).
|
|
70
|
+
*
|
|
71
|
+
* The neutral default is the bare {@link name} — one definition per name,
|
|
72
|
+
* which is what most languages want. A language whose declaration space is
|
|
73
|
+
* richer overrides this: TypeScript folds in the declaration `type` so a
|
|
74
|
+
* `class Foo` and a `declare namespace Foo` — distinct declarations the
|
|
75
|
+
* compiler legitimately merges — get distinct keys instead of colliding.
|
|
76
|
+
*/
|
|
77
|
+
declarationKey() {
|
|
78
|
+
return this.name;
|
|
79
|
+
}
|
|
64
80
|
}
|
|
@@ -1,28 +1,22 @@
|
|
|
1
|
-
import type { Lang, LangKind } from './Lang.js';
|
|
2
1
|
/**
|
|
3
2
|
* The non-`name` parts of an identifier — everything a projection's
|
|
4
3
|
* `toIdentifierType` derives from the schema (context-aware), bundled so
|
|
5
4
|
* the engine can assemble the full identifier with
|
|
6
5
|
* `lang.toIdentifier({ name, ...identifierType })`.
|
|
7
6
|
*
|
|
8
|
-
*
|
|
9
|
-
* language's declaration vocabulary
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* `kind: string` — the opaque-kind boundary the engine never interprets.
|
|
14
|
-
*
|
|
15
|
-
* This is what lets a language's projection-base veneer parameterize core's
|
|
16
|
-
* config (`ModelProjectionBaseConfig<E, KtLang>`) instead of recasting
|
|
17
|
-
* `toIdentifierType`'s return: the tightening rides the `L` type argument.
|
|
7
|
+
* The `type` is the opaque-boundary `string` — the engine never interprets
|
|
8
|
+
* it. Each language's declaration-type vocabulary is a fixed fact of its lang
|
|
9
|
+
* package; a lang veneer tightens `toIdentifierType`'s return to its own
|
|
10
|
+
* `XxIdentifierType` (`type` narrowed to `XxEntityType`), which is assignable
|
|
11
|
+
* back to this shape. Core never models or recovers that vocabulary.
|
|
18
12
|
*
|
|
19
13
|
* Pairs with `toIdentifierName(args) -> string` (the pure, cache-key
|
|
20
14
|
* source): the engine assembles
|
|
21
15
|
* `lang.toIdentifier({ name: P.toIdentifierName(args), ...P.toIdentifierType(coordinate, context) })`.
|
|
22
16
|
*/
|
|
23
|
-
export type IdentifierType
|
|
24
|
-
/** Per-language declaration
|
|
25
|
-
|
|
17
|
+
export type IdentifierType = {
|
|
18
|
+
/** Per-language declaration type — the opaque-boundary `string`. */
|
|
19
|
+
type: string;
|
|
26
20
|
/** Optional type annotation, opaque to the engine (lang-interpreted). */
|
|
27
21
|
typeName?: string;
|
|
28
22
|
/** Whether the identifier is exported. Defaults to `true`. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentifierType.d.ts","sourceRoot":"","sources":["../../src/dsl/IdentifierType.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"IdentifierType.d.ts","sourceRoot":"","sources":["../../src/dsl/IdentifierType.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAA;IACZ,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA"}
|