flow like the river
This commit is contained in:
commit
013fe673f3
42435 changed files with 5764238 additions and 0 deletions
32
BACK_BACK/node_modules/htmlnano/lib/modules/minifySvg.js
generated
vendored
Executable file
32
BACK_BACK/node_modules/htmlnano/lib/modules/minifySvg.js
generated
vendored
Executable file
|
|
@ -0,0 +1,32 @@
|
|||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = minifySvg;
|
||||
|
||||
var _svgo = _interopRequireDefault(require("svgo"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
/** Minify SVG with SVGO */
|
||||
function minifySvg(tree, options, svgoOptions = {}) {
|
||||
let promises = [];
|
||||
const svgo = new _svgo.default(svgoOptions);
|
||||
tree.match({
|
||||
tag: 'svg'
|
||||
}, node => {
|
||||
let svgStr = tree.render(node, {
|
||||
closingSingleTag: 'slash',
|
||||
quoteAllAttributes: true
|
||||
});
|
||||
let promise = svgo.optimize(svgStr).then(result => {
|
||||
node.tag = false;
|
||||
node.attrs = {};
|
||||
node.content = result.data;
|
||||
});
|
||||
promises.push(promise);
|
||||
return node;
|
||||
});
|
||||
return Promise.all(promises).then(() => tree);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue