occam-dom 6.1.10 → 6.1.11

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.
@@ -0,0 +1,57 @@
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 InnerDiff;
9
+ }
10
+ });
11
+ const _incremental = require("../utilities/incremental");
12
+ class InnerDiff {
13
+ constructor(parentNode, addedNodes, removedNodes, siblingNodeIndex){
14
+ this.parentNode = parentNode;
15
+ this.addedNodes = addedNodes;
16
+ this.removedNodes = removedNodes;
17
+ this.siblingNodeIndex = siblingNodeIndex;
18
+ }
19
+ getParentNode() {
20
+ return this.parentNode;
21
+ }
22
+ getAddedNodes() {
23
+ return this.addedNodes;
24
+ }
25
+ getRemovedNodes() {
26
+ return this.removedNodes;
27
+ }
28
+ getSiblingNodeIndex() {
29
+ return this.siblingNodeIndex;
30
+ }
31
+ static fromTopmostNodeAndOuterDiff(topmostNode, outerDiff, context) {
32
+ let innerDiff = null;
33
+ let startIndex, parentNode, addedNodes, removedNodes;
34
+ startIndex = outerDiff.getStartIndex();
35
+ parentNode = outerDiff.getParentNode();
36
+ addedNodes = outerDiff.getAddedNodes();
37
+ removedNodes = outerDiff.getRemovedNodes();
38
+ const startOuterIndex = startIndex, parentOuterNode = parentNode, addedOuterNodes = addedNodes, removedOuterNodes = removedNodes; ///
39
+ const { queries, callback, ClassFromOuterNode, outerNodeFromChildOuterNodes } = context;
40
+ parentNode = (0, _incremental.retrieveParentNode)(parentOuterNode, topmostNode);
41
+ addedNodes = (0, _incremental.addedNodesFromAddedOuterNodes)(addedOuterNodes, queries, ClassFromOuterNode, outerNodeFromChildOuterNodes);
42
+ removedNodes = (0, _incremental.removedNodesFromRemovedOuterNodes)(removedOuterNodes, queries, ClassFromOuterNode, outerNodeFromChildOuterNodes);
43
+ const terminate = callback(addedNodes, removedNodes, context);
44
+ if (!terminate) {
45
+ let removedChildNodes;
46
+ removedChildNodes = removedNodes; ///
47
+ removedChildNodes = parentNode.removeChildNodes(removedChildNodes);
48
+ const siblingNodeIndex = (0, _incremental.findSiblingNodeIndex)(startOuterIndex, parentOuterNode, parentNode), addedChildNodes = addedNodes, startIndex = siblingNodeIndex + 1; ///
49
+ parentNode.addChildNodes(addedChildNodes, startIndex);
50
+ removedNodes = removedChildNodes; ///
51
+ innerDiff = new InnerDiff(parentNode, addedNodes, removedNodes, siblingNodeIndex);
52
+ }
53
+ return innerDiff;
54
+ }
55
+ }
56
+
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2lubmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyByZXRyaWV2ZVBhcmVudE5vZGUsIGZpbmRTaWJsaW5nTm9kZUluZGV4LCBhZGRlZE5vZGVzRnJvbUFkZGVkT3V0ZXJOb2RlcywgcmVtb3ZlZE5vZGVzRnJvbVJlbW92ZWRPdXRlck5vZGVzIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9pbmNyZW1lbnRhbFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbm5lckRpZmYge1xuICBjb25zdHJ1Y3RvcihwYXJlbnROb2RlLCBhZGRlZE5vZGVzLCByZW1vdmVkTm9kZXMsIHNpYmxpbmdOb2RlSW5kZXgpIHtcbiAgICB0aGlzLnBhcmVudE5vZGUgPSBwYXJlbnROb2RlO1xuICAgIHRoaXMuYWRkZWROb2RlcyA9IGFkZGVkTm9kZXM7XG4gICAgdGhpcy5yZW1vdmVkTm9kZXMgPSByZW1vdmVkTm9kZXM7XG4gICAgdGhpcy5zaWJsaW5nTm9kZUluZGV4ID0gc2libGluZ05vZGVJbmRleDtcbiAgfVxuXG4gIGdldFBhcmVudE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZTtcbiAgfVxuXG4gIGdldEFkZGVkTm9kZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWRkZWROb2RlcztcbiAgfVxuXG4gIGdldFJlbW92ZWROb2RlcygpIHtcbiAgICByZXR1cm4gdGhpcy5yZW1vdmVkTm9kZXM7XG4gIH1cblxuICBnZXRTaWJsaW5nTm9kZUluZGV4KCkge1xuICAgIHJldHVybiB0aGlzLnNpYmxpbmdOb2RlSW5kZXg7XG4gIH1cblxuICBzdGF0aWMgZnJvbVRvcG1vc3ROb2RlQW5kT3V0ZXJEaWZmKHRvcG1vc3ROb2RlLCBvdXRlckRpZmYsIGNvbnRleHQpIHtcbiAgICBsZXQgaW5uZXJEaWZmID0gbnVsbDtcblxuICAgIGxldCBzdGFydEluZGV4LFxuICAgICAgICBwYXJlbnROb2RlLFxuICAgICAgICBhZGRlZE5vZGVzLFxuICAgICAgICByZW1vdmVkTm9kZXM7XG5cbiAgICBzdGFydEluZGV4ID0gb3V0ZXJEaWZmLmdldFN0YXJ0SW5kZXgoKTtcbiAgICBwYXJlbnROb2RlID0gb3V0ZXJEaWZmLmdldFBhcmVudE5vZGUoKTtcbiAgICBhZGRlZE5vZGVzID0gb3V0ZXJEaWZmLmdldEFkZGVkTm9kZXMoKTtcbiAgICByZW1vdmVkTm9kZXMgPSBvdXRlckRpZmYuZ2V0UmVtb3ZlZE5vZGVzKCk7XG5cbiAgICBjb25zdCBzdGFydE91dGVySW5kZXggPSBzdGFydEluZGV4LCAvLy9cbiAgICAgICAgICBwYXJlbnRPdXRlck5vZGUgPSBwYXJlbnROb2RlLCAvLy9cbiAgICAgICAgICBhZGRlZE91dGVyTm9kZXMgPSBhZGRlZE5vZGVzLCAvLy9cbiAgICAgICAgICByZW1vdmVkT3V0ZXJOb2RlcyA9IHJlbW92ZWROb2RlczsgLy8vXG5cbiAgICBjb25zdCB7IHF1ZXJpZXMsIGNhbGxiYWNrLCBDbGFzc0Zyb21PdXRlck5vZGUsIG91dGVyTm9kZUZyb21DaGlsZE91dGVyTm9kZXMgfSA9IGNvbnRleHQ7XG5cbiAgICBwYXJlbnROb2RlID0gcmV0cmlldmVQYXJlbnROb2RlKHBhcmVudE91dGVyTm9kZSwgdG9wbW9zdE5vZGUpO1xuXG4gICAgYWRkZWROb2RlcyA9IGFkZGVkTm9kZXNGcm9tQWRkZWRPdXRlck5vZGVzKGFkZGVkT3V0ZXJOb2RlcywgcXVlcmllcywgQ2xhc3NGcm9tT3V0ZXJOb2RlLCBvdXRlck5vZGVGcm9tQ2hpbGRPdXRlck5vZGVzKTtcblxuICAgIHJlbW92ZWROb2RlcyA9IHJlbW92ZWROb2Rlc0Zyb21SZW1vdmVkT3V0ZXJOb2RlcyhyZW1vdmVkT3V0ZXJOb2RlcywgcXVlcmllcywgQ2xhc3NGcm9tT3V0ZXJOb2RlLCBvdXRlck5vZGVGcm9tQ2hpbGRPdXRlck5vZGVzKTtcblxuICAgIGNvbnN0IHRlcm1pbmF0ZSA9IGNhbGxiYWNrKGFkZGVkTm9kZXMsIHJlbW92ZWROb2RlcywgY29udGV4dCk7XG5cbiAgICBpZiAoIXRlcm1pbmF0ZSkge1xuICAgICAgbGV0IHJlbW92ZWRDaGlsZE5vZGVzO1xuXG4gICAgICByZW1vdmVkQ2hpbGROb2RlcyA9IHJlbW92ZWROb2RlczsgLy8vXG5cbiAgICAgIHJlbW92ZWRDaGlsZE5vZGVzID0gcGFyZW50Tm9kZS5yZW1vdmVDaGlsZE5vZGVzKHJlbW92ZWRDaGlsZE5vZGVzKTtcblxuICAgICAgY29uc3Qgc2libGluZ05vZGVJbmRleCA9IGZpbmRTaWJsaW5nTm9kZUluZGV4KHN0YXJ0T3V0ZXJJbmRleCwgcGFyZW50T3V0ZXJOb2RlLCBwYXJlbnROb2RlKSxcbiAgICAgICAgICAgIGFkZGVkQ2hpbGROb2RlcyA9IGFkZGVkTm9kZXMsIC8vL1xuICAgICAgICAgICAgc3RhcnRJbmRleCA9IHNpYmxpbmdOb2RlSW5kZXggKyAxOyAvLy9cblxuICAgICAgcGFyZW50Tm9kZS5hZGRDaGlsZE5vZGVzKGFkZGVkQ2hpbGROb2Rlcywgc3RhcnRJbmRleCk7XG5cbiAgICAgIHJlbW92ZWROb2RlcyA9IHJlbW92ZWRDaGlsZE5vZGVzOyAvLy9cblxuICAgICAgaW5uZXJEaWZmID0gbmV3IElubmVyRGlmZihwYXJlbnROb2RlLCBhZGRlZE5vZGVzLCByZW1vdmVkTm9kZXMsIHNpYmxpbmdOb2RlSW5kZXgpO1xuICAgIH1cblxuICAgIHJldHVybiBpbm5lckRpZmY7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJJbm5lckRpZmYiLCJwYXJlbnROb2RlIiwiYWRkZWROb2RlcyIsInJlbW92ZWROb2RlcyIsInNpYmxpbmdOb2RlSW5kZXgiLCJnZXRQYXJlbnROb2RlIiwiZ2V0QWRkZWROb2RlcyIsImdldFJlbW92ZWROb2RlcyIsImdldFNpYmxpbmdOb2RlSW5kZXgiLCJmcm9tVG9wbW9zdE5vZGVBbmRPdXRlckRpZmYiLCJ0b3Btb3N0Tm9kZSIsIm91dGVyRGlmZiIsImNvbnRleHQiLCJpbm5lckRpZmYiLCJzdGFydEluZGV4IiwiZ2V0U3RhcnRJbmRleCIsInN0YXJ0T3V0ZXJJbmRleCIsInBhcmVudE91dGVyTm9kZSIsImFkZGVkT3V0ZXJOb2RlcyIsInJlbW92ZWRPdXRlck5vZGVzIiwicXVlcmllcyIsImNhbGxiYWNrIiwiQ2xhc3NGcm9tT3V0ZXJOb2RlIiwib3V0ZXJOb2RlRnJvbUNoaWxkT3V0ZXJOb2RlcyIsInJldHJpZXZlUGFyZW50Tm9kZSIsImFkZGVkTm9kZXNGcm9tQWRkZWRPdXRlck5vZGVzIiwicmVtb3ZlZE5vZGVzRnJvbVJlbW92ZWRPdXRlck5vZGVzIiwidGVybWluYXRlIiwicmVtb3ZlZENoaWxkTm9kZXMiLCJyZW1vdmVDaGlsZE5vZGVzIiwiZmluZFNpYmxpbmdOb2RlSW5kZXgiLCJhZGRlZENoaWxkTm9kZXMiLCJhZGRDaGlsZE5vZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFJQTs7O2VBQXFCQTs7OzZCQUZzRztBQUU1RyxNQUFNQTtJQUNuQixZQUFZQyxVQUFVLEVBQUVDLFVBQVUsRUFBRUMsWUFBWSxFQUFFQyxnQkFBZ0IsQ0FBRTtRQUNsRSxJQUFJLENBQUNILFVBQVUsR0FBR0E7UUFDbEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtRQUNwQixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTtJQUMxQjtJQUVBQyxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0osVUFBVTtJQUN4QjtJQUVBSyxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0osVUFBVTtJQUN4QjtJQUVBSyxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUNKLFlBQVk7SUFDMUI7SUFFQUssc0JBQXNCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDSixnQkFBZ0I7SUFDOUI7SUFFQSxPQUFPSyw0QkFBNEJDLFdBQVcsRUFBRUMsU0FBUyxFQUFFQyxPQUFPLEVBQUU7UUFDbEUsSUFBSUMsWUFBWTtRQUVoQixJQUFJQyxZQUNBYixZQUNBQyxZQUNBQztRQUVKVyxhQUFhSCxVQUFVSSxhQUFhO1FBQ3BDZCxhQUFhVSxVQUFVTixhQUFhO1FBQ3BDSCxhQUFhUyxVQUFVTCxhQUFhO1FBQ3BDSCxlQUFlUSxVQUFVSixlQUFlO1FBRXhDLE1BQU1TLGtCQUFrQkYsWUFDbEJHLGtCQUFrQmhCLFlBQ2xCaUIsa0JBQWtCaEIsWUFDbEJpQixvQkFBb0JoQixjQUFjLEdBQUc7UUFFM0MsTUFBTSxFQUFFaUIsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLGtCQUFrQixFQUFFQyw0QkFBNEIsRUFBRSxHQUFHWDtRQUVoRlgsYUFBYXVCLElBQUFBLCtCQUFrQixFQUFDUCxpQkFBaUJQO1FBRWpEUixhQUFhdUIsSUFBQUEsMENBQTZCLEVBQUNQLGlCQUFpQkUsU0FBU0Usb0JBQW9CQztRQUV6RnBCLGVBQWV1QixJQUFBQSw4Q0FBaUMsRUFBQ1AsbUJBQW1CQyxTQUFTRSxvQkFBb0JDO1FBRWpHLE1BQU1JLFlBQVlOLFNBQVNuQixZQUFZQyxjQUFjUztRQUVyRCxJQUFJLENBQUNlLFdBQVc7WUFDZCxJQUFJQztZQUVKQSxvQkFBb0J6QixjQUFjLEdBQUc7WUFFckN5QixvQkFBb0IzQixXQUFXNEIsZ0JBQWdCLENBQUNEO1lBRWhELE1BQU14QixtQkFBbUIwQixJQUFBQSxpQ0FBb0IsRUFBQ2QsaUJBQWlCQyxpQkFBaUJoQixhQUMxRThCLGtCQUFrQjdCLFlBQ2xCWSxhQUFhVixtQkFBbUIsR0FBRyxHQUFHO1lBRTVDSCxXQUFXK0IsYUFBYSxDQUFDRCxpQkFBaUJqQjtZQUUxQ1gsZUFBZXlCLG1CQUFtQixHQUFHO1lBRXJDZixZQUFZLElBQUliLFVBQVVDLFlBQVlDLFlBQVlDLGNBQWNDO1FBQ2xFO1FBRUEsT0FBT1M7SUFDVDtBQUNGIn0=
package/lib/index.js CHANGED
@@ -9,6 +9,9 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ get InnerDiff () {
13
+ return _inner.default;
14
+ },
12
15
  get Node () {
13
16
  return _node.default;
14
17
  },
