@speclynx/apidom-ns-openapi-3-1 1.12.2 → 2.1.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/CHANGELOG.md +25 -0
- package/NOTICE +16 -7
- package/README.md +16 -29
- package/dist/apidom-ns-openapi-3-1.browser.js +13422 -14424
- package/dist/apidom-ns-openapi-3-1.browser.min.js +1 -1
- package/package.json +11 -11
- package/src/elements/JsonSchemaDialect.cjs +2 -2
- package/src/elements/JsonSchemaDialect.mjs +1 -1
- package/src/elements/OpenApi3-1.cjs +2 -2
- package/src/elements/OpenApi3-1.mjs +1 -1
- package/src/elements/PathItem.cjs +24 -24
- package/src/elements/PathItem.mjs +24 -24
- package/src/elements/nces/ComponentsPathItems.cjs +2 -2
- package/src/elements/nces/ComponentsPathItems.mjs +1 -1
- package/src/elements/nces/Webhooks.cjs +2 -2
- package/src/elements/nces/Webhooks.mjs +1 -1
- package/src/index.cjs +73 -49
- package/src/index.mjs +6 -3
- package/src/namespace.cjs +0 -1
- package/src/predicates.cjs +56 -187
- package/src/predicates.mjs +29 -186
- package/src/refractor/index.cjs +338 -17
- package/src/refractor/index.mjs +305 -16
- package/src/refractor/inspect.cjs +207 -0
- package/src/refractor/inspect.mjs +171 -0
- package/src/refractor/plugins/normalize-header-examples/NormalizeStorage.cjs +5 -5
- package/src/refractor/plugins/normalize-header-examples/NormalizeStorage.mjs +1 -1
- package/src/refractor/plugins/normalize-header-examples/index.cjs +11 -7
- package/src/refractor/plugins/normalize-header-examples/index.mjs +8 -4
- package/src/refractor/plugins/normalize-operation-ids.cjs +13 -6
- package/src/refractor/plugins/normalize-operation-ids.mjs +13 -6
- package/src/refractor/plugins/normalize-parameter-examples.cjs +11 -7
- package/src/refractor/plugins/normalize-parameter-examples.mjs +8 -4
- package/src/refractor/plugins/normalize-parameters.cjs +11 -5
- package/src/refractor/plugins/normalize-parameters.mjs +11 -5
- package/src/refractor/plugins/normalize-security-requirements.cjs +8 -4
- package/src/refractor/plugins/normalize-security-requirements.mjs +8 -4
- package/src/refractor/plugins/normalize-servers.cjs +15 -9
- package/src/refractor/plugins/normalize-servers.mjs +15 -9
- package/src/refractor/plugins/replace-empty-element.cjs +32 -30
- package/src/refractor/plugins/replace-empty-element.mjs +16 -15
- package/src/refractor/predicates.cjs +36 -0
- package/src/refractor/predicates.mjs +31 -0
- package/src/refractor/specification.cjs +43 -4
- package/src/refractor/specification.mjs +43 -4
- package/src/refractor/toolbox.cjs +12 -21
- package/src/refractor/toolbox.mjs +9 -16
- package/src/refractor/visitors/open-api-3-1/JsonSchemaDialectVisitor.cjs +5 -5
- package/src/refractor/visitors/open-api-3-1/JsonSchemaDialectVisitor.mjs +6 -6
- package/src/refractor/visitors/open-api-3-1/OpenapiVisitor.cjs +25 -0
- package/src/refractor/visitors/open-api-3-1/OpenapiVisitor.mjs +19 -0
- package/src/refractor/visitors/open-api-3-1/WebhooksVisitor.cjs +4 -5
- package/src/refractor/visitors/open-api-3-1/WebhooksVisitor.mjs +5 -6
- package/src/refractor/visitors/open-api-3-1/bases.cjs +46 -0
- package/src/refractor/visitors/open-api-3-1/bases.mjs +43 -0
- package/src/refractor/visitors/open-api-3-1/callback/index.cjs +2 -3
- package/src/refractor/visitors/open-api-3-1/callback/index.mjs +2 -3
- package/src/refractor/visitors/open-api-3-1/components/PathItemsVisitor.cjs +4 -5
- package/src/refractor/visitors/open-api-3-1/components/PathItemsVisitor.mjs +5 -6
- package/src/refractor/visitors/open-api-3-1/components/SchemasVisitor.cjs +2 -2
- package/src/refractor/visitors/open-api-3-1/components/SchemasVisitor.mjs +3 -5
- package/src/refractor/visitors/open-api-3-1/index.cjs +5 -4
- package/src/refractor/visitors/open-api-3-1/index.mjs +6 -5
- package/src/refractor/visitors/open-api-3-1/schema/index.cjs +11 -10
- package/src/refractor/visitors/open-api-3-1/schema/index.mjs +12 -11
- package/types/apidom-ns-openapi-3-1.d.ts +435 -274
- package/src/refractor/registration.cjs +0 -102
- package/src/refractor/registration.mjs +0 -66
- package/src/traversal/visitor.cjs +0 -57
- package/src/traversal/visitor.mjs +0 -54
|
@@ -4,23 +4,16 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
4
4
|
var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard").default;
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = exports.ancestorLineageToJSONPointer = void 0;
|
|
7
|
+
var _apidomDatamodel = require("@speclynx/apidom-datamodel");
|
|
7
8
|
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
9
|
var _apidomJsonPointer = require("@speclynx/apidom-json-pointer");
|
|
9
|
-
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
10
10
|
var openApi3_1Predicates = _interopRequireWildcard(require("../predicates.cjs"));
|
|
11
|
+
var refractorPredicates = _interopRequireWildcard(require("./predicates.cjs"));
|
|
11
12
|
var _namespace = _interopRequireDefault(require("../namespace.cjs"));
|
|
12
13
|
/**
|
|
13
14
|
* @public
|
|
14
15
|
*/
|
|
15
16
|
|
|
16
|
-
/**
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
|
|
24
17
|
/**
|
|
25
18
|
* Translates visitor ancestor lineage to a JSON Pointer tokens.
|
|
26
19
|
* Ancestor lineage is constructed of following visitor method arguments:
|
|
@@ -32,11 +25,12 @@ var _namespace = _interopRequireDefault(require("../namespace.cjs"));
|
|
|
32
25
|
*/
|
|
33
26
|
const ancestorLineageToJSONPointer = elementPath => {
|
|
34
27
|
const jsonPointerTokens = elementPath.reduce((path, element, index) => {
|
|
35
|
-
if ((0,
|
|
28
|
+
if ((0, _apidomDatamodel.isMemberElement)(element)) {
|
|
36
29
|
const token = String((0, _apidomCore.toValue)(element.key));
|
|
37
30
|
path.push(token);
|
|
38
|
-
} else if ((0,
|
|
39
|
-
const
|
|
31
|
+
} else if ((0, _apidomDatamodel.isArrayElement)(elementPath[index - 2])) {
|
|
32
|
+
const arrayElement = elementPath[index - 2];
|
|
33
|
+
const token = String(arrayElement.content?.indexOf(element) ?? -1);
|
|
40
34
|
path.push(token);
|
|
41
35
|
}
|
|
42
36
|
return path;
|
|
@@ -49,18 +43,15 @@ const ancestorLineageToJSONPointer = elementPath => {
|
|
|
49
43
|
*/
|
|
50
44
|
exports.ancestorLineageToJSONPointer = ancestorLineageToJSONPointer;
|
|
51
45
|
const createToolbox = () => {
|
|
52
|
-
const namespace =
|
|
46
|
+
const namespace = new _apidomDatamodel.Namespace();
|
|
53
47
|
const predicates = {
|
|
48
|
+
...refractorPredicates,
|
|
54
49
|
...openApi3_1Predicates,
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
isObjectElement: _apidomCore.isObjectElement,
|
|
59
|
-
isMemberElement: _apidomCore.isMemberElement,
|
|
60
|
-
isServersElement: _apidomNsOpenapi.isServersElement,
|
|
61
|
-
includesClasses: _apidomCore.includesClasses,
|
|
62
|
-
hasElementSourceMap: _apidomCore.hasElementSourceMap
|
|
50
|
+
isStringElement: _apidomDatamodel.isStringElement,
|
|
51
|
+
isArrayElement: _apidomDatamodel.isArrayElement,
|
|
52
|
+
isObjectElement: _apidomDatamodel.isObjectElement
|
|
63
53
|
};
|
|
54
|
+
namespace.use(_namespace.default);
|
|
64
55
|
return {
|
|
65
56
|
predicates,
|
|
66
57
|
ancestorLineageToJSONPointer,
|
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Namespace, isStringElement, isArrayElement, isObjectElement, isMemberElement } from '@speclynx/apidom-datamodel';
|
|
2
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
2
3
|
import { compile as compileJSONPointerTokens } from '@speclynx/apidom-json-pointer';
|
|
3
|
-
import { isServersElement } from '@speclynx/apidom-ns-openapi-3-0';
|
|
4
4
|
import * as openApi3_1Predicates from "../predicates.mjs";
|
|
5
|
+
import * as refractorPredicates from "./predicates.mjs";
|
|
5
6
|
import openApi3_1Namespace from "../namespace.mjs";
|
|
6
|
-
/**
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
7
|
/**
|
|
13
8
|
* @public
|
|
14
9
|
*/
|
|
@@ -27,7 +22,8 @@ export const ancestorLineageToJSONPointer = elementPath => {
|
|
|
27
22
|
const token = String(toValue(element.key));
|
|
28
23
|
path.push(token);
|
|
29
24
|
} else if (isArrayElement(elementPath[index - 2])) {
|
|
30
|
-
const
|
|
25
|
+
const arrayElement = elementPath[index - 2];
|
|
26
|
+
const token = String(arrayElement.content?.indexOf(element) ?? -1);
|
|
31
27
|
path.push(token);
|
|
32
28
|
}
|
|
33
29
|
return path;
|
|
@@ -39,18 +35,15 @@ export const ancestorLineageToJSONPointer = elementPath => {
|
|
|
39
35
|
* @public
|
|
40
36
|
*/
|
|
41
37
|
const createToolbox = () => {
|
|
42
|
-
const namespace =
|
|
38
|
+
const namespace = new Namespace();
|
|
43
39
|
const predicates = {
|
|
40
|
+
...refractorPredicates,
|
|
44
41
|
...openApi3_1Predicates,
|
|
45
|
-
isElement,
|
|
46
42
|
isStringElement,
|
|
47
43
|
isArrayElement,
|
|
48
|
-
isObjectElement
|
|
49
|
-
isMemberElement,
|
|
50
|
-
isServersElement,
|
|
51
|
-
includesClasses,
|
|
52
|
-
hasElementSourceMap
|
|
44
|
+
isObjectElement
|
|
53
45
|
};
|
|
46
|
+
namespace.use(openApi3_1Namespace);
|
|
54
47
|
return {
|
|
55
48
|
predicates,
|
|
56
49
|
ancestorLineageToJSONPointer,
|
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
|
-
var _tsMixer = require("ts-mixer");
|
|
7
6
|
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
|
-
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
9
7
|
var _JsonSchemaDialect = _interopRequireDefault(require("../../../elements/JsonSchemaDialect.cjs"));
|
|
8
|
+
var _bases = require("./bases.cjs");
|
|
10
9
|
/**
|
|
11
10
|
* @public
|
|
12
11
|
*/
|
|
@@ -14,12 +13,13 @@ var _JsonSchemaDialect = _interopRequireDefault(require("../../../elements/JsonS
|
|
|
14
13
|
/**
|
|
15
14
|
* @public
|
|
16
15
|
*/
|
|
17
|
-
class JsonSchemaDialectVisitor extends
|
|
18
|
-
StringElement(
|
|
16
|
+
class JsonSchemaDialectVisitor extends _bases.BaseSpecificationVisitor {
|
|
17
|
+
StringElement(path) {
|
|
18
|
+
const stringElement = path.node;
|
|
19
19
|
const jsonSchemaDialectElement = new _JsonSchemaDialect.default((0, _apidomCore.toValue)(stringElement));
|
|
20
20
|
this.copyMetaAndAttributes(stringElement, jsonSchemaDialectElement);
|
|
21
21
|
this.element = jsonSchemaDialectElement;
|
|
22
|
-
|
|
22
|
+
path.stop();
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
var _default = exports.default = JsonSchemaDialectVisitor;
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { BREAK, toValue } from '@speclynx/apidom-core';
|
|
3
|
-
import { FallbackVisitor, SpecificationVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
1
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
4
2
|
import JsonSchemaDialectElement from "../../../elements/JsonSchemaDialect.mjs";
|
|
3
|
+
import { BaseSpecificationVisitor } from "./bases.mjs";
|
|
5
4
|
/**
|
|
6
5
|
* @public
|
|
7
6
|
*/
|
|
8
7
|
/**
|
|
9
8
|
* @public
|
|
10
9
|
*/
|
|
11
|
-
class JsonSchemaDialectVisitor extends
|
|
12
|
-
StringElement(
|
|
10
|
+
class JsonSchemaDialectVisitor extends BaseSpecificationVisitor {
|
|
11
|
+
StringElement(path) {
|
|
12
|
+
const stringElement = path.node;
|
|
13
13
|
const jsonSchemaDialectElement = new JsonSchemaDialectElement(toValue(stringElement));
|
|
14
14
|
this.copyMetaAndAttributes(stringElement, jsonSchemaDialectElement);
|
|
15
15
|
this.element = jsonSchemaDialectElement;
|
|
16
|
-
|
|
16
|
+
path.stop();
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
export default JsonSchemaDialectVisitor;
|
|
@@ -0,0 +1,25 @@
|
|
|
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 _apidomCore = require("@speclynx/apidom-core");
|
|
7
|
+
var _bases = require("./bases.cjs");
|
|
8
|
+
var _Openapi = _interopRequireDefault(require("../../../elements/Openapi.cjs"));
|
|
9
|
+
/**
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
class OpenapiVisitor extends _bases.BaseSpecificationVisitor {
|
|
17
|
+
StringElement(path) {
|
|
18
|
+
const stringElement = path.node;
|
|
19
|
+
const openapiElement = new _Openapi.default((0, _apidomCore.toValue)(stringElement));
|
|
20
|
+
this.copyMetaAndAttributes(stringElement, openapiElement);
|
|
21
|
+
this.element = openapiElement;
|
|
22
|
+
path.stop();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
var _default = exports.default = OpenapiVisitor;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { toValue } from '@speclynx/apidom-core';
|
|
2
|
+
import { BaseSpecificationVisitor } from "./bases.mjs";
|
|
3
|
+
import OpenapiElement from "../../../elements/Openapi.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class OpenapiVisitor extends BaseSpecificationVisitor {
|
|
11
|
+
StringElement(path) {
|
|
12
|
+
const stringElement = path.node;
|
|
13
|
+
const openapiElement = new OpenapiElement(toValue(stringElement));
|
|
14
|
+
this.copyMetaAndAttributes(stringElement, openapiElement);
|
|
15
|
+
this.element = openapiElement;
|
|
16
|
+
path.stop();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export default OpenapiVisitor;
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
|
-
var _tsMixer = require("ts-mixer");
|
|
7
6
|
var _apidomCore = require("@speclynx/apidom-core");
|
|
8
7
|
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
9
8
|
var _Webhooks = _interopRequireDefault(require("../../../elements/nces/Webhooks.cjs"));
|
|
10
9
|
var _predicates = require("../../../predicates.cjs");
|
|
10
|
+
var _bases = require("./bases.cjs");
|
|
11
11
|
/**
|
|
12
12
|
* @public
|
|
13
13
|
*/
|
|
@@ -15,14 +15,14 @@ var _predicates = require("../../../predicates.cjs");
|
|
|
15
15
|
/**
|
|
16
16
|
* @public
|
|
17
17
|
*/
|
|
18
|
-
class WebhooksVisitor extends
|
|
18
|
+
class WebhooksVisitor extends _bases.BaseMapVisitor {
|
|
19
19
|
constructor(options) {
|
|
20
20
|
super(options);
|
|
21
21
|
this.element = new _Webhooks.default();
|
|
22
22
|
this.specPath = element => (0, _apidomNsOpenapi.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
23
23
|
}
|
|
24
|
-
ObjectElement(
|
|
25
|
-
|
|
24
|
+
ObjectElement(path) {
|
|
25
|
+
_apidomNsOpenapi.MapVisitor.prototype.ObjectElement.call(this, path);
|
|
26
26
|
|
|
27
27
|
// decorate every ReferenceElement with metadata about their referencing type
|
|
28
28
|
// @ts-ignore
|
|
@@ -38,7 +38,6 @@ class WebhooksVisitor extends (0, _tsMixer.Mixin)(_apidomNsOpenapi.MapVisitor, _
|
|
|
38
38
|
// @ts-ignore
|
|
39
39
|
pathItemElement.setMetaProperty('webhook-name', (0, _apidomCore.toValue)(key));
|
|
40
40
|
});
|
|
41
|
-
return result;
|
|
42
41
|
}
|
|
43
42
|
}
|
|
44
43
|
var _default = exports.default = WebhooksVisitor;
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Mixin } from 'ts-mixer';
|
|
2
1
|
import { toValue } from '@speclynx/apidom-core';
|
|
3
|
-
import { isReferenceLikeElement, MapVisitor
|
|
2
|
+
import { isReferenceLikeElement, MapVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
4
3
|
import WebhooksElement from "../../../elements/nces/Webhooks.mjs";
|
|
5
4
|
import { isPathItemElement, isReferenceElement } from "../../../predicates.mjs";
|
|
5
|
+
import { BaseMapVisitor } from "./bases.mjs";
|
|
6
6
|
/**
|
|
7
7
|
* @public
|
|
8
8
|
*/
|
|
9
9
|
/**
|
|
10
10
|
* @public
|
|
11
11
|
*/
|
|
12
|
-
class WebhooksVisitor extends
|
|
12
|
+
class WebhooksVisitor extends BaseMapVisitor {
|
|
13
13
|
constructor(options) {
|
|
14
14
|
super(options);
|
|
15
15
|
this.element = new WebhooksElement();
|
|
16
16
|
this.specPath = element => isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
17
17
|
}
|
|
18
|
-
ObjectElement(
|
|
19
|
-
|
|
18
|
+
ObjectElement(path) {
|
|
19
|
+
MapVisitor.prototype.ObjectElement.call(this, path);
|
|
20
20
|
|
|
21
21
|
// decorate every ReferenceElement with metadata about their referencing type
|
|
22
22
|
// @ts-ignore
|
|
@@ -32,7 +32,6 @@ class WebhooksVisitor extends Mixin(MapVisitor, FallbackVisitor) {
|
|
|
32
32
|
// @ts-ignore
|
|
33
33
|
pathItemElement.setMetaProperty('webhook-name', toValue(key));
|
|
34
34
|
});
|
|
35
|
-
return result;
|
|
36
35
|
}
|
|
37
36
|
}
|
|
38
37
|
export default WebhooksVisitor;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.BaseSpecificationVisitor = exports.BaseSchemaVisitor = exports.BaseMapVisitor = exports.BaseFixedFieldsVisitor = void 0;
|
|
5
|
+
var _tsMixer = require("ts-mixer");
|
|
6
|
+
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
7
|
+
var _apidomNsJsonSchema = require("@speclynx/apidom-ns-json-schema-2020-12");
|
|
8
|
+
/**
|
|
9
|
+
* Base class for visitors using Mixin(SpecificationVisitor, FallbackVisitor)
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
const BaseSpecificationVisitor = exports.BaseSpecificationVisitor = (0, _tsMixer.Mixin)(_apidomNsOpenapi.SpecificationVisitor, _apidomNsOpenapi.FallbackVisitor);
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Base class for visitors using Mixin(FixedFieldsVisitor, FallbackVisitor)
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
const BaseFixedFieldsVisitor = exports.BaseFixedFieldsVisitor = (0, _tsMixer.Mixin)(_apidomNsOpenapi.FixedFieldsVisitor, _apidomNsOpenapi.FallbackVisitor);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Base class for visitors using Mixin(MapVisitor, FallbackVisitor)
|
|
30
|
+
* @public
|
|
31
|
+
*/
|
|
32
|
+
const BaseMapVisitor = exports.BaseMapVisitor = (0, _tsMixer.Mixin)(_apidomNsOpenapi.MapVisitor, _apidomNsOpenapi.FallbackVisitor);
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Base class for visitors using Mixin(FixedFieldsVisitor, ParentSchemaAwareVisitor, FallbackVisitor)
|
|
40
|
+
* @public
|
|
41
|
+
*/
|
|
42
|
+
const BaseSchemaVisitor = exports.BaseSchemaVisitor = (0, _tsMixer.Mixin)(_apidomNsOpenapi.FixedFieldsVisitor, _apidomNsJsonSchema.ParentSchemaAwareVisitor, _apidomNsOpenapi.FallbackVisitor);
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* @public
|
|
46
|
+
*/
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Mixin } from 'ts-mixer';
|
|
2
|
+
import { SpecificationVisitor, FallbackVisitor, FixedFieldsVisitor, MapVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
3
|
+
import { ParentSchemaAwareVisitor } from '@speclynx/apidom-ns-json-schema-2020-12';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Base class for visitors using Mixin(SpecificationVisitor, FallbackVisitor)
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export const BaseSpecificationVisitor = Mixin(SpecificationVisitor, FallbackVisitor);
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Base class for visitors using Mixin(FixedFieldsVisitor, FallbackVisitor)
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export const BaseFixedFieldsVisitor = Mixin(FixedFieldsVisitor, FallbackVisitor);
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Base class for visitors using Mixin(MapVisitor, FallbackVisitor)
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
export const BaseMapVisitor = Mixin(MapVisitor, FallbackVisitor);
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @public
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Base class for visitors using Mixin(FixedFieldsVisitor, ParentSchemaAwareVisitor, FallbackVisitor)
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export const BaseSchemaVisitor = Mixin(FixedFieldsVisitor, ParentSchemaAwareVisitor, FallbackVisitor);
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @public
|
|
43
|
+
*/
|
|
@@ -22,8 +22,8 @@ class CallbackVisitor extends BaseCallbackVisitor {
|
|
|
22
22
|
return (0, _apidomNsOpenapi.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
|
-
ObjectElement(
|
|
26
|
-
|
|
25
|
+
ObjectElement(path) {
|
|
26
|
+
BaseCallbackVisitor.prototype.ObjectElement.call(this, path);
|
|
27
27
|
|
|
28
28
|
// decorate every ReferenceElement with metadata about their referencing type
|
|
29
29
|
// @ts-ignore
|
|
@@ -31,7 +31,6 @@ class CallbackVisitor extends BaseCallbackVisitor {
|
|
|
31
31
|
// @ts-ignore
|
|
32
32
|
referenceElement.setMetaProperty('referenced-element', 'pathItem');
|
|
33
33
|
});
|
|
34
|
-
return result;
|
|
35
34
|
}
|
|
36
35
|
}
|
|
37
36
|
var _default = exports.default = CallbackVisitor;
|
|
@@ -17,8 +17,8 @@ class CallbackVisitor extends BaseCallbackVisitor {
|
|
|
17
17
|
return isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
-
ObjectElement(
|
|
21
|
-
|
|
20
|
+
ObjectElement(path) {
|
|
21
|
+
BaseCallbackVisitor.prototype.ObjectElement.call(this, path);
|
|
22
22
|
|
|
23
23
|
// decorate every ReferenceElement with metadata about their referencing type
|
|
24
24
|
// @ts-ignore
|
|
@@ -26,7 +26,6 @@ class CallbackVisitor extends BaseCallbackVisitor {
|
|
|
26
26
|
// @ts-ignore
|
|
27
27
|
referenceElement.setMetaProperty('referenced-element', 'pathItem');
|
|
28
28
|
});
|
|
29
|
-
return result;
|
|
30
29
|
}
|
|
31
30
|
}
|
|
32
31
|
export default CallbackVisitor;
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
|
-
var _tsMixer = require("ts-mixer");
|
|
7
6
|
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
8
7
|
var _ComponentsPathItems = _interopRequireDefault(require("../../../../elements/nces/ComponentsPathItems.cjs"));
|
|
9
8
|
var _predicates = require("../../../../predicates.cjs");
|
|
9
|
+
var _bases = require("../bases.cjs");
|
|
10
10
|
/**
|
|
11
11
|
* @public
|
|
12
12
|
*/
|
|
@@ -14,21 +14,20 @@ var _predicates = require("../../../../predicates.cjs");
|
|
|
14
14
|
/**
|
|
15
15
|
* @public
|
|
16
16
|
*/
|
|
17
|
-
class PathItemsVisitor extends
|
|
17
|
+
class PathItemsVisitor extends _bases.BaseMapVisitor {
|
|
18
18
|
constructor(options) {
|
|
19
19
|
super(options);
|
|
20
20
|
this.element = new _ComponentsPathItems.default();
|
|
21
21
|
this.specPath = element => (0, _apidomNsOpenapi.isReferenceLikeElement)(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
22
22
|
}
|
|
23
|
-
ObjectElement(
|
|
24
|
-
|
|
23
|
+
ObjectElement(path) {
|
|
24
|
+
_apidomNsOpenapi.MapVisitor.prototype.ObjectElement.call(this, path);
|
|
25
25
|
|
|
26
26
|
// @ts-ignore
|
|
27
27
|
this.element.filter(_predicates.isReferenceElement).forEach(referenceElement => {
|
|
28
28
|
// @ts-ignore
|
|
29
29
|
referenceElement.setMetaProperty('referenced-element', 'pathItem');
|
|
30
30
|
});
|
|
31
|
-
return result;
|
|
32
31
|
}
|
|
33
32
|
}
|
|
34
33
|
var _default = exports.default = PathItemsVisitor;
|
|
@@ -1,28 +1,27 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { isReferenceLikeElement, MapVisitor, FallbackVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
1
|
+
import { isReferenceLikeElement, MapVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
3
2
|
import ComponentsPathItemsElement from "../../../../elements/nces/ComponentsPathItems.mjs";
|
|
4
3
|
import { isReferenceElement } from "../../../../predicates.mjs";
|
|
4
|
+
import { BaseMapVisitor } from "../bases.mjs";
|
|
5
5
|
/**
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
9
9
|
* @public
|
|
10
10
|
*/
|
|
11
|
-
class PathItemsVisitor extends
|
|
11
|
+
class PathItemsVisitor extends BaseMapVisitor {
|
|
12
12
|
constructor(options) {
|
|
13
13
|
super(options);
|
|
14
14
|
this.element = new ComponentsPathItemsElement();
|
|
15
15
|
this.specPath = element => isReferenceLikeElement(element) ? ['document', 'objects', 'Reference'] : ['document', 'objects', 'PathItem'];
|
|
16
16
|
}
|
|
17
|
-
ObjectElement(
|
|
18
|
-
|
|
17
|
+
ObjectElement(path) {
|
|
18
|
+
MapVisitor.prototype.ObjectElement.call(this, path);
|
|
19
19
|
|
|
20
20
|
// @ts-ignore
|
|
21
21
|
this.element.filter(isReferenceElement).forEach(referenceElement => {
|
|
22
22
|
// @ts-ignore
|
|
23
23
|
referenceElement.setMetaProperty('referenced-element', 'pathItem');
|
|
24
24
|
});
|
|
25
|
-
return result;
|
|
26
25
|
}
|
|
27
26
|
}
|
|
28
27
|
export default PathItemsVisitor;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.default = void 0;
|
|
5
|
-
var _tsMixer = require("ts-mixer");
|
|
6
5
|
var _ramda = require("ramda");
|
|
7
6
|
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
7
|
+
var _bases = require("../bases.cjs");
|
|
8
8
|
/**
|
|
9
9
|
* @public
|
|
10
10
|
*/
|
|
@@ -12,7 +12,7 @@ var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
|
12
12
|
/**
|
|
13
13
|
* @public
|
|
14
14
|
*/
|
|
15
|
-
class SchemasVisitor extends
|
|
15
|
+
class SchemasVisitor extends _bases.BaseMapVisitor {
|
|
16
16
|
constructor(options) {
|
|
17
17
|
super(options);
|
|
18
18
|
this.element = new _apidomNsOpenapi.ComponentsSchemasElement();
|
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
import { Mixin } from 'ts-mixer';
|
|
2
1
|
import { always } from 'ramda';
|
|
3
|
-
import { ComponentsSchemasElement
|
|
4
|
-
|
|
2
|
+
import { ComponentsSchemasElement } from '@speclynx/apidom-ns-openapi-3-0';
|
|
3
|
+
import { BaseMapVisitor } from "../bases.mjs";
|
|
5
4
|
/**
|
|
6
5
|
* @public
|
|
7
6
|
*/
|
|
8
|
-
|
|
9
7
|
/**
|
|
10
8
|
* @public
|
|
11
9
|
*/
|
|
12
|
-
class SchemasVisitor extends
|
|
10
|
+
class SchemasVisitor extends BaseMapVisitor {
|
|
13
11
|
constructor(options) {
|
|
14
12
|
super(options);
|
|
15
13
|
this.element = new ComponentsSchemasElement();
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
|
-
var _tsMixer = require("ts-mixer");
|
|
7
6
|
var _ramda = require("ramda");
|
|
8
7
|
var _apidomNsOpenapi = require("@speclynx/apidom-ns-openapi-3-0");
|
|
9
8
|
var _OpenApi = _interopRequireDefault(require("../../../elements/OpenApi3-1.cjs"));
|
|
9
|
+
var _bases = require("./bases.cjs");
|
|
10
10
|
/**
|
|
11
11
|
* @public
|
|
12
12
|
*/
|
|
@@ -15,7 +15,7 @@ var _OpenApi = _interopRequireDefault(require("../../../elements/OpenApi3-1.cjs"
|
|
|
15
15
|
* @public
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
-
class OpenApi3_1Visitor extends
|
|
18
|
+
class OpenApi3_1Visitor extends _bases.BaseFixedFieldsVisitor {
|
|
19
19
|
constructor(options) {
|
|
20
20
|
super(options);
|
|
21
21
|
this.element = new _OpenApi.default();
|
|
@@ -23,9 +23,10 @@ class OpenApi3_1Visitor extends (0, _tsMixer.Mixin)(_apidomNsOpenapi.FixedFields
|
|
|
23
23
|
this.canSupportSpecificationExtensions = true;
|
|
24
24
|
this.openApiSemanticElement = this.element;
|
|
25
25
|
}
|
|
26
|
-
ObjectElement(
|
|
26
|
+
ObjectElement(path) {
|
|
27
|
+
const objectElement = path.node;
|
|
27
28
|
this.openApiGenericElement = objectElement;
|
|
28
|
-
|
|
29
|
+
_apidomNsOpenapi.FixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
var _default = exports.default = OpenApi3_1Visitor;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Mixin } from 'ts-mixer';
|
|
2
1
|
import { always } from 'ramda';
|
|
3
|
-
import { FixedFieldsVisitor
|
|
2
|
+
import { FixedFieldsVisitor } from '@speclynx/apidom-ns-openapi-3-0';
|
|
4
3
|
import OpenApi3_1Element from "../../../elements/OpenApi3-1.mjs";
|
|
4
|
+
import { BaseFixedFieldsVisitor } from "./bases.mjs";
|
|
5
5
|
/**
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
@@ -9,7 +9,7 @@ import OpenApi3_1Element from "../../../elements/OpenApi3-1.mjs";
|
|
|
9
9
|
* @public
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
class OpenApi3_1Visitor extends
|
|
12
|
+
class OpenApi3_1Visitor extends BaseFixedFieldsVisitor {
|
|
13
13
|
constructor(options) {
|
|
14
14
|
super(options);
|
|
15
15
|
this.element = new OpenApi3_1Element();
|
|
@@ -17,9 +17,10 @@ class OpenApi3_1Visitor extends Mixin(FixedFieldsVisitor, FallbackVisitor) {
|
|
|
17
17
|
this.canSupportSpecificationExtensions = true;
|
|
18
18
|
this.openApiSemanticElement = this.element;
|
|
19
19
|
}
|
|
20
|
-
ObjectElement(
|
|
20
|
+
ObjectElement(path) {
|
|
21
|
+
const objectElement = path.node;
|
|
21
22
|
this.openApiGenericElement = objectElement;
|
|
22
|
-
|
|
23
|
+
FixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
23
24
|
}
|
|
24
25
|
}
|
|
25
26
|
export default OpenApi3_1Visitor;
|