Sha256: 67a0759d02bda5fdab3978f29741db26006842fb76a391d09cc1e6b7f119df3f
Contents?: true
Size: 1.13 KB
Versions: 3
Compression:
Stored size: 1.13 KB
Contents
"use strict"; const idlUtils = require("../generated/utils"); const nwmatcher = require("nwmatcher/src/nwmatcher-noqsa"); const domSymbolTree = require("./internal-constants").domSymbolTree; // Internal method so you don't have to go through the public API exports.querySelector = function (parentNode, selectors) { if (!domSymbolTree.hasChildren(parentNode) || (parentNode === parentNode._ownerDocument && !parentNode.documentElement)) { // This allows us to avoid the explosion that occurs if you try to add nwmatcher to a document that is not yet // initialized. return null; } return addNwmatcher(parentNode).first(selectors, idlUtils.wrapperForImpl(parentNode)); }; // nwmatcher gets `document.documentElement` at creation-time, so we have to initialize lazily, since in the initial // stages of Document initialization, there is no documentElement present yet. function addNwmatcher(parentNode) { const document = parentNode._ownerDocument; if (!document._nwmatcher) { document._nwmatcher = nwmatcher({ document }); document._nwmatcher.configure({ UNIQUE_ID: false }); } return document._nwmatcher; }
Version data entries
3 entries across 3 versions & 3 rubygems