@@ -30,6 +33,7 @@ _export(exports, {
30
33
  });
31
34
  const _node = /*#__PURE__*/ _interop_require_default(require("./node"));
32
35
  const _transform = /*#__PURE__*/ _interop_require_default(require("./transform"));
36
+ const _inner = /*#__PURE__*/ _interop_require_default(require("./diff/inner"));
33
37
  const _dom = /*#__PURE__*/ _interop_require_default(require("./utilities/dom"));
34
38
  const _node1 = /*#__PURE__*/ _interop_require_default(require("./utilities/node"));
35
39
  const _transform1 = /*#__PURE__*/ _interop_require_default(require("./utilities/transform"));
@@ -40,4 +44,4 @@ function _interop_require_default(obj) {
40
44
  };
41
45
  }
42
46
 
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb2RlIH0gZnJvbSBcIi4vbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmFuc2Zvcm0gfSBmcm9tIFwiLi90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZG9tVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2RvbVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBub2RlVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdHJhbnNmb3JtVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3RyYW5zZm9ybVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBpbmNyZW1lbnRhbFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9pbmNyZW1lbnRhbFwiO1xuIl0sIm5hbWVzIjpbIk5vZGUiLCJUcmFuc2Zvcm0iLCJkb21VdGlsaXRpZXMiLCJpbmNyZW1lbnRhbFV0aWxpdGllcyIsIm5vZGVVdGlsaXRpZXMiLCJ0cmFuc2Zvcm1VdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQUVvQkE7ZUFBQUEsYUFBSTs7UUFDSkM7ZUFBQUEsa0JBQVM7O1FBQ1RDO2VBQUFBLFlBQVk7O1FBR1pDO2VBQUFBLG9CQUFvQjs7UUFGcEJDO2VBQUFBLGNBQWE7O1FBQ2JDO2VBQUFBLG1CQUFrQjs7OzZEQUpOO2tFQUNLOzREQUNHOzhEQUNDO21FQUNLO29FQUNFIn0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb2RlIH0gZnJvbSBcIi4vbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmFuc2Zvcm0gfSBmcm9tIFwiLi90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSW5uZXJEaWZmIH0gZnJvbSBcIi4vZGlmZi9pbm5lclwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkb21VdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvZG9tXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5vZGVVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2Zvcm1VdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvdHJhbnNmb3JtXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGluY3JlbWVudGFsVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2luY3JlbWVudGFsXCI7XG4iXSwibmFtZXMiOlsiSW5uZXJEaWZmIiwiTm9kZSIsIlRyYW5zZm9ybSIsImRvbVV0aWxpdGllcyIsImluY3JlbWVudGFsVXRpbGl0aWVzIiwibm9kZVV0aWxpdGllcyIsInRyYW5zZm9ybVV0aWxpdGllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBSW9CQTtlQUFBQSxjQUFTOztRQUZUQztlQUFBQSxhQUFJOztRQUNKQztlQUFBQSxrQkFBUzs7UUFFVEM7ZUFBQUEsWUFBWTs7UUFHWkM7ZUFBQUEsb0JBQW9COztRQUZwQkM7ZUFBQUEsY0FBYTs7UUFDYkM7ZUFBQUEsbUJBQWtCOzs7NkRBTE47a0VBQ0s7OERBQ0E7NERBQ0c7OERBQ0M7bUVBQ0s7b0VBQ0UifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-dom",
3
3
  "author": "James Smith",
