postcss 6.0.22 → 7.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of postcss might be problematic. Click here for more details.
- package/CHANGELOG.md +18 -0
- package/README-cn.md +54 -51
- package/README.md +60 -52
- package/docs/architecture.md +2 -2
- package/docs/guidelines/plugin.md +28 -28
- package/docs/guidelines/runner.md +21 -21
- package/docs/source-maps.md +11 -11
- package/docs/syntax.md +23 -23
- package/gulpfile.js +78 -74
- package/lib/at-rule.js +14 -14
- package/lib/comment.js +4 -4
- package/lib/container.js +773 -801
- package/lib/css-syntax-error.js +197 -180
- package/lib/declaration.js +15 -14
- package/lib/input.js +149 -143
- package/lib/lazy-result.js +364 -337
- package/lib/list.js +69 -70
- package/lib/map-generator.js +270 -275
- package/lib/node.js +558 -570
- package/lib/parse.js +20 -21
- package/lib/parser.js +476 -479
- package/lib/postcss.d.ts +1246 -1246
- package/lib/postcss.js +61 -57
- package/lib/previous-map.js +117 -122
- package/lib/processor.js +96 -75
- package/lib/result.js +70 -64
- package/lib/root.js +91 -90
- package/lib/rule.js +12 -12
- package/lib/stringifier.js +295 -295
- package/lib/stringify.js +5 -4
- package/lib/terminal-highlight.js +50 -50
- package/lib/tokenize.js +259 -259
- package/lib/vendor.js +27 -27
- package/lib/warn-once.js +6 -4
- package/lib/warning.js +30 -26
- package/package.json +4 -3
- package/CONTRIBUTING.md +0 -78
package/lib/vendor.js
CHANGED
@@ -5,48 +5,48 @@ exports.__esModule = true;
|
|
5
5
|
* Contains helpers for working with vendor prefixes.
|
6
6
|
*
|
7
7
|
* @example
|
8
|
-
* const vendor = postcss.vendor
|
8
|
+
* const vendor = postcss.vendor
|
9
9
|
*
|
10
10
|
* @namespace vendor
|
11
11
|
*/
|
12
12
|
var vendor = {
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
14
|
+
/**
|
15
|
+
* Returns the vendor prefix extracted from an input string.
|
16
|
+
*
|
17
|
+
* @param {string} prop String with or without vendor prefix.
|
18
|
+
*
|
19
|
+
* @return {string} vendor prefix or empty string
|
20
|
+
*
|
21
|
+
* @example
|
22
|
+
* postcss.vendor.prefix('-moz-tab-size') //=> '-moz-'
|
23
|
+
* postcss.vendor.prefix('tab-size') //=> ''
|
24
|
+
*/
|
25
|
+
prefix: function prefix(prop) {
|
26
|
+
var match = prop.match(/^(-\w+-)/);
|
27
|
+
if (match) {
|
28
|
+
return match[0];
|
29
|
+
} else {
|
30
|
+
return '';
|
31
|
+
}
|
32
|
+
},
|
33
33
|
|
34
34
|
|
35
|
-
|
35
|
+
/**
|
36
36
|
* Returns the input string stripped of its vendor prefix.
|
37
37
|
*
|
38
|
-
* @param {string} prop
|
38
|
+
* @param {string} prop String with or without vendor prefix.
|
39
39
|
*
|
40
|
-
* @return {string}
|
40
|
+
* @return {string} String name without vendor prefixes.
|
41
41
|
*
|
42
42
|
* @example
|
43
43
|
* postcss.vendor.unprefixed('-moz-tab-size') //=> 'tab-size'
|
44
44
|
*/
|
45
|
-
|
46
|
-
|
47
|
-
|
45
|
+
unprefixed: function unprefixed(prop) {
|
46
|
+
return prop.replace(/^-\w+-/, '');
|
47
|
+
}
|
48
48
|
};
|
49
49
|
|
50
50
|
exports.default = vendor;
|
51
51
|
module.exports = exports['default'];
|
52
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvci5lczYiXSwibmFtZXMiOlsidmVuZG9yIiwicHJlZml4IiwicHJvcCIsIm1hdGNoIiwidW5wcmVmaXhlZCIsInJlcGxhY2UiXSwibWFwcGluZ3MiOiI7OztBQUFBOzs7Ozs7OztBQVFBLElBQUlBLFNBQVM7O0FBRVg7Ozs7Ozs7Ozs7O0FBV0FDLFFBYlcsa0JBYUhDLElBYkcsRUFhRztBQUNaLFFBQUlDLFFBQVFELEtBQUtDLEtBQUwsQ0FBVyxVQUFYLENBQVo7QUFDQSxRQUFJQSxLQUFKLEVBQVc7QUFDVCxhQUFPQSxNQUFNLENBQU4sQ0FBUDtBQUNELEtBRkQsTUFFTztBQUNMLGFBQU8sRUFBUDtBQUNEO0FBQ0YsR0FwQlU7OztBQXNCWDs7Ozs7Ozs7OztBQVVBQyxZQWhDVyxzQkFnQ0NGLElBaENELEVBZ0NPO0FBQ2hCLFdBQU9BLEtBQUtHLE9BQUwsQ0FBYSxRQUFiLEVBQXVCLEVBQXZCLENBQVA7QUFDRDtBQWxDVSxDQUFiOztrQkFzQ2VMLE0iLCJmaWxlIjoidmVuZG9yLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb250YWlucyBoZWxwZXJzIGZvciB3b3JraW5nIHdpdGggdmVuZG9yIHByZWZpeGVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCB2ZW5kb3IgPSBwb3N0Y3NzLnZlbmRvclxuICpcbiAqIEBuYW1lc3BhY2UgdmVuZG9yXG4gKi9cbmxldCB2ZW5kb3IgPSB7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZlbmRvciBwcmVmaXggZXh0cmFjdGVkIGZyb20gYW4gaW5wdXQgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcHJvcCBTdHJpbmcgd2l0aCBvciB3aXRob3V0IHZlbmRvciBwcmVmaXguXG4gICAqXG4gICAqIEByZXR1cm4ge3N0cmluZ30gdmVuZG9yIHByZWZpeCBvciBlbXB0eSBzdHJpbmdcbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogcG9zdGNzcy52ZW5kb3IucHJlZml4KCctbW96LXRhYi1zaXplJykgLy89PiAnLW1vei0nXG4gICAqIHBvc3Rjc3MudmVuZG9yLnByZWZpeCgndGFiLXNpemUnKSAgICAgIC8vPT4gJydcbiAgICovXG4gIHByZWZpeCAocHJvcCkge1xuICAgIGxldCBtYXRjaCA9IHByb3AubWF0Y2goL14oLVxcdystKS8pXG4gICAgaWYgKG1hdGNoKSB7XG4gICAgICByZXR1cm4gbWF0Y2hbMF1cbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnXG4gICAgfVxuICB9LFxuXG4gIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGlucHV0IHN0cmluZyBzdHJpcHBlZCBvZiBpdHMgdmVuZG9yIHByZWZpeC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBwcm9wIFN0cmluZyB3aXRoIG9yIHdpdGhvdXQgdmVuZG9yIHByZWZpeC5cbiAgICAgKlxuICAgICAqIEByZXR1cm4ge3N0cmluZ30gU3RyaW5nIG5hbWUgd2l0aG91dCB2ZW5kb3IgcHJlZml4ZXMuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIHBvc3Rjc3MudmVuZG9yLnVucHJlZml4ZWQoJy1tb3otdGFiLXNpemUnKSAvLz0+ICd0YWItc2l6ZSdcbiAgICAgKi9cbiAgdW5wcmVmaXhlZCAocHJvcCkge1xuICAgIHJldHVybiBwcm9wLnJlcGxhY2UoL14tXFx3Ky0vLCAnJylcbiAgfVxuXG59XG5cbmV4cG9ydCBkZWZhdWx0IHZlbmRvclxuIl19
|
package/lib/warn-once.js
CHANGED
@@ -5,10 +5,12 @@ exports.default = warnOnce;
|
|
5
5
|
var printed = {};
|
6
6
|
|
7
7
|
function warnOnce(message) {
|
8
|
-
|
9
|
-
|
8
|
+
if (printed[message]) return;
|
9
|
+
printed[message] = true;
|
10
10
|
|
11
|
-
|
11
|
+
if (typeof console !== 'undefined' && console.warn) {
|
12
|
+
console.warn(message);
|
13
|
+
}
|
12
14
|
}
|
13
15
|
module.exports = exports['default'];
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
16
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndhcm4tb25jZS5lczYiXSwibmFtZXMiOlsid2Fybk9uY2UiLCJwcmludGVkIiwibWVzc2FnZSIsImNvbnNvbGUiLCJ3YXJuIl0sIm1hcHBpbmdzIjoiOzs7a0JBRXdCQSxRO0FBRnhCLElBQUlDLFVBQVUsRUFBZDs7QUFFZSxTQUFTRCxRQUFULENBQW1CRSxPQUFuQixFQUE0QjtBQUN6QyxNQUFJRCxRQUFRQyxPQUFSLENBQUosRUFBc0I7QUFDdEJELFVBQVFDLE9BQVIsSUFBbUIsSUFBbkI7O0FBRUEsTUFBSSxPQUFPQyxPQUFQLEtBQW1CLFdBQW5CLElBQWtDQSxRQUFRQyxJQUE5QyxFQUFvRDtBQUNsREQsWUFBUUMsSUFBUixDQUFhRixPQUFiO0FBQ0Q7QUFDRiIsImZpbGUiOiJ3YXJuLW9uY2UuanMiLCJzb3VyY2VzQ29udGVudCI6WyJsZXQgcHJpbnRlZCA9IHsgfVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3YXJuT25jZSAobWVzc2FnZSkge1xuICBpZiAocHJpbnRlZFttZXNzYWdlXSkgcmV0dXJuXG4gIHByaW50ZWRbbWVzc2FnZV0gPSB0cnVlXG5cbiAgaWYgKHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJyAmJiBjb25zb2xlLndhcm4pIHtcbiAgICBjb25zb2xlLndhcm4obWVzc2FnZSlcbiAgfVxufVxuIl19
|
package/lib/warning.js
CHANGED
@@ -8,22 +8,21 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
8
8
|
* Represents a plugin’s warning. It can be created using {@link Node#warn}.
|
9
9
|
*
|
10
10
|
* @example
|
11
|
-
* if (
|
12
|
-
*
|
11
|
+
* if (decl.important) {
|
12
|
+
* decl.warn(result, 'Avoid !important', { word: '!important' })
|
13
13
|
* }
|
14
14
|
*/
|
15
15
|
var Warning = function () {
|
16
|
-
|
17
16
|
/**
|
18
|
-
* @param {string} text
|
19
|
-
* @param {Object} [opts]
|
20
|
-
* @param {Node} opts.node
|
21
|
-
* @param {string} opts.word
|
22
|
-
* @param {number} opts.index
|
23
|
-
*
|
24
|
-
* @param {string} opts.plugin
|
25
|
-
*
|
26
|
-
*
|
17
|
+
* @param {string} text Warning message.
|
18
|
+
* @param {Object} [opts] Warning options.
|
19
|
+
* @param {Node} opts.node CSS node that caused the warning.
|
20
|
+
* @param {string} opts.word Word in CSS source that caused the warning.
|
21
|
+
* @param {number} opts.index Index in CSS node string that caused
|
22
|
+
* the warning.
|
23
|
+
* @param {string} opts.plugin Name of the plugin that created
|
24
|
+
* this warning. {@link Result#warn} fills
|
25
|
+
* this property automatically.
|
27
26
|
*/
|
28
27
|
function Warning(text) {
|
29
28
|
var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
@@ -31,16 +30,19 @@ var Warning = function () {
|
|
31
30
|
_classCallCheck(this, Warning);
|
32
31
|
|
33
32
|
/**
|
34
|
-
*
|
35
|
-
*
|
36
|
-
*
|
33
|
+
* Type to filter warnings from {@link Result#messages}.
|
34
|
+
* Always equal to `"warning"`.
|
35
|
+
*
|
36
|
+
* @type {string}
|
37
37
|
*
|
38
38
|
* @example
|
39
39
|
* const nonWarning = result.messages.filter(i => i.type !== 'warning')
|
40
40
|
*/
|
41
41
|
this.type = 'warning';
|
42
42
|
/**
|
43
|
-
*
|
43
|
+
* The warning message.
|
44
|
+
*
|
45
|
+
* @type {string}
|
44
46
|
*
|
45
47
|
* @example
|
46
48
|
* warning.text //=> 'Try to avoid !important'
|
@@ -50,16 +52,17 @@ var Warning = function () {
|
|
50
52
|
if (opts.node && opts.node.source) {
|
51
53
|
var pos = opts.node.positionBy(opts);
|
52
54
|
/**
|
53
|
-
*
|
54
|
-
*
|
55
|
+
* Line in the input file with this warning’s source.
|
56
|
+
* @type {number}
|
55
57
|
*
|
56
58
|
* @example
|
57
59
|
* warning.line //=> 5
|
58
60
|
*/
|
59
61
|
this.line = pos.line;
|
60
62
|
/**
|
61
|
-
*
|
62
|
-
*
|
63
|
+
* Column in the input file with this warning’s source.
|
64
|
+
*
|
65
|
+
* @type {number}
|
63
66
|
*
|
64
67
|
* @example
|
65
68
|
* warning.column //=> 6
|
@@ -78,7 +81,7 @@ var Warning = function () {
|
|
78
81
|
* @example
|
79
82
|
* warning.toString() //=> 'postcss-lint:a.css:10:14: Avoid !important'
|
80
83
|
*
|
81
|
-
* @return {string}
|
84
|
+
* @return {string} Warning position and message.
|
82
85
|
*/
|
83
86
|
|
84
87
|
|
@@ -98,9 +101,9 @@ var Warning = function () {
|
|
98
101
|
|
99
102
|
/**
|
100
103
|
* @memberof Warning#
|
101
|
-
* @member {string} plugin
|
102
|
-
*
|
103
|
-
*
|
104
|
+
* @member {string} plugin The name of the plugin that created
|
105
|
+
* it will fill this property automatically.
|
106
|
+
* this warning. When you call {@link Node#warn}
|
104
107
|
*
|
105
108
|
* @example
|
106
109
|
* warning.plugin //=> 'postcss-important'
|
@@ -108,15 +111,16 @@ var Warning = function () {
|
|
108
111
|
|
109
112
|
/**
|
110
113
|
* @memberof Warning#
|
111
|
-
* @member {Node} node
|
114
|
+
* @member {Node} node Contains the CSS node that caused the warning.
|
112
115
|
*
|
113
116
|
* @example
|
114
117
|
* warning.node.toString() //=> 'color: white !important'
|
115
118
|
*/
|
116
119
|
|
120
|
+
|
117
121
|
return Warning;
|
118
122
|
}();
|
119
123
|
|
120
124
|
exports.default = Warning;
|
121
125
|
module.exports = exports['default'];
|
122
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
126
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndhcm5pbmcuZXM2Il0sIm5hbWVzIjpbIldhcm5pbmciLCJ0ZXh0Iiwib3B0cyIsInR5cGUiLCJub2RlIiwic291cmNlIiwicG9zIiwicG9zaXRpb25CeSIsImxpbmUiLCJjb2x1bW4iLCJvcHQiLCJ0b1N0cmluZyIsImVycm9yIiwicGx1Z2luIiwiaW5kZXgiLCJ3b3JkIiwibWVzc2FnZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7Ozs7O0lBUU1BLE87QUFDSjs7Ozs7Ozs7Ozs7QUFXQSxtQkFBYUMsSUFBYixFQUErQjtBQUFBLFFBQVpDLElBQVksdUVBQUwsRUFBSzs7QUFBQTs7QUFDN0I7Ozs7Ozs7OztBQVNBLFNBQUtDLElBQUwsR0FBWSxTQUFaO0FBQ0E7Ozs7Ozs7O0FBUUEsU0FBS0YsSUFBTCxHQUFZQSxJQUFaOztBQUVBLFFBQUlDLEtBQUtFLElBQUwsSUFBYUYsS0FBS0UsSUFBTCxDQUFVQyxNQUEzQixFQUFtQztBQUNqQyxVQUFJQyxNQUFNSixLQUFLRSxJQUFMLENBQVVHLFVBQVYsQ0FBcUJMLElBQXJCLENBQVY7QUFDQTs7Ozs7OztBQU9BLFdBQUtNLElBQUwsR0FBWUYsSUFBSUUsSUFBaEI7QUFDQTs7Ozs7Ozs7QUFRQSxXQUFLQyxNQUFMLEdBQWNILElBQUlHLE1BQWxCO0FBQ0Q7O0FBRUQsU0FBSyxJQUFJQyxHQUFULElBQWdCUixJQUFoQjtBQUFzQixXQUFLUSxHQUFMLElBQVlSLEtBQUtRLEdBQUwsQ0FBWjtBQUF0QjtBQUNEOztBQUVEOzs7Ozs7Ozs7O29CQVFBQyxRLHVCQUFZO0FBQ1YsUUFBSSxLQUFLUCxJQUFULEVBQWU7QUFDYixhQUFPLEtBQUtBLElBQUwsQ0FBVVEsS0FBVixDQUFnQixLQUFLWCxJQUFyQixFQUEyQjtBQUNoQ1ksZ0JBQVEsS0FBS0EsTUFEbUI7QUFFaENDLGVBQU8sS0FBS0EsS0FGb0I7QUFHaENDLGNBQU0sS0FBS0E7QUFIcUIsT0FBM0IsRUFJSkMsT0FKSDtBQUtELEtBTkQsTUFNTyxJQUFJLEtBQUtILE1BQVQsRUFBaUI7QUFDdEIsYUFBTyxLQUFLQSxNQUFMLEdBQWMsSUFBZCxHQUFxQixLQUFLWixJQUFqQztBQUNELEtBRk0sTUFFQTtBQUNMLGFBQU8sS0FBS0EsSUFBWjtBQUNEO0FBQ0YsRzs7QUFFRDs7Ozs7Ozs7OztBQVVBOzs7Ozs7Ozs7Ozs7a0JBU2FELE8iLCJmaWxlIjoid2FybmluZy5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVwcmVzZW50cyBhIHBsdWdpbuKAmXMgd2FybmluZy4gSXQgY2FuIGJlIGNyZWF0ZWQgdXNpbmcge0BsaW5rIE5vZGUjd2Fybn0uXG4gKlxuICogQGV4YW1wbGVcbiAqIGlmIChkZWNsLmltcG9ydGFudCkge1xuICogICBkZWNsLndhcm4ocmVzdWx0LCAnQXZvaWQgIWltcG9ydGFudCcsIHsgd29yZDogJyFpbXBvcnRhbnQnIH0pXG4gKiB9XG4gKi9cbmNsYXNzIFdhcm5pbmcge1xuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHRleHQgICAgICAgIFdhcm5pbmcgbWVzc2FnZS5cbiAgICogQHBhcmFtIHtPYmplY3R9IFtvcHRzXSAgICAgIFdhcm5pbmcgb3B0aW9ucy5cbiAgICogQHBhcmFtIHtOb2RlfSAgIG9wdHMubm9kZSAgIENTUyBub2RlIHRoYXQgY2F1c2VkIHRoZSB3YXJuaW5nLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0cy53b3JkICAgV29yZCBpbiBDU1Mgc291cmNlIHRoYXQgY2F1c2VkIHRoZSB3YXJuaW5nLlxuICAgKiBAcGFyYW0ge251bWJlcn0gb3B0cy5pbmRleCAgSW5kZXggaW4gQ1NTIG5vZGUgc3RyaW5nIHRoYXQgY2F1c2VkXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgd2FybmluZy5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdHMucGx1Z2luIE5hbWUgb2YgdGhlIHBsdWdpbiB0aGF0IGNyZWF0ZWRcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMgd2FybmluZy4ge0BsaW5rIFJlc3VsdCN3YXJufSBmaWxsc1xuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcyBwcm9wZXJ0eSBhdXRvbWF0aWNhbGx5LlxuICAgKi9cbiAgY29uc3RydWN0b3IgKHRleHQsIG9wdHMgPSB7IH0pIHtcbiAgICAvKipcbiAgICAgKiBUeXBlIHRvIGZpbHRlciB3YXJuaW5ncyBmcm9tIHtAbGluayBSZXN1bHQjbWVzc2FnZXN9LlxuICAgICAqIEFsd2F5cyBlcXVhbCB0byBgXCJ3YXJuaW5nXCJgLlxuICAgICAqXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogY29uc3Qgbm9uV2FybmluZyA9IHJlc3VsdC5tZXNzYWdlcy5maWx0ZXIoaSA9PiBpLnR5cGUgIT09ICd3YXJuaW5nJylcbiAgICAgKi9cbiAgICB0aGlzLnR5cGUgPSAnd2FybmluZydcbiAgICAvKipcbiAgICAgKiBUaGUgd2FybmluZyBtZXNzYWdlLlxuICAgICAqXG4gICAgICogQHR5cGUge3N0cmluZ31cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogd2FybmluZy50ZXh0IC8vPT4gJ1RyeSB0byBhdm9pZCAhaW1wb3J0YW50J1xuICAgICAqL1xuICAgIHRoaXMudGV4dCA9IHRleHRcblxuICAgIGlmIChvcHRzLm5vZGUgJiYgb3B0cy5ub2RlLnNvdXJjZSkge1xuICAgICAgbGV0IHBvcyA9IG9wdHMubm9kZS5wb3NpdGlvbkJ5KG9wdHMpXG4gICAgICAvKipcbiAgICAgICAqIExpbmUgaW4gdGhlIGlucHV0IGZpbGUgd2l0aCB0aGlzIHdhcm5pbmfigJlzIHNvdXJjZS5cbiAgICAgICAqIEB0eXBlIHtudW1iZXJ9XG4gICAgICAgKlxuICAgICAgICogQGV4YW1wbGVcbiAgICAgICAqIHdhcm5pbmcubGluZSAvLz0+IDVcbiAgICAgICAqL1xuICAgICAgdGhpcy5saW5lID0gcG9zLmxpbmVcbiAgICAgIC8qKlxuICAgICAgICogQ29sdW1uIGluIHRoZSBpbnB1dCBmaWxlIHdpdGggdGhpcyB3YXJuaW5n4oCZcyBzb3VyY2UuXG4gICAgICAgKlxuICAgICAgICogQHR5cGUge251bWJlcn1cbiAgICAgICAqXG4gICAgICAgKiBAZXhhbXBsZVxuICAgICAgICogd2FybmluZy5jb2x1bW4gLy89PiA2XG4gICAgICAgKi9cbiAgICAgIHRoaXMuY29sdW1uID0gcG9zLmNvbHVtblxuICAgIH1cblxuICAgIGZvciAobGV0IG9wdCBpbiBvcHRzKSB0aGlzW29wdF0gPSBvcHRzW29wdF1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgd2FybmluZyBwb3NpdGlvbiBhbmQgbWVzc2FnZS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogd2FybmluZy50b1N0cmluZygpIC8vPT4gJ3Bvc3Rjc3MtbGludDphLmNzczoxMDoxNDogQXZvaWQgIWltcG9ydGFudCdcbiAgICpcbiAgICogQHJldHVybiB7c3RyaW5nfSBXYXJuaW5nIHBvc2l0aW9uIGFuZCBtZXNzYWdlLlxuICAgKi9cbiAgdG9TdHJpbmcgKCkge1xuICAgIGlmICh0aGlzLm5vZGUpIHtcbiAgICAgIHJldHVybiB0aGlzLm5vZGUuZXJyb3IodGhpcy50ZXh0LCB7XG4gICAgICAgIHBsdWdpbjogdGhpcy5wbHVnaW4sXG4gICAgICAgIGluZGV4OiB0aGlzLmluZGV4LFxuICAgICAgICB3b3JkOiB0aGlzLndvcmRcbiAgICAgIH0pLm1lc3NhZ2VcbiAgICB9IGVsc2UgaWYgKHRoaXMucGx1Z2luKSB7XG4gICAgICByZXR1cm4gdGhpcy5wbHVnaW4gKyAnOiAnICsgdGhpcy50ZXh0XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnRleHRcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQG1lbWJlcm9mIFdhcm5pbmcjXG4gICAqIEBtZW1iZXIge3N0cmluZ30gcGx1Z2luIFRoZSBuYW1lIG9mIHRoZSBwbHVnaW4gdGhhdCBjcmVhdGVkXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgIGl0IHdpbGwgZmlsbCB0aGlzIHByb3BlcnR5IGF1dG9tYXRpY2FsbHkuXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMgd2FybmluZy4gV2hlbiB5b3UgY2FsbCB7QGxpbmsgTm9kZSN3YXJufVxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiB3YXJuaW5nLnBsdWdpbiAvLz0+ICdwb3N0Y3NzLWltcG9ydGFudCdcbiAgICovXG5cbiAgLyoqXG4gICAqIEBtZW1iZXJvZiBXYXJuaW5nI1xuICAgKiBAbWVtYmVyIHtOb2RlfSBub2RlIENvbnRhaW5zIHRoZSBDU1Mgbm9kZSB0aGF0IGNhdXNlZCB0aGUgd2FybmluZy5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogd2FybmluZy5ub2RlLnRvU3RyaW5nKCkgLy89PiAnY29sb3I6IHdoaXRlICFpbXBvcnRhbnQnXG4gICAqL1xufVxuXG5leHBvcnQgZGVmYXVsdCBXYXJuaW5nXG4iXX0=
|
package/package.json
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
{
|
2
2
|
"name": "postcss",
|
3
|
-
"version": "
|
3
|
+
"version": "7.0.2",
|
4
4
|
"description": "Tool for transforming styles with JS plugins",
|
5
5
|
"engines": {
|
6
|
-
"node": ">=
|
6
|
+
"node": ">=6.0.0"
|
7
7
|
},
|
8
8
|
"keywords": ["css", "postcss", "rework", "preprocessor", "parser", "source map", "transform", "manipulation", "transpiler"],
|
9
9
|
"author": "Andrey Sitnik <andrey@sitnik.ru>",
|
10
10
|
"license": "MIT",
|
11
|
-
"homepage": "
|
11
|
+
"homepage": "https://postcss.org/",
|
12
12
|
"repository": "postcss/postcss",
|
13
13
|
"dependencies": {
|
14
14
|
"chalk": "^2.4.1",
|
@@ -18,6 +18,7 @@
|
|
18
18
|
"main": "lib/postcss",
|
19
19
|
"types": "lib/postcss.d.ts",
|
20
20
|
"browser": {
|
21
|
+
"./lib/terminal-highlight": false,
|
21
22
|
"supports-color": false,
|
22
23
|
"chalk": false,
|
23
24
|
"fs": false
|
package/CONTRIBUTING.md
DELETED
@@ -1,78 +0,0 @@
|
|
1
|
-
# Contributing Guide to PostCSS
|
2
|
-
|
3
|
-
If you want contribute to PostCSS, there are few things that you should
|
4
|
-
be familiar with.
|
5
|
-
|
6
|
-
|
7
|
-
## In Case You Have Question About Using PostCSS
|
8
|
-
|
9
|
-
* **Ask for help in [the chat]**
|
10
|
-
|
11
|
-
If you stuck on something there is a big chance
|
12
|
-
that someone had similar problem before.
|
13
|
-
|
14
|
-
[the chat]: https://gitter.im/postcss/postcss
|
15
|
-
|
16
|
-
|
17
|
-
## Adding Your Plugin to the List
|
18
|
-
|
19
|
-
If you created or found a plugin and want to add it to PostCSS plugins list
|
20
|
-
follow this simple steps.
|
21
|
-
|
22
|
-
PR should not change plugins defined in README it contains only favorite plugins
|
23
|
-
and moderated by PostCSS author.
|
24
|
-
|
25
|
-
Plugins submitted by community located in [`docs/plugins`].
|
26
|
-
|
27
|
-
* **Keep plugins order**
|
28
|
-
|
29
|
-
Be sure that plugin not presented yet and find suitable position
|
30
|
-
in alphabetic order for it.
|
31
|
-
But plugins with `postcss-` prefix should come first.
|
32
|
-
|
33
|
-
* **Check spelling**
|
34
|
-
|
35
|
-
Before submitting PR be sure that spelling check pass.
|
36
|
-
For that run command `npm test`.
|
37
|
-
If it fails with unknown word error, add it as word
|
38
|
-
to `.yaspellerrc` dictionary.
|
39
|
-
|
40
|
-
* **Check PostCSS plugin guideline**
|
41
|
-
|
42
|
-
Provided plugin should match plugin [guidelines].
|
43
|
-
|
44
|
-
- **Provide link to suggested plugin**
|
45
|
-
|
46
|
-
Make sure your pull request description contains link to plugin
|
47
|
-
you are willing to add.
|
48
|
-
|
49
|
-
[`docs/plugins`]: https://github.com/postcss/postcss/blob/master/docs/plugins.md
|
50
|
-
[guidelines]: https://github.com/postcss/postcss/blob/master/docs/guidelines/plugin.md
|
51
|
-
|
52
|
-
|
53
|
-
## TypeScript Declaration Improvements
|
54
|
-
|
55
|
-
If you found a bug or want to add certain improvements to types declaration file
|
56
|
-
|
57
|
-
* **Check current TypeScript styling**
|
58
|
-
|
59
|
-
Be sure that your changes match TypeScript styling rules defined in typings file.
|
60
|
-
* We use classes for existing JS classes like `Stringifier`.
|
61
|
-
* Namespaces used for separating functions related to same subject.
|
62
|
-
* Interfaces used for defining custom types.
|
63
|
-
|
64
|
-
Make sure you read through declaration file writing [best practices]
|
65
|
-
by TypeScript team.
|
66
|
-
|
67
|
-
[best practices]: https://www.typescriptlang.org/docs/handbook/declaration-files/do-s-and-don-ts.html
|
68
|
-
|
69
|
-
|
70
|
-
## Core Development
|
71
|
-
|
72
|
-
If you want to add new feature or fix existed issue
|
73
|
-
|
74
|
-
- **Become familiar with PostCSS architecture**
|
75
|
-
|
76
|
-
For gentle intro to PostCSS architecture look through our [guide].
|
77
|
-
|
78
|
-
[guide]: https://github.com/postcss/postcss/blob/master/docs/architecture.md
|