From 26105034da4fcce7ac883c899d781f016559310d Mon Sep 17 00:00:00 2001 From: ruki Date: Thu, 8 Nov 2018 00:38:48 +0800 Subject: switch to vuepress --- .../lib/renderKid/styles/rule/Selector.js | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 node_modules/renderkid/lib/renderKid/styles/rule/Selector.js (limited to 'node_modules/renderkid/lib/renderKid/styles/rule/Selector.js') diff --git a/node_modules/renderkid/lib/renderKid/styles/rule/Selector.js b/node_modules/renderkid/lib/renderKid/styles/rule/Selector.js new file mode 100644 index 00000000..7b23903d --- /dev/null +++ b/node_modules/renderkid/lib/renderKid/styles/rule/Selector.js @@ -0,0 +1,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; + +})(); -- cgit v1.2.3