@speclynx/apidom-ns-openapi-3-0 4.0.1 → 4.0.3
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/CHANGELOG.md +10 -0
- package/package.json +8 -9
- package/src/elements/Callback.cjs +15 -0
- package/src/elements/Callback.mjs +12 -0
- package/src/elements/Callback.ts +13 -0
- package/src/elements/Components.cjs +69 -0
- package/src/elements/Components.mjs +66 -0
- package/src/elements/Components.ts +85 -0
- package/src/elements/Contact.cjs +33 -0
- package/src/elements/Contact.mjs +30 -0
- package/src/elements/Contact.ts +42 -0
- package/src/elements/Discriminator.cjs +27 -0
- package/src/elements/Discriminator.mjs +24 -0
- package/src/elements/Discriminator.ts +34 -0
- package/src/elements/Encoding.cjs +45 -0
- package/src/elements/Encoding.mjs +42 -0
- package/src/elements/Encoding.ts +59 -0
- package/src/elements/Example.cjs +39 -0
- package/src/elements/Example.mjs +36 -0
- package/src/elements/Example.ts +51 -0
- package/src/elements/ExternalDocumentation.cjs +27 -0
- package/src/elements/ExternalDocumentation.mjs +24 -0
- package/src/elements/ExternalDocumentation.ts +34 -0
- package/src/elements/Header.cjs +90 -0
- package/src/elements/Header.mjs +86 -0
- package/src/elements/Header.ts +119 -0
- package/src/elements/Info.cjs +52 -0
- package/src/elements/Info.mjs +48 -0
- package/src/elements/Info.ts +70 -0
- package/src/elements/License.cjs +27 -0
- package/src/elements/License.mjs +24 -0
- package/src/elements/License.ts +34 -0
- package/src/elements/Link.cjs +63 -0
- package/src/elements/Link.mjs +59 -0
- package/src/elements/Link.ts +85 -0
- package/src/elements/MediaType.cjs +39 -0
- package/src/elements/MediaType.mjs +35 -0
- package/src/elements/MediaType.ts +48 -0
- package/src/elements/OAuthFlow.cjs +39 -0
- package/src/elements/OAuthFlow.mjs +36 -0
- package/src/elements/OAuthFlow.ts +50 -0
- package/src/elements/OAuthFlows.cjs +39 -0
- package/src/elements/OAuthFlows.mjs +35 -0
- package/src/elements/OAuthFlows.ts +47 -0
- package/src/elements/OpenApi3-0.cjs +65 -0
- package/src/elements/OpenApi3-0.mjs +61 -0
- package/src/elements/OpenApi3-0.ts +90 -0
- package/src/elements/Openapi.cjs +17 -0
- package/src/elements/Openapi.mjs +14 -0
- package/src/elements/Openapi.ts +15 -0
- package/src/elements/Operation.cjs +90 -0
- package/src/elements/Operation.mjs +86 -0
- package/src/elements/Operation.ts +124 -0
- package/src/elements/Parameter.cjs +102 -0
- package/src/elements/Parameter.mjs +98 -0
- package/src/elements/Parameter.ts +135 -0
- package/src/elements/PathItem.cjs +93 -0
- package/src/elements/PathItem.mjs +89 -0
- package/src/elements/PathItem.ts +125 -0
- package/src/elements/Paths.cjs +15 -0
- package/src/elements/Paths.mjs +12 -0
- package/src/elements/Paths.ts +13 -0
- package/src/elements/Reference.cjs +22 -0
- package/src/elements/Reference.mjs +19 -0
- package/src/elements/Reference.ts +27 -0
- package/src/elements/RequestBody.cjs +36 -0
- package/src/elements/RequestBody.mjs +33 -0
- package/src/elements/RequestBody.ts +46 -0
- package/src/elements/Response.cjs +39 -0
- package/src/elements/Response.mjs +36 -0
- package/src/elements/Response.ts +50 -0
- package/src/elements/Responses.cjs +21 -0
- package/src/elements/Responses.mjs +17 -0
- package/src/elements/Responses.ts +24 -0
- package/src/elements/Schema.cjs +170 -0
- package/src/elements/Schema.mjs +166 -0
- package/src/elements/Schema.ts +230 -0
- package/src/elements/SecurityRequirement.cjs +15 -0
- package/src/elements/SecurityRequirement.mjs +12 -0
- package/src/elements/SecurityRequirement.ts +13 -0
- package/src/elements/SecurityScheme.cjs +63 -0
- package/src/elements/SecurityScheme.mjs +59 -0
- package/src/elements/SecurityScheme.ts +84 -0
- package/src/elements/Server.cjs +33 -0
- package/src/elements/Server.mjs +30 -0
- package/src/elements/Server.ts +42 -0
- package/src/elements/ServerVariable.cjs +33 -0
- package/src/elements/ServerVariable.mjs +30 -0
- package/src/elements/ServerVariable.ts +43 -0
- package/src/elements/Tag.cjs +33 -0
- package/src/elements/Tag.mjs +29 -0
- package/src/elements/Tag.ts +44 -0
- package/src/elements/Xml.cjs +45 -0
- package/src/elements/Xml.mjs +42 -0
- package/src/elements/Xml.ts +59 -0
- package/src/elements/nces/ComponentsCallbacks.cjs +16 -0
- package/src/elements/nces/ComponentsCallbacks.mjs +13 -0
- package/src/elements/nces/ComponentsCallbacks.ts +15 -0
- package/src/elements/nces/ComponentsExamples.cjs +17 -0
- package/src/elements/nces/ComponentsExamples.mjs +14 -0
- package/src/elements/nces/ComponentsExamples.ts +16 -0
- package/src/elements/nces/ComponentsHeaders.cjs +16 -0
- package/src/elements/nces/ComponentsHeaders.mjs +13 -0
- package/src/elements/nces/ComponentsHeaders.ts +15 -0
- package/src/elements/nces/ComponentsLinks.cjs +16 -0
- package/src/elements/nces/ComponentsLinks.mjs +13 -0
- package/src/elements/nces/ComponentsLinks.ts +15 -0
- package/src/elements/nces/ComponentsParameters.cjs +17 -0
- package/src/elements/nces/ComponentsParameters.mjs +14 -0
- package/src/elements/nces/ComponentsParameters.ts +16 -0
- package/src/elements/nces/ComponentsRequestBodies.cjs +16 -0
- package/src/elements/nces/ComponentsRequestBodies.mjs +13 -0
- package/src/elements/nces/ComponentsRequestBodies.ts +15 -0
- package/src/elements/nces/ComponentsResponses.cjs +16 -0
- package/src/elements/nces/ComponentsResponses.mjs +13 -0
- package/src/elements/nces/ComponentsResponses.ts +15 -0
- package/src/elements/nces/ComponentsSchemas.cjs +16 -0
- package/src/elements/nces/ComponentsSchemas.mjs +13 -0
- package/src/elements/nces/ComponentsSchemas.ts +15 -0
- package/src/elements/nces/ComponentsSecuritySchemes.cjs +16 -0
- package/src/elements/nces/ComponentsSecuritySchemes.mjs +13 -0
- package/src/elements/nces/ComponentsSecuritySchemes.ts +15 -0
- package/src/elements/nces/DiscriminatorMapping.cjs +16 -0
- package/src/elements/nces/DiscriminatorMapping.mjs +13 -0
- package/src/elements/nces/DiscriminatorMapping.ts +15 -0
- package/src/elements/nces/EncodingHeaders.cjs +16 -0
- package/src/elements/nces/EncodingHeaders.mjs +13 -0
- package/src/elements/nces/EncodingHeaders.ts +15 -0
- package/src/elements/nces/HeaderContent.cjs +17 -0
- package/src/elements/nces/HeaderContent.mjs +14 -0
- package/src/elements/nces/HeaderContent.ts +16 -0
- package/src/elements/nces/HeaderExamples.cjs +17 -0
- package/src/elements/nces/HeaderExamples.mjs +14 -0
- package/src/elements/nces/HeaderExamples.ts +16 -0
- package/src/elements/nces/LinkParameters.cjs +16 -0
- package/src/elements/nces/LinkParameters.mjs +13 -0
- package/src/elements/nces/LinkParameters.ts +15 -0
- package/src/elements/nces/MediaTypeEncoding.cjs +16 -0
- package/src/elements/nces/MediaTypeEncoding.mjs +13 -0
- package/src/elements/nces/MediaTypeEncoding.ts +15 -0
- package/src/elements/nces/MediaTypeExamples.cjs +17 -0
- package/src/elements/nces/MediaTypeExamples.mjs +14 -0
- package/src/elements/nces/MediaTypeExamples.ts +16 -0
- package/src/elements/nces/OAuthFlowScopes.cjs +16 -0
- package/src/elements/nces/OAuthFlowScopes.mjs +13 -0
- package/src/elements/nces/OAuthFlowScopes.ts +15 -0
- package/src/elements/nces/OperationCallbacks.cjs +16 -0
- package/src/elements/nces/OperationCallbacks.mjs +13 -0
- package/src/elements/nces/OperationCallbacks.ts +15 -0
- package/src/elements/nces/OperationParameters.cjs +17 -0
- package/src/elements/nces/OperationParameters.mjs +14 -0
- package/src/elements/nces/OperationParameters.ts +16 -0
- package/src/elements/nces/OperationSecurity.cjs +17 -0
- package/src/elements/nces/OperationSecurity.mjs +14 -0
- package/src/elements/nces/OperationSecurity.ts +16 -0
- package/src/elements/nces/OperationServers.cjs +17 -0
- package/src/elements/nces/OperationServers.mjs +14 -0
- package/src/elements/nces/OperationServers.ts +16 -0
- package/src/elements/nces/OperationTags.cjs +16 -0
- package/src/elements/nces/OperationTags.mjs +13 -0
- package/src/elements/nces/OperationTags.ts +15 -0
- package/src/elements/nces/ParameterContent.cjs +17 -0
- package/src/elements/nces/ParameterContent.mjs +14 -0
- package/src/elements/nces/ParameterContent.ts +16 -0
- package/src/elements/nces/ParameterExamples.cjs +17 -0
- package/src/elements/nces/ParameterExamples.mjs +14 -0
- package/src/elements/nces/ParameterExamples.ts +16 -0
- package/src/elements/nces/PathItemParameters.cjs +17 -0
- package/src/elements/nces/PathItemParameters.mjs +14 -0
- package/src/elements/nces/PathItemParameters.ts +16 -0
- package/src/elements/nces/PathItemServers.cjs +17 -0
- package/src/elements/nces/PathItemServers.mjs +14 -0
- package/src/elements/nces/PathItemServers.ts +16 -0
- package/src/elements/nces/RequestBodyContent.cjs +17 -0
- package/src/elements/nces/RequestBodyContent.mjs +14 -0
- package/src/elements/nces/RequestBodyContent.ts +16 -0
- package/src/elements/nces/ResponseContent.cjs +17 -0
- package/src/elements/nces/ResponseContent.mjs +14 -0
- package/src/elements/nces/ResponseContent.ts +16 -0
- package/src/elements/nces/ResponseHeaders.cjs +16 -0
- package/src/elements/nces/ResponseHeaders.mjs +13 -0
- package/src/elements/nces/ResponseHeaders.ts +15 -0
- package/src/elements/nces/ResponseLinks.cjs +16 -0
- package/src/elements/nces/ResponseLinks.mjs +13 -0
- package/src/elements/nces/ResponseLinks.ts +15 -0
- package/src/elements/nces/Security.cjs +16 -0
- package/src/elements/nces/Security.mjs +13 -0
- package/src/elements/nces/Security.ts +15 -0
- package/src/elements/nces/ServerVariables.cjs +16 -0
- package/src/elements/nces/ServerVariables.mjs +13 -0
- package/src/elements/nces/ServerVariables.ts +15 -0
- package/src/elements/nces/Servers.cjs +16 -0
- package/src/elements/nces/Servers.mjs +13 -0
- package/src/elements/nces/Servers.ts +15 -0
- package/src/elements/nces/Tags.cjs +16 -0
- package/src/elements/nces/Tags.mjs +13 -0
- package/src/elements/nces/Tags.ts +15 -0
- package/src/index.cjs +205 -0
- package/src/index.mjs +54 -0
- package/src/index.ts +550 -0
- package/src/media-types.cjs +34 -0
- package/src/media-types.mjs +30 -0
- package/src/media-types.ts +52 -0
- package/src/namespace.cjs +79 -0
- package/src/namespace.mjs +74 -0
- package/src/namespace.ts +78 -0
- package/src/predicates.cjs +188 -0
- package/src/predicates.mjs +155 -0
- package/src/predicates.ts +185 -0
- package/src/refractor/index.cjs +358 -0
- package/src/refractor/index.mjs +321 -0
- package/src/refractor/index.ts +370 -0
- package/src/refractor/inspect.cjs +205 -0
- package/src/refractor/inspect.mjs +170 -0
- package/src/refractor/inspect.ts +239 -0
- package/src/refractor/plugins/replace-empty-element.cjs +633 -0
- package/src/refractor/plugins/replace-empty-element.mjs +625 -0
- package/src/refractor/plugins/replace-empty-element.ts +656 -0
- package/src/refractor/predicates.cjs +36 -0
- package/src/refractor/predicates.mjs +31 -0
- package/src/refractor/predicates.ts +39 -0
- package/src/refractor/specification.cjs +700 -0
- package/src/refractor/specification.mjs +695 -0
- package/src/refractor/specification.ts +557 -0
- package/src/refractor/toolbox.cjs +28 -0
- package/src/refractor/toolbox.mjs +21 -0
- package/src/refractor/toolbox.ts +24 -0
- package/src/refractor/visitors/FallbackVisitor.cjs +24 -0
- package/src/refractor/visitors/FallbackVisitor.mjs +18 -0
- package/src/refractor/visitors/FallbackVisitor.ts +24 -0
- package/src/refractor/visitors/SpecificationExtensionVisitor.cjs +18 -0
- package/src/refractor/visitors/SpecificationExtensionVisitor.mjs +13 -0
- package/src/refractor/visitors/SpecificationExtensionVisitor.ts +22 -0
- package/src/refractor/visitors/SpecificationVisitor.cjs +88 -0
- package/src/refractor/visitors/SpecificationVisitor.mjs +82 -0
- package/src/refractor/visitors/SpecificationVisitor.ts +112 -0
- package/src/refractor/visitors/Visitor.cjs +36 -0
- package/src/refractor/visitors/Visitor.mjs +33 -0
- package/src/refractor/visitors/Visitor.ts +47 -0
- package/src/refractor/visitors/generics/AlternatingVisitor.cjs +42 -0
- package/src/refractor/visitors/generics/AlternatingVisitor.mjs +35 -0
- package/src/refractor/visitors/generics/AlternatingVisitor.ts +45 -0
- package/src/refractor/visitors/generics/FixedFieldsVisitor.cjs +75 -0
- package/src/refractor/visitors/generics/FixedFieldsVisitor.mjs +68 -0
- package/src/refractor/visitors/generics/FixedFieldsVisitor.ts +110 -0
- package/src/refractor/visitors/generics/MapVisitor.cjs +21 -0
- package/src/refractor/visitors/generics/MapVisitor.mjs +15 -0
- package/src/refractor/visitors/generics/MapVisitor.ts +25 -0
- package/src/refractor/visitors/generics/MixedFieldsVisitor.cjs +67 -0
- package/src/refractor/visitors/generics/MixedFieldsVisitor.mjs +61 -0
- package/src/refractor/visitors/generics/MixedFieldsVisitor.ts +77 -0
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.cjs +72 -0
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.mjs +66 -0
- package/src/refractor/visitors/generics/PatternedFieldsVisitor.ts +99 -0
- package/src/refractor/visitors/open-api-3-0/ContentVisitor.cjs +23 -0
- package/src/refractor/visitors/open-api-3-0/ContentVisitor.mjs +18 -0
- package/src/refractor/visitors/open-api-3-0/ContentVisitor.ts +28 -0
- package/src/refractor/visitors/open-api-3-0/ExamplesVisitor.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/ExamplesVisitor.mjs +28 -0
- package/src/refractor/visitors/open-api-3-0/ExamplesVisitor.ts +48 -0
- package/src/refractor/visitors/open-api-3-0/OpenapiVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/OpenapiVisitor.mjs +19 -0
- package/src/refractor/visitors/open-api-3-0/OpenapiVisitor.ts +30 -0
- package/src/refractor/visitors/open-api-3-0/ParametersVisitor.cjs +36 -0
- package/src/refractor/visitors/open-api-3-0/ParametersVisitor.mjs +31 -0
- package/src/refractor/visitors/open-api-3-0/ParametersVisitor.ts +47 -0
- package/src/refractor/visitors/open-api-3-0/SecurityVisitor.cjs +35 -0
- package/src/refractor/visitors/open-api-3-0/SecurityVisitor.mjs +29 -0
- package/src/refractor/visitors/open-api-3-0/SecurityVisitor.ts +44 -0
- package/src/refractor/visitors/open-api-3-0/ServersVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/ServersVisitor.mjs +26 -0
- package/src/refractor/visitors/open-api-3-0/ServersVisitor.ts +40 -0
- package/src/refractor/visitors/open-api-3-0/TagsVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/TagsVisitor.mjs +26 -0
- package/src/refractor/visitors/open-api-3-0/TagsVisitor.ts +40 -0
- package/src/refractor/visitors/open-api-3-0/bases.cjs +72 -0
- package/src/refractor/visitors/open-api-3-0/bases.mjs +67 -0
- package/src/refractor/visitors/open-api-3-0/bases.ts +82 -0
- package/src/refractor/visitors/open-api-3-0/callback/index.cjs +38 -0
- package/src/refractor/visitors/open-api-3-0/callback/index.mjs +32 -0
- package/src/refractor/visitors/open-api-3-0/callback/index.ts +49 -0
- package/src/refractor/visitors/open-api-3-0/components/CallbacksVisitor.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/components/CallbacksVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/components/CallbacksVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/components/ExamplesVisitor.cjs +34 -0
- package/src/refractor/visitors/open-api-3-0/components/ExamplesVisitor.mjs +28 -0
- package/src/refractor/visitors/open-api-3-0/components/ExamplesVisitor.ts +46 -0
- package/src/refractor/visitors/open-api-3-0/components/HeadersVisitor.cjs +41 -0
- package/src/refractor/visitors/open-api-3-0/components/HeadersVisitor.mjs +35 -0
- package/src/refractor/visitors/open-api-3-0/components/HeadersVisitor.ts +53 -0
- package/src/refractor/visitors/open-api-3-0/components/LinksVisitor.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/components/LinksVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/components/LinksVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/components/ParametersVisitor.cjs +34 -0
- package/src/refractor/visitors/open-api-3-0/components/ParametersVisitor.mjs +28 -0
- package/src/refractor/visitors/open-api-3-0/components/ParametersVisitor.ts +46 -0
- package/src/refractor/visitors/open-api-3-0/components/RequestBodiesVisitor.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/components/RequestBodiesVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/components/RequestBodiesVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/components/ResponsesVisitor.cjs +41 -0
- package/src/refractor/visitors/open-api-3-0/components/ResponsesVisitor.mjs +35 -0
- package/src/refractor/visitors/open-api-3-0/components/ResponsesVisitor.ts +53 -0
- package/src/refractor/visitors/open-api-3-0/components/SchemasVisitor.cjs +34 -0
- package/src/refractor/visitors/open-api-3-0/components/SchemasVisitor.mjs +28 -0
- package/src/refractor/visitors/open-api-3-0/components/SchemasVisitor.ts +46 -0
- package/src/refractor/visitors/open-api-3-0/components/SecuritySchemesVisitor.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/components/SecuritySchemesVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/components/SecuritySchemesVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/components/index.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/components/index.mjs +19 -0
- package/src/refractor/visitors/open-api-3-0/components/index.ts +31 -0
- package/src/refractor/visitors/open-api-3-0/contact/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/contact/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/contact/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/MappingVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/MappingVisitor.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/MappingVisitor.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/distriminator/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/encoding/HeadersVisitor.cjs +43 -0
- package/src/refractor/visitors/open-api-3-0/encoding/HeadersVisitor.mjs +37 -0
- package/src/refractor/visitors/open-api-3-0/encoding/HeadersVisitor.ts +57 -0
- package/src/refractor/visitors/open-api-3-0/encoding/index.cjs +40 -0
- package/src/refractor/visitors/open-api-3-0/encoding/index.mjs +34 -0
- package/src/refractor/visitors/open-api-3-0/encoding/index.ts +49 -0
- package/src/refractor/visitors/open-api-3-0/example/ExternalValueVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/example/ExternalValueVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/example/ExternalValueVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/example/index.cjs +29 -0
- package/src/refractor/visitors/open-api-3-0/example/index.mjs +24 -0
- package/src/refractor/visitors/open-api-3-0/example/index.ts +38 -0
- package/src/refractor/visitors/open-api-3-0/external-documentation/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/external-documentation/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/external-documentation/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/header/ContentVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/header/ContentVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/header/ContentVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/header/ExamplesVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/header/ExamplesVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/header/ExamplesVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/header/SchemaVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/header/SchemaVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/header/SchemaVisitor.ts +33 -0
- package/src/refractor/visitors/open-api-3-0/header/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/header/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/header/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/index.cjs +29 -0
- package/src/refractor/visitors/open-api-3-0/index.mjs +23 -0
- package/src/refractor/visitors/open-api-3-0/index.ts +39 -0
- package/src/refractor/visitors/open-api-3-0/info/VersionVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/info/VersionVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/info/VersionVisitor.ts +21 -0
- package/src/refractor/visitors/open-api-3-0/info/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/info/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/info/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/license/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/license/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/license/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationIdVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationIdVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationIdVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationRefVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationRefVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/link/OperationRefVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/link/ParametersVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/link/ParametersVisitor.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/link/ParametersVisitor.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/link/index.cjs +29 -0
- package/src/refractor/visitors/open-api-3-0/link/index.mjs +24 -0
- package/src/refractor/visitors/open-api-3-0/link/index.ts +38 -0
- package/src/refractor/visitors/open-api-3-0/media-type/EncodingVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/media-type/EncodingVisitor.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/media-type/EncodingVisitor.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/media-type/ExamplesVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/media-type/ExamplesVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/media-type/ExamplesVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/media-type/SchemaVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/media-type/SchemaVisitor.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/media-type/SchemaVisitor.ts +33 -0
- package/src/refractor/visitors/open-api-3-0/media-type/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/media-type/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/media-type/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/ScopesVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/ScopesVisitor.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/ScopesVisitor.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flow/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flows/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flows/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/oauth-flows/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/operation/CallbacksVisitor.cjs +34 -0
- package/src/refractor/visitors/open-api-3-0/operation/CallbacksVisitor.mjs +28 -0
- package/src/refractor/visitors/open-api-3-0/operation/CallbacksVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/operation/ParametersVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/operation/ParametersVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/operation/ParametersVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/operation/RequestBodyVisitor.cjs +35 -0
- package/src/refractor/visitors/open-api-3-0/operation/RequestBodyVisitor.mjs +29 -0
- package/src/refractor/visitors/open-api-3-0/operation/RequestBodyVisitor.ts +39 -0
- package/src/refractor/visitors/open-api-3-0/operation/SecurityVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/operation/SecurityVisitor.mjs +26 -0
- package/src/refractor/visitors/open-api-3-0/operation/SecurityVisitor.ts +41 -0
- package/src/refractor/visitors/open-api-3-0/operation/ServersVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/operation/ServersVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/operation/ServersVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/operation/TagsVisitor.cjs +27 -0
- package/src/refractor/visitors/open-api-3-0/operation/TagsVisitor.mjs +21 -0
- package/src/refractor/visitors/open-api-3-0/operation/TagsVisitor.ts +32 -0
- package/src/refractor/visitors/open-api-3-0/operation/index.cjs +23 -0
- package/src/refractor/visitors/open-api-3-0/operation/index.mjs +17 -0
- package/src/refractor/visitors/open-api-3-0/operation/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ContentVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ContentVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ContentVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ExamplesVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ExamplesVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/parameter/ExamplesVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/parameter/SchemaVisitor.cjs +36 -0
- package/src/refractor/visitors/open-api-3-0/parameter/SchemaVisitor.mjs +30 -0
- package/src/refractor/visitors/open-api-3-0/parameter/SchemaVisitor.ts +36 -0
- package/src/refractor/visitors/open-api-3-0/parameter/index.cjs +40 -0
- package/src/refractor/visitors/open-api-3-0/parameter/index.mjs +34 -0
- package/src/refractor/visitors/open-api-3-0/parameter/index.ts +49 -0
- package/src/refractor/visitors/open-api-3-0/path-item/$RefVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/path-item/$RefVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/path-item/$RefVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ParametersVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ParametersVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ParametersVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ServersVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ServersVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/path-item/ServersVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/path-item/index.cjs +42 -0
- package/src/refractor/visitors/open-api-3-0/path-item/index.mjs +36 -0
- package/src/refractor/visitors/open-api-3-0/path-item/index.ts +53 -0
- package/src/refractor/visitors/open-api-3-0/paths/index.cjs +40 -0
- package/src/refractor/visitors/open-api-3-0/paths/index.mjs +34 -0
- package/src/refractor/visitors/open-api-3-0/paths/index.ts +51 -0
- package/src/refractor/visitors/open-api-3-0/reference/$RefVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/reference/$RefVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/reference/$RefVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/reference/index.cjs +33 -0
- package/src/refractor/visitors/open-api-3-0/reference/index.mjs +27 -0
- package/src/refractor/visitors/open-api-3-0/reference/index.ts +41 -0
- package/src/refractor/visitors/open-api-3-0/request-body/ContentVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/request-body/ContentVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/request-body/ContentVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/request-body/index.cjs +39 -0
- package/src/refractor/visitors/open-api-3-0/request-body/index.mjs +33 -0
- package/src/refractor/visitors/open-api-3-0/request-body/index.ts +46 -0
- package/src/refractor/visitors/open-api-3-0/response/ContentVisitor.cjs +17 -0
- package/src/refractor/visitors/open-api-3-0/response/ContentVisitor.mjs +12 -0
- package/src/refractor/visitors/open-api-3-0/response/ContentVisitor.ts +18 -0
- package/src/refractor/visitors/open-api-3-0/response/HeadersVisitor.cjs +42 -0
- package/src/refractor/visitors/open-api-3-0/response/HeadersVisitor.mjs +36 -0
- package/src/refractor/visitors/open-api-3-0/response/HeadersVisitor.ts +57 -0
- package/src/refractor/visitors/open-api-3-0/response/LinksVisitor.cjs +32 -0
- package/src/refractor/visitors/open-api-3-0/response/LinksVisitor.mjs +26 -0
- package/src/refractor/visitors/open-api-3-0/response/LinksVisitor.ts +45 -0
- package/src/refractor/visitors/open-api-3-0/response/index.cjs +47 -0
- package/src/refractor/visitors/open-api-3-0/response/index.mjs +41 -0
- package/src/refractor/visitors/open-api-3-0/response/index.ts +57 -0
- package/src/refractor/visitors/open-api-3-0/responses/DefaultVisitor.cjs +40 -0
- package/src/refractor/visitors/open-api-3-0/responses/DefaultVisitor.mjs +34 -0
- package/src/refractor/visitors/open-api-3-0/responses/DefaultVisitor.ts +39 -0
- package/src/refractor/visitors/open-api-3-0/responses/index.cjs +46 -0
- package/src/refractor/visitors/open-api-3-0/responses/index.mjs +40 -0
- package/src/refractor/visitors/open-api-3-0/responses/index.ts +64 -0
- package/src/refractor/visitors/open-api-3-0/schema/AllOfVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/schema/AllOfVisitor.mjs +21 -0
- package/src/refractor/visitors/open-api-3-0/schema/AllOfVisitor.ts +34 -0
- package/src/refractor/visitors/open-api-3-0/schema/AnyOfVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/schema/AnyOfVisitor.mjs +21 -0
- package/src/refractor/visitors/open-api-3-0/schema/AnyOfVisitor.ts +34 -0
- package/src/refractor/visitors/open-api-3-0/schema/ItemsVisitor.cjs +22 -0
- package/src/refractor/visitors/open-api-3-0/schema/ItemsVisitor.mjs +19 -0
- package/src/refractor/visitors/open-api-3-0/schema/ItemsVisitor.ts +31 -0
- package/src/refractor/visitors/open-api-3-0/schema/OneOfVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/schema/OneOfVisitor.mjs +21 -0
- package/src/refractor/visitors/open-api-3-0/schema/OneOfVisitor.ts +34 -0
- package/src/refractor/visitors/open-api-3-0/schema/PropertiesVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-0/schema/PropertiesVisitor.mjs +21 -0
- package/src/refractor/visitors/open-api-3-0/schema/PropertiesVisitor.ts +34 -0
- package/src/refractor/visitors/open-api-3-0/schema/SchemaOrReferenceVisitor.cjs +23 -0
- package/src/refractor/visitors/open-api-3-0/schema/SchemaOrReferenceVisitor.mjs +19 -0
- package/src/refractor/visitors/open-api-3-0/schema/SchemaOrReferenceVisitor.ts +36 -0
- package/src/refractor/visitors/open-api-3-0/schema/TypeVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/schema/TypeVisitor.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/schema/TypeVisitor.ts +26 -0
- package/src/refractor/visitors/open-api-3-0/schema/index.cjs +24 -0
- package/src/refractor/visitors/open-api-3-0/schema/index.mjs +18 -0
- package/src/refractor/visitors/open-api-3-0/schema/index.ts +30 -0
- package/src/refractor/visitors/open-api-3-0/security-requirement/index.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/security-requirement/index.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/security-requirement/index.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/security-scheme/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/security-scheme/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/security-scheme/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/server/UrlVisitor.cjs +16 -0
- package/src/refractor/visitors/open-api-3-0/server/UrlVisitor.mjs +11 -0
- package/src/refractor/visitors/open-api-3-0/server/UrlVisitor.ts +20 -0
- package/src/refractor/visitors/open-api-3-0/server/VariablesVisitor.cjs +19 -0
- package/src/refractor/visitors/open-api-3-0/server/VariablesVisitor.mjs +14 -0
- package/src/refractor/visitors/open-api-3-0/server/VariablesVisitor.ts +24 -0
- package/src/refractor/visitors/open-api-3-0/server/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/server/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/server/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/server-variable/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/server-variable/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/server-variable/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/tag/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/tag/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/tag/index.ts +27 -0
- package/src/refractor/visitors/open-api-3-0/xml/index.cjs +20 -0
- package/src/refractor/visitors/open-api-3-0/xml/index.mjs +15 -0
- package/src/refractor/visitors/open-api-3-0/xml/index.ts +27 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ObjectElement, Element, StringElement } from '@speclynx/apidom-datamodel';
|
|
2
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
3
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
4
|
+
|
|
5
|
+
import ReferenceElement from '../../../../elements/Reference.ts';
|
|
6
|
+
import ResponseHeadersElement from '../../../../elements/nces/ResponseHeaders.ts';
|
|
7
|
+
import { SpecPath } from '../../generics/MapVisitor.ts';
|
|
8
|
+
import { isReferenceLikeElement } from '../../../predicates.ts';
|
|
9
|
+
import { isHeaderElement, isReferenceElement } from '../../../../predicates.ts';
|
|
10
|
+
import { BaseMapVisitor, BaseMapVisitorOptions } from '../bases.ts';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
export type { BaseMapVisitorOptions as HeadersVisitorOptions };
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
class HeadersVisitor extends BaseMapVisitor {
|
|
21
|
+
declare public readonly element: ResponseHeadersElement;
|
|
22
|
+
|
|
23
|
+
declare protected readonly specPath: SpecPath<
|
|
24
|
+
['document', 'objects', 'Reference'] | ['document', 'objects', 'Header']
|
|
25
|
+
>;
|
|
26
|
+
|
|
27
|
+
constructor(options: BaseMapVisitorOptions) {
|
|
28
|
+
super(options);
|
|
29
|
+
this.element = new ResponseHeadersElement();
|
|
30
|
+
this.specPath = (element: unknown) =>
|
|
31
|
+
isReferenceLikeElement(element)
|
|
32
|
+
? ['document', 'objects', 'Reference']
|
|
33
|
+
: ['document', 'objects', 'Header'];
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
ObjectElement(path: Path<ObjectElement>) {
|
|
37
|
+
BaseMapVisitor.prototype.ObjectElement.call(this, path);
|
|
38
|
+
|
|
39
|
+
// decorate every ReferenceElement with metadata about their referencing type
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
this.element.filter(isReferenceElement).forEach((referenceElement: ReferenceElement) => {
|
|
42
|
+
referenceElement.meta.set('referenced-element', 'header');
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
// decorate every HeaderElement with metadata about their name
|
|
46
|
+
// @ts-ignore
|
|
47
|
+
this.element.forEach((value: Element, key: StringElement): void => {
|
|
48
|
+
if (!isHeaderElement(value)) return;
|
|
49
|
+
|
|
50
|
+
const headerName = toValue(key);
|
|
51
|
+
|
|
52
|
+
value.meta.set('header-name', headerName);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export default HeadersVisitor;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.default = void 0;
|
|
6
|
+
var _ResponseLinks = _interopRequireDefault(require("../../../../elements/nces/ResponseLinks.cjs"));
|
|
7
|
+
var _predicates = require("../../../predicates.cjs");
|
|
8
|
+
var _predicates2 = require("../../../../predicates.cjs");
|
|
9
|
+
var _bases = require("../bases.cjs");
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
class LinksVisitor extends _bases.BaseMapVisitor {
|
|
18
|
+
constructor(options) {
|
|
19
|
+
super(options);
|
|
20
|
+
this.element = new _ResponseLinks.default();
|
|
21
|
+
this.specPath = element => (0, _predicates.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Link'];
|
|
22
|
+
}
|
|
23
|
+
ObjectElement(path) {
|
|
24
|
+
_bases.BaseMapVisitor.prototype.ObjectElement.call(this, path);
|
|
25
|
+
|
|
26
|
+
// @ts-ignore
|
|
27
|
+
this.element.filter(_predicates2.isReferenceElement).forEach(referenceElement => {
|
|
28
|
+
referenceElement.meta.set('referenced-element', 'link');
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
var _default = exports.default = LinksVisitor;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import ResponseLinksElement from "../../../../elements/nces/ResponseLinks.mjs";
|
|
2
|
+
import { isReferenceLikeElement } from "../../../predicates.mjs";
|
|
3
|
+
import { isReferenceElement } from "../../../../predicates.mjs";
|
|
4
|
+
import { BaseMapVisitor } from "../bases.mjs";
|
|
5
|
+
/**
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
class LinksVisitor extends BaseMapVisitor {
|
|
12
|
+
constructor(options) {
|
|
13
|
+
super(options);
|
|
14
|
+
this.element = new ResponseLinksElement();
|
|
15
|
+
this.specPath = element => isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Link'];
|
|
16
|
+
}
|
|
17
|
+
ObjectElement(path) {
|
|
18
|
+
BaseMapVisitor.prototype.ObjectElement.call(this, path);
|
|
19
|
+
|
|
20
|
+
// @ts-ignore
|
|
21
|
+
this.element.filter(isReferenceElement).forEach(referenceElement => {
|
|
22
|
+
referenceElement.meta.set('referenced-element', 'link');
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export default LinksVisitor;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ObjectElement } from '@speclynx/apidom-datamodel';
|
|
2
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
3
|
+
|
|
4
|
+
import ReferenceElement from '../../../../elements/Reference.ts';
|
|
5
|
+
import ResponseLinksElement from '../../../../elements/nces/ResponseLinks.ts';
|
|
6
|
+
import { SpecPath } from '../../generics/MapVisitor.ts';
|
|
7
|
+
import { isReferenceLikeElement } from '../../../predicates.ts';
|
|
8
|
+
import { isReferenceElement } from '../../../../predicates.ts';
|
|
9
|
+
import { BaseMapVisitor, BaseMapVisitorOptions } from '../bases.ts';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export type { BaseMapVisitorOptions as LinksVisitorOptions };
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class LinksVisitor extends BaseMapVisitor {
|
|
20
|
+
declare public readonly element: ResponseLinksElement;
|
|
21
|
+
|
|
22
|
+
declare protected readonly specPath: SpecPath<
|
|
23
|
+
['document', 'objects', 'Reference'] | ['document', 'objects', 'Link']
|
|
24
|
+
>;
|
|
25
|
+
|
|
26
|
+
constructor(options: BaseMapVisitorOptions) {
|
|
27
|
+
super(options);
|
|
28
|
+
this.element = new ResponseLinksElement();
|
|
29
|
+
this.specPath = (element: unknown) =>
|
|
30
|
+
isReferenceLikeElement(element)
|
|
31
|
+
? ['document', 'objects', 'Reference']
|
|
32
|
+
: ['document', 'objects', 'Link'];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
ObjectElement(path: Path<ObjectElement>) {
|
|
36
|
+
BaseMapVisitor.prototype.ObjectElement.call(this, path);
|
|
37
|
+
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
this.element.filter(isReferenceElement).forEach((referenceElement: ReferenceElement) => {
|
|
40
|
+
referenceElement.meta.set('referenced-element', 'link');
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export default LinksVisitor;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.default = void 0;
|
|
6
|
+
var _ramda = require("ramda");
|
|
7
|
+
var _apidomDatamodel = require("@speclynx/apidom-datamodel");
|
|
8
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
9
|
+
var _Response = _interopRequireDefault(require("../../../../elements/Response.cjs"));
|
|
10
|
+
var _predicates = require("../../../../predicates.cjs");
|
|
11
|
+
var _bases = require("../bases.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class ResponseVisitor extends _bases.BaseFixedFieldsVisitor {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _Response.default();
|
|
23
|
+
this.specPath = (0, _ramda.always)(['document', 'objects', 'Response']);
|
|
24
|
+
}
|
|
25
|
+
ObjectElement(path) {
|
|
26
|
+
_bases.BaseFixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
27
|
+
|
|
28
|
+
// decorate every MediaTypeElement with media type metadata
|
|
29
|
+
if ((0, _apidomDatamodel.isObjectElement)(this.element.contentField)) {
|
|
30
|
+
this.element.contentField.filter(_predicates.isMediaTypeElement)
|
|
31
|
+
// @ts-ignore
|
|
32
|
+
.forEach((mediaTypeElement, key) => {
|
|
33
|
+
mediaTypeElement.meta.set('media-type', (0, _apidomCore.toValue)(key));
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// decorate every MediaTypeElement with media type metadata
|
|
38
|
+
if ((0, _apidomDatamodel.isObjectElement)(this.element.headers)) {
|
|
39
|
+
this.element.headers.filter(_predicates.isHeaderElement)
|
|
40
|
+
// @ts-ignore
|
|
41
|
+
.forEach((headerElement, key) => {
|
|
42
|
+
headerElement.meta.set('header-name', (0, _apidomCore.toValue)(key));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
var _default = exports.default = ResponseVisitor;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { always } from 'ramda';
|
|
2
|
+
import { isObjectElement } from '@speclynx/apidom-datamodel';
|
|
3
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
4
|
+
import ResponseElement from "../../../../elements/Response.mjs";
|
|
5
|
+
import { isHeaderElement, isMediaTypeElement } from "../../../../predicates.mjs";
|
|
6
|
+
import { BaseFixedFieldsVisitor } from "../bases.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class ResponseVisitor extends BaseFixedFieldsVisitor {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ResponseElement();
|
|
17
|
+
this.specPath = always(['document', 'objects', 'Response']);
|
|
18
|
+
}
|
|
19
|
+
ObjectElement(path) {
|
|
20
|
+
BaseFixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
21
|
+
|
|
22
|
+
// decorate every MediaTypeElement with media type metadata
|
|
23
|
+
if (isObjectElement(this.element.contentField)) {
|
|
24
|
+
this.element.contentField.filter(isMediaTypeElement)
|
|
25
|
+
// @ts-ignore
|
|
26
|
+
.forEach((mediaTypeElement, key) => {
|
|
27
|
+
mediaTypeElement.meta.set('media-type', toValue(key));
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// decorate every MediaTypeElement with media type metadata
|
|
32
|
+
if (isObjectElement(this.element.headers)) {
|
|
33
|
+
this.element.headers.filter(isHeaderElement)
|
|
34
|
+
// @ts-ignore
|
|
35
|
+
.forEach((headerElement, key) => {
|
|
36
|
+
headerElement.meta.set('header-name', toValue(key));
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export default ResponseVisitor;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { always } from 'ramda';
|
|
2
|
+
import { isObjectElement, ObjectElement, StringElement } from '@speclynx/apidom-datamodel';
|
|
3
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
4
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
5
|
+
|
|
6
|
+
import ResponseElement from '../../../../elements/Response.ts';
|
|
7
|
+
import MediaTypeElement from '../../../../elements/MediaType.ts';
|
|
8
|
+
import HeaderElement from '../../../../elements/Header.ts';
|
|
9
|
+
import { SpecPath } from '../../generics/FixedFieldsVisitor.ts';
|
|
10
|
+
import { isHeaderElement, isMediaTypeElement } from '../../../../predicates.ts';
|
|
11
|
+
import { BaseFixedFieldsVisitor, BaseFixedFieldsVisitorOptions } from '../bases.ts';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
export type { BaseFixedFieldsVisitorOptions as ResponseVisitorOptions };
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
class ResponseVisitor extends BaseFixedFieldsVisitor {
|
|
22
|
+
declare public readonly element: ResponseElement;
|
|
23
|
+
|
|
24
|
+
declare protected readonly specPath: SpecPath<['document', 'objects', 'Response']>;
|
|
25
|
+
|
|
26
|
+
constructor(options: BaseFixedFieldsVisitorOptions) {
|
|
27
|
+
super(options);
|
|
28
|
+
this.element = new ResponseElement();
|
|
29
|
+
this.specPath = always(['document', 'objects', 'Response']);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
ObjectElement(path: Path<ObjectElement>) {
|
|
33
|
+
BaseFixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
34
|
+
|
|
35
|
+
// decorate every MediaTypeElement with media type metadata
|
|
36
|
+
if (isObjectElement(this.element.contentField)) {
|
|
37
|
+
this.element.contentField
|
|
38
|
+
.filter(isMediaTypeElement)
|
|
39
|
+
// @ts-ignore
|
|
40
|
+
.forEach((mediaTypeElement: MediaTypeElement, key: StringElement) => {
|
|
41
|
+
mediaTypeElement.meta.set('media-type', toValue(key));
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// decorate every MediaTypeElement with media type metadata
|
|
46
|
+
if (isObjectElement(this.element.headers)) {
|
|
47
|
+
this.element.headers
|
|
48
|
+
.filter(isHeaderElement)
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
.forEach((headerElement: HeaderElement, key: StringElement) => {
|
|
51
|
+
headerElement.meta.set('header-name', toValue(key));
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export default ResponseVisitor;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.default = void 0;
|
|
6
|
+
var _ramda = require("ramda");
|
|
7
|
+
var _predicates = require("../../../predicates.cjs");
|
|
8
|
+
var _predicates2 = require("../../../../predicates.cjs");
|
|
9
|
+
var _bases = require("../bases.cjs");
|
|
10
|
+
var _AlternatingVisitor = _interopRequireDefault(require("../../generics/AlternatingVisitor.cjs"));
|
|
11
|
+
/**
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
class DefaultVisitor extends _bases.BaseAlternatingVisitor {
|
|
19
|
+
constructor(options) {
|
|
20
|
+
super(options);
|
|
21
|
+
this.alternator = [{
|
|
22
|
+
predicate: _predicates.isReferenceLikeElement,
|
|
23
|
+
specPath: ['document', 'objects', 'Reference']
|
|
24
|
+
}, {
|
|
25
|
+
predicate: _ramda.T,
|
|
26
|
+
specPath: ['document', 'objects', 'Response']
|
|
27
|
+
}];
|
|
28
|
+
}
|
|
29
|
+
ObjectElement(path) {
|
|
30
|
+
_AlternatingVisitor.default.prototype.enter.call(this, path);
|
|
31
|
+
|
|
32
|
+
// decorate ReferenceElement with type of referencing element
|
|
33
|
+
if ((0, _predicates2.isReferenceElement)(this.element)) {
|
|
34
|
+
this.element.meta.set('referenced-element', 'response');
|
|
35
|
+
} else if ((0, _predicates2.isResponseElement)(this.element)) {
|
|
36
|
+
this.element.meta.set('http-status-code', 'default');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
var _default = exports.default = DefaultVisitor;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { T as stubTrue } from 'ramda';
|
|
2
|
+
import { isReferenceLikeElement } from "../../../predicates.mjs";
|
|
3
|
+
import { isReferenceElement, isResponseElement } from "../../../../predicates.mjs";
|
|
4
|
+
import { BaseAlternatingVisitor } from "../bases.mjs";
|
|
5
|
+
import AlternatingVisitor from "../../generics/AlternatingVisitor.mjs";
|
|
6
|
+
/**
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
class DefaultVisitor extends BaseAlternatingVisitor {
|
|
13
|
+
constructor(options) {
|
|
14
|
+
super(options);
|
|
15
|
+
this.alternator = [{
|
|
16
|
+
predicate: isReferenceLikeElement,
|
|
17
|
+
specPath: ['document', 'objects', 'Reference']
|
|
18
|
+
}, {
|
|
19
|
+
predicate: stubTrue,
|
|
20
|
+
specPath: ['document', 'objects', 'Response']
|
|
21
|
+
}];
|
|
22
|
+
}
|
|
23
|
+
ObjectElement(path) {
|
|
24
|
+
AlternatingVisitor.prototype.enter.call(this, path);
|
|
25
|
+
|
|
26
|
+
// decorate ReferenceElement with type of referencing element
|
|
27
|
+
if (isReferenceElement(this.element)) {
|
|
28
|
+
this.element.meta.set('referenced-element', 'response');
|
|
29
|
+
} else if (isResponseElement(this.element)) {
|
|
30
|
+
this.element.meta.set('http-status-code', 'default');
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export default DefaultVisitor;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { T as stubTrue } from 'ramda';
|
|
2
|
+
import { ObjectElement } from '@speclynx/apidom-datamodel';
|
|
3
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
4
|
+
|
|
5
|
+
import { isReferenceLikeElement } from '../../../predicates.ts';
|
|
6
|
+
import { isReferenceElement, isResponseElement } from '../../../../predicates.ts';
|
|
7
|
+
import { BaseAlternatingVisitor, BaseAlternatingVisitorOptions } from '../bases.ts';
|
|
8
|
+
import AlternatingVisitor from '../../generics/AlternatingVisitor.ts';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export type { BaseAlternatingVisitorOptions as DefaultVisitorOptions };
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
class DefaultVisitor extends BaseAlternatingVisitor {
|
|
19
|
+
constructor(options: BaseAlternatingVisitorOptions) {
|
|
20
|
+
super(options);
|
|
21
|
+
this.alternator = [
|
|
22
|
+
{ predicate: isReferenceLikeElement, specPath: ['document', 'objects', 'Reference'] },
|
|
23
|
+
{ predicate: stubTrue, specPath: ['document', 'objects', 'Response'] },
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
ObjectElement(path: Path<ObjectElement>) {
|
|
28
|
+
AlternatingVisitor.prototype.enter.call(this, path);
|
|
29
|
+
|
|
30
|
+
// decorate ReferenceElement with type of referencing element
|
|
31
|
+
if (isReferenceElement(this.element)) {
|
|
32
|
+
this.element.meta.set('referenced-element', 'response');
|
|
33
|
+
} else if (isResponseElement(this.element)) {
|
|
34
|
+
this.element.meta.set('http-status-code', 'default');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export default DefaultVisitor;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.default = void 0;
|
|
6
|
+
var _ramda = require("ramda");
|
|
7
|
+
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
+
var _Responses = _interopRequireDefault(require("../../../../elements/Responses.cjs"));
|
|
9
|
+
var _predicates = require("../../../predicates.cjs");
|
|
10
|
+
var _predicates2 = require("../../../../predicates.cjs");
|
|
11
|
+
var _bases = require("../bases.cjs");
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
class ResponsesVisitor extends _bases.BaseMixedFieldsVisitor {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super(options);
|
|
22
|
+
this.element = new _Responses.default();
|
|
23
|
+
this.specPathFixedFields = (0, _ramda.always)(['document', 'objects', 'Responses']);
|
|
24
|
+
this.canSupportSpecificationExtensions = true;
|
|
25
|
+
this.specPathPatternedFields = element => (0, _predicates.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Response'];
|
|
26
|
+
this.fieldPatternPredicate = value => new RegExp(`^(1XX|2XX|3XX|4XX|5XX|${(0, _ramda.range)(100, 600).join('|')})$`).test(String(value));
|
|
27
|
+
}
|
|
28
|
+
ObjectElement(path) {
|
|
29
|
+
_bases.BaseMixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
30
|
+
|
|
31
|
+
// decorate every ReferenceElement with metadata about their referencing type
|
|
32
|
+
// @ts-ignore
|
|
33
|
+
this.element.filter(_predicates2.isReferenceElement).forEach(referenceElement => {
|
|
34
|
+
referenceElement.meta.set('referenced-element', 'response');
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
// decorate every ResponseElement with metadata about their status code
|
|
38
|
+
// @ts-ignore
|
|
39
|
+
this.element.filter(_predicates2.isResponseElement).forEach((value, key) => {
|
|
40
|
+
const httpStatusCode = (0, _apidomCore.toValue)(key);
|
|
41
|
+
if (!this.fieldPatternPredicate(httpStatusCode)) return;
|
|
42
|
+
value.meta.set('http-status-code', httpStatusCode);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
var _default = exports.default = ResponsesVisitor;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { always, range } from 'ramda';
|
|
2
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
3
|
+
import ResponsesElement from "../../../../elements/Responses.mjs";
|
|
4
|
+
import { isReferenceLikeElement } from "../../../predicates.mjs";
|
|
5
|
+
import { isReferenceElement, isResponseElement } from "../../../../predicates.mjs";
|
|
6
|
+
import { BaseMixedFieldsVisitor } from "../bases.mjs";
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class ResponsesVisitor extends BaseMixedFieldsVisitor {
|
|
14
|
+
constructor(options) {
|
|
15
|
+
super(options);
|
|
16
|
+
this.element = new ResponsesElement();
|
|
17
|
+
this.specPathFixedFields = always(['document', 'objects', 'Responses']);
|
|
18
|
+
this.canSupportSpecificationExtensions = true;
|
|
19
|
+
this.specPathPatternedFields = element => isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'Response'];
|
|
20
|
+
this.fieldPatternPredicate = value => new RegExp(`^(1XX|2XX|3XX|4XX|5XX|${range(100, 600).join('|')})$`).test(String(value));
|
|
21
|
+
}
|
|
22
|
+
ObjectElement(path) {
|
|
23
|
+
BaseMixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
24
|
+
|
|
25
|
+
// decorate every ReferenceElement with metadata about their referencing type
|
|
26
|
+
// @ts-ignore
|
|
27
|
+
this.element.filter(isReferenceElement).forEach(referenceElement => {
|
|
28
|
+
referenceElement.meta.set('referenced-element', 'response');
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
// decorate every ResponseElement with metadata about their status code
|
|
32
|
+
// @ts-ignore
|
|
33
|
+
this.element.filter(isResponseElement).forEach((value, key) => {
|
|
34
|
+
const httpStatusCode = toValue(key);
|
|
35
|
+
if (!this.fieldPatternPredicate(httpStatusCode)) return;
|
|
36
|
+
value.meta.set('http-status-code', httpStatusCode);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export default ResponsesVisitor;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { always, range } from 'ramda';
|
|
2
|
+
import { Element, ObjectElement, StringElement } from '@speclynx/apidom-datamodel';
|
|
3
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
4
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
5
|
+
|
|
6
|
+
import ReferenceElement from '../../../../elements/Reference.ts';
|
|
7
|
+
import ResponsesElement from '../../../../elements/Responses.ts';
|
|
8
|
+
import { SpecPath } from '../../generics/MixedFieldsVisitor.ts';
|
|
9
|
+
import { isReferenceLikeElement } from '../../../predicates.ts';
|
|
10
|
+
import { isReferenceElement, isResponseElement } from '../../../../predicates.ts';
|
|
11
|
+
import { BaseMixedFieldsVisitor, BaseMixedFieldsVisitorOptions } from '../bases.ts';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
export type { BaseMixedFieldsVisitorOptions as ResponsesVisitorOptions };
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
class ResponsesVisitor extends BaseMixedFieldsVisitor {
|
|
22
|
+
declare public readonly element: ResponsesElement;
|
|
23
|
+
|
|
24
|
+
declare protected readonly specPathFixedFields: SpecPath<['document', 'objects', 'Responses']>;
|
|
25
|
+
|
|
26
|
+
declare protected readonly canSupportSpecificationExtensions: true;
|
|
27
|
+
|
|
28
|
+
declare protected readonly specPathPatternedFields: SpecPath<
|
|
29
|
+
['document', 'objects', 'Reference'] | ['document', 'objects', 'Response']
|
|
30
|
+
>;
|
|
31
|
+
|
|
32
|
+
constructor(options: BaseMixedFieldsVisitorOptions) {
|
|
33
|
+
super(options);
|
|
34
|
+
this.element = new ResponsesElement();
|
|
35
|
+
this.specPathFixedFields = always(['document', 'objects', 'Responses']);
|
|
36
|
+
this.canSupportSpecificationExtensions = true;
|
|
37
|
+
this.specPathPatternedFields = (element: unknown) =>
|
|
38
|
+
isReferenceLikeElement(element)
|
|
39
|
+
? ['document', 'objects', 'Reference']
|
|
40
|
+
: ['document', 'objects', 'Response'];
|
|
41
|
+
this.fieldPatternPredicate = (value) =>
|
|
42
|
+
new RegExp(`^(1XX|2XX|3XX|4XX|5XX|${range(100, 600).join('|')})$`).test(String(value));
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
ObjectElement(path: Path<ObjectElement>) {
|
|
46
|
+
BaseMixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
47
|
+
|
|
48
|
+
// decorate every ReferenceElement with metadata about their referencing type
|
|
49
|
+
// @ts-ignore
|
|
50
|
+
this.element.filter(isReferenceElement).forEach((referenceElement: ReferenceElement) => {
|
|
51
|
+
referenceElement.meta.set('referenced-element', 'response');
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
// decorate every ResponseElement with metadata about their status code
|
|
55
|
+
// @ts-ignore
|
|
56
|
+
this.element.filter(isResponseElement).forEach((value: Element, key: StringElement) => {
|
|
57
|
+
const httpStatusCode = toValue(key) as string;
|
|
58
|
+
if (!this.fieldPatternPredicate(httpStatusCode)) return;
|
|
59
|
+
value.meta.set('http-status-code', httpStatusCode);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export default ResponsesVisitor;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = exports.JSONSchemaAllOfVisitor = void 0;
|
|
5
|
+
var _apidomNsJsonSchemaDraft = require("@speclynx/apidom-ns-json-schema-draft-4");
|
|
6
|
+
var _predicates = require("../../../../predicates.cjs");
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
const JSONSchemaAllOfVisitor = exports.JSONSchemaAllOfVisitor = _apidomNsJsonSchemaDraft.specificationObj.visitors.document.objects.JSONSchema.fixedFields.allOf;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
class AllOfVisitor extends JSONSchemaAllOfVisitor {
|
|
16
|
+
ArrayElement(path) {
|
|
17
|
+
JSONSchemaAllOfVisitor.prototype.ArrayElement.call(this, path);
|
|
18
|
+
|
|
19
|
+
// @ts-ignore
|
|
20
|
+
this.element.filter(_predicates.isReferenceElement).forEach(referenceElement => {
|
|
21
|
+
referenceElement.meta.set('referenced-element', 'schema');
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
var _default = exports.default = AllOfVisitor;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { specificationObj as JSONSchemaDraft4Specification } from '@speclynx/apidom-ns-json-schema-draft-4';
|
|
2
|
+
import { isReferenceElement } from "../../../../predicates.mjs";
|
|
3
|
+
/**
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export const JSONSchemaAllOfVisitor = JSONSchemaDraft4Specification.visitors.document.objects.JSONSchema.fixedFields.allOf;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
class AllOfVisitor extends JSONSchemaAllOfVisitor {
|
|
12
|
+
ArrayElement(path) {
|
|
13
|
+
JSONSchemaAllOfVisitor.prototype.ArrayElement.call(this, path);
|
|
14
|
+
|
|
15
|
+
// @ts-ignore
|
|
16
|
+
this.element.filter(isReferenceElement).forEach(referenceElement => {
|
|
17
|
+
referenceElement.meta.set('referenced-element', 'schema');
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export default AllOfVisitor;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ArrayElement } from '@speclynx/apidom-datamodel';
|
|
2
|
+
import {
|
|
3
|
+
specificationObj as JSONSchemaDraft4Specification,
|
|
4
|
+
AllOfVisitorOptions,
|
|
5
|
+
AllOfVisitor as AllOfVisitorType,
|
|
6
|
+
} from '@speclynx/apidom-ns-json-schema-draft-4';
|
|
7
|
+
import { Path } from '@speclynx/apidom-traverse';
|
|
8
|
+
|
|
9
|
+
import ReferenceElement from '../../../../elements/Reference.ts';
|
|
10
|
+
import { isReferenceElement } from '../../../../predicates.ts';
|
|
11
|
+
|
|
12
|
+
export type { AllOfVisitorOptions };
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export const JSONSchemaAllOfVisitor: typeof AllOfVisitorType =
|
|
18
|
+
JSONSchemaDraft4Specification.visitors.document.objects.JSONSchema.fixedFields.allOf;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
class AllOfVisitor extends JSONSchemaAllOfVisitor {
|
|
24
|
+
ArrayElement(path: Path<ArrayElement>) {
|
|
25
|
+
JSONSchemaAllOfVisitor.prototype.ArrayElement.call(this, path);
|
|
26
|
+
|
|
27
|
+
// @ts-ignore
|
|
28
|
+
this.element.filter(isReferenceElement).forEach((referenceElement: ReferenceElement) => {
|
|
29
|
+
referenceElement.meta.set('referenced-element', 'schema');
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export default AllOfVisitor;
|