4
- "version": "6.1.10",
4
+ "version": "6.1.11",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-dom",
7
7
  "description": "Occam's DOM related functionality.",
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ import { retrieveParentNode, findSiblingNodeIndex, addedNodesFromAddedOuterNodes, removedNodesFromRemovedOuterNodes } from "../utilities/incremental";
4
+
5
+ export default class InnerDiff {
6
+ constructor(parentNode, addedNodes, removedNodes, siblingNodeIndex) {
7
+ this.parentNode = parentNode;
8
+ this.addedNodes = addedNodes;
9
+ this.removedNodes = removedNodes;
10
+ this.siblingNodeIndex = siblingNodeIndex;
11
+ }
12
+
13
+ getParentNode() {
14
+ return this.parentNode;
15
+ }
16
+
17
+ getAddedNodes() {
18
+ return this.addedNodes;
19
+ }
20
+
21
+ getRemovedNodes() {
22
+ return this.removedNodes;
23
+ }
24
+
25
+ getSiblingNodeIndex() {
26
+ return this.siblingNodeIndex;
27
+ }
28
+
29
+ static fromTopmostNodeAndOuterDiff(topmostNode, outerDiff, context) {
30
+ let innerDiff = null;
31
+
32
+ let startIndex,
33
+ parentNode,
34
+ addedNodes,
35
+ removedNodes;
36
+
37
+ startIndex = outerDiff.getStartIndex();
38
+ parentNode = outerDiff.getParentNode();
39
+ addedNodes = outerDiff.getAddedNodes();
40
+ removedNodes = outerDiff.getRemovedNodes();
41
+
42
+ const startOuterIndex = startIndex, ///
43
+ parentOuterNode = parentNode, ///
44
+ addedOuterNodes = addedNodes, ///
45
+ removedOuterNodes = removedNodes; ///
46
+
47
+ const { queries, callback, ClassFromOuterNode, outerNodeFromChildOuterNodes } = context;
48
+
49
+ parentNode = retrieveParentNode(parentOuterNode, topmostNode);
50
+
51
+ addedNodes = addedNodesFromAddedOuterNodes(addedOuterNodes, queries, ClassFromOuterNode, outerNodeFromChildOuterNodes);
52
+
53
+ removedNodes = removedNodesFromRemovedOuterNodes(removedOuterNodes, queries, ClassFromOuterNode, outerNodeFromChildOuterNodes);
54
+
55
+ const terminate = callback(addedNodes, removedNodes, context);
56
+
57
+ if (!terminate) {
58
+ let removedChildNodes;
59
+
60
+ removedChildNodes = removedNodes; ///
61
+
62
+ removedChildNodes = parentNode.removeChildNodes(removedChildNodes);
63
+
64
+ const siblingNodeIndex = findSiblingNodeIndex(startOuterIndex, parentOuterNode, parentNode),
65
+ addedChildNodes = addedNodes, ///
66
+ startIndex = siblingNodeIndex + 1; ///
67
+
68
+ parentNode.addChildNodes(addedChildNodes, startIndex);
69
+
70
+ removedNodes = removedChildNodes; ///
71
+
72
+ innerDiff = new InnerDiff(parentNode, addedNodes, removedNodes, siblingNodeIndex);
73
+ }
74
+
75
+ return innerDiff;
76
+ }
77
+ }
package/src/index.js CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  export { default as Node } from "./node";
4
4
  export { default as Transform } from "./transform";
5
+ export { default as InnerDiff } from "./diff/inner";
5
6
  export { default as domUtilities } from "./utilities/dom";
6
7
  export { default as nodeUtilities } from "./utilities/node";
7
8
  export { default as transformUtilities } from "./utilities/transform";