@swagger-api/apidom-core 0.76.2 → 0.78.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 +17 -0
- package/README.md +53 -5
- package/cjs/clone/errors/CloneError.cjs +7 -0
- package/cjs/clone/errors/DeepCloneError.cjs +8 -0
- package/cjs/clone/errors/ShallowCloneError.cjs +8 -0
- package/cjs/clone/index.cjs +105 -0
- package/cjs/deepmerge.cjs +9 -7
- package/cjs/elements/Annotation.cjs +1 -2
- package/cjs/elements/Comment.cjs +1 -2
- package/cjs/elements/ParseResult.cjs +1 -2
- package/cjs/elements/SourceMap.cjs +1 -2
- package/cjs/index.cjs +61 -101
- package/cjs/media-types.cjs +4 -5
- package/cjs/namespace.cjs +1 -2
- package/cjs/predicates/helpers.cjs +1 -2
- package/cjs/predicates/index.cjs +14 -28
- package/cjs/refractor/index.cjs +1 -2
- package/cjs/refractor/plugins/element-identity.cjs +1 -2
- package/cjs/refractor/plugins/semantic-element-identity.cjs +1 -2
- package/cjs/refractor/toolbox.cjs +1 -2
- package/cjs/transcluder/Transcluder.cjs +1 -2
- package/cjs/transcluder/index.cjs +1 -2
- package/cjs/transformers/dehydrate.cjs +14 -0
- package/cjs/transformers/from.cjs +27 -0
- package/cjs/{serializers → transformers/serializers}/json.cjs +1 -2
- package/cjs/{serializers → transformers/serializers}/value/ast/ephemeral-array.cjs +1 -2
- package/cjs/{serializers → transformers/serializers}/value/ast/ephemeral-object.cjs +1 -2
- package/cjs/{serializers → transformers/serializers}/value/index.cjs +8 -2
- package/cjs/{serializers → transformers/serializers}/value/visitor.cjs +1 -1
- package/cjs/{serializers → transformers/serializers}/yaml-1-2.cjs +2 -3
- package/cjs/{sexprs.cjs → transformers/sexprs.cjs} +2 -3
- package/cjs/transformers/to-string.cjs +15 -0
- package/cjs/traversal/filter.cjs +1 -2
- package/cjs/traversal/find.cjs +1 -2
- package/cjs/traversal/findAtOffset.cjs +4 -4
- package/cjs/traversal/parents.cjs +1 -2
- package/cjs/traversal/reject.cjs +1 -2
- package/cjs/traversal/some.cjs +1 -2
- package/cjs/traversal/traverse.cjs +2 -4
- package/cjs/traversal/visitor.cjs +17 -8
- package/dist/apidom-core.browser.js +4554 -17668
- package/dist/apidom-core.browser.min.js +1 -1
- package/es/clone/errors/CloneError.mjs +3 -0
- package/es/clone/errors/DeepCloneError.mjs +3 -0
- package/es/clone/errors/ShallowCloneError.mjs +3 -0
- package/es/clone/index.mjs +98 -0
- package/es/deepmerge.mjs +9 -8
- package/es/index.mjs +12 -38
- package/es/media-types.mjs +3 -3
- package/es/transformers/dehydrate.mjs +9 -0
- package/es/transformers/from.mjs +22 -0
- package/es/{serializers → transformers/serializers}/value/index.mjs +7 -0
- package/es/{serializers → transformers/serializers}/value/visitor.mjs +1 -1
- package/es/{serializers → transformers/serializers}/yaml-1-2.mjs +1 -1
- package/es/{sexprs.mjs → transformers/sexprs.mjs} +1 -1
- package/es/transformers/to-string.mjs +10 -0
- package/es/traversal/findAtOffset.mjs +3 -2
- package/es/traversal/visitor.mjs +13 -2
- package/package.json +5 -5
- package/types/dist.d.ts +52 -38
- package/types/minim.d.ts +14 -2
- /package/es/{serializers → transformers/serializers}/json.mjs +0 -0
- /package/es/{serializers → transformers/serializers}/value/ast/ephemeral-array.mjs +0 -0
- /package/es/{serializers → transformers/serializers}/value/ast/ephemeral-object.mjs +0 -0
package/cjs/predicates/index.cjs
CHANGED
|
@@ -12,113 +12,99 @@ var _Comment = _interopRequireDefault(require("../elements/Comment.cjs"));
|
|
|
12
12
|
var _ParseResult = _interopRequireDefault(require("../elements/ParseResult.cjs"));
|
|
13
13
|
var _SourceMap = _interopRequireDefault(require("../elements/SourceMap.cjs"));
|
|
14
14
|
var _helpers = _interopRequireWildcard(require("./helpers.cjs"));
|
|
15
|
-
const isElement = (0, _helpers.default)(({
|
|
15
|
+
const isElement = exports.isElement = (0, _helpers.default)(({
|
|
16
16
|
hasBasicElementProps,
|
|
17
17
|
primitiveEq
|
|
18
18
|
}) => {
|
|
19
19
|
return element => element instanceof _minim.Element || hasBasicElementProps(element) && primitiveEq(undefined, element);
|
|
20
20
|
});
|
|
21
|
-
exports.
|
|
22
|
-
const isStringElement = (0, _helpers.default)(({
|
|
21
|
+
const isStringElement = exports.isStringElement = (0, _helpers.default)(({
|
|
23
22
|
hasBasicElementProps,
|
|
24
23
|
primitiveEq
|
|
25
24
|
}) => {
|
|
26
25
|
return element => element instanceof _minim.StringElement || hasBasicElementProps(element) && primitiveEq('string', element);
|
|
27
26
|
});
|
|
28
|
-
exports.
|
|
29
|
-
const isNumberElement = (0, _helpers.default)(({
|
|
27
|
+
const isNumberElement = exports.isNumberElement = (0, _helpers.default)(({
|
|
30
28
|
hasBasicElementProps,
|
|
31
29
|
primitiveEq
|
|
32
30
|
}) => {
|
|
33
31
|
return element => element instanceof _minim.NumberElement || hasBasicElementProps(element) && primitiveEq('number', element);
|
|
34
32
|
});
|
|
35
|
-
exports.
|
|
36
|
-
const isNullElement = (0, _helpers.default)(({
|
|
33
|
+
const isNullElement = exports.isNullElement = (0, _helpers.default)(({
|
|
37
34
|
hasBasicElementProps,
|
|
38
35
|
primitiveEq
|
|
39
36
|
}) => {
|
|
40
37
|
return element => element instanceof _minim.NullElement || hasBasicElementProps(element) && primitiveEq('null', element);
|
|
41
38
|
});
|
|
42
|
-
exports.
|
|
43
|
-
const isBooleanElement = (0, _helpers.default)(({
|
|
39
|
+
const isBooleanElement = exports.isBooleanElement = (0, _helpers.default)(({
|
|
44
40
|
hasBasicElementProps,
|
|
45
41
|
primitiveEq
|
|
46
42
|
}) => {
|
|
47
43
|
return element => element instanceof _minim.BooleanElement || hasBasicElementProps(element) && primitiveEq('boolean', element);
|
|
48
44
|
});
|
|
49
|
-
exports.
|
|
50
|
-
const isObjectElement = (0, _helpers.default)(({
|
|
45
|
+
const isObjectElement = exports.isObjectElement = (0, _helpers.default)(({
|
|
51
46
|
hasBasicElementProps,
|
|
52
47
|
primitiveEq,
|
|
53
48
|
hasMethod
|
|
54
49
|
}) => {
|
|
55
50
|
return element => element instanceof _minim.ObjectElement || hasBasicElementProps(element) && primitiveEq('object', element) && hasMethod('keys', element) && hasMethod('values', element) && hasMethod('items', element);
|
|
56
51
|
});
|
|
57
|
-
exports.
|
|
58
|
-
const isArrayElement = (0, _helpers.default)(({
|
|
52
|
+
const isArrayElement = exports.isArrayElement = (0, _helpers.default)(({
|
|
59
53
|
hasBasicElementProps,
|
|
60
54
|
primitiveEq,
|
|
61
55
|
hasMethod
|
|
62
56
|
}) => {
|
|
63
57
|
return element => element instanceof _minim.ArrayElement && !(element instanceof _minim.ObjectElement) || hasBasicElementProps(element) && primitiveEq('array', element) && hasMethod('push', element) && hasMethod('unshift', element) && hasMethod('map', element) && hasMethod('reduce', element);
|
|
64
58
|
});
|
|
65
|
-
exports.
|
|
66
|
-
const isMemberElement = (0, _helpers.default)(({
|
|
59
|
+
const isMemberElement = exports.isMemberElement = (0, _helpers.default)(({
|
|
67
60
|
hasBasicElementProps,
|
|
68
61
|
isElementType,
|
|
69
62
|
primitiveEq
|
|
70
63
|
}) => {
|
|
71
64
|
return element => element instanceof _minim.MemberElement || hasBasicElementProps(element) && isElementType('member', element) && primitiveEq(undefined, element);
|
|
72
65
|
});
|
|
73
|
-
exports.
|
|
74
|
-
const isLinkElement = (0, _helpers.default)(({
|
|
66
|
+
const isLinkElement = exports.isLinkElement = (0, _helpers.default)(({
|
|
75
67
|
hasBasicElementProps,
|
|
76
68
|
isElementType,
|
|
77
69
|
primitiveEq
|
|
78
70
|
}) => {
|
|
79
71
|
return element => element instanceof _minim.LinkElement || hasBasicElementProps(element) && isElementType('link', element) && primitiveEq(undefined, element);
|
|
80
72
|
});
|
|
81
|
-
exports.
|
|
82
|
-
const isRefElement = (0, _helpers.default)(({
|
|
73
|
+
const isRefElement = exports.isRefElement = (0, _helpers.default)(({
|
|
83
74
|
hasBasicElementProps,
|
|
84
75
|
isElementType,
|
|
85
76
|
primitiveEq
|
|
86
77
|
}) => {
|
|
87
78
|
return element => element instanceof _minim.RefElement || hasBasicElementProps(element) && isElementType('ref', element) && primitiveEq(undefined, element);
|
|
88
79
|
});
|
|
89
|
-
exports.
|
|
90
|
-
const isAnnotationElement = (0, _helpers.default)(({
|
|
80
|
+
const isAnnotationElement = exports.isAnnotationElement = (0, _helpers.default)(({
|
|
91
81
|
hasBasicElementProps,
|
|
92
82
|
isElementType,
|
|
93
83
|
primitiveEq
|
|
94
84
|
}) => {
|
|
95
85
|
return element => element instanceof _Annotation.default || hasBasicElementProps(element) && isElementType('annotation', element) && primitiveEq('array', element);
|
|
96
86
|
});
|
|
97
|
-
exports.
|
|
98
|
-
const isCommentElement = (0, _helpers.default)(({
|
|
87
|
+
const isCommentElement = exports.isCommentElement = (0, _helpers.default)(({
|
|
99
88
|
hasBasicElementProps,
|
|
100
89
|
isElementType,
|
|
101
90
|
primitiveEq
|
|
102
91
|
}) => {
|
|
103
92
|
return element => element instanceof _Comment.default || hasBasicElementProps(element) && isElementType('comment', element) && primitiveEq('string', element);
|
|
104
93
|
});
|
|
105
|
-
exports.
|
|
106
|
-
const isParseResultElement = (0, _helpers.default)(({
|
|
94
|
+
const isParseResultElement = exports.isParseResultElement = (0, _helpers.default)(({
|
|
107
95
|
hasBasicElementProps,
|
|
108
96
|
isElementType,
|
|
109
97
|
primitiveEq
|
|
110
98
|
}) => {
|
|
111
99
|
return element => element instanceof _ParseResult.default || hasBasicElementProps(element) && isElementType('parseResult', element) && primitiveEq('array', element);
|
|
112
100
|
});
|
|
113
|
-
exports.
|
|
114
|
-
const isSourceMapElement = (0, _helpers.default)(({
|
|
101
|
+
const isSourceMapElement = exports.isSourceMapElement = (0, _helpers.default)(({
|
|
115
102
|
hasBasicElementProps,
|
|
116
103
|
isElementType,
|
|
117
104
|
primitiveEq
|
|
118
105
|
}) => {
|
|
119
106
|
return element => element instanceof _SourceMap.default || hasBasicElementProps(element) && isElementType('sourceMap', element) && primitiveEq('array', element);
|
|
120
107
|
});
|
|
121
|
-
exports.isSourceMapElement = isSourceMapElement;
|
|
122
108
|
const isPrimitiveElement = element => {
|
|
123
109
|
return (0, _helpers.isElementType)('object', element) || (0, _helpers.isElementType)('array', element) || (0, _helpers.isElementType)('boolean', element) || (0, _helpers.isElementType)('number', element) || (0, _helpers.isElementType)('string', element) || (0, _helpers.isElementType)('null', element) || (0, _helpers.isElementType)('member', element);
|
|
124
110
|
};
|
package/cjs/refractor/index.cjs
CHANGED
|
@@ -15,5 +15,4 @@ const transclude = (search, replace, element) => {
|
|
|
15
15
|
return transcluder.transclude(search, replace);
|
|
16
16
|
};
|
|
17
17
|
exports.transclude = transclude;
|
|
18
|
-
var _default = _Transcluder.default;
|
|
19
|
-
exports.default = _default;
|
|
18
|
+
var _default = exports.default = _Transcluder.default;
|
|
@@ -0,0 +1,14 @@
|
|
|
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 _namespace = _interopRequireDefault(require("../namespace.cjs"));
|
|
7
|
+
/**
|
|
8
|
+
* Creates a refract representation of an Element.
|
|
9
|
+
* https://github.com/refractproject/refract-spec
|
|
10
|
+
*/
|
|
11
|
+
const dehydrate = (element, namespace = _namespace.default) => {
|
|
12
|
+
return namespace.toRefract(element);
|
|
13
|
+
};
|
|
14
|
+
var _default = exports.default = dehydrate;
|
|
@@ -0,0 +1,27 @@
|
|
|
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 _ramdaAdjunct = require("ramda-adjunct");
|
|
8
|
+
var _namespace = _interopRequireDefault(require("../namespace.cjs"));
|
|
9
|
+
/**
|
|
10
|
+
* Transforms data to an Element from a particular namespace.
|
|
11
|
+
*/
|
|
12
|
+
const from = (data, namespace = _namespace.default) => {
|
|
13
|
+
if ((0, _ramdaAdjunct.isString)(data)) {
|
|
14
|
+
// JSON serialized refract
|
|
15
|
+
try {
|
|
16
|
+
return namespace.fromRefract(JSON.parse(data));
|
|
17
|
+
} catch {
|
|
18
|
+
// noop
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
if ((0, _ramdaAdjunct.isPlainObject)(data) && (0, _ramda.has)('element', data)) {
|
|
22
|
+
// refract javascript structure
|
|
23
|
+
return namespace.fromRefract(data);
|
|
24
|
+
}
|
|
25
|
+
return namespace.toElement(data);
|
|
26
|
+
};
|
|
27
|
+
var _default = exports.default = from;
|
|
@@ -5,5 +5,4 @@ exports.__esModule = true;
|
|
|
5
5
|
exports.default = void 0;
|
|
6
6
|
var _index = _interopRequireDefault(require("./value/index.cjs"));
|
|
7
7
|
const serializer = (element, replacer, space) => JSON.stringify((0, _index.default)(element), replacer, space);
|
|
8
|
-
var _default = serializer;
|
|
9
|
-
exports.default = _default;
|
|
8
|
+
var _default = exports.default = serializer;
|
|
@@ -7,6 +7,7 @@ var _stampit = _interopRequireDefault(require("stampit"));
|
|
|
7
7
|
var _visitor = require("./visitor.cjs");
|
|
8
8
|
var _ephemeralArray = _interopRequireDefault(require("./ast/ephemeral-array.cjs"));
|
|
9
9
|
var _ephemeralObject = _interopRequireDefault(require("./ast/ephemeral-object.cjs"));
|
|
10
|
+
var _index = require("../../../predicates/index.cjs");
|
|
10
11
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
11
12
|
const Visitor = _stampit.default.init(function _Visitor() {
|
|
12
13
|
const references = new WeakMap();
|
|
@@ -61,7 +62,12 @@ const Visitor = _stampit.default.init(function _Visitor() {
|
|
|
61
62
|
/* eslint-enable */
|
|
62
63
|
|
|
63
64
|
const serializer = element => {
|
|
65
|
+
if (!(0, _index.isElement)(element)) return element;
|
|
66
|
+
|
|
67
|
+
// shortcut optimization for certain element types
|
|
68
|
+
if ((0, _index.isStringElement)(element) || (0, _index.isNumberElement)(element) || (0, _index.isBooleanElement)(element) || (0, _index.isNullElement)(element)) {
|
|
69
|
+
return element.toValue();
|
|
70
|
+
}
|
|
64
71
|
return (0, _visitor.visit)(element, Visitor());
|
|
65
72
|
};
|
|
66
|
-
var _default = serializer;
|
|
67
|
-
exports.default = _default;
|
|
73
|
+
var _default = exports.default = serializer;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.visit = void 0;
|
|
5
5
|
var _ramda = require("ramda");
|
|
6
|
-
var _visitor = require("
|
|
6
|
+
var _visitor = require("../../../traversal/visitor.cjs");
|
|
7
7
|
const nodeTypeGetter = node => {
|
|
8
8
|
if (typeof (node == null ? void 0 : node.type) === 'string') {
|
|
9
9
|
return node.type;
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
6
|
var _stampit = _interopRequireDefault(require("stampit"));
|
|
7
|
-
var _visitor = require("
|
|
7
|
+
var _visitor = require("../../traversal/visitor.cjs");
|
|
8
8
|
var _index = _interopRequireDefault(require("./value/index.cjs"));
|
|
9
9
|
const YamlVisitor = (0, _stampit.default)({
|
|
10
10
|
props: {
|
|
@@ -88,5 +88,4 @@ const serializer = (element, {
|
|
|
88
88
|
(0, _visitor.visit)(element, visitor);
|
|
89
89
|
return visitor.result;
|
|
90
90
|
};
|
|
91
|
-
var _default = serializer;
|
|
92
|
-
exports.default = _default;
|
|
91
|
+
var _default = exports.default = serializer;
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports.default = void 0;
|
|
6
6
|
var _stampit = _interopRequireDefault(require("stampit"));
|
|
7
|
-
var _visitor = require("
|
|
7
|
+
var _visitor = require("../traversal/visitor.cjs");
|
|
8
8
|
const SymbolicExpressionsVisitor = (0, _stampit.default)({
|
|
9
9
|
props: {
|
|
10
10
|
nestingLevel: 0,
|
|
@@ -34,5 +34,4 @@ const sexprs = element => {
|
|
|
34
34
|
(0, _visitor.visit)(element, visitor);
|
|
35
35
|
return visitor.result;
|
|
36
36
|
};
|
|
37
|
-
var _default = sexprs;
|
|
38
|
-
exports.default = _default;
|
|
37
|
+
var _default = exports.default = sexprs;
|
|
@@ -0,0 +1,15 @@
|
|
|
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 _namespace = _interopRequireDefault(require("../namespace.cjs"));
|
|
7
|
+
var _dehydrate = _interopRequireDefault(require("./dehydrate.cjs"));
|
|
8
|
+
/**
|
|
9
|
+
* Create a refracted string representation of an Element.
|
|
10
|
+
*/
|
|
11
|
+
const toString = (element, namespace = _namespace.default) => {
|
|
12
|
+
const refractStructure = (0, _dehydrate.default)(element, namespace);
|
|
13
|
+
return JSON.stringify(refractStructure);
|
|
14
|
+
};
|
|
15
|
+
var _default = exports.default = toString;
|
package/cjs/traversal/filter.cjs
CHANGED
package/cjs/traversal/find.cjs
CHANGED
|
@@ -8,6 +8,7 @@ var _ramda = require("ramda");
|
|
|
8
8
|
var _ramdaAdjunct = require("ramda-adjunct");
|
|
9
9
|
var _index = require("../predicates/index.cjs");
|
|
10
10
|
var _visitor = require("./visitor.cjs");
|
|
11
|
+
var _index2 = _interopRequireDefault(require("../transformers/serializers/value/index.cjs"));
|
|
11
12
|
const Visitor = (0, _stampit.default)({
|
|
12
13
|
props: {
|
|
13
14
|
result: [],
|
|
@@ -30,8 +31,8 @@ const Visitor = (0, _stampit.default)({
|
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
const sourceMapElement = element.getMetaProperty('sourceMap');
|
|
33
|
-
const charStart = sourceMapElement.positionStart.get(2)
|
|
34
|
-
const charEnd = sourceMapElement.positionEnd.get(2)
|
|
34
|
+
const charStart = (0, _index2.default)(sourceMapElement.positionStart.get(2));
|
|
35
|
+
const charEnd = (0, _index2.default)(sourceMapElement.positionEnd.get(2));
|
|
35
36
|
const isWithinOffsetRange = this.offset >= charStart && (this.offset < charEnd || this.includeRightBound && this.offset <= charEnd);
|
|
36
37
|
if (isWithinOffsetRange) {
|
|
37
38
|
this.result.push(element);
|
|
@@ -63,5 +64,4 @@ const findAtOffset = (options, element) => {
|
|
|
63
64
|
(0, _visitor.visit)(element, visitor);
|
|
64
65
|
return (0, _ramda.last)(visitor.result);
|
|
65
66
|
};
|
|
66
|
-
var _default = findAtOffset;
|
|
67
|
-
exports.default = _default;
|
|
67
|
+
var _default = exports.default = findAtOffset;
|
package/cjs/traversal/reject.cjs
CHANGED
|
@@ -9,5 +9,4 @@ var _filter = _interopRequireDefault(require("./filter.cjs"));
|
|
|
9
9
|
const reject = (predicate, element) => {
|
|
10
10
|
return (0, _filter.default)((0, _ramda.complement)(predicate), element);
|
|
11
11
|
};
|
|
12
|
-
var _default = reject;
|
|
13
|
-
exports.default = _default;
|
|
12
|
+
var _default = exports.default = reject;
|
package/cjs/traversal/some.cjs
CHANGED
|
@@ -9,5 +9,4 @@ var _find = _interopRequireDefault(require("./find.cjs"));
|
|
|
9
9
|
const some = (predicate, element) => {
|
|
10
10
|
return (0, _ramdaAdjunct.isNotUndefined)((0, _find.default)(predicate, element));
|
|
11
11
|
};
|
|
12
|
-
var _default = some;
|
|
13
|
-
exports.default = _default;
|
|
12
|
+
var _default = exports.default = some;
|
|
@@ -8,7 +8,7 @@ var _ramda = require("ramda");
|
|
|
8
8
|
var _ramdaAdjunct = require("ramda-adjunct");
|
|
9
9
|
var _visitor = require("./visitor.cjs");
|
|
10
10
|
var _index = require("../predicates/index.cjs");
|
|
11
|
-
const CallbackVisitor = (0, _stampit.default)(_visitor.PredicateVisitor, {
|
|
11
|
+
const CallbackVisitor = exports.CallbackVisitor = (0, _stampit.default)(_visitor.PredicateVisitor, {
|
|
12
12
|
props: {
|
|
13
13
|
callback: _ramdaAdjunct.noop
|
|
14
14
|
},
|
|
@@ -30,7 +30,6 @@ const CallbackVisitor = (0, _stampit.default)(_visitor.PredicateVisitor, {
|
|
|
30
30
|
});
|
|
31
31
|
|
|
32
32
|
// executes the callback on this element and all descendants
|
|
33
|
-
exports.CallbackVisitor = CallbackVisitor;
|
|
34
33
|
const traverse = (options, element) => {
|
|
35
34
|
let callback;
|
|
36
35
|
let predicate;
|
|
@@ -49,5 +48,4 @@ const traverse = (options, element) => {
|
|
|
49
48
|
// @ts-ignore
|
|
50
49
|
(0, _visitor.visit)(element, visitor);
|
|
51
50
|
};
|
|
52
|
-
var _default = traverse;
|
|
53
|
-
exports.default = _default;
|
|
51
|
+
var _default = exports.default = traverse;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
4
|
exports.__esModule = true;
|
|
5
|
-
exports.visit = exports.keyMapDefault = exports.isNode = exports.getNodeType = exports.PredicateVisitor = void 0;
|
|
5
|
+
exports.visit = exports.keyMapDefault = exports.isNode = exports.getNodeType = exports.cloneNode = exports.PredicateVisitor = void 0;
|
|
6
6
|
var _stampit = _interopRequireDefault(require("stampit"));
|
|
7
7
|
var _ramda = require("ramda");
|
|
8
8
|
var _ramdaAdjunct = require("ramda-adjunct");
|
|
@@ -10,6 +10,7 @@ var _apidomAst = require("@swagger-api/apidom-ast");
|
|
|
10
10
|
exports.BREAK = _apidomAst.BREAK;
|
|
11
11
|
exports.mergeAllVisitors = _apidomAst.mergeAllVisitors;
|
|
12
12
|
var _index = require("../predicates/index.cjs");
|
|
13
|
+
var _index2 = require("../clone/index.cjs");
|
|
13
14
|
// getNodeType :: Node -> String
|
|
14
15
|
const getNodeType = element => {
|
|
15
16
|
/*
|
|
@@ -24,11 +25,19 @@ const getNodeType = element => {
|
|
|
24
25
|
/* eslint-enable */
|
|
25
26
|
};
|
|
26
27
|
|
|
27
|
-
//
|
|
28
|
+
// cloneNode :: a -> a
|
|
28
29
|
exports.getNodeType = getNodeType;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
const cloneNode = node => {
|
|
31
|
+
if ((0, _index.isElement)(node)) {
|
|
32
|
+
return (0, _index2.cloneShallow)(node);
|
|
33
|
+
}
|
|
34
|
+
return (0, _apidomAst.cloneNode)(node);
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
// isNode :: Node -> Boolean
|
|
38
|
+
exports.cloneNode = cloneNode;
|
|
39
|
+
const isNode = exports.isNode = (0, _ramda.pipe)(getNodeType, _ramdaAdjunct.isString);
|
|
40
|
+
const keyMapDefault = exports.keyMapDefault = {
|
|
32
41
|
ObjectElement: ['content'],
|
|
33
42
|
ArrayElement: ['content'],
|
|
34
43
|
MemberElement: ['key', 'value'],
|
|
@@ -43,8 +52,7 @@ const keyMapDefault = {
|
|
|
43
52
|
ParseResultElement: ['content'],
|
|
44
53
|
SourceMap: ['content']
|
|
45
54
|
};
|
|
46
|
-
exports.
|
|
47
|
-
const PredicateVisitor = (0, _stampit.default)({
|
|
55
|
+
const PredicateVisitor = exports.PredicateVisitor = (0, _stampit.default)({
|
|
48
56
|
props: {
|
|
49
57
|
result: [],
|
|
50
58
|
predicate: _ramda.F,
|
|
@@ -76,7 +84,6 @@ const PredicateVisitor = (0, _stampit.default)({
|
|
|
76
84
|
});
|
|
77
85
|
|
|
78
86
|
// @ts-ignore
|
|
79
|
-
exports.PredicateVisitor = PredicateVisitor;
|
|
80
87
|
const visit = (root,
|
|
81
88
|
// @ts-ignore
|
|
82
89
|
visitor, {
|
|
@@ -90,6 +97,7 @@ visitor, {
|
|
|
90
97
|
// @ts-ignore
|
|
91
98
|
nodeTypeGetter: getNodeType,
|
|
92
99
|
nodePredicate: isNode,
|
|
100
|
+
nodeCloneFn: cloneNode,
|
|
93
101
|
...rest
|
|
94
102
|
});
|
|
95
103
|
};
|
|
@@ -109,6 +117,7 @@ visitor, {
|
|
|
109
117
|
// @ts-ignore
|
|
110
118
|
nodeTypeGetter: getNodeType,
|
|
111
119
|
nodePredicate: isNode,
|
|
120
|
+
nodeCloneFn: cloneNode,
|
|
112
121
|
...rest
|
|
113
122
|
});
|
|
114
123
|
};
|