autoprefixer
Advanced tools
Comparing version 9.6.4 to 9.6.5
# Change Log | ||
This project adheres to [Semantic Versioning](http://semver.org/). | ||
## 9.6.5 | ||
* Fix selector prefixing (by Andrey Alexandrov). | ||
## 9.6.4 | ||
@@ -5,0 +8,0 @@ * Now the real fix for `'startsWith' of undefined` error. |
@@ -7,2 +7,5 @@ "use strict"; | ||
var _require = require('postcss'), | ||
list = _require.list; | ||
var OldSelector = require('./old-selector'); | ||
@@ -78,4 +81,10 @@ | ||
_proto.prefixeds = function prefixeds(rule) { | ||
var _this2 = this; | ||
if (rule._autoprefixerPrefixeds) { | ||
return rule._autoprefixerPrefixeds; | ||
if (rule._autoprefixerPrefixeds[this.name]) { | ||
return rule._autoprefixerPrefixeds; | ||
} | ||
} else { | ||
rule._autoprefixerPrefixeds = {}; | ||
} | ||
@@ -85,19 +94,50 @@ | ||
for (var _iterator = this.possible(), _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { | ||
var _ref; | ||
if (rule.selector.includes(',')) { | ||
var ruleParts = list.comma(rule.selector); | ||
var toProcess = ruleParts.filter(function (el) { | ||
return el.includes(_this2.name); | ||
}); | ||
if (_isArray) { | ||
if (_i >= _iterator.length) break; | ||
_ref = _iterator[_i++]; | ||
} else { | ||
_i = _iterator.next(); | ||
if (_i.done) break; | ||
_ref = _i.value; | ||
var _loop = function _loop() { | ||
if (_isArray) { | ||
if (_i >= _iterator.length) return "break"; | ||
_ref = _iterator[_i++]; | ||
} else { | ||
_i = _iterator.next(); | ||
if (_i.done) return "break"; | ||
_ref = _i.value; | ||
} | ||
var prefix = _ref; | ||
prefixeds[prefix] = toProcess.map(function (el) { | ||
return _this2.replace(el, prefix); | ||
}).join(', '); | ||
}; | ||
for (var _iterator = this.possible(), _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { | ||
var _ref; | ||
var _ret = _loop(); | ||
if (_ret === "break") break; | ||
} | ||
} else { | ||
for (var _iterator2 = this.possible(), _isArray2 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) { | ||
var _ref2; | ||
var prefix = _ref; | ||
prefixeds[prefix] = this.replace(rule.selector, prefix); | ||
if (_isArray2) { | ||
if (_i2 >= _iterator2.length) break; | ||
_ref2 = _iterator2[_i2++]; | ||
} else { | ||
_i2 = _iterator2.next(); | ||
if (_i2.done) break; | ||
_ref2 = _i2.value; | ||
} | ||
var prefix = _ref2; | ||
prefixeds[prefix] = this.replace(rule.selector, prefix); | ||
} | ||
} | ||
rule._autoprefixerPrefixeds = prefixeds; | ||
rule._autoprefixerPrefixeds[this.name] = prefixeds; | ||
return rule._autoprefixerPrefixeds; | ||
@@ -122,4 +162,4 @@ } | ||
for (var key in prefixeds) { | ||
var prefixed = prefixeds[key]; | ||
for (var key in prefixeds[this.name]) { | ||
var prefixed = prefixeds[this.name][key]; | ||
@@ -166,3 +206,3 @@ if (before.selector === prefixed) { | ||
var cloned = this.clone(rule, { | ||
selector: prefixeds[prefix] | ||
selector: prefixeds[this.name][prefix] | ||
}); | ||
@@ -169,0 +209,0 @@ rule.parent.insertBefore(rule, cloned); |
{ | ||
"name": "autoprefixer", | ||
"version": "9.6.4", | ||
"version": "9.6.5", | ||
"description": "Parse CSS and add vendor prefixes to CSS rules using values from the Can I Use website", | ||
@@ -14,3 +14,3 @@ "keywords": ["autoprefixer", "css", "prefix", "postcss", "postcss-plugin"], | ||
"browserslist": "^4.7.0", | ||
"caniuse-lite": "^1.0.30000998", | ||
"caniuse-lite": "^1.0.30000999", | ||
"chalk": "^2.4.2", | ||
@@ -17,0 +17,0 @@ "normalize-range": "^0.1.2", |
335293
7623
+ Addedelectron-to-chromium@1.4.798(transitive)
Updatedcaniuse-lite@^1.0.30000999