@skmtc/core 0.28.7 → 0.30.1
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/esm/_dnt.polyfills.d.ts +11 -0
- package/esm/_dnt.polyfills.js +14 -0
- package/esm/context/GenerateContext.js +16 -16
- package/esm/context/ParseContext.js +9 -1
- package/esm/context/RenderContext.d.ts +7 -7
- package/esm/context/RenderContext.js +17 -12
- package/esm/context/generateTypes.d.ts +2 -2
- package/esm/context/generateTypes.js +3 -1
- package/esm/deps/jsr.io/@std/path/1.1.6/posix/is_absolute.d.ts +16 -0
- package/esm/deps/jsr.io/@std/path/1.1.6/posix/is_absolute.js +23 -0
- package/esm/deps/jsr.io/@std/path/1.1.6/windows/is_absolute.d.ts +16 -0
- package/esm/deps/jsr.io/@std/path/1.1.6/windows/is_absolute.js +38 -0
- package/esm/dsl/GeneratorKeys.d.ts +2 -2
- package/esm/dsl/GeneratorKeys.js +6 -3
- package/esm/dsl/model/ModelDriver.js +4 -3
- package/esm/dsl/operation/gql/GqlOperationDriver.js +4 -3
- package/esm/dsl/operation/oas/OasOperationDriver.js +4 -3
- package/esm/dsl/webhook/WebhookDriver.js +4 -3
- package/esm/helpers/applyGeneratedSuffix.js +1 -1
- package/esm/helpers/isImported.d.ts +10 -74
- package/esm/helpers/isImported.js +12 -76
- package/esm/helpers/naming.d.ts +2 -1
- package/esm/helpers/naming.js +4 -2
- package/esm/helpers/normalizeWorkspacePath.d.ts +64 -0
- package/esm/helpers/normalizeWorkspacePath.js +98 -0
- package/esm/helpers/toResolvedArtifactPath.d.ts +8 -5
- package/esm/helpers/toResolvedArtifactPath.js +11 -7
- package/esm/helpers/toWorkspacePath.d.ts +3 -3
- package/esm/helpers/toWorkspacePath.js +5 -5
- package/esm/mod.d.ts +1 -0
- package/esm/mod.js +1 -0
- package/esm/oas/discriminator/Discriminator.d.ts +3 -0
- package/esm/oas/discriminator/Discriminator.js +7 -0
- package/esm/oas/document/Document.d.ts +7 -0
- package/esm/oas/document/Document.js +8 -0
- package/esm/oas/example/Example.d.ts +10 -1
- package/esm/oas/example/Example.js +16 -0
- package/esm/oas/mediaType/MediaType.d.ts +12 -0
- package/esm/oas/mediaType/MediaType.js +24 -0
- package/esm/oas/parameter/Parameter.d.ts +2 -1
- package/esm/oas/parameter/Parameter.js +5 -2
- package/esm/oas/parameter/parameter-types.d.ts +10 -2
- package/esm/oas/parameter/parameter-types.js +3 -1
- package/esm/oas/response/Response.d.ts +6 -1
- package/esm/oas/response/Response.js +8 -0
- package/esm/oas/securitySchemes/SecurityScheme.d.ts +47 -4
- package/esm/oas/securitySchemes/SecurityScheme.js +46 -1
- package/esm/oas/securitySchemes/security-scheme-types.d.ts +21 -0
- package/esm/oas/server/Server.d.ts +8 -2
- package/esm/oas/server/Server.js +10 -1
- package/esm/oas/tag/Tag.d.ts +9 -0
- package/esm/oas/tag/Tag.js +9 -0
- package/esm/parse/toOasDialect.d.ts +8 -7
- package/esm/parse/toOasDialect.js +4 -2
- package/esm/parse/v3-0/methods.d.ts +11 -0
- package/esm/parse/v3-0/methods.js +16 -0
- package/esm/parse/v3-0/operation/toOperationsV3.js +5 -5
- package/esm/parse/v3-0/parameter/toParameterV3.d.ts +4 -2
- package/esm/parse/v3-0/parameter/toParameterV3.js +17 -3
- package/esm/parse/v3-0/securitySchemes/toSecuritySchemes.js +50 -38
- package/esm/parse/v3-0/webhook/toWebhooksV3.js +5 -5
- package/esm/parse/v3-1/methods.d.ts +11 -0
- package/esm/parse/v3-1/methods.js +16 -0
- package/esm/parse/v3-1/operation/toOperationsV3.js +5 -5
- package/esm/parse/v3-1/parameter/toParameterV3.d.ts +4 -2
- package/esm/parse/v3-1/parameter/toParameterV3.js +17 -3
- package/esm/parse/v3-1/securitySchemes/toSecuritySchemes.js +50 -38
- package/esm/parse/v3-1/webhook/toWebhooksV3.js +5 -5
- package/esm/parse/v3-2/_helpers/parseDefault.d.ts +43 -0
- package/esm/parse/v3-2/_helpers/parseDefault.js +39 -0
- package/esm/parse/v3-2/_helpers/parseEnum.d.ts +13 -0
- package/esm/parse/v3-2/_helpers/parseEnum.js +23 -0
- package/esm/parse/v3-2/_helpers/parseExample.d.ts +41 -0
- package/esm/parse/v3-2/_helpers/parseExample.js +37 -0
- package/esm/parse/v3-2/_helpers/parseNullable.d.ts +141 -0
- package/esm/parse/v3-2/_helpers/parseNullable.js +140 -0
- package/esm/parse/v3-2/_merge-all-of/check-array-item-type-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-array-item-type-conflicts.js +9 -0
- package/esm/parse/v3-2/_merge-all-of/check-at-least-one-type-match.d.ts +4 -0
- package/esm/parse/v3-2/_merge-all-of/check-at-least-one-type-match.js +5 -0
- package/esm/parse/v3-2/_merge-all-of/check-enum-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-enum-conflicts.js +11 -0
- package/esm/parse/v3-2/_merge-all-of/check-format-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-format-conflicts.js +5 -0
- package/esm/parse/v3-2/_merge-all-of/check-number-constraints-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-number-constraints-conflicts.js +11 -0
- package/esm/parse/v3-2/_merge-all-of/check-read-only-write-only-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-read-only-write-only-conflicts.js +5 -0
- package/esm/parse/v3-2/_merge-all-of/check-type-conflicts.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/check-type-conflicts.js +5 -0
- package/esm/parse/v3-2/_merge-all-of/cross-product.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/cross-product.js +3 -0
- package/esm/parse/v3-2/_merge-all-of/decompose-intersection.d.ts +6 -0
- package/esm/parse/v3-2/_merge-all-of/decompose-intersection.js +27 -0
- package/esm/parse/v3-2/_merge-all-of/decompose-union.d.ts +12 -0
- package/esm/parse/v3-2/_merge-all-of/decompose-union.js +69 -0
- package/esm/parse/v3-2/_merge-all-of/generic-merge.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/generic-merge.js +12 -0
- package/esm/parse/v3-2/_merge-all-of/is-equal.d.ts +1 -0
- package/esm/parse/v3-2/_merge-all-of/is-equal.js +19 -0
- package/esm/parse/v3-2/_merge-all-of/merge-array-constraints.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/merge-array-constraints.js +44 -0
- package/esm/parse/v3-2/_merge-all-of/merge-boolean-constraints.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-boolean-constraints.js +7 -0
- package/esm/parse/v3-2/_merge-all-of/merge-enum-values.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-enum-values.js +32 -0
- package/esm/parse/v3-2/_merge-all-of/merge-integer-constraints.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-integer-constraints.js +41 -0
- package/esm/parse/v3-2/_merge-all-of/merge-intersection.d.ts +8 -0
- package/esm/parse/v3-2/_merge-all-of/merge-intersection.js +16 -0
- package/esm/parse/v3-2/_merge-all-of/merge-number-constraints.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-number-constraints.js +41 -0
- package/esm/parse/v3-2/_merge-all-of/merge-object-constraints.d.ts +5 -0
- package/esm/parse/v3-2/_merge-all-of/merge-object-constraints.js +28 -0
- package/esm/parse/v3-2/_merge-all-of/merge-properties.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/merge-properties.js +25 -0
- package/esm/parse/v3-2/_merge-all-of/merge-required.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-required.js +10 -0
- package/esm/parse/v3-2/_merge-all-of/merge-string-constraints.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/merge-string-constraints.js +55 -0
- package/esm/parse/v3-2/_merge-all-of/merge-union.d.ts +15 -0
- package/esm/parse/v3-2/_merge-all-of/merge-union.js +53 -0
- package/esm/parse/v3-2/_merge-all-of/merge.d.ts +2 -0
- package/esm/parse/v3-2/_merge-all-of/merge.js +155 -0
- package/esm/parse/v3-2/_merge-all-of/nullable-merge.d.ts +3 -0
- package/esm/parse/v3-2/_merge-all-of/nullable-merge.js +12 -0
- package/esm/parse/v3-2/_merge-all-of/types.d.ts +14 -0
- package/esm/parse/v3-2/_merge-all-of/types.js +2 -0
- package/esm/parse/v3-2/array/toArray.d.ts +80 -0
- package/esm/parse/v3-2/array/toArray.js +165 -0
- package/esm/parse/v3-2/boolean/toBoolean.d.ts +78 -0
- package/esm/parse/v3-2/boolean/toBoolean.js +139 -0
- package/esm/parse/v3-2/components/toComponentsV3.d.ts +14 -0
- package/esm/parse/v3-2/components/toComponentsV3.js +43 -0
- package/esm/parse/v3-2/contact/toContactV3.d.ts +5 -0
- package/esm/parse/v3-2/contact/toContactV3.js +18 -0
- package/esm/parse/v3-2/discriminator/toDiscriminatorV3.d.ts +14 -0
- package/esm/parse/v3-2/discriminator/toDiscriminatorV3.js +21 -0
- package/esm/parse/v3-2/document/toDocumentFieldsV3.d.ts +16 -0
- package/esm/parse/v3-2/document/toDocumentFieldsV3.js +33 -0
- package/esm/parse/v3-2/example/toExamplesV3.d.ts +77 -0
- package/esm/parse/v3-2/example/toExamplesV3.js +143 -0
- package/esm/parse/v3-2/externalDocs/toExternalDocs.d.ts +10 -0
- package/esm/parse/v3-2/externalDocs/toExternalDocs.js +15 -0
- package/esm/parse/v3-2/header/toHeadersV3.d.ts +18 -0
- package/esm/parse/v3-2/header/toHeadersV3.js +47 -0
- package/esm/parse/v3-2/info/toInfoV3.d.ts +10 -0
- package/esm/parse/v3-2/info/toInfoV3.js +23 -0
- package/esm/parse/v3-2/integer/toInteger.d.ts +21 -0
- package/esm/parse/v3-2/integer/toInteger.js +115 -0
- package/esm/parse/v3-2/license/toLicenseV3.d.ts +5 -0
- package/esm/parse/v3-2/license/toLicenseV3.js +17 -0
- package/esm/parse/v3-2/link/toLinksV3.d.ts +16 -0
- package/esm/parse/v3-2/link/toLinksV3.js +40 -0
- package/esm/parse/v3-2/mediaType/toMediaTypeItemV3.d.ts +323 -0
- package/esm/parse/v3-2/mediaType/toMediaTypeItemV3.js +375 -0
- package/esm/parse/v3-2/methods.d.ts +17 -0
- package/esm/parse/v3-2/methods.js +21 -0
- package/esm/parse/v3-2/number/toNumber.d.ts +10 -0
- package/esm/parse/v3-2/number/toNumber.js +115 -0
- package/esm/parse/v3-2/object/toAdditionalPropertiesV3.d.ts +11 -0
- package/esm/parse/v3-2/object/toAdditionalPropertiesV3.js +10 -0
- package/esm/parse/v3-2/object/toObject.d.ts +10 -0
- package/esm/parse/v3-2/object/toObject.js +90 -0
- package/esm/parse/v3-2/operation/toOperationsV3.d.ts +25 -0
- package/esm/parse/v3-2/operation/toOperationsV3.js +129 -0
- package/esm/parse/v3-2/parameter/toParameterV3.d.ts +39 -0
- package/esm/parse/v3-2/parameter/toParameterV3.js +152 -0
- package/esm/parse/v3-2/parameter/warnQuerystringConflictsV3.d.ts +22 -0
- package/esm/parse/v3-2/parameter/warnQuerystringConflictsV3.js +39 -0
- package/esm/parse/v3-2/pathItem/dropAdditionalOperationsV3.d.ts +17 -0
- package/esm/parse/v3-2/pathItem/dropAdditionalOperationsV3.js +34 -0
- package/esm/parse/v3-2/pathItem/toPathItemV3.d.ts +23 -0
- package/esm/parse/v3-2/pathItem/toPathItemV3.js +45 -0
- package/esm/parse/v3-2/ref/toRefV31.d.ts +19 -0
- package/esm/parse/v3-2/ref/toRefV31.js +10 -0
- package/esm/parse/v3-2/requestBody/toRequestBodiesV3.d.ts +18 -0
- package/esm/parse/v3-2/requestBody/toRequestBodiesV3.js +44 -0
- package/esm/parse/v3-2/response/toResponseV3.d.ts +29 -0
- package/esm/parse/v3-2/response/toResponseV3.js +56 -0
- package/esm/parse/v3-2/schema/toSchemasV3.d.ts +29 -0
- package/esm/parse/v3-2/schema/toSchemasV3.js +511 -0
- package/esm/parse/v3-2/securityRequirement/toSecurityRequirement.d.ts +9 -0
- package/esm/parse/v3-2/securityRequirement/toSecurityRequirement.js +9 -0
- package/esm/parse/v3-2/securitySchemes/toSecuritySchemes.d.ts +17 -0
- package/esm/parse/v3-2/securitySchemes/toSecuritySchemes.js +152 -0
- package/esm/parse/v3-2/server/toServerV3.d.ts +26 -0
- package/esm/parse/v3-2/server/toServerV3.js +31 -0
- package/esm/parse/v3-2/serverVariable/toServerVariableV3.d.ts +22 -0
- package/esm/parse/v3-2/serverVariable/toServerVariableV3.js +30 -0
- package/esm/parse/v3-2/specificationExtensions/toSpecificationExtensionsV3.d.ts +14 -0
- package/esm/parse/v3-2/specificationExtensions/toSpecificationExtensionsV3.js +25 -0
- package/esm/parse/v3-2/string/toString.d.ts +146 -0
- package/esm/parse/v3-2/string/toString.js +211 -0
- package/esm/parse/v3-2/tag/toTagsV3.d.ts +22 -0
- package/esm/parse/v3-2/tag/toTagsV3.js +78 -0
- package/esm/parse/v3-2/union/toUnion.d.ts +12 -0
- package/esm/parse/v3-2/union/toUnion.js +68 -0
- package/esm/parse/v3-2/unknown/toUnknown.d.ts +10 -0
- package/esm/parse/v3-2/unknown/toUnknown.js +19 -0
- package/esm/parse/v3-2/webhook/toWebhooksV3.d.ts +48 -0
- package/esm/parse/v3-2/webhook/toWebhooksV3.js +139 -0
- package/esm/types/Method.d.ts +7 -4
- package/esm/types/Method.js +17 -4
- package/esm/types/Preview.d.ts +2 -1
- package/esm/types/Settings.js +6 -8
- package/esm/types/SkmtcDocument.d.ts +6 -6
- package/package.json +1 -1
- package/script/_dnt.polyfills.d.ts +11 -0
- package/script/_dnt.polyfills.js +14 -0
- package/script/context/GenerateContext.js +16 -16
- package/script/context/ParseContext.js +9 -1
- package/script/context/RenderContext.d.ts +7 -7
- package/script/context/RenderContext.js +17 -12
- package/script/context/generateTypes.d.ts +2 -2
- package/script/context/generateTypes.js +3 -1
- package/script/deps/jsr.io/@std/path/1.1.6/posix/is_absolute.d.ts +16 -0
- package/script/deps/jsr.io/@std/path/1.1.6/posix/is_absolute.js +26 -0
- package/script/deps/jsr.io/@std/path/1.1.6/windows/is_absolute.d.ts +16 -0
- package/script/deps/jsr.io/@std/path/1.1.6/windows/is_absolute.js +41 -0
- package/script/dsl/GeneratorKeys.d.ts +2 -2
- package/script/dsl/GeneratorKeys.js +6 -3
- package/script/dsl/model/ModelDriver.js +4 -3
- package/script/dsl/operation/gql/GqlOperationDriver.js +4 -3
- package/script/dsl/operation/oas/OasOperationDriver.js +4 -3
- package/script/dsl/webhook/WebhookDriver.js +4 -3
- package/script/helpers/applyGeneratedSuffix.js +1 -1
- package/script/helpers/isImported.d.ts +10 -74
- package/script/helpers/isImported.js +12 -76
- package/script/helpers/naming.d.ts +2 -1
- package/script/helpers/naming.js +4 -2
- package/script/helpers/normalizeWorkspacePath.d.ts +64 -0
- package/script/helpers/normalizeWorkspacePath.js +107 -0
- package/script/helpers/toResolvedArtifactPath.d.ts +8 -5
- package/script/helpers/toResolvedArtifactPath.js +11 -7
- package/script/helpers/toWorkspacePath.d.ts +3 -3
- package/script/helpers/toWorkspacePath.js +5 -5
- package/script/mod.d.ts +1 -0
- package/script/mod.js +1 -0
- package/script/oas/discriminator/Discriminator.d.ts +3 -0
- package/script/oas/discriminator/Discriminator.js +7 -0
- package/script/oas/document/Document.d.ts +7 -0
- package/script/oas/document/Document.js +8 -0
- package/script/oas/example/Example.d.ts +10 -1
- package/script/oas/example/Example.js +16 -0
- package/script/oas/mediaType/MediaType.d.ts +12 -0
- package/script/oas/mediaType/MediaType.js +24 -0
- package/script/oas/parameter/Parameter.d.ts +2 -1
- package/script/oas/parameter/Parameter.js +5 -2
- package/script/oas/parameter/parameter-types.d.ts +10 -2
- package/script/oas/parameter/parameter-types.js +3 -1
- package/script/oas/response/Response.d.ts +6 -1
- package/script/oas/response/Response.js +8 -0
- package/script/oas/securitySchemes/SecurityScheme.d.ts +47 -4
- package/script/oas/securitySchemes/SecurityScheme.js +46 -1
- package/script/oas/securitySchemes/security-scheme-types.d.ts +21 -0
- package/script/oas/server/Server.d.ts +8 -2
- package/script/oas/server/Server.js +10 -1
- package/script/oas/tag/Tag.d.ts +9 -0
- package/script/oas/tag/Tag.js +9 -0
- package/script/parse/toOasDialect.d.ts +8 -7
- package/script/parse/toOasDialect.js +4 -2
- package/script/parse/v3-0/methods.d.ts +11 -0
- package/script/parse/v3-0/methods.js +20 -0
- package/script/parse/v3-0/operation/toOperationsV3.js +5 -5
- package/script/parse/v3-0/parameter/toParameterV3.d.ts +4 -2
- package/script/parse/v3-0/parameter/toParameterV3.js +17 -3
- package/script/parse/v3-0/securitySchemes/toSecuritySchemes.js +49 -37
- package/script/parse/v3-0/webhook/toWebhooksV3.js +5 -5
- package/script/parse/v3-1/methods.d.ts +11 -0
- package/script/parse/v3-1/methods.js +20 -0
- package/script/parse/v3-1/operation/toOperationsV3.js +5 -5
- package/script/parse/v3-1/parameter/toParameterV3.d.ts +4 -2
- package/script/parse/v3-1/parameter/toParameterV3.js +17 -3
- package/script/parse/v3-1/securitySchemes/toSecuritySchemes.js +49 -37
- package/script/parse/v3-1/webhook/toWebhooksV3.js +5 -5
- package/script/parse/v3-2/_helpers/parseDefault.d.ts +43 -0
- package/script/parse/v3-2/_helpers/parseDefault.js +43 -0
- package/script/parse/v3-2/_helpers/parseEnum.d.ts +13 -0
- package/script/parse/v3-2/_helpers/parseEnum.js +27 -0
- package/script/parse/v3-2/_helpers/parseExample.d.ts +41 -0
- package/script/parse/v3-2/_helpers/parseExample.js +41 -0
- package/script/parse/v3-2/_helpers/parseNullable.d.ts +141 -0
- package/script/parse/v3-2/_helpers/parseNullable.js +144 -0
- package/script/parse/v3-2/_merge-all-of/check-array-item-type-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-array-item-type-conflicts.js +13 -0
- package/script/parse/v3-2/_merge-all-of/check-at-least-one-type-match.d.ts +4 -0
- package/script/parse/v3-2/_merge-all-of/check-at-least-one-type-match.js +9 -0
- package/script/parse/v3-2/_merge-all-of/check-enum-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-enum-conflicts.js +15 -0
- package/script/parse/v3-2/_merge-all-of/check-format-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-format-conflicts.js +9 -0
- package/script/parse/v3-2/_merge-all-of/check-number-constraints-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-number-constraints-conflicts.js +15 -0
- package/script/parse/v3-2/_merge-all-of/check-read-only-write-only-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-read-only-write-only-conflicts.js +9 -0
- package/script/parse/v3-2/_merge-all-of/check-type-conflicts.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/check-type-conflicts.js +9 -0
- package/script/parse/v3-2/_merge-all-of/cross-product.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/cross-product.js +7 -0
- package/script/parse/v3-2/_merge-all-of/decompose-intersection.d.ts +6 -0
- package/script/parse/v3-2/_merge-all-of/decompose-intersection.js +31 -0
- package/script/parse/v3-2/_merge-all-of/decompose-union.d.ts +12 -0
- package/script/parse/v3-2/_merge-all-of/decompose-union.js +73 -0
- package/script/parse/v3-2/_merge-all-of/generic-merge.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/generic-merge.js +16 -0
- package/script/parse/v3-2/_merge-all-of/is-equal.d.ts +1 -0
- package/script/parse/v3-2/_merge-all-of/is-equal.js +23 -0
- package/script/parse/v3-2/_merge-all-of/merge-array-constraints.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/merge-array-constraints.js +80 -0
- package/script/parse/v3-2/_merge-all-of/merge-boolean-constraints.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-boolean-constraints.js +43 -0
- package/script/parse/v3-2/_merge-all-of/merge-enum-values.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-enum-values.js +68 -0
- package/script/parse/v3-2/_merge-all-of/merge-integer-constraints.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-integer-constraints.js +77 -0
- package/script/parse/v3-2/_merge-all-of/merge-intersection.d.ts +8 -0
- package/script/parse/v3-2/_merge-all-of/merge-intersection.js +20 -0
- package/script/parse/v3-2/_merge-all-of/merge-number-constraints.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-number-constraints.js +77 -0
- package/script/parse/v3-2/_merge-all-of/merge-object-constraints.d.ts +5 -0
- package/script/parse/v3-2/_merge-all-of/merge-object-constraints.js +65 -0
- package/script/parse/v3-2/_merge-all-of/merge-properties.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/merge-properties.js +29 -0
- package/script/parse/v3-2/_merge-all-of/merge-required.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-required.js +15 -0
- package/script/parse/v3-2/_merge-all-of/merge-string-constraints.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/merge-string-constraints.js +91 -0
- package/script/parse/v3-2/_merge-all-of/merge-union.d.ts +15 -0
- package/script/parse/v3-2/_merge-all-of/merge-union.js +58 -0
- package/script/parse/v3-2/_merge-all-of/merge.d.ts +2 -0
- package/script/parse/v3-2/_merge-all-of/merge.js +159 -0
- package/script/parse/v3-2/_merge-all-of/nullable-merge.d.ts +3 -0
- package/script/parse/v3-2/_merge-all-of/nullable-merge.js +17 -0
- package/script/parse/v3-2/_merge-all-of/types.d.ts +14 -0
- package/script/parse/v3-2/_merge-all-of/types.js +38 -0
- package/script/parse/v3-2/array/toArray.d.ts +80 -0
- package/script/parse/v3-2/array/toArray.js +203 -0
- package/script/parse/v3-2/boolean/toBoolean.d.ts +78 -0
- package/script/parse/v3-2/boolean/toBoolean.js +177 -0
- package/script/parse/v3-2/components/toComponentsV3.d.ts +14 -0
- package/script/parse/v3-2/components/toComponentsV3.js +47 -0
- package/script/parse/v3-2/contact/toContactV3.d.ts +5 -0
- package/script/parse/v3-2/contact/toContactV3.js +22 -0
- package/script/parse/v3-2/discriminator/toDiscriminatorV3.d.ts +14 -0
- package/script/parse/v3-2/discriminator/toDiscriminatorV3.js +25 -0
- package/script/parse/v3-2/document/toDocumentFieldsV3.d.ts +16 -0
- package/script/parse/v3-2/document/toDocumentFieldsV3.js +37 -0
- package/script/parse/v3-2/example/toExamplesV3.d.ts +77 -0
- package/script/parse/v3-2/example/toExamplesV3.js +149 -0
- package/script/parse/v3-2/externalDocs/toExternalDocs.d.ts +10 -0
- package/script/parse/v3-2/externalDocs/toExternalDocs.js +52 -0
- package/script/parse/v3-2/header/toHeadersV3.d.ts +18 -0
- package/script/parse/v3-2/header/toHeadersV3.js +51 -0
- package/script/parse/v3-2/info/toInfoV3.d.ts +10 -0
- package/script/parse/v3-2/info/toInfoV3.js +27 -0
- package/script/parse/v3-2/integer/toInteger.d.ts +21 -0
- package/script/parse/v3-2/integer/toInteger.js +153 -0
- package/script/parse/v3-2/license/toLicenseV3.d.ts +5 -0
- package/script/parse/v3-2/license/toLicenseV3.js +21 -0
- package/script/parse/v3-2/link/toLinksV3.d.ts +16 -0
- package/script/parse/v3-2/link/toLinksV3.js +44 -0
- package/script/parse/v3-2/mediaType/toMediaTypeItemV3.d.ts +323 -0
- package/script/parse/v3-2/mediaType/toMediaTypeItemV3.js +381 -0
- package/script/parse/v3-2/methods.d.ts +17 -0
- package/script/parse/v3-2/methods.js +25 -0
- package/script/parse/v3-2/number/toNumber.d.ts +10 -0
- package/script/parse/v3-2/number/toNumber.js +152 -0
- package/script/parse/v3-2/object/toAdditionalPropertiesV3.d.ts +11 -0
- package/script/parse/v3-2/object/toAdditionalPropertiesV3.js +14 -0
- package/script/parse/v3-2/object/toObject.d.ts +10 -0
- package/script/parse/v3-2/object/toObject.js +94 -0
- package/script/parse/v3-2/operation/toOperationsV3.d.ts +25 -0
- package/script/parse/v3-2/operation/toOperationsV3.js +134 -0
- package/script/parse/v3-2/parameter/toParameterV3.d.ts +39 -0
- package/script/parse/v3-2/parameter/toParameterV3.js +191 -0
- package/script/parse/v3-2/parameter/warnQuerystringConflictsV3.d.ts +22 -0
- package/script/parse/v3-2/parameter/warnQuerystringConflictsV3.js +43 -0
- package/script/parse/v3-2/pathItem/dropAdditionalOperationsV3.d.ts +17 -0
- package/script/parse/v3-2/pathItem/dropAdditionalOperationsV3.js +38 -0
- package/script/parse/v3-2/pathItem/toPathItemV3.d.ts +23 -0
- package/script/parse/v3-2/pathItem/toPathItemV3.js +50 -0
- package/script/parse/v3-2/ref/toRefV31.d.ts +19 -0
- package/script/parse/v3-2/ref/toRefV31.js +14 -0
- package/script/parse/v3-2/requestBody/toRequestBodiesV3.d.ts +18 -0
- package/script/parse/v3-2/requestBody/toRequestBodiesV3.js +49 -0
- package/script/parse/v3-2/response/toResponseV3.d.ts +29 -0
- package/script/parse/v3-2/response/toResponseV3.js +62 -0
- package/script/parse/v3-2/schema/toSchemasV3.d.ts +29 -0
- package/script/parse/v3-2/schema/toSchemasV3.js +518 -0
- package/script/parse/v3-2/securityRequirement/toSecurityRequirement.d.ts +9 -0
- package/script/parse/v3-2/securityRequirement/toSecurityRequirement.js +13 -0
- package/script/parse/v3-2/securitySchemes/toSecuritySchemes.d.ts +17 -0
- package/script/parse/v3-2/securitySchemes/toSecuritySchemes.js +189 -0
- package/script/parse/v3-2/server/toServerV3.d.ts +26 -0
- package/script/parse/v3-2/server/toServerV3.js +37 -0
- package/script/parse/v3-2/serverVariable/toServerVariableV3.d.ts +22 -0
- package/script/parse/v3-2/serverVariable/toServerVariableV3.js +36 -0
- package/script/parse/v3-2/specificationExtensions/toSpecificationExtensionsV3.d.ts +14 -0
- package/script/parse/v3-2/specificationExtensions/toSpecificationExtensionsV3.js +30 -0
- package/script/parse/v3-2/string/toString.d.ts +146 -0
- package/script/parse/v3-2/string/toString.js +249 -0
- package/script/parse/v3-2/tag/toTagsV3.d.ts +22 -0
- package/script/parse/v3-2/tag/toTagsV3.js +83 -0
- package/script/parse/v3-2/union/toUnion.d.ts +12 -0
- package/script/parse/v3-2/union/toUnion.js +72 -0
- package/script/parse/v3-2/unknown/toUnknown.d.ts +10 -0
- package/script/parse/v3-2/unknown/toUnknown.js +23 -0
- package/script/parse/v3-2/webhook/toWebhooksV3.d.ts +48 -0
- package/script/parse/v3-2/webhook/toWebhooksV3.js +144 -0
- package/script/types/Method.d.ts +7 -4
- package/script/types/Method.js +17 -4
- package/script/types/Preview.d.ts +2 -1
- package/script/types/Settings.js +7 -9
- package/script/types/SkmtcDocument.d.ts +6 -6
- package/esm/deps/jsr.io/@std/path/1.1.6/extname.d.ts +0 -24
- package/esm/deps/jsr.io/@std/path/1.1.6/extname.js +0 -31
- package/esm/deps/jsr.io/@std/path/1.1.6/normalize.d.ts +0 -25
- package/esm/deps/jsr.io/@std/path/1.1.6/normalize.js +0 -32
- package/esm/deps/jsr.io/@std/path/1.1.6/windows/extname.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.6/windows/extname.js +0 -83
- package/script/deps/jsr.io/@std/path/1.1.6/extname.d.ts +0 -24
- package/script/deps/jsr.io/@std/path/1.1.6/extname.js +0 -34
- package/script/deps/jsr.io/@std/path/1.1.6/normalize.d.ts +0 -25
- package/script/deps/jsr.io/@std/path/1.1.6/normalize.js +0 -35
- package/script/deps/jsr.io/@std/path/1.1.6/windows/extname.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.6/windows/extname.js +0 -86
package/esm/_dnt.polyfills.d.ts
CHANGED
|
@@ -4,6 +4,17 @@ declare global {
|
|
|
4
4
|
}
|
|
5
5
|
}
|
|
6
6
|
export {};
|
|
7
|
+
declare global {
|
|
8
|
+
interface Object {
|
|
9
|
+
/**
|
|
10
|
+
* Determines whether an object has a property with the specified name.
|
|
11
|
+
* @param o An object.
|
|
12
|
+
* @param v A property name.
|
|
13
|
+
*/
|
|
14
|
+
hasOwn(o: object, v: PropertyKey): boolean;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export {};
|
|
7
18
|
/**
|
|
8
19
|
* Based on [import-meta-ponyfill](https://github.com/gaubee/import-meta-ponyfill),
|
|
9
20
|
* but instead of using npm to install additional dependencies,
|
package/esm/_dnt.polyfills.js
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
// https://github.com/tc39/proposal-accessible-object-hasownproperty/blob/main/polyfill.js
|
|
2
|
+
if (!Object.hasOwn) {
|
|
3
|
+
Object.defineProperty(Object, "hasOwn", {
|
|
4
|
+
value: function (object, property) {
|
|
5
|
+
if (object == null) {
|
|
6
|
+
throw new TypeError("Cannot convert undefined or null to object");
|
|
7
|
+
}
|
|
8
|
+
return Object.prototype.hasOwnProperty.call(Object(object), property);
|
|
9
|
+
},
|
|
10
|
+
configurable: true,
|
|
11
|
+
enumerable: false,
|
|
12
|
+
writable: true,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
1
15
|
/**
|
|
2
16
|
* Based on [import-meta-ponyfill](https://github.com/gaubee/import-meta-ponyfill),
|
|
3
17
|
* but instead of using npm to install additional dependencies,
|
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
12
|
var _GenerateContext_instances, _GenerateContext_files, _GenerateContext_previews, _GenerateContext_captureChannel, _GenerateContext_enrichmentAudit, _GenerateContext_reportSkippedEnrichment, _GenerateContext_schemaRefNames, _GenerateContext_subjectDefaults, _GenerateContext_runOasOperationGenerator, _GenerateContext_runWebhookGenerator, _GenerateContext_runGqlOperationGenerator, _GenerateContext_runModelGenerator, _GenerateContext_addPreview, _GenerateContext_toContentSettingsExportPath, _GenerateContext_ejectedBySuffixedPath_get, _GenerateContext_ejectedBySuffixedPathCache, _GenerateContext_findContainer, _GenerateContext_toContainer;
|
|
13
|
-
import {
|
|
13
|
+
import { normalizeWorkspacePath } from '../helpers/normalizeWorkspacePath.js';
|
|
14
14
|
import { applyGeneratedSuffix, DEFAULT_GENERATED_SUFFIX } from '../helpers/applyGeneratedSuffix.js';
|
|
15
15
|
import { OasOperationDriver } from '../dsl/operation/oas/OasOperationDriver.js';
|
|
16
16
|
import { WebhookDriver } from '../dsl/webhook/WebhookDriver.js';
|
|
@@ -443,7 +443,7 @@ export class GenerateContext {
|
|
|
443
443
|
* language-constructed file, use {@link addFile}.
|
|
444
444
|
*/
|
|
445
445
|
getFile(filePath) {
|
|
446
|
-
return __classPrivateFieldGet(this, _GenerateContext_files, "f").get(
|
|
446
|
+
return __classPrivateFieldGet(this, _GenerateContext_files, "f").get(normalizeWorkspacePath(filePath));
|
|
447
447
|
}
|
|
448
448
|
/**
|
|
449
449
|
* Read-only view of every file generated so far, keyed by (normalized)
|
|
@@ -467,7 +467,7 @@ export class GenerateContext {
|
|
|
467
467
|
* (`context.getFile(path) ?? context.addFile(new KtFile({ … }))`).
|
|
468
468
|
*/
|
|
469
469
|
addFile(file) {
|
|
470
|
-
const normalizedPath =
|
|
470
|
+
const normalizedPath = normalizeWorkspacePath(file.path);
|
|
471
471
|
if (__classPrivateFieldGet(this, _GenerateContext_files, "f").has(normalizedPath)) {
|
|
472
472
|
throw new Error(`File already exists: ${normalizedPath}`);
|
|
473
473
|
}
|
|
@@ -481,7 +481,7 @@ export class GenerateContext {
|
|
|
481
481
|
* @param args - Registration arguments with destination path and JSON content
|
|
482
482
|
*/
|
|
483
483
|
registerJson({ destinationPath, json }) {
|
|
484
|
-
const normalizedPath =
|
|
484
|
+
const normalizedPath = normalizeWorkspacePath(destinationPath);
|
|
485
485
|
let currentFile = this.getFile(normalizedPath);
|
|
486
486
|
if (!currentFile) {
|
|
487
487
|
currentFile = new JsonFile({ path: normalizedPath, content: {} });
|
|
@@ -500,7 +500,7 @@ export class GenerateContext {
|
|
|
500
500
|
* @experimental This method is experimental and may change in future versions
|
|
501
501
|
*/
|
|
502
502
|
registerMarkdown({ destinationPath, markdown }) {
|
|
503
|
-
const normalizedPath =
|
|
503
|
+
const normalizedPath = normalizeWorkspacePath(destinationPath);
|
|
504
504
|
let currentFile = this.getFile(normalizedPath);
|
|
505
505
|
if (!currentFile) {
|
|
506
506
|
currentFile = new MarkdownFile({ path: normalizedPath, content: '' });
|
|
@@ -521,7 +521,7 @@ export class GenerateContext {
|
|
|
521
521
|
* @mutates this.files
|
|
522
522
|
*/
|
|
523
523
|
register({ imports = [], reExports = [], definitions, custom, destinationPath, into }) {
|
|
524
|
-
const normalizedPath =
|
|
524
|
+
const normalizedPath = normalizeWorkspacePath(destinationPath);
|
|
525
525
|
const currentFile = this.getFile(normalizedPath);
|
|
526
526
|
// `register` never creates files — it speaks pure data and the engine
|
|
527
527
|
// never names a file class. Callers pre-create the destination file
|
|
@@ -629,7 +629,7 @@ export class GenerateContext {
|
|
|
629
629
|
// the use site (same ephemeral read the Drivers make) — pre-creates
|
|
630
630
|
// the destination file caller-side, and stores via the pure-data
|
|
631
631
|
// `register`.
|
|
632
|
-
const normalizedPath =
|
|
632
|
+
const normalizedPath = normalizeWorkspacePath(destinationPath);
|
|
633
633
|
if (!this.getFile(normalizedPath)) {
|
|
634
634
|
this.addFile(projection.lang.createFile({ path: normalizedPath, settings: this.settings }));
|
|
635
635
|
}
|
|
@@ -696,7 +696,7 @@ export class GenerateContext {
|
|
|
696
696
|
enrichments,
|
|
697
697
|
variant,
|
|
698
698
|
options
|
|
699
|
-
})),
|
|
699
|
+
}), args.projection.id),
|
|
700
700
|
enrichments,
|
|
701
701
|
variant
|
|
702
702
|
});
|
|
@@ -724,7 +724,7 @@ export class GenerateContext {
|
|
|
724
724
|
enrichments,
|
|
725
725
|
variant,
|
|
726
726
|
options
|
|
727
|
-
})),
|
|
727
|
+
}), args.projection.id),
|
|
728
728
|
enrichments,
|
|
729
729
|
variant
|
|
730
730
|
});
|
|
@@ -757,7 +757,7 @@ export class GenerateContext {
|
|
|
757
757
|
enrichments,
|
|
758
758
|
variant,
|
|
759
759
|
options
|
|
760
|
-
})),
|
|
760
|
+
}), args.projection.id),
|
|
761
761
|
enrichments,
|
|
762
762
|
variant
|
|
763
763
|
});
|
|
@@ -779,7 +779,7 @@ export class GenerateContext {
|
|
|
779
779
|
name: projection.toIdentifierName({ refName, enrichments, variant, options }),
|
|
780
780
|
...projection.toIdentifierType(refName, this)
|
|
781
781
|
}),
|
|
782
|
-
exportPath: __classPrivateFieldGet(this, _GenerateContext_instances, "m", _GenerateContext_toContentSettingsExportPath).call(this, projection.toExportPath({ refName, enrichments, variant, options })),
|
|
782
|
+
exportPath: __classPrivateFieldGet(this, _GenerateContext_instances, "m", _GenerateContext_toContentSettingsExportPath).call(this, projection.toExportPath({ refName, enrichments, variant, options }), projection.id),
|
|
783
783
|
enrichments,
|
|
784
784
|
variant
|
|
785
785
|
});
|
|
@@ -1165,15 +1165,15 @@ _GenerateContext_files = new WeakMap(), _GenerateContext_previews = new WeakMap(
|
|
|
1165
1165
|
module: { ...module, exportPath: __classPrivateFieldGet(this, _GenerateContext_instances, "m", _GenerateContext_toContentSettingsExportPath).call(this, module.exportPath) },
|
|
1166
1166
|
source
|
|
1167
1167
|
};
|
|
1168
|
-
}, _GenerateContext_toContentSettingsExportPath = function _GenerateContext_toContentSettingsExportPath(exportPath) {
|
|
1169
|
-
const suffixed = applyGeneratedSuffix(exportPath, this.settings?.generatedSuffix ?? DEFAULT_GENERATED_SUFFIX);
|
|
1170
|
-
return __classPrivateFieldGet(this, _GenerateContext_instances, "a", _GenerateContext_ejectedBySuffixedPath_get).get(
|
|
1168
|
+
}, _GenerateContext_toContentSettingsExportPath = function _GenerateContext_toContentSettingsExportPath(exportPath, generatorId) {
|
|
1169
|
+
const suffixed = applyGeneratedSuffix(normalizeWorkspacePath(exportPath, { generatorId }), this.settings?.generatedSuffix ?? DEFAULT_GENERATED_SUFFIX);
|
|
1170
|
+
return __classPrivateFieldGet(this, _GenerateContext_instances, "a", _GenerateContext_ejectedBySuffixedPath_get).get(suffixed) ?? suffixed;
|
|
1171
1171
|
}, _GenerateContext_ejectedBySuffixedPath_get = function _GenerateContext_ejectedBySuffixedPath_get() {
|
|
1172
1172
|
if (__classPrivateFieldGet(this, _GenerateContext_ejectedBySuffixedPathCache, "f") === undefined) {
|
|
1173
1173
|
const suffix = this.settings?.generatedSuffix ?? DEFAULT_GENERATED_SUFFIX;
|
|
1174
1174
|
__classPrivateFieldSet(this, _GenerateContext_ejectedBySuffixedPathCache, new Map((this.settings?.ejected ?? []).map(ejectedPath => {
|
|
1175
|
-
const normalized =
|
|
1176
|
-
return [
|
|
1175
|
+
const normalized = normalizeWorkspacePath(ejectedPath);
|
|
1176
|
+
return [applyGeneratedSuffix(normalized, suffix), normalized];
|
|
1177
1177
|
})), "f");
|
|
1178
1178
|
}
|
|
1179
1179
|
return __classPrivateFieldGet(this, _GenerateContext_ejectedBySuffixedPathCache, "f");
|
|
@@ -29,6 +29,7 @@ import "../_dnt.polyfills.js";
|
|
|
29
29
|
import { buildSchema } from 'graphql';
|
|
30
30
|
import { toDocumentFieldsV3 } from '../parse/v3-0/document/toDocumentFieldsV3.js';
|
|
31
31
|
import { toDocumentFieldsV3 as toDocumentFieldsV31 } from '../parse/v3-1/document/toDocumentFieldsV3.js';
|
|
32
|
+
import { toDocumentFieldsV3 as toDocumentFieldsV32 } from '../parse/v3-2/document/toDocumentFieldsV3.js';
|
|
32
33
|
import { toOasDialect } from '../parse/toOasDialect.js';
|
|
33
34
|
import { OasDocument } from '../oas/document/Document.js';
|
|
34
35
|
import { GqlRegistry } from '../gql/registry/GqlRegistry.js';
|
|
@@ -184,7 +185,7 @@ export class ParseContext {
|
|
|
184
185
|
const oasState = this.protocol;
|
|
185
186
|
// The ONE place the OpenAPI version is examined: pick the dialect's
|
|
186
187
|
// parser tree. Everything downstream is version-specific code living
|
|
187
|
-
// in its own tree (v3-0 / v3-1) and never re-checks the version.
|
|
188
|
+
// in its own tree (v3-0 / v3-1 / v3-2) and never re-checks the version.
|
|
188
189
|
const dialect = toOasDialect(oasState.documentObject.openapi);
|
|
189
190
|
switch (dialect) {
|
|
190
191
|
case '3.0':
|
|
@@ -201,6 +202,13 @@ export class ParseContext {
|
|
|
201
202
|
context: this
|
|
202
203
|
});
|
|
203
204
|
break;
|
|
205
|
+
case '3.2':
|
|
206
|
+
oasState.oasDocument.fields = toDocumentFieldsV32({
|
|
207
|
+
documentObject: oasState.documentObject,
|
|
208
|
+
stackTrail,
|
|
209
|
+
context: this
|
|
210
|
+
});
|
|
211
|
+
break;
|
|
204
212
|
default: {
|
|
205
213
|
const _exhaustive = dialect;
|
|
206
214
|
throw new Error(`Unhandled OAS dialect: ${JSON.stringify(_exhaustive)}`);
|
|
@@ -130,13 +130,13 @@ export declare class RenderContext {
|
|
|
130
130
|
*/
|
|
131
131
|
collate(stackTrail: StackTrail): FilesRenderResult;
|
|
132
132
|
/**
|
|
133
|
-
* Retrieves a file from the context by its
|
|
133
|
+
* Retrieves a file from the context by its export path.
|
|
134
134
|
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
* exists
|
|
135
|
+
* The path is canonicalized first ({@link normalizeWorkspacePath}), so any
|
|
136
|
+
* spelling of the same export path finds the same file. Throws when no
|
|
137
|
+
* file exists at that path.
|
|
138
138
|
*
|
|
139
|
-
* @param filePath - The
|
|
139
|
+
* @param filePath - The export path to retrieve, in any spelling
|
|
140
140
|
* @returns The File or JsonFile instance
|
|
141
141
|
* @throws {Error} When the file is not found in the context
|
|
142
142
|
*
|
|
@@ -145,9 +145,9 @@ export declare class RenderContext {
|
|
|
145
145
|
* const file = renderContext.getFile('./src/models/User.ts');
|
|
146
146
|
* console.log(file.toString()); // Access file content
|
|
147
147
|
*
|
|
148
|
-
* //
|
|
148
|
+
* // Every spelling of the same export path finds the same file
|
|
149
149
|
* const sameFile = renderContext.getFile('src/models/User.ts');
|
|
150
|
-
* const alsoSameFile = renderContext.getFile('
|
|
150
|
+
* const alsoSameFile = renderContext.getFile('@/src/models/User.ts');
|
|
151
151
|
* ```
|
|
152
152
|
*/
|
|
153
153
|
getFile(filePath: string): FileBase;
|
|
@@ -11,7 +11,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
11
11
|
};
|
|
12
12
|
var _RenderContext_captureChannel, _RenderContext_sink, _RenderContext_captures;
|
|
13
13
|
import invariant from 'tiny-invariant';
|
|
14
|
-
import {
|
|
14
|
+
import { normalizeWorkspacePath } from '../helpers/normalizeWorkspacePath.js';
|
|
15
15
|
import { toResolvedArtifactPath } from '../helpers/toResolvedArtifactPath.js';
|
|
16
16
|
import { CodeFileBase } from '../dsl/CodeFileBase.js';
|
|
17
17
|
import { CaptureSink } from '../anchors/CaptureSink.js';
|
|
@@ -168,8 +168,9 @@ export class RenderContext {
|
|
|
168
168
|
__classPrivateFieldSet(this, _RenderContext_sink, undefined, "f");
|
|
169
169
|
}
|
|
170
170
|
// Build one sidecar per captured File from the spans the sink
|
|
171
|
-
// resolved (no re-render, no `toString`). Keyed by
|
|
172
|
-
// matching the
|
|
171
|
+
// resolved (no re-render, no `toString`). Keyed by the resolved artifact
|
|
172
|
+
// path, matching `artifacts` and the manifest, so a sidecar sits at
|
|
173
|
+
// `<outDir>/<artifact key>.skm.json` where doctor looks for it.
|
|
173
174
|
const { parser, schemaSrc, generatorMeta } = postPassConfig;
|
|
174
175
|
const sidecars = {};
|
|
175
176
|
const generationMap = [];
|
|
@@ -182,7 +183,11 @@ export class RenderContext {
|
|
|
182
183
|
parser,
|
|
183
184
|
generatorMeta
|
|
184
185
|
});
|
|
185
|
-
|
|
186
|
+
const artifactPath = toResolvedArtifactPath({
|
|
187
|
+
basePath: this.basePath,
|
|
188
|
+
destinationPath: capture.destinationPath
|
|
189
|
+
});
|
|
190
|
+
sidecars[artifactPath] = sidecar;
|
|
186
191
|
generationMap.push(...entriesForSidecar(sidecar));
|
|
187
192
|
}
|
|
188
193
|
__classPrivateFieldSet(this, _RenderContext_captures, [], "f");
|
|
@@ -270,13 +275,13 @@ export class RenderContext {
|
|
|
270
275
|
return output;
|
|
271
276
|
}
|
|
272
277
|
/**
|
|
273
|
-
* Retrieves a file from the context by its
|
|
278
|
+
* Retrieves a file from the context by its export path.
|
|
274
279
|
*
|
|
275
|
-
*
|
|
276
|
-
*
|
|
277
|
-
* exists
|
|
280
|
+
* The path is canonicalized first ({@link normalizeWorkspacePath}), so any
|
|
281
|
+
* spelling of the same export path finds the same file. Throws when no
|
|
282
|
+
* file exists at that path.
|
|
278
283
|
*
|
|
279
|
-
* @param filePath - The
|
|
284
|
+
* @param filePath - The export path to retrieve, in any spelling
|
|
280
285
|
* @returns The File or JsonFile instance
|
|
281
286
|
* @throws {Error} When the file is not found in the context
|
|
282
287
|
*
|
|
@@ -285,13 +290,13 @@ export class RenderContext {
|
|
|
285
290
|
* const file = renderContext.getFile('./src/models/User.ts');
|
|
286
291
|
* console.log(file.toString()); // Access file content
|
|
287
292
|
*
|
|
288
|
-
* //
|
|
293
|
+
* // Every spelling of the same export path finds the same file
|
|
289
294
|
* const sameFile = renderContext.getFile('src/models/User.ts');
|
|
290
|
-
* const alsoSameFile = renderContext.getFile('
|
|
295
|
+
* const alsoSameFile = renderContext.getFile('@/src/models/User.ts');
|
|
291
296
|
* ```
|
|
292
297
|
*/
|
|
293
298
|
getFile(filePath) {
|
|
294
|
-
const normalizedPath =
|
|
299
|
+
const normalizedPath = normalizeWorkspacePath(filePath);
|
|
295
300
|
const currentFile = this.files.get(normalizedPath);
|
|
296
301
|
invariant(currentFile, `File not found during render phase: ${normalizedPath}`);
|
|
297
302
|
return currentFile;
|
|
@@ -155,7 +155,7 @@ export type AnyOasDocument = OpenAPIV2.Document | OpenAPIV3.Document | OpenAPIV3
|
|
|
155
155
|
* `v.GenericSchema<OasIssueType>` annotation — adding a variant in one
|
|
156
156
|
* place without the other fails to type-check.
|
|
157
157
|
*/
|
|
158
|
-
export type OasIssueType = 'UNEXPECTED_PROPERTY' | 'MISSING_OBJECT_TYPE' | 'MISSING_STRING_TYPE' | 'MISSING_ARRAY_TYPE' | 'MISSING_BOOLEAN_TYPE' | 'INVALID_EXAMPLE' | 'INVALID_ENUM' | 'INVALID_DEFAULT' | 'INVALID_NULLABLE' | 'UNEXPECTED_FORMAT' | 'INVALID_RESPONSE' | 'INVALID_FORMAT' | 'INVALID_OPERATION' | 'INVALID_SCHEMA' | 'INVALID_PARAMETER' | 'INVALID_SECURITY_SCHEME' | 'INVALID_DEPENDENCY_REF' | 'EXAMPLE_AND_EXAMPLES_DEFINED';
|
|
158
|
+
export type OasIssueType = 'UNEXPECTED_PROPERTY' | 'MISSING_OBJECT_TYPE' | 'MISSING_STRING_TYPE' | 'MISSING_ARRAY_TYPE' | 'MISSING_BOOLEAN_TYPE' | 'INVALID_EXAMPLE' | 'INVALID_ENUM' | 'INVALID_DEFAULT' | 'INVALID_NULLABLE' | 'UNEXPECTED_FORMAT' | 'INVALID_RESPONSE' | 'INVALID_FORMAT' | 'INVALID_OPERATION' | 'INVALID_SCHEMA' | 'INVALID_PARAMETER' | 'INVALID_SECURITY_SCHEME' | 'INVALID_DEPENDENCY_REF' | 'EXAMPLE_AND_EXAMPLES_DEFINED' | 'INVALID_TAG_PARENT' | 'UNSUPPORTED_OPERATION_METHOD';
|
|
159
159
|
/**
|
|
160
160
|
* Valibot schema for {@link OasIssueType}. Annotation deliberately omitted
|
|
161
161
|
* so the precise literal-union output type flows through to consumers
|
|
@@ -163,7 +163,7 @@ export type OasIssueType = 'UNEXPECTED_PROPERTY' | 'MISSING_OBJECT_TYPE' | 'MISS
|
|
|
163
163
|
* this list and {@link OasIssueType} is caught by `assertSchemaMatchesType`
|
|
164
164
|
* below.
|
|
165
165
|
*/
|
|
166
|
-
export declare const oasIssueType: v.UnionSchema<[v.LiteralSchema<"UNEXPECTED_PROPERTY", undefined>, v.LiteralSchema<"MISSING_OBJECT_TYPE", undefined>, v.LiteralSchema<"MISSING_STRING_TYPE", undefined>, v.LiteralSchema<"MISSING_ARRAY_TYPE", undefined>, v.LiteralSchema<"MISSING_BOOLEAN_TYPE", undefined>, v.LiteralSchema<"INVALID_EXAMPLE", undefined>, v.LiteralSchema<"INVALID_ENUM", undefined>, v.LiteralSchema<"INVALID_DEFAULT", undefined>, v.LiteralSchema<"INVALID_NULLABLE", undefined>, v.LiteralSchema<"UNEXPECTED_FORMAT", undefined>, v.LiteralSchema<"INVALID_RESPONSE", undefined>, v.LiteralSchema<"INVALID_FORMAT", undefined>, v.LiteralSchema<"INVALID_OPERATION", undefined>, v.LiteralSchema<"INVALID_SCHEMA", undefined>, v.LiteralSchema<"INVALID_PARAMETER", undefined>, v.LiteralSchema<"INVALID_SECURITY_SCHEME", undefined>, v.LiteralSchema<"INVALID_DEPENDENCY_REF", undefined>, v.LiteralSchema<"EXAMPLE_AND_EXAMPLES_DEFINED", undefined>], undefined>;
|
|
166
|
+
export declare const oasIssueType: v.UnionSchema<[v.LiteralSchema<"UNEXPECTED_PROPERTY", undefined>, v.LiteralSchema<"MISSING_OBJECT_TYPE", undefined>, v.LiteralSchema<"MISSING_STRING_TYPE", undefined>, v.LiteralSchema<"MISSING_ARRAY_TYPE", undefined>, v.LiteralSchema<"MISSING_BOOLEAN_TYPE", undefined>, v.LiteralSchema<"INVALID_EXAMPLE", undefined>, v.LiteralSchema<"INVALID_ENUM", undefined>, v.LiteralSchema<"INVALID_DEFAULT", undefined>, v.LiteralSchema<"INVALID_NULLABLE", undefined>, v.LiteralSchema<"UNEXPECTED_FORMAT", undefined>, v.LiteralSchema<"INVALID_RESPONSE", undefined>, v.LiteralSchema<"INVALID_FORMAT", undefined>, v.LiteralSchema<"INVALID_OPERATION", undefined>, v.LiteralSchema<"INVALID_SCHEMA", undefined>, v.LiteralSchema<"INVALID_PARAMETER", undefined>, v.LiteralSchema<"INVALID_SECURITY_SCHEME", undefined>, v.LiteralSchema<"INVALID_DEPENDENCY_REF", undefined>, v.LiteralSchema<"EXAMPLE_AND_EXAMPLES_DEFINED", undefined>, v.LiteralSchema<"INVALID_TAG_PARENT", undefined>, v.LiteralSchema<"UNSUPPORTED_OPERATION_METHOD", undefined>], undefined>;
|
|
167
167
|
export type GenerateResult = {
|
|
168
168
|
files: Map<string, FileBase>;
|
|
169
169
|
previews: Record<string, Preview>;
|
|
@@ -24,7 +24,9 @@ export const oasIssueType = v.union([
|
|
|
24
24
|
v.literal('INVALID_PARAMETER'),
|
|
25
25
|
v.literal('INVALID_SECURITY_SCHEME'),
|
|
26
26
|
v.literal('INVALID_DEPENDENCY_REF'),
|
|
27
|
-
v.literal('EXAMPLE_AND_EXAMPLES_DEFINED')
|
|
27
|
+
v.literal('EXAMPLE_AND_EXAMPLES_DEFINED'),
|
|
28
|
+
v.literal('INVALID_TAG_PARENT'),
|
|
29
|
+
v.literal('UNSUPPORTED_OPERATION_METHOD')
|
|
28
30
|
]);
|
|
29
31
|
// Compile-time drift detector: this binding fails to type-check if
|
|
30
32
|
// `OasIssueType` and the literal list above disagree in either
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Verifies whether provided path is absolute.
|
|
3
|
+
*
|
|
4
|
+
* @example Usage
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { isAbsolute } from "@std/path/posix/is-absolute";
|
|
7
|
+
* import { assert, assertFalse } from "@std/assert";
|
|
8
|
+
*
|
|
9
|
+
* assert(isAbsolute("/home/user/Documents/"));
|
|
10
|
+
* assertFalse(isAbsolute("home/user/Documents/"));
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @param path The path to verify.
|
|
14
|
+
* @returns Whether the path is absolute.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isAbsolute(path: string): boolean;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// Copyright 2018-2026 the Deno authors. MIT license.
|
|
2
|
+
// This module is browser compatible.
|
|
3
|
+
import { assertPath } from "../_common/assert_path.js";
|
|
4
|
+
import { isPosixPathSeparator } from "./_util.js";
|
|
5
|
+
/**
|
|
6
|
+
* Verifies whether provided path is absolute.
|
|
7
|
+
*
|
|
8
|
+
* @example Usage
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { isAbsolute } from "@std/path/posix/is-absolute";
|
|
11
|
+
* import { assert, assertFalse } from "@std/assert";
|
|
12
|
+
*
|
|
13
|
+
* assert(isAbsolute("/home/user/Documents/"));
|
|
14
|
+
* assertFalse(isAbsolute("home/user/Documents/"));
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* @param path The path to verify.
|
|
18
|
+
* @returns Whether the path is absolute.
|
|
19
|
+
*/
|
|
20
|
+
export function isAbsolute(path) {
|
|
21
|
+
assertPath(path);
|
|
22
|
+
return path.length > 0 && isPosixPathSeparator(path.charCodeAt(0));
|
|
23
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Verifies whether provided path is absolute.
|
|
3
|
+
*
|
|
4
|
+
* @example Usage
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { isAbsolute } from "@std/path/windows/is-absolute";
|
|
7
|
+
* import { assert, assertFalse } from "@std/assert";
|
|
8
|
+
*
|
|
9
|
+
* assert(isAbsolute("C:\\foo\\bar"));
|
|
10
|
+
* assertFalse(isAbsolute("..\\baz"));
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @param path The path to verify.
|
|
14
|
+
* @returns `true` if the path is absolute, `false` otherwise.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isAbsolute(path: string): boolean;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// Copyright 2018-2026 the Deno authors. MIT license.
|
|
2
|
+
// This module is browser compatible.
|
|
3
|
+
import { CHAR_COLON } from "../_common/constants.js";
|
|
4
|
+
import { assertPath } from "../_common/assert_path.js";
|
|
5
|
+
import { isPathSeparator, isWindowsDeviceRoot } from "./_util.js";
|
|
6
|
+
/**
|
|
7
|
+
* Verifies whether provided path is absolute.
|
|
8
|
+
*
|
|
9
|
+
* @example Usage
|
|
10
|
+
* ```ts
|
|
11
|
+
* import { isAbsolute } from "@std/path/windows/is-absolute";
|
|
12
|
+
* import { assert, assertFalse } from "@std/assert";
|
|
13
|
+
*
|
|
14
|
+
* assert(isAbsolute("C:\\foo\\bar"));
|
|
15
|
+
* assertFalse(isAbsolute("..\\baz"));
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @param path The path to verify.
|
|
19
|
+
* @returns `true` if the path is absolute, `false` otherwise.
|
|
20
|
+
*/
|
|
21
|
+
export function isAbsolute(path) {
|
|
22
|
+
assertPath(path);
|
|
23
|
+
const len = path.length;
|
|
24
|
+
if (len === 0)
|
|
25
|
+
return false;
|
|
26
|
+
const code = path.charCodeAt(0);
|
|
27
|
+
if (isPathSeparator(code)) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
else if (isWindowsDeviceRoot(code)) {
|
|
31
|
+
// Possible device root
|
|
32
|
+
if (len > 2 && path.charCodeAt(1) === CHAR_COLON) {
|
|
33
|
+
if (isPathSeparator(path.charCodeAt(2)))
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
@@ -466,8 +466,8 @@ export declare const isGeneratorKey: (arg: unknown) => arg is GeneratorKey;
|
|
|
466
466
|
* Type guard to check if a value is a valid OasOperationGeneratorKey.
|
|
467
467
|
*
|
|
468
468
|
* Validates that the argument is a string with the correct format:
|
|
469
|
-
* `generatorId|path|method` where each part is non-empty
|
|
470
|
-
* is a valid HTTP method.
|
|
469
|
+
* `generatorId|path|method|variant` where each part is non-empty, path
|
|
470
|
+
* starts with `/` and method is a valid HTTP method.
|
|
471
471
|
*
|
|
472
472
|
* @param arg - Value to check
|
|
473
473
|
* @returns True if the value is a valid OasOperationGeneratorKey
|
package/esm/dsl/GeneratorKeys.js
CHANGED
|
@@ -253,8 +253,8 @@ export const isGeneratorKey = (arg) => {
|
|
|
253
253
|
* Type guard to check if a value is a valid OasOperationGeneratorKey.
|
|
254
254
|
*
|
|
255
255
|
* Validates that the argument is a string with the correct format:
|
|
256
|
-
* `generatorId|path|method` where each part is non-empty
|
|
257
|
-
* is a valid HTTP method.
|
|
256
|
+
* `generatorId|path|method|variant` where each part is non-empty, path
|
|
257
|
+
* starts with `/` and method is a valid HTTP method.
|
|
258
258
|
*
|
|
259
259
|
* @param arg - Value to check
|
|
260
260
|
* @returns True if the value is a valid OasOperationGeneratorKey
|
|
@@ -285,7 +285,10 @@ export const isOasOperationGeneratorKey = (arg) => {
|
|
|
285
285
|
if (typeof generatorId !== 'string' || !generatorId.length) {
|
|
286
286
|
return false;
|
|
287
287
|
}
|
|
288
|
-
|
|
288
|
+
// An OpenAPI path starts with `/`. Checking it keeps a GraphQL key whose
|
|
289
|
+
// field name is also an HTTP method (`gen|mutation|query|main`) from
|
|
290
|
+
// parsing as an operation.
|
|
291
|
+
if (typeof path !== 'string' || !path.startsWith('/')) {
|
|
289
292
|
return false;
|
|
290
293
|
}
|
|
291
294
|
if (!isMethod(method)) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { normalizeWorkspacePath } from '../../helpers/normalizeWorkspacePath.js';
|
|
2
2
|
import { toModelGeneratorKey } from '../GeneratorKeys.js';
|
|
3
3
|
import { DEFAULT_VARIANT } from '../../types/Variant.js';
|
|
4
4
|
import { readProjectionOptions, toValueOptions } from '../../types/ProjectionOptions.js';
|
|
@@ -104,7 +104,8 @@ export class ModelDriver {
|
|
|
104
104
|
apply({ destinationPath } = {}) {
|
|
105
105
|
const { identifier, exportPath } = this.settings;
|
|
106
106
|
const definition = this.getDefinition({ identifier, exportPath });
|
|
107
|
-
if (destinationPath &&
|
|
107
|
+
if (destinationPath &&
|
|
108
|
+
normalizeWorkspacePath(exportPath) !== normalizeWorkspacePath(destinationPath)) {
|
|
108
109
|
// Cross-file import of the peer's identifier from its export path.
|
|
109
110
|
// The language builds the import object (`toImport`) and creates the
|
|
110
111
|
// destination file on first write (caller-side); the engine stores
|
|
@@ -124,7 +125,7 @@ export class ModelDriver {
|
|
|
124
125
|
* cache-hit path). Returns the normalized path.
|
|
125
126
|
*/
|
|
126
127
|
ensureFile(path) {
|
|
127
|
-
const normalizedPath =
|
|
128
|
+
const normalizedPath = normalizeWorkspacePath(path);
|
|
128
129
|
if (!this.context.getFile(normalizedPath)) {
|
|
129
130
|
this.context.addFile(this.projection.lang.createFile({ path: normalizedPath, settings: this.context.settings }));
|
|
130
131
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { normalizeWorkspacePath } from '../../../helpers/normalizeWorkspacePath.js';
|
|
2
2
|
import { toGqlOperationGeneratorKey } from '../../GeneratorKeys.js';
|
|
3
3
|
import { DEFAULT_VARIANT } from '../../../types/Variant.js';
|
|
4
4
|
import { readProjectionOptions, toValueOptions } from '../../../types/ProjectionOptions.js';
|
|
@@ -95,7 +95,8 @@ export class GqlOperationDriver {
|
|
|
95
95
|
apply({ destinationPath } = {}) {
|
|
96
96
|
const { identifier, exportPath } = this.settings;
|
|
97
97
|
const definition = this.getDefinition({ identifier, exportPath });
|
|
98
|
-
if (destinationPath &&
|
|
98
|
+
if (destinationPath &&
|
|
99
|
+
normalizeWorkspacePath(exportPath) !== normalizeWorkspacePath(destinationPath)) {
|
|
99
100
|
// Cross-file import of the peer's identifier from its export path.
|
|
100
101
|
// The language builds the import object (`toImport`) and creates the
|
|
101
102
|
// destination file on first write (caller-side); the engine stores
|
|
@@ -117,7 +118,7 @@ export class GqlOperationDriver {
|
|
|
117
118
|
* cache-hit path). Returns the normalized path.
|
|
118
119
|
*/
|
|
119
120
|
ensureFile(path) {
|
|
120
|
-
const normalizedPath =
|
|
121
|
+
const normalizedPath = normalizeWorkspacePath(path);
|
|
121
122
|
if (!this.context.getFile(normalizedPath)) {
|
|
122
123
|
this.context.addFile(this.projection.lang.createFile({ path: normalizedPath, settings: this.context.settings }));
|
|
123
124
|
}
|
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
12
|
var _OasOperationDriver_into;
|
|
13
|
-
import {
|
|
13
|
+
import { normalizeWorkspacePath } from '../../../helpers/normalizeWorkspacePath.js';
|
|
14
14
|
import invariant from 'tiny-invariant';
|
|
15
15
|
import { toOasOperationGeneratorKey } from '../../GeneratorKeys.js';
|
|
16
16
|
import { DEFAULT_VARIANT } from '../../../types/Variant.js';
|
|
@@ -134,7 +134,8 @@ export class OasOperationDriver {
|
|
|
134
134
|
const { identifier, exportPath } = this.settings;
|
|
135
135
|
// The file an import has to be stitched into, or `undefined` when there
|
|
136
136
|
// is none to stitch — no destination, or the projection's own file.
|
|
137
|
-
const importInto = destinationPath &&
|
|
137
|
+
const importInto = destinationPath &&
|
|
138
|
+
normalizeWorkspacePath(exportPath) !== normalizeWorkspacePath(destinationPath)
|
|
138
139
|
? destinationPath
|
|
139
140
|
: undefined;
|
|
140
141
|
// A member is declared inside its container, so it has no module-level
|
|
@@ -168,7 +169,7 @@ export class OasOperationDriver {
|
|
|
168
169
|
* cache-hit path). Returns the normalized path.
|
|
169
170
|
*/
|
|
170
171
|
ensureFile(path) {
|
|
171
|
-
const normalizedPath =
|
|
172
|
+
const normalizedPath = normalizeWorkspacePath(path);
|
|
172
173
|
if (!this.context.getFile(normalizedPath)) {
|
|
173
174
|
this.context.addFile(this.projection.lang.createFile({ path: normalizedPath, settings: this.context.settings }));
|
|
174
175
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { normalizeWorkspacePath } from '../../helpers/normalizeWorkspacePath.js';
|
|
2
2
|
import { toWebhookGeneratorKey } from '../GeneratorKeys.js';
|
|
3
3
|
import { DEFAULT_VARIANT } from '../../types/Variant.js';
|
|
4
4
|
import { readProjectionOptions, toValueOptions } from '../../types/ProjectionOptions.js';
|
|
@@ -95,7 +95,8 @@ export class WebhookDriver {
|
|
|
95
95
|
apply({ destinationPath } = {}) {
|
|
96
96
|
const { identifier, exportPath } = this.settings;
|
|
97
97
|
const definition = this.getDefinition({ identifier, exportPath });
|
|
98
|
-
if (destinationPath &&
|
|
98
|
+
if (destinationPath &&
|
|
99
|
+
normalizeWorkspacePath(exportPath) !== normalizeWorkspacePath(destinationPath)) {
|
|
99
100
|
// Cross-file import of the peer's identifier from its export path.
|
|
100
101
|
this.ensureFile(destinationPath);
|
|
101
102
|
this.context.register({
|
|
@@ -110,7 +111,7 @@ export class WebhookDriver {
|
|
|
110
111
|
* projection's language. Returns the normalized path.
|
|
111
112
|
*/
|
|
112
113
|
ensureFile(path) {
|
|
113
|
-
const normalizedPath =
|
|
114
|
+
const normalizedPath = normalizeWorkspacePath(path);
|
|
114
115
|
if (!this.context.getFile(normalizedPath)) {
|
|
115
116
|
this.context.addFile(this.projection.lang.createFile({ path: normalizedPath, settings: this.context.settings }));
|
|
116
117
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { extname } from '../deps/jsr.io/@std/path/1.1.6/extname.js';
|
|
1
|
+
import { extname } from '../deps/jsr.io/@std/path/1.1.6/posix/extname.js';
|
|
2
2
|
/**
|
|
3
3
|
* The filename suffix marking a file as engine-owned, applied by the
|
|
4
4
|
* engine when a projection's `toExportPath` result is stored into
|