UNPKG

@cycle/dom

Version:

The standard DOM Driver for Cycle.js, based on Snabbdom

29 lines 1.12 kB
import { ScopeChecker } from './ScopeChecker'; import { getSelectors } from './utils'; function toElArray(input) { return Array.prototype.slice.call(input); } var ElementFinder = /** @class */ (function () { function ElementFinder(namespace, isolateModule) { this.namespace = namespace; this.isolateModule = isolateModule; } ElementFinder.prototype.call = function () { var namespace = this.namespace; var selector = getSelectors(namespace); var scopeChecker = new ScopeChecker(namespace, this.isolateModule); var topNode = this.isolateModule.getElement(namespace.filter(function (n) { return n.type !== 'selector'; })); if (topNode === undefined) { return []; } if (selector === '') { return [topNode]; } return toElArray(topNode.querySelectorAll(selector)) .filter(scopeChecker.isDirectlyInScope, scopeChecker) .concat(topNode.matches(selector) ? [topNode] : []); }; return ElementFinder; }()); export { ElementFinder }; //# sourceMappingURL=ElementFinder.js.map