@swagger-api/apidom-ns-openapi-3-0 0.82.0 → 0.82.2

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/es/index.mjs CHANGED
@@ -4,7 +4,7 @@ export { default } from "./namespace.mjs";
4
4
  export { default as refractorPluginReplaceEmptyElement } from "./refractor/plugins/replace-empty-element.mjs";
5
5
  export { default as refract, createRefractor } from "./refractor/index.mjs";
6
6
  export { default as specificationObj } from "./refractor/specification.mjs";
7
- export { isCallbackElement, isComponentsElement, isContactElement, isExampleElement, isExternalDocumentationElement, isInfoElement, isLicenseElement, isLinkElement, isLinkElementExternal, isOpenapiElement, isOpenApi3_0Element, isOperationElement, isParameterElement, isPathItemElement, isPathItemElementExternal, isPathsElement, isReferenceElement, isReferenceElementExternal, isRequestBodyElement, isResponseElement, isResponsesElement, isSchemaElement, isBooleanJsonSchemaElement, isSecurityRequirementElement, isServerElement, isServerVariableElement, isMediaTypeElement } from "./predicates.mjs";
7
+ export { isCallbackElement, isComponentsElement, isContactElement, isExampleElement, isExternalDocumentationElement, isInfoElement, isLicenseElement, isLinkElement, isLinkElementExternal, isOpenapiElement, isOpenApi3_0Element, isOperationElement, isParameterElement, isPathItemElement, isPathItemElementExternal, isPathsElement, isReferenceElement, isReferenceElementExternal, isRequestBodyElement, isResponseElement, isResponsesElement, isSchemaElement, isBooleanJsonSchemaElement, isSecurityRequirementElement, isServerElement, isServerVariableElement, isMediaTypeElement, isServersElement } from "./predicates.mjs";
8
8
  export { isOpenApi3_0LikeElement, isParameterLikeElement, isReferenceLikeElement, isRequestBodyLikeElement, isResponseLikeElement, isServerLikeElement, isTagLikeElement, isOpenApiExtension } from "./refractor/predicates.mjs";
9
9
  export { default as AlternatingVisitor } from "./refractor/visitors/generics/AlternatingVisitor.mjs";
10
10
  export { default as FixedFieldsVisitor } from "./refractor/visitors/generics/FixedFieldsVisitor.mjs";
package/es/predicates.mjs CHANGED
@@ -22,7 +22,8 @@ import SchemaElement from "./elements/Schema.mjs";
22
22
  import SecurityRequirementElement from "./elements/SecurityRequirement.mjs";
23
23
  import ServerElement from "./elements/Server.mjs";
24
24
  import ServerVariableElement from "./elements/ServerVariable.mjs";
