@skmtc/core 0.29.0 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +14 -2
- package/esm/context/generateTypes.js +5 -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/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/header/Header.d.ts +4 -2
- package/esm/oas/header/Header.js +12 -5
- package/esm/oas/mediaType/MediaType.d.ts +12 -0
- package/esm/oas/mediaType/MediaType.js +24 -0
- package/esm/oas/mediaType/jsonMediaType.d.ts +50 -0
- package/esm/oas/mediaType/jsonMediaType.js +64 -0
- package/esm/oas/mediaType/toContentSchema.d.ts +8 -0
- package/esm/oas/mediaType/toContentSchema.js +6 -0
- package/esm/oas/operation/Operation.d.ts +10 -2
- package/esm/oas/operation/Operation.js +20 -7
- package/esm/oas/parameter/Parameter.d.ts +3 -2
- package/esm/oas/parameter/Parameter.js +11 -5
- package/esm/oas/parameter/parameter-types.d.ts +10 -2
- package/esm/oas/parameter/parameter-types.js +3 -1
- package/esm/oas/requestBody/RequestBody.d.ts +11 -0
- package/esm/oas/requestBody/RequestBody.js +16 -2
- package/esm/oas/response/Response.d.ts +17 -1
- package/esm/oas/response/Response.js +24 -2
- 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/oas/webhook/Webhook.d.ts +4 -4
- package/esm/oas/webhook/Webhook.js +6 -6
- package/esm/parse/logBodyMediaTypes.d.ts +27 -0
- package/esm/parse/logBodyMediaTypes.js +50 -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/requestBody/toRequestBodiesV3.js +4 -1
- package/esm/parse/v3-0/response/toResponseV3.js +4 -1
- 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/requestBody/toRequestBodiesV3.js +4 -1
- package/esm/parse/v3-1/response/toResponseV3.js +4 -1
- 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 +47 -0
- package/esm/parse/v3-2/response/toResponseV3.d.ts +29 -0
- package/esm/parse/v3-2/response/toResponseV3.js +59 -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 +14 -2
- package/script/context/generateTypes.js +5 -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/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/header/Header.d.ts +4 -2
- package/script/oas/header/Header.js +12 -5
- package/script/oas/mediaType/MediaType.d.ts +12 -0
- package/script/oas/mediaType/MediaType.js +24 -0
- package/script/oas/mediaType/jsonMediaType.d.ts +50 -0
- package/script/oas/mediaType/jsonMediaType.js +71 -0
- package/script/oas/mediaType/toContentSchema.d.ts +8 -0
- package/script/oas/mediaType/toContentSchema.js +10 -0
- package/script/oas/operation/Operation.d.ts +10 -2
- package/script/oas/operation/Operation.js +20 -7
- package/script/oas/parameter/Parameter.d.ts +3 -2
- package/script/oas/parameter/Parameter.js +11 -5
- package/script/oas/parameter/parameter-types.d.ts +10 -2
- package/script/oas/parameter/parameter-types.js +3 -1
- package/script/oas/requestBody/RequestBody.d.ts +11 -0
- package/script/oas/requestBody/RequestBody.js +16 -2
- package/script/oas/response/Response.d.ts +17 -1
- package/script/oas/response/Response.js +24 -2
- 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/oas/webhook/Webhook.d.ts +4 -4
- package/script/oas/webhook/Webhook.js +6 -6
- package/script/parse/logBodyMediaTypes.d.ts +27 -0
- package/script/parse/logBodyMediaTypes.js +54 -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/requestBody/toRequestBodiesV3.js +4 -1
- package/script/parse/v3-0/response/toResponseV3.js +4 -1
- 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/requestBody/toRequestBodiesV3.js +4 -1
- package/script/parse/v3-1/response/toResponseV3.js +4 -1
- 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 +52 -0
- package/script/parse/v3-2/response/toResponseV3.d.ts +29 -0
- package/script/parse/v3-2/response/toResponseV3.js +65 -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
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toObject = void 0;
|
|
4
|
+
const Object_js_1 = require("../../../oas/object/Object.js");
|
|
5
|
+
const toSchemasV3_js_1 = require("../schema/toSchemasV3.js");
|
|
6
|
+
const toAdditionalPropertiesV3_js_1 = require("./toAdditionalPropertiesV3.js");
|
|
7
|
+
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
8
|
+
const parseNullable_js_1 = require("../_helpers/parseNullable.js");
|
|
9
|
+
const parseEnum_js_1 = require("../_helpers/parseEnum.js");
|
|
10
|
+
const parseExample_js_1 = require("../_helpers/parseExample.js");
|
|
11
|
+
const parseDefault_js_1 = require("../_helpers/parseDefault.js");
|
|
12
|
+
const toExternalDocs_js_1 = require("../externalDocs/toExternalDocs.js");
|
|
13
|
+
const toObject = ({ value, context, stackTrail }) => {
|
|
14
|
+
const { nullable, value: valueWithoutNullable } = (0, parseNullable_js_1.parseNullable)({
|
|
15
|
+
value,
|
|
16
|
+
context,
|
|
17
|
+
stackTrail
|
|
18
|
+
});
|
|
19
|
+
const { example: unparsedExample, ...valueWithoutExample } = valueWithoutNullable;
|
|
20
|
+
const example = (0, parseExample_js_1.parseExample)({
|
|
21
|
+
value: unparsedExample,
|
|
22
|
+
context,
|
|
23
|
+
parent: valueWithoutNullable,
|
|
24
|
+
nullable,
|
|
25
|
+
check: isObject,
|
|
26
|
+
toMessage: item => `Removed invalid example. Expected "object", got: ${item}`,
|
|
27
|
+
stackTrail
|
|
28
|
+
});
|
|
29
|
+
const { enum: unparsedEnums, ...valueWithoutEnums } = valueWithoutExample;
|
|
30
|
+
const enums = (0, parseEnum_js_1.parseEnum)({
|
|
31
|
+
value: unparsedEnums,
|
|
32
|
+
nullable,
|
|
33
|
+
parent: valueWithoutExample,
|
|
34
|
+
context,
|
|
35
|
+
stackTrail,
|
|
36
|
+
check: isObject,
|
|
37
|
+
toMessage: item => `Removed invalid enum. Expected "object", got: ${item}`
|
|
38
|
+
});
|
|
39
|
+
const { default: unparsedDefaultValue, ...valueWithoutDefault } = valueWithoutEnums;
|
|
40
|
+
const defaultValue = (0, parseDefault_js_1.parseDefault)({
|
|
41
|
+
value: unparsedDefaultValue,
|
|
42
|
+
context,
|
|
43
|
+
parent: valueWithoutEnums,
|
|
44
|
+
nullable,
|
|
45
|
+
check: isObject,
|
|
46
|
+
toMessage: item => `Removed invalid default. Expected "object", got: ${item}`,
|
|
47
|
+
stackTrail
|
|
48
|
+
});
|
|
49
|
+
return toParsedObject({
|
|
50
|
+
context,
|
|
51
|
+
nullable,
|
|
52
|
+
example,
|
|
53
|
+
enums,
|
|
54
|
+
defaultValue,
|
|
55
|
+
value: valueWithoutDefault,
|
|
56
|
+
stackTrail
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
exports.toObject = toObject;
|
|
60
|
+
const toParsedObject = ({ context, stackTrail, nullable, example, enums, defaultValue, value }) => {
|
|
61
|
+
const { type: _type, title, description, externalDocs, deprecated, properties, required, maxProperties, minProperties, additionalProperties, readOnly, writeOnly, ...skipped } = value;
|
|
62
|
+
const extensionFields = (0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({
|
|
63
|
+
skipped,
|
|
64
|
+
parent: value,
|
|
65
|
+
context,
|
|
66
|
+
stackTrail,
|
|
67
|
+
parentType: 'schema:object'
|
|
68
|
+
});
|
|
69
|
+
return context.withStackTrail(stackTrail, () => new Object_js_1.OasObject({
|
|
70
|
+
title,
|
|
71
|
+
description,
|
|
72
|
+
externalDocs: stackTrail.trace('externalDocs', st => (0, toExternalDocs_js_1.toExternalDocs)({ externalDocs, stackTrail: st, context })),
|
|
73
|
+
nullable,
|
|
74
|
+
example,
|
|
75
|
+
enums,
|
|
76
|
+
properties: stackTrail.trace('properties', st => (0, toSchemasV3_js_1.toOptionalSchemasV3)({
|
|
77
|
+
schemas: properties,
|
|
78
|
+
stackTrail: st,
|
|
79
|
+
context
|
|
80
|
+
})),
|
|
81
|
+
required,
|
|
82
|
+
maxProperties,
|
|
83
|
+
minProperties,
|
|
84
|
+
additionalProperties: stackTrail.trace('additionalProperties', st => (0, toAdditionalPropertiesV3_js_1.toAdditionalPropertiesV3)({ additionalProperties, stackTrail: st, context })),
|
|
85
|
+
extensionFields,
|
|
86
|
+
default: defaultValue,
|
|
87
|
+
deprecated,
|
|
88
|
+
readOnly,
|
|
89
|
+
writeOnly
|
|
90
|
+
}, context));
|
|
91
|
+
};
|
|
92
|
+
const isObject = (value) => {
|
|
93
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
94
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { OpenAPIV3 } from 'openapi-types';
|
|
2
|
+
import type { Method } from '../../../types/Method.js';
|
|
3
|
+
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
4
|
+
import { OasOperation } from '../../../oas/operation/Operation.js';
|
|
5
|
+
import type { OasPathItem } from '../../../oas/pathItem/PathItem.js';
|
|
6
|
+
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
7
|
+
type OperationInfo = {
|
|
8
|
+
method: Method;
|
|
9
|
+
path: string;
|
|
10
|
+
pathItem: OasPathItem | undefined;
|
|
11
|
+
};
|
|
12
|
+
export type ToOperationV3Args = {
|
|
13
|
+
operation: OpenAPIV3.OperationObject;
|
|
14
|
+
operationInfo: OperationInfo;
|
|
15
|
+
stackTrail: StackTrail;
|
|
16
|
+
context: ParseContextType;
|
|
17
|
+
};
|
|
18
|
+
export declare const toOperationV3: ({ operation, operationInfo, stackTrail, context }: ToOperationV3Args) => OasOperation;
|
|
19
|
+
export type ToOperationsV3Args = {
|
|
20
|
+
paths: OpenAPIV3.PathsObject | undefined;
|
|
21
|
+
stackTrail: StackTrail;
|
|
22
|
+
context: ParseContextType;
|
|
23
|
+
};
|
|
24
|
+
export declare const toOperationsV3: ({ paths, stackTrail, context }: ToOperationsV3Args) => OasOperation[];
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toOperationsV3 = exports.toOperationV3 = void 0;
|
|
4
|
+
const toRequestBodiesV3_js_1 = require("../requestBody/toRequestBodiesV3.js");
|
|
5
|
+
const toResponseV3_js_1 = require("../response/toResponseV3.js");
|
|
6
|
+
const toParameterV3_js_1 = require("../parameter/toParameterV3.js");
|
|
7
|
+
const Operation_js_1 = require("../../../oas/operation/Operation.js");
|
|
8
|
+
const toPathItemV3_js_1 = require("../pathItem/toPathItemV3.js");
|
|
9
|
+
const methods_js_1 = require("../methods.js");
|
|
10
|
+
const dropAdditionalOperationsV3_js_1 = require("../pathItem/dropAdditionalOperationsV3.js");
|
|
11
|
+
const warnQuerystringConflictsV3_js_1 = require("../parameter/warnQuerystringConflictsV3.js");
|
|
12
|
+
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
13
|
+
const toSecurityRequirement_js_1 = require("../securityRequirement/toSecurityRequirement.js");
|
|
14
|
+
const toExternalDocs_js_1 = require("../externalDocs/toExternalDocs.js");
|
|
15
|
+
const toServerV3_js_1 = require("../server/toServerV3.js");
|
|
16
|
+
const toOperationV3 = ({ operation, operationInfo, stackTrail, context }) => {
|
|
17
|
+
const { method, path, pathItem } = operationInfo;
|
|
18
|
+
const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, security, externalDocs, servers,
|
|
19
|
+
// Callbacks are a deliberate non-goal (no out-of-band callback codegen).
|
|
20
|
+
// Pull it out so it is dropped silently instead of warned as an
|
|
21
|
+
// unexpected property on every operation that declares one.
|
|
22
|
+
callbacks: _callbacks, ...skipped } = operation;
|
|
23
|
+
const extensionFields = (0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({
|
|
24
|
+
skipped,
|
|
25
|
+
parent: operation,
|
|
26
|
+
context,
|
|
27
|
+
stackTrail,
|
|
28
|
+
parentType: 'operation'
|
|
29
|
+
});
|
|
30
|
+
const parsedParameters = stackTrail.trace('parameters', st => (0, toParameterV3_js_1.toParameterListV3)({ parameters, stackTrail: st, context }));
|
|
31
|
+
(0, warnQuerystringConflictsV3_js_1.warnQuerystringConflictsV3)({ parameters: parsedParameters, pathItem, stackTrail, context });
|
|
32
|
+
const parsedRequestBody = stackTrail.trace('requestBody', st => (0, toRequestBodiesV3_js_1.toRequestBodyV3)({ requestBody, stackTrail: st, context }));
|
|
33
|
+
const parsedResponses = stackTrail.trace('responses', st => (0, toResponseV3_js_1.toResponsesV3)({ responses, stackTrail: st, context }));
|
|
34
|
+
const parsedSecurity = stackTrail.trace('security', st => (0, toSecurityRequirement_js_1.toSecurityRequirementsV3)({ security, stackTrail: st, context }));
|
|
35
|
+
const parsedExternalDocs = stackTrail.trace('externalDocs', st => (0, toExternalDocs_js_1.toExternalDocs)({ externalDocs, stackTrail: st, context }));
|
|
36
|
+
const parsedServers = stackTrail.trace('servers', st => (0, toServerV3_js_1.toOptionalServersV3)({ servers, stackTrail: st, context }));
|
|
37
|
+
return context.withStackTrail(stackTrail, () => new Operation_js_1.OasOperation({
|
|
38
|
+
pathItem,
|
|
39
|
+
path,
|
|
40
|
+
method,
|
|
41
|
+
operationId,
|
|
42
|
+
summary,
|
|
43
|
+
tags,
|
|
44
|
+
description,
|
|
45
|
+
parameters: parsedParameters,
|
|
46
|
+
requestBody: parsedRequestBody,
|
|
47
|
+
responses: parsedResponses,
|
|
48
|
+
deprecated,
|
|
49
|
+
security: parsedSecurity,
|
|
50
|
+
externalDocs: parsedExternalDocs,
|
|
51
|
+
servers: parsedServers,
|
|
52
|
+
extensionFields
|
|
53
|
+
}, context));
|
|
54
|
+
};
|
|
55
|
+
exports.toOperationV3 = toOperationV3;
|
|
56
|
+
const toOperationsV3 = ({ paths, stackTrail, context }) => {
|
|
57
|
+
if (!paths) {
|
|
58
|
+
return [];
|
|
59
|
+
}
|
|
60
|
+
return Object.entries(paths).flatMap(([path, pathItem]) => {
|
|
61
|
+
return stackTrail.trace(path, pathStack => {
|
|
62
|
+
if (!pathItem) {
|
|
63
|
+
return [];
|
|
64
|
+
}
|
|
65
|
+
const fixedFields = (0, dropAdditionalOperationsV3_js_1.dropAdditionalOperationsV3)({ pathItem, stackTrail: pathStack, context });
|
|
66
|
+
const cleaned = Object.entries(fixedFields).reduce(({ rest, methodObject }, [key, operation]) => {
|
|
67
|
+
const method = (0, methods_js_1.toPathItemMethod)(key);
|
|
68
|
+
if (method) {
|
|
69
|
+
const { [method]: _deleted, ...remaining } = rest;
|
|
70
|
+
return {
|
|
71
|
+
rest: remaining,
|
|
72
|
+
methodObject: {
|
|
73
|
+
...methodObject,
|
|
74
|
+
[method]: operation
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
return { rest, methodObject };
|
|
79
|
+
}, {
|
|
80
|
+
rest: fixedFields,
|
|
81
|
+
methodObject: {}
|
|
82
|
+
});
|
|
83
|
+
const pathItemResult = (0, toPathItemV3_js_1.toPathItemResultV3)({
|
|
84
|
+
pathItem: cleaned.rest,
|
|
85
|
+
stackTrail: pathStack,
|
|
86
|
+
context
|
|
87
|
+
});
|
|
88
|
+
if (!pathItemResult.valid) {
|
|
89
|
+
return [];
|
|
90
|
+
}
|
|
91
|
+
const pathItemObject = pathItemResult.pathItem;
|
|
92
|
+
return Object.entries(cleaned.methodObject)
|
|
93
|
+
.map(([method, operation]) => {
|
|
94
|
+
// Use `pathStack` (the trail with `path` already pushed),
|
|
95
|
+
// not the outer `stackTrail` — otherwise downstream traces
|
|
96
|
+
// record paths:<method>:... and lose the actual path
|
|
97
|
+
// segment, which breaks `OasDocument.removeItem` and the
|
|
98
|
+
// dependency-ref invalidation it backs.
|
|
99
|
+
return pathStack.trace(method, st => {
|
|
100
|
+
if (!operation) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
try {
|
|
104
|
+
return (0, exports.toOperationV3)({
|
|
105
|
+
operation,
|
|
106
|
+
operationInfo: {
|
|
107
|
+
method: method,
|
|
108
|
+
path,
|
|
109
|
+
pathItem: pathItemObject
|
|
110
|
+
},
|
|
111
|
+
stackTrail: st,
|
|
112
|
+
context
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
117
|
+
context.logIssue({
|
|
118
|
+
key: method,
|
|
119
|
+
parent: operation,
|
|
120
|
+
level: 'error',
|
|
121
|
+
message: normalized.message,
|
|
122
|
+
cause: normalized,
|
|
123
|
+
stackTrail: st,
|
|
124
|
+
type: 'INVALID_OPERATION'
|
|
125
|
+
});
|
|
126
|
+
return undefined;
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
})
|
|
130
|
+
.filter((item) => Boolean(item));
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
exports.toOperationsV3 = toOperationsV3;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
2
|
+
import { type OasParameterLocation } from '../../../oas/parameter/parameter-types.js';
|
|
3
|
+
import type { OpenAPIV3 } from 'openapi-types';
|
|
4
|
+
import { OasParameter } from '../../../oas/parameter/Parameter.js';
|
|
5
|
+
import type { OasRef } from '../../../oas/ref/Ref.js';
|
|
6
|
+
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
7
|
+
export type ToParameterListV3Args = {
|
|
8
|
+
parameters: (OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject)[] | undefined;
|
|
9
|
+
stackTrail: StackTrail;
|
|
10
|
+
context: ParseContextType;
|
|
11
|
+
};
|
|
12
|
+
export declare const toParameterListV3: ({ parameters, stackTrail, context }: ToParameterListV3Args) => (OasParameter | OasRef<"parameter">)[] | undefined;
|
|
13
|
+
export type ToParametersV3Args = {
|
|
14
|
+
parameters: Record<string, OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject>;
|
|
15
|
+
stackTrail: StackTrail;
|
|
16
|
+
context: ParseContextType;
|
|
17
|
+
};
|
|
18
|
+
export declare const toParametersV3: ({ parameters, stackTrail, context }: ToParametersV3Args) => Record<string, OasParameter | OasRef<"parameter">>;
|
|
19
|
+
export type ToOptionalParametersV3Args = {
|
|
20
|
+
parameters: Record<string, OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject> | undefined;
|
|
21
|
+
stackTrail: StackTrail;
|
|
22
|
+
context: ParseContextType;
|
|
23
|
+
};
|
|
24
|
+
export declare const toOptionalParametersV3: ({ parameters, stackTrail, context }: ToOptionalParametersV3Args) => Record<string, OasParameter | OasRef<"parameter">> | undefined;
|
|
25
|
+
export type ToParameterV3Args = {
|
|
26
|
+
parameter: OpenAPIV3.ParameterObject | OpenAPIV3.ReferenceObject;
|
|
27
|
+
stackTrail: StackTrail;
|
|
28
|
+
context: ParseContextType;
|
|
29
|
+
};
|
|
30
|
+
export type ToStyleArgs = {
|
|
31
|
+
style: string | undefined;
|
|
32
|
+
location: OasParameterLocation;
|
|
33
|
+
stackTrail: StackTrail;
|
|
34
|
+
};
|
|
35
|
+
export type ToExplodeArgs = {
|
|
36
|
+
explode: boolean | undefined;
|
|
37
|
+
style: string | undefined;
|
|
38
|
+
stackTrail: StackTrail;
|
|
39
|
+
};
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.toOptionalParametersV3 = exports.toParametersV3 = exports.toParameterListV3 = void 0;
|
|
37
|
+
const tryParseAt_js_1 = require("../../../context/tryParseAt.js");
|
|
38
|
+
const refFns_js_1 = require("../../../helpers/refFns.js");
|
|
39
|
+
const parameter_types_js_1 = require("../../../oas/parameter/parameter-types.js");
|
|
40
|
+
const toExamplesV3_js_1 = require("../example/toExamplesV3.js");
|
|
41
|
+
const toRefV31_js_1 = require("../ref/toRefV31.js");
|
|
42
|
+
const toSchemasV3_js_1 = require("../schema/toSchemasV3.js");
|
|
43
|
+
const toMediaTypeItemV3_js_1 = require("../mediaType/toMediaTypeItemV3.js");
|
|
44
|
+
const Parameter_js_1 = require("../../../oas/parameter/Parameter.js");
|
|
45
|
+
const toSpecificationExtensionsV3_js_1 = require("../specificationExtensions/toSpecificationExtensionsV3.js");
|
|
46
|
+
const v = __importStar(require("valibot"));
|
|
47
|
+
const toParameterListV3 = ({ parameters, stackTrail, context }) => {
|
|
48
|
+
if (!parameters) {
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
return parameters.flatMap((parameter, index) => {
|
|
52
|
+
const querystringIssue = toQuerystringIssue(parameter);
|
|
53
|
+
if (querystringIssue) {
|
|
54
|
+
context.logIssue({
|
|
55
|
+
key: `${index}`,
|
|
56
|
+
parent: parameter,
|
|
57
|
+
level: 'error',
|
|
58
|
+
message: querystringIssue,
|
|
59
|
+
stackTrail,
|
|
60
|
+
type: 'INVALID_PARAMETER'
|
|
61
|
+
});
|
|
62
|
+
return [];
|
|
63
|
+
}
|
|
64
|
+
return [
|
|
65
|
+
stackTrail.trace(`${index}`, st => toParameterV3({ parameter, stackTrail: st, context }))
|
|
66
|
+
];
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
exports.toParameterListV3 = toParameterListV3;
|
|
70
|
+
/**
|
|
71
|
+
* A `querystring` parameter describes the whole query string, so it must
|
|
72
|
+
* carry `content` with exactly one media type, and no `schema`. Returns
|
|
73
|
+
* the problem, or `undefined` when the parameter is valid or is not a
|
|
74
|
+
* `querystring` parameter.
|
|
75
|
+
*/
|
|
76
|
+
const toQuerystringIssue = (parameter) => {
|
|
77
|
+
if ((0, refFns_js_1.isRef)(parameter) || parameter.in !== 'querystring') {
|
|
78
|
+
return undefined;
|
|
79
|
+
}
|
|
80
|
+
if (parameter.schema || Object.keys(parameter.content ?? {}).length !== 1) {
|
|
81
|
+
return `Parameter '${parameter.name}' in querystring must define content with exactly one media type, and no schema`;
|
|
82
|
+
}
|
|
83
|
+
return undefined;
|
|
84
|
+
};
|
|
85
|
+
const toParametersV3 = ({ parameters, stackTrail, context }) => {
|
|
86
|
+
const output = {};
|
|
87
|
+
const entries = Object.entries(parameters);
|
|
88
|
+
for (const [key, parameter] of entries) {
|
|
89
|
+
const parsed = (0, tryParseAt_js_1.tryParseAt)({
|
|
90
|
+
stackTrail,
|
|
91
|
+
key,
|
|
92
|
+
context,
|
|
93
|
+
type: 'INVALID_PARAMETER',
|
|
94
|
+
parent: parameter,
|
|
95
|
+
fn: st => toParameterV3({ parameter, stackTrail: st, context })
|
|
96
|
+
});
|
|
97
|
+
if (parsed !== undefined) {
|
|
98
|
+
output[key] = parsed;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return output;
|
|
102
|
+
};
|
|
103
|
+
exports.toParametersV3 = toParametersV3;
|
|
104
|
+
const toOptionalParametersV3 = ({ parameters, stackTrail, context }) => {
|
|
105
|
+
if (!parameters) {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
return (0, exports.toParametersV3)({ parameters, stackTrail, context });
|
|
109
|
+
};
|
|
110
|
+
exports.toOptionalParametersV3 = toOptionalParametersV3;
|
|
111
|
+
const toParameterV3 = ({ parameter, stackTrail, context }) => {
|
|
112
|
+
if ((0, refFns_js_1.isRef)(parameter)) {
|
|
113
|
+
return (0, toRefV31_js_1.toRefV31)({ ref: parameter, refType: 'parameter', stackTrail, context });
|
|
114
|
+
}
|
|
115
|
+
const querystringIssue = toQuerystringIssue(parameter);
|
|
116
|
+
if (querystringIssue) {
|
|
117
|
+
throw new Error(querystringIssue);
|
|
118
|
+
}
|
|
119
|
+
const { name, in: location, description, required, deprecated, allowEmptyValue, allowReserved, schema, example, examples, content, style, explode, ...skipped } = parameter;
|
|
120
|
+
const extensionFields = (0, toSpecificationExtensionsV3_js_1.toSpecificationExtensionsV3)({
|
|
121
|
+
skipped,
|
|
122
|
+
parent: parameter,
|
|
123
|
+
context,
|
|
124
|
+
stackTrail,
|
|
125
|
+
parentType: 'parameter'
|
|
126
|
+
});
|
|
127
|
+
const parsedLocation = v.parse(parameter_types_js_1.oasParameterLocation, location);
|
|
128
|
+
if (parsedLocation === 'path' && !required) {
|
|
129
|
+
console.warn(`Path parameters must be required`);
|
|
130
|
+
}
|
|
131
|
+
// Set missing 'required' to true for path parameters and false for others
|
|
132
|
+
const defaultRequired = typeof required === 'undefined' ? (parsedLocation === 'path' ? true : false) : required;
|
|
133
|
+
const fields = {
|
|
134
|
+
name,
|
|
135
|
+
location: parsedLocation,
|
|
136
|
+
description,
|
|
137
|
+
required: defaultRequired,
|
|
138
|
+
deprecated,
|
|
139
|
+
style: stackTrail.trace('style', st => toStyle({ style, location: parsedLocation, stackTrail: st })),
|
|
140
|
+
explode: stackTrail.trace('explode', st => toExplode({ explode, style, stackTrail: st })),
|
|
141
|
+
allowEmptyValue,
|
|
142
|
+
allowReserved,
|
|
143
|
+
schema: stackTrail.trace('schema', st => (0, toSchemasV3_js_1.toOptionalSchemaV3)({ schema, stackTrail: st, context })),
|
|
144
|
+
examples: stackTrail.trace('examples', st => (0, toExamplesV3_js_1.toExamplesV3)({
|
|
145
|
+
examples,
|
|
146
|
+
example,
|
|
147
|
+
exampleKey: `${name}-${parsedLocation}`,
|
|
148
|
+
stackTrail: st,
|
|
149
|
+
context
|
|
150
|
+
})),
|
|
151
|
+
content: stackTrail.trace('content', st => (0, toMediaTypeItemV3_js_1.toOptionalMediaTypeItemsV3)({ content, stackTrail: st, context })),
|
|
152
|
+
extensionFields
|
|
153
|
+
};
|
|
154
|
+
return context.withStackTrail(stackTrail, () => new Parameter_js_1.OasParameter(fields, context));
|
|
155
|
+
};
|
|
156
|
+
const toStyle = ({ style, location, stackTrail }) => {
|
|
157
|
+
const parsed = v.parse(v.optional(parameter_types_js_1.oasParameterStyle), style);
|
|
158
|
+
if (parsed === 'cookie' && location !== 'cookie') {
|
|
159
|
+
throw new Error(`Style 'cookie' is only allowed for cookie parameters, not ${location}`);
|
|
160
|
+
}
|
|
161
|
+
if (parsed !== undefined) {
|
|
162
|
+
return parsed;
|
|
163
|
+
}
|
|
164
|
+
switch (location) {
|
|
165
|
+
case 'path':
|
|
166
|
+
case 'header':
|
|
167
|
+
return 'simple';
|
|
168
|
+
case 'query':
|
|
169
|
+
case 'cookie':
|
|
170
|
+
return 'form';
|
|
171
|
+
case 'querystring':
|
|
172
|
+
// A querystring parameter is serialized by its `content` media type.
|
|
173
|
+
return undefined;
|
|
174
|
+
default: {
|
|
175
|
+
const _exhaustive = location;
|
|
176
|
+
throw new Error(`Unhandled location: ${_exhaustive}`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
const toExplode = ({ explode, style, stackTrail }) => {
|
|
181
|
+
if (explode !== undefined) {
|
|
182
|
+
return explode;
|
|
183
|
+
}
|
|
184
|
+
switch (style) {
|
|
185
|
+
case 'form':
|
|
186
|
+
case 'cookie':
|
|
187
|
+
return true;
|
|
188
|
+
default:
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
2
|
+
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
3
|
+
import type { OasParameter } from '../../../oas/parameter/Parameter.js';
|
|
4
|
+
import type { OasPathItem } from '../../../oas/pathItem/PathItem.js';
|
|
5
|
+
import type { OasRef } from '../../../oas/ref/Ref.js';
|
|
6
|
+
export type WarnQuerystringConflictsV3Args = {
|
|
7
|
+
parameters: (OasParameter | OasRef<'parameter'>)[] | undefined;
|
|
8
|
+
pathItem: OasPathItem | undefined;
|
|
9
|
+
stackTrail: StackTrail;
|
|
10
|
+
context: ParseContextType;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Logs an `INVALID_PARAMETER` warning on the operation's `parameters` when
|
|
14
|
+
* the operation and its path item together declare more than one
|
|
15
|
+
* `querystring` parameter, or a `querystring` parameter alongside an
|
|
16
|
+
* `in: query` parameter. An operation parameter replaces a path item
|
|
17
|
+
* parameter with the same name and location. The parameters are kept.
|
|
18
|
+
*
|
|
19
|
+
* Only inline parameters are checked: a `$ref` parameter cannot be
|
|
20
|
+
* resolved while the document is still being parsed.
|
|
21
|
+
*/
|
|
22
|
+
export declare const warnQuerystringConflictsV3: ({ parameters, pathItem, stackTrail, context }: WarnQuerystringConflictsV3Args) => void;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.warnQuerystringConflictsV3 = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Logs an `INVALID_PARAMETER` warning on the operation's `parameters` when
|
|
6
|
+
* the operation and its path item together declare more than one
|
|
7
|
+
* `querystring` parameter, or a `querystring` parameter alongside an
|
|
8
|
+
* `in: query` parameter. An operation parameter replaces a path item
|
|
9
|
+
* parameter with the same name and location. The parameters are kept.
|
|
10
|
+
*
|
|
11
|
+
* Only inline parameters are checked: a `$ref` parameter cannot be
|
|
12
|
+
* resolved while the document is still being parsed.
|
|
13
|
+
*/
|
|
14
|
+
const warnQuerystringConflictsV3 = ({ parameters, pathItem, stackTrail, context }) => {
|
|
15
|
+
const inlineParameters = [...(pathItem?.parameters ?? []), ...(parameters ?? [])].filter((parameter) => !parameter.isRef());
|
|
16
|
+
const merged = [
|
|
17
|
+
...new Map(inlineParameters.map(parameter => [`${parameter.location}:${parameter.name}`, parameter])).values()
|
|
18
|
+
];
|
|
19
|
+
const querystringCount = merged.filter(({ location }) => location === 'querystring').length;
|
|
20
|
+
if (querystringCount === 0) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const queryNames = merged.filter(({ location }) => location === 'query').map(({ name }) => name);
|
|
24
|
+
const messages = [
|
|
25
|
+
querystringCount > 1
|
|
26
|
+
? `Operation has ${querystringCount} querystring parameters. At most one is allowed.`
|
|
27
|
+
: undefined,
|
|
28
|
+
queryNames.length
|
|
29
|
+
? `A querystring parameter must not appear with query parameters (${queryNames.join(', ')}).`
|
|
30
|
+
: undefined
|
|
31
|
+
].filter((message) => Boolean(message));
|
|
32
|
+
messages.forEach(message => {
|
|
33
|
+
context.logIssue({
|
|
34
|
+
key: 'parameters',
|
|
35
|
+
parent: parameters,
|
|
36
|
+
level: 'warning',
|
|
37
|
+
message,
|
|
38
|
+
stackTrail,
|
|
39
|
+
type: 'INVALID_PARAMETER'
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
exports.warnQuerystringConflictsV3 = warnQuerystringConflictsV3;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { OpenAPIV3 } from 'openapi-types';
|
|
2
|
+
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
3
|
+
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
4
|
+
export type DropAdditionalOperationsV3Args = {
|
|
5
|
+
pathItem: OpenAPIV3.PathItemObject;
|
|
6
|
+
stackTrail: StackTrail;
|
|
7
|
+
context: ParseContextType;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Removes the 3.2 `additionalOperations` map from a path item and logs one
|
|
11
|
+
* `UNSUPPORTED_OPERATION_METHOD` warning per entry, naming the method. The
|
|
12
|
+
* operations are dropped: no generator renders an arbitrary method yet.
|
|
13
|
+
*
|
|
14
|
+
* A value that is not a map (a primitive or an array) stays on the path
|
|
15
|
+
* item, so the path item parser reports it as a skipped field.
|
|
16
|
+
*/
|
|
17
|
+
export declare const dropAdditionalOperationsV3: ({ pathItem, stackTrail, context }: DropAdditionalOperationsV3Args) => OpenAPIV3.PathItemObject;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dropAdditionalOperationsV3 = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Removes the 3.2 `additionalOperations` map from a path item and logs one
|
|
6
|
+
* `UNSUPPORTED_OPERATION_METHOD` warning per entry, naming the method. The
|
|
7
|
+
* operations are dropped: no generator renders an arbitrary method yet.
|
|
8
|
+
*
|
|
9
|
+
* A value that is not a map (a primitive or an array) stays on the path
|
|
10
|
+
* item, so the path item parser reports it as a skipped field.
|
|
11
|
+
*/
|
|
12
|
+
const dropAdditionalOperationsV3 = ({ pathItem, stackTrail, context }) => {
|
|
13
|
+
// `Object.hasOwn` is false for a primitive path item value, which the
|
|
14
|
+
// path item parser then reports as a skipped field.
|
|
15
|
+
if (!Object.hasOwn(pathItem, 'additionalOperations') || !('additionalOperations' in pathItem)) {
|
|
16
|
+
return pathItem;
|
|
17
|
+
}
|
|
18
|
+
const { additionalOperations, ...rest } = pathItem;
|
|
19
|
+
if (typeof additionalOperations !== 'object' ||
|
|
20
|
+
additionalOperations === null ||
|
|
21
|
+
Array.isArray(additionalOperations)) {
|
|
22
|
+
return pathItem;
|
|
23
|
+
}
|
|
24
|
+
stackTrail.trace('additionalOperations', st => {
|
|
25
|
+
Object.entries(additionalOperations).forEach(([method, operation]) => {
|
|
26
|
+
context.logIssue({
|
|
27
|
+
key: method,
|
|
28
|
+
parent: operation,
|
|
29
|
+
level: 'warning',
|
|
30
|
+
message: `Operation method '${method}' in additionalOperations is not supported. The operation is dropped.`,
|
|
31
|
+
stackTrail: st,
|
|
32
|
+
type: 'UNSUPPORTED_OPERATION_METHOD'
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
return rest;
|
|
37
|
+
};
|
|
38
|
+
exports.dropAdditionalOperationsV3 = dropAdditionalOperationsV3;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { OpenAPIV3 } from 'openapi-types';
|
|
2
|
+
import type { ParseContextType } from '../../../context/parseTypes.js';
|
|
3
|
+
import { OasPathItem } from '../../../oas/pathItem/PathItem.js';
|
|
4
|
+
import type { StackTrail } from '../../../context/StackTrail.js';
|
|
5
|
+
export type ToPathItemV3Args = {
|
|
6
|
+
pathItem: OpenAPIV3.PathItemObject;
|
|
7
|
+
stackTrail: StackTrail;
|
|
8
|
+
context: ParseContextType;
|
|
9
|
+
};
|
|
10
|
+
export declare const toPathItemV3: ({ pathItem, stackTrail, context }: ToPathItemV3Args) => OasPathItem;
|
|
11
|
+
export type PathItemResult = {
|
|
12
|
+
valid: true;
|
|
13
|
+
pathItem: OasPathItem | undefined;
|
|
14
|
+
} | {
|
|
15
|
+
valid: false;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Parses a path item's shared fields without letting a throw escape. A
|
|
19
|
+
* path-level parameter that fails validation (for example `in: body`) logs
|
|
20
|
+
* one `INVALID_OPERATION` at the path and returns `{ valid: false }`, so
|
|
21
|
+
* the caller skips that path and keeps the rest.
|
|
22
|
+
*/
|
|
23
|
+
export declare const toPathItemResultV3: ({ pathItem, stackTrail, context }: ToPathItemV3Args) => PathItemResult;
|