@skmtc/core 0.29.0 → 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/ParseContext.js +9 -1
- package/esm/context/generateTypes.d.ts +2 -2
- package/esm/context/generateTypes.js +3 -1
- package/esm/dsl/GeneratorKeys.d.ts +2 -2
- package/esm/dsl/GeneratorKeys.js +6 -3
- package/esm/helpers/naming.d.ts +2 -1
- package/esm/helpers/naming.js +4 -2
- 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/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/ParseContext.js +9 -1
- package/script/context/generateTypes.d.ts +2 -2
- package/script/context/generateTypes.js +3 -1
- package/script/dsl/GeneratorKeys.d.ts +2 -2
- package/script/dsl/GeneratorKeys.js +6 -3
- package/script/helpers/naming.d.ts +2 -1
- package/script/helpers/naming.js +4 -2
- 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/SkmtcDocument.d.ts +6 -6
|
@@ -10,6 +10,8 @@ export type OasHttpSecuritySchemeData = {
|
|
|
10
10
|
type: 'http';
|
|
11
11
|
/** Human-readable description of the security scheme */
|
|
12
12
|
description?: string;
|
|
13
|
+
/** Whether the scheme is deprecated (OpenAPI 3.2) */
|
|
14
|
+
deprecated?: boolean;
|
|
13
15
|
/** HTTP authorization scheme (e.g., 'basic', 'bearer') */
|
|
14
16
|
scheme: string;
|
|
15
17
|
/** Format hint for bearer tokens (e.g., 'JWT') */
|
|
@@ -35,6 +37,8 @@ export type OasApiKeySecuritySchemeData = {
|
|
|
35
37
|
type: 'apiKey';
|
|
36
38
|
/** Human-readable description of the security scheme */
|
|
37
39
|
description?: string;
|
|
40
|
+
/** Whether the scheme is deprecated (OpenAPI 3.2) */
|
|
41
|
+
deprecated?: boolean;
|
|
38
42
|
/** Name of the header, query parameter, or cookie */
|
|
39
43
|
name: string;
|
|
40
44
|
/** Location where the API key should be sent */
|
|
@@ -128,11 +132,25 @@ export declare const oasPasswordOAuth2FlowData: v.ObjectSchema<{
|
|
|
128
132
|
readonly refreshUrl: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
129
133
|
readonly scopes: v.RecordSchema<v.StringSchema<undefined>, v.StringSchema<undefined>, undefined>;
|
|
130
134
|
}, undefined>;
|
|
135
|
+
/**
|
|
136
|
+
* Data type for the OAuth2 device authorization flow (OpenAPI 3.2).
|
|
137
|
+
*/
|
|
138
|
+
export type OasDeviceAuthorizationOAuth2FlowData = {
|
|
139
|
+
/** URL for the OAuth2 device authorization endpoint */
|
|
140
|
+
deviceAuthorizationUrl: string;
|
|
141
|
+
/** URL for the OAuth2 token endpoint */
|
|
142
|
+
tokenUrl: string;
|
|
143
|
+
/** Optional URL for token refresh */
|
|
144
|
+
refreshUrl?: string | undefined;
|
|
145
|
+
/** Available scopes mapped to their descriptions */
|
|
146
|
+
scopes?: Record<string, string> | undefined;
|
|
147
|
+
};
|
|
131
148
|
export type OasOAuth2FlowsData = {
|
|
132
149
|
authorizationCode?: OasAuthorizationCodeOAuth2FlowData;
|
|
133
150
|
clientCredentials?: OasClientCredentialsOAuth2FlowData;
|
|
134
151
|
implicit?: OasImplicitOAuth2FlowData;
|
|
135
152
|
password?: OasPasswordOAuth2FlowData;
|
|
153
|
+
deviceAuthorization?: OasDeviceAuthorizationOAuth2FlowData;
|
|
136
154
|
};
|
|
137
155
|
export declare const oasOAuth2FlowsData: v.ObjectSchema<{
|
|
138
156
|
readonly authorizationCode: v.OptionalSchema<v.ObjectSchema<{
|
|
@@ -160,6 +178,8 @@ export declare const oasOAuth2FlowsData: v.ObjectSchema<{
|
|
|
160
178
|
export type OasOAuth2SecuritySchemeData = {
|
|
161
179
|
type: 'oauth2';
|
|
162
180
|
description?: string;
|
|
181
|
+
deprecated?: boolean;
|
|
182
|
+
oauth2MetadataUrl?: string;
|
|
163
183
|
flows: OasOAuth2FlowsData;
|
|
164
184
|
};
|
|
165
185
|
export declare const oasOAuth2SecuritySchemeData: v.ObjectSchema<{
|
|
@@ -192,6 +212,7 @@ export declare const oasOAuth2SecuritySchemeData: v.ObjectSchema<{
|
|
|
192
212
|
export type OasOpenIdSecuritySchemeData = {
|
|
193
213
|
type: 'openIdConnect';
|
|
194
214
|
description?: string;
|
|
215
|
+
deprecated?: boolean;
|
|
195
216
|
openIdConnectUrl: string;
|
|
196
217
|
};
|
|
197
218
|
export declare const oasOpenIdSecuritySchemeData: v.ObjectSchema<{
|
|
@@ -10,6 +10,8 @@ import type { OasServerVariable } from '../serverVariable/ServerVariable.js';
|
|
|
10
10
|
*/
|
|
11
11
|
export type ServerFields = {
|
|
12
12
|
description?: string | undefined;
|
|
13
|
+
/** Name that identifies the server (OpenAPI 3.2) */
|
|
14
|
+
name?: string | undefined;
|
|
13
15
|
url: string;
|
|
14
16
|
variables?: Record<string, OasServerVariable> | undefined;
|
|
15
17
|
extensionFields?: Record<string, unknown>;
|
|
@@ -54,6 +56,8 @@ export declare class OasServer {
|
|
|
54
56
|
oasType: 'server';
|
|
55
57
|
/** Human-readable description of the server */
|
|
56
58
|
description: string | undefined;
|
|
59
|
+
/** Name that identifies the server (OpenAPI 3.2) */
|
|
60
|
+
name: string | undefined;
|
|
57
61
|
/** Server URL with optional variable templating */
|
|
58
62
|
url: string;
|
|
59
63
|
/** Variable definitions for URL templating */
|
|
@@ -88,7 +92,9 @@ export declare class OasServer {
|
|
|
88
92
|
* Converts this OAS server to an OpenAPI v3 JSON schema representation.
|
|
89
93
|
*
|
|
90
94
|
* @param _options - Conversion options (currently unused for server objects)
|
|
91
|
-
* @returns OpenAPI v3 server object with URL, description, and
|
|
95
|
+
* @returns OpenAPI v3 server object with URL, description, variables and, when set, name
|
|
92
96
|
*/
|
|
93
|
-
toJsonSchema(_options: ToJsonSchemaOptions): OpenAPIV3.ServerObject
|
|
97
|
+
toJsonSchema(_options: ToJsonSchemaOptions): OpenAPIV3.ServerObject & {
|
|
98
|
+
name?: string;
|
|
99
|
+
};
|
|
94
100
|
}
|
|
@@ -58,6 +58,13 @@ class OasServer {
|
|
|
58
58
|
writable: true,
|
|
59
59
|
value: void 0
|
|
60
60
|
});
|
|
61
|
+
/** Name that identifies the server (OpenAPI 3.2) */
|
|
62
|
+
Object.defineProperty(this, "name", {
|
|
63
|
+
enumerable: true,
|
|
64
|
+
configurable: true,
|
|
65
|
+
writable: true,
|
|
66
|
+
value: void 0
|
|
67
|
+
});
|
|
61
68
|
/** Server URL with optional variable templating */
|
|
62
69
|
Object.defineProperty(this, "url", {
|
|
63
70
|
enumerable: true,
|
|
@@ -80,6 +87,7 @@ class OasServer {
|
|
|
80
87
|
value: void 0
|
|
81
88
|
});
|
|
82
89
|
this.description = fields.description;
|
|
90
|
+
this.name = fields.name;
|
|
83
91
|
this.url = fields.url;
|
|
84
92
|
this.variables = fields.variables;
|
|
85
93
|
this.extensionFields = fields.extensionFields;
|
|
@@ -112,11 +120,12 @@ class OasServer {
|
|
|
112
120
|
* Converts this OAS server to an OpenAPI v3 JSON schema representation.
|
|
113
121
|
*
|
|
114
122
|
* @param _options - Conversion options (currently unused for server objects)
|
|
115
|
-
* @returns OpenAPI v3 server object with URL, description, and
|
|
123
|
+
* @returns OpenAPI v3 server object with URL, description, variables and, when set, name
|
|
116
124
|
*/
|
|
117
125
|
toJsonSchema(_options) {
|
|
118
126
|
return {
|
|
119
127
|
description: this.description,
|
|
128
|
+
...(this.name !== undefined ? { name: this.name } : {}),
|
|
120
129
|
url: this.url,
|
|
121
130
|
variables: this.variables
|
|
122
131
|
};
|
package/script/oas/tag/Tag.d.ts
CHANGED
|
@@ -3,6 +3,12 @@ import type { OasExternalDocs } from '../externalDocs/ExternalDocs.js';
|
|
|
3
3
|
export type TagFields = {
|
|
4
4
|
name: string;
|
|
5
5
|
description: string | undefined;
|
|
6
|
+
/** Short summary of the tag (OpenAPI 3.2) */
|
|
7
|
+
summary?: string;
|
|
8
|
+
/** Name of the tag this tag nests under (OpenAPI 3.2) */
|
|
9
|
+
parent?: string;
|
|
10
|
+
/** Kind of tag, e.g. `nav`, `badge` or `audience` (OpenAPI 3.2, open registry) */
|
|
11
|
+
kind?: string;
|
|
6
12
|
externalDocs?: OasExternalDocs;
|
|
7
13
|
extensionFields?: Record<string, unknown>;
|
|
8
14
|
};
|
|
@@ -12,6 +18,9 @@ export declare class OasTag {
|
|
|
12
18
|
constructor(fields: TagFields);
|
|
13
19
|
get name(): string;
|
|
14
20
|
get description(): string | undefined;
|
|
21
|
+
get summary(): string | undefined;
|
|
22
|
+
get parent(): string | undefined;
|
|
23
|
+
get kind(): string | undefined;
|
|
15
24
|
get externalDocs(): OasExternalDocs | undefined;
|
|
16
25
|
/** Specification Extension fields */
|
|
17
26
|
get extensionFields(): Record<string, unknown> | undefined;
|
package/script/oas/tag/Tag.js
CHANGED
|
@@ -31,6 +31,15 @@ class OasTag {
|
|
|
31
31
|
get description() {
|
|
32
32
|
return __classPrivateFieldGet(this, _OasTag_fields, "f").description;
|
|
33
33
|
}
|
|
34
|
+
get summary() {
|
|
35
|
+
return __classPrivateFieldGet(this, _OasTag_fields, "f").summary;
|
|
36
|
+
}
|
|
37
|
+
get parent() {
|
|
38
|
+
return __classPrivateFieldGet(this, _OasTag_fields, "f").parent;
|
|
39
|
+
}
|
|
40
|
+
get kind() {
|
|
41
|
+
return __classPrivateFieldGet(this, _OasTag_fields, "f").kind;
|
|
42
|
+
}
|
|
34
43
|
get externalDocs() {
|
|
35
44
|
return __classPrivateFieldGet(this, _OasTag_fields, "f").externalDocs;
|
|
36
45
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The OpenAPI dialects SKMTC parses natively. Each has its own complete
|
|
3
|
-
* parser tree (`core/parse/v3-0`, `core/parse/v3-1`);
|
|
4
|
-
* ONLY place a document's version is examined. Once a
|
|
5
|
-
* the matching parser runs top-to-bottom and never
|
|
6
|
-
* so a 3.0 document can never reach a line of 3.1
|
|
7
|
-
* there is no downstream version branch to get
|
|
3
|
+
* parser tree (`core/parse/v3-0`, `core/parse/v3-1`, `core/parse/v3-2`);
|
|
4
|
+
* this module is the ONLY place a document's version is examined. Once a
|
|
5
|
+
* dialect is chosen the matching parser runs top-to-bottom and never
|
|
6
|
+
* re-checks the version, so a 3.0 document can never reach a line of 3.1
|
|
7
|
+
* logic (or vice versa) — there is no downstream version branch to get
|
|
8
|
+
* wrong.
|
|
8
9
|
*/
|
|
9
|
-
export type OasDialect = '3.0' | '3.1';
|
|
10
|
+
export type OasDialect = '3.0' | '3.1' | '3.2';
|
|
10
11
|
/**
|
|
11
12
|
* Map an OpenAPI document's `openapi` version string to its parser
|
|
12
13
|
* dialect.
|
|
@@ -15,7 +16,7 @@ export type OasDialect = '3.0' | '3.1';
|
|
|
15
16
|
* precondition failure — there is no sensible parser to pick — so it throws
|
|
16
17
|
* rather than silently defaulting to one dialect and masking the error. A
|
|
17
18
|
* loose `openapi.startsWith('3.1') ? '3.1' : '3.0'` would route every
|
|
18
|
-
* non-3.1 value (a typo, `
|
|
19
|
+
* non-3.1 value (a typo, `4.0`, a missing field) into 3.0 unnoticed;
|
|
19
20
|
* that is the footgun this avoids. Mirrors `@skmtc/convert`'s
|
|
20
21
|
* `toV3Document`, which likewise throws on an unrecognized version.
|
|
21
22
|
*
|
|
@@ -9,7 +9,7 @@ exports.toOasDialect = void 0;
|
|
|
9
9
|
* precondition failure — there is no sensible parser to pick — so it throws
|
|
10
10
|
* rather than silently defaulting to one dialect and masking the error. A
|
|
11
11
|
* loose `openapi.startsWith('3.1') ? '3.1' : '3.0'` would route every
|
|
12
|
-
* non-3.1 value (a typo, `
|
|
12
|
+
* non-3.1 value (a typo, `4.0`, a missing field) into 3.0 unnoticed;
|
|
13
13
|
* that is the footgun this avoids. Mirrors `@skmtc/convert`'s
|
|
14
14
|
* `toV3Document`, which likewise throws on an unrecognized version.
|
|
15
15
|
*
|
|
@@ -21,6 +21,8 @@ const toOasDialect = (openapi) => {
|
|
|
21
21
|
return '3.0';
|
|
22
22
|
if (openapi?.startsWith('3.1'))
|
|
23
23
|
return '3.1';
|
|
24
|
-
|
|
24
|
+
if (openapi?.startsWith('3.2'))
|
|
25
|
+
return '3.2';
|
|
26
|
+
throw new Error(`Unsupported OpenAPI version: ${openapi ?? '(missing)'} — expected 3.0.x, 3.1.x or 3.2.x`);
|
|
25
27
|
};
|
|
26
28
|
exports.toOasDialect = toOasDialect;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Method } from '../../types/Method.js';
|
|
2
|
+
/**
|
|
3
|
+
* A path item field that holds an Operation Object in OpenAPI 3.0. A
|
|
4
|
+
* `query` key is not one of them: it stays a skipped field.
|
|
5
|
+
*/
|
|
6
|
+
export type PathItemMethod = Exclude<Method, 'query'>;
|
|
7
|
+
export declare const pathItemMethods: readonly PathItemMethod[];
|
|
8
|
+
/**
|
|
9
|
+
* Returns `key` as a {@link PathItemMethod} when it is one of {@link pathItemMethods}.
|
|
10
|
+
*/
|
|
11
|
+
export declare const toPathItemMethod: (key: string) => PathItemMethod | undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toPathItemMethod = exports.pathItemMethods = void 0;
|
|
4
|
+
exports.pathItemMethods = [
|
|
5
|
+
'get',
|
|
6
|
+
'put',
|
|
7
|
+
'post',
|
|
8
|
+
'delete',
|
|
9
|
+
'options',
|
|
10
|
+
'head',
|
|
11
|
+
'patch',
|
|
12
|
+
'trace'
|
|
13
|
+
];
|
|
14
|
+
/**
|
|
15
|
+
* Returns `key` as a {@link PathItemMethod} when it is one of {@link pathItemMethods}.
|
|
16
|
+
*/
|
|
17
|
+
const toPathItemMethod = (key) => {
|
|
18
|
+
return exports.pathItemMethods.find(method => method === key);
|
|
19
|
+
};
|
|
20
|
+
exports.toPathItemMethod = toPathItemMethod;
|
|
@@ -6,7 +6,7 @@ const toResponseV3_js_1 = require("../response/toResponseV3.js");
|
|
|
6
6
|
const toParameterV3_js_1 = require("../parameter/toParameterV3.js");
|
|
7
7
|
const Operation_js_1 = require("../../../oas/operation/Operation.js");
|
|
8
8
|
const toPathItemV3_js_1 = require("../pathItem/toPathItemV3.js");
|
|
9
|
-
const
|
|
9
|
+
const methods_js_1 = require("../methods.js");
|
|
10
10
|
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
11
11
|
const toSecurityRequirement_js_1 = require("../securityRequirement/toSecurityRequirement.js");
|
|
12
12
|
const isEmpty_js_1 = require("../../../helpers/isEmpty.js");
|
|
@@ -58,14 +58,14 @@ const toOperationsV3 = ({ paths, stackTrail, context }) => {
|
|
|
58
58
|
return [];
|
|
59
59
|
}
|
|
60
60
|
const cleaned = Object.entries(pathItem).reduce(({ rest, methodObject }, [key, operation]) => {
|
|
61
|
-
const
|
|
62
|
-
if (
|
|
63
|
-
const { [
|
|
61
|
+
const method = (0, methods_js_1.toPathItemMethod)(key);
|
|
62
|
+
if (method) {
|
|
63
|
+
const { [method]: _deleted, ...remaining } = rest;
|
|
64
64
|
return {
|
|
65
65
|
rest: remaining,
|
|
66
66
|
methodObject: {
|
|
67
67
|
...methodObject,
|
|
68
|
-
[
|
|
68
|
+
[method]: operation
|
|
69
69
|
}
|
|
70
70
|
};
|
|
71
71
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
2
|
-
import {
|
|
2
|
+
import type { OasParameterLocation } from '../../../oas/parameter/parameter-types.js';
|
|
3
3
|
import type { OpenAPIV3 } from 'openapi-types';
|
|
4
4
|
import { OasParameter } from '../../../oas/parameter/Parameter.js';
|
|
5
5
|
import type { OasRef } from '../../../oas/ref/Ref.js';
|
|
6
6
|
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
7
|
+
type ParameterLocation = Exclude<OasParameterLocation, 'querystring'>;
|
|
7
8
|
export type ToParameterListV3Args = {
|
|
8
9
|
parameters: (OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject)[] | undefined;
|
|
9
10
|
stackTrail: StackTrail;
|
|
@@ -29,7 +30,7 @@ export type ToParameterV3Args = {
|
|
|
29
30
|
};
|
|
30
31
|
export type ToStyleArgs = {
|
|
31
32
|
style: string | undefined;
|
|
32
|
-
location:
|
|
33
|
+
location: ParameterLocation;
|
|
33
34
|
stackTrail: StackTrail;
|
|
34
35
|
};
|
|
35
36
|
export type ToExplodeArgs = {
|
|
@@ -37,3 +38,4 @@ export type ToExplodeArgs = {
|
|
|
37
38
|
style: string | undefined;
|
|
38
39
|
stackTrail: StackTrail;
|
|
39
40
|
};
|
|
41
|
+
export {};
|
|
@@ -36,7 +36,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.toOptionalParametersV3 = exports.toParametersV3 = exports.toParameterListV3 = void 0;
|
|
37
37
|
const tryParseAt_js_1 = require("../../../context/tryParseAt.js");
|
|
38
38
|
const refFns_js_1 = require("../../../helpers/refFns.js");
|
|
39
|
-
const parameter_types_js_1 = require("../../../oas/parameter/parameter-types.js");
|
|
40
39
|
const toExamplesV3_js_1 = require("../example/toExamplesV3.js");
|
|
41
40
|
const toRefV31_js_1 = require("../ref/toRefV31.js");
|
|
42
41
|
const toSchemasV3_js_1 = require("../schema/toSchemasV3.js");
|
|
@@ -44,6 +43,21 @@ const toMediaTypeItemV3_js_1 = require("../mediaType/toMediaTypeItemV3.js");
|
|
|
44
43
|
const Parameter_js_1 = require("../../../oas/parameter/Parameter.js");
|
|
45
44
|
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
46
45
|
const v = __importStar(require("valibot"));
|
|
46
|
+
const parameterLocation = v.enum({
|
|
47
|
+
query: 'query',
|
|
48
|
+
header: 'header',
|
|
49
|
+
path: 'path',
|
|
50
|
+
cookie: 'cookie'
|
|
51
|
+
});
|
|
52
|
+
const parameterStyle = v.enum({
|
|
53
|
+
matrix: 'matrix',
|
|
54
|
+
label: 'label',
|
|
55
|
+
form: 'form',
|
|
56
|
+
simple: 'simple',
|
|
57
|
+
spaceDelimited: 'spaceDelimited',
|
|
58
|
+
pipeDelimited: 'pipeDelimited',
|
|
59
|
+
deepObject: 'deepObject'
|
|
60
|
+
});
|
|
47
61
|
const toParameterListV3 = ({ parameters, stackTrail, context }) => {
|
|
48
62
|
if (!parameters) {
|
|
49
63
|
return undefined;
|
|
@@ -91,7 +105,7 @@ const toParameterV3 = ({ parameter, stackTrail, context }) => {
|
|
|
91
105
|
stackTrail,
|
|
92
106
|
parentType: 'parameter'
|
|
93
107
|
});
|
|
94
|
-
const parsedLocation = v.parse(
|
|
108
|
+
const parsedLocation = v.parse(parameterLocation, location);
|
|
95
109
|
if (parsedLocation === 'path' && !required) {
|
|
96
110
|
console.warn(`Path parameters must be required`);
|
|
97
111
|
}
|
|
@@ -121,7 +135,7 @@ const toParameterV3 = ({ parameter, stackTrail, context }) => {
|
|
|
121
135
|
return context.withStackTrail(stackTrail, () => new Parameter_js_1.OasParameter(fields, context));
|
|
122
136
|
};
|
|
123
137
|
const toStyle = ({ style, location, stackTrail }) => {
|
|
124
|
-
const parsed = v.parse(v.optional(
|
|
138
|
+
const parsed = v.parse(v.optional(parameterStyle), style);
|
|
125
139
|
if (parsed !== undefined) {
|
|
126
140
|
return parsed;
|
|
127
141
|
}
|
|
@@ -39,8 +39,8 @@ const v = __importStar(require("valibot"));
|
|
|
39
39
|
const security_scheme_types_js_1 = require("../../../oas/securitySchemes/security-scheme-types.js");
|
|
40
40
|
const toRefV31_js_1 = require("../ref/toRefV31.js");
|
|
41
41
|
const refFns_js_1 = require("../../../helpers/refFns.js");
|
|
42
|
-
const isEmpty_js_1 = require("../../../helpers/isEmpty.js");
|
|
43
42
|
const tryParseAt_js_1 = require("../../../context/tryParseAt.js");
|
|
43
|
+
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
44
44
|
const toSecuritySchemesV3 = ({ securitySchemes, stackTrail, context }) => {
|
|
45
45
|
if (!securitySchemes) {
|
|
46
46
|
return undefined;
|
|
@@ -64,21 +64,29 @@ const toSecuritySchemesV3 = ({ securitySchemes, stackTrail, context }) => {
|
|
|
64
64
|
return output;
|
|
65
65
|
};
|
|
66
66
|
exports.toSecuritySchemesV3 = toSecuritySchemesV3;
|
|
67
|
+
/**
|
|
68
|
+
* Log the keys of `value` that `known` does not name as skipped fields.
|
|
69
|
+
* `v.parse` on a `v.object` schema strips unknown keys, so they are read
|
|
70
|
+
* off the raw object. `x-` extensions are not logged.
|
|
71
|
+
*/
|
|
72
|
+
const logSkippedKeys = ({ value, known, parentType, stackTrail, context }) => {
|
|
73
|
+
const skipped = Object.fromEntries(Object.entries(value).filter(([key]) => !Object.hasOwn(known, key)));
|
|
74
|
+
(0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({ skipped, parent: value, parentType, stackTrail, context });
|
|
75
|
+
};
|
|
67
76
|
const toSecuritySchemeV3 = ({ securityScheme, stackTrail, context }) => {
|
|
68
77
|
if ((0, refFns_js_1.isRef)(securityScheme)) {
|
|
69
78
|
return (0, toRefV31_js_1.toRefV31)({ ref: securityScheme, refType: 'securityScheme', stackTrail, context });
|
|
70
79
|
}
|
|
71
80
|
switch (securityScheme.type) {
|
|
72
81
|
case 'http': {
|
|
73
|
-
const {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
+
const { description, scheme, bearerFormat } = v.parse(security_scheme_types_js_1.oasHttpSecuritySchemeData, securityScheme);
|
|
83
|
+
logSkippedKeys({
|
|
84
|
+
value: securityScheme,
|
|
85
|
+
known: security_scheme_types_js_1.oasHttpSecuritySchemeData.entries,
|
|
86
|
+
parentType: 'securityScheme:http',
|
|
87
|
+
stackTrail,
|
|
88
|
+
context
|
|
89
|
+
});
|
|
82
90
|
return new SecurityScheme_js_1.OasHttpSecurityScheme({
|
|
83
91
|
description,
|
|
84
92
|
scheme,
|
|
@@ -86,15 +94,14 @@ const toSecuritySchemeV3 = ({ securityScheme, stackTrail, context }) => {
|
|
|
86
94
|
});
|
|
87
95
|
}
|
|
88
96
|
case 'apiKey': {
|
|
89
|
-
const {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}
|
|
97
|
+
const { in: location, description, name } = v.parse(security_scheme_types_js_1.oasApiKeySecuritySchemeData, securityScheme);
|
|
98
|
+
logSkippedKeys({
|
|
99
|
+
value: securityScheme,
|
|
100
|
+
known: security_scheme_types_js_1.oasApiKeySecuritySchemeData.entries,
|
|
101
|
+
parentType: 'securityScheme:apiKey',
|
|
102
|
+
stackTrail,
|
|
103
|
+
context
|
|
104
|
+
});
|
|
98
105
|
return new SecurityScheme_js_1.OasApiKeySecurityScheme({
|
|
99
106
|
description,
|
|
100
107
|
name,
|
|
@@ -102,30 +109,35 @@ const toSecuritySchemeV3 = ({ securityScheme, stackTrail, context }) => {
|
|
|
102
109
|
});
|
|
103
110
|
}
|
|
104
111
|
case 'oauth2': {
|
|
105
|
-
const {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
112
|
+
const { flows, description } = v.parse(security_scheme_types_js_1.oasOAuth2SecuritySchemeData, securityScheme);
|
|
113
|
+
logSkippedKeys({
|
|
114
|
+
value: securityScheme,
|
|
115
|
+
known: security_scheme_types_js_1.oasOAuth2SecuritySchemeData.entries,
|
|
116
|
+
parentType: 'securityScheme:oauth2',
|
|
117
|
+
stackTrail,
|
|
118
|
+
context
|
|
119
|
+
});
|
|
120
|
+
stackTrail.trace('flows', st => logSkippedKeys({
|
|
121
|
+
value: securityScheme.flows,
|
|
122
|
+
known: security_scheme_types_js_1.oasOAuth2FlowsData.entries,
|
|
123
|
+
parentType: 'oauthFlows',
|
|
124
|
+
stackTrail: st,
|
|
125
|
+
context
|
|
126
|
+
}));
|
|
114
127
|
return new SecurityScheme_js_1.OasOAuth2SecurityScheme({
|
|
115
128
|
description,
|
|
116
129
|
flows
|
|
117
130
|
});
|
|
118
131
|
}
|
|
119
132
|
case 'openIdConnect': {
|
|
120
|
-
const {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
}
|
|
133
|
+
const { description, openIdConnectUrl } = v.parse(security_scheme_types_js_1.oasOpenIdSecuritySchemeData, securityScheme);
|
|
134
|
+
logSkippedKeys({
|
|
135
|
+
value: securityScheme,
|
|
136
|
+
known: security_scheme_types_js_1.oasOpenIdSecuritySchemeData.entries,
|
|
137
|
+
parentType: 'securityScheme:openIdConnect',
|
|
138
|
+
stackTrail,
|
|
139
|
+
context
|
|
140
|
+
});
|
|
129
141
|
return new SecurityScheme_js_1.OasOpenIdSecurityScheme({
|
|
130
142
|
description,
|
|
131
143
|
openIdConnectUrl
|
|
@@ -6,7 +6,7 @@ const toResponseV3_js_1 = require("../response/toResponseV3.js");
|
|
|
6
6
|
const toParameterV3_js_1 = require("../parameter/toParameterV3.js");
|
|
7
7
|
const Webhook_js_1 = require("../../../oas/webhook/Webhook.js");
|
|
8
8
|
const toPathItemV3_js_1 = require("../pathItem/toPathItemV3.js");
|
|
9
|
-
const
|
|
9
|
+
const methods_js_1 = require("../methods.js");
|
|
10
10
|
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
11
11
|
const toSecurityRequirement_js_1 = require("../securityRequirement/toSecurityRequirement.js");
|
|
12
12
|
const isEmpty_js_1 = require("../../../helpers/isEmpty.js");
|
|
@@ -73,14 +73,14 @@ const toWebhooksV3 = ({ webhooks, stackTrail, context }) => {
|
|
|
73
73
|
return [];
|
|
74
74
|
}
|
|
75
75
|
const cleaned = Object.entries(pathItem).reduce(({ rest, methodObject }, [key, operation]) => {
|
|
76
|
-
const
|
|
77
|
-
if (
|
|
78
|
-
const { [
|
|
76
|
+
const method = (0, methods_js_1.toPathItemMethod)(key);
|
|
77
|
+
if (method) {
|
|
78
|
+
const { [method]: _deleted, ...remaining } = rest;
|
|
79
79
|
return {
|
|
80
80
|
rest: remaining,
|
|
81
81
|
methodObject: {
|
|
82
82
|
...methodObject,
|
|
83
|
-
[
|
|
83
|
+
[method]: operation
|
|
84
84
|
}
|
|
85
85
|
};
|
|
86
86
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Method } from '../../types/Method.js';
|
|
2
|
+
/**
|
|
3
|
+
* A path item field that holds an Operation Object in OpenAPI 3.1. A
|
|
4
|
+
* `query` key is not one of them: it stays a skipped field.
|
|
5
|
+
*/
|
|
6
|
+
export type PathItemMethod = Exclude<Method, 'query'>;
|
|
7
|
+
export declare const pathItemMethods: readonly PathItemMethod[];
|
|
8
|
+
/**
|
|
9
|
+
* Returns `key` as a {@link PathItemMethod} when it is one of {@link pathItemMethods}.
|
|
10
|
+
*/
|
|
11
|
+
export declare const toPathItemMethod: (key: string) => PathItemMethod | undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toPathItemMethod = exports.pathItemMethods = void 0;
|
|
4
|
+
exports.pathItemMethods = [
|
|
5
|
+
'get',
|
|
6
|
+
'put',
|
|
7
|
+
'post',
|
|
8
|
+
'delete',
|
|
9
|
+
'options',
|
|
10
|
+
'head',
|
|
11
|
+
'patch',
|
|
12
|
+
'trace'
|
|
13
|
+
];
|
|
14
|
+
/**
|
|
15
|
+
* Returns `key` as a {@link PathItemMethod} when it is one of {@link pathItemMethods}.
|
|
16
|
+
*/
|
|
17
|
+
const toPathItemMethod = (key) => {
|
|
18
|
+
return exports.pathItemMethods.find(method => method === key);
|
|
19
|
+
};
|
|
20
|
+
exports.toPathItemMethod = toPathItemMethod;
|
|
@@ -6,7 +6,7 @@ const toResponseV3_js_1 = require("../response/toResponseV3.js");
|
|
|
6
6
|
const toParameterV3_js_1 = require("../parameter/toParameterV3.js");
|
|
7
7
|
const Operation_js_1 = require("../../../oas/operation/Operation.js");
|
|
8
8
|
const toPathItemV3_js_1 = require("../pathItem/toPathItemV3.js");
|
|
9
|
-
const
|
|
9
|
+
const methods_js_1 = require("../methods.js");
|
|
10
10
|
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
11
11
|
const toSecurityRequirement_js_1 = require("../securityRequirement/toSecurityRequirement.js");
|
|
12
12
|
const isEmpty_js_1 = require("../../../helpers/isEmpty.js");
|
|
@@ -61,14 +61,14 @@ const toOperationsV3 = ({ paths, stackTrail, context }) => {
|
|
|
61
61
|
return [];
|
|
62
62
|
}
|
|
63
63
|
const cleaned = Object.entries(pathItem).reduce(({ rest, methodObject }, [key, operation]) => {
|
|
64
|
-
const
|
|
65
|
-
if (
|
|
66
|
-
const { [
|
|
64
|
+
const method = (0, methods_js_1.toPathItemMethod)(key);
|
|
65
|
+
if (method) {
|
|
66
|
+
const { [method]: _deleted, ...remaining } = rest;
|
|
67
67
|
return {
|
|
68
68
|
rest: remaining,
|
|
69
69
|
methodObject: {
|
|
70
70
|
...methodObject,
|
|
71
|
-
[
|
|
71
|
+
[method]: operation
|
|
72
72
|
}
|
|
73
73
|
};
|
|
74
74
|
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
2
|
-
import {
|
|
2
|
+
import type { OasParameterLocation } from '../../../oas/parameter/parameter-types.js';
|
|
3
3
|
import type { OpenAPIV3 } from 'openapi-types';
|
|
4
4
|
import { OasParameter } from '../../../oas/parameter/Parameter.js';
|
|
5
5
|
import type { OasRef } from '../../../oas/ref/Ref.js';
|
|
6
6
|
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
7
|
+
type ParameterLocation = Exclude<OasParameterLocation, 'querystring'>;
|
|
7
8
|
export type ToParameterListV3Args = {
|
|
8
9
|
parameters: (OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject)[] | undefined;
|
|
9
10
|
stackTrail: StackTrail;
|
|
@@ -29,7 +30,7 @@ export type ToParameterV3Args = {
|
|
|
29
30
|
};
|
|
30
31
|
export type ToStyleArgs = {
|
|
31
32
|
style: string | undefined;
|
|
32
|
-
location:
|
|
33
|
+
location: ParameterLocation;
|
|
33
34
|
stackTrail: StackTrail;
|
|
34
35
|
};
|
|
35
36
|
export type ToExplodeArgs = {
|
|
@@ -37,3 +38,4 @@ export type ToExplodeArgs = {
|
|
|
37
38
|
style: string | undefined;
|
|
38
39
|
stackTrail: StackTrail;
|
|
39
40
|
};
|
|
41
|
+
export {};
|
|
@@ -36,7 +36,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.toOptionalParametersV3 = exports.toParametersV3 = exports.toParameterListV3 = void 0;
|
|
37
37
|
const tryParseAt_js_1 = require("../../../context/tryParseAt.js");
|
|
38
38
|
const refFns_js_1 = require("../../../helpers/refFns.js");
|
|
39
|
-
const parameter_types_js_1 = require("../../../oas/parameter/parameter-types.js");
|
|
40
39
|
const toExamplesV3_js_1 = require("../example/toExamplesV3.js");
|
|
41
40
|
const toRefV31_js_1 = require("../ref/toRefV31.js");
|
|
42
41
|
const toSchemasV3_js_1 = require("../schema/toSchemasV3.js");
|
|
@@ -44,6 +43,21 @@ const toMediaTypeItemV3_js_1 = require("../mediaType/toMediaTypeItemV3.js");
|
|
|
44
43
|
const Parameter_js_1 = require("../../../oas/parameter/Parameter.js");
|
|
45
44
|
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
46
45
|
const v = __importStar(require("valibot"));
|
|
46
|
+
const parameterLocation = v.enum({
|
|
47
|
+
query: 'query',
|
|
48
|
+
header: 'header',
|
|
49
|
+
path: 'path',
|
|
50
|
+
cookie: 'cookie'
|
|
51
|
+
});
|
|
52
|
+
const parameterStyle = v.enum({
|
|
53
|
+
matrix: 'matrix',
|
|
54
|
+
label: 'label',
|
|
55
|
+
form: 'form',
|
|
56
|
+
simple: 'simple',
|
|
57
|
+
spaceDelimited: 'spaceDelimited',
|
|
58
|
+
pipeDelimited: 'pipeDelimited',
|
|
59
|
+
deepObject: 'deepObject'
|
|
60
|
+
});
|
|
47
61
|
const toParameterListV3 = ({ parameters, stackTrail, context }) => {
|
|
48
62
|
if (!parameters) {
|
|
49
63
|
return undefined;
|
|
@@ -91,7 +105,7 @@ const toParameterV3 = ({ parameter, stackTrail, context }) => {
|
|
|
91
105
|
stackTrail,
|
|
92
106
|
parentType: 'parameter'
|
|
93
107
|
});
|
|
94
|
-
const parsedLocation = v.parse(
|
|
108
|
+
const parsedLocation = v.parse(parameterLocation, location);
|
|
95
109
|
if (parsedLocation === 'path' && !required) {
|
|
96
110
|
console.warn(`Path parameters must be required`);
|
|
97
111
|
}
|
|
@@ -121,7 +135,7 @@ const toParameterV3 = ({ parameter, stackTrail, context }) => {
|
|
|
121
135
|
return context.withStackTrail(stackTrail, () => new Parameter_js_1.OasParameter(fields, context));
|
|
122
136
|
};
|
|
123
137
|
const toStyle = ({ style, location, stackTrail }) => {
|
|
124
|
-
const parsed = v.parse(v.optional(
|
|
138
|
+
const parsed = v.parse(v.optional(parameterStyle), style);
|
|
125
139
|
if (parsed !== undefined) {
|
|
126
140
|
return parsed;
|
|
127
141
|
}
|