Blame view

node_modules/renderkid/lib/renderKid/styles/rule/Selector.js 797 Bytes
909d7e57   liuqimichale   build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
  // Generated by CoffeeScript 1.9.3
  var CSSSelect, Selector;
  
  CSSSelect = require('css-select');
  
  module.exports = Selector = (function() {
    var self;
  
    self = Selector;
  
    function Selector(text1) {
      this.text = text1;
      this._fn = CSSSelect.compile(this.text);
      this.priority = self.calculatePriority(this.text);
    }
  
    Selector.prototype.matches = function(elem) {
      return CSSSelect.is(elem, this._fn);
    };
  
    Selector.calculatePriority = function(text) {
      var n, priotrity;
      priotrity = 0;
      if (n = text.match(/[\#]{1}/g)) {
        priotrity += 100 * n.length;
      }
      if (n = text.match(/[a-zA-Z]+/g)) {
        priotrity += 2 * n.length;
      }
      if (n = text.match(/\*/g)) {
        priotrity += 1 * n.length;
      }
      return priotrity;
    };
  
    return Selector;
  
  })();