mirror of
https://github.com/simple-icons/simple-icons.git
synced 2024-12-16 01:10:30 +02:00
Update SVGO configuration (#6926)
This commit is contained in:
parent
7e0ed7c728
commit
820a71a376
181
svgo.config.js
181
svgo.config.js
@ -1,99 +1,100 @@
|
|||||||
module.exports = {
|
module.exports = {
|
||||||
multipass: true,
|
multipass: true,
|
||||||
|
eol: 'lf',
|
||||||
plugins: [
|
plugins: [
|
||||||
|
'cleanupAttrs',
|
||||||
|
'inlineStyles',
|
||||||
|
'removeDoctype',
|
||||||
|
'removeXMLProcInst',
|
||||||
|
'removeComments',
|
||||||
|
'removeMetadata',
|
||||||
|
'removeDesc',
|
||||||
|
'removeUselessDefs',
|
||||||
|
'removeEditorsNSData',
|
||||||
|
'removeEmptyAttrs',
|
||||||
|
'removeHiddenElems',
|
||||||
|
'removeEmptyText',
|
||||||
|
'removeEmptyContainers',
|
||||||
|
'cleanupEnableBackground',
|
||||||
{
|
{
|
||||||
name: 'preset-default',
|
name: 'convertPathData',
|
||||||
params: {
|
params: {
|
||||||
overrides: {
|
// 3 decimals of precision in floating point numbers
|
||||||
// customize options
|
floatPrecision: 3,
|
||||||
convertPathData: {
|
// Some editors (e.g. Adobe Illustrator and Sketch) cannot parse flags
|
||||||
// 3 decimals of precision in floating point numbers
|
// without space wrapping
|
||||||
floatPrecision: 3,
|
noSpaceAfterFlags: false,
|
||||||
// Some editors (e.g. Adobe Illustrator and Sketch) cannot parse flags
|
|
||||||
// without space wrapping
|
|
||||||
noSpaceAfterFlags: false,
|
|
||||||
},
|
|
||||||
|
|
||||||
// Sort the attributes on the <svg> tag
|
|
||||||
sortAttrs: {
|
|
||||||
order: ['role', 'viewBox'],
|
|
||||||
xmlnsOrder: 'end',
|
|
||||||
},
|
|
||||||
|
|
||||||
// Convert basic shapes (such as <circle>) to <path>
|
|
||||||
convertShapeToPath: {
|
|
||||||
// including <arc>
|
|
||||||
convertArcs: true,
|
|
||||||
},
|
|
||||||
|
|
||||||
// Compound all <path>s into one
|
|
||||||
mergePaths: {
|
|
||||||
force: true,
|
|
||||||
noSpaceAfterFlags: false,
|
|
||||||
},
|
|
||||||
|
|
||||||
// Keep the <title> tag
|
|
||||||
removeTitle: false,
|
|
||||||
|
|
||||||
// Keep the role="img" attribute and automatically add it
|
|
||||||
// to the <svg> tag if it's not there already
|
|
||||||
addAttributesToSVGElement: {
|
|
||||||
attributes: [{ role: 'img' }],
|
|
||||||
},
|
|
||||||
|
|
||||||
// Keep the 'role' attribute, if it's already defined
|
|
||||||
removeUnknownsAndDefaults: {
|
|
||||||
keepRoleAttr: true,
|
|
||||||
},
|
|
||||||
|
|
||||||
// Remove all attributes except 'role', 'viewBox', and 'xmlns' from
|
|
||||||
// <svg> tags
|
|
||||||
removeAttrs: {
|
|
||||||
attrs: ['baseProfile', 'version', 'fill-rule'],
|
|
||||||
},
|
|
||||||
|
|
||||||
// Remove paths with fill="none"
|
|
||||||
removeUselessStrokeAndFill: {
|
|
||||||
removeNone: true,
|
|
||||||
},
|
|
||||||
|
|
||||||
// Explicitly enable everything else
|
|
||||||
removeDoctype: true,
|
|
||||||
removeXMLProcInst: true,
|
|
||||||
removeComments: true,
|
|
||||||
removeMetadata: true,
|
|
||||||
removeEditorsNSData: true,
|
|
||||||
cleanupAttrs: true,
|
|
||||||
inlineStyles: true,
|
|
||||||
minifyStyles: true,
|
|
||||||
convertStyleToAttrs: true,
|
|
||||||
cleanupIDs: true,
|
|
||||||
prefixIds: true,
|
|
||||||
removeRasterImages: true,
|
|
||||||
removeUselessDefs: true,
|
|
||||||
cleanupNumericValues: true,
|
|
||||||
cleanupListOfValues: true,
|
|
||||||
convertColors: true,
|
|
||||||
removeNonInheritableGroupAttrs: true,
|
|
||||||
removeViewBox: true,
|
|
||||||
cleanupEnableBackground: true,
|
|
||||||
removeHiddenElems: true,
|
|
||||||
removeEmptyText: true,
|
|
||||||
moveElemsAttrsToGroup: true,
|
|
||||||
moveGroupAttrsToElems: true,
|
|
||||||
collapseGroups: true,
|
|
||||||
convertTransform: true,
|
|
||||||
removeEmptyAttrs: true,
|
|
||||||
removeEmptyContainers: true,
|
|
||||||
removeUnusedNS: true,
|
|
||||||
removeDesc: true,
|
|
||||||
removeDimensions: true,
|
|
||||||
removeStyleElement: true,
|
|
||||||
removeScriptElement: true,
|
|
||||||
removeOffCanvasPaths: true,
|
|
||||||
reusePaths: true,
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
'convertTransform',
|
||||||
|
{
|
||||||
|
name: 'removeUnknownsAndDefaults',
|
||||||
|
params: {
|
||||||
|
// Keep the 'role' attribute, if it's already defined
|
||||||
|
keepRoleAttr: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'removeNonInheritableGroupAttrs',
|
||||||
|
{
|
||||||
|
// Remove paths with fill="none"
|
||||||
|
name: 'removeUselessStrokeAndFill',
|
||||||
|
params: {
|
||||||
|
removeNone: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'removeUselessStrokeAndFill',
|
||||||
|
'removeUnusedNS',
|
||||||
|
'cleanupIDs',
|
||||||
|
'cleanupNumericValues',
|
||||||
|
'cleanupListOfValues',
|
||||||
|
'moveGroupAttrsToElems',
|
||||||
|
'collapseGroups',
|
||||||
|
'removeRasterImages',
|
||||||
|
{
|
||||||
|
// Compound all <path>s into one
|
||||||
|
name: 'mergePaths',
|
||||||
|
params: {
|
||||||
|
force: true,
|
||||||
|
noSpaceAfterFlags: false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// Convert basic shapes (such as <circle>) to <path>
|
||||||
|
name: 'convertShapeToPath',
|
||||||
|
params: {
|
||||||
|
// including <arc>
|
||||||
|
convertArcs: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'convertEllipseToCircle',
|
||||||
|
{
|
||||||
|
// Sort the attributes on the <svg> tag
|
||||||
|
name: 'sortAttrs',
|
||||||
|
params: {
|
||||||
|
order: ['role', 'viewBox'],
|
||||||
|
xmlnsOrder: 'end',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'sortDefsChildren',
|
||||||
|
'removeDimensions',
|
||||||
|
{
|
||||||
|
name: 'removeAttrs',
|
||||||
|
params: {
|
||||||
|
attrs: ['svg:(?!(role|viewBox|xmlns))', 'path:(?!d)', 'title:*'],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'removeElementsByAttr',
|
||||||
|
{
|
||||||
|
// Keep the role="img" attribute and automatically add it
|
||||||
|
// to the <svg> tag if it's not there already
|
||||||
|
name: 'addAttributesToSVGElement',
|
||||||
|
params: {
|
||||||
|
attributes: [{ role: 'img', xmlns: 'http://www.w3.org/2000/svg' }],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'removeOffCanvasPaths',
|
||||||
|
'removeStyleElement',
|
||||||
|
'removeScriptElement',
|
||||||
|
'reusePaths',
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user