occam-dom 5.3.92 → 6.0.1

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/README.md CHANGED
@@ -142,12 +142,12 @@ import ClassFromOuterNode from "./classFromOuterNode";
142
142
  ...
143
143
 
144
144
  const outerNodes = nodes, ///
145
- topmostNode = topmostNodeFromOuterNodes(ClassFromOuterNode, outerNode);
145
+ topmostNode = topmostNodeFromOuterNodes(outerNode, ClassFromOuterNode);
146
146
 
147
147
  ...
148
148
  ```
149
149
 
150
- The first argument is a callback that maps outer node classes to inner node ones:
150
+ The last argument is a an optional callback that maps outer node classes to inner node ones:
151
151
 
152
152
  ```
153
153
  import htmlNodeMap from "../map/node/html";
@@ -26,7 +26,7 @@ function _interop_require_default(obj) {
26
26
  default: obj
27
27
  };
28
28
  }
29
- const { topmostNodeFromOuterNodes: topmostInnerNodeFromOuterNodes } = _index.nodeUtilities;
29
+ const { topmostNodeFromOuterNodes } = _index.domUtilities;
30
30
  const cssLexer = _withstyle.CSSLexer.fromNothing(), cssParser = _withstyle.CSSParser.fromNothing();
31
31
  class View extends _easy.Element {
32
32
  keyUpHandler = (event, element)=>{
@@ -34,7 +34,7 @@ class View extends _easy.Element {
34
34
  if (node === null) {
35
35
  return;
36
36
  }
37
- const outerNode = node, expressions = this.getExpressions(), outerNodes = (0, _query.queryByExpressions)(outerNode, expressions), topmostInnerNode = topmostInnerNodeFromOuterNodes(outerNodes), innerNode = topmostInnerNode, outerParseTree = outerNode.asParseTree(tokens), innerParseTree = innerNode.asParseTree();
37
+ const outerNode = node, expressions = this.getExpressions(), outerNodes = (0, _query.queryByExpressions)(outerNode, expressions), topmostNode = topmostNodeFromOuterNodes(outerNodes), innerNode = topmostNode, outerParseTree = outerNode.asParseTree(tokens), innerParseTree = innerNode.asParseTree();
38
38
  this.setOuterParseTree(outerParseTree);
39
39
  this.setInnerParseTree(innerParseTree);
40
40
  };
@@ -77,4 +77,4 @@ const _default = (0, _easywithstyle.default)(View)`
77
77
 
78
78
  `;
79
79
 
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgbm9kZVV0aWxpdGllcyB9IGZyb20gXCIuLi9pbmRleFwiIC8vL1xuaW1wb3J0IHsgQ1NTTGV4ZXIsIENTU1BhcnNlciB9IGZyb20gXCJ3aXRoLXN0eWxlXCI7XG5pbXBvcnQgeyBSb3dzRGl2LCBDb2x1bW5EaXYsIENvbHVtbnNEaXYsIFZlcnRpY2FsU3BsaXR0ZXJEaXYgfSBmcm9tIFwiZWFzeS1sYXlvdXRcIjtcblxuaW1wb3J0IFN1YkhlYWRpbmcgZnJvbSBcIi4vdmlldy9zdWJIZWFkaW5nXCI7XG5pbXBvcnQgU2l6ZWFibGVEaXYgZnJvbSBcIi4vdmlldy9kaXYvc2l6ZWFibGVcIjtcbmltcG9ydCBDb250ZW50VGV4dGFyZWEgZnJvbSBcIi4vdmlldy90ZXh0YXJlYS9jb250ZW50XCI7XG5pbXBvcnQgRXhwcmVzc2lvbnNUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL2V4cHJlc3Npb25zXCI7XG5pbXBvcnQgT3V0ZXJQYXJzZVRyZWVUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL3BhcnNlVHJlZS9vdXRlclwiO1xuaW1wb3J0IElubmVyUGFyc2VUcmVlVGV4dGFyZWEgZnJvbSBcIi4vdmlldy90ZXh0YXJlYS9wYXJzZVRyZWUvaW5uZXJcIjtcblxuaW1wb3J0IHsgcXVlcnlCeUV4cHJlc3Npb25zIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IHsgdG9wbW9zdE5vZGVGcm9tT3V0ZXJOb2RlczogdG9wbW9zdElubmVyTm9kZUZyb21PdXRlck5vZGVzIH0gPSBub2RlVXRpbGl0aWVzO1xuXG5jb25zdCBjc3NMZXhlciA9IENTU0xleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICBjc3NQYXJzZXIgPSBDU1NQYXJzZXIuZnJvbU5vdGhpbmcoKTtcblxuY2xhc3MgVmlldyBleHRlbmRzIEVsZW1lbnQge1xuICBrZXlVcEhhbmRsZXIgPSAoZXZlbnQsIGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCBjb250ZW50ID0gdGhpcy5nZXRDb250ZW50KCksXG4gICAgICAgICAgdG9rZW5zID0gY3NzTGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgbm9kZSA9IGNzc1BhcnNlci5wYXJzZSh0b2tlbnMpO1xuXG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvdXRlck5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICBleHByZXNzaW9ucyA9IHRoaXMuZ2V0RXhwcmVzc2lvbnMoKSxcbiAgICAgICAgICBvdXRlck5vZGVzID0gcXVlcnlCeUV4cHJlc3Npb25zKG91dGVyTm9kZSwgZXhwcmVzc2lvbnMpLFxuICAgICAgICAgIHRvcG1vc3RJbm5lck5vZGUgPSB0b3Btb3N0SW5uZXJOb2RlRnJvbU91dGVyTm9kZXMob3V0ZXJOb2RlcyksXG4gICAgICAgICAgaW5uZXJOb2RlID0gdG9wbW9zdElubmVyTm9kZSwgLy8vXG4gICAgICAgICAgb3V0ZXJQYXJzZVRyZWUgPSBvdXRlck5vZGUuYXNQYXJzZVRyZWUodG9rZW5zKSxcbiAgICAgICAgICBpbm5lclBhcnNlVHJlZSA9IGlubmVyTm9kZS5hc1BhcnNlVHJlZSgpO1xuXG4gICAgdGhpcy5zZXRPdXRlclBhcnNlVHJlZShvdXRlclBhcnNlVHJlZSk7XG5cbiAgICB0aGlzLnNldElubmVyUGFyc2VUcmVlKGlubmVyUGFyc2VUcmVlKTtcbiAgfVxuXG4gIGNoaWxkRWxlbWVudHMoKSB7XG4gICAgcmV0dXJuIChbXG5cbiAgICAgIDxDb2x1bW5zRGl2PlxuICAgICAgICA8U2l6ZWFibGVEaXY+XG4gICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICA8U3ViSGVhZGluZz5cbiAgICAgICAgICAgICAgQ29udGVudFxuICAgICAgICAgICAgPC9TdWJIZWFkaW5nPlxuICAgICAgICAgICAgPENvbnRlbnRUZXh0YXJlYSBvbktleVVwPXt0aGlzLmtleVVwSGFuZGxlcn0gLz5cbiAgICAgICAgICAgIDxTdWJIZWFkaW5nPlxuICAgICAgICAgICAgICBFeHByZXNzaW9uc1xuICAgICAgICAgICAgPC9TdWJIZWFkaW5nPlxuICAgICAgICAgICAgPEV4cHJlc3Npb25zVGV4dGFyZWEgb25LZXlVcD17dGhpcy5rZXlVcEhhbmRsZXJ9IC8+XG4gICAgICAgICAgPC9Sb3dzRGl2PlxuICAgICAgICA8L1NpemVhYmxlRGl2PlxuICAgICAgICA8VmVydGljYWxTcGxpdHRlckRpdiAvPlxuICAgICAgICA8Q29sdW1uRGl2PlxuICAgICAgICAgIDxSb3dzRGl2PlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIE91dGVyIHBhcnNlIHRyZWVcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxPdXRlclBhcnNlVHJlZVRleHRhcmVhLz5cbiAgICAgICAgICAgIDxTdWJIZWFkaW5nPlxuICAgICAgICAgICAgICBJbm5lciBwYXJzZSB0cmVlXG4gICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICA8SW5uZXJQYXJzZVRyZWVUZXh0YXJlYS8+XG4gICAgICAgICAgPC9Sb3dzRGl2PlxuICAgICAgICA8L0NvbHVtbkRpdj5cbiAgICAgIDwvQ29sdW1uc0Rpdj5cblxuICAgIF0pO1xuICB9XG5cbiAgaW5pdGlhbGlzZSgpIHtcbiAgICB0aGlzLmFzc2lnbkNvbnRleHQoKTtcblxuICAgIGNvbnN0IHsgaW5pdGlhbENvbnRlbnQsIGluaXRpYWxFeHByZXNzaW9ucyB9ID0gdGhpcy5jb25zdHJ1Y3RvcixcbiAgICAgICAgICBjb250ZW50ID0gaW5pdGlhbENvbnRlbnQsICAvLy9cbiAgICAgICAgICBleHByZXNzaW9ucyA9IGluaXRpYWxFeHByZXNzaW9uczsgIC8vL1xuXG4gICAgdGhpcy5zZXRDb250ZW50KGNvbnRlbnQpO1xuXG4gICAgdGhpcy5zZXRFeHByZXNzaW9ucyhleHByZXNzaW9ucyk7XG5cbiAgICB0aGlzLmtleVVwSGFuZGxlcigpOyAgLy8vXG4gIH1cblxuICBzdGF0aWMgaW5pdGlhbENvbnRlbnQgPSBgLnZpZXcge1xuICBiYWNrZ3JvdW5kOiByZWQ7XG59XG5gO1xuXG4gIHN0YXRpYyBpbml0aWFsRXhwcmVzc2lvbnMgPSBbXG4gICAgXCIvL3Rlcm1cIixcbiAgICBcIi8vcnVsZVNldFwiLFxuICAgIFwiLy9zZWxlY3RvcnNcIixcbiAgICBcIi8vZGVjbGFyYXRpb25cIixcbiAgICBcIi8vcHJvcGVydHlWYWx1ZVwiLFxuICAgIFwiLy9AaWRlbnRpZmllclwiXG4gIF07XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcImRpdlwiO1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcGVydGllcyA9IHtcbiAgICBjbGFzc05hbWU6IFwidmlld1wiXG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShWaWV3KWBcblxuICBwYWRkaW5nOiAxcmVtO1xuICBcbmA7XG4iXSwibmFtZXMiOlsidG9wbW9zdE5vZGVGcm9tT3V0ZXJOb2RlcyIsInRvcG1vc3RJbm5lck5vZGVGcm9tT3V0ZXJOb2RlcyIsIm5vZGVVdGlsaXRpZXMiLCJjc3NMZXhlciIsIkNTU0xleGVyIiwiZnJvbU5vdGhpbmciLCJjc3NQYXJzZXIiLCJDU1NQYXJzZXIiLCJWaWV3IiwiRWxlbWVudCIsImtleVVwSGFuZGxlciIsImV2ZW50IiwiZWxlbWVudCIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwidG9rZW5zIiwidG9rZW5pc2UiLCJub2RlIiwicGFyc2UiLCJvdXRlck5vZGUiLCJleHByZXNzaW9ucyIsImdldEV4cHJlc3Npb25zIiwib3V0ZXJOb2RlcyIsInF1ZXJ5QnlFeHByZXNzaW9ucyIsInRvcG1vc3RJbm5lck5vZGUiLCJpbm5lck5vZGUiLCJvdXRlclBhcnNlVHJlZSIsImFzUGFyc2VUcmVlIiwiaW5uZXJQYXJzZVRyZWUiLCJzZXRPdXRlclBhcnNlVHJlZSIsInNldElubmVyUGFyc2VUcmVlIiwiY2hpbGRFbGVtZW50cyIsIkNvbHVtbnNEaXYiLCJTaXplYWJsZURpdiIsIlJvd3NEaXYiLCJTdWJIZWFkaW5nIiwiQ29udGVudFRleHRhcmVhIiwib25LZXlVcCIsIkV4cHJlc3Npb25zVGV4dGFyZWEiLCJWZXJ0aWNhbFNwbGl0dGVyRGl2IiwiQ29sdW1uRGl2IiwiT3V0ZXJQYXJzZVRyZWVUZXh0YXJlYSIsIklubmVyUGFyc2VUcmVlVGV4dGFyZWEiLCJpbml0aWFsaXNlIiwiYXNzaWduQ29udGV4dCIsImluaXRpYWxDb250ZW50IiwiaW5pdGlhbEV4cHJlc3Npb25zIiwic2V0Q29udGVudCIsInNldEV4cHJlc3Npb25zIiwidGFnTmFtZSIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwid2l0aFN0eWxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtSEE7OztlQUFBOzs7c0VBakhzQjtzQkFFRTt1QkFDTSxXQUFXLEdBQUc7OzJCQUNSOzRCQUNnQzttRUFFN0M7aUVBQ0M7Z0VBQ0k7b0VBQ0k7OERBQ0c7OERBQ0E7dUJBRUE7Ozs7OztBQUVuQyxNQUFNLEVBQUVBLDJCQUEyQkMsOEJBQThCLEVBQUUsR0FBR0Msb0JBQWE7QUFFbkYsTUFBTUMsV0FBV0MsbUJBQVEsQ0FBQ0MsV0FBVyxJQUMvQkMsWUFBWUMsb0JBQVMsQ0FBQ0YsV0FBVztBQUV2QyxNQUFNRyxhQUFhQyxhQUFPO0lBQ3hCQyxlQUFlLENBQUNDLE9BQU9DO1FBQ3JCLE1BQU1DLFVBQVUsSUFBSSxDQUFDQyxVQUFVLElBQ3pCQyxTQUFTWixTQUFTYSxRQUFRLENBQUNILFVBQzNCSSxPQUFPWCxVQUFVWSxLQUFLLENBQUNIO1FBRTdCLElBQUlFLFNBQVMsTUFBTTtZQUNqQjtRQUNGO1FBRUEsTUFBTUUsWUFBWUYsTUFDWkcsY0FBYyxJQUFJLENBQUNDLGNBQWMsSUFDakNDLGFBQWFDLElBQUFBLHlCQUFrQixFQUFDSixXQUFXQyxjQUMzQ0ksbUJBQW1CdkIsK0JBQStCcUIsYUFDbERHLFlBQVlELGtCQUNaRSxpQkFBaUJQLFVBQVVRLFdBQVcsQ0FBQ1osU0FDdkNhLGlCQUFpQkgsVUFBVUUsV0FBVztRQUU1QyxJQUFJLENBQUNFLGlCQUFpQixDQUFDSDtRQUV2QixJQUFJLENBQUNJLGlCQUFpQixDQUFDRjtJQUN6QixFQUFDO0lBRURHLGdCQUFnQjtRQUNkLE9BQVE7MEJBRU4sb0JBQUNDLHNCQUFVLHNCQUNULG9CQUFDQyxpQkFBVyxzQkFDVixvQkFBQ0MsbUJBQU8sc0JBQ04sb0JBQUNDLG1CQUFVLFFBQUMsMEJBR1osb0JBQUNDLGdCQUFlO2dCQUFDQyxTQUFTLElBQUksQ0FBQzNCLFlBQVk7OEJBQzNDLG9CQUFDeUIsbUJBQVUsUUFBQyw4QkFHWixvQkFBQ0csb0JBQW1CO2dCQUFDRCxTQUFTLElBQUksQ0FBQzNCLFlBQVk7Z0NBR25ELG9CQUFDNkIsK0JBQW1CLHVCQUNwQixvQkFBQ0MscUJBQVMsc0JBQ1Isb0JBQUNOLG1CQUFPLHNCQUNOLG9CQUFDQyxtQkFBVSxRQUFDLG1DQUdaLG9CQUFDTSxjQUFzQix1QkFDdkIsb0JBQUNOLG1CQUFVLFFBQUMsbUNBR1osb0JBQUNPLGNBQXNCO1NBSzlCO0lBQ0g7SUFFQUMsYUFBYTtRQUNYLElBQUksQ0FBQ0MsYUFBYTtRQUVsQixNQUFNLEVBQUVDLGNBQWMsRUFBRUMsa0JBQWtCLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUN6RGpDLFVBQVVnQyxnQkFDVnpCLGNBQWMwQixvQkFBcUIsR0FBRztRQUU1QyxJQUFJLENBQUNDLFVBQVUsQ0FBQ2xDO1FBRWhCLElBQUksQ0FBQ21DLGNBQWMsQ0FBQzVCO1FBRXBCLElBQUksQ0FBQ1YsWUFBWSxJQUFLLEdBQUc7SUFDM0I7SUFFQSxPQUFPbUMsaUJBQWlCLENBQUM7OztBQUczQixDQUFDLENBQUM7SUFFQSxPQUFPQyxxQkFBcUI7UUFDMUI7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO0tBQ0QsQ0FBQztJQUVGLE9BQU9HLFVBQVUsTUFBTTtJQUV2QixPQUFPQyxvQkFBb0I7UUFDekJDLFdBQVc7SUFDYixFQUFFO0FBQ0o7TUFFQSxXQUFlQyxJQUFBQSxzQkFBUyxFQUFDNUMsS0FBSyxDQUFDOzs7O0FBSS9CLENBQUMifQ==
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgZG9tVXRpbGl0aWVzIH0gZnJvbSBcIi4uL2luZGV4XCIgLy8vXG5pbXBvcnQgeyBDU1NMZXhlciwgQ1NTUGFyc2VyIH0gZnJvbSBcIndpdGgtc3R5bGVcIjtcbmltcG9ydCB7IFJvd3NEaXYsIENvbHVtbkRpdiwgQ29sdW1uc0RpdiwgVmVydGljYWxTcGxpdHRlckRpdiB9IGZyb20gXCJlYXN5LWxheW91dFwiO1xuXG5pbXBvcnQgU3ViSGVhZGluZyBmcm9tIFwiLi92aWV3L3N1YkhlYWRpbmdcIjtcbmltcG9ydCBTaXplYWJsZURpdiBmcm9tIFwiLi92aWV3L2Rpdi9zaXplYWJsZVwiO1xuaW1wb3J0IENvbnRlbnRUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL2NvbnRlbnRcIjtcbmltcG9ydCBFeHByZXNzaW9uc1RleHRhcmVhIGZyb20gXCIuL3ZpZXcvdGV4dGFyZWEvZXhwcmVzc2lvbnNcIjtcbmltcG9ydCBPdXRlclBhcnNlVHJlZVRleHRhcmVhIGZyb20gXCIuL3ZpZXcvdGV4dGFyZWEvcGFyc2VUcmVlL291dGVyXCI7XG5pbXBvcnQgSW5uZXJQYXJzZVRyZWVUZXh0YXJlYSBmcm9tIFwiLi92aWV3L3RleHRhcmVhL3BhcnNlVHJlZS9pbm5lclwiO1xuXG5pbXBvcnQgeyBxdWVyeUJ5RXhwcmVzc2lvbnMgfSBmcm9tIFwiLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgeyB0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzIH0gPSBkb21VdGlsaXRpZXM7XG5cbmNvbnN0IGNzc0xleGVyID0gQ1NTTGV4ZXIuZnJvbU5vdGhpbmcoKSxcbiAgICAgIGNzc1BhcnNlciA9IENTU1BhcnNlci5mcm9tTm90aGluZygpO1xuXG5jbGFzcyBWaWV3IGV4dGVuZHMgRWxlbWVudCB7XG4gIGtleVVwSGFuZGxlciA9IChldmVudCwgZWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLmdldENvbnRlbnQoKSxcbiAgICAgICAgICB0b2tlbnMgPSBjc3NMZXhlci50b2tlbmlzZShjb250ZW50KSxcbiAgICAgICAgICBub2RlID0gY3NzUGFyc2VyLnBhcnNlKHRva2Vucyk7XG5cbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG91dGVyTm9kZSA9IG5vZGUsIC8vL1xuICAgICAgICAgIGV4cHJlc3Npb25zID0gdGhpcy5nZXRFeHByZXNzaW9ucygpLFxuICAgICAgICAgIG91dGVyTm9kZXMgPSBxdWVyeUJ5RXhwcmVzc2lvbnMob3V0ZXJOb2RlLCBleHByZXNzaW9ucyksXG4gICAgICAgICAgdG9wbW9zdE5vZGUgPSB0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzKG91dGVyTm9kZXMpLFxuICAgICAgICAgIGlubmVyTm9kZSA9IHRvcG1vc3ROb2RlLCAvLy9cbiAgICAgICAgICBvdXRlclBhcnNlVHJlZSA9IG91dGVyTm9kZS5hc1BhcnNlVHJlZSh0b2tlbnMpLFxuICAgICAgICAgIGlubmVyUGFyc2VUcmVlID0gaW5uZXJOb2RlLmFzUGFyc2VUcmVlKCk7XG5cbiAgICB0aGlzLnNldE91dGVyUGFyc2VUcmVlKG91dGVyUGFyc2VUcmVlKTtcblxuICAgIHRoaXMuc2V0SW5uZXJQYXJzZVRyZWUoaW5uZXJQYXJzZVRyZWUpO1xuICB9XG5cbiAgY2hpbGRFbGVtZW50cygpIHtcbiAgICByZXR1cm4gKFtcblxuICAgICAgPENvbHVtbnNEaXY+XG4gICAgICAgIDxTaXplYWJsZURpdj5cbiAgICAgICAgICA8Um93c0Rpdj5cbiAgICAgICAgICAgIDxTdWJIZWFkaW5nPlxuICAgICAgICAgICAgICBDb250ZW50XG4gICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICA8Q29udGVudFRleHRhcmVhIG9uS2V5VXA9e3RoaXMua2V5VXBIYW5kbGVyfSAvPlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIEV4cHJlc3Npb25zXG4gICAgICAgICAgICA8L1N1YkhlYWRpbmc+XG4gICAgICAgICAgICA8RXhwcmVzc2lvbnNUZXh0YXJlYSBvbktleVVwPXt0aGlzLmtleVVwSGFuZGxlcn0gLz5cbiAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgIDwvU2l6ZWFibGVEaXY+XG4gICAgICAgIDxWZXJ0aWNhbFNwbGl0dGVyRGl2IC8+XG4gICAgICAgIDxDb2x1bW5EaXY+XG4gICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICA8U3ViSGVhZGluZz5cbiAgICAgICAgICAgICAgT3V0ZXIgcGFyc2UgdHJlZVxuICAgICAgICAgICAgPC9TdWJIZWFkaW5nPlxuICAgICAgICAgICAgPE91dGVyUGFyc2VUcmVlVGV4dGFyZWEvPlxuICAgICAgICAgICAgPFN1YkhlYWRpbmc+XG4gICAgICAgICAgICAgIElubmVyIHBhcnNlIHRyZWVcbiAgICAgICAgICAgIDwvU3ViSGVhZGluZz5cbiAgICAgICAgICAgIDxJbm5lclBhcnNlVHJlZVRleHRhcmVhLz5cbiAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgIDwvQ29sdW1uRGl2PlxuICAgICAgPC9Db2x1bW5zRGl2PlxuXG4gICAgXSk7XG4gIH1cblxuICBpbml0aWFsaXNlKCkge1xuICAgIHRoaXMuYXNzaWduQ29udGV4dCgpO1xuXG4gICAgY29uc3QgeyBpbml0aWFsQ29udGVudCwgaW5pdGlhbEV4cHJlc3Npb25zIH0gPSB0aGlzLmNvbnN0cnVjdG9yLFxuICAgICAgICAgIGNvbnRlbnQgPSBpbml0aWFsQ29udGVudCwgIC8vL1xuICAgICAgICAgIGV4cHJlc3Npb25zID0gaW5pdGlhbEV4cHJlc3Npb25zOyAgLy8vXG5cbiAgICB0aGlzLnNldENvbnRlbnQoY29udGVudCk7XG5cbiAgICB0aGlzLnNldEV4cHJlc3Npb25zKGV4cHJlc3Npb25zKTtcblxuICAgIHRoaXMua2V5VXBIYW5kbGVyKCk7ICAvLy9cbiAgfVxuXG4gIHN0YXRpYyBpbml0aWFsQ29udGVudCA9IGAudmlldyB7XG4gIGJhY2tncm91bmQ6IHJlZDtcbn1cbmA7XG5cbiAgc3RhdGljIGluaXRpYWxFeHByZXNzaW9ucyA9IFtcbiAgICBcIi8vdGVybVwiLFxuICAgIFwiLy9ydWxlU2V0XCIsXG4gICAgXCIvL3NlbGVjdG9yc1wiLFxuICAgIFwiLy9kZWNsYXJhdGlvblwiLFxuICAgIFwiLy9wcm9wZXJ0eVZhbHVlXCIsXG4gICAgXCIvL0BpZGVudGlmaWVyXCJcbiAgXTtcblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiZGl2XCI7XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJ2aWV3XCJcbiAgfTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKFZpZXcpYFxuXG4gIHBhZGRpbmc6IDFyZW07XG4gIFxuYDtcbiJdLCJuYW1lcyI6WyJ0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzIiwiZG9tVXRpbGl0aWVzIiwiY3NzTGV4ZXIiLCJDU1NMZXhlciIsImZyb21Ob3RoaW5nIiwiY3NzUGFyc2VyIiwiQ1NTUGFyc2VyIiwiVmlldyIsIkVsZW1lbnQiLCJrZXlVcEhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsInRva2VucyIsInRva2VuaXNlIiwibm9kZSIsInBhcnNlIiwib3V0ZXJOb2RlIiwiZXhwcmVzc2lvbnMiLCJnZXRFeHByZXNzaW9ucyIsIm91dGVyTm9kZXMiLCJxdWVyeUJ5RXhwcmVzc2lvbnMiLCJ0b3Btb3N0Tm9kZSIsImlubmVyTm9kZSIsIm91dGVyUGFyc2VUcmVlIiwiYXNQYXJzZVRyZWUiLCJpbm5lclBhcnNlVHJlZSIsInNldE91dGVyUGFyc2VUcmVlIiwic2V0SW5uZXJQYXJzZVRyZWUiLCJjaGlsZEVsZW1lbnRzIiwiQ29sdW1uc0RpdiIsIlNpemVhYmxlRGl2IiwiUm93c0RpdiIsIlN1YkhlYWRpbmciLCJDb250ZW50VGV4dGFyZWEiLCJvbktleVVwIiwiRXhwcmVzc2lvbnNUZXh0YXJlYSIsIlZlcnRpY2FsU3BsaXR0ZXJEaXYiLCJDb2x1bW5EaXYiLCJPdXRlclBhcnNlVHJlZVRleHRhcmVhIiwiSW5uZXJQYXJzZVRyZWVUZXh0YXJlYSIsImluaXRpYWxpc2UiLCJhc3NpZ25Db250ZXh0IiwiaW5pdGlhbENvbnRlbnQiLCJpbml0aWFsRXhwcmVzc2lvbnMiLCJzZXRDb250ZW50Iiwic2V0RXhwcmVzc2lvbnMiLCJ0YWdOYW1lIiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJ3aXRoU3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQW1IQTs7O2VBQUE7OztzRUFqSHNCO3NCQUVFO3VCQUNLLFdBQVcsR0FBRzs7MkJBQ1A7NEJBQ2dDO21FQUU3QztpRUFDQztnRUFDSTtvRUFDSTs4REFDRzs4REFDQTt1QkFFQTs7Ozs7O0FBRW5DLE1BQU0sRUFBRUEseUJBQXlCLEVBQUUsR0FBR0MsbUJBQVk7QUFFbEQsTUFBTUMsV0FBV0MsbUJBQVEsQ0FBQ0MsV0FBVyxJQUMvQkMsWUFBWUMsb0JBQVMsQ0FBQ0YsV0FBVztBQUV2QyxNQUFNRyxhQUFhQyxhQUFPO0lBQ3hCQyxlQUFlLENBQUNDLE9BQU9DO1FBQ3JCLE1BQU1DLFVBQVUsSUFBSSxDQUFDQyxVQUFVLElBQ3pCQyxTQUFTWixTQUFTYSxRQUFRLENBQUNILFVBQzNCSSxPQUFPWCxVQUFVWSxLQUFLLENBQUNIO1FBRTdCLElBQUlFLFNBQVMsTUFBTTtZQUNqQjtRQUNGO1FBRUEsTUFBTUUsWUFBWUYsTUFDWkcsY0FBYyxJQUFJLENBQUNDLGNBQWMsSUFDakNDLGFBQWFDLElBQUFBLHlCQUFrQixFQUFDSixXQUFXQyxjQUMzQ0ksY0FBY3ZCLDBCQUEwQnFCLGFBQ3hDRyxZQUFZRCxhQUNaRSxpQkFBaUJQLFVBQVVRLFdBQVcsQ0FBQ1osU0FDdkNhLGlCQUFpQkgsVUFBVUUsV0FBVztRQUU1QyxJQUFJLENBQUNFLGlCQUFpQixDQUFDSDtRQUV2QixJQUFJLENBQUNJLGlCQUFpQixDQUFDRjtJQUN6QixFQUFDO0lBRURHLGdCQUFnQjtRQUNkLE9BQVE7MEJBRU4sb0JBQUNDLHNCQUFVLHNCQUNULG9CQUFDQyxpQkFBVyxzQkFDVixvQkFBQ0MsbUJBQU8sc0JBQ04sb0JBQUNDLG1CQUFVLFFBQUMsMEJBR1osb0JBQUNDLGdCQUFlO2dCQUFDQyxTQUFTLElBQUksQ0FBQzNCLFlBQVk7OEJBQzNDLG9CQUFDeUIsbUJBQVUsUUFBQyw4QkFHWixvQkFBQ0csb0JBQW1CO2dCQUFDRCxTQUFTLElBQUksQ0FBQzNCLFlBQVk7Z0NBR25ELG9CQUFDNkIsK0JBQW1CLHVCQUNwQixvQkFBQ0MscUJBQVMsc0JBQ1Isb0JBQUNOLG1CQUFPLHNCQUNOLG9CQUFDQyxtQkFBVSxRQUFDLG1DQUdaLG9CQUFDTSxjQUFzQix1QkFDdkIsb0JBQUNOLG1CQUFVLFFBQUMsbUNBR1osb0JBQUNPLGNBQXNCO1NBSzlCO0lBQ0g7SUFFQUMsYUFBYTtRQUNYLElBQUksQ0FBQ0MsYUFBYTtRQUVsQixNQUFNLEVBQUVDLGNBQWMsRUFBRUMsa0JBQWtCLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUN6RGpDLFVBQVVnQyxnQkFDVnpCLGNBQWMwQixvQkFBcUIsR0FBRztRQUU1QyxJQUFJLENBQUNDLFVBQVUsQ0FBQ2xDO1FBRWhCLElBQUksQ0FBQ21DLGNBQWMsQ0FBQzVCO1FBRXBCLElBQUksQ0FBQ1YsWUFBWSxJQUFLLEdBQUc7SUFDM0I7SUFFQSxPQUFPbUMsaUJBQWlCLENBQUM7OztBQUczQixDQUFDLENBQUM7SUFFQSxPQUFPQyxxQkFBcUI7UUFDMUI7UUFDQTtRQUNBO1FBQ0E7UUFDQTtRQUNBO0tBQ0QsQ0FBQztJQUVGLE9BQU9HLFVBQVUsTUFBTTtJQUV2QixPQUFPQyxvQkFBb0I7UUFDekJDLFdBQVc7SUFDYixFQUFFO0FBQ0o7TUFFQSxXQUFlQyxJQUFBQSxzQkFBUyxFQUFDNUMsS0FBSyxDQUFDOzs7O0FBSS9CLENBQUMifQ==
package/lib/index.js CHANGED
@@ -15,6 +15,9 @@ _export(exports, {
15
15
  get Transform () {
16
16
  return _transform.default;
17
17
  },
18
+ get domUtilities () {
19
+ return _dom.default;
20
+ },
18
21
  get nodeUtilities () {
19
22
  return _node1.default;
20
23
  },
@@ -24,6 +27,7 @@ _export(exports, {
24
27
  });
25
28
  const _node = /*#__PURE__*/ _interop_require_default(require("./node"));
26
29
  const _transform = /*#__PURE__*/ _interop_require_default(require("./transform"));
30
+ const _dom = /*#__PURE__*/ _interop_require_default(require("./utilities/dom"));
27
31
  const _node1 = /*#__PURE__*/ _interop_require_default(require("./utilities/node"));
28
32
  const _transform1 = /*#__PURE__*/ _interop_require_default(require("./utilities/transform"));
29
33
  function _interop_require_default(obj) {
@@ -32,4 +36,4 @@ function _interop_require_default(obj) {
32
36
  };
33
37
  }
34
38
 
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb2RlIH0gZnJvbSBcIi4vbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmFuc2Zvcm0gfSBmcm9tIFwiLi90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbm9kZVV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9ub2RlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHRyYW5zZm9ybVV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy90cmFuc2Zvcm1cIjtcbiJdLCJuYW1lcyI6WyJOb2RlIiwiVHJhbnNmb3JtIiwibm9kZVV0aWxpdGllcyIsInRyYW5zZm9ybVV0aWxpdGllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBRW9CQTtlQUFBQSxhQUFJOztRQUNKQztlQUFBQSxrQkFBUzs7UUFDVEM7ZUFBQUEsY0FBYTs7UUFDYkM7ZUFBQUEsbUJBQWtCOzs7NkRBSE47a0VBQ0s7OERBQ0k7bUVBQ0sifQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBOb2RlIH0gZnJvbSBcIi4vbm9kZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUcmFuc2Zvcm0gfSBmcm9tIFwiLi90cmFuc2Zvcm1cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZG9tVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2RvbVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBub2RlVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25vZGVcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgdHJhbnNmb3JtVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3RyYW5zZm9ybVwiO1xuIl0sIm5hbWVzIjpbIk5vZGUiLCJUcmFuc2Zvcm0iLCJkb21VdGlsaXRpZXMiLCJub2RlVXRpbGl0aWVzIiwidHJhbnNmb3JtVXRpbGl0aWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFFb0JBO2VBQUFBLGFBQUk7O1FBQ0pDO2VBQUFBLGtCQUFTOztRQUNUQztlQUFBQSxZQUFZOztRQUNaQztlQUFBQSxjQUFhOztRQUNiQztlQUFBQSxtQkFBa0I7Ozs2REFKTjtrRUFDSzs0REFDRzs4REFDQzttRUFDSyJ9
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get default () {
13
+ return _default;
14
+ },
15
+ get topmostNodeFromOuterNodes () {
16
+ return topmostNodeFromOuterNodes;
17
+ }
18
+ });
19
+ const _node = /*#__PURE__*/ _interop_require_default(require("../node"));
20
+ const _node1 = require("../utilities/node");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ function topmostNodeFromOuterNodes(outerNodes, ClassFromOuterNode = DefaultClassFromOuterNode) {
27
+ const nodes = outerNodes; ///
28
+ (0, _node1.orderNodes)(nodes);
29
+ const outerNode = null, Class = ClassFromOuterNode(outerNode), topmostNode = Class.fromNothing(), outerNodeToNodeMap = new WeakMap();
30
+ outerNodes.forEach((outerNode)=>{
31
+ let parentNode = topmostNode; ///
32
+ outerNode.someAncestorNode((ancestorNode)=>{
33
+ const outerNode = ancestorNode, node = outerNodeToNodeMap.get(outerNode) || null;
34
+ if (node !== null) {
35
+ parentNode = node; ///
36
+ return true;
37
+ }
38
+ });
39
+ const Class = ClassFromOuterNode(outerNode), node = Class.fromOuterNode(outerNode), appendedChildNode = node; ///
40
+ parentNode.appendChildNode(appendedChildNode);
41
+ outerNodeToNodeMap.set(outerNode, node);
42
+ });
43
+ return topmostNode;
44
+ }
45
+ const _default = {
46
+ topmostNodeFromOuterNodes
47
+ };
48
+ function DefaultClassFromOuterNode(outerNode) {
49
+ const Class = _node.default; ///
50
+ return Class;
51
+ }
52
+
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZG9tLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZSBmcm9tIFwiLi4vbm9kZVwiO1xuXG5pbXBvcnQgeyBvcmRlck5vZGVzIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9ub2RlXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzKG91dGVyTm9kZXMsIENsYXNzRnJvbU91dGVyTm9kZSA9IERlZmF1bHRDbGFzc0Zyb21PdXRlck5vZGUpIHtcbiAgY29uc3Qgbm9kZXMgPSBvdXRlck5vZGVzOyAvLy9cblxuICBvcmRlck5vZGVzKG5vZGVzKTtcblxuICBjb25zdCBvdXRlck5vZGUgPSBudWxsLFxuICAgICAgICBDbGFzcyA9IENsYXNzRnJvbU91dGVyTm9kZShvdXRlck5vZGUpLFxuICAgICAgICB0b3Btb3N0Tm9kZSA9IENsYXNzLmZyb21Ob3RoaW5nKCksXG4gICAgICAgIG91dGVyTm9kZVRvTm9kZU1hcCA9IG5ldyBXZWFrTWFwKCk7XG5cbiAgb3V0ZXJOb2Rlcy5mb3JFYWNoKChvdXRlck5vZGUpID0+IHtcbiAgICBsZXQgcGFyZW50Tm9kZSA9IHRvcG1vc3ROb2RlOyAvLy9cblxuICAgIG91dGVyTm9kZS5zb21lQW5jZXN0b3JOb2RlKChhbmNlc3Rvck5vZGUpID0+IHtcbiAgICAgIGNvbnN0IG91dGVyTm9kZSA9IGFuY2VzdG9yTm9kZSwgLy8vXG4gICAgICAgICAgICBub2RlID0gb3V0ZXJOb2RlVG9Ob2RlTWFwLmdldChvdXRlck5vZGUpIHx8IG51bGw7XG5cbiAgICAgIGlmIChub2RlICE9PSBudWxsKSB7XG4gICAgICAgIHBhcmVudE5vZGUgPSBub2RlOyAgLy8vXG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb25zdCBDbGFzcyA9IENsYXNzRnJvbU91dGVyTm9kZShvdXRlck5vZGUpLFxuICAgICAgICAgIG5vZGUgPSBDbGFzcy5mcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSksXG4gICAgICAgICAgYXBwZW5kZWRDaGlsZE5vZGUgPSBub2RlOyAvLy9cblxuICAgIHBhcmVudE5vZGUuYXBwZW5kQ2hpbGROb2RlKGFwcGVuZGVkQ2hpbGROb2RlKTtcblxuICAgIG91dGVyTm9kZVRvTm9kZU1hcC5zZXQob3V0ZXJOb2RlLCBub2RlKTtcbiAgfSk7XG5cbiAgcmV0dXJuIHRvcG1vc3ROb2RlO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHRvcG1vc3ROb2RlRnJvbU91dGVyTm9kZXNcbn07XG5cbmZ1bmN0aW9uIERlZmF1bHRDbGFzc0Zyb21PdXRlck5vZGUob3V0ZXJOb2RlKSB7XG4gIGNvbnN0IENsYXNzID0gTm9kZTsgLy8vXG5cbiAgcmV0dXJuIENsYXNzO1xufSJdLCJuYW1lcyI6WyJ0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzIiwib3V0ZXJOb2RlcyIsIkNsYXNzRnJvbU91dGVyTm9kZSIsIkRlZmF1bHRDbGFzc0Zyb21PdXRlck5vZGUiLCJub2RlcyIsIm9yZGVyTm9kZXMiLCJvdXRlck5vZGUiLCJDbGFzcyIsInRvcG1vc3ROb2RlIiwiZnJvbU5vdGhpbmciLCJvdXRlck5vZGVUb05vZGVNYXAiLCJXZWFrTWFwIiwiZm9yRWFjaCIsInBhcmVudE5vZGUiLCJzb21lQW5jZXN0b3JOb2RlIiwiYW5jZXN0b3JOb2RlIiwibm9kZSIsImdldCIsImZyb21PdXRlck5vZGUiLCJhcHBlbmRlZENoaWxkTm9kZSIsImFwcGVuZENoaWxkTm9kZSIsInNldCIsIk5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQTBDQTtlQUFBOztRQXBDZ0JBO2VBQUFBOzs7NkRBSkM7dUJBRVU7Ozs7OztBQUVwQixTQUFTQSwwQkFBMEJDLFVBQVUsRUFBRUMscUJBQXFCQyx5QkFBeUI7SUFDbEcsTUFBTUMsUUFBUUgsWUFBWSxHQUFHO0lBRTdCSSxJQUFBQSxpQkFBVSxFQUFDRDtJQUVYLE1BQU1FLFlBQVksTUFDWkMsUUFBUUwsbUJBQW1CSSxZQUMzQkUsY0FBY0QsTUFBTUUsV0FBVyxJQUMvQkMscUJBQXFCLElBQUlDO0lBRS9CVixXQUFXVyxPQUFPLENBQUMsQ0FBQ047UUFDbEIsSUFBSU8sYUFBYUwsYUFBYSxHQUFHO1FBRWpDRixVQUFVUSxnQkFBZ0IsQ0FBQyxDQUFDQztZQUMxQixNQUFNVCxZQUFZUyxjQUNaQyxPQUFPTixtQkFBbUJPLEdBQUcsQ0FBQ1gsY0FBYztZQUVsRCxJQUFJVSxTQUFTLE1BQU07Z0JBQ2pCSCxhQUFhRyxNQUFPLEdBQUc7Z0JBRXZCLE9BQU87WUFDVDtRQUNGO1FBRUEsTUFBTVQsUUFBUUwsbUJBQW1CSSxZQUMzQlUsT0FBT1QsTUFBTVcsYUFBYSxDQUFDWixZQUMzQmEsb0JBQW9CSCxNQUFNLEdBQUc7UUFFbkNILFdBQVdPLGVBQWUsQ0FBQ0Q7UUFFM0JULG1CQUFtQlcsR0FBRyxDQUFDZixXQUFXVTtJQUNwQztJQUVBLE9BQU9SO0FBQ1Q7TUFFQSxXQUFlO0lBQ2JSO0FBQ0Y7QUFFQSxTQUFTRywwQkFBMEJHLFNBQVM7SUFDMUMsTUFBTUMsUUFBUWUsYUFBSSxFQUFFLEdBQUc7SUFFdkIsT0FBT2Y7QUFDVCJ9
@@ -32,9 +32,6 @@ _export(exports, {
32
32
  },
33
33
  get orderNodes () {
34
34
  return orderNodes;
35
- },
36
- get topmostNodeFromOuterNodes () {
37
- return topmostNodeFromOuterNodes;
38
35
  }
39
36
  });
40
37
  function isLessThan(nodeA, nodeB) {
@@ -95,25 +92,6 @@ function isDescendantOf(nodeA, nodeB) {
95
92
  const nodeBAncestorOfNodeA = isAncestorOf(nodeB, nodeA), nodeADescendantOfNodeB = nodeBAncestorOfNodeA, descendantOf = nodeADescendantOfNodeB; ///
96
93
  return descendantOf;
97
94
  }
98
- function topmostNodeFromOuterNodes(ClassFromOuterNode, outerNodes) {
99
- const nodes = outerNodes; ///
100
- orderNodes(nodes);
101
- const outerNode = null, Class = ClassFromOuterNode(outerNode), topmostNode = Class.fromNothing(), outerNodeToNodeMap = new WeakMap();
102
- outerNodes.forEach((outerNode)=>{
103
- let parentNode = topmostNode; ///
104
- outerNode.someAncestorNode((ancestorNode)=>{
105
- const outerNode = ancestorNode, node = outerNodeToNodeMap.get(outerNode) || null;
106
- if (node !== null) {
107
- parentNode = node; ///
108
- return true;
109
- }
110
- });
111
- const Class = ClassFromOuterNode(outerNode), node = Class.fromOuterNode(outerNode), appendedChildNode = node; ///
112
- parentNode.appendChildNode(appendedChildNode);
113
- outerNodeToNodeMap.set(outerNode, node);
114
- });
115
- return topmostNode;
116
- }
117
95
  const _default = {
118
96
  isLessThan,
119
97
  isGreaterThan,
@@ -121,8 +99,7 @@ const _default = {
121
99
  isGreaterThanOrEqualTo,
122
100
  orderNodes,
123
101
  isAncestorOf,
124
- isDescendantOf,
125
- topmostNodeFromOuterNodes
102
+ isDescendantOf
126
103
  };
127
104
  function ancestorNodesFromNode(node) {
128
105
  const ancestorNodes = node.getAncestorNodes();
@@ -131,4 +108,4 @@ function ancestorNodesFromNode(node) {
131
108
  return ancestorNodes;
132
109
  }
133
110
 
134
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzTGVzc1RoYW4obm9kZUEsIG5vZGVCKSB7XG4gIGxldCBsZXNzVGhhbiA9IG51bGw7XG5cbiAgY29uc3Qgbm9kZUFBbmNlc3Rvck5vZGVzID0gYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlKG5vZGVBKSxcbiAgICAgICAgbm9kZUJBbmNlc3Rvck5vZGVzID0gYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlKG5vZGVCKSxcbiAgICAgICAgbm9kZUFBbmNlc3Rvck5vZGVzTGVuZ3RoID0gbm9kZUFBbmNlc3Rvck5vZGVzLmxlbmd0aCxcbiAgICAgICAgbm9kZUJBbmNlc3Rvck5vZGVzTGVuZ3RoID0gbm9kZUJBbmNlc3Rvck5vZGVzLmxlbmd0aCxcbiAgICAgICAgbWluaW11bUFuY2VzdG9yTm9kZXNMZW5ndGggPSBNYXRoLm1pbihub2RlQUFuY2VzdG9yTm9kZXNMZW5ndGgsIG5vZGVCQW5jZXN0b3JOb2Rlc0xlbmd0aCk7XG5cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG1pbmltdW1BbmNlc3Rvck5vZGVzTGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgY29uc3Qgbm9kZUFBbmNlc3Rvck5vZGUgPSBub2RlQUFuY2VzdG9yTm9kZXNbaW5kZXhdLFxuICAgICAgICAgIG5vZGVCQW5jZXN0b3JOb2RlID0gbm9kZUJBbmNlc3Rvck5vZGVzW2luZGV4XTtcblxuICAgIGlmIChub2RlQUFuY2VzdG9yTm9kZSAhPT0gbm9kZUJBbmNlc3Rvck5vZGUpIHtcbiAgICAgIGNvbnN0IHBhcmVudEluZGV4ID0gaW5kZXggLSAxLFxuICAgICAgICAgICAgbm9kZUFBbmNlc3Rvck5vZGVQYXJlbnROb2RlID0gbm9kZUFBbmNlc3Rvck5vZGVzW3BhcmVudEluZGV4XSxcbiAgICAgICAgICAgIHBhcmVudE5vZGUgPSBub2RlQUFuY2VzdG9yTm9kZVBhcmVudE5vZGUsIC8vL1xuICAgICAgICAgICAgY2hpbGROb2RlQSA9IG5vZGVBQW5jZXN0b3JOb2RlLCAvLy9cbiAgICAgICAgICAgIGNoaWxkTm9kZUIgPSBub2RlQkFuY2VzdG9yTm9kZSwgLy8vXG4gICAgICAgICAgICBpbmRleEEgPSBwYXJlbnROb2RlLmluZGV4T2ZDaGlsZE5vZGUoY2hpbGROb2RlQSksXG4gICAgICAgICAgICBpbmRleEIgPSBwYXJlbnROb2RlLmluZGV4T2ZDaGlsZE5vZGUoY2hpbGROb2RlQik7XG5cbiAgICAgIGxlc3NUaGFuID0gKGluZGV4QSA8IGluZGV4Qik7XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIGlmIChsZXNzVGhhbiA9PT0gbnVsbCkge1xuICAgIGxlc3NUaGFuID0gKG5vZGVBQW5jZXN0b3JOb2Rlc0xlbmd0aCA8IG5vZGVCQW5jZXN0b3JOb2Rlc0xlbmd0aCk7XG4gIH1cblxuICByZXR1cm4gbGVzc1RoYW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dyZWF0ZXJUaGFuKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBsZXNzVGhhbiA9IGlzTGVzc1RoYW4obm9kZUEsIG5vZGVCKSxcbiAgICAgICAgZ3JlYXRlclRoYW4gPSAhbGVzc1RoYW47XG5cbiAgcmV0dXJuIGdyZWF0ZXJUaGFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNMZXNzVGhhbk9yRXF1YWxUbyhub2RlQSwgbm9kZUIpIHtcbiAgbGV0IGxlc3NUaGFuT3JFcXVhbFRvO1xuXG4gIGlmIChub2RlQSA9PT0gbm9kZUIpIHtcbiAgICBsZXNzVGhhbk9yRXF1YWxUbyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGVzc1RoYW4gPSBpc0xlc3NUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICBsZXNzVGhhbk9yRXF1YWxUbyA9IGxlc3NUaGFuOyAvLy9cbiAgfVxuXG4gIHJldHVybiBsZXNzVGhhbk9yRXF1YWxUbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzR3JlYXRlclRoYW5PckVxdWFsVG8obm9kZUEsIG5vZGVCKSB7XG4gIGxldCBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IGZhbHNlO1xuXG4gIGlmIChub2RlQSA9PT0gbm9kZUIpIHtcbiAgICBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZ3JlYXRlclRoYW4gPSBpc0dyZWF0ZXJUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IGdyZWF0ZXJUaGFuOyAvLy9cbiAgfVxuXG4gIHJldHVybiBncmVhdGVyVGhhbk9yRXF1YWxUbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9yZGVyTm9kZXMobm9kZXMpIHtcbiAgbm9kZXMuc29ydCgobm9kZUEsIG5vZGVCKSA9PiB7XG4gICAgY29uc3Qgbm9kZUFMZXNzVGhhbk5vZGVCID0gaXNMZXNzVGhhbihub2RlQSwgbm9kZUIpLFxuICAgICAgICAgIHJlc3VsdCA9IG5vZGVBTGVzc1RoYW5Ob2RlQiA/XG4gICAgICAgICAgICAgICAgICAgIC0xIDpcbiAgICAgICAgICAgICAgICAgICAgICArMTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBbmNlc3Rvck9mKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBhbmNlc3Rvck9mID0gbm9kZUIuc29tZUFuY2VzdG9yTm9kZSgoYW5jZXN0b3JOb2RlQikgPT4ge1xuICAgIGlmIChub2RlQSA9PT0gYW5jZXN0b3JOb2RlQikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gYW5jZXN0b3JPZjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRGVzY2VuZGFudE9mKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBub2RlQkFuY2VzdG9yT2ZOb2RlQSA9IGlzQW5jZXN0b3JPZihub2RlQiwgbm9kZUEpLFxuICAgICAgICBub2RlQURlc2NlbmRhbnRPZk5vZGVCID0gbm9kZUJBbmNlc3Rvck9mTm9kZUEsICAvLy9cbiAgICAgICAgZGVzY2VuZGFudE9mID0gbm9kZUFEZXNjZW5kYW50T2ZOb2RlQjsgIC8vL1xuXG4gIHJldHVybiBkZXNjZW5kYW50T2Y7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b3Btb3N0Tm9kZUZyb21PdXRlck5vZGVzKENsYXNzRnJvbU91dGVyTm9kZSwgb3V0ZXJOb2Rlcykge1xuICBjb25zdCBub2RlcyA9IG91dGVyTm9kZXM7IC8vL1xuXG4gIG9yZGVyTm9kZXMobm9kZXMpO1xuXG4gIGNvbnN0IG91dGVyTm9kZSA9IG51bGwsXG4gICAgICAgIENsYXNzID0gQ2xhc3NGcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSksXG4gICAgICAgIHRvcG1vc3ROb2RlID0gQ2xhc3MuZnJvbU5vdGhpbmcoKSxcbiAgICAgICAgb3V0ZXJOb2RlVG9Ob2RlTWFwID0gbmV3IFdlYWtNYXAoKTtcblxuICBvdXRlck5vZGVzLmZvckVhY2goKG91dGVyTm9kZSkgPT4ge1xuICAgIGxldCBwYXJlbnROb2RlID0gdG9wbW9zdE5vZGU7IC8vL1xuXG4gICAgb3V0ZXJOb2RlLnNvbWVBbmNlc3Rvck5vZGUoKGFuY2VzdG9yTm9kZSkgPT4ge1xuICAgICAgY29uc3Qgb3V0ZXJOb2RlID0gYW5jZXN0b3JOb2RlLCAvLy9cbiAgICAgICAgICAgIG5vZGUgPSBvdXRlck5vZGVUb05vZGVNYXAuZ2V0KG91dGVyTm9kZSkgfHwgbnVsbDtcblxuICAgICAgaWYgKG5vZGUgIT09IG51bGwpIHtcbiAgICAgICAgcGFyZW50Tm9kZSA9IG5vZGU7ICAvLy9cblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IENsYXNzID0gQ2xhc3NGcm9tT3V0ZXJOb2RlKG91dGVyTm9kZSksXG4gICAgICAgICAgbm9kZSA9IENsYXNzLmZyb21PdXRlck5vZGUob3V0ZXJOb2RlKSxcbiAgICAgICAgICBhcHBlbmRlZENoaWxkTm9kZSA9IG5vZGU7IC8vL1xuXG4gICAgcGFyZW50Tm9kZS5hcHBlbmRDaGlsZE5vZGUoYXBwZW5kZWRDaGlsZE5vZGUpO1xuXG4gICAgb3V0ZXJOb2RlVG9Ob2RlTWFwLnNldChvdXRlck5vZGUsIG5vZGUpO1xuICB9KTtcblxuICByZXR1cm4gdG9wbW9zdE5vZGU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgaXNMZXNzVGhhbixcbiAgaXNHcmVhdGVyVGhhbixcbiAgaXNMZXNzVGhhbk9yRXF1YWxUbyxcbiAgaXNHcmVhdGVyVGhhbk9yRXF1YWxUbyxcbiAgb3JkZXJOb2RlcyxcbiAgaXNBbmNlc3Rvck9mLFxuICBpc0Rlc2NlbmRhbnRPZixcbiAgdG9wbW9zdE5vZGVGcm9tT3V0ZXJOb2Rlcyxcbn07XG5cbmZ1bmN0aW9uIGFuY2VzdG9yTm9kZXNGcm9tTm9kZShub2RlKSB7XG4gIGNvbnN0IGFuY2VzdG9yTm9kZXMgPSBub2RlLmdldEFuY2VzdG9yTm9kZXMoKTtcblxuICBhbmNlc3Rvck5vZGVzLnVuc2hpZnQobm9kZSk7XG5cbiAgYW5jZXN0b3JOb2Rlcy5yZXZlcnNlKCk7XG5cbiAgcmV0dXJuIGFuY2VzdG9yTm9kZXM7XG59XG4iXSwibmFtZXMiOlsiaXNBbmNlc3Rvck9mIiwiaXNEZXNjZW5kYW50T2YiLCJpc0dyZWF0ZXJUaGFuIiwiaXNHcmVhdGVyVGhhbk9yRXF1YWxUbyIsImlzTGVzc1RoYW4iLCJpc0xlc3NUaGFuT3JFcXVhbFRvIiwib3JkZXJOb2RlcyIsInRvcG1vc3ROb2RlRnJvbU91dGVyTm9kZXMiLCJub2RlQSIsIm5vZGVCIiwibGVzc1RoYW4iLCJub2RlQUFuY2VzdG9yTm9kZXMiLCJhbmNlc3Rvck5vZGVzRnJvbU5vZGUiLCJub2RlQkFuY2VzdG9yTm9kZXMiLCJub2RlQUFuY2VzdG9yTm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJub2RlQkFuY2VzdG9yTm9kZXNMZW5ndGgiLCJtaW5pbXVtQW5jZXN0b3JOb2Rlc0xlbmd0aCIsIk1hdGgiLCJtaW4iLCJpbmRleCIsIm5vZGVBQW5jZXN0b3JOb2RlIiwibm9kZUJBbmNlc3Rvck5vZGUiLCJwYXJlbnRJbmRleCIsIm5vZGVBQW5jZXN0b3JOb2RlUGFyZW50Tm9kZSIsInBhcmVudE5vZGUiLCJjaGlsZE5vZGVBIiwiY2hpbGROb2RlQiIsImluZGV4QSIsImluZGV4T2ZDaGlsZE5vZGUiLCJpbmRleEIiLCJncmVhdGVyVGhhbiIsImxlc3NUaGFuT3JFcXVhbFRvIiwiZ3JlYXRlclRoYW5PckVxdWFsVG8iLCJub2RlcyIsInNvcnQiLCJub2RlQUxlc3NUaGFuTm9kZUIiLCJyZXN1bHQiLCJhbmNlc3Rvck9mIiwic29tZUFuY2VzdG9yTm9kZSIsImFuY2VzdG9yTm9kZUIiLCJub2RlQkFuY2VzdG9yT2ZOb2RlQSIsIm5vZGVBRGVzY2VuZGFudE9mTm9kZUIiLCJkZXNjZW5kYW50T2YiLCJDbGFzc0Zyb21PdXRlck5vZGUiLCJvdXRlck5vZGVzIiwib3V0ZXJOb2RlIiwiQ2xhc3MiLCJ0b3Btb3N0Tm9kZSIsImZyb21Ob3RoaW5nIiwib3V0ZXJOb2RlVG9Ob2RlTWFwIiwiV2Vha01hcCIsImZvckVhY2giLCJhbmNlc3Rvck5vZGUiLCJub2RlIiwiZ2V0IiwiZnJvbU91dGVyTm9kZSIsImFwcGVuZGVkQ2hpbGROb2RlIiwiYXBwZW5kQ2hpbGROb2RlIiwic2V0IiwiYW5jZXN0b3JOb2RlcyIsImdldEFuY2VzdG9yTm9kZXMiLCJ1bnNoaWZ0IiwicmV2ZXJzZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBeUlBO2VBQUE7O1FBdERnQkE7ZUFBQUE7O1FBVUFDO2VBQUFBOztRQXhEQUM7ZUFBQUE7O1FBcUJBQztlQUFBQTs7UUF4REFDO2VBQUFBOztRQTBDQUM7ZUFBQUE7O1FBNEJBQztlQUFBQTs7UUE2QkFDO2VBQUFBOzs7QUFuR1QsU0FBU0gsV0FBV0ksS0FBSyxFQUFFQyxLQUFLO0lBQ3JDLElBQUlDLFdBQVc7SUFFZixNQUFNQyxxQkFBcUJDLHNCQUFzQkosUUFDM0NLLHFCQUFxQkQsc0JBQXNCSCxRQUMzQ0ssMkJBQTJCSCxtQkFBbUJJLE1BQU0sRUFDcERDLDJCQUEyQkgsbUJBQW1CRSxNQUFNLEVBQ3BERSw2QkFBNkJDLEtBQUtDLEdBQUcsQ0FBQ0wsMEJBQTBCRTtJQUV0RSxJQUFLLElBQUlJLFFBQVEsR0FBR0EsUUFBUUgsNEJBQTRCRyxRQUFTO1FBQy9ELE1BQU1DLG9CQUFvQlYsa0JBQWtCLENBQUNTLE1BQU0sRUFDN0NFLG9CQUFvQlQsa0JBQWtCLENBQUNPLE1BQU07UUFFbkQsSUFBSUMsc0JBQXNCQyxtQkFBbUI7WUFDM0MsTUFBTUMsY0FBY0gsUUFBUSxHQUN0QkksOEJBQThCYixrQkFBa0IsQ0FBQ1ksWUFBWSxFQUM3REUsYUFBYUQsNkJBQ2JFLGFBQWFMLG1CQUNiTSxhQUFhTCxtQkFDYk0sU0FBU0gsV0FBV0ksZ0JBQWdCLENBQUNILGFBQ3JDSSxTQUFTTCxXQUFXSSxnQkFBZ0IsQ0FBQ0Y7WUFFM0NqQixXQUFZa0IsU0FBU0U7WUFFckI7UUFDRjtJQUNGO0lBRUEsSUFBSXBCLGFBQWEsTUFBTTtRQUNyQkEsV0FBWUksMkJBQTJCRTtJQUN6QztJQUVBLE9BQU9OO0FBQ1Q7QUFFTyxTQUFTUixjQUFjTSxLQUFLLEVBQUVDLEtBQUs7SUFDeEMsTUFBTUMsV0FBV04sV0FBV0ksT0FBT0MsUUFDN0JzQixjQUFjLENBQUNyQjtJQUVyQixPQUFPcUI7QUFDVDtBQUVPLFNBQVMxQixvQkFBb0JHLEtBQUssRUFBRUMsS0FBSztJQUM5QyxJQUFJdUI7SUFFSixJQUFJeEIsVUFBVUMsT0FBTztRQUNuQnVCLG9CQUFvQjtJQUN0QixPQUFPO1FBQ0wsTUFBTXRCLFdBQVdOLFdBQVdJLE9BQU9DO1FBRW5DdUIsb0JBQW9CdEIsVUFBVSxHQUFHO0lBQ25DO0lBRUEsT0FBT3NCO0FBQ1Q7QUFFTyxTQUFTN0IsdUJBQXVCSyxLQUFLLEVBQUVDLEtBQUs7SUFDakQsSUFBSXdCLHVCQUF1QjtJQUUzQixJQUFJekIsVUFBVUMsT0FBTztRQUNuQndCLHVCQUF1QjtJQUN6QixPQUFPO1FBQ0wsTUFBTUYsY0FBYzdCLGNBQWNNLE9BQU9DO1FBRXpDd0IsdUJBQXVCRixhQUFhLEdBQUc7SUFDekM7SUFFQSxPQUFPRTtBQUNUO0FBRU8sU0FBUzNCLFdBQVc0QixLQUFLO0lBQzlCQSxNQUFNQyxJQUFJLENBQUMsQ0FBQzNCLE9BQU9DO1FBQ2pCLE1BQU0yQixxQkFBcUJoQyxXQUFXSSxPQUFPQyxRQUN2QzRCLFNBQVNELHFCQUNDLENBQUMsSUFDQyxDQUFDO1FBRW5CLE9BQU9DO0lBQ1Q7QUFDRjtBQUVPLFNBQVNyQyxhQUFhUSxLQUFLLEVBQUVDLEtBQUs7SUFDdkMsTUFBTTZCLGFBQWE3QixNQUFNOEIsZ0JBQWdCLENBQUMsQ0FBQ0M7UUFDekMsSUFBSWhDLFVBQVVnQyxlQUFlO1lBQzNCLE9BQU87UUFDVDtJQUNGO0lBRUEsT0FBT0Y7QUFDVDtBQUVPLFNBQVNyQyxlQUFlTyxLQUFLLEVBQUVDLEtBQUs7SUFDekMsTUFBTWdDLHVCQUF1QnpDLGFBQWFTLE9BQU9ELFFBQzNDa0MseUJBQXlCRCxzQkFDekJFLGVBQWVELHdCQUF5QixHQUFHO0lBRWpELE9BQU9DO0FBQ1Q7QUFFTyxTQUFTcEMsMEJBQTBCcUMsa0JBQWtCLEVBQUVDLFVBQVU7SUFDdEUsTUFBTVgsUUFBUVcsWUFBWSxHQUFHO0lBRTdCdkMsV0FBVzRCO0lBRVgsTUFBTVksWUFBWSxNQUNaQyxRQUFRSCxtQkFBbUJFLFlBQzNCRSxjQUFjRCxNQUFNRSxXQUFXLElBQy9CQyxxQkFBcUIsSUFBSUM7SUFFL0JOLFdBQVdPLE9BQU8sQ0FBQyxDQUFDTjtRQUNsQixJQUFJckIsYUFBYXVCLGFBQWEsR0FBRztRQUVqQ0YsVUFBVVAsZ0JBQWdCLENBQUMsQ0FBQ2M7WUFDMUIsTUFBTVAsWUFBWU8sY0FDWkMsT0FBT0osbUJBQW1CSyxHQUFHLENBQUNULGNBQWM7WUFFbEQsSUFBSVEsU0FBUyxNQUFNO2dCQUNqQjdCLGFBQWE2QixNQUFPLEdBQUc7Z0JBRXZCLE9BQU87WUFDVDtRQUNGO1FBRUEsTUFBTVAsUUFBUUgsbUJBQW1CRSxZQUMzQlEsT0FBT1AsTUFBTVMsYUFBYSxDQUFDVixZQUMzQlcsb0JBQW9CSCxNQUFNLEdBQUc7UUFFbkM3QixXQUFXaUMsZUFBZSxDQUFDRDtRQUUzQlAsbUJBQW1CUyxHQUFHLENBQUNiLFdBQVdRO0lBQ3BDO0lBRUEsT0FBT047QUFDVDtNQUVBLFdBQWU7SUFDYjVDO0lBQ0FGO0lBQ0FHO0lBQ0FGO0lBQ0FHO0lBQ0FOO0lBQ0FDO0lBQ0FNO0FBQ0Y7QUFFQSxTQUFTSyxzQkFBc0IwQyxJQUFJO0lBQ2pDLE1BQU1NLGdCQUFnQk4sS0FBS08sZ0JBQWdCO0lBRTNDRCxjQUFjRSxPQUFPLENBQUNSO0lBRXRCTSxjQUFjRyxPQUFPO0lBRXJCLE9BQU9IO0FBQ1QifQ==
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzTGVzc1RoYW4obm9kZUEsIG5vZGVCKSB7XG4gIGxldCBsZXNzVGhhbiA9IG51bGw7XG5cbiAgY29uc3Qgbm9kZUFBbmNlc3Rvck5vZGVzID0gYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlKG5vZGVBKSxcbiAgICAgICAgbm9kZUJBbmNlc3Rvck5vZGVzID0gYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlKG5vZGVCKSxcbiAgICAgICAgbm9kZUFBbmNlc3Rvck5vZGVzTGVuZ3RoID0gbm9kZUFBbmNlc3Rvck5vZGVzLmxlbmd0aCxcbiAgICAgICAgbm9kZUJBbmNlc3Rvck5vZGVzTGVuZ3RoID0gbm9kZUJBbmNlc3Rvck5vZGVzLmxlbmd0aCxcbiAgICAgICAgbWluaW11bUFuY2VzdG9yTm9kZXNMZW5ndGggPSBNYXRoLm1pbihub2RlQUFuY2VzdG9yTm9kZXNMZW5ndGgsIG5vZGVCQW5jZXN0b3JOb2Rlc0xlbmd0aCk7XG5cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG1pbmltdW1BbmNlc3Rvck5vZGVzTGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgY29uc3Qgbm9kZUFBbmNlc3Rvck5vZGUgPSBub2RlQUFuY2VzdG9yTm9kZXNbaW5kZXhdLFxuICAgICAgICAgIG5vZGVCQW5jZXN0b3JOb2RlID0gbm9kZUJBbmNlc3Rvck5vZGVzW2luZGV4XTtcblxuICAgIGlmIChub2RlQUFuY2VzdG9yTm9kZSAhPT0gbm9kZUJBbmNlc3Rvck5vZGUpIHtcbiAgICAgIGNvbnN0IHBhcmVudEluZGV4ID0gaW5kZXggLSAxLFxuICAgICAgICAgICAgbm9kZUFBbmNlc3Rvck5vZGVQYXJlbnROb2RlID0gbm9kZUFBbmNlc3Rvck5vZGVzW3BhcmVudEluZGV4XSxcbiAgICAgICAgICAgIHBhcmVudE5vZGUgPSBub2RlQUFuY2VzdG9yTm9kZVBhcmVudE5vZGUsIC8vL1xuICAgICAgICAgICAgY2hpbGROb2RlQSA9IG5vZGVBQW5jZXN0b3JOb2RlLCAvLy9cbiAgICAgICAgICAgIGNoaWxkTm9kZUIgPSBub2RlQkFuY2VzdG9yTm9kZSwgLy8vXG4gICAgICAgICAgICBpbmRleEEgPSBwYXJlbnROb2RlLmluZGV4T2ZDaGlsZE5vZGUoY2hpbGROb2RlQSksXG4gICAgICAgICAgICBpbmRleEIgPSBwYXJlbnROb2RlLmluZGV4T2ZDaGlsZE5vZGUoY2hpbGROb2RlQik7XG5cbiAgICAgIGxlc3NUaGFuID0gKGluZGV4QSA8IGluZGV4Qik7XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIGlmIChsZXNzVGhhbiA9PT0gbnVsbCkge1xuICAgIGxlc3NUaGFuID0gKG5vZGVBQW5jZXN0b3JOb2Rlc0xlbmd0aCA8IG5vZGVCQW5jZXN0b3JOb2Rlc0xlbmd0aCk7XG4gIH1cblxuICByZXR1cm4gbGVzc1RoYW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0dyZWF0ZXJUaGFuKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBsZXNzVGhhbiA9IGlzTGVzc1RoYW4obm9kZUEsIG5vZGVCKSxcbiAgICAgICAgZ3JlYXRlclRoYW4gPSAhbGVzc1RoYW47XG5cbiAgcmV0dXJuIGdyZWF0ZXJUaGFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNMZXNzVGhhbk9yRXF1YWxUbyhub2RlQSwgbm9kZUIpIHtcbiAgbGV0IGxlc3NUaGFuT3JFcXVhbFRvO1xuXG4gIGlmIChub2RlQSA9PT0gbm9kZUIpIHtcbiAgICBsZXNzVGhhbk9yRXF1YWxUbyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbGVzc1RoYW4gPSBpc0xlc3NUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICBsZXNzVGhhbk9yRXF1YWxUbyA9IGxlc3NUaGFuOyAvLy9cbiAgfVxuXG4gIHJldHVybiBsZXNzVGhhbk9yRXF1YWxUbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzR3JlYXRlclRoYW5PckVxdWFsVG8obm9kZUEsIG5vZGVCKSB7XG4gIGxldCBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IGZhbHNlO1xuXG4gIGlmIChub2RlQSA9PT0gbm9kZUIpIHtcbiAgICBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IHRydWU7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZ3JlYXRlclRoYW4gPSBpc0dyZWF0ZXJUaGFuKG5vZGVBLCBub2RlQik7XG5cbiAgICBncmVhdGVyVGhhbk9yRXF1YWxUbyA9IGdyZWF0ZXJUaGFuOyAvLy9cbiAgfVxuXG4gIHJldHVybiBncmVhdGVyVGhhbk9yRXF1YWxUbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9yZGVyTm9kZXMobm9kZXMpIHtcbiAgbm9kZXMuc29ydCgobm9kZUEsIG5vZGVCKSA9PiB7XG4gICAgY29uc3Qgbm9kZUFMZXNzVGhhbk5vZGVCID0gaXNMZXNzVGhhbihub2RlQSwgbm9kZUIpLFxuICAgICAgICAgIHJlc3VsdCA9IG5vZGVBTGVzc1RoYW5Ob2RlQiA/XG4gICAgICAgICAgICAgICAgICAgIC0xIDpcbiAgICAgICAgICAgICAgICAgICAgICArMTtcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBbmNlc3Rvck9mKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBhbmNlc3Rvck9mID0gbm9kZUIuc29tZUFuY2VzdG9yTm9kZSgoYW5jZXN0b3JOb2RlQikgPT4ge1xuICAgIGlmIChub2RlQSA9PT0gYW5jZXN0b3JOb2RlQikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gYW5jZXN0b3JPZjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRGVzY2VuZGFudE9mKG5vZGVBLCBub2RlQikge1xuICBjb25zdCBub2RlQkFuY2VzdG9yT2ZOb2RlQSA9IGlzQW5jZXN0b3JPZihub2RlQiwgbm9kZUEpLFxuICAgICAgICBub2RlQURlc2NlbmRhbnRPZk5vZGVCID0gbm9kZUJBbmNlc3Rvck9mTm9kZUEsICAvLy9cbiAgICAgICAgZGVzY2VuZGFudE9mID0gbm9kZUFEZXNjZW5kYW50T2ZOb2RlQjsgIC8vL1xuXG4gIHJldHVybiBkZXNjZW5kYW50T2Y7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgaXNMZXNzVGhhbixcbiAgaXNHcmVhdGVyVGhhbixcbiAgaXNMZXNzVGhhbk9yRXF1YWxUbyxcbiAgaXNHcmVhdGVyVGhhbk9yRXF1YWxUbyxcbiAgb3JkZXJOb2RlcyxcbiAgaXNBbmNlc3Rvck9mLFxuICBpc0Rlc2NlbmRhbnRPZlxufTtcblxuZnVuY3Rpb24gYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgYW5jZXN0b3JOb2RlcyA9IG5vZGUuZ2V0QW5jZXN0b3JOb2RlcygpO1xuXG4gIGFuY2VzdG9yTm9kZXMudW5zaGlmdChub2RlKTtcblxuICBhbmNlc3Rvck5vZGVzLnJldmVyc2UoKTtcblxuICByZXR1cm4gYW5jZXN0b3JOb2Rlcztcbn1cbiJdLCJuYW1lcyI6WyJpc0FuY2VzdG9yT2YiLCJpc0Rlc2NlbmRhbnRPZiIsImlzR3JlYXRlclRoYW4iLCJpc0dyZWF0ZXJUaGFuT3JFcXVhbFRvIiwiaXNMZXNzVGhhbiIsImlzTGVzc1RoYW5PckVxdWFsVG8iLCJvcmRlck5vZGVzIiwibm9kZUEiLCJub2RlQiIsImxlc3NUaGFuIiwibm9kZUFBbmNlc3Rvck5vZGVzIiwiYW5jZXN0b3JOb2Rlc0Zyb21Ob2RlIiwibm9kZUJBbmNlc3Rvck5vZGVzIiwibm9kZUFBbmNlc3Rvck5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwibm9kZUJBbmNlc3Rvck5vZGVzTGVuZ3RoIiwibWluaW11bUFuY2VzdG9yTm9kZXNMZW5ndGgiLCJNYXRoIiwibWluIiwiaW5kZXgiLCJub2RlQUFuY2VzdG9yTm9kZSIsIm5vZGVCQW5jZXN0b3JOb2RlIiwicGFyZW50SW5kZXgiLCJub2RlQUFuY2VzdG9yTm9kZVBhcmVudE5vZGUiLCJwYXJlbnROb2RlIiwiY2hpbGROb2RlQSIsImNoaWxkTm9kZUIiLCJpbmRleEEiLCJpbmRleE9mQ2hpbGROb2RlIiwiaW5kZXhCIiwiZ3JlYXRlclRoYW4iLCJsZXNzVGhhbk9yRXF1YWxUbyIsImdyZWF0ZXJUaGFuT3JFcXVhbFRvIiwibm9kZXMiLCJzb3J0Iiwibm9kZUFMZXNzVGhhbk5vZGVCIiwicmVzdWx0IiwiYW5jZXN0b3JPZiIsInNvbWVBbmNlc3Rvck5vZGUiLCJhbmNlc3Rvck5vZGVCIiwibm9kZUJBbmNlc3Rvck9mTm9kZUEiLCJub2RlQURlc2NlbmRhbnRPZk5vZGVCIiwiZGVzY2VuZGFudE9mIiwibm9kZSIsImFuY2VzdG9yTm9kZXMiLCJnZXRBbmNlc3Rvck5vZGVzIiwidW5zaGlmdCIsInJldmVyc2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQXFHQTtlQUFBOztRQWxCZ0JBO2VBQUFBOztRQVVBQztlQUFBQTs7UUF4REFDO2VBQUFBOztRQXFCQUM7ZUFBQUE7O1FBeERBQztlQUFBQTs7UUEwQ0FDO2VBQUFBOztRQTRCQUM7ZUFBQUE7OztBQXRFVCxTQUFTRixXQUFXRyxLQUFLLEVBQUVDLEtBQUs7SUFDckMsSUFBSUMsV0FBVztJQUVmLE1BQU1DLHFCQUFxQkMsc0JBQXNCSixRQUMzQ0sscUJBQXFCRCxzQkFBc0JILFFBQzNDSywyQkFBMkJILG1CQUFtQkksTUFBTSxFQUNwREMsMkJBQTJCSCxtQkFBbUJFLE1BQU0sRUFDcERFLDZCQUE2QkMsS0FBS0MsR0FBRyxDQUFDTCwwQkFBMEJFO0lBRXRFLElBQUssSUFBSUksUUFBUSxHQUFHQSxRQUFRSCw0QkFBNEJHLFFBQVM7UUFDL0QsTUFBTUMsb0JBQW9CVixrQkFBa0IsQ0FBQ1MsTUFBTSxFQUM3Q0Usb0JBQW9CVCxrQkFBa0IsQ0FBQ08sTUFBTTtRQUVuRCxJQUFJQyxzQkFBc0JDLG1CQUFtQjtZQUMzQyxNQUFNQyxjQUFjSCxRQUFRLEdBQ3RCSSw4QkFBOEJiLGtCQUFrQixDQUFDWSxZQUFZLEVBQzdERSxhQUFhRCw2QkFDYkUsYUFBYUwsbUJBQ2JNLGFBQWFMLG1CQUNiTSxTQUFTSCxXQUFXSSxnQkFBZ0IsQ0FBQ0gsYUFDckNJLFNBQVNMLFdBQVdJLGdCQUFnQixDQUFDRjtZQUUzQ2pCLFdBQVlrQixTQUFTRTtZQUVyQjtRQUNGO0lBQ0Y7SUFFQSxJQUFJcEIsYUFBYSxNQUFNO1FBQ3JCQSxXQUFZSSwyQkFBMkJFO0lBQ3pDO0lBRUEsT0FBT047QUFDVDtBQUVPLFNBQVNQLGNBQWNLLEtBQUssRUFBRUMsS0FBSztJQUN4QyxNQUFNQyxXQUFXTCxXQUFXRyxPQUFPQyxRQUM3QnNCLGNBQWMsQ0FBQ3JCO0lBRXJCLE9BQU9xQjtBQUNUO0FBRU8sU0FBU3pCLG9CQUFvQkUsS0FBSyxFQUFFQyxLQUFLO0lBQzlDLElBQUl1QjtJQUVKLElBQUl4QixVQUFVQyxPQUFPO1FBQ25CdUIsb0JBQW9CO0lBQ3RCLE9BQU87UUFDTCxNQUFNdEIsV0FBV0wsV0FBV0csT0FBT0M7UUFFbkN1QixvQkFBb0J0QixVQUFVLEdBQUc7SUFDbkM7SUFFQSxPQUFPc0I7QUFDVDtBQUVPLFNBQVM1Qix1QkFBdUJJLEtBQUssRUFBRUMsS0FBSztJQUNqRCxJQUFJd0IsdUJBQXVCO0lBRTNCLElBQUl6QixVQUFVQyxPQUFPO1FBQ25Cd0IsdUJBQXVCO0lBQ3pCLE9BQU87UUFDTCxNQUFNRixjQUFjNUIsY0FBY0ssT0FBT0M7UUFFekN3Qix1QkFBdUJGLGFBQWEsR0FBRztJQUN6QztJQUVBLE9BQU9FO0FBQ1Q7QUFFTyxTQUFTMUIsV0FBVzJCLEtBQUs7SUFDOUJBLE1BQU1DLElBQUksQ0FBQyxDQUFDM0IsT0FBT0M7UUFDakIsTUFBTTJCLHFCQUFxQi9CLFdBQVdHLE9BQU9DLFFBQ3ZDNEIsU0FBU0QscUJBQ0MsQ0FBQyxJQUNDLENBQUM7UUFFbkIsT0FBT0M7SUFDVDtBQUNGO0FBRU8sU0FBU3BDLGFBQWFPLEtBQUssRUFBRUMsS0FBSztJQUN2QyxNQUFNNkIsYUFBYTdCLE1BQU04QixnQkFBZ0IsQ0FBQyxDQUFDQztRQUN6QyxJQUFJaEMsVUFBVWdDLGVBQWU7WUFDM0IsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPRjtBQUNUO0FBRU8sU0FBU3BDLGVBQWVNLEtBQUssRUFBRUMsS0FBSztJQUN6QyxNQUFNZ0MsdUJBQXVCeEMsYUFBYVEsT0FBT0QsUUFDM0NrQyx5QkFBeUJELHNCQUN6QkUsZUFBZUQsd0JBQXlCLEdBQUc7SUFFakQsT0FBT0M7QUFDVDtNQUVBLFdBQWU7SUFDYnRDO0lBQ0FGO0lBQ0FHO0lBQ0FGO0lBQ0FHO0lBQ0FOO0lBQ0FDO0FBQ0Y7QUFFQSxTQUFTVSxzQkFBc0JnQyxJQUFJO0lBQ2pDLE1BQU1DLGdCQUFnQkQsS0FBS0UsZ0JBQWdCO0lBRTNDRCxjQUFjRSxPQUFPLENBQUNIO0lBRXRCQyxjQUFjRyxPQUFPO0lBRXJCLE9BQU9IO0FBQ1QifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-dom",
3
3
  "author": "James Smith",
4
- "version": "5.3.92",
4
+ "version": "6.0.1",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-dom",
7
7
  "description": "Occam's DOM related functionality.",
@@ -17,13 +17,13 @@
17
17
  "@swc/core": "1.13.20",
18
18
  "esbuild": "0.11.14",
19
19
  "easy": "^25.0.1",
20
- "easy-layout": "^6.0.317",
21
- "easy-with-style": "^3.0.563",
20
+ "easy-layout": "^6.0.318",
21
+ "easy-with-style": "^3.0.564",
22
22
  "express": "^4.17.1",
23
23
  "juxtapose": "^4.0.138",
24
24
  "lively-cli": "^3.0.3",
25
25
  "watchful-cli": "^1.7.98",
26
- "with-style": "^5.0.306"
26
+ "with-style": "^5.0.308"
27
27
  },
28
28
  "scripts": {
29
29
  "start": "node ./bin/main.js",
@@ -3,7 +3,7 @@
3
3
  import withStyle from "easy-with-style"; ///
4
4
 
5
5
  import { Element } from "easy";
6
- import { nodeUtilities } from "../index" ///
6
+ import { domUtilities } from "../index" ///
7
7
  import { CSSLexer, CSSParser } from "with-style";
8
8
  import { RowsDiv, ColumnDiv, ColumnsDiv, VerticalSplitterDiv } from "easy-layout";
9
9
 
@@ -16,7 +16,7 @@ import InnerParseTreeTextarea from "./view/textarea/parseTree/inner";
16
16
 
17
17
  import { queryByExpressions } from "./utilities/query";
18
18
 
19
- const { topmostNodeFromOuterNodes: topmostInnerNodeFromOuterNodes } = nodeUtilities;
19
+ const { topmostNodeFromOuterNodes } = domUtilities;
20
20
 
21
21
  const cssLexer = CSSLexer.fromNothing(),
22
22
  cssParser = CSSParser.fromNothing();
@@ -34,8 +34,8 @@ class View extends Element {
34
34
  const outerNode = node, ///
35
35
  expressions = this.getExpressions(),
36
36
  outerNodes = queryByExpressions(outerNode, expressions),
37
- topmostInnerNode = topmostInnerNodeFromOuterNodes(outerNodes),
38
- innerNode = topmostInnerNode, ///
37
+ topmostNode = topmostNodeFromOuterNodes(outerNodes),
38
+ innerNode = topmostNode, ///
39
39
  outerParseTree = outerNode.asParseTree(tokens),
40
40
  innerParseTree = innerNode.asParseTree();
41
41
 
package/src/index.js CHANGED
@@ -2,5 +2,6 @@
2
2
 
3
3
  export { default as Node } from "./node";
4
4
  export { default as Transform } from "./transform";
5
+ export { default as domUtilities } from "./utilities/dom";
5
6
  export { default as nodeUtilities } from "./utilities/node";
6
7
  export { default as transformUtilities } from "./utilities/transform";
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ import Node from "../node";
4
+
5
+ import { orderNodes } from "../utilities/node";
6
+
7
+ export function topmostNodeFromOuterNodes(outerNodes, ClassFromOuterNode = DefaultClassFromOuterNode) {
8
+ const nodes = outerNodes; ///
9
+
10
+ orderNodes(nodes);
11
+
12
+ const outerNode = null,
13
+ Class = ClassFromOuterNode(outerNode),
14
+ topmostNode = Class.fromNothing(),
15
+ outerNodeToNodeMap = new WeakMap();
16
+
17
+ outerNodes.forEach((outerNode) => {
18
+ let parentNode = topmostNode; ///
19
+
20
+ outerNode.someAncestorNode((ancestorNode) => {
21
+ const outerNode = ancestorNode, ///
22
+ node = outerNodeToNodeMap.get(outerNode) || null;
23
+
24
+ if (node !== null) {
25
+ parentNode = node; ///
26
+
27
+ return true;
28
+ }
29
+ });
30
+
31
+ const Class = ClassFromOuterNode(outerNode),
32
+ node = Class.fromOuterNode(outerNode),
33
+ appendedChildNode = node; ///
34
+
35
+ parentNode.appendChildNode(appendedChildNode);
36
+
37
+ outerNodeToNodeMap.set(outerNode, node);
38
+ });
39
+
40
+ return topmostNode;
41
+ }
42
+
43
+ export default {
44
+ topmostNodeFromOuterNodes
45
+ };
46
+
47
+ function DefaultClassFromOuterNode(outerNode) {
48
+ const Class = Node; ///
49
+
50
+ return Class;
51
+ }
@@ -99,42 +99,6 @@ export function isDescendantOf(nodeA, nodeB) {
99
99
  return descendantOf;
100
100
  }
101
101
 
102
- export function topmostNodeFromOuterNodes(ClassFromOuterNode, outerNodes) {
103
- const nodes = outerNodes; ///
104
-
105
- orderNodes(nodes);
106
-
107
- const outerNode = null,
108
- Class = ClassFromOuterNode(outerNode),
109
- topmostNode = Class.fromNothing(),
110
- outerNodeToNodeMap = new WeakMap();
111
-
112
- outerNodes.forEach((outerNode) => {
113
- let parentNode = topmostNode; ///
114
-
115
- outerNode.someAncestorNode((ancestorNode) => {
116
- const outerNode = ancestorNode, ///
117
- node = outerNodeToNodeMap.get(outerNode) || null;
118
-
119
- if (node !== null) {
120
- parentNode = node; ///
121
-
122
- return true;
123
- }
124
- });
125
-
126
- const Class = ClassFromOuterNode(outerNode),
127
- node = Class.fromOuterNode(outerNode),
128
- appendedChildNode = node; ///
129
-
130
- parentNode.appendChildNode(appendedChildNode);
131
-
132
- outerNodeToNodeMap.set(outerNode, node);
133
- });
134
-
135
- return topmostNode;
136
- }
137
-
138
102
  export default {
139
103
  isLessThan,
140
104
  isGreaterThan,
@@ -142,8 +106,7 @@ export default {
142
106
  isGreaterThanOrEqualTo,
143
107
  orderNodes,
144
108
  isAncestorOf,
145
- isDescendantOf,
146
- topmostNodeFromOuterNodes,
109
+ isDescendantOf
147
110
  };
148
111
 
149
112
  function ancestorNodesFromNode(node) {