diff options
author | Minteck <contact@minteck.org> | 2023-01-10 14:54:04 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2023-01-10 14:54:04 +0100 |
commit | 99c1d9af689e5325f3cf535c4007b3aeb8325229 (patch) | |
tree | e663b3c2ebdbd67c818ac0c5147f0ce1d2463cda /alarm/node_modules/symbol-tree/lib | |
parent | 9871b03912fc28ad38b4037ebf26a78aa937baba (diff) | |
download | pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.tar.gz pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.tar.bz2 pluralconnect-99c1d9af689e5325f3cf535c4007b3aeb8325229.zip |
Update - This is an automated commit
Diffstat (limited to 'alarm/node_modules/symbol-tree/lib')
-rw-r--r-- | alarm/node_modules/symbol-tree/lib/SymbolTree.js | 838 | ||||
-rw-r--r-- | alarm/node_modules/symbol-tree/lib/SymbolTreeNode.js | 54 | ||||
-rw-r--r-- | alarm/node_modules/symbol-tree/lib/TreeIterator.js | 69 | ||||
-rw-r--r-- | alarm/node_modules/symbol-tree/lib/TreePosition.js | 11 |
4 files changed, 0 insertions, 972 deletions
diff --git a/alarm/node_modules/symbol-tree/lib/SymbolTree.js b/alarm/node_modules/symbol-tree/lib/SymbolTree.js deleted file mode 100644 index b2b8f2e..0000000 --- a/alarm/node_modules/symbol-tree/lib/SymbolTree.js +++ /dev/null @@ -1,838 +0,0 @@ -'use strict'; - -/** - * @module symbol-tree - * @author Joris van der Wel <joris@jorisvanderwel.com> - */ - -const SymbolTreeNode = require('./SymbolTreeNode'); -const TreePosition = require('./TreePosition'); -const TreeIterator = require('./TreeIterator'); - -function returnTrue() { - return true; -} - -function reverseArrayIndex(array, reverseIndex) { - return array[array.length - 1 - reverseIndex]; // no need to check `index >= 0` -} - -class SymbolTree { - - /** - * @constructor - * @alias module:symbol-tree - * @param {string} [description='SymbolTree data'] Description used for the Symbol - */ - constructor(description) { - this.symbol = Symbol(description || 'SymbolTree data'); - } - - /** - * You can use this function to (optionally) initialize an object right after its creation, - * to take advantage of V8's fast properties. Also useful if you would like to - * freeze your object. - * - * `O(1)` - * - * @method - * @alias module:symbol-tree#initialize - * @param {Object} object - * @return {Object} object - */ - initialize(object) { - this._node(object); - - return object; - } - - _node(object) { - if (!object) { - return null; - } - - const node = object[this.symbol]; - - if (node) { - return node; - } - - return (object[this.symbol] = new SymbolTreeNode()); - } - - /** - * Returns `true` if the object has any children. Otherwise it returns `false`. - * - * * `O(1)` - * - * @method hasChildren - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Boolean} - */ - hasChildren(object) { - return this._node(object).hasChildren; - } - - /** - * Returns the first child of the given object. - * - * * `O(1)` - * - * @method firstChild - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - firstChild(object) { - return this._node(object).firstChild; - } - - /** - * Returns the last child of the given object. - * - * * `O(1)` - * - * @method lastChild - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - lastChild(object) { - return this._node(object).lastChild; - } - - /** - * Returns the previous sibling of the given object. - * - * * `O(1)` - * - * @method previousSibling - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - previousSibling(object) { - return this._node(object).previousSibling; - } - - /** - * Returns the next sibling of the given object. - * - * * `O(1)` - * - * @method nextSibling - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - nextSibling(object) { - return this._node(object).nextSibling; - } - - /** - * Return the parent of the given object. - * - * * `O(1)` - * - * @method parent - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - parent(object) { - return this._node(object).parent; - } - - /** - * Find the inclusive descendant that is last in tree order of the given object. - * - * * `O(n)` (worst case) where `n` is the depth of the subtree of `object` - * - * @method lastInclusiveDescendant - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} - */ - lastInclusiveDescendant(object) { - let lastChild; - let current = object; - - while ((lastChild = this._node(current).lastChild)) { - current = lastChild; - } - - return current; - } - - /** - * Find the preceding object (A) of the given object (B). - * An object A is preceding an object B if A and B are in the same tree - * and A comes before B in tree order. - * - * * `O(n)` (worst case) - * * `O(1)` (amortized when walking the entire tree) - * - * @method preceding - * @memberOf module:symbol-tree# - * @param {Object} object - * @param {Object} [options] - * @param {Object} [options.root] If set, `root` must be an inclusive ancestor - * of the return value (or else null is returned). This check _assumes_ - * that `root` is also an inclusive ancestor of the given `object` - * @return {?Object} - */ - preceding(object, options) { - const treeRoot = options && options.root; - - if (object === treeRoot) { - return null; - } - - const previousSibling = this._node(object).previousSibling; - - if (previousSibling) { - return this.lastInclusiveDescendant(previousSibling); - } - - // if there is no previous sibling return the parent (might be null) - return this._node(object).parent; - } - - /** - * Find the following object (A) of the given object (B). - * An object A is following an object B if A and B are in the same tree - * and A comes after B in tree order. - * - * * `O(n)` (worst case) where `n` is the amount of objects in the entire tree - * * `O(1)` (amortized when walking the entire tree) - * - * @method following - * @memberOf module:symbol-tree# - * @param {!Object} object - * @param {Object} [options] - * @param {Object} [options.root] If set, `root` must be an inclusive ancestor - * of the return value (or else null is returned). This check _assumes_ - * that `root` is also an inclusive ancestor of the given `object` - * @param {Boolean} [options.skipChildren=false] If set, ignore the children of `object` - * @return {?Object} - */ - following(object, options) { - const treeRoot = options && options.root; - const skipChildren = options && options.skipChildren; - - const firstChild = !skipChildren && this._node(object).firstChild; - - if (firstChild) { - return firstChild; - } - - let current = object; - - do { - if (current === treeRoot) { - return null; - } - - const nextSibling = this._node(current).nextSibling; - - if (nextSibling) { - return nextSibling; - } - - current = this._node(current).parent; - } while (current); - - return null; - } - - /** - * Append all children of the given object to an array. - * - * * `O(n)` where `n` is the amount of children of the given `parent` - * - * @method childrenToArray - * @memberOf module:symbol-tree# - * @param {Object} parent - * @param {Object} [options] - * @param {Object[]} [options.array=[]] - * @param {Function} [options.filter] Function to test each object before it is added to the array. - * Invoked with arguments (object). Should return `true` if an object - * is to be included. - * @param {*} [options.thisArg] Value to use as `this` when executing `filter`. - * @return {Object[]} - */ - childrenToArray(parent, options) { - const array = (options && options.array) || []; - const filter = (options && options.filter) || returnTrue; - const thisArg = (options && options.thisArg) || undefined; - - const parentNode = this._node(parent); - let object = parentNode.firstChild; - let index = 0; - - while (object) { - const node = this._node(object); - node.setCachedIndex(parentNode, index); - - if (filter.call(thisArg, object)) { - array.push(object); - } - - object = node.nextSibling; - ++index; - } - - return array; - } - - /** - * Append all inclusive ancestors of the given object to an array. - * - * * `O(n)` where `n` is the amount of ancestors of the given `object` - * - * @method ancestorsToArray - * @memberOf module:symbol-tree# - * @param {Object} object - * @param {Object} [options] - * @param {Object[]} [options.array=[]] - * @param {Function} [options.filter] Function to test each object before it is added to the array. - * Invoked with arguments (object). Should return `true` if an object - * is to be included. - * @param {*} [options.thisArg] Value to use as `this` when executing `filter`. - * @return {Object[]} - */ - ancestorsToArray(object, options) { - const array = (options && options.array) || []; - const filter = (options && options.filter) || returnTrue; - const thisArg = (options && options.thisArg) || undefined; - - let ancestor = object; - - while (ancestor) { - if (filter.call(thisArg, ancestor)) { - array.push(ancestor); - } - ancestor = this._node(ancestor).parent; - } - - return array; - } - - /** - * Append all descendants of the given object to an array (in tree order). - * - * * `O(n)` where `n` is the amount of objects in the sub-tree of the given `object` - * - * @method treeToArray - * @memberOf module:symbol-tree# - * @param {Object} root - * @param {Object} [options] - * @param {Object[]} [options.array=[]] - * @param {Function} [options.filter] Function to test each object before it is added to the array. - * Invoked with arguments (object). Should return `true` if an object - * is to be included. - * @param {*} [options.thisArg] Value to use as `this` when executing `filter`. - * @return {Object[]} - */ - treeToArray(root, options) { - const array = (options && options.array) || []; - const filter = (options && options.filter) || returnTrue; - const thisArg = (options && options.thisArg) || undefined; - - let object = root; - - while (object) { - if (filter.call(thisArg, object)) { - array.push(object); - } - object = this.following(object, {root: root}); - } - - return array; - } - - /** - * Iterate over all children of the given object - * - * * `O(1)` for a single iteration - * - * @method childrenIterator - * @memberOf module:symbol-tree# - * @param {Object} parent - * @param {Object} [options] - * @param {Boolean} [options.reverse=false] - * @return {Object} An iterable iterator (ES6) - */ - childrenIterator(parent, options) { - const reverse = options && options.reverse; - const parentNode = this._node(parent); - - return new TreeIterator( - this, - parent, - reverse ? parentNode.lastChild : parentNode.firstChild, - reverse ? TreeIterator.PREV : TreeIterator.NEXT - ); - } - - /** - * Iterate over all the previous siblings of the given object. (in reverse tree order) - * - * * `O(1)` for a single iteration - * - * @method previousSiblingsIterator - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} An iterable iterator (ES6) - */ - previousSiblingsIterator(object) { - return new TreeIterator( - this, - object, - this._node(object).previousSibling, - TreeIterator.PREV - ); - } - - /** - * Iterate over all the next siblings of the given object. (in tree order) - * - * * `O(1)` for a single iteration - * - * @method nextSiblingsIterator - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} An iterable iterator (ES6) - */ - nextSiblingsIterator(object) { - return new TreeIterator( - this, - object, - this._node(object).nextSibling, - TreeIterator.NEXT - ); - } - - /** - * Iterate over all inclusive ancestors of the given object - * - * * `O(1)` for a single iteration - * - * @method ancestorsIterator - * @memberOf module:symbol-tree# - * @param {Object} object - * @return {Object} An iterable iterator (ES6) - */ - ancestorsIterator(object) { - return new TreeIterator( - this, - object, - object, - TreeIterator.PARENT - ); - } - - /** - * Iterate over all descendants of the given object (in tree order). - * - * Where `n` is the amount of objects in the sub-tree of the given `root`: - * - * * `O(n)` (worst case for a single iteration) - * * `O(n)` (amortized, when completing the iterator) - * - * @method treeIterator - * @memberOf module:symbol-tree# - * @param {Object} root - * @param {Object} options - * @param {Boolean} [options.reverse=false] - * @return {Object} An iterable iterator (ES6) - */ - treeIterator(root, options) { - const reverse = options && options.reverse; - - return new TreeIterator( - this, - root, - reverse ? this.lastInclusiveDescendant(root) : root, - reverse ? TreeIterator.PRECEDING : TreeIterator.FOLLOWING - ); - } - - /** - * Find the index of the given object (the number of preceding siblings). - * - * * `O(n)` where `n` is the amount of preceding siblings - * * `O(1)` (amortized, if the tree is not modified) - * - * @method index - * @memberOf module:symbol-tree# - * @param {Object} child - * @return {Number} The number of preceding siblings, or -1 if the object has no parent - */ - index(child) { - const childNode = this._node(child); - const parentNode = this._node(childNode.parent); - - if (!parentNode) { - // In principal, you could also find out the number of preceding siblings - // for objects that do not have a parent. This method limits itself only to - // objects that have a parent because that lets us optimize more. - return -1; - } - - let currentIndex = childNode.getCachedIndex(parentNode); - - if (currentIndex >= 0) { - return currentIndex; - } - - currentIndex = 0; - let object = parentNode.firstChild; - - if (parentNode.childIndexCachedUpTo) { - const cachedUpToNode = this._node(parentNode.childIndexCachedUpTo); - object = cachedUpToNode.nextSibling; - currentIndex = cachedUpToNode.getCachedIndex(parentNode) + 1; - } - - while (object) { - const node = this._node(object); - node.setCachedIndex(parentNode, currentIndex); - - if (object === child) { - break; - } - - ++currentIndex; - object = node.nextSibling; - } - - parentNode.childIndexCachedUpTo = child; - - return currentIndex; - } - - /** - * Calculate the number of children. - * - * * `O(n)` where `n` is the amount of children - * * `O(1)` (amortized, if the tree is not modified) - * - * @method childrenCount - * @memberOf module:symbol-tree# - * @param {Object} parent - * @return {Number} - */ - childrenCount(parent) { - const parentNode = this._node(parent); - - if (!parentNode.lastChild) { - return 0; - } - - return this.index(parentNode.lastChild) + 1; - } - - /** - * Compare the position of an object relative to another object. A bit set is returned: - * - * <ul> - * <li>DISCONNECTED : 1</li> - * <li>PRECEDING : 2</li> - * <li>FOLLOWING : 4</li> - * <li>CONTAINS : 8</li> - * <li>CONTAINED_BY : 16</li> - * </ul> - * - * The semantics are the same as compareDocumentPosition in DOM, with the exception that - * DISCONNECTED never occurs with any other bit. - * - * where `n` and `m` are the amount of ancestors of `left` and `right`; - * where `o` is the amount of children of the lowest common ancestor of `left` and `right`: - * - * * `O(n + m + o)` (worst case) - * * `O(n + m)` (amortized, if the tree is not modified) - * - * @method compareTreePosition - * @memberOf module:symbol-tree# - * @param {Object} left - * @param {Object} right - * @return {Number} - */ - compareTreePosition(left, right) { - // In DOM terms: - // left = reference / context object - // right = other - - if (left === right) { - return 0; - } - - /* jshint -W016 */ - - const leftAncestors = []; { // inclusive - let leftAncestor = left; - - while (leftAncestor) { - if (leftAncestor === right) { - return TreePosition.CONTAINS | TreePosition.PRECEDING; - // other is ancestor of reference - } - - leftAncestors.push(leftAncestor); - leftAncestor = this.parent(leftAncestor); - } - } - - - const rightAncestors = []; { - let rightAncestor = right; - - while (rightAncestor) { - if (rightAncestor === left) { - return TreePosition.CONTAINED_BY | TreePosition.FOLLOWING; - } - - rightAncestors.push(rightAncestor); - rightAncestor = this.parent(rightAncestor); - } - } - - - const root = reverseArrayIndex(leftAncestors, 0); - - if (!root || root !== reverseArrayIndex(rightAncestors, 0)) { - // note: unlike DOM, preceding / following is not set here - return TreePosition.DISCONNECTED; - } - - // find the lowest common ancestor - let commonAncestorIndex = 0; - const ancestorsMinLength = Math.min(leftAncestors.length, rightAncestors.length); - - for (let i = 0; i < ancestorsMinLength; ++i) { - const leftAncestor = reverseArrayIndex(leftAncestors, i); - const rightAncestor = reverseArrayIndex(rightAncestors, i); - - if (leftAncestor !== rightAncestor) { - break; - } - - commonAncestorIndex = i; - } - - // indexes within the common ancestor - const leftIndex = this.index(reverseArrayIndex(leftAncestors, commonAncestorIndex + 1)); - const rightIndex = this.index(reverseArrayIndex(rightAncestors, commonAncestorIndex + 1)); - - return rightIndex < leftIndex - ? TreePosition.PRECEDING - : TreePosition.FOLLOWING; - } - - /** - * Remove the object from this tree. - * Has no effect if already removed. - * - * * `O(1)` - * - * @method remove - * @memberOf module:symbol-tree# - * @param {Object} removeObject - * @return {Object} removeObject - */ - remove(removeObject) { - const removeNode = this._node(removeObject); - const parentNode = this._node(removeNode.parent); - const prevNode = this._node(removeNode.previousSibling); - const nextNode = this._node(removeNode.nextSibling); - - if (parentNode) { - if (parentNode.firstChild === removeObject) { - parentNode.firstChild = removeNode.nextSibling; - } - - if (parentNode.lastChild === removeObject) { - parentNode.lastChild = removeNode.previousSibling; - } - } - - if (prevNode) { - prevNode.nextSibling = removeNode.nextSibling; - } - - if (nextNode) { - nextNode.previousSibling = removeNode.previousSibling; - } - - removeNode.parent = null; - removeNode.previousSibling = null; - removeNode.nextSibling = null; - removeNode.cachedIndex = -1; - removeNode.cachedIndexVersion = NaN; - - if (parentNode) { - parentNode.childrenChanged(); - } - - return removeObject; - } - - /** - * Insert the given object before the reference object. - * `newObject` is now the previous sibling of `referenceObject`. - * - * * `O(1)` - * - * @method insertBefore - * @memberOf module:symbol-tree# - * @param {Object} referenceObject - * @param {Object} newObject - * @throws {Error} If the newObject is already present in this SymbolTree - * @return {Object} newObject - */ - insertBefore(referenceObject, newObject) { - const referenceNode = this._node(referenceObject); - const prevNode = this._node(referenceNode.previousSibling); - const newNode = this._node(newObject); - const parentNode = this._node(referenceNode.parent); - - if (newNode.isAttached) { - throw Error('Given object is already present in this SymbolTree, remove it first'); - } - - newNode.parent = referenceNode.parent; - newNode.previousSibling = referenceNode.previousSibling; - newNode.nextSibling = referenceObject; - referenceNode.previousSibling = newObject; - - if (prevNode) { - prevNode.nextSibling = newObject; - } - - if (parentNode && parentNode.firstChild === referenceObject) { - parentNode.firstChild = newObject; - } - - if (parentNode) { - parentNode.childrenChanged(); - } - - return newObject; - } - - /** - * Insert the given object after the reference object. - * `newObject` is now the next sibling of `referenceObject`. - * - * * `O(1)` - * - * @method insertAfter - * @memberOf module:symbol-tree# - * @param {Object} referenceObject - * @param {Object} newObject - * @throws {Error} If the newObject is already present in this SymbolTree - * @return {Object} newObject - */ - insertAfter(referenceObject, newObject) { - const referenceNode = this._node(referenceObject); - const nextNode = this._node(referenceNode.nextSibling); - const newNode = this._node(newObject); - const parentNode = this._node(referenceNode.parent); - - if (newNode.isAttached) { - throw Error('Given object is already present in this SymbolTree, remove it first'); - } - - newNode.parent = referenceNode.parent; - newNode.previousSibling = referenceObject; - newNode.nextSibling = referenceNode.nextSibling; - referenceNode.nextSibling = newObject; - - if (nextNode) { - nextNode.previousSibling = newObject; - } - - if (parentNode && parentNode.lastChild === referenceObject) { - parentNode.lastChild = newObject; - } - - if (parentNode) { - parentNode.childrenChanged(); - } - - return newObject; - } - - /** - * Insert the given object as the first child of the given reference object. - * `newObject` is now the first child of `referenceObject`. - * - * * `O(1)` - * - * @method prependChild - * @memberOf module:symbol-tree# - * @param {Object} referenceObject - * @param {Object} newObject - * @throws {Error} If the newObject is already present in this SymbolTree - * @return {Object} newObject - */ - prependChild(referenceObject, newObject) { - const referenceNode = this._node(referenceObject); - const newNode = this._node(newObject); - - if (newNode.isAttached) { - throw Error('Given object is already present in this SymbolTree, remove it first'); - } - - if (referenceNode.hasChildren) { - this.insertBefore(referenceNode.firstChild, newObject); - } - else { - newNode.parent = referenceObject; - referenceNode.firstChild = newObject; - referenceNode.lastChild = newObject; - referenceNode.childrenChanged(); - } - - return newObject; - } - - /** - * Insert the given object as the last child of the given reference object. - * `newObject` is now the last child of `referenceObject`. - * - * * `O(1)` - * - * @method appendChild - * @memberOf module:symbol-tree# - * @param {Object} referenceObject - * @param {Object} newObject - * @throws {Error} If the newObject is already present in this SymbolTree - * @return {Object} newObject - */ - appendChild(referenceObject, newObject) { - const referenceNode = this._node(referenceObject); - const newNode = this._node(newObject); - - if (newNode.isAttached) { - throw Error('Given object is already present in this SymbolTree, remove it first'); - } - - if (referenceNode.hasChildren) { - this.insertAfter(referenceNode.lastChild, newObject); - } - else { - newNode.parent = referenceObject; - referenceNode.firstChild = newObject; - referenceNode.lastChild = newObject; - referenceNode.childrenChanged(); - } - - return newObject; - } -} - -module.exports = SymbolTree; -SymbolTree.TreePosition = TreePosition; diff --git a/alarm/node_modules/symbol-tree/lib/SymbolTreeNode.js b/alarm/node_modules/symbol-tree/lib/SymbolTreeNode.js deleted file mode 100644 index cae7f9a..0000000 --- a/alarm/node_modules/symbol-tree/lib/SymbolTreeNode.js +++ /dev/null @@ -1,54 +0,0 @@ -'use strict'; - -module.exports = class SymbolTreeNode { - constructor() { - this.parent = null; - this.previousSibling = null; - this.nextSibling = null; - - this.firstChild = null; - this.lastChild = null; - - /** This value is incremented anytime a children is added or removed */ - this.childrenVersion = 0; - /** The last child object which has a cached index */ - this.childIndexCachedUpTo = null; - - /** This value represents the cached node index, as long as - * cachedIndexVersion matches with the childrenVersion of the parent */ - this.cachedIndex = -1; - this.cachedIndexVersion = NaN; // NaN is never equal to anything - } - - get isAttached() { - return Boolean(this.parent || this.previousSibling || this.nextSibling); - } - - get hasChildren() { - return Boolean(this.firstChild); - } - - childrenChanged() { - /* jshint -W016 */ - // integer wrap around - this.childrenVersion = (this.childrenVersion + 1) & 0xFFFFFFFF; - this.childIndexCachedUpTo = null; - } - - getCachedIndex(parentNode) { - // (assumes parentNode is actually the parent) - if (this.cachedIndexVersion !== parentNode.childrenVersion) { - this.cachedIndexVersion = NaN; - // cachedIndex is no longer valid - return -1; - } - - return this.cachedIndex; // -1 if not cached - } - - setCachedIndex(parentNode, index) { - // (assumes parentNode is actually the parent) - this.cachedIndexVersion = parentNode.childrenVersion; - this.cachedIndex = index; - } -}; diff --git a/alarm/node_modules/symbol-tree/lib/TreeIterator.js b/alarm/node_modules/symbol-tree/lib/TreeIterator.js deleted file mode 100644 index f9d6217..0000000 --- a/alarm/node_modules/symbol-tree/lib/TreeIterator.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; - -const TREE = Symbol(); -const ROOT = Symbol(); -const NEXT = Symbol(); -const ITERATE_FUNC = Symbol(); - -class TreeIterator { - constructor(tree, root, firstResult, iterateFunction) { - this[TREE] = tree; - this[ROOT] = root; - this[NEXT] = firstResult; - this[ITERATE_FUNC] = iterateFunction; - } - - next() { - const tree = this[TREE]; - const iterateFunc = this[ITERATE_FUNC]; - const root = this[ROOT]; - - if (!this[NEXT]) { - return { - done: true, - value: root, - }; - } - - const value = this[NEXT]; - - if (iterateFunc === 1) { - this[NEXT] = tree._node(value).previousSibling; - } - else if (iterateFunc === 2) { - this[NEXT] = tree._node(value).nextSibling; - } - else if (iterateFunc === 3) { - this[NEXT] = tree._node(value).parent; - } - else if (iterateFunc === 4) { - this[NEXT] = tree.preceding(value, {root: root}); - } - else /* if (iterateFunc === 5)*/ { - this[NEXT] = tree.following(value, {root: root}); - } - - return { - done: false, - value: value, - }; - } -} - -Object.defineProperty(TreeIterator.prototype, Symbol.iterator, { - value: function() { - return this; - }, - writable: false, -}); - -TreeIterator.PREV = 1; -TreeIterator.NEXT = 2; -TreeIterator.PARENT = 3; -TreeIterator.PRECEDING = 4; -TreeIterator.FOLLOWING = 5; - -Object.freeze(TreeIterator); -Object.freeze(TreeIterator.prototype); - -module.exports = TreeIterator; diff --git a/alarm/node_modules/symbol-tree/lib/TreePosition.js b/alarm/node_modules/symbol-tree/lib/TreePosition.js deleted file mode 100644 index fd2b6ed..0000000 --- a/alarm/node_modules/symbol-tree/lib/TreePosition.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -/* eslint-disable sort-keys */ -module.exports = Object.freeze({ - // same as DOM DOCUMENT_POSITION_ - DISCONNECTED: 1, - PRECEDING: 2, - FOLLOWING: 4, - CONTAINS: 8, - CONTAINED_BY: 16, -}); |