UNPKG

2.09 kBJavaScriptView Raw
1'use strict';
2
3exports.__esModule = true;
4
5var _postcss = require('postcss');
6
7var _postcss2 = _interopRequireDefault(_postcss);
8
9var _encode = require('./lib/encode');
10
11var _encode2 = _interopRequireDefault(_encode);
12
13var _counter = require('./lib/counter');
14
15var _counter2 = _interopRequireDefault(_counter);
16
17var _counterStyle = require('./lib/counter-style');
18
19var _counterStyle2 = _interopRequireDefault(_counterStyle);
20
21var _keyframes = require('./lib/keyframes');
22
23var _keyframes2 = _interopRequireDefault(_keyframes);
24
25var _gridTemplate = require('./lib/grid-template');
26
27var _gridTemplate2 = _interopRequireDefault(_gridTemplate);
28
29function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
30
31exports.default = _postcss2.default.plugin('postcss-reduce-idents', function () {
32 var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
33 _ref$counter = _ref.counter,
34 counter = _ref$counter === undefined ? true : _ref$counter,
35 _ref$counterStyle = _ref.counterStyle,
36 counterStyle = _ref$counterStyle === undefined ? true : _ref$counterStyle,
37 _ref$keyframes = _ref.keyframes,
38 keyframes = _ref$keyframes === undefined ? true : _ref$keyframes,
39 _ref$gridTemplate = _ref.gridTemplate,
40 gridTemplate = _ref$gridTemplate === undefined ? true : _ref$gridTemplate,
41 _ref$encoder = _ref.encoder,
42 encoder = _ref$encoder === undefined ? _encode2.default : _ref$encoder;
43
44 var reducers = [];
45 counter && reducers.push(_counter2.default);
46 counterStyle && reducers.push(_counterStyle2.default);
47 keyframes && reducers.push(_keyframes2.default);
48 gridTemplate && reducers.push(_gridTemplate2.default);
49
50 return function (css) {
51 css.walk(function (node) {
52 reducers.forEach(function (reducer) {
53 return reducer.collect(node, encoder);
54 });
55 });
56
57 reducers.forEach(function (reducer) {
58 return reducer.transform();
59 });
60 };
61});
62module.exports = exports['default'];
\No newline at end of file