From c06f7ee0a40255214c477e13d9b956a7e07c2900 Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Sat, 14 Oct 2023 15:05:55 +0800 Subject: postcss,(plugins): nanocss, postcss-preset-env --- .../svgo/plugins/removeNonInheritableGroupAttrs.js | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 node_modules/svgo/plugins/removeNonInheritableGroupAttrs.js (limited to 'node_modules/svgo/plugins/removeNonInheritableGroupAttrs.js') diff --git a/node_modules/svgo/plugins/removeNonInheritableGroupAttrs.js b/node_modules/svgo/plugins/removeNonInheritableGroupAttrs.js new file mode 100644 index 00000000..faa93dff --- /dev/null +++ b/node_modules/svgo/plugins/removeNonInheritableGroupAttrs.js @@ -0,0 +1,38 @@ +'use strict'; + +const { + inheritableAttrs, + attrsGroups, + presentationNonInheritableGroupAttrs, +} = require('./_collections'); + +exports.name = 'removeNonInheritableGroupAttrs'; +exports.description = + 'removes non-inheritable group’s presentational attributes'; + +/** + * Remove non-inheritable group's "presentation" attributes. + * + * @author Kir Belevich + * + * @type {import('./plugins-types').Plugin<'removeNonInheritableGroupAttrs'>} + */ +exports.fn = () => { + return { + element: { + enter: (node) => { + if (node.name === 'g') { + for (const name of Object.keys(node.attributes)) { + if ( + attrsGroups.presentation.includes(name) === true && + inheritableAttrs.includes(name) === false && + presentationNonInheritableGroupAttrs.includes(name) === false + ) { + delete node.attributes[name]; + } + } + } + }, + }, + }; +}; -- cgit v1.2.3