Index: tools/vulcanize/node_modules/vulcanize/node_modules/cheerio/node_modules/cheerio-select/lib/select.js |
diff --git a/tools/vulcanize/node_modules/vulcanize/node_modules/cheerio/node_modules/cheerio-select/lib/select.js b/tools/vulcanize/node_modules/vulcanize/node_modules/cheerio/node_modules/cheerio-select/lib/select.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6bcb81c022916597cff89bfab6ef26d2a936dd7e |
--- /dev/null |
+++ b/tools/vulcanize/node_modules/vulcanize/node_modules/cheerio/node_modules/cheerio-select/lib/select.js |
@@ -0,0 +1,37 @@ |
+/* |
+ * Module dependencies |
+ */ |
+var CSSselect = require('CSSselect'), |
+ isArray = Array.isArray; |
+ |
+/* |
+ * Select function |
+ */ |
+exports = module.exports = function(query, dom) { |
+ dom = normalize(dom); |
+ |
+ return CSSselect.iterate(query, dom); |
+}; |
+ |
+/* |
+ * Normalize the dom |
+ */ |
+var normalize = exports.normalize = function(dom) { |
+ dom = dom.cheerio ? dom.toArray() : dom; |
+ dom = isArray(dom) ? dom : [dom]; |
+ |
+ var len = dom.length, |
+ out = [], |
+ elem; |
+ |
+ for(var i = 0; i < len; i++) { |
+ elem = dom[i]; |
+ if(elem.type === 'root') { |
+ out = out.concat(elem.children || []); |
+ } else { |
+ out.push(elem); |
+ } |
+ } |
+ |
+ return out; |
+}; |