postcss-svgo
Advanced tools
Comparing version 2.1.2 to 2.1.3
@@ -0,1 +1,5 @@ | ||
# 2.1.3 | ||
* Upgrade is-svg to version 2. | ||
# 2.1.2 | ||
@@ -2,0 +6,0 @@ |
@@ -5,2 +5,4 @@ 'use strict'; | ||
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
var _postcss = require('postcss'); | ||
@@ -26,2 +28,3 @@ | ||
var PLUGIN = 'postcss-svgo'; | ||
var dataURI = /data:image\/svg\+xml(;(charset=)?utf-8)?,/; | ||
@@ -40,2 +43,3 @@ | ||
var isUriEncoded = decodedUri !== value; | ||
if (isUriEncoded) { | ||
@@ -48,16 +52,22 @@ value = decodedUri; | ||
if (!dataURI.test(value) || !(0, _isSvg2.default)(value)) { | ||
var svg = value.replace(dataURI, ''); | ||
if (!(0, _isSvg2.default)(svg)) { | ||
return; | ||
} | ||
promises.push(new Promise(function (resolve, reject) { | ||
svgo.optimize(value.replace(dataURI, ''), function (result) { | ||
return svgo.optimize(svg, function (result) { | ||
if (result.error) { | ||
return reject('Error parsing SVG: ' + result.error); | ||
return reject(PLUGIN + ': ' + result.error); | ||
} | ||
node.before = node.after = ''; | ||
var data = isUriEncoded ? (0, _url.encode)(result.data) : result.data; | ||
node.nodes[0].value = 'data:image/svg+xml;charset=utf-8,' + data; | ||
node.nodes[0].quote = isUriEncoded ? '"' : '\''; | ||
node.nodes[0].type = 'string'; | ||
resolve(); | ||
node.nodes[0] = _extends({}, node.nodes[0], { | ||
value: 'data:image/svg+xml;charset=utf-8,' + data, | ||
quote: isUriEncoded ? '"' : '\'', | ||
type: 'string', | ||
before: '', | ||
after: '' | ||
}); | ||
return resolve(); | ||
}); | ||
@@ -74,3 +84,3 @@ })); | ||
exports.default = _postcss2.default.plugin('postcss-svgo', function () { | ||
exports.default = _postcss2.default.plugin(PLUGIN, function () { | ||
var opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; | ||
@@ -87,3 +97,3 @@ | ||
}); | ||
Promise.all(promises).then(resolve, reject); | ||
return Promise.all(promises).then(resolve, reject); | ||
}); | ||
@@ -90,0 +100,0 @@ }; |
{ | ||
"name": "postcss-svgo", | ||
"version": "2.1.2", | ||
"version": "2.1.3", | ||
"description": "Optimise inline SVG with PostCSS.", | ||
@@ -9,2 +9,3 @@ "main": "dist/index.js", | ||
"prepublish": "del-cli dist && BABEL_ENV=publish babel src --out-dir dist --ignore /__tests__/", | ||
"report": "nyc report --reporter=html", | ||
"test": "nyc --reporter=text ava src/__tests__" | ||
@@ -27,3 +28,3 @@ }, | ||
"devDependencies": { | ||
"ava": "^0.11.0", | ||
"ava": "^0.14.0", | ||
"babel-cli": "^6.4.5", | ||
@@ -37,5 +38,6 @@ "babel-core": "^6.4.5", | ||
"del-cli": "^0.2.0", | ||
"eslint": "^1.10.3", | ||
"nyc": "^5.6.0", | ||
"pleeease-filters": "^2.0.0" | ||
"eslint": "^2.0.0", | ||
"eslint-config-cssnano": "^2.0.0", | ||
"nyc": "^6.0.0", | ||
"pleeease-filters": "^3.0.0" | ||
}, | ||
@@ -50,3 +52,3 @@ "homepage": "https://github.com/ben-eb/postcss-svgo", | ||
"dependencies": { | ||
"is-svg": "^1.1.1", | ||
"is-svg": "^2.0.0", | ||
"postcss": "^5.0.14", | ||
@@ -58,3 +60,6 @@ "postcss-value-parser": "^3.2.3", | ||
"require": "babel-core/register" | ||
}, | ||
"eslintConfig": { | ||
"extends": "cssnano" | ||
} | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
9882
77
13
+ Addedhtml-comment-regex@1.1.2(transitive)
+ Addedis-svg@2.1.0(transitive)
- Removedis-svg@1.1.1(transitive)
Updatedis-svg@^2.0.0