occam-dom 6.1.4 → 6.1.6
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/lib/node.js +25 -1
- package/package.json +1 -1
- package/src/node.js +35 -0
package/lib/node.js
CHANGED
|
@@ -17,6 +17,7 @@ function _interop_require_default(obj) {
|
|
|
17
17
|
default: obj
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
|
+
const { addChildNodes, removeChildNodes } = _occamparsers.nodeMixins;
|
|
20
21
|
class Node {
|
|
21
22
|
constructor(outerNode, parentNode, childNodes){
|
|
22
23
|
this.outerNode = outerNode;
|
|
@@ -91,6 +92,29 @@ class Node {
|
|
|
91
92
|
const outerNodeMatches = this.outerNode === outerNode;
|
|
92
93
|
return outerNodeMatches;
|
|
93
94
|
}
|
|
95
|
+
addChildNodes(addedChildNodes, startIndex) {
|
|
96
|
+
addChildNodes.call(this, addedChildNodes, startIndex);
|
|
97
|
+
}
|
|
98
|
+
removeChildNodes(removedChildNodes = null) {
|
|
99
|
+
let childNodes;
|
|
100
|
+
childNodes = this.getChildNodes();
|
|
101
|
+
if (removedChildNodes !== null) {
|
|
102
|
+
childNodes = childNodes.filter((childNode)=>{
|
|
103
|
+
const outerNode = childNode.getOuterNode(), index = removedChildNodes.findIndex((removedChildNode)=>{
|
|
104
|
+
const outerNodeMatches = removedChildNode.matchOuterNode(outerNode);
|
|
105
|
+
if (outerNodeMatches) {
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
if (index !== -1) {
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
removedChildNodes = childNodes; ///
|
|
115
|
+
removedChildNodes = removeChildNodes.call(this, removedChildNodes);
|
|
116
|
+
return removedChildNodes;
|
|
117
|
+
}
|
|
94
118
|
destroy() {
|
|
95
119
|
this.forEachChildNode((childNode)=>{
|
|
96
120
|
childNode.destroy();
|
|
@@ -156,4 +180,4 @@ function cloneChildNodes(childNodes) {
|
|
|
156
180
|
return childNodes;
|
|
157
181
|
}
|
|
158
182
|
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlTWl4aW5zIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuaW1wb3J0IE5vZGVQYXJzZVRyZWUgZnJvbSBcIi4vcGFyc2VUcmVlL25vZGVcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBpc0xlc3NUaGFuLCBpc0dyZWF0ZXJUaGFuLCBpc0xlc3NUaGFuT3JFcXVhbFRvLCBpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTm9kZSB7XG4gIGNvbnN0cnVjdG9yKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2Rlcykge1xuICAgIHRoaXMub3V0ZXJOb2RlID0gb3V0ZXJOb2RlO1xuICAgIHRoaXMucGFyZW50Tm9kZSA9IHBhcmVudE5vZGU7XG4gICAgdGhpcy5jaGlsZE5vZGVzID0gY2hpbGROb2RlcztcbiAgfVxuXG4gIGdldE91dGVyTm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vdXRlck5vZGU7XG4gIH1cblxuICBnZXRQYXJlbnROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudE5vZGU7XG4gIH1cblxuICBnZXRDaGlsZE5vZGVzKCkge1xuICAgIHJldHVybiB0aGlzLmNoaWxkTm9kZXM7XG4gIH1cblxuICBzZXRPdXRlck5vZGUob3V0ZXJOb2RlKSB7XG4gICAgdGhpcy5vdXRlck5vZGUgPSBvdXRlck5vZGU7XG4gIH1cblxuICBzZXRQYXJlbnROb2RlKHBhcmVudE5vZGUpIHtcbiAgICB0aGlzLnBhcmVudE5vZGUgPSBwYXJlbnROb2RlO1xuICB9XG5cbiAgc2V0Q2hpbGROb2RlcyhjaGlsZE5vZGVzKSB7XG4gICAgY29uc3Qgc3RhcnRJbmRleCA9IDAsXG4gICAgICAgICAgZGVsZXRlQ291bnQgPSBJbmZpbml0eSxcbiAgICAgICAgICBhZGRlZENoaWxkTm9kZXMgPSBjaGlsZE5vZGVzOyAgLy8vXG5cbiAgICB0aGlzLnNwbGljZUNoaWxkTm9kZXMoc3RhcnRJbmRleCwgZGVsZXRlQ291bnQsIGFkZGVkQ2hpbGROb2Rlcyk7XG4gIH1cblxuICBnZXREZXNjZW5kYW50Tm9kZXMoZGVzY2VuZGFudE5vZGVzID0gW10pIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICBjaGlsZE5vZGVzLmZvckVhY2goKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgY29uc3QgZGVzY2VuZGFudE5vZGUgPSBjaGlsZE5vZGU7IC8vL1xuXG4gICAgICBkZXNjZW5kYW50Tm9kZXMucHVzaChkZXNjZW5kYW50Tm9kZSk7XG5cbiAgICAgIGNoaWxkTm9kZS5nZXREZXNjZW5kYW50Tm9kZXMoZGVzY2VuZGFudE5vZGVzKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBkZXNjZW5kYW50Tm9kZXM7XG4gIH1cblxuICByZXRyaWV2ZU5vZGUoY2FsbGJhY2spIHtcbiAgICBsZXQgbm9kZSA9IG51bGw7XG5cbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgY2hpbGROb2RlcyA9IHRoaXMuZ2V0Q2hpbGROb2RlcygpO1xuXG4gICAgICBjaGlsZE5vZGVzLnNvbWUoKGNoaWxkTm9kZSkgPT4ge1xuICAgICAgICBub2RlID0gY2hpbGROb2RlLnJldHJpZXZlTm9kZShjYWxsYmFjayk7XG5cbiAgICAgICAgaWYgKG5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcbiAgICAgIG5vZGUgPSB0aGlzO1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBjYWxsYmFjayhub2RlKTtcblxuICAgICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgICAgbm9kZSA9IG51bGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBpc0xlc3NUaGFuKG5vZGUpIHtcbiAgICBjb25zdCBub2RlQSA9IHRoaXMsIC8vL1xuICAgICAgICAgIG5vZGVCID0gbm9kZSwgLy8vXG4gICAgICAgICAgbGVzc1RoYW4gPSBpc0xlc3NUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICByZXR1cm4gbGVzc1RoYW47XG4gIH1cblxuICBpc0dyZWF0ZXJUaGFuKG5vZGUpIHtcbiAgICBjb25zdCBub2RlQSA9IHRoaXMsIC8vL1xuICAgICAgICAgIG5vZGVCID0gbm9kZSwgLy8vXG4gICAgICAgICAgZ3JlYXRlclRoYW4gPSBpc0dyZWF0ZXJUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICByZXR1cm4gZ3JlYXRlclRoYW47XG4gIH1cblxuICBpc0xlc3NUaGFuT3JFcXVhbFRvKG5vZGUpIHtcbiAgICBjb25zdCBub2RlQSA9IHRoaXMsIC8vL1xuICAgICAgICAgIG5vZGVCID0gbm9kZSwgLy8vXG4gICAgICAgICAgbGVzc1RoYW5PckVxdWFsVG8gPSBpc0xlc3NUaGFuT3JFcXVhbFRvKG5vZGVBLCBub2RlQik7XG5cbiAgICByZXR1cm4gbGVzc1RoYW5PckVxdWFsVG87XG4gIH1cblxuICBpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvKG5vZGUpIHtcbiAgICBjb25zdCBub2RlQSA9IHRoaXMsIC8vL1xuICAgICAgICBub2RlQiA9IG5vZGUsIC8vL1xuICAgICAgICBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IGlzR3JlYXRlclRoYW5PckVxdWFsVG8obm9kZUEsIG5vZGVCKTtcblxuICAgIHJldHVybiBncmVhdGVyVGhhbk9yRXF1YWxUbztcbiAgfVxuXG4gIG1hdGNoT3V0ZXJOb2RlKG91dGVyTm9kZSkge1xuICAgIGNvbnN0IG91dGVyTm9kZU1hdGNoZXMgPSAodGhpcy5vdXRlck5vZGUgPT09IG91dGVyTm9kZSk7XG5cbiAgICByZXR1cm4gb3V0ZXJOb2RlTWF0Y2hlcztcbiAgfVxuXG4gIGRlc3Ryb3koKSB7XG4gICAgdGhpcy5mb3JFYWNoQ2hpbGROb2RlKChjaGlsZE5vZGUpID0+IHtcbiAgICAgIGNoaWxkTm9kZS5kZXN0cm95KCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm91dGVyTm9kZSA9IG51bGw7XG4gICAgdGhpcy5wYXJlbnROb2RlID0gbnVsbDtcbiAgICB0aGlzLmNoaWxkTm9kZXMgPSBudWxsO1xuICB9XG5cbiAgYXNTdHJpbmcoKSB7XG4gICAgbGV0IHN0cmluZyA9IEVNUFRZX1NUUklORztcblxuICAgIGlmICh0aGlzLm91dGVyTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9kZVRlcm1pbmFsTm9kZSA9IHRoaXMub3V0ZXJOb2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgICAgIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgICAgIGNvbnN0IHRlcm1pbmFsTm9kZSA9IHRoaXMub3V0ZXJOb2RlLFxuICAgICAgICAgICAgICB0eXBlID0gdGVybWluYWxOb2RlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgY29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICAgICAgc3RyaW5nID0gYFwiJHtjb250ZW50fVwiIFske3R5cGV9XWA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSB0aGlzLm91dGVyTm9kZSxcbiAgICAgICAgICAgICAgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKTtcblxuICAgICAgICBzdHJpbmcgPSBydWxlTmFtZTsgIC8vL1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBhc1BhcnNlVHJlZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcywgIC8vL1xuICAgICAgICAgIG5vZGVQYXJzZVRyZWUgPSBOb2RlUGFyc2VUcmVlLmZyb21Ob2RlKG5vZGUpLFxuICAgICAgICAgIHBhcnNlVHJlZSA9IG5vZGVQYXJzZVRyZWU7ICAvLy9cblxuICAgIHJldHVybiBwYXJzZVRyZWU7XG4gIH1cblxuICBjbG9uZSguLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBjb25zdCBDbGFzcyA9IHRoaXMuY29uc3RydWN0b3IsXG4gICAgICAgICAgb3V0ZXJOb2RlID0gdGhpcy5vdXRlck5vZGUsXG4gICAgICAgICAgcGFyZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgY2hpbGROb2RlcyA9IGNsb25lQ2hpbGROb2Rlcyh0aGlzLmNoaWxkTm9kZXMpLFxuICAgICAgICAgIG5vZGUgPSBuZXcgQ2xhc3Mob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgbm9kZS5zZXRDaGlsZE5vZGVzUGFyZW50Tm9kZSgpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoQ2xhc3MsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGlmIChDbGFzcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBDbGFzcyA9IE5vZGU7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IG91dGVyTm9kZSA9IG51bGwsXG4gICAgICAgICAgcGFyZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgY2hpbGROb2RlcyA9IFtdLFxuICAgICAgICAgIG5vZGUgPSBuZXcgQ2xhc3Mob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbU91dGVyTm9kZShDbGFzcywgb3V0ZXJOb2RlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAob3V0ZXJOb2RlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG91dGVyTm9kZSA9IENsYXNzOyAgLy8vXG5cbiAgICAgIENsYXNzID0gTm9kZTsgLy8vXG4gICAgfVxuXG4gICAgY29uc3QgcGFyZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgY2hpbGROb2RlcyA9IFtdLFxuICAgICAgICAgIG5vZGUgPSBuZXcgQ2xhc3Mob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbUNoaWxkTm9kZXMoQ2xhc3MsIGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGlmIChjaGlsZE5vZGVzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNoaWxkTm9kZXMgPSBDbGFzczsgIC8vL1xuXG4gICAgICBDbGFzcyA9IE5vZGU7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IG91dGVyTm9kZSA9IG51bGwsXG4gICAgICAgICAgcGFyZW50Tm9kZSA9IG51bGwsXG4gICAgICAgICAgbm9kZSA9IG5ldyBDbGFzcyhvdXRlck5vZGUsIHBhcmVudE5vZGUsIGNoaWxkTm9kZXMsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cyk7XG5cbiAgICBub2RlLnNldENoaWxkTm9kZXNQYXJlbnROb2RlKCk7XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxufVxuXG5PYmplY3QuYXNzaWduKE5vZGUucHJvdG90eXBlLCBub2RlTWl4aW5zKTtcblxuZnVuY3Rpb24gY2xvbmVDaGlsZE5vZGVzKGNoaWxkTm9kZXMpIHtcbiAgY2hpbGROb2RlcyA9IGNoaWxkTm9kZXMubWFwKChjaGlsZE5vZGUpID0+IHsgIC8vL1xuICAgIGNoaWxkTm9kZSA9IGNoaWxkTm9kZS5jbG9uZSgpOyAgLy8vXG5cbiAgICByZXR1cm4gY2hpbGROb2RlO1xuICB9KTtcblxuICByZXR1cm4gY2hpbGROb2Rlcztcbn1cbiJdLCJuYW1lcyI6WyJOb2RlIiwib3V0ZXJOb2RlIiwicGFyZW50Tm9kZSIsImNoaWxkTm9kZXMiLCJnZXRPdXRlck5vZGUiLCJnZXRQYXJlbnROb2RlIiwiZ2V0Q2hpbGROb2RlcyIsInNldE91dGVyTm9kZSIsInNldFBhcmVudE5vZGUiLCJzZXRDaGlsZE5vZGVzIiwic3RhcnRJbmRleCIsImRlbGV0ZUNvdW50IiwiSW5maW5pdHkiLCJhZGRlZENoaWxkTm9kZXMiLCJzcGxpY2VDaGlsZE5vZGVzIiwiZ2V0RGVzY2VuZGFudE5vZGVzIiwiZGVzY2VuZGFudE5vZGVzIiwiZm9yRWFjaCIsImNoaWxkTm9kZSIsImRlc2NlbmRhbnROb2RlIiwicHVzaCIsInJldHJpZXZlTm9kZSIsImNhbGxiYWNrIiwibm9kZSIsInNvbWUiLCJyZXN1bHQiLCJpc0xlc3NUaGFuIiwibm9kZUEiLCJub2RlQiIsImxlc3NUaGFuIiwiaXNHcmVhdGVyVGhhbiIsImdyZWF0ZXJUaGFuIiwiaXNMZXNzVGhhbk9yRXF1YWxUbyIsImxlc3NUaGFuT3JFcXVhbFRvIiwiaXNHcmVhdGVyVGhhbk9yRXF1YWxUbyIsImdyZWF0ZXJUaGFuT3JFcXVhbFRvIiwibWF0Y2hPdXRlck5vZGUiLCJvdXRlck5vZGVNYXRjaGVzIiwiZGVzdHJveSIsImZvckVhY2hDaGlsZE5vZGUiLCJhc1N0cmluZyIsInN0cmluZyIsIkVNUFRZX1NUUklORyIsIm5vZGVUZXJtaW5hbE5vZGUiLCJpc1Rlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsInR5cGUiLCJnZXRUeXBlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJub25UZXJtaW5hbE5vZGUiLCJydWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiYXNQYXJzZVRyZWUiLCJub2RlUGFyc2VUcmVlIiwiTm9kZVBhcnNlVHJlZSIsImZyb21Ob2RlIiwicGFyc2VUcmVlIiwiY2xvbmUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJDbGFzcyIsImNsb25lQ2hpbGROb2RlcyIsInNldENoaWxkTm9kZXNQYXJlbnROb2RlIiwiZnJvbU5vdGhpbmciLCJ1bmRlZmluZWQiLCJmcm9tT3V0ZXJOb2RlIiwiZnJvbUNoaWxkTm9kZXMiLCJPYmplY3QiLCJhc3NpZ24i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
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlTWl4aW5zIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuaW1wb3J0IE5vZGVQYXJzZVRyZWUgZnJvbSBcIi4vcGFyc2VUcmVlL25vZGVcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBpc0xlc3NUaGFuLCBpc0dyZWF0ZXJUaGFuLCBpc0xlc3NUaGFuT3JFcXVhbFRvLCBpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcblxuY29uc3QgeyBhZGRDaGlsZE5vZGVzLCByZW1vdmVDaGlsZE5vZGVzIH0gPSBub2RlTWl4aW5zO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBOb2RlIHtcbiAgY29uc3RydWN0b3Iob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzKSB7XG4gICAgdGhpcy5vdXRlck5vZGUgPSBvdXRlck5vZGU7XG4gICAgdGhpcy5wYXJlbnROb2RlID0gcGFyZW50Tm9kZTtcbiAgICB0aGlzLmNoaWxkTm9kZXMgPSBjaGlsZE5vZGVzO1xuICB9XG5cbiAgZ2V0T3V0ZXJOb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm91dGVyTm9kZTtcbiAgfVxuXG4gIGdldFBhcmVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZTtcbiAgfVxuXG4gIGdldENoaWxkTm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hpbGROb2RlcztcbiAgfVxuXG4gIHNldE91dGVyTm9kZShvdXRlck5vZGUpIHtcbiAgICB0aGlzLm91dGVyTm9kZSA9IG91dGVyTm9kZTtcbiAgfVxuXG4gIHNldFBhcmVudE5vZGUocGFyZW50Tm9kZSkge1xuICAgIHRoaXMucGFyZW50Tm9kZSA9IHBhcmVudE5vZGU7XG4gIH1cblxuICBzZXRDaGlsZE5vZGVzKGNoaWxkTm9kZXMpIHtcbiAgICBjb25zdCBzdGFydEluZGV4ID0gMCxcbiAgICAgICAgICBkZWxldGVDb3VudCA9IEluZmluaXR5LFxuICAgICAgICAgIGFkZGVkQ2hpbGROb2RlcyA9IGNoaWxkTm9kZXM7ICAvLy9cblxuICAgIHRoaXMuc3BsaWNlQ2hpbGROb2RlcyhzdGFydEluZGV4LCBkZWxldGVDb3VudCwgYWRkZWRDaGlsZE5vZGVzKTtcbiAgfVxuXG4gIGdldERlc2NlbmRhbnROb2RlcyhkZXNjZW5kYW50Tm9kZXMgPSBbXSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSB0aGlzLmdldENoaWxkTm9kZXMoKTtcblxuICAgIGNoaWxkTm9kZXMuZm9yRWFjaCgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjb25zdCBkZXNjZW5kYW50Tm9kZSA9IGNoaWxkTm9kZTsgLy8vXG5cbiAgICAgIGRlc2NlbmRhbnROb2Rlcy5wdXNoKGRlc2NlbmRhbnROb2RlKTtcblxuICAgICAgY2hpbGROb2RlLmdldERlc2NlbmRhbnROb2RlcyhkZXNjZW5kYW50Tm9kZXMpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGRlc2NlbmRhbnROb2RlcztcbiAgfVxuXG4gIHJldHJpZXZlTm9kZShjYWxsYmFjaykge1xuICAgIGxldCBub2RlID0gbnVsbDtcblxuICAgIGlmIChub2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICAgIGNoaWxkTm9kZXMuc29tZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICAgIG5vZGUgPSBjaGlsZE5vZGUucmV0cmlldmVOb2RlKGNhbGxiYWNrKTtcblxuICAgICAgICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgbm9kZSA9IHRoaXM7XG5cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGNhbGxiYWNrKG5vZGUpO1xuXG4gICAgICBpZiAoIXJlc3VsdCkge1xuICAgICAgICBub2RlID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxuXG4gIGlzTGVzc1RoYW4obm9kZSkge1xuICAgIGNvbnN0IG5vZGVBID0gdGhpcywgLy8vXG4gICAgICAgICAgbm9kZUIgPSBub2RlLCAvLy9cbiAgICAgICAgICBsZXNzVGhhbiA9IGlzTGVzc1RoYW4obm9kZUEsIG5vZGVCKTtcblxuICAgIHJldHVybiBsZXNzVGhhbjtcbiAgfVxuXG4gIGlzR3JlYXRlclRoYW4obm9kZSkge1xuICAgIGNvbnN0IG5vZGVBID0gdGhpcywgLy8vXG4gICAgICAgICAgbm9kZUIgPSBub2RlLCAvLy9cbiAgICAgICAgICBncmVhdGVyVGhhbiA9IGlzR3JlYXRlclRoYW4obm9kZUEsIG5vZGVCKTtcblxuICAgIHJldHVybiBncmVhdGVyVGhhbjtcbiAgfVxuXG4gIGlzTGVzc1RoYW5PckVxdWFsVG8obm9kZSkge1xuICAgIGNvbnN0IG5vZGVBID0gdGhpcywgLy8vXG4gICAgICAgICAgbm9kZUIgPSBub2RlLCAvLy9cbiAgICAgICAgICBsZXNzVGhhbk9yRXF1YWxUbyA9IGlzTGVzc1RoYW5PckVxdWFsVG8obm9kZUEsIG5vZGVCKTtcblxuICAgIHJldHVybiBsZXNzVGhhbk9yRXF1YWxUbztcbiAgfVxuXG4gIGlzR3JlYXRlclRoYW5PckVxdWFsVG8obm9kZSkge1xuICAgIGNvbnN0IG5vZGVBID0gdGhpcywgLy8vXG4gICAgICAgIG5vZGVCID0gbm9kZSwgLy8vXG4gICAgICAgIGdyZWF0ZXJUaGFuT3JFcXVhbFRvID0gaXNHcmVhdGVyVGhhbk9yRXF1YWxUbyhub2RlQSwgbm9kZUIpO1xuXG4gICAgcmV0dXJuIGdyZWF0ZXJUaGFuT3JFcXVhbFRvO1xuICB9XG5cbiAgbWF0Y2hPdXRlck5vZGUob3V0ZXJOb2RlKSB7XG4gICAgY29uc3Qgb3V0ZXJOb2RlTWF0Y2hlcyA9ICh0aGlzLm91dGVyTm9kZSA9PT0gb3V0ZXJOb2RlKTtcblxuICAgIHJldHVybiBvdXRlck5vZGVNYXRjaGVzO1xuICB9XG5cbiAgYWRkQ2hpbGROb2RlcyhhZGRlZENoaWxkTm9kZXMsIHN0YXJ0SW5kZXgpIHtcbiAgICBhZGRDaGlsZE5vZGVzLmNhbGwodGhpcywgYWRkZWRDaGlsZE5vZGVzLCBzdGFydEluZGV4KTtcbiAgfVxuXG4gIHJlbW92ZUNoaWxkTm9kZXMocmVtb3ZlZENoaWxkTm9kZXMgPSBudWxsKSB7XG4gICAgbGV0IGNoaWxkTm9kZXM7XG5cbiAgICBjaGlsZE5vZGVzID0gdGhpcy5nZXRDaGlsZE5vZGVzKCk7XG5cbiAgICBpZiAocmVtb3ZlZENoaWxkTm9kZXMgIT09IG51bGwpIHtcbiAgICAgIGNoaWxkTm9kZXMgPSBjaGlsZE5vZGVzLmZpbHRlcigoY2hpbGROb2RlKSA9PiB7IC8vL1xuICAgICAgICBjb25zdCBvdXRlck5vZGUgPSBjaGlsZE5vZGUuZ2V0T3V0ZXJOb2RlKCksXG4gICAgICAgICAgICAgIGluZGV4ID0gcmVtb3ZlZENoaWxkTm9kZXMuZmluZEluZGV4KChyZW1vdmVkQ2hpbGROb2RlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3V0ZXJOb2RlTWF0Y2hlcyA9IHJlbW92ZWRDaGlsZE5vZGUubWF0Y2hPdXRlck5vZGUob3V0ZXJOb2RlKTtcblxuICAgICAgICAgICAgICAgIGlmIChvdXRlck5vZGVNYXRjaGVzKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlZENoaWxkTm9kZXMgPSBjaGlsZE5vZGVzOyAgLy8vXG5cbiAgICByZW1vdmVkQ2hpbGROb2RlcyA9IHJlbW92ZUNoaWxkTm9kZXMuY2FsbCh0aGlzLCByZW1vdmVkQ2hpbGROb2Rlcyk7XG5cbiAgICByZXR1cm4gcmVtb3ZlZENoaWxkTm9kZXM7XG4gIH1cblxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuZm9yRWFjaENoaWxkTm9kZSgoY2hpbGROb2RlKSA9PiB7XG4gICAgICBjaGlsZE5vZGUuZGVzdHJveSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5vdXRlck5vZGUgPSBudWxsO1xuICAgIHRoaXMucGFyZW50Tm9kZSA9IG51bGw7XG4gICAgdGhpcy5jaGlsZE5vZGVzID0gbnVsbDtcbiAgfVxuXG4gIGFzU3RyaW5nKCkge1xuICAgIGxldCBzdHJpbmcgPSBFTVBUWV9TVFJJTkc7XG5cbiAgICBpZiAodGhpcy5vdXRlck5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSB0aGlzLm91dGVyTm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gICAgICBpZiAobm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSB0aGlzLm91dGVyTm9kZSxcbiAgICAgICAgICAgICAgdHlwZSA9IHRlcm1pbmFsTm9kZS5nZXRUeXBlKCksXG4gICAgICAgICAgICAgIGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgICAgIHN0cmluZyA9IGBcIiR7Y29udGVudH1cIiBbJHt0eXBlfV1gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gdGhpcy5vdXRlck5vZGUsXG4gICAgICAgICAgICAgIHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgICAgICAgc3RyaW5nID0gcnVsZU5hbWU7ICAvLy9cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgYXNQYXJzZVRyZWUoKSB7XG4gICAgY29uc3Qgbm9kZSA9IHRoaXMsICAvLy9cbiAgICAgICAgICBub2RlUGFyc2VUcmVlID0gTm9kZVBhcnNlVHJlZS5mcm9tTm9kZShub2RlKSxcbiAgICAgICAgICBwYXJzZVRyZWUgPSBub2RlUGFyc2VUcmVlOyAgLy8vXG5cbiAgICByZXR1cm4gcGFyc2VUcmVlO1xuICB9XG5cbiAgY2xvbmUoLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgY29uc3QgQ2xhc3MgPSB0aGlzLmNvbnN0cnVjdG9yLFxuICAgICAgICAgIG91dGVyTm9kZSA9IHRoaXMub3V0ZXJOb2RlLFxuICAgICAgICAgIHBhcmVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGNoaWxkTm9kZXMgPSBjbG9uZUNoaWxkTm9kZXModGhpcy5jaGlsZE5vZGVzKSxcbiAgICAgICAgICBub2RlID0gbmV3IENsYXNzKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIG5vZGUuc2V0Q2hpbGROb2Rlc1BhcmVudE5vZGUoKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKENsYXNzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoQ2xhc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgQ2xhc3MgPSBOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBvdXRlck5vZGUgPSBudWxsLFxuICAgICAgICAgIHBhcmVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGNoaWxkTm9kZXMgPSBbXSxcbiAgICAgICAgICBub2RlID0gbmV3IENsYXNzKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21PdXRlck5vZGUoQ2xhc3MsIG91dGVyTm9kZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gICAgaWYgKG91dGVyTm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBvdXRlck5vZGUgPSBDbGFzczsgIC8vL1xuXG4gICAgICBDbGFzcyA9IE5vZGU7IC8vL1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIGNoaWxkTm9kZXMgPSBbXSxcbiAgICAgICAgICBub2RlID0gbmV3IENsYXNzKG91dGVyTm9kZSwgcGFyZW50Tm9kZSwgY2hpbGROb2RlcywgLi4ucmVtYWluaW5nQXJndW1lbnRzKTtcblxuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21DaGlsZE5vZGVzKENsYXNzLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgICBpZiAoY2hpbGROb2RlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjaGlsZE5vZGVzID0gQ2xhc3M7ICAvLy9cblxuICAgICAgQ2xhc3MgPSBOb2RlOyAvLy9cbiAgICB9XG5cbiAgICBjb25zdCBvdXRlck5vZGUgPSBudWxsLFxuICAgICAgICAgIHBhcmVudE5vZGUgPSBudWxsLFxuICAgICAgICAgIG5vZGUgPSBuZXcgQ2xhc3Mob3V0ZXJOb2RlLCBwYXJlbnROb2RlLCBjaGlsZE5vZGVzLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpO1xuXG4gICAgbm9kZS5zZXRDaGlsZE5vZGVzUGFyZW50Tm9kZSgpO1xuXG4gICAgcmV0dXJuIG5vZGU7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihOb2RlLnByb3RvdHlwZSwgbm9kZU1peGlucyk7XG5cbmZ1bmN0aW9uIGNsb25lQ2hpbGROb2RlcyhjaGlsZE5vZGVzKSB7XG4gIGNoaWxkTm9kZXMgPSBjaGlsZE5vZGVzLm1hcCgoY2hpbGROb2RlKSA9PiB7ICAvLy9cbiAgICBjaGlsZE5vZGUgPSBjaGlsZE5vZGUuY2xvbmUoKTsgIC8vL1xuXG4gICAgcmV0dXJuIGNoaWxkTm9kZTtcbiAgfSk7XG5cbiAgcmV0dXJuIGNoaWxkTm9kZXM7XG59XG4iXSwibmFtZXMiOlsiTm9kZSIsImFkZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGVzIiwibm9kZU1peGlucyIsIm91dGVyTm9kZSIsInBhcmVudE5vZGUiLCJjaGlsZE5vZGVzIiwiZ2V0T3V0ZXJOb2RlIiwiZ2V0UGFyZW50Tm9kZSIsImdldENoaWxkTm9kZXMiLCJzZXRPdXRlck5vZGUiLCJzZXRQYXJlbnROb2RlIiwic2V0Q2hpbGROb2RlcyIsInN0YXJ0SW5kZXgiLCJkZWxldGVDb3VudCIsIkluZmluaXR5IiwiYWRkZWRDaGlsZE5vZGVzIiwic3BsaWNlQ2hpbGROb2RlcyIsImdldERlc2NlbmRhbnROb2RlcyIsImRlc2NlbmRhbnROb2RlcyIsImZvckVhY2giLCJjaGlsZE5vZGUiLCJkZXNjZW5kYW50Tm9kZSIsInB1c2giLCJyZXRyaWV2ZU5vZGUiLCJjYWxsYmFjayIsIm5vZGUiLCJzb21lIiwicmVzdWx0IiwiaXNMZXNzVGhhbiIsIm5vZGVBIiwibm9kZUIiLCJsZXNzVGhhbiIsImlzR3JlYXRlclRoYW4iLCJncmVhdGVyVGhhbiIsImlzTGVzc1RoYW5PckVxdWFsVG8iLCJsZXNzVGhhbk9yRXF1YWxUbyIsImlzR3JlYXRlclRoYW5PckVxdWFsVG8iLCJncmVhdGVyVGhhbk9yRXF1YWxUbyIsIm1hdGNoT3V0ZXJOb2RlIiwib3V0ZXJOb2RlTWF0Y2hlcyIsImNhbGwiLCJyZW1vdmVkQ2hpbGROb2RlcyIsImZpbHRlciIsImluZGV4IiwiZmluZEluZGV4IiwicmVtb3ZlZENoaWxkTm9kZSIsImRlc3Ryb3kiLCJmb3JFYWNoQ2hpbGROb2RlIiwiYXNTdHJpbmciLCJzdHJpbmciLCJFTVBUWV9TVFJJTkciLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0eXBlIiwiZ2V0VHlwZSIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwibm9uVGVybWluYWxOb2RlIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImFzUGFyc2VUcmVlIiwibm9kZVBhcnNlVHJlZSIsIk5vZGVQYXJzZVRyZWUiLCJmcm9tTm9kZSIsInBhcnNlVHJlZSIsImNsb25lIiwicmVtYWluaW5nQXJndW1lbnRzIiwiQ2xhc3MiLCJjbG9uZUNoaWxkTm9kZXMiLCJzZXRDaGlsZE5vZGVzUGFyZW50Tm9kZSIsImZyb21Ob3RoaW5nIiwidW5kZWZpbmVkIiwiZnJvbU91dGVyTm9kZSIsImZyb21DaGlsZE5vZGVzIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwibWFwIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQXFCQTs7OzhCQVRNOzZEQUVEOzJCQUVHO3VCQUMwRDs7Ozs7O0FBRXZGLE1BQU0sRUFBRUMsYUFBYSxFQUFFQyxnQkFBZ0IsRUFBRSxHQUFHQyx3QkFBVTtBQUV2QyxNQUFNSDtJQUNuQixZQUFZSSxTQUFTLEVBQUVDLFVBQVUsRUFBRUMsVUFBVSxDQUFFO1FBQzdDLElBQUksQ0FBQ0YsU0FBUyxHQUFHQTtRQUNqQixJQUFJLENBQUNDLFVBQVUsR0FBR0E7UUFDbEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO0lBQ3BCO0lBRUFDLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0gsU0FBUztJQUN2QjtJQUVBSSxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0gsVUFBVTtJQUN4QjtJQUVBSSxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0gsVUFBVTtJQUN4QjtJQUVBSSxhQUFhTixTQUFTLEVBQUU7UUFDdEIsSUFBSSxDQUFDQSxTQUFTLEdBQUdBO0lBQ25CO0lBRUFPLGNBQWNOLFVBQVUsRUFBRTtRQUN4QixJQUFJLENBQUNBLFVBQVUsR0FBR0E7SUFDcEI7SUFFQU8sY0FBY04sVUFBVSxFQUFFO1FBQ3hCLE1BQU1PLGFBQWEsR0FDYkMsY0FBY0MsVUFDZEMsa0JBQWtCVixZQUFhLEdBQUc7UUFFeEMsSUFBSSxDQUFDVyxnQkFBZ0IsQ0FBQ0osWUFBWUMsYUFBYUU7SUFDakQ7SUFFQUUsbUJBQW1CQyxrQkFBa0IsRUFBRSxFQUFFO1FBQ3ZDLE1BQU1iLGFBQWEsSUFBSSxDQUFDRyxhQUFhO1FBRXJD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
|
package/package.json
CHANGED
package/src/node.js
CHANGED
|
@@ -7,6 +7,8 @@ import NodeParseTree from "./parseTree/node";
|
|
|
7
7
|
import { EMPTY_STRING } from "./constants";
|
|
8
8
|
import { isLessThan, isGreaterThan, isLessThanOrEqualTo, isGreaterThanOrEqualTo } from "./utilities/node";
|
|
9
9
|
|
|
10
|
+
const { addChildNodes, removeChildNodes } = nodeMixins;
|
|
11
|
+
|
|
10
12
|
export default class Node {
|
|
11
13
|
constructor(outerNode, parentNode, childNodes) {
|
|
12
14
|
this.outerNode = outerNode;
|
|
@@ -122,6 +124,39 @@ export default class Node {
|
|
|
122
124
|
return outerNodeMatches;
|
|
123
125
|
}
|
|
124
126
|
|
|
127
|
+
addChildNodes(addedChildNodes, startIndex) {
|
|
128
|
+
addChildNodes.call(this, addedChildNodes, startIndex);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
removeChildNodes(removedChildNodes = null) {
|
|
132
|
+
let childNodes;
|
|
133
|
+
|
|
134
|
+
childNodes = this.getChildNodes();
|
|
135
|
+
|
|
136
|
+
if (removedChildNodes !== null) {
|
|
137
|
+
childNodes = childNodes.filter((childNode) => { ///
|
|
138
|
+
const outerNode = childNode.getOuterNode(),
|
|
139
|
+
index = removedChildNodes.findIndex((removedChildNode) => {
|
|
140
|
+
const outerNodeMatches = removedChildNode.matchOuterNode(outerNode);
|
|
141
|
+
|
|
142
|
+
if (outerNodeMatches) {
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
if (index !== -1) {
|
|
148
|
+
return true;
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
removedChildNodes = childNodes; ///
|
|
154
|
+
|
|
155
|
+
removedChildNodes = removeChildNodes.call(this, removedChildNodes);
|
|
156
|
+
|
|
157
|
+
return removedChildNodes;
|
|
158
|
+
}
|
|
159
|
+
|
|
125
160
|
destroy() {
|
|
126
161
|
this.forEachChildNode((childNode) => {
|
|
127
162
|
childNode.destroy();
|