@speclynx/apidom-core 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 +102 -330
- package/dist/apidom-core.browser.js +13110 -10559
- package/dist/apidom-core.browser.min.js +1 -1
- package/package.json +7 -12
- package/src/identity/index.cjs +8 -6
- package/src/identity/index.mjs +6 -4
- package/src/index.cjs +13 -79
- package/src/index.mjs +3 -13
- package/src/merge/deepmerge.cjs +22 -20
- package/src/merge/deepmerge.mjs +9 -7
- package/src/merge/merge-right.cjs +2 -2
- package/src/merge/merge-right.mjs +1 -1
- package/src/namespace.cjs +4 -36
- package/src/namespace.mjs +2 -30
- package/src/refractor/plugins/dispatcher/index.cjs +5 -12
- package/src/refractor/plugins/dispatcher/index.mjs +5 -12
- package/src/refractor/plugins/element-identity.cjs +2 -2
- package/src/refractor/plugins/element-identity.mjs +2 -2
- package/src/refractor/plugins/semantic-element-identity.cjs +5 -10
- package/src/refractor/plugins/semantic-element-identity.mjs +5 -9
- package/src/refractor/toolbox.cjs +22 -5
- package/src/refractor/toolbox.mjs +25 -6
- package/src/specification.cjs +51 -0
- package/src/specification.mjs +47 -0
- package/src/transcluder/Transcluder.cjs +8 -8
- package/src/transcluder/Transcluder.mjs +1 -1
- package/src/transformers/from.mjs +2 -2
- package/src/transformers/serializers/json.cjs +2 -2
- package/src/transformers/serializers/json.mjs +1 -1
- package/src/transformers/serializers/value.cjs +50 -0
- package/src/transformers/serializers/value.mjs +47 -0
- package/src/transformers/serializers/yaml-1-2.cjs +22 -18
- package/src/transformers/serializers/yaml-1-2.mjs +22 -18
- package/src/transformers/sexprs.cjs +20 -23
- package/src/transformers/sexprs.mjs +20 -22
- package/src/transformers/to-string.mjs +2 -2
- package/types/apidom-core.d.ts +67 -519
- package/src/clone/errors/CloneError.cjs +0 -22
- package/src/clone/errors/CloneError.mjs +0 -19
- package/src/clone/errors/DeepCloneError.cjs +0 -11
- package/src/clone/errors/DeepCloneError.mjs +0 -6
- package/src/clone/errors/ShallowCloneError.cjs +0 -11
- package/src/clone/errors/ShallowCloneError.mjs +0 -6
- package/src/clone/index.cjs +0 -155
- package/src/clone/index.mjs +0 -146
- package/src/elements/Annotation.cjs +0 -23
- package/src/elements/Annotation.mjs +0 -20
- package/src/elements/Comment.cjs +0 -15
- package/src/elements/Comment.mjs +0 -12
- package/src/elements/ParseResult.cjs +0 -53
- package/src/elements/ParseResult.mjs +0 -50
- package/src/elements/SourceMap.cjs +0 -39
- package/src/elements/SourceMap.mjs +0 -36
- package/src/predicates/helpers.cjs +0 -85
- package/src/predicates/helpers.mjs +0 -77
- package/src/predicates/index.cjs +0 -208
- package/src/predicates/index.mjs +0 -198
- package/src/refractor/index.cjs +0 -46
- package/src/refractor/index.mjs +0 -40
- package/src/refractor/registration.cjs +0 -34
- package/src/refractor/registration.mjs +0 -19
- package/src/transformers/serializers/value/ast/ephemeral-array.cjs +0 -21
- package/src/transformers/serializers/value/ast/ephemeral-array.mjs +0 -17
- package/src/transformers/serializers/value/ast/ephemeral-object.cjs +0 -20
- package/src/transformers/serializers/value/ast/ephemeral-object.mjs +0 -16
- package/src/transformers/serializers/value/index.cjs +0 -85
- package/src/transformers/serializers/value/index.mjs +0 -80
- package/src/transformers/serializers/value/visitor.cjs +0 -52
- package/src/transformers/serializers/value/visitor.mjs +0 -47
- package/src/traversal/filter.cjs +0 -18
- package/src/traversal/filter.mjs +0 -14
- package/src/traversal/find.cjs +0 -19
- package/src/traversal/find.mjs +0 -15
- package/src/traversal/findAtOffset.cjs +0 -65
- package/src/traversal/findAtOffset.mjs +0 -60
- package/src/traversal/index.cjs +0 -19
- package/src/traversal/index.mjs +0 -7
- package/src/traversal/parents.cjs +0 -38
- package/src/traversal/parents.mjs +0 -34
- package/src/traversal/reject.cjs +0 -15
- package/src/traversal/reject.mjs +0 -10
- package/src/traversal/some.cjs +0 -15
- package/src/traversal/some.mjs +0 -10
- package/src/traversal/traverse.cjs +0 -60
- package/src/traversal/traverse.mjs +0 -53
- package/src/traversal/visitor.cjs +0 -123
- package/src/traversal/visitor.mjs +0 -115
- package/src/util.cjs +0 -28
- package/src/util.mjs +0 -24
- package/types/minim.d.ts +0 -236
|
@@ -2,33 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.default = void 0;
|
|
5
|
-
var
|
|
6
|
-
class SymbolicExpressionsVisitor {
|
|
7
|
-
result = '';
|
|
8
|
-
nestingLevel = 0;
|
|
9
|
-
enter(element) {
|
|
10
|
-
const {
|
|
11
|
-
element: elementName
|
|
12
|
-
} = element;
|
|
13
|
-
const capitalizedElementName = elementName.charAt(0).toUpperCase() + elementName.slice(1);
|
|
14
|
-
const indent = ' '.repeat(this.nestingLevel);
|
|
15
|
-
this.result += this.nestingLevel > 0 ? '\n' : '';
|
|
16
|
-
this.result += `${indent}(${capitalizedElementName}Element`;
|
|
17
|
-
this.nestingLevel += 1;
|
|
18
|
-
}
|
|
19
|
-
leave() {
|
|
20
|
-
this.nestingLevel -= 1;
|
|
21
|
-
this.result += ')';
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
5
|
+
var _apidomTraverse = require("@speclynx/apidom-traverse");
|
|
25
6
|
/**
|
|
26
7
|
* Transforms ApiDOM into S-expressions (Symbolic Expressions).
|
|
27
8
|
* @public
|
|
28
9
|
*/
|
|
29
10
|
const sexprs = element => {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
11
|
+
let result = '';
|
|
12
|
+
let nestingLevel = 0;
|
|
13
|
+
(0, _apidomTraverse.traverse)(element, {
|
|
14
|
+
enter(path) {
|
|
15
|
+
const {
|
|
16
|
+
element: elementName
|
|
17
|
+
} = path.node;
|
|
18
|
+
const capitalizedElementName = elementName.charAt(0).toUpperCase() + elementName.slice(1);
|
|
19
|
+
const indent = ' '.repeat(nestingLevel);
|
|
20
|
+
result += nestingLevel > 0 ? '\n' : '';
|
|
21
|
+
result += `${indent}(${capitalizedElementName}Element`;
|
|
22
|
+
nestingLevel += 1;
|
|
23
|
+
},
|
|
24
|
+
leave() {
|
|
25
|
+
nestingLevel -= 1;
|
|
26
|
+
result += ')';
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return result;
|
|
33
30
|
};
|
|
34
31
|
var _default = exports.default = sexprs;
|
|
@@ -1,30 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
class SymbolicExpressionsVisitor {
|
|
3
|
-
result = '';
|
|
4
|
-
nestingLevel = 0;
|
|
5
|
-
enter(element) {
|
|
6
|
-
const {
|
|
7
|
-
element: elementName
|
|
8
|
-
} = element;
|
|
9
|
-
const capitalizedElementName = elementName.charAt(0).toUpperCase() + elementName.slice(1);
|
|
10
|
-
const indent = ' '.repeat(this.nestingLevel);
|
|
11
|
-
this.result += this.nestingLevel > 0 ? '\n' : '';
|
|
12
|
-
this.result += `${indent}(${capitalizedElementName}Element`;
|
|
13
|
-
this.nestingLevel += 1;
|
|
14
|
-
}
|
|
15
|
-
leave() {
|
|
16
|
-
this.nestingLevel -= 1;
|
|
17
|
-
this.result += ')';
|
|
18
|
-
}
|
|
19
|
-
}
|
|
1
|
+
import { traverse } from '@speclynx/apidom-traverse';
|
|
20
2
|
|
|
21
3
|
/**
|
|
22
4
|
* Transforms ApiDOM into S-expressions (Symbolic Expressions).
|
|
23
5
|
* @public
|
|
24
6
|
*/
|
|
25
7
|
const sexprs = element => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
8
|
+
let result = '';
|
|
9
|
+
let nestingLevel = 0;
|
|
10
|
+
traverse(element, {
|
|
11
|
+
enter(path) {
|
|
12
|
+
const {
|
|
13
|
+
element: elementName
|
|
14
|
+
} = path.node;
|
|
15
|
+
const capitalizedElementName = elementName.charAt(0).toUpperCase() + elementName.slice(1);
|
|
16
|
+
const indent = ' '.repeat(nestingLevel);
|
|
17
|
+
result += nestingLevel > 0 ? '\n' : '';
|
|
18
|
+
result += `${indent}(${capitalizedElementName}Element`;
|
|
19
|
+
nestingLevel += 1;
|
|
20
|
+
},
|
|
21
|
+
leave() {
|
|
22
|
+
nestingLevel -= 1;
|
|
23
|
+
result += ')';
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return result;
|
|
29
27
|
};
|
|
30
28
|
export default sexprs;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import defaultNamespace from "../namespace.mjs";
|
|
2
2
|
import dehydrate from "./dehydrate.mjs";
|
|
3
3
|
/**
|
|
4
4
|
* Create a refracted string representation of an Element.
|
|
5
5
|
* @public
|
|
6
6
|
*/
|
|
7
|
-
const toString = (element, namespace =
|
|
7
|
+
const toString = (element, namespace = defaultNamespace) => {
|
|
8
8
|
const refractStructure = dehydrate(element, namespace);
|
|
9
9
|
return JSON.stringify(refractStructure);
|
|
10
10
|
};
|