occam-dom 5.0.0 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/example.js +1495 -1305
- package/lib/example/constants.js +22 -0
- package/lib/example/utilities/query.js +23 -0
- package/lib/example/view/div/sizeable.js +2 -2
- package/lib/example/view/textarea/expressions.js +143 -0
- package/lib/example/view/textarea/outerNodes.js +147 -0
- package/lib/example/view/{input/expressionString.js → textarea/parseTree/inner.js} +43 -28
- package/lib/{expression/parser.js → example/view/textarea/parseTree/outer.js} +20 -28
- package/lib/example/view/textarea/parseTree.js +1 -19
- package/lib/example/view.js +26 -20
- package/lib/index.js +7 -19
- package/lib/node.js +302 -0
- package/lib/parseTree/childNodes.js +164 -0
- package/lib/parseTree/horizontalBranch.js +120 -0
- package/lib/parseTree/node.js +145 -0
- package/lib/parseTree/string.js +109 -0
- package/lib/parseTree/verticalBranch.js +184 -0
- package/lib/parseTree.js +191 -0
- package/lib/utilities/node.js +56 -309
- package/package.json +3 -2
- package/src/example/constants.js +4 -0
- package/src/example/utilities/query.js +21 -0
- package/src/example/view/div/sizeable.js +1 -1
- package/src/example/view/textarea/expressions.js +39 -0
- package/src/example/view/textarea/outerNodes.js +48 -0
- package/src/example/view/textarea/parseTree/inner.js +24 -0
- package/src/example/view/textarea/parseTree/outer.js +17 -0
- package/src/example/view/textarea/parseTree.js +0 -18
- package/src/example/view.js +44 -32
- package/src/index.js +2 -5
- package/src/node.js +221 -0
- package/src/parseTree/childNodes.js +108 -0
- package/src/parseTree/horizontalBranch.js +32 -0
- package/src/parseTree/node.js +77 -0
- package/src/parseTree/string.js +18 -0
- package/src/parseTree/verticalBranch.js +77 -0
- package/src/parseTree.js +141 -0
- package/src/utilities/node.js +66 -416
- package/lib/example/view/textarea/nodes.js +0 -155
- package/lib/expression/bnf.js +0 -14
- package/lib/expression/entries.js +0 -27
- package/lib/expression/lexer.js +0 -145
- package/lib/expression.js +0 -113
- package/lib/path.js +0 -69
- package/lib/query.js +0 -216
- package/lib/ruleNames.js +0 -54
- package/lib/spread.js +0 -113
- package/lib/subExpression.js +0 -101
- package/lib/utilities/array.js +0 -67
- package/lib/utilities/query.js +0 -39
- package/src/example/view/input/expressionString.js +0 -33
- package/src/example/view/textarea/nodes.js +0 -55
- package/src/expression/bnf.js +0 -63
- package/src/expression/entries.js +0 -18
- package/src/expression/lexer.js +0 -35
- package/src/expression/parser.js +0 -15
- package/src/expression.js +0 -82
- package/src/path.js +0 -32
- package/src/query.js +0 -207
- package/src/ruleNames.js +0 -12
- package/src/spread.js +0 -104
- package/src/subExpression.js +0 -52
- package/src/utilities/array.js +0 -30
- package/src/utilities/query.js +0 -22
package/lib/example/view.js
CHANGED
|
@@ -10,16 +10,19 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
var _easywithstyle = /*#__PURE__*/ _interop_require_default(require("easy-with-style"));
|
|
12
12
|
var _easy = require("easy");
|
|
13
|
-
var _index = require("../index"
|
|
13
|
+
var _index = require("../index" ///
|
|
14
|
+
);
|
|
14
15
|
var _withstyle = require("with-style");
|
|
15
16
|
var _easylayout = require("easy-layout");
|
|
16
17
|
var _subHeading = /*#__PURE__*/ _interop_require_default(require("./view/subHeading"));
|
|
17
18
|
var _sizeable = /*#__PURE__*/ _interop_require_default(require("./view/div/sizeable"));
|
|
18
|
-
var _nodes = /*#__PURE__*/ _interop_require_default(require("./view/textarea/nodes"));
|
|
19
19
|
var _content = /*#__PURE__*/ _interop_require_default(require("./view/textarea/content"));
|
|
20
20
|
var _maximumDepth = /*#__PURE__*/ _interop_require_default(require("./view/input/maximumDepth"));
|
|
21
|
-
var
|
|
22
|
-
var
|
|
21
|
+
var _outerNodes = /*#__PURE__*/ _interop_require_default(require("./view/textarea/outerNodes"));
|
|
22
|
+
var _expressions = /*#__PURE__*/ _interop_require_default(require("./view/textarea/expressions"));
|
|
23
|
+
var _outer = /*#__PURE__*/ _interop_require_default(require("./view/textarea/parseTree/outer"));
|
|
24
|
+
var _inner = /*#__PURE__*/ _interop_require_default(require("./view/textarea/parseTree/inner"));
|
|
25
|
+
var _query = require("./utilities/query");
|
|
23
26
|
function _assert_this_initialized(self) {
|
|
24
27
|
if (self === void 0) {
|
|
25
28
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
@@ -176,25 +179,22 @@ function _templateObject() {
|
|
|
176
179
|
};
|
|
177
180
|
return data;
|
|
178
181
|
}
|
|
182
|
+
var topmostInnerNodeFromOuterNodes = _index.nodeUtilities.topmostNodeFromOuterNodes;
|
|
179
183
|
var cssLexer = _withstyle.CSSLexer.fromNothing(), cssParser = _withstyle.CSSParser.fromNothing();
|
|
180
|
-
var queryByExpressionString = _index.queryUtilities.queryByExpressionString;
|
|
181
184
|
var View = /*#__PURE__*/ function(Element) {
|
|
182
185
|
_inherits(View, Element);
|
|
183
186
|
function View() {
|
|
184
187
|
_class_call_check(this, View);
|
|
185
188
|
var _this;
|
|
186
189
|
_this = _call_super(this, View, arguments), _define_property(_this, "keyUpHandler", function(event, element) {
|
|
187
|
-
_this.clearNodes();
|
|
188
|
-
_this.clearParseTree();
|
|
189
190
|
var content = _this.getContent(), tokens = cssLexer.tokenise(content), node = cssParser.parse(tokens);
|
|
190
191
|
if (node === null) {
|
|
191
192
|
return;
|
|
192
193
|
}
|
|
193
|
-
var
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
194
|
+
var outerNode = node, expressions = _this.getExpressions(), maximumDepth = _this.getMaximumDepth(), outerNodes = (0, _query.queryByExpressions)(outerNode, expressions, maximumDepth), topmostInnerNode = topmostInnerNodeFromOuterNodes(outerNodes), innerNode = topmostInnerNode, outerParseTree = outerNode.asParseTree(tokens), innerParseTree = innerNode.asParseTree();
|
|
195
|
+
_this.setOuterNodes(outerNodes, tokens); ///
|
|
196
|
+
_this.setOuterParseTree(outerParseTree);
|
|
197
|
+
_this.setInnerParseTree(innerParseTree);
|
|
198
198
|
});
|
|
199
199
|
return _this;
|
|
200
200
|
}
|
|
@@ -203,13 +203,13 @@ var View = /*#__PURE__*/ function(Element) {
|
|
|
203
203
|
key: "childElements",
|
|
204
204
|
value: function childElements() {
|
|
205
205
|
return [
|
|
206
|
-
/*#__PURE__*/ React.createElement(_easylayout.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_sizeable.default, null, /*#__PURE__*/ React.createElement(_easylayout.RowsDiv, null, /*#__PURE__*/ React.createElement(_subHeading.default, null, "
|
|
206
|
+
/*#__PURE__*/ React.createElement(_easylayout.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_sizeable.default, null, /*#__PURE__*/ React.createElement(_easylayout.RowsDiv, null, /*#__PURE__*/ React.createElement(_subHeading.default, null, "Content"), /*#__PURE__*/ React.createElement(_content.default, {
|
|
207
207
|
onKeyUp: this.keyUpHandler
|
|
208
|
-
}), /*#__PURE__*/ React.createElement(_subHeading.default, null, "
|
|
208
|
+
}), /*#__PURE__*/ React.createElement(_subHeading.default, null, "Expressions"), /*#__PURE__*/ React.createElement(_expressions.default, {
|
|
209
209
|
onKeyUp: this.keyUpHandler
|
|
210
|
-
})
|
|
210
|
+
}), /*#__PURE__*/ React.createElement(_subHeading.default, null, "Maximum depth"), /*#__PURE__*/ React.createElement(_maximumDepth.default, {
|
|
211
211
|
onKeyUp: this.keyUpHandler
|
|
212
|
-
}), /*#__PURE__*/ React.createElement(_subHeading.default, null, "
|
|
212
|
+
}), /*#__PURE__*/ React.createElement(_subHeading.default, null, "Outer nodes"), /*#__PURE__*/ React.createElement(_outerNodes.default, null))), /*#__PURE__*/ React.createElement(_easylayout.VerticalSplitterDiv, null), /*#__PURE__*/ React.createElement(_easylayout.ColumnDiv, null, /*#__PURE__*/ React.createElement(_easylayout.RowsDiv, null, /*#__PURE__*/ React.createElement(_subHeading.default, null, "Outer parse tree"), /*#__PURE__*/ React.createElement(_outer.default, null), /*#__PURE__*/ React.createElement(_subHeading.default, null, "Inner parse tree"), /*#__PURE__*/ React.createElement(_inner.default, null))))
|
|
213
213
|
];
|
|
214
214
|
}
|
|
215
215
|
},
|
|
@@ -217,10 +217,10 @@ var View = /*#__PURE__*/ function(Element) {
|
|
|
217
217
|
key: "initialise",
|
|
218
218
|
value: function initialise() {
|
|
219
219
|
this.assignContext();
|
|
220
|
-
var _this_constructor = this.constructor, initialContent = _this_constructor.initialContent,
|
|
220
|
+
var _this_constructor = this.constructor, initialContent = _this_constructor.initialContent, initialExpressions = _this_constructor.initialExpressions, initialMaximumDepth = _this_constructor.initialMaximumDepth, content = initialContent, maximumDepth = initialMaximumDepth, expressions = initialExpressions; ///
|
|
221
221
|
this.setContent(content);
|
|
222
222
|
this.setMaximumDepth(maximumDepth);
|
|
223
|
-
this.
|
|
223
|
+
this.setExpressions(expressions);
|
|
224
224
|
this.keyUpHandler(); ///
|
|
225
225
|
}
|
|
226
226
|
}
|
|
@@ -228,7 +228,13 @@ var View = /*#__PURE__*/ function(Element) {
|
|
|
228
228
|
return View;
|
|
229
229
|
}(_wrap_native_super(_easy.Element));
|
|
230
230
|
_define_property(View, "initialContent", ".view {\n background: red;\n}\n");
|
|
231
|
-
_define_property(View, "
|
|
231
|
+
_define_property(View, "initialExpressions", [
|
|
232
|
+
"//term",
|
|
233
|
+
"//ruleSet",
|
|
234
|
+
"//selectors",
|
|
235
|
+
"//propertyName",
|
|
236
|
+
"//@identifier"
|
|
237
|
+
]);
|
|
232
238
|
_define_property(View, "initialMaximumDepth", 5);
|
|
233
239
|
_define_property(View, "tagName", "div");
|
|
234
240
|
_define_property(View, "defaultProperties", {
|
|
@@ -236,4 +242,4 @@ _define_property(View, "defaultProperties", {
|
|
|
236
242
|
});
|
|
237
243
|
var _default = (0, _easywithstyle.default)(View)(_templateObject());
|
|
238
244
|
|
|
239
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
245
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgbm9kZVV0aWxpdGllcyB9IGZyb20gXCIuLi9pbmRleFwiIC8vL1xuaW1wb3J0IHsgQ1NTTGV4ZXIsIENTU1BhcnNlciB9IGZyb20gXCJ3aXRoLXN0eWxlXCI7XG5pbXBvcnQgeyBSb3dzRGl2LCBDb2x1bW5EaXYsIENvbHVtbnNEaXYsIFZlcnRpY2FsU3BsaXR0ZXJEaXYgfSBmcm9tIFwiZWFzeS1sYXlvdXRcIjtcblxuaW1wb3J0IFN1YkhlYWRpbmcgZnJvbSBcIi4vdmlldy9zdWJIZWFkaW5nXCI7XG5pbXBvcnQgU2l6ZWFibGVEaXYgZnJvbSBcIi4vdmlldy9kaXYvc2l6ZWFibGVcIjtcbmltcG9ydCBDb250ZW50VGV4dGFyZWEgZnJvbSBcIi4vdmlldy90ZXh0YXJlYS9jb250ZW50XCI7XG5pbXBvcnQgTWF4aW11bURlcHRoSW5wdXQgZnJvbSBcIi4vdmlldy9pbnB1dC9tYXhpbXVtRGVwdGhcIjtcbmltcG9ydCBPdXRlck5vZGVzVGV4dGFyZWEgZnJvbSBcIi4vdmlldy90ZXh0YXJlYS9vdXRlck5vZGVzXCI7XG5pbXBvcnQgRXhwcmVzc2lvbnNUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL2V4cHJlc3Npb25zXCI7XG5pbXBvcnQgT3V0ZXJQYXJzZVRyZWVUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL3BhcnNlVHJlZS9vdXRlclwiO1xuaW1wb3J0IElubmVyUGFyc2VUcmVlVGV4dGFyZWEgZnJvbSBcIi4vdmlldy90ZXh0YXJlYS9wYXJzZVRyZWUvaW5uZXJcIjtcblxuaW1wb3J0IHsgcXVlcnlCeUV4cHJlc3Npb25zIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHsgdG9wbW9zdE5vZGVGcm9tT3V0ZXJOb2RlczogdG9wbW9zdElubmVyTm9kZUZyb21PdXRlck5vZGVzIH0gPSBub2RlVXRpbGl0aWVzO1xuXG5jb25zdCBjc3NMZXhlciA9IENTU0xleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICBjc3NQYXJzZXIgPSBDU1NQYXJzZXIuZnJvbU5vdGhpbmcoKTtcblxuY2xhc3MgVmlldyBleHRlbmRzIEVsZW1lbnQge1xuICBrZXlVcEhhbmRsZXIgPSAoZXZlbnQsIGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy5nZXRDb250ZW50KCksXG4gICAgICAgICAgdG9rZW5zID0gY3NzTGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgbm9kZSA9IGNzc1BhcnNlci5wYXJzZSh0b2tlbnMpO1xuXG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRlck5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICBleHByZXNzaW9ucyA9IHRoaXMuZ2V0RXhwcmVzc2lvbnMoKSxcbiAgICAgICAgICBtYXhpbXVtRGVwdGggPSB0aGlzLmdldE1heGltdW1EZXB0aCgpLFxuICAgICAgICAgIG91dGVyTm9kZXMgPSBxdWVyeUJ5RXhwcmVzc2lvbnMob3V0ZXJOb2RlLCBleHByZXNzaW9ucywgbWF4aW11bURlcHRoKSxcbiAgICAgICAgICB0b3Btb3N0SW5uZXJOb2RlID0gdG9wbW9zdElubmVyTm9kZUZyb21PdXRlck5vZGVzKG91dGVyTm9kZXMpLFxuICAgICAgICAgIGlubmVyTm9kZSA9IHRvcG1vc3RJbm5lck5vZGUsIC8vL1xuICAgICAgICAgIG91dGVyUGFyc2VUcmVlID0gb3V0ZXJOb2RlLmFzUGFyc2VUcmVlKHRva2VucyksXG4gICAgICAgICAgaW5uZXJQYXJzZVRyZWUgPSBpbm5lck5vZGUuYXNQYXJzZVRyZWUoKTtcblxuICAgIHRoaXMuc2V0T3V0ZXJOb2RlcyhvdXRlck5vZGVzLCB0b2tlbnMpOyAvLy9cblxuICAgIHRoaXMuc2V0T3V0ZXJQYXJzZVRyZWUob3V0ZXJQYXJzZVRyZWUpO1xuXG4gICAgdGhpcy5zZXRJbm5lclBhcnNlVHJlZShpbm5lclBhcnNlVHJlZSk7XG4gIH1cblxuICBjaGlsZEVsZW1lbnRzKCkge1xuICAgIHJldHVybiAoW1xuXG4gICAgICA8Q29sdW1uc0Rpdj5cbiAgICAgICAgPFNpemVhYmxlRGl2PlxuICAgICAgICAgIDxSb3dzRGl2PlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIENvbnRlbnRcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxDb250ZW50VGV4dGFyZWEgb25LZXlVcD17dGhpcy5rZXlVcEhhbmRsZXJ9IC8+XG4gICAgICAgICAgICA8U3ViSGVhZGluZz5cbiAgICAgICAgICAgICAgRXhwcmVzc2lvbnNcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxFeHByZXNzaW9uc1RleHRhcmVhIG9uS2V5VXA9e3RoaXMua2V5VXBIYW5kbGVyfSAvPlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIE1heGltdW0gZGVwdGhcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxNYXhpbXVtRGVwdGhJbnB1dCBvbktleVVwPXt0aGlzLmtleVVwSGFuZGxlcn0gLz5cbiAgICAgICAgICAgIDxTdWJIZWFkaW5nPlxuICAgICAgICAgICAgICBPdXRlciBub2Rlc1xuICAgICAgICAgICAgPC9TdWJIZWFkaW5nPlxuICAgICAgICAgICAgPE91dGVyTm9kZXNUZXh0YXJlYS8+XG4gICAgICAgICAgPC9Sb3dzRGl2PlxuICAgICAgICA8L1NpemVhYmxlRGl2PlxuICAgICAgICA8VmVydGljYWxTcGxpdHRlckRpdiAvPlxuICAgICAgICA8Q29sdW1uRGl2PlxuICAgICAgICAgIDxSb3dzRGl2PlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIE91dGVyIHBhcnNlIHRyZWVcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxPdXRlclBhcnNlVHJlZVRleHRhcmVhLz5cbiAgICAgICAgICAgIDxTdWJIZWFkaW5nPlxuICAgICAgICAgICAgICBJbm5lciBwYXJzZSB0cmVlXG4gICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICA8SW5uZXJQYXJzZVRyZWVUZXh0YXJlYS8+XG4gICAgICAgICAgPC9Sb3dzRGl2PlxuICAgICAgICA8L0NvbHVtbkRpdj5cbiAgICAgIDwvQ29sdW1uc0Rpdj5cblxuICAgIF0pO1xuICB9XG5cbiAgaW5pdGlhbGlzZSgpIHtcbiAgICB0aGlzLmFzc2lnbkNvbnRleHQoKTtcblxuICAgIGNvbnN0IHsgaW5pdGlhbENvbnRlbnQsIGluaXRpYWxFeHByZXNzaW9ucywgaW5pdGlhbE1heGltdW1EZXB0aCB9ID0gdGhpcy5jb25zdHJ1Y3RvcixcbiAgICAgICAgICBjb250ZW50ID0gaW5pdGlhbENvbnRlbnQsICAvLy9cbiAgICAgICAgICBtYXhpbXVtRGVwdGggPSBpbml0aWFsTWF4aW11bURlcHRoLCAgLy8vXG4gICAgICAgICAgZXhwcmVzc2lvbnMgPSBpbml0aWFsRXhwcmVzc2lvbnM7ICAvLy9cblxuICAgIHRoaXMuc2V0Q29udGVudChjb250ZW50KTtcblxuICAgIHRoaXMuc2V0TWF4aW11bURlcHRoKG1heGltdW1EZXB0aCk7XG5cbiAgICB0aGlzLnNldEV4cHJlc3Npb25zKGV4cHJlc3Npb25zKTtcblxuICAgIHRoaXMua2V5VXBIYW5kbGVyKCk7ICAvLy9cbiAgfVxuXG4gIHN0YXRpYyBpbml0aWFsQ29udGVudCA9IGAudmlldyB7XG4gIGJhY2tncm91bmQ6IHJlZDtcbn1cbmA7XG5cbiAgc3RhdGljIGluaXRpYWxFeHByZXNzaW9ucyA9IFtcbiAgICBcIi8vdGVybVwiLFxuICAgIFwiLy9ydWxlU2V0XCIsXG4gICAgXCIvL3NlbGVjdG9yc1wiLFxuICAgIFwiLy9wcm9wZXJ0eU5hbWVcIixcbiAgICBcIi8vQGlkZW50aWZpZXJcIlxuICBdO1xuXG4gIHN0YXRpYyBpbml0aWFsTWF4aW11bURlcHRoID0gNTtcblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiZGl2XCI7XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJ2aWV3XCJcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKFZpZXcpYFxuXG4gIHBhZGRpbmc6IDFyZW07XG4gIFxuYDtcbiJdLCJuYW1lcyI6WyJ0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzIiwidG9wbW9zdElubmVyTm9kZUZyb21PdXRlck5vZGVzIiwibm9kZVV0aWxpdGllcyIsImNzc0xleGVyIiwiQ1NTTGV4ZXIiLCJmcm9tTm90aGluZyIsImNzc1BhcnNlciIsIkNTU1BhcnNlciIsIlZpZXciLCJrZXlVcEhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsInRva2VucyIsInRva2VuaXNlIiwibm9kZSIsInBhcnNlIiwib3V0ZXJOb2RlIiwiZXhwcmVzc2lvbnMiLCJnZXRFeHByZXNzaW9ucyIsIm1heGltdW1EZXB0aCIsImdldE1heGltdW1EZXB0aCIsIm91dGVyTm9kZXMiLCJxdWVyeUJ5RXhwcmVzc2lvbnMiLCJ0b3Btb3N0SW5uZXJOb2RlIiwiaW5uZXJOb2RlIiwib3V0ZXJQYXJzZVRyZWUiLCJhc1BhcnNlVHJlZSIsImlubmVyUGFyc2VUcmVlIiwic2V0T3V0ZXJOb2RlcyIsInNldE91dGVyUGFyc2VUcmVlIiwic2V0SW5uZXJQYXJzZVRyZWUiLCJjaGlsZEVsZW1lbnRzIiwiQ29sdW1uc0RpdiIsIlNpemVhYmxlRGl2IiwiUm93c0RpdiIsIlN1YkhlYWRpbmciLCJDb250ZW50VGV4dGFyZWEiLCJvbktleVVwIiwiRXhwcmVzc2lvbnNUZXh0YXJlYSIsIk1heGltdW1EZXB0aElucHV0IiwiT3V0ZXJOb2Rlc1RleHRhcmVhIiwiVmVydGljYWxTcGxpdHRlckRpdiIsIkNvbHVtbkRpdiIsIk91dGVyUGFyc2VUcmVlVGV4dGFyZWEiLCJJbm5lclBhcnNlVHJlZVRleHRhcmVhIiwiaW5pdGlhbGlzZSIsImFzc2lnbkNvbnRleHQiLCJjb25zdHJ1Y3RvciIsImluaXRpYWxDb250ZW50IiwiaW5pdGlhbEV4cHJlc3Npb25zIiwiaW5pdGlhbE1heGltdW1EZXB0aCIsInNldENvbnRlbnQiLCJzZXRNYXhpbXVtRGVwdGgiLCJzZXRFeHByZXNzaW9ucyIsIkVsZW1lbnQiLCJ0YWdOYW1lIiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJ3aXRoU3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW9JQTs7O2VBQUE7OztvRUFsSXNCO29CQUVFO3FCQUNNLFdBQVcsR0FBRzs7eUJBQ1I7MEJBQ2dDO2lFQUU3QzsrREFDQzs4REFDSTttRUFDRTtpRUFDQztrRUFDQzs0REFDRzs0REFDQTtxQkFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVuQyxJQUFRQSxBQUEyQkMsaUNBQW1DQyxvQkFBYSxDQUEzRUY7QUFFUixJQUFNRyxXQUFXQyxtQkFBUSxDQUFDQyxXQUFXLElBQy9CQyxZQUFZQyxvQkFBUyxDQUFDRixXQUFXO0FBRXZDLElBQUEsQUFBTUcscUJBQU47Y0FBTUE7YUFBQUE7Z0NBQUFBOztnQkFBTixrQkFBTUEsa0JBQ0pDLHdCQUFBQSxnQkFBZSxTQUFDQyxPQUFPQztZQUNyQixJQUFNQyxVQUFVLE1BQUtDLFVBQVUsSUFDekJDLFNBQVNYLFNBQVNZLFFBQVEsQ0FBQ0gsVUFDM0JJLE9BQU9WLFVBQVVXLEtBQUssQ0FBQ0g7WUFFN0IsSUFBSUUsU0FBUyxNQUFNO2dCQUNqQjtZQUNGO1lBRUEsSUFBTUUsWUFBWUYsTUFDWkcsY0FBYyxNQUFLQyxjQUFjLElBQ2pDQyxlQUFlLE1BQUtDLGVBQWUsSUFDbkNDLGFBQWFDLElBQUFBLHlCQUFrQixFQUFDTixXQUFXQyxhQUFhRSxlQUN4REksbUJBQW1CeEIsK0JBQStCc0IsYUFDbERHLFlBQVlELGtCQUNaRSxpQkFBaUJULFVBQVVVLFdBQVcsQ0FBQ2QsU0FDdkNlLGlCQUFpQkgsVUFBVUUsV0FBVztZQUU1QyxNQUFLRSxhQUFhLENBQUNQLFlBQVlULFNBQVMsR0FBRztZQUUzQyxNQUFLaUIsaUJBQWlCLENBQUNKO1lBRXZCLE1BQUtLLGlCQUFpQixDQUFDSDtRQUN6Qjs7O2tCQXhCSXJCOztZQTBCSnlCLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFRO2tDQUVOLG9CQUFDQyxzQkFBVSxzQkFDVCxvQkFBQ0MsaUJBQVcsc0JBQ1Ysb0JBQUNDLG1CQUFPLHNCQUNOLG9CQUFDQyxtQkFBVSxRQUFDLDBCQUdaLG9CQUFDQyxnQkFBZTt3QkFBQ0MsU0FBUyxJQUFJLENBQUM5QixZQUFZO3NDQUMzQyxvQkFBQzRCLG1CQUFVLFFBQUMsOEJBR1osb0JBQUNHLG9CQUFtQjt3QkFBQ0QsU0FBUyxJQUFJLENBQUM5QixZQUFZO3NDQUMvQyxvQkFBQzRCLG1CQUFVLFFBQUMsZ0NBR1osb0JBQUNJLHFCQUFpQjt3QkFBQ0YsU0FBUyxJQUFJLENBQUM5QixZQUFZO3NDQUM3QyxvQkFBQzRCLG1CQUFVLFFBQUMsOEJBR1osb0JBQUNLLG1CQUFrQix5QkFHdkIsb0JBQUNDLCtCQUFtQix1QkFDcEIsb0JBQUNDLHFCQUFTLHNCQUNSLG9CQUFDUixtQkFBTyxzQkFDTixvQkFBQ0MsbUJBQVUsUUFBQyxtQ0FHWixvQkFBQ1EsY0FBc0IsdUJBQ3ZCLG9CQUFDUixtQkFBVSxRQUFDLG1DQUdaLG9CQUFDUyxjQUFzQjtpQkFLOUI7WUFDSDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFJLENBQUNDLGFBQWE7Z0JBRWxCLElBQW9FLG9CQUFBLElBQUksQ0FBQ0MsV0FBVyxFQUE1RUMsaUJBQTRELGtCQUE1REEsZ0JBQWdCQyxxQkFBNEMsa0JBQTVDQSxvQkFBb0JDLHNCQUF3QixrQkFBeEJBLHFCQUN0Q3hDLFVBQVVzQyxnQkFDVjdCLGVBQWUrQixxQkFDZmpDLGNBQWNnQyxvQkFBcUIsR0FBRztnQkFFNUMsSUFBSSxDQUFDRSxVQUFVLENBQUN6QztnQkFFaEIsSUFBSSxDQUFDMEMsZUFBZSxDQUFDakM7Z0JBRXJCLElBQUksQ0FBQ2tDLGNBQWMsQ0FBQ3BDO2dCQUVwQixJQUFJLENBQUNWLFlBQVksSUFBSyxHQUFHO1lBQzNCOzs7V0FuRklEO3FCQUFhZ0QsYUFBTztBQXFGeEIsaUJBckZJaEQsTUFxRkcwQyxrQkFBa0I7QUFLekIsaUJBMUZJMUMsTUEwRkcyQyxzQkFBcUI7SUFDMUI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtDQUNEO0FBRUQsaUJBbEdJM0MsTUFrR0c0Qyx1QkFBc0I7QUFFN0IsaUJBcEdJNUMsTUFvR0dpRCxXQUFVO0FBRWpCLGlCQXRHSWpELE1Bc0dHa0QscUJBQW9CO0lBQ3pCQyxXQUFXO0FBQ2I7SUFHRixXQUFlQyxJQUFBQSxzQkFBUyxFQUFDcEQifQ==
|
package/lib/index.js
CHANGED
|
@@ -9,31 +9,19 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
return
|
|
12
|
+
Node: function() {
|
|
13
|
+
return _node.default;
|
|
14
14
|
},
|
|
15
|
-
|
|
16
|
-
return
|
|
17
|
-
},
|
|
18
|
-
ExpressionParser: function() {
|
|
19
|
-
return _parser.default;
|
|
20
|
-
},
|
|
21
|
-
Query: function() {
|
|
22
|
-
return _query.default;
|
|
23
|
-
},
|
|
24
|
-
queryUtilities: function() {
|
|
25
|
-
return _query1.default;
|
|
15
|
+
nodeUtilities: function() {
|
|
16
|
+
return _node1.default;
|
|
26
17
|
}
|
|
27
18
|
});
|
|
28
|
-
var
|
|
29
|
-
var
|
|
30
|
-
var _query1 = /*#__PURE__*/ _interop_require_default(require("./utilities/query"));
|
|
31
|
-
var _lexer = /*#__PURE__*/ _interop_require_default(require("./expression/lexer"));
|
|
32
|
-
var _parser = /*#__PURE__*/ _interop_require_default(require("./expression/parser"));
|
|
19
|
+
var _node = /*#__PURE__*/ _interop_require_default(require("./node"));
|
|
20
|
+
var _node1 = /*#__PURE__*/ _interop_require_default(require("./utilities/node"));
|
|
33
21
|
function _interop_require_default(obj) {
|
|
34
22
|
return obj && obj.__esModule ? obj : {
|
|
35
23
|
default: obj
|
|
36
24
|
};
|
|
37
25
|
}
|
|
38
26
|
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb2RlIH0gZnJvbSBcIi4vbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBub2RlVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcbiJdLCJuYW1lcyI6WyJOb2RlIiwibm9kZVV0aWxpdGllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxJQUFJO2VBQUpBLGFBQUk7O0lBQ0pDLGFBQWE7ZUFBYkEsY0FBYTs7OzJEQUREOzREQUNTIn0=
|
package/lib/node.js
ADDED
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return Node;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _node = /*#__PURE__*/ _interop_require_default(require("./parseTree/node"));
|
|
12
|
+
var _constants = require("./constants");
|
|
13
|
+
function _array_like_to_array(arr, len) {
|
|
14
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
15
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
16
|
+
return arr2;
|
|
17
|
+
}
|
|
18
|
+
function _array_without_holes(arr) {
|
|
19
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
20
|
+
}
|
|
21
|
+
function _class_call_check(instance, Constructor) {
|
|
22
|
+
if (!(instance instanceof Constructor)) {
|
|
23
|
+
throw new TypeError("Cannot call a class as a function");
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function _defineProperties(target, props) {
|
|
27
|
+
for(var i = 0; i < props.length; i++){
|
|
28
|
+
var descriptor = props[i];
|
|
29
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
30
|
+
descriptor.configurable = true;
|
|
31
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
32
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
36
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
37
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
38
|
+
return Constructor;
|
|
39
|
+
}
|
|
40
|
+
function _interop_require_default(obj) {
|
|
41
|
+
return obj && obj.__esModule ? obj : {
|
|
42
|
+
default: obj
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function _iterable_to_array(iter) {
|
|
46
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
47
|
+
}
|
|
48
|
+
function _non_iterable_spread() {
|
|
49
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
50
|
+
}
|
|
51
|
+
function _to_consumable_array(arr) {
|
|
52
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
53
|
+
}
|
|
54
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
55
|
+
if (!o) return;
|
|
56
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
57
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
58
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
59
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
60
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
61
|
+
}
|
|
62
|
+
var Node = /*#__PURE__*/ function() {
|
|
63
|
+
function Node(outerNode, parentNode, childNodes) {
|
|
64
|
+
_class_call_check(this, Node);
|
|
65
|
+
this.outerNode = outerNode;
|
|
66
|
+
this.parentNode = parentNode;
|
|
67
|
+
this.childNodes = childNodes;
|
|
68
|
+
}
|
|
69
|
+
_create_class(Node, [
|
|
70
|
+
{
|
|
71
|
+
key: "getOuterNode",
|
|
72
|
+
value: function getOuterNode() {
|
|
73
|
+
return this.outerNode;
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
key: "getParentNode",
|
|
78
|
+
value: function getParentNode() {
|
|
79
|
+
return this.parentNode;
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
key: "getChildNodes",
|
|
84
|
+
value: function getChildNodes() {
|
|
85
|
+
return this.childNodes;
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
key: "setOuterNode",
|
|
90
|
+
value: function setOuterNode(outerNode) {
|
|
91
|
+
this.outerNode = outerNode;
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
key: "setParentNode",
|
|
96
|
+
value: function setParentNode(parentNode) {
|
|
97
|
+
this.parentNode = parentNode;
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
key: "setChildNodes",
|
|
102
|
+
value: function setChildNodes(childNodes) {
|
|
103
|
+
this.childNodes = childNodes;
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
key: "mapChildNode",
|
|
108
|
+
value: function mapChildNode(callback) {
|
|
109
|
+
return this.childNodes.map(callback);
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
key: "someChildNode",
|
|
114
|
+
value: function someChildNode(callback) {
|
|
115
|
+
return this.childNodes.some(callback);
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
key: "findChildNode",
|
|
120
|
+
value: function findChildNode(callback) {
|
|
121
|
+
return this.childNodes.find(callback);
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
key: "everyChildNode",
|
|
126
|
+
value: function everyChildNode(callback) {
|
|
127
|
+
return this.childNodes.every(callback);
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
key: "filterChildNode",
|
|
132
|
+
value: function filterChildNode(callback) {
|
|
133
|
+
return this.childNodes.filter(callback);
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
key: "reduceChildNode",
|
|
138
|
+
value: function reduceChildNode(callback, initialValue) {
|
|
139
|
+
return this.childNodes.reduce(callback, initialValue);
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
key: "forEachChildNode",
|
|
144
|
+
value: function forEachChildNode(callback) {
|
|
145
|
+
this.childNodes.forEach(callback);
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
key: "setChildNodesParentNode",
|
|
150
|
+
value: function setChildNodesParentNode(childNodes) {
|
|
151
|
+
if (childNodes === undefined) {
|
|
152
|
+
childNodes = _to_consumable_array(this.childNodes);
|
|
153
|
+
}
|
|
154
|
+
var parentNode = this;
|
|
155
|
+
childNodes.forEach(function(childNode) {
|
|
156
|
+
childNode.setParentNode(parentNode);
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
key: "resetChildNodesParentNode",
|
|
162
|
+
value: function resetChildNodesParentNode(childNodes) {
|
|
163
|
+
if (childNodes === undefined) {
|
|
164
|
+
childNodes = _to_consumable_array(this.childNodes);
|
|
165
|
+
}
|
|
166
|
+
var parentNode = null;
|
|
167
|
+
childNodes.forEach(function(childNode) {
|
|
168
|
+
childNode.setParentNode(parentNode);
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
key: "addChildNode",
|
|
174
|
+
value: function addChildNode(addedChildNode, startIndex) {
|
|
175
|
+
var addedChildNodes = [
|
|
176
|
+
addedChildNode
|
|
177
|
+
];
|
|
178
|
+
this.addChildNodes(addedChildNodes, startIndex);
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
key: "addChildNodes",
|
|
183
|
+
value: function addChildNodes(addedChildNodes, startIndex) {
|
|
184
|
+
var deleteCount = 0;
|
|
185
|
+
this.spliceChildNodes(startIndex, deleteCount, addedChildNodes);
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
key: "removeChildNode",
|
|
190
|
+
value: function removeChildNode(removedChildNode) {
|
|
191
|
+
var removedChildNodes;
|
|
192
|
+
removedChildNodes = [
|
|
193
|
+
removedChildNode
|
|
194
|
+
];
|
|
195
|
+
removedChildNodes = this.removeChildNodes(removedChildNodes);
|
|
196
|
+
return removedChildNodes;
|
|
197
|
+
}
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
key: "removeChildNodes",
|
|
201
|
+
value: function removeChildNodes(removedChildNodes) {
|
|
202
|
+
if (removedChildNodes === undefined) {
|
|
203
|
+
removedChildNodes = _to_consumable_array(this.childNodes);
|
|
204
|
+
}
|
|
205
|
+
var removedChildNodesLength = removedChildNodes.length;
|
|
206
|
+
if (removedChildNodesLength === 0) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
var firstReplacedChildNode = first(removedChildNodes), firstIndex = this.childNodes.indexOf(firstReplacedChildNode), startIndex = firstIndex, deleteCount = removedChildNodesLength, addedChildNodes = [];
|
|
210
|
+
removedChildNodes = this.spliceChildNodes(startIndex, deleteCount, addedChildNodes);
|
|
211
|
+
return removedChildNodes;
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
key: "replaceChildNode",
|
|
216
|
+
value: function replaceChildNode(replacedChildNode, replacementChildNodes) {
|
|
217
|
+
var replacedChildNodes = [
|
|
218
|
+
replacedChildNode
|
|
219
|
+
];
|
|
220
|
+
this.replaceChildNodes(replacedChildNodes, replacementChildNodes);
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
key: "replaceChildNodes",
|
|
225
|
+
value: function replaceChildNodes(replacedChildNodes, replacementChildNodes) {
|
|
226
|
+
var replacedChildNodesLength = replacedChildNodes.length, firstReplacedChildNode = first(replacedChildNodes), firstIndex = this.childNodes.indexOf(firstReplacedChildNode), startIndex = firstIndex, deleteCount = replacedChildNodesLength; ///
|
|
227
|
+
this.spliceChildNodes(startIndex, deleteCount, replacementChildNodes);
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
key: "spliceChildNodes",
|
|
232
|
+
value: function spliceChildNodes(startIndex, deleteCount) {
|
|
233
|
+
var addedChildNodes = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
|
|
234
|
+
var _this_childNodes;
|
|
235
|
+
var removedChildNodes = (_this_childNodes = this.childNodes).splice.apply(_this_childNodes, [
|
|
236
|
+
startIndex,
|
|
237
|
+
deleteCount
|
|
238
|
+
].concat(_to_consumable_array(addedChildNodes)));
|
|
239
|
+
this.resetChildNodesParentNode(removedChildNodes);
|
|
240
|
+
this.setChildNodesParentNode(addedChildNodes);
|
|
241
|
+
return removedChildNodes;
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
key: "sliceChildNodes",
|
|
246
|
+
value: function sliceChildNodes(startIndex) {
|
|
247
|
+
var endIndex = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Infinity;
|
|
248
|
+
var childNodes = this.childNodes.slice(startIndex, endIndex);
|
|
249
|
+
return childNodes;
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
key: "asString",
|
|
254
|
+
value: function asString() {
|
|
255
|
+
var string = _constants.EMPTY_STRING;
|
|
256
|
+
if (this.outerNode !== null) {
|
|
257
|
+
var nodeTerminalNode = this.outerNode.isTerminalNode();
|
|
258
|
+
if (nodeTerminalNode) {
|
|
259
|
+
var terminalNode = this.outerNode, type = terminalNode.getType(), content = terminalNode.getContent();
|
|
260
|
+
string = '"'.concat(content, '" [').concat(type, "]");
|
|
261
|
+
} else {
|
|
262
|
+
var nonTerminalNode = this.outerNode, ruleName = nonTerminalNode.getRuleName();
|
|
263
|
+
string = ruleName; ///
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
return string;
|
|
267
|
+
}
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
key: "asParseTree",
|
|
271
|
+
value: function asParseTree() {
|
|
272
|
+
var node = this, nodeParseTree = _node.default.fromNode(node), parseTree = nodeParseTree; ///
|
|
273
|
+
return parseTree;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
], [
|
|
277
|
+
{
|
|
278
|
+
key: "fromNothing",
|
|
279
|
+
value: function fromNothing(Class) {
|
|
280
|
+
if (Class === undefined) {
|
|
281
|
+
Class = Node; ///
|
|
282
|
+
}
|
|
283
|
+
var outerNode = null, parentNode = null, childNodes = [], node = new Class(outerNode, parentNode, childNodes);
|
|
284
|
+
return node;
|
|
285
|
+
}
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
key: "fromOuterNode",
|
|
289
|
+
value: function fromOuterNode(Class, outerNode) {
|
|
290
|
+
if (outerNode === undefined) {
|
|
291
|
+
outerNode = Class; ///
|
|
292
|
+
Class = Node; ///
|
|
293
|
+
}
|
|
294
|
+
var parentNode = null, childNodes = [], node = new Class(outerNode, parentNode, childNodes);
|
|
295
|
+
return node;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
]);
|
|
299
|
+
return Node;
|
|
300
|
+
}();
|
|
301
|
+
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZVBhcnNlVHJlZSBmcm9tIFwiLi9wYXJzZVRyZWUvbm9kZVwiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm9kZSB7XG4gIGNvbnN0cnVjdG9yKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2Rlcykge1xuICAgIHRoaXMub3V0ZXJOb2RlID0gb3V0ZXJOb2RlO1xuICAgIHRoaXMucGFyZW50Tm9kZSA9IHBhcmVudE5vZGU7XG4gICAgdGhpcy5jaGlsZE5vZGVzID0gY2hpbGROb2RlcztcbiAgfVxuXG4gIGdldE91dGVyTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vdXRlck5vZGU7XG4gIH1cblxuICBnZXRQYXJlbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGU7XG4gIH1cblxuICBnZXRDaGlsZE5vZGVzKCkge1xuICAgIHJldHVybiB0aGlzLmNoaWxkTm9kZXM7XG4gIH1cblxuICBzZXRPdXRlck5vZGUob3V0ZXJOb2RlKSB7XG4gICAgdGhpcy5vdXRlck5vZGUgPSBvdXRlck5vZGU7XG4gIH1cblxuICBzZXRQYXJlbnROb2RlKHBhcmVudE5vZGUpIHtcbiAgICB0aGlzLnBhcmVudE5vZGUgPSBwYXJlbnROb2RlO1xuICB9XG5cbiAgc2V0Q2hpbGROb2RlcyhjaGlsZE5vZGVzKSB7XG4gICAgdGhpcy5jaGlsZE5vZGVzID0gY2hpbGROb2RlcztcbiAgfVxuXG4gIG1hcENoaWxkTm9kZShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLm1hcChjYWxsYmFjayk7IH1cblxuICBzb21lQ2hpbGROb2RlKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmNoaWxkTm9kZXMuc29tZShjYWxsYmFjayk7IH1cblxuICBmaW5kQ2hpbGROb2RlKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmNoaWxkTm9kZXMuZmluZChjYWxsYmFjayk7IH1cblxuICBldmVyeUNoaWxkTm9kZShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLmV2ZXJ5KGNhbGxiYWNrKTsgfVxuXG4gIGZpbHRlckNoaWxkTm9kZShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLmZpbHRlcihjYWxsYmFjayk7IH1cblxuICByZWR1Y2VDaGlsZE5vZGUoY2FsbGJhY2ssIGluaXRpYWxWYWx1ZSkgeyByZXR1cm4gdGhpcy5jaGlsZE5vZGVzLnJlZHVjZShjYWxsYmFjaywgaW5pdGlhbFZhbHVlKTsgfVxuXG4gIGZvckVhY2hDaGlsZE5vZGUoY2FsbGJhY2spIHsgdGhpcy5jaGlsZE5vZGVzLmZvckVhY2goY2FsbGJhY2spOyB9XG5cbiAgc2V0Q2hpbGROb2Rlc1BhcmVudE5vZGUoY2hpbGROb2Rlcykge1xuICAgIGlmIChjaGlsZE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNoaWxkTm9kZXMgPSBbXG4gICAgICAgIC4uLnRoaXMuY2hpbGROb2Rlc1xuICAgICAgXTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnROb2RlID0gdGhpcztcblxuICAgIGNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjaGlsZE5vZGUuc2V0UGFyZW50Tm9kZShwYXJlbnROb2RlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJlc2V0Q2hpbGROb2Rlc1BhcmVudE5vZGUoY2hpbGROb2Rlcykge1xuICAgIGlmIChjaGlsZE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNoaWxkTm9kZXMgPSBbXG4gICAgICAgIC4uLnRoaXMuY2hpbGROb2Rlc1xuICAgICAgXTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnROb2RlID0gbnVsbDtcblxuICAgIGNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjaGlsZE5vZGUuc2V0UGFyZW50Tm9kZShwYXJlbnROb2RlKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFkZENoaWxkTm9kZShhZGRlZENoaWxkTm9kZSwgc3RhcnRJbmRleCkge1xuICAgIGNvbnN0IGFkZGVkQ2hpbGROb2RlcyA9IFtcbiAgICAgIGFkZGVkQ2hpbGROb2RlXG4gICAgXTtcblxuICAgIHRoaXMuYWRkQ2hpbGROb2RlcyhhZGRlZENoaWxkTm9kZXMsIHN0YXJ0SW5kZXgpO1xuICB9XG5cbiAgYWRkQ2hpbGROb2RlcyhhZGRlZENoaWxkTm9kZXMsIHN0YXJ0SW5kZXgpIHtcbiAgICBjb25zdCBkZWxldGVDb3VudCA9IDA7XG5cbiAgICB0aGlzLnNwbGljZUNoaWxkTm9kZXMoc3RhcnRJbmRleCwgZGVsZXRlQ291bnQsIGFkZGVkQ2hpbGROb2Rlcyk7XG4gIH1cblxuICByZW1vdmVDaGlsZE5vZGUocmVtb3ZlZENoaWxkTm9kZSkge1xuICAgIGxldCByZW1vdmVkQ2hpbGROb2RlcztcblxuICAgIHJlbW92ZWRDaGlsZE5vZGVzID0gW1xuICAgICAgcmVtb3ZlZENoaWxkTm9kZVxuICAgIF07XG5cbiAgICByZW1vdmVkQ2hpbGROb2RlcyA9IHRoaXMucmVtb3ZlQ2hpbGROb2RlcyhyZW1vdmVkQ2hpbGROb2Rlcyk7XG5cbiAgICByZXR1cm4gcmVtb3ZlZENoaWxkTm9kZXM7XG4gIH1cblxuICByZW1vdmVDaGlsZE5vZGVzKHJlbW92ZWRDaGlsZE5vZGVzKSB7XG4gICAgaWYgKHJlbW92ZWRDaGlsZE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlbW92ZWRDaGlsZE5vZGVzID0gW1xuICAgICAgICAuLi50aGlzLmNoaWxkTm9kZXNcbiAgICAgIF07XG4gICAgfVxuXG4gICAgY29uc3QgcmVtb3ZlZENoaWxkTm9kZXNMZW5ndGggPSByZW1vdmVkQ2hpbGROb2Rlcy5sZW5ndGg7XG5cbiAgICBpZiAocmVtb3ZlZENoaWxkTm9kZXNMZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdFJlcGxhY2VkQ2hpbGROb2RlID0gZmlyc3QocmVtb3ZlZENoaWxkTm9kZXMpLFxuICAgICAgICAgIGZpcnN0SW5kZXggPSB0aGlzLmNoaWxkTm9kZXMuaW5kZXhPZihmaXJzdFJlcGxhY2VkQ2hpbGROb2RlKSxcbiAgICAgICAgICBzdGFydEluZGV4ID0gZmlyc3RJbmRleCwgLy8vXG4gICAgICAgICAgZGVsZXRlQ291bnQgPSByZW1vdmVkQ2hpbGROb2Rlc0xlbmd0aCwgLy8vXG4gICAgICAgICAgYWRkZWRDaGlsZE5vZGVzID0gW107XG5cbiAgICByZW1vdmVkQ2hpbGROb2RlcyA9IHRoaXMuc3BsaWNlQ2hpbGROb2RlcyhzdGFydEluZGV4LCBkZWxldGVDb3VudCwgYWRkZWRDaGlsZE5vZGVzKTtcblxuICAgIHJldHVybiByZW1vdmVkQ2hpbGROb2RlcztcbiAgfVxuXG4gIHJlcGxhY2VDaGlsZE5vZGUocmVwbGFjZWRDaGlsZE5vZGUsIHJlcGxhY2VtZW50Q2hpbGROb2Rlcykge1xuICAgIGNvbnN0IHJlcGxhY2VkQ2hpbGROb2RlcyA9IFtcbiAgICAgIHJlcGxhY2VkQ2hpbGROb2RlXG4gICAgXTtcblxuICAgIHRoaXMucmVwbGFjZUNoaWxkTm9kZXMocmVwbGFjZWRDaGlsZE5vZGVzLCByZXBsYWNlbWVudENoaWxkTm9kZXMpO1xuICB9XG5cbiAgcmVwbGFjZUNoaWxkTm9kZXMocmVwbGFjZWRDaGlsZE5vZGVzLCByZXBsYWNlbWVudENoaWxkTm9kZXMpIHtcbiAgICBjb25zdCByZXBsYWNlZENoaWxkTm9kZXNMZW5ndGggPSByZXBsYWNlZENoaWxkTm9kZXMubGVuZ3RoLFxuICAgICAgICAgIGZpcnN0UmVwbGFjZWRDaGlsZE5vZGUgPSBmaXJzdChyZXBsYWNlZENoaWxkTm9kZXMpLFxuICAgICAgICAgIGZpcnN0SW5kZXggPSB0aGlzLmNoaWxkTm9kZXMuaW5kZXhPZihmaXJzdFJlcGxhY2VkQ2hpbGROb2RlKSxcbiAgICAgICAgICBzdGFydEluZGV4ID0gZmlyc3RJbmRleCwgLy8vXG4gICAgICAgICAgZGVsZXRlQ291bnQgPSByZXBsYWNlZENoaWxkTm9kZXNMZW5ndGg7IC8vL1xuXG4gICAgdGhpcy5zcGxpY2VDaGlsZE5vZGVzKHN0YXJ0SW5kZXgsIGRlbGV0ZUNvdW50LCByZXBsYWNlbWVudENoaWxkTm9kZXMpO1xuICB9XG5cbiAgc3BsaWNlQ2hpbGROb2RlcyhzdGFydEluZGV4LCBkZWxldGVDb3VudCwgYWRkZWRDaGlsZE5vZGVzID0gW10pIHtcbiAgICBjb25zdCByZW1vdmVkQ2hpbGROb2RlcyA9IHRoaXMuY2hpbGROb2Rlcy5zcGxpY2Uoc3RhcnRJbmRleCwgZGVsZXRlQ291bnQsIC4uLmFkZGVkQ2hpbGROb2Rlcyk7XG5cbiAgICB0aGlzLnJlc2V0Q2hpbGROb2Rlc1BhcmVudE5vZGUocmVtb3ZlZENoaWxkTm9kZXMpO1xuXG4gICAgdGhpcy5zZXRDaGlsZE5vZGVzUGFyZW50Tm9kZShhZGRlZENoaWxkTm9kZXMpO1xuXG4gICAgcmV0dXJuIHJlbW92ZWRDaGlsZE5vZGVzO1xuICB9XG5cbiAgc2xpY2VDaGlsZE5vZGVzKHN0YXJ0SW5kZXgsIGVuZEluZGV4ID0gSW5maW5pdHkpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5jaGlsZE5vZGVzLnNsaWNlKHN0YXJ0SW5kZXgsIGVuZEluZGV4KTtcblxuICAgIHJldHVybiBjaGlsZE5vZGVzO1xuICB9XG5cbiAgYXNTdHJpbmcoKSB7XG4gICAgbGV0IHN0cmluZyA9IEVNUFRZX1NUUklORztcblxuICAgIGlmICh0aGlzLm91dGVyTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9kZVRlcm1pbmFsTm9kZSA9IHRoaXMub3V0ZXJOb2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgICAgIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IHRoaXMub3V0ZXJOb2RlLFxuICAgICAgICAgICAgICB0eXBlID0gdGVybWluYWxOb2RlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgY29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICAgICAgc3RyaW5nID0gYFwiJHtjb250ZW50fVwiIFske3R5cGV9XWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0aGlzLm91dGVyTm9kZSxcbiAgICAgICAgICAgICAgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgICAgICBzdHJpbmcgPSBydWxlTmFtZTsgIC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBhc1BhcnNlVHJlZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcywgIC8vL1xuICAgICAgICAgIG5vZGVQYXJzZVRyZWUgPSBOb2RlUGFyc2VUcmVlLmZyb21Ob2RlKG5vZGUpLFxuICAgICAgICAgIHBhcnNlVHJlZSA9IG5vZGVQYXJzZVRyZWU7ICAvLy9cblxuICAgIHJldHVybiBwYXJzZVRyZWU7XG4gIH1cblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoQ2xhc3MpIHtcbiAgICBpZiAoQ2xhc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgQ2xhc3MgPSBOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBvdXRlck5vZGUgPSBudWxsLFxuICAgICAgICAgIHBhcmVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGNoaWxkTm9kZXMgPSBbXSxcbiAgICAgICAgICBub2RlID0gbmV3IENsYXNzKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2Rlcyk7XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tT3V0ZXJOb2RlKENsYXNzLCBvdXRlck5vZGUpIHtcbiAgICBpZiAob3V0ZXJOb2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG91dGVyTm9kZSA9IENsYXNzOyAgLy8vXG5cbiAgICAgIENsYXNzID0gTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgcGFyZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgY2hpbGROb2RlcyA9IFtdLFxuICAgICAgICAgIG5vZGUgPSBuZXcgQ2xhc3Mob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTm9kZSIsIm91dGVyTm9kZSIsInBhcmVudE5vZGUiLCJjaGlsZE5vZGVzIiwiZ2V0T3V0ZXJOb2RlIiwiZ2V0UGFyZW50Tm9kZSIsImdldENoaWxkTm9kZXMiLCJzZXRPdXRlck5vZGUiLCJzZXRQYXJlbnROb2RlIiwic2V0Q2hpbGROb2RlcyIsIm1hcENoaWxkTm9kZSIsImNhbGxiYWNrIiwibWFwIiwic29tZUNoaWxkTm9kZSIsInNvbWUiLCJmaW5kQ2hpbGROb2RlIiwiZmluZCIsImV2ZXJ5Q2hpbGROb2RlIiwiZXZlcnkiLCJmaWx0ZXJDaGlsZE5vZGUiLCJmaWx0ZXIiLCJyZWR1Y2VDaGlsZE5vZGUiLCJpbml0aWFsVmFsdWUiLCJyZWR1Y2UiLCJmb3JFYWNoQ2hpbGROb2RlIiwiZm9yRWFjaCIsInNldENoaWxkTm9kZXNQYXJlbnROb2RlIiwidW5kZWZpbmVkIiwiY2hpbGROb2RlIiwicmVzZXRDaGlsZE5vZGVzUGFyZW50Tm9kZSIsImFkZENoaWxkTm9kZSIsImFkZGVkQ2hpbGROb2RlIiwic3RhcnRJbmRleCIsImFkZGVkQ2hpbGROb2RlcyIsImFkZENoaWxkTm9kZXMiLCJkZWxldGVDb3VudCIsInNwbGljZUNoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGUiLCJyZW1vdmVkQ2hpbGROb2RlIiwicmVtb3ZlZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGVzIiwicmVtb3ZlZENoaWxkTm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJmaXJzdFJlcGxhY2VkQ2hpbGROb2RlIiwiZmlyc3QiLCJmaXJzdEluZGV4IiwiaW5kZXhPZiIsInJlcGxhY2VDaGlsZE5vZGUiLCJyZXBsYWNlZENoaWxkTm9kZSIsInJlcGxhY2VtZW50Q2hpbGROb2RlcyIsInJlcGxhY2VkQ2hpbGROb2RlcyIsInJlcGxhY2VDaGlsZE5vZGVzIiwicmVwbGFjZWRDaGlsZE5vZGVzTGVuZ3RoIiwic3BsaWNlIiwic2xpY2VDaGlsZE5vZGVzIiwiZW5kSW5kZXgiLCJJbmZpbml0eSIsInNsaWNlIiwiYXNTdHJpbmciLCJzdHJpbmciLCJFTVBUWV9TVFJJTkciLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0eXBlIiwiZ2V0VHlwZSIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwibm9uVGVybWluYWxOb2RlIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImFzUGFyc2VUcmVlIiwibm9kZSIsIm5vZGVQYXJzZVRyZWUiLCJOb2RlUGFyc2VUcmVlIiwiZnJvbU5vZGUiLCJwYXJzZVRyZWUiLCJmcm9tTm90aGluZyIsIkNsYXNzIiwiZnJvbU91dGVyTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNcUJBOzs7MkRBSks7eUJBRUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsSUFBQSxBQUFNQSxxQkFBTjthQUFNQSxLQUNQQyxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsVUFBVTtnQ0FEMUJIO1FBRWpCLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtRQUNqQixJQUFJLENBQUNDLFVBQVUsR0FBR0E7UUFDbEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBOztrQkFKREg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFNBQVM7WUFDdkI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFVBQVU7WUFDeEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFVBQVU7WUFDeEI7OztZQUVBSSxLQUFBQTtt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
|