MCPcopy
hub / github.com/marcj/css-element-queries / readRules

Function readRules

src/ElementQueries.js:362–392  ·  view source on GitHub ↗

* @param {CssRule[]|String} rules

(rules)

Source from the content-addressed store, hash-verified

360 * @param {CssRule[]|String} rules
361 */
362 function readRules(rules) {
363 var selector = '';
364
365 if (!rules) {
366 return;
367 }
368
369 if ('string' === typeof rules) {
370 rules = rules.toLowerCase();
371 if (-1 !== rules.indexOf('min-width') || -1 !== rules.indexOf('max-width')) {
372 extractQuery(rules);
373 }
374 } else {
375 for (var i = 0, j = rules.length; i < j; i++) {
376 if (1 === rules[i].type) {
377 selector = rules[i].selectorText || rules[i].cssText;
378 if (-1 !== selector.indexOf('min-height') || -1 !== selector.indexOf('max-height')) {
379 extractQuery(selector);
380 } else if (-1 !== selector.indexOf('min-width') || -1 !== selector.indexOf('max-width')) {
381 extractQuery(selector);
382 }
383 } else if (4 === rules[i].type) {
384 readRules(rules[i].cssRules || rules[i].rules);
385 } else if (3 === rules[i].type) {
386 if(rules[i].styleSheet.hasOwnProperty("cssRules")) {
387 readRules(rules[i].styleSheet.cssRules);
388 }
389 }
390 }
391 }
392 }
393
394 var defaultCssInjected = false;
395

Callers 1

ElementQueriesFunction · 0.85

Calls 1

extractQueryFunction · 0.85

Tested by

no test coverage detected