| Index: node_modules/vulcanize/node_modules/whacko/node_modules/CSSselect/index.js
|
| diff --git a/node_modules/vulcanize/node_modules/whacko/node_modules/CSSselect/index.js b/node_modules/vulcanize/node_modules/whacko/node_modules/CSSselect/index.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..251f3764884b8403dab17bd3ef26924303d7a34a
|
| --- /dev/null
|
| +++ b/node_modules/vulcanize/node_modules/whacko/node_modules/CSSselect/index.js
|
| @@ -0,0 +1,54 @@
|
| +"use strict";
|
| +
|
| +module.exports = CSSselect;
|
| +
|
| +var Pseudos = require("./lib/pseudos.js"),
|
| + DomUtils = require("domutils"),
|
| + findOne = DomUtils.findOne,
|
| + findAll = DomUtils.findAll,
|
| + getChildren = DomUtils.getChildren,
|
| + removeSubsets = DomUtils.removeSubsets,
|
| + falseFunc = require("./lib/basefunctions.js").falseFunc,
|
| + compile = require("./lib/compile.js"),
|
| + compileUnsafe = compile.compileUnsafe;
|
| +
|
| +function getSelectorFunc(searchFunc){
|
| + return function select(query, elems, options){
|
| + if(typeof query !== "function") query = compileUnsafe(query, options);
|
| + if(!Array.isArray(elems)) elems = getChildren(elems);
|
| + else elems = removeSubsets(elems);
|
| + return searchFunc(query, elems);
|
| + };
|
| +}
|
| +
|
| +var selectAll = getSelectorFunc(function selectAll(query, elems){
|
| + return (query === falseFunc || !elems || elems.length === 0) ? [] : findAll(query, elems);
|
| +});
|
| +
|
| +var selectOne = getSelectorFunc(function selectOne(query, elems){
|
| + return (query === falseFunc || !elems || elems.length === 0) ? null : findOne(query, elems);
|
| +});
|
| +
|
| +function is(elem, query, options){
|
| + return (typeof query === "function" ? query : compile(query, options))(elem);
|
| +}
|
| +
|
| +/*
|
| + the exported interface
|
| +*/
|
| +function CSSselect(query, elems, options){
|
| + return selectAll(query, elems, options);
|
| +}
|
| +
|
| +CSSselect.compile = compile;
|
| +CSSselect.filters = Pseudos.filters;
|
| +CSSselect.pseudos = Pseudos.pseudos;
|
| +
|
| +CSSselect.selectAll = selectAll;
|
| +CSSselect.selectOne = selectOne;
|
| +
|
| +CSSselect.is = is;
|
| +
|
| +//legacy methods (might be removed)
|
| +CSSselect.parse = compile;
|
| +CSSselect.iterate = selectAll;
|
|
|