25
- import MediaTypeElement from "./elements/MediaType.mjs";
25
+ import MediaTypeElement from "./elements/MediaType.mjs"; // NCE types
26
+ import ServersElement from "./elements/nces/Servers.mjs";
26
27
  export const isCallbackElement = createPredicate(({
27
28
  hasBasicElementProps,
28
29
  isElementType,
@@ -226,4 +227,12 @@ export const isMediaTypeElement = createPredicate(({
226
227
  primitiveEq
227
228
  }) => {
228
229
  return element => element instanceof MediaTypeElement || hasBasicElementProps(element) && isElementType('mediaType', element) && primitiveEq('object', element);
230
+ });
231
+ export const isServersElement = createPredicate(({
232
+ hasBasicElementProps,
233
+ isElementType,
234
+ primitiveEq,
235
+ hasClass
236
+ }) => {
237
+ return element => element instanceof ServersElement || hasBasicElementProps(element) && isElementType('array', element) && primitiveEq('array', element) && hasClass('servers', element);
229
238
  });
@@ -595,7 +595,7 @@ const plugin = () => () => {
595
595
  // no empty Element, continue with next one
596
596
  if (!isEmptyElement(element.value)) return undefined;
597
597
  const [,,, ancestors] = rest;
598
- const ancestor = ancestors.at(-1);
598
+ const ancestor = ancestors[ancestors.length - 1]; // @TODO(vladimir.gorej@gmail.com): can be replaced by Array.prototype.at in future
599
599
  const elementFactory = findElementFactory(ancestor, toValue(element.key));
600
600
 
601
601
  // no element factory found
@@ -608,7 +608,7 @@ const plugin = () => () => {
608
608
  StringElement(element, ...rest) {
609
609
  if (!isEmptyElement(element)) return undefined;
610
610
  const [,,, ancestors] = rest;
611
- const ancestor = ancestors.at(-1);
611
+ const ancestor = ancestors[ancestors.length - 1]; // @TODO(vladimir.gorej@gmail.com): can be replaced by Array.prototype.at in future
612
612
 
613
613
  // we're only interested in empty elements in ArrayElements
614
614
  if (!isArrayElement(ancestor)) return undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swagger-api/apidom-ns-openapi-3-0",
3
- "version": "0.82.0",
3
+ "version": "0.82.2",
4
4
  "description": "OpenAPI 3.0.x namespace for ApiDOM.",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -42,9 +42,9 @@
42
42
  "license": "Apache-2.0",
43
43
  "dependencies": {
44
44
  "@babel/runtime-corejs3": "^7.20.7",
45
- "@swagger-api/apidom-core": "^0.82.0",
46
- "@swagger-api/apidom-error": "^0.82.0",
47
- "@swagger-api/apidom-ns-json-schema-draft-4": "^0.82.0",
45
+ "@swagger-api/apidom-core": "^0.82.2",
46
+ "@swagger-api/apidom-error": "^0.82.1",
47
+ "@swagger-api/apidom-ns-json-schema-draft-4": "^0.82.2",
48
48
  "@types/ramda": "~0.29.6",
49
49
  "ramda": "~0.29.0",
50
50
  "ramda-adjunct": "^4.1.1",
@@ -60,5 +60,5 @@
60
60
  "README.md",
61
61
  "CHANGELOG.md"
62
62
  ],
63
- "gitHead": "343498decaceb7b13134159e6253016ddef7e154"
63
+ "gitHead": "4d2a5697cba7abcab32abfdbea6ba946b4fd262f"
64
64
  }
package/types/dist.d.ts CHANGED
@@ -814,6 +814,11 @@ declare class MediaType extends ObjectElement {
814
814
  set encoding(encoding: ObjectElement | undefined);
815
815
  }
816
816
 
817
+ declare class Servers extends ArrayElement {
818
+ static primaryClass: string;
819
+ constructor(content?: Array<unknown>, meta?: Meta, attributes?: Attributes);
820
+ }
821
+
817
822
  declare const isCallbackElement: ElementPredicate<Callback>;
818
823
  declare const isComponentsElement: ElementPredicate<Components>;
819
824
  declare const isContactElement: ElementPredicate<Contact>;
@@ -841,6 +846,7 @@ declare const isSecurityRequirementElement: ElementPredicate<SecurityRequirement
841
846
  declare const isServerElement: ElementPredicate<Server>;
842
847
  declare const isServerVariableElement: ElementPredicate<ServerVariable>;
843
848
  declare const isMediaTypeElement: ElementPredicate<MediaType>;
849
+ declare const isServersElement: ElementPredicate<Servers>;
844
850
 
845
851
  declare const isOpenApi3_0LikeElement: <T extends Element>(element: T) => boolean;
846
852
  declare const isParameterLikeElement: <T extends Element>(element: T) => boolean;
@@ -1154,11 +1160,6 @@ declare class Security extends ArrayElement {
1154
1160
  constructor(content?: Array<unknown>, meta?: Meta, attributes?: Attributes);
1155
1161
  }
1156
1162
 
1157
- declare class Servers extends ArrayElement {
1158
- static primaryClass: string;
1159
- constructor(content?: Array<unknown>, meta?: Meta, attributes?: Attributes);
1160
- }
1161
-
1162
1163
  declare class ServerVariables extends ObjectElement {
1163
1164
  static primaryClass: string;
1164
1165
  constructor(content?: Record<string, unknown>, meta?: Meta, attributes?: Attributes);
@@ -1169,4 +1170,4 @@ declare class Tags extends ArrayElement {
1169
1170
  constructor(content?: Array<unknown>, meta?: Meta, attributes?: Attributes);
1170
1171
  }
1171
1172
 
1172
- export { AlternatingVisitor, Callback as CallbackElement, ComponentsCallbacks as ComponentsCallbacksElement, Components as ComponentsElement, ComponentsExamples as ComponentsExamplesElement, ComponentsHeaders as ComponentsHeadersElement, ComponentsLinks as ComponentsLinksElement, ComponentsParameters as ComponentsParametersElement, ComponentsRequestBodies as ComponentsRequestBodiesElement, ComponentsResponses as ComponentsResponsesElement, ComponentsSchemas as ComponentsSchemasElement, ComponentsSecuritySchemes as ComponentsSecuritySchemesElement, Contact as ContactElement, Discriminator as DiscriminatorElement, DiscriminatorMapping as DiscriminatorMappingElement, Encoding as EncodingElement, EncodingHeaders as EncodingHeadersElement, Example as ExampleElement, ExternalDocumentation as ExternalDocumentationElement, FallbackVisitor, FixedFieldsVisitor, HeaderContent as HeaderContentElement, Header as HeaderElement, HeaderExamples as HeaderExamplesElement, Info as InfoElement, License as LicenseElement, Link as LinkElement, LinkParameters as LinkParametersElement, MapVisitor, MediaType as MediaTypeElement, MediaTypeEncoding as MediaTypeEncodingElement, MediaTypeExamples as MediaTypeExamplesElement, MixedFieldsVisitor, OAuthFlow as OAuthFlowElement, OAuthFlowScopes as OAuthFlowScopesElement, OAuthFlows as OAuthFlowsElement, OpenAPIMediaTypes, OpenApi3_0 as OpenApi3_0Element, Openapi as OpenapiElement, OperationCallbacks as OperationCallbacksElement, Operation as OperationElement, OperationParameters as OperationParametersElement, OperationSecurity as OperationSecurityElement, OperationServers as OperationServersElement, OperationTags as OperationTagsElement, ParameterContent as ParameterContentElement, Parameter as ParameterElement, ParameterExamples as ParameterExamplesElement, PathItem as PathItemElement, PathItemParameters as PathItemParametersElement, PathItemServers as PathItemServersElement, Paths as PathsElement, PatternedFieldsJsonObjectVisitor as PatternedFieldsVisitor, Reference as ReferenceElement, RequestBodyContent as RequestBodyContentElement, RequestBody as RequestBodyElement, ResponseContent as ResponseContentElement, Response as ResponseElement, ResponseHeaders as ResponseHeadersElement, ResponseLinks as ResponseLinksElement, Responses as ResponsesElement, Schema as SchemaElement, Security as SecurityElement, SecurityRequirement as SecurityRequirementElement, SecurityScheme as SecuritySchemeElement, Server as ServerElement, ServerVariable as ServerVariableElement, ServerVariables as ServerVariablesElement, Servers as ServersElement, SpecificationVisitor, Tag as TagElement, Tags as TagsElement, Visitor, Xml as XmlElement, createRefractor, openApi3_0 as default, getNodeType, isBooleanJsonSchemaElement, isCallbackElement, isComponentsElement, isContactElement, isExampleElement, isExternalDocumentationElement, isInfoElement, isLicenseElement, isLinkElement, isLinkElementExternal, isMediaTypeElement, isOpenApi3_0Element, isOpenApi3_0LikeElement, isOpenApiExtension, isOpenapiElement, isOperationElement, isParameterElement, isParameterLikeElement, isPathItemElement, isPathItemElementExternal, isPathsElement, isReferenceElement, isReferenceElementExternal, isReferenceLikeElement, isRequestBodyElement, isRequestBodyLikeElement, isResponseElement, isResponseLikeElement, isResponsesElement, isSchemaElement, isSecurityRequirementElement, isServerElement, isServerLikeElement, isServerVariableElement, isTagLikeElement, keyMap, mediaTypes, refract, plugin as refractorPluginReplaceEmptyElement, specification as specificationObj };
1173
+ export { AlternatingVisitor, Callback as CallbackElement, ComponentsCallbacks as ComponentsCallbacksElement, Components as ComponentsElement, ComponentsExamples as ComponentsExamplesElement, ComponentsHeaders as ComponentsHeadersElement, ComponentsLinks as ComponentsLinksElement, ComponentsParameters as ComponentsParametersElement, ComponentsRequestBodies as ComponentsRequestBodiesElement, ComponentsResponses as ComponentsResponsesElement, ComponentsSchemas as ComponentsSchemasElement, ComponentsSecuritySchemes as ComponentsSecuritySchemesElement, Contact as ContactElement, Discriminator as DiscriminatorElement, DiscriminatorMapping as DiscriminatorMappingElement, Encoding as EncodingElement, EncodingHeaders as EncodingHeadersElement, Example as ExampleElement, ExternalDocumentation as ExternalDocumentationElement, FallbackVisitor, FixedFieldsVisitor, HeaderContent as HeaderContentElement, Header as HeaderElement, HeaderExamples as HeaderExamplesElement, Info as InfoElement, License as LicenseElement, Link as LinkElement, LinkParameters as LinkParametersElement, MapVisitor, MediaType as MediaTypeElement, MediaTypeEncoding as MediaTypeEncodingElement, MediaTypeExamples as MediaTypeExamplesElement, MixedFieldsVisitor, OAuthFlow as OAuthFlowElement, OAuthFlowScopes as OAuthFlowScopesElement, OAuthFlows as OAuthFlowsElement, OpenAPIMediaTypes, OpenApi3_0 as OpenApi3_0Element, Openapi as OpenapiElement, OperationCallbacks as OperationCallbacksElement, Operation as OperationElement, OperationParameters as OperationParametersElement, OperationSecurity as OperationSecurityElement, OperationServers as OperationServersElement, OperationTags as OperationTagsElement, ParameterContent as ParameterContentElement, Parameter as ParameterElement, ParameterExamples as ParameterExamplesElement, PathItem as PathItemElement, PathItemParameters as PathItemParametersElement, PathItemServers as PathItemServersElement, Paths as PathsElement, PatternedFieldsJsonObjectVisitor as PatternedFieldsVisitor, Reference as ReferenceElement, RequestBodyContent as RequestBodyContentElement, RequestBody as RequestBodyElement, ResponseContent as ResponseContentElement, Response as ResponseElement, ResponseHeaders as ResponseHeadersElement, ResponseLinks as ResponseLinksElement, Responses as ResponsesElement, Schema as SchemaElement, Security as SecurityElement, SecurityRequirement as SecurityRequirementElement, SecurityScheme as SecuritySchemeElement, Server as ServerElement, ServerVariable as ServerVariableElement, ServerVariables as ServerVariablesElement, Servers as ServersElement, SpecificationVisitor, Tag as TagElement, Tags as TagsElement, Visitor, Xml as XmlElement, createRefractor, openApi3_0 as default, getNodeType, isBooleanJsonSchemaElement, isCallbackElement, isComponentsElement, isContactElement, isExampleElement, isExternalDocumentationElement, isInfoElement, isLicenseElement, isLinkElement, isLinkElementExternal, isMediaTypeElement, isOpenApi3_0Element, isOpenApi3_0LikeElement, isOpenApiExtension, isOpenapiElement, isOperationElement, isParameterElement, isParameterLikeElement, isPathItemElement, isPathItemElementExternal, isPathsElement, isReferenceElement, isReferenceElementExternal, isReferenceLikeElement, isRequestBodyElement, isRequestBodyLikeElement, isResponseElement, isResponseLikeElement, isResponsesElement, isSchemaElement, isSecurityRequirementElement, isServerElement, isServerLikeElement, isServerVariableElement, isServersElement, isTagLikeElement, keyMap, mediaTypes, refract, plugin as refractorPluginReplaceEmptyElement, specification as specificationObj };