@swagger-api/apidom-ast 0.68.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 +352 -0
- package/LICENSES/Apache-2.0.txt +202 -0
- package/LICENSES/MIT.txt +9 -0
- package/NOTICE +57 -0
- package/README.md +98 -0
- package/cjs/Error.cjs +25 -0
- package/cjs/Literal.cjs +22 -0
- package/cjs/Node.cjs +46 -0
- package/cjs/ParseResult.cjs +22 -0
- package/cjs/Position.cjs +46 -0
- package/cjs/index.cjs +113 -0
- package/cjs/json/nodes/JsonArray.cjs +21 -0
- package/cjs/json/nodes/JsonDocument.cjs +22 -0
- package/cjs/json/nodes/JsonEscapeSequence.cjs +14 -0
- package/cjs/json/nodes/JsonFalse.cjs +14 -0
- package/cjs/json/nodes/JsonKey.cjs +14 -0
- package/cjs/json/nodes/JsonNode.cjs +10 -0
- package/cjs/json/nodes/JsonNull.cjs +14 -0
- package/cjs/json/nodes/JsonNumber.cjs +14 -0
- package/cjs/json/nodes/JsonObject.cjs +21 -0
- package/cjs/json/nodes/JsonProperty.cjs +27 -0
- package/cjs/json/nodes/JsonString.cjs +27 -0
- package/cjs/json/nodes/JsonStringContent.cjs +14 -0
- package/cjs/json/nodes/JsonTrue.cjs +14 -0
- package/cjs/json/nodes/JsonValue.cjs +22 -0
- package/cjs/json/nodes/predicates.cjs +29 -0
- package/cjs/predicates.cjs +14 -0
- package/cjs/traversal/visitor.cjs +493 -0
- package/cjs/yaml/nodes/YamlAlias.cjs +22 -0
- package/cjs/yaml/nodes/YamlAnchor.cjs +22 -0
- package/cjs/yaml/nodes/YamlCollection.cjs +10 -0
- package/cjs/yaml/nodes/YamlComment.cjs +22 -0
- package/cjs/yaml/nodes/YamlDirective.cjs +30 -0
- package/cjs/yaml/nodes/YamlDocument.cjs +14 -0
- package/cjs/yaml/nodes/YamlKeyValuePair.cjs +40 -0
- package/cjs/yaml/nodes/YamlMapping.cjs +24 -0
- package/cjs/yaml/nodes/YamlNode.cjs +28 -0
- package/cjs/yaml/nodes/YamlScalar.cjs +22 -0
- package/cjs/yaml/nodes/YamlSequence.cjs +27 -0
- package/cjs/yaml/nodes/YamlStream.cjs +26 -0
- package/cjs/yaml/nodes/YamlStyle.cjs +33 -0
- package/cjs/yaml/nodes/YamlTag.cjs +32 -0
- package/cjs/yaml/nodes/predicates.cjs +25 -0
- package/cjs/yaml/schemas/ScalarTag.cjs +43 -0
- package/cjs/yaml/schemas/Tag.cjs +14 -0
- package/cjs/yaml/schemas/canonical-format.cjs +129 -0
- package/cjs/yaml/schemas/failsafe/GenericMapping.cjs +29 -0
- package/cjs/yaml/schemas/failsafe/GenericSequence.cjs +29 -0
- package/cjs/yaml/schemas/failsafe/GenericString.cjs +24 -0
- package/cjs/yaml/schemas/failsafe/index.cjs +96 -0
- package/cjs/yaml/schemas/json/Boolean.cjs +30 -0
- package/cjs/yaml/schemas/json/FloatingPoint.cjs +30 -0
- package/cjs/yaml/schemas/json/Integer.cjs +30 -0
- package/cjs/yaml/schemas/json/Null.cjs +29 -0
- package/cjs/yaml/schemas/json/index.cjs +47 -0
- package/dist/apidom-ast.browser.js +21212 -0
- package/dist/apidom-ast.browser.min.js +2 -0
- package/dist/apidom-ast.browser.min.js.LICENSE.txt +6 -0
- package/es/Error.js +19 -0
- package/es/Literal.js +16 -0
- package/es/Node.js +40 -0
- package/es/ParseResult.js +16 -0
- package/es/Position.js +39 -0
- package/es/index.js +39 -0
- package/es/json/nodes/JsonArray.js +15 -0
- package/es/json/nodes/JsonDocument.js +16 -0
- package/es/json/nodes/JsonEscapeSequence.js +8 -0
- package/es/json/nodes/JsonFalse.js +8 -0
- package/es/json/nodes/JsonKey.js +8 -0
- package/es/json/nodes/JsonNode.js +4 -0
- package/es/json/nodes/JsonNull.js +8 -0
- package/es/json/nodes/JsonNumber.js +8 -0
- package/es/json/nodes/JsonObject.js +15 -0
- package/es/json/nodes/JsonProperty.js +21 -0
- package/es/json/nodes/JsonString.js +21 -0
- package/es/json/nodes/JsonStringContent.js +8 -0
- package/es/json/nodes/JsonTrue.js +8 -0
- package/es/json/nodes/JsonValue.js +16 -0
- package/es/json/nodes/predicates.js +13 -0
- package/es/predicates.js +5 -0
- package/es/traversal/visitor.js +483 -0
- package/es/yaml/nodes/YamlAlias.js +16 -0
- package/es/yaml/nodes/YamlAnchor.js +16 -0
- package/es/yaml/nodes/YamlCollection.js +4 -0
- package/es/yaml/nodes/YamlComment.js +16 -0
- package/es/yaml/nodes/YamlDirective.js +24 -0
- package/es/yaml/nodes/YamlDocument.js +8 -0
- package/es/yaml/nodes/YamlKeyValuePair.js +34 -0
- package/es/yaml/nodes/YamlMapping.js +18 -0
- package/es/yaml/nodes/YamlNode.js +22 -0
- package/es/yaml/nodes/YamlScalar.js +16 -0
- package/es/yaml/nodes/YamlSequence.js +21 -0
- package/es/yaml/nodes/YamlStream.js +20 -0
- package/es/yaml/nodes/YamlStyle.js +25 -0
- package/es/yaml/nodes/YamlTag.js +25 -0
- package/es/yaml/nodes/predicates.js +11 -0
- package/es/yaml/schemas/ScalarTag.js +37 -0
- package/es/yaml/schemas/Tag.js +8 -0
- package/es/yaml/schemas/canonical-format.js +122 -0
- package/es/yaml/schemas/failsafe/GenericMapping.js +23 -0
- package/es/yaml/schemas/failsafe/GenericSequence.js +23 -0
- package/es/yaml/schemas/failsafe/GenericString.js +18 -0
- package/es/yaml/schemas/failsafe/index.js +90 -0
- package/es/yaml/schemas/json/Boolean.js +24 -0
- package/es/yaml/schemas/json/FloatingPoint.js +24 -0
- package/es/yaml/schemas/json/Integer.js +24 -0
- package/es/yaml/schemas/json/Null.js +23 -0
- package/es/yaml/schemas/json/index.js +41 -0
- package/package.json +62 -0
- package/types/dist.d.ts +362 -0
package/README.md
ADDED
@@ -0,0 +1,98 @@
|
|
1
|
+
# @swagger-api/apidom-ast
|
2
|
+
|
3
|
+
`@swagger-api/apidom-ast` contains tools necessary for parsing stage of ApiDOM, specifically for syntactic analysis.
|
4
|
+
Syntactic analysis will take a stream of tokens and turn it into an AST representation.
|
5
|
+
Using the information in the tokens, this phase will reformat them as an AST which represents
|
6
|
+
the structure of input string in a way that makes it easier to work with.
|
7
|
+
|
8
|
+
`@swagger-api/apidom-ast` currently contains AST nodes for [JSON](https://www.json.org/json-en.html) and [YAML 1.2](https://yaml.org/spec/1.2/spec.html) formats.
|
9
|
+
|
10
|
+
## Installation
|
11
|
+
|
12
|
+
You can install this package via [npm CLI](https://docs.npmjs.com/cli) by running the following command:
|
13
|
+
|
14
|
+
```sh
|
15
|
+
$ npm install @swagger-api/apidom-ast
|
16
|
+
```
|
17
|
+
|
18
|
+
## Base AST Nodes
|
19
|
+
|
20
|
+
Base AST nodes are nodes that are supplementary to any specific AST nodes.
|
21
|
+
Having standardized AST of various formats (JSON/YAML) allows us to have common
|
22
|
+
syntactic analysis or transformation algorithms.
|
23
|
+
These nodes includes [Error](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/Error.ts), [Literal](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/Literal.ts), [Position](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/Position.ts), etc...
|
24
|
+
|
25
|
+
Along with base nodes there are [predicates](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/predicates.ts) that can assert on these nodes.
|
26
|
+
|
27
|
+
## JSON AST Nodes
|
28
|
+
|
29
|
+
Convenient for low lever CST parsers that don't come with it's onw AST nodes.
|
30
|
+
You can find list of JSON AST nodes in this [directory](https://github.com/swagger-api/apidom/tree/main/packages/apidom-ast/src/json/nodes).
|
31
|
+
|
32
|
+
## YAML AST Nodes
|
33
|
+
|
34
|
+
Convenient for low lever CST parsers that don't come with it's onw AST nodes.
|
35
|
+
You can find list of YAML AST nodes in this [directory](https://github.com/swagger-api/apidom/tree/main/packages/apidom-ast/src/yaml/nodes).
|
36
|
+
As YAML is very complex format, along with nodes we also expose implementation of YAML [Failsafe](https://github.com/swagger-api/apidom/tree/main/packages/apidom-ast/src/yaml/schemas/failsafe) and [JSON](https://github.com/swagger-api/apidom/tree/main/packages/apidom-ast/src/yaml/schemas/json) schemas
|
37
|
+
along with [formatters for canonical block scalars](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/yaml/schemas/canonical-format.ts).
|
38
|
+
|
39
|
+
## Traversal
|
40
|
+
|
41
|
+
`@swagger-api/apidom-ast` comes with its own traversal algorithm convenient for traversing [CST](https://en.wikipedia.org/wiki/Parse_tree) or [AST](https://en.wikipedia.org/wiki/AST).
|
42
|
+
|
43
|
+
### visit
|
44
|
+
|
45
|
+
[visit](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/visitor.ts#L214) will walk through an CST/AST using a depth first traversal, calling
|
46
|
+
the visitor's enter function at each node in the traversal, and calling the
|
47
|
+
leave function after visiting that node and all of its child nodes.
|
48
|
+
|
49
|
+
By returning different values from the enter and leave functions, the
|
50
|
+
behavior of the visitor can be altered, including skipping over a sub-tree of
|
51
|
+
the Node (by returning false), editing the Node Tree by returning a value or null
|
52
|
+
to remove the value, or to stop the whole traversal by returning [BREAK](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/visitor.ts#L64).
|
53
|
+
|
54
|
+
When using `visit` to edit an Node Tree, the original Node Tree will not be modified, and
|
55
|
+
a new version of the Node Tree with the changes applied will be returned from the
|
56
|
+
visit function.
|
57
|
+
|
58
|
+
```js
|
59
|
+
import { visit } from '@swagger-api/apidom-ast';
|
60
|
+
|
61
|
+
const tree = {
|
62
|
+
type: 'root',
|
63
|
+
children: [
|
64
|
+
{
|
65
|
+
type: 'child',
|
66
|
+
value: 'this is child node',
|
67
|
+
children: [],
|
68
|
+
},
|
69
|
+
],
|
70
|
+
};
|
71
|
+
|
72
|
+
const keyMap = {
|
73
|
+
root: ['children'],
|
74
|
+
};
|
75
|
+
|
76
|
+
const visitor = {
|
77
|
+
child(node) {
|
78
|
+
console.dir(node.value); // => 'this is child node'
|
79
|
+
},
|
80
|
+
};
|
81
|
+
|
82
|
+
const newTree = visit(tree, visitor, { keyMap }); // => tree{...}
|
83
|
+
```
|
84
|
+
|
85
|
+
Notice how we used 3rd parameter to `visit` function. Actually it can consume number of configuration
|
86
|
+
options which can change its behavior.
|
87
|
+
|
88
|
+
Configuration option | Type | Default | Description
|
89
|
+
--- | --- | --- | ---
|
90
|
+
<a name="keyMap"></a>`keyMap` | `Object` | `null` | Defines how nodes map to it's children.
|
91
|
+
<a name="state"></a>`state` | `Object` | `{}` | Additional state that is provided to the visitor. State is merged inti visitor object in following manner: `Object.assign(visitor, state)`
|
92
|
+
<a name="breakSymbol"></a>`breakSymbol` | `Object` | `{}` | Defines a symbol that can break the traversal. Symbol is compared by strict equality (`===`).
|
93
|
+
<a name="visitFnGetter"></a>`visitFnGetter` | `Function` | [getVisitFn](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/visitor.ts#L33) | Function that extract appropriate method from the visitor given specific Node type.
|
94
|
+
<a name="nodeTypeGetter"></a>`nodeTypeGetter` | `Function` | [getNodeType](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/visitor.ts#L67) | Node type extractor function.
|
95
|
+
<a name="nodePredicate"><a/>`nodePredicate` | `Function` | [isNode](https://github.com/swagger-api/apidom/blob/main/packages/apidom-ast/src/visitor.ts#L70) | Predicate that checks if particular Node can be really considered a Node.
|
96
|
+
<a name="detectCycles"><a/>`detectCycles` | `Boolean` | `true` | If the structure that needs to be traversed is represented as directed cyclic graph, `visit` will skip Nodes that have already been traversed to avoid infinite recursion.
|
97
|
+
|
98
|
+
|
package/cjs/Error.cjs
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _Node = _interopRequireDefault(require("./Node.cjs"));
|
8
|
+
const Error = (0, _stampit.default)(_Node.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'error'
|
11
|
+
},
|
12
|
+
props: {
|
13
|
+
value: null,
|
14
|
+
isUnexpected: false
|
15
|
+
},
|
16
|
+
init({
|
17
|
+
value = null,
|
18
|
+
isUnexpected = false
|
19
|
+
} = {}) {
|
20
|
+
this.value = value;
|
21
|
+
this.isUnexpected = isUnexpected;
|
22
|
+
}
|
23
|
+
});
|
24
|
+
var _default = Error;
|
25
|
+
exports.default = _default;
|
package/cjs/Literal.cjs
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _Node = _interopRequireDefault(require("./Node.cjs"));
|
8
|
+
const Literal = (0, _stampit.default)(_Node.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'literal'
|
11
|
+
},
|
12
|
+
props: {
|
13
|
+
value: null
|
14
|
+
},
|
15
|
+
init({
|
16
|
+
value = null
|
17
|
+
} = {}) {
|
18
|
+
this.value = value;
|
19
|
+
}
|
20
|
+
});
|
21
|
+
var _default = Literal;
|
22
|
+
exports.default = _default;
|
package/cjs/Node.cjs
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
const Node = (0, _stampit.default)({
|
8
|
+
props: {
|
9
|
+
type: null,
|
10
|
+
position: null,
|
11
|
+
children: []
|
12
|
+
},
|
13
|
+
// eslint-disable-next-line @typescript-eslint/default-param-last
|
14
|
+
init({
|
15
|
+
children = [],
|
16
|
+
position = null,
|
17
|
+
isMissing = false
|
18
|
+
} = {}, {
|
19
|
+
stamp = {}
|
20
|
+
}) {
|
21
|
+
this.type = stamp.type;
|
22
|
+
this.isMissing = isMissing;
|
23
|
+
this.children = children;
|
24
|
+
this.position = position;
|
25
|
+
},
|
26
|
+
methods: {
|
27
|
+
// creates shallow clone of node
|
28
|
+
clone() {
|
29
|
+
// 1. copy has same prototype as orig
|
30
|
+
const copy = Object.create(Object.getPrototypeOf(this));
|
31
|
+
|
32
|
+
// 2. copy has all of orig’s properties
|
33
|
+
Object.getOwnPropertyNames(this) // (1)
|
34
|
+
.forEach(propKey => {
|
35
|
+
// (2)
|
36
|
+
const descriptor = Object.getOwnPropertyDescriptor(this, propKey); // (3)
|
37
|
+
// @ts-ignore
|
38
|
+
Object.defineProperty(copy, propKey, descriptor); // (4)
|
39
|
+
});
|
40
|
+
|
41
|
+
return copy;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
});
|
45
|
+
var _default = Node;
|
46
|
+
exports.default = _default;
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _ramda = require("ramda");
|
8
|
+
var _Node = _interopRequireDefault(require("./Node.cjs"));
|
9
|
+
const ParseResult = (0, _stampit.default)(_Node.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'parseResult'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
// @ts-ignore
|
15
|
+
get rootNode() {
|
16
|
+
// @ts-ignore
|
17
|
+
return (0, _ramda.head)(this.children);
|
18
|
+
}
|
19
|
+
}
|
20
|
+
});
|
21
|
+
var _default = ParseResult;
|
22
|
+
exports.default = _default;
|
package/cjs/Position.cjs
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = exports.Point = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
const Point = (0, _stampit.default)({
|
8
|
+
statics: {
|
9
|
+
type: 'point'
|
10
|
+
},
|
11
|
+
props: {
|
12
|
+
type: 'point',
|
13
|
+
row: null,
|
14
|
+
column: null,
|
15
|
+
char: null
|
16
|
+
},
|
17
|
+
init({
|
18
|
+
row = null,
|
19
|
+
column = null,
|
20
|
+
char = null
|
21
|
+
} = {}) {
|
22
|
+
this.row = row;
|
23
|
+
this.column = column;
|
24
|
+
this.char = char;
|
25
|
+
}
|
26
|
+
});
|
27
|
+
exports.Point = Point;
|
28
|
+
const Position = (0, _stampit.default)({
|
29
|
+
statics: {
|
30
|
+
type: 'position'
|
31
|
+
},
|
32
|
+
props: {
|
33
|
+
type: 'position',
|
34
|
+
start: null,
|
35
|
+
end: null
|
36
|
+
},
|
37
|
+
init({
|
38
|
+
start = null,
|
39
|
+
end = null
|
40
|
+
} = {}) {
|
41
|
+
this.start = start;
|
42
|
+
this.end = end;
|
43
|
+
}
|
44
|
+
});
|
45
|
+
var _default = Position;
|
46
|
+
exports.default = _default;
|
package/cjs/index.cjs
ADDED
@@ -0,0 +1,113 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.visit = exports.mergeAllVisitors = exports.isYamlTag = exports.isYamlStream = exports.isYamlSequence = exports.isYamlScalar = exports.isYamlMapping = exports.isYamlKeyValuePair = exports.isYamlDocument = exports.isYamlDirective = exports.isYamlAlias = exports.isPosition = exports.isPoint = exports.isParseResult = exports.isNode = exports.isLiteral = exports.isJsonTrue = exports.isJsonStringContent = exports.isJsonString = exports.isJsonProperty = exports.isJsonObject = exports.isJsonNumber = exports.isJsonNull = exports.isJsonKey = exports.isJsonFalse = exports.isJsonEscapeSequence = exports.isJsonDocument = exports.isJsonArray = exports.getVisitFn = exports.getNodeType = exports.YamlTag = exports.YamlStyleGroup = exports.YamlStyle = exports.YamlStream = exports.YamlSequence = exports.YamlScalar = exports.YamlNodeKind = exports.YamlNode = exports.YamlMapping = exports.YamlKeyValuePair = exports.YamlJsonSchema = exports.YamlFailsafeSchema = exports.YamlDocument = exports.YamlDirective = exports.YamlComment = exports.YamlCollection = exports.YamlAnchor = exports.YamlAlias = exports.Position = exports.Point = exports.ParseResult = exports.Literal = exports.JsonValue = exports.JsonTrue = exports.JsonStringContent = exports.JsonString = exports.JsonProperty = exports.JsonObject = exports.JsonNumber = exports.JsonNull = exports.JsonNode = exports.JsonKey = exports.JsonFalse = exports.JsonEscapeSequence = exports.JsonDocument = exports.JsonArray = exports.Error = exports.BREAK = void 0;
|
6
|
+
var _JsonNode = _interopRequireDefault(require("./json/nodes/JsonNode.cjs"));
|
7
|
+
exports.JsonNode = _JsonNode.default;
|
8
|
+
var _JsonDocument = _interopRequireDefault(require("./json/nodes/JsonDocument.cjs"));
|
9
|
+
exports.JsonDocument = _JsonDocument.default;
|
10
|
+
var _JsonObject = _interopRequireDefault(require("./json/nodes/JsonObject.cjs"));
|
11
|
+
exports.JsonObject = _JsonObject.default;
|
12
|
+
var _JsonProperty = _interopRequireDefault(require("./json/nodes/JsonProperty.cjs"));
|
13
|
+
exports.JsonProperty = _JsonProperty.default;
|
14
|
+
var _JsonArray = _interopRequireDefault(require("./json/nodes/JsonArray.cjs"));
|
15
|
+
exports.JsonArray = _JsonArray.default;
|
16
|
+
var _JsonValue = _interopRequireDefault(require("./json/nodes/JsonValue.cjs"));
|
17
|
+
exports.JsonValue = _JsonValue.default;
|
18
|
+
var _JsonKey = _interopRequireDefault(require("./json/nodes/JsonKey.cjs"));
|
19
|
+
exports.JsonKey = _JsonKey.default;
|
20
|
+
var _JsonString = _interopRequireDefault(require("./json/nodes/JsonString.cjs"));
|
21
|
+
exports.JsonString = _JsonString.default;
|
22
|
+
var _JsonStringContent = _interopRequireDefault(require("./json/nodes/JsonStringContent.cjs"));
|
23
|
+
exports.JsonStringContent = _JsonStringContent.default;
|
24
|
+
var _JsonEscapeSequence = _interopRequireDefault(require("./json/nodes/JsonEscapeSequence.cjs"));
|
25
|
+
exports.JsonEscapeSequence = _JsonEscapeSequence.default;
|
26
|
+
var _JsonNumber = _interopRequireDefault(require("./json/nodes/JsonNumber.cjs"));
|
27
|
+
exports.JsonNumber = _JsonNumber.default;
|
28
|
+
var _JsonTrue = _interopRequireDefault(require("./json/nodes/JsonTrue.cjs"));
|
29
|
+
exports.JsonTrue = _JsonTrue.default;
|
30
|
+
var _JsonFalse = _interopRequireDefault(require("./json/nodes/JsonFalse.cjs"));
|
31
|
+
exports.JsonFalse = _JsonFalse.default;
|
32
|
+
var _JsonNull = _interopRequireDefault(require("./json/nodes/JsonNull.cjs"));
|
33
|
+
exports.JsonNull = _JsonNull.default;
|
34
|
+
var _predicates = require("./json/nodes/predicates.cjs");
|
35
|
+
exports.isJsonDocument = _predicates.isDocument;
|
36
|
+
exports.isJsonFalse = _predicates.isFalse;
|
37
|
+
exports.isJsonProperty = _predicates.isProperty;
|
38
|
+
exports.isJsonStringContent = _predicates.isStringContent;
|
39
|
+
exports.isJsonEscapeSequence = _predicates.isEscapeSequence;
|
40
|
+
exports.isJsonArray = _predicates.isArray;
|
41
|
+
exports.isJsonKey = _predicates.isKey;
|
42
|
+
exports.isJsonNull = _predicates.isNull;
|
43
|
+
exports.isJsonNumber = _predicates.isNumber;
|
44
|
+
exports.isJsonObject = _predicates.isObject;
|
45
|
+
exports.isJsonString = _predicates.isString;
|
46
|
+
exports.isJsonTrue = _predicates.isTrue;
|
47
|
+
var _YamlAlias = _interopRequireDefault(require("./yaml/nodes/YamlAlias.cjs"));
|
48
|
+
exports.YamlAlias = _YamlAlias.default;
|
49
|
+
var _YamlCollection = _interopRequireDefault(require("./yaml/nodes/YamlCollection.cjs"));
|
50
|
+
exports.YamlCollection = _YamlCollection.default;
|
51
|
+
var _YamlComment = _interopRequireDefault(require("./yaml/nodes/YamlComment.cjs"));
|
52
|
+
exports.YamlComment = _YamlComment.default;
|
53
|
+
var _YamlDirective = _interopRequireDefault(require("./yaml/nodes/YamlDirective.cjs"));
|
54
|
+
exports.YamlDirective = _YamlDirective.default;
|
55
|
+
var _YamlDocument = _interopRequireDefault(require("./yaml/nodes/YamlDocument.cjs"));
|
56
|
+
exports.YamlDocument = _YamlDocument.default;
|
57
|
+
var _YamlKeyValuePair = _interopRequireDefault(require("./yaml/nodes/YamlKeyValuePair.cjs"));
|
58
|
+
exports.YamlKeyValuePair = _YamlKeyValuePair.default;
|
59
|
+
var _YamlMapping = _interopRequireDefault(require("./yaml/nodes/YamlMapping.cjs"));
|
60
|
+
exports.YamlMapping = _YamlMapping.default;
|
61
|
+
var _YamlNode = _interopRequireDefault(require("./yaml/nodes/YamlNode.cjs"));
|
62
|
+
exports.YamlNode = _YamlNode.default;
|
63
|
+
var _YamlScalar = _interopRequireDefault(require("./yaml/nodes/YamlScalar.cjs"));
|
64
|
+
exports.YamlScalar = _YamlScalar.default;
|
65
|
+
var _YamlSequence = _interopRequireDefault(require("./yaml/nodes/YamlSequence.cjs"));
|
66
|
+
exports.YamlSequence = _YamlSequence.default;
|
67
|
+
var _YamlStream = _interopRequireDefault(require("./yaml/nodes/YamlStream.cjs"));
|
68
|
+
exports.YamlStream = _YamlStream.default;
|
69
|
+
var _YamlTag = _interopRequireWildcard(require("./yaml/nodes/YamlTag.cjs"));
|
70
|
+
exports.YamlTag = _YamlTag.default;
|
71
|
+
exports.YamlNodeKind = _YamlTag.YamlNodeKind;
|
72
|
+
var _YamlAnchor = _interopRequireDefault(require("./yaml/nodes/YamlAnchor.cjs"));
|
73
|
+
exports.YamlAnchor = _YamlAnchor.default;
|
74
|
+
var _YamlStyle = require("./yaml/nodes/YamlStyle.cjs");
|
75
|
+
exports.YamlStyle = _YamlStyle.YamlStyle;
|
76
|
+
exports.YamlStyleGroup = _YamlStyle.YamlStyleGroup;
|
77
|
+
var _index = _interopRequireDefault(require("./yaml/schemas/failsafe/index.cjs"));
|
78
|
+
exports.YamlFailsafeSchema = _index.default;
|
79
|
+
var _index2 = _interopRequireDefault(require("./yaml/schemas/json/index.cjs"));
|
80
|
+
exports.YamlJsonSchema = _index2.default;
|
81
|
+
var _predicates2 = require("./yaml/nodes/predicates.cjs");
|
82
|
+
exports.isYamlAlias = _predicates2.isAlias;
|
83
|
+
exports.isYamlKeyValuePair = _predicates2.isKeyValuePair;
|
84
|
+
exports.isYamlDirective = _predicates2.isDirective;
|
85
|
+
exports.isYamlDocument = _predicates2.isDocument;
|
86
|
+
exports.isYamlMapping = _predicates2.isMapping;
|
87
|
+
exports.isYamlScalar = _predicates2.isScalar;
|
88
|
+
exports.isYamlSequence = _predicates2.isSequence;
|
89
|
+
exports.isYamlStream = _predicates2.isStream;
|
90
|
+
exports.isYamlTag = _predicates2.isTag;
|
91
|
+
var _Literal = _interopRequireDefault(require("./Literal.cjs"));
|
92
|
+
exports.Literal = _Literal.default;
|
93
|
+
var _Position = _interopRequireWildcard(require("./Position.cjs"));
|
94
|
+
exports.Point = _Position.Point;
|
95
|
+
exports.Position = _Position.default;
|
96
|
+
var _Error = _interopRequireDefault(require("./Error.cjs"));
|
97
|
+
exports.Error = _Error.default;
|
98
|
+
var _ParseResult = _interopRequireDefault(require("./ParseResult.cjs"));
|
99
|
+
exports.ParseResult = _ParseResult.default;
|
100
|
+
var _predicates3 = require("./predicates.cjs");
|
101
|
+
exports.isParseResult = _predicates3.isParseResult;
|
102
|
+
exports.isLiteral = _predicates3.isLiteral;
|
103
|
+
exports.isPoint = _predicates3.isPoint;
|
104
|
+
exports.isPosition = _predicates3.isPosition;
|
105
|
+
var _visitor = require("./traversal/visitor.cjs");
|
106
|
+
exports.getVisitFn = _visitor.getVisitFn;
|
107
|
+
exports.BREAK = _visitor.BREAK;
|
108
|
+
exports.mergeAllVisitors = _visitor.mergeAll;
|
109
|
+
exports.visit = _visitor.visit;
|
110
|
+
exports.getNodeType = _visitor.getNodeType;
|
111
|
+
exports.isNode = _visitor.isNode;
|
112
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
113
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
@@ -0,0 +1,21 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
8
|
+
var _predicates = require("./predicates.cjs");
|
9
|
+
const JsonArray = (0, _stampit.default)(_JsonNode.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'array'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
get items() {
|
15
|
+
// @ts-ignore
|
16
|
+
return this.children.filter(node => (0, _predicates.isFalse)(node) || (0, _predicates.isTrue)(node) || (0, _predicates.isNull)(node) || (0, _predicates.isNumber)(node) || (0, _predicates.isString)(node) || (0, _predicates.isArray)(node) || _predicates.isObject);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
});
|
20
|
+
var _default = JsonArray;
|
21
|
+
exports.default = _default;
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _ramda = require("ramda");
|
8
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
9
|
+
const JsonDocument = (0, _stampit.default)(_JsonNode.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'document'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
// @ts-ignore
|
15
|
+
get child() {
|
16
|
+
// @ts-ignore
|
17
|
+
return (0, _ramda.head)(this.children);
|
18
|
+
}
|
19
|
+
}
|
20
|
+
});
|
21
|
+
var _default = JsonDocument;
|
22
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonEscapeSequence = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'escapeSequence'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonEscapeSequence;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonFalse = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'false'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonFalse;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonString = _interopRequireDefault(require("./JsonString.cjs"));
|
8
|
+
const JsonKey = (0, _stampit.default)(_JsonString.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'key'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonKey;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _Node = _interopRequireDefault(require("../../Node.cjs"));
|
8
|
+
const JsonNode = (0, _stampit.default)(_Node.default);
|
9
|
+
var _default = JsonNode;
|
10
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonNull = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'null'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonNull;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonNumber = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'number'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonNumber;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,21 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
8
|
+
var _predicates = require("./predicates.cjs");
|
9
|
+
const JsonObject = (0, _stampit.default)(_JsonNode.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'object'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
get properties() {
|
15
|
+
// @ts-ignore
|
16
|
+
return this.children.filter(_predicates.isProperty);
|
17
|
+
}
|
18
|
+
}
|
19
|
+
});
|
20
|
+
var _default = JsonObject;
|
21
|
+
exports.default = _default;
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
8
|
+
var _predicates = require("./predicates.cjs");
|
9
|
+
const JsonProperty = (0, _stampit.default)(_JsonNode.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'property'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
// @ts-ignore
|
15
|
+
get key() {
|
16
|
+
// @ts-ignore
|
17
|
+
return this.children.find(_predicates.isKey);
|
18
|
+
},
|
19
|
+
// @ts-ignore
|
20
|
+
get value() {
|
21
|
+
// @ts-ignore
|
22
|
+
return this.children.find(node => (0, _predicates.isFalse)(node) || (0, _predicates.isTrue)(node) || (0, _predicates.isNull)(node) || (0, _predicates.isNumber)(node) || (0, _predicates.isString)(node) || (0, _predicates.isArray)(node) || (0, _predicates.isObject)(node));
|
23
|
+
}
|
24
|
+
}
|
25
|
+
});
|
26
|
+
var _default = JsonProperty;
|
27
|
+
exports.default = _default;
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
8
|
+
var _predicates = require("./predicates.cjs");
|
9
|
+
const JsonString = (0, _stampit.default)(_JsonNode.default, {
|
10
|
+
statics: {
|
11
|
+
type: 'string'
|
12
|
+
},
|
13
|
+
methods: {
|
14
|
+
get value() {
|
15
|
+
// @ts-ignore
|
16
|
+
if (this.children.length === 1) {
|
17
|
+
// @ts-ignore
|
18
|
+
return this.children[0].value;
|
19
|
+
}
|
20
|
+
return this.children
|
21
|
+
// @ts-ignore
|
22
|
+
.filter(node => (0, _predicates.isStringContent)(node) || (0, _predicates.isEscapeSequence)(node)).reduce((acc, cur) => acc + cur.value, '');
|
23
|
+
}
|
24
|
+
}
|
25
|
+
});
|
26
|
+
var _default = JsonString;
|
27
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonStringContent = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'stringContent'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonStringContent;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonValue = _interopRequireDefault(require("./JsonValue.cjs"));
|
8
|
+
const JsonTrue = (0, _stampit.default)(_JsonValue.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'true'
|
11
|
+
}
|
12
|
+
});
|
13
|
+
var _default = JsonTrue;
|
14
|
+
exports.default = _default;
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
4
|
+
exports.__esModule = true;
|
5
|
+
exports.default = void 0;
|
6
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
7
|
+
var _JsonNode = _interopRequireDefault(require("./JsonNode.cjs"));
|
8
|
+
const JsonValue = (0, _stampit.default)(_JsonNode.default, {
|
9
|
+
statics: {
|
10
|
+
type: 'value'
|
11
|
+
},
|
12
|
+
props: {
|
13
|
+
value: null
|
14
|
+
},
|
15
|
+
init({
|
16
|
+
value = null
|
17
|
+
} = {}) {
|
18
|
+
this.value = value;
|
19
|
+
}
|
20
|
+
});
|
21
|
+
var _default = JsonValue;
|
22
|
+
exports.default = _default;
|