|
1 | 1 | var postcss = require('postcss') |
2 | 2 | var loaderUtils = require('loader-utils') |
3 | | -var selectorParser = require('postcss-selector-parser') |
4 | 3 | var loadPostcssConfig = require('./load-postcss-config') |
5 | 4 |
|
6 | | -var addId = postcss.plugin('add-id', function (opts) { |
7 | | - return function (root) { |
8 | | - root.each(function rewriteSelector (node) { |
9 | | - if (!node.selector) { |
10 | | - // handle media queries |
11 | | - if (node.type === 'atrule' && node.name === 'media') { |
12 | | - node.each(rewriteSelector) |
13 | | - } |
14 | | - return |
15 | | - } |
16 | | - node.selector = selectorParser(function (selectors) { |
17 | | - selectors.each(function (selector) { |
18 | | - var node = null |
19 | | - selector.each(function (n) { |
20 | | - if (n.type !== 'pseudo') node = n |
21 | | - }) |
22 | | - selector.insertAfter(node, selectorParser.attribute({ |
23 | | - attribute: opts.id |
24 | | - })) |
25 | | - }) |
26 | | - }).process(node.selector).result |
27 | | - }) |
28 | | - } |
29 | | -}) |
30 | | - |
31 | | -var trim = postcss.plugin('trim', function (opts) { |
32 | | - return function (css) { |
33 | | - css.walk(function (node) { |
34 | | - if (node.type === 'rule' || node.type === 'atrule') { |
35 | | - node.raws.before = node.raws.after = '\n' |
36 | | - } |
37 | | - }) |
38 | | - } |
39 | | -}) |
| 5 | +var trim = require('./plugins/trim') |
| 6 | +var scopeId = require('./plugins/scope-id') |
40 | 7 |
|
41 | 8 | module.exports = function (css, map) { |
42 | 9 | this.cacheable() |
@@ -69,7 +36,7 @@ module.exports = function (css, map) { |
69 | 36 |
|
70 | 37 | // add plugin for vue-loader scoped css rewrite |
71 | 38 | if (query.scoped) { |
72 | | - plugins.push(addId({ id: query.id })) |
| 39 | + plugins.push(scopeId({ id: query.id })) |
73 | 40 | } |
74 | 41 |
|
75 | 42 | // source map |
|
0 commit comments