diff options
Diffstat (limited to 'node_modules/clean-css/lib/optimizer/level-2/extract-properties.js')
| -rw-r--r-- | node_modules/clean-css/lib/optimizer/level-2/extract-properties.js | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/node_modules/clean-css/lib/optimizer/level-2/extract-properties.js b/node_modules/clean-css/lib/optimizer/level-2/extract-properties.js deleted file mode 100644 index 8b9b1c2e..00000000 --- a/node_modules/clean-css/lib/optimizer/level-2/extract-properties.js +++ /dev/null @@ -1,73 +0,0 @@ -// This extractor is used in level 2 optimizations -// IMPORTANT: Mind Token class and this code is not related! -// Properties will be tokenized in one step, see #429 - -var Token = require('../../tokenizer/token'); -var serializeRules = require('../../writer/one-time').rules; -var serializeValue = require('../../writer/one-time').value; - -function extractProperties(token) { - var properties = []; - var inSpecificSelector; - var property; - var name; - var value; - var i, l; - - if (token[0] == Token.RULE) { - inSpecificSelector = !/[\.\+>~]/.test(serializeRules(token[1])); - - for (i = 0, l = token[2].length; i < l; i++) { - property = token[2][i]; - - if (property[0] != Token.PROPERTY) - continue; - - name = property[1][1]; - if (name.length === 0) - continue; - - if (name.indexOf('--') === 0) - continue; - - value = serializeValue(property, i); - - properties.push([ - name, - value, - findNameRoot(name), - token[2][i], - name + ':' + value, - token[1], - inSpecificSelector - ]); - } - } else if (token[0] == Token.NESTED_BLOCK) { - for (i = 0, l = token[2].length; i < l; i++) { - properties = properties.concat(extractProperties(token[2][i])); - } - } - - return properties; -} - -function findNameRoot(name) { - if (name == 'list-style') - return name; - if (name.indexOf('-radius') > 0) - return 'border-radius'; - if (name == 'border-collapse' || name == 'border-spacing' || name == 'border-image') - return name; - if (name.indexOf('border-') === 0 && /^border\-\w+\-\w+$/.test(name)) - return name.match(/border\-\w+/)[0]; - if (name.indexOf('border-') === 0 && /^border\-\w+$/.test(name)) - return 'border'; - if (name.indexOf('text-') === 0) - return name; - if (name == '-chrome-') - return name; - - return name.replace(/^\-\w+\-/, '').match(/([a-zA-Z]+)/)[0].toLowerCase(); -} - -module.exports = extractProperties; |
