mirror of
				https://github.com/Mibew/simple-icons.git
				synced 2025-10-31 10:31:06 +03:00 
			
		
		
		
	Upgrade SVGO to version 2 (#5079)
* Upgrade SVGO to version 2 * Sketch neither supports space after arc flags * Bump svgo to version 2.0.3 and enable 'reusePaths' * Improve comment * Simplify additional plugins list; update svgo script in package.json * Apply suggestions from review
This commit is contained in:
		
							parent
							
								
									e39a96af50
								
							
						
					
					
						commit
						b3360c3a0b
					
				
							
								
								
									
										85
									
								
								.svgo.yml
									
									
									
									
									
								
							
							
						
						
									
										85
									
								
								.svgo.yml
									
									
									
									
									
								
							| @ -1,85 +0,0 @@ | ||||
| multipass: true | ||||
| 
 | ||||
| plugins: | ||||
|   # Set <path> precision to 3 decimal places | ||||
|   - convertPathData: | ||||
|       floatPrecision: 3 | ||||
|       noSpaceAfterFlags: false | ||||
| 
 | ||||
|   # Sort attributes on the <SVG> | ||||
|   - sortAttrs: | ||||
|       order: | ||||
|         - role | ||||
|         - viewBox | ||||
|       xmlnsOrder: end | ||||
| 
 | ||||
|   # Convert basic shapes (such as <circle>) to <path>, including <arc> | ||||
|   - convertShapeToPath: | ||||
|       convertArcs: true | ||||
| 
 | ||||
|   # Compound all <path>s into one | ||||
|   - mergePaths: | ||||
|       force: true | ||||
|       noSpaceAfterFlags: false | ||||
| 
 | ||||
|   # Keep the <title> | ||||
|   - removeTitle: false | ||||
| 
 | ||||
|   # Don't remove the role="img" attribute and automatically | ||||
|   # add it to the SVG if it's not | ||||
|   - addAttributesToSVGElement: | ||||
|       attributes: | ||||
|         - role: img | ||||
| 
 | ||||
|   # remove any unnecessary attributes | ||||
|   - removeUnknownsAndDefaults: | ||||
|       keepRoleAttr: true | ||||
|   - removeAttrs: | ||||
|       attrs: | ||||
|         - baseProfile | ||||
|         - version | ||||
|         - fill-rule | ||||
| 
 | ||||
|   # remove paths with fill="none" | ||||
|   - removeUselessStrokeAndFill: | ||||
|       removeNone: true | ||||
| 
 | ||||
|   # Enable everything else | ||||
|   - removeDoctype | ||||
|   - removeXMLProcInst | ||||
|   - removeComments | ||||
|   - removeMetadata | ||||
|   - removeXMLNS | ||||
|   - removeEditorsNSData | ||||
|   - cleanupAttrs | ||||
|   - inlineStyles | ||||
|   - minifyStyles | ||||
|   - convertStyleToAttrs | ||||
|   - cleanupIDs | ||||
|   - prefixIds | ||||
|   - removeRasterImages | ||||
|   - removeUselessDefs | ||||
|   - cleanupNumericValues | ||||
|   - cleanupListOfValues | ||||
|   - convertColors | ||||
|   - removeNonInheritableGroupAttrs | ||||
|   - removeViewBox | ||||
|   - cleanupEnableBackground | ||||
|   - removeHiddenElems | ||||
|   - removeEmptyText | ||||
|   - moveElemsAttrsToGroup | ||||
|   - moveGroupAttrsToElems | ||||
|   - collapseGroups | ||||
|   - convertTransform | ||||
|   - removeEmptyAttrs | ||||
|   - removeEmptyContainers | ||||
|   - removeUnusedNS | ||||
|   - removeDesc | ||||
|   - removeDimensions | ||||
|   - removeAttributesBySelector | ||||
|   - removeElementsByAttr | ||||
|   - addClassesToSVGElement | ||||
|   - removeStyleElement | ||||
|   - removeScriptElement | ||||
|   - removeOffCanvasPaths | ||||
|   - reusePaths | ||||
							
								
								
									
										365
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										365
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							| @ -734,12 +734,6 @@ | ||||
|       "integrity": "sha512-UEyp8LwZ4Dg30kVU2Q3amHHyTn1jEdhCIE59ANed76GaT1Vp76DD3ZWSAxgCrw6wJ0TqeoBpqmfUHiUDPs//HQ==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "@types/q": { | ||||
|       "version": "1.5.4", | ||||
|       "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", | ||||
|       "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "@types/stack-utils": { | ||||
|       "version": "2.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", | ||||
| @ -1303,69 +1297,6 @@ | ||||
|       "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "coa": { | ||||
|       "version": "2.0.2", | ||||
|       "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", | ||||
|       "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "@types/q": "^1.5.1", | ||||
|         "chalk": "^2.4.1", | ||||
|         "q": "^1.1.2" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "ansi-styles": { | ||||
|           "version": "3.2.1", | ||||
|           "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||||
|           "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "color-convert": "^1.9.0" | ||||
|           } | ||||
|         }, | ||||
|         "chalk": { | ||||
|           "version": "2.4.2", | ||||
|           "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", | ||||
|           "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "ansi-styles": "^3.2.1", | ||||
|             "escape-string-regexp": "^1.0.5", | ||||
|             "supports-color": "^5.3.0" | ||||
|           } | ||||
|         }, | ||||
|         "color-convert": { | ||||
|           "version": "1.9.3", | ||||
|           "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | ||||
|           "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "color-name": "1.1.3" | ||||
|           } | ||||
|         }, | ||||
|         "color-name": { | ||||
|           "version": "1.1.3", | ||||
|           "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | ||||
|           "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "has-flag": { | ||||
|           "version": "3.0.0", | ||||
|           "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | ||||
|           "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "supports-color": { | ||||
|           "version": "5.5.0", | ||||
|           "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | ||||
|           "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "has-flag": "^3.0.0" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "collect-v8-coverage": { | ||||
|       "version": "1.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", | ||||
| @ -1406,6 +1337,12 @@ | ||||
|         "delayed-stream": "~1.0.0" | ||||
|       } | ||||
|     }, | ||||
|     "commander": { | ||||
|       "version": "7.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", | ||||
|       "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "component-emitter": { | ||||
|       "version": "1.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", | ||||
| @ -1471,12 +1408,12 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "css-tree": { | ||||
|       "version": "1.0.0-alpha.37", | ||||
|       "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", | ||||
|       "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", | ||||
|       "version": "1.1.2", | ||||
|       "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.2.tgz", | ||||
|       "integrity": "sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "mdn-data": "2.0.4", | ||||
|         "mdn-data": "2.0.14", | ||||
|         "source-map": "^0.6.1" | ||||
|       } | ||||
|     }, | ||||
| @ -1487,30 +1424,12 @@ | ||||
|       "dev": true | ||||
|     }, | ||||
|     "csso": { | ||||
|       "version": "4.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/csso/-/csso-4.1.1.tgz", | ||||
|       "integrity": "sha512-Rvq+e1e0TFB8E8X+8MQjHSY6vtol45s5gxtLI/018UsAn2IBMmwNEZRM/h+HVnAJRHjasLIKKUO3uvoMM28LvA==", | ||||
|       "version": "4.2.0", | ||||
|       "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", | ||||
|       "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "css-tree": "^1.0.0" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "css-tree": { | ||||
|           "version": "1.1.1", | ||||
|           "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.1.tgz", | ||||
|           "integrity": "sha512-NVN42M2fjszcUNpDbdkvutgQSlFYsr1z7kqeuCagHnNLBfYor6uP1WL1KrkmdYZ5Y1vTBCIOI/C/+8T98fJ71w==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "mdn-data": "2.0.14", | ||||
|             "source-map": "^0.6.1" | ||||
|           } | ||||
|         }, | ||||
|         "mdn-data": { | ||||
|           "version": "2.0.14", | ||||
|           "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", | ||||
|           "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", | ||||
|           "dev": true | ||||
|         } | ||||
|         "css-tree": "^1.1.2" | ||||
|       } | ||||
|     }, | ||||
|     "cssom": { | ||||
| @ -3601,9 +3520,9 @@ | ||||
|       } | ||||
|     }, | ||||
|     "mdn-data": { | ||||
|       "version": "2.0.4", | ||||
|       "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", | ||||
|       "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", | ||||
|       "version": "2.0.14", | ||||
|       "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", | ||||
|       "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "memorystream": { | ||||
| @ -4108,37 +4027,6 @@ | ||||
|         "object-keys": "^1.1.1" | ||||
|       } | ||||
|     }, | ||||
|     "object.getownpropertydescriptors": { | ||||
|       "version": "2.1.0", | ||||
|       "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", | ||||
|       "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "define-properties": "^1.1.3", | ||||
|         "es-abstract": "^1.17.0-next.1" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "es-abstract": { | ||||
|           "version": "1.17.7", | ||||
|           "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", | ||||
|           "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "es-to-primitive": "^1.2.1", | ||||
|             "function-bind": "^1.1.1", | ||||
|             "has": "^1.0.3", | ||||
|             "has-symbols": "^1.0.1", | ||||
|             "is-callable": "^1.2.2", | ||||
|             "is-regex": "^1.1.1", | ||||
|             "object-inspect": "^1.8.0", | ||||
|             "object-keys": "^1.1.1", | ||||
|             "object.assign": "^4.1.1", | ||||
|             "string.prototype.trimend": "^1.0.1", | ||||
|             "string.prototype.trimstart": "^1.0.1" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "object.pick": { | ||||
|       "version": "1.3.0", | ||||
|       "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", | ||||
| @ -4148,39 +4036,6 @@ | ||||
|         "isobject": "^3.0.1" | ||||
|       } | ||||
|     }, | ||||
|     "object.values": { | ||||
|       "version": "1.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", | ||||
|       "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "define-properties": "^1.1.3", | ||||
|         "es-abstract": "^1.17.0-next.1", | ||||
|         "function-bind": "^1.1.1", | ||||
|         "has": "^1.0.3" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "es-abstract": { | ||||
|           "version": "1.17.7", | ||||
|           "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", | ||||
|           "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "es-to-primitive": "^1.2.1", | ||||
|             "function-bind": "^1.1.1", | ||||
|             "has": "^1.0.3", | ||||
|             "has-symbols": "^1.0.1", | ||||
|             "is-callable": "^1.2.2", | ||||
|             "is-regex": "^1.1.1", | ||||
|             "object-inspect": "^1.8.0", | ||||
|             "object-keys": "^1.1.1", | ||||
|             "object.assign": "^4.1.1", | ||||
|             "string.prototype.trimend": "^1.0.1", | ||||
|             "string.prototype.trimstart": "^1.0.1" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "once": { | ||||
|       "version": "1.4.0", | ||||
|       "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", | ||||
| @ -4419,12 +4274,6 @@ | ||||
|       "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "q": { | ||||
|       "version": "1.5.1", | ||||
|       "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", | ||||
|       "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "qs": { | ||||
|       "version": "6.5.2", | ||||
|       "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", | ||||
| @ -5448,111 +5297,90 @@ | ||||
|       } | ||||
|     }, | ||||
|     "svgo": { | ||||
|       "version": "1.3.2", | ||||
|       "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", | ||||
|       "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", | ||||
|       "version": "2.0.3", | ||||
|       "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.0.3.tgz", | ||||
|       "integrity": "sha512-q6YtEaLXkPN1ARaifoENYPPweAbBV8YoqWg+8DFQ3xsImfyRIdBbr42Cqz4NZwCftmVJjh+m1rEK7ItRdLTxdg==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "chalk": "^2.4.1", | ||||
|         "coa": "^2.0.2", | ||||
|         "css-select": "^2.0.0", | ||||
|         "chalk": "^4.1.0", | ||||
|         "commander": "^7.1.0", | ||||
|         "css-select": "^3.1.2", | ||||
|         "css-select-base-adapter": "^0.1.1", | ||||
|         "css-tree": "1.0.0-alpha.37", | ||||
|         "csso": "^4.0.2", | ||||
|         "js-yaml": "^3.13.1", | ||||
|         "mkdirp": "~0.5.1", | ||||
|         "object.values": "^1.1.0", | ||||
|         "css-tree": "^1.1.2", | ||||
|         "csso": "^4.2.0", | ||||
|         "sax": "~1.2.4", | ||||
|         "stable": "^0.1.8", | ||||
|         "unquote": "~1.1.1", | ||||
|         "util.promisify": "~1.0.0" | ||||
|         "stable": "^0.1.8" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "ansi-styles": { | ||||
|           "version": "3.2.1", | ||||
|           "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", | ||||
|           "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "color-convert": "^1.9.0" | ||||
|           } | ||||
|         }, | ||||
|         "chalk": { | ||||
|           "version": "2.4.2", | ||||
|           "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", | ||||
|           "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "ansi-styles": "^3.2.1", | ||||
|             "escape-string-regexp": "^1.0.5", | ||||
|             "supports-color": "^5.3.0" | ||||
|           } | ||||
|         }, | ||||
|         "color-convert": { | ||||
|           "version": "1.9.3", | ||||
|           "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", | ||||
|           "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "color-name": "1.1.3" | ||||
|           } | ||||
|         }, | ||||
|         "color-name": { | ||||
|           "version": "1.1.3", | ||||
|           "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", | ||||
|           "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "css-select": { | ||||
|           "version": "2.1.0", | ||||
|           "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", | ||||
|           "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", | ||||
|           "version": "3.1.2", | ||||
|           "resolved": "https://registry.npmjs.org/css-select/-/css-select-3.1.2.tgz", | ||||
|           "integrity": "sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "boolbase": "^1.0.0", | ||||
|             "css-what": "^3.2.1", | ||||
|             "domutils": "^1.7.0", | ||||
|             "nth-check": "^1.0.2" | ||||
|             "css-what": "^4.0.0", | ||||
|             "domhandler": "^4.0.0", | ||||
|             "domutils": "^2.4.3", | ||||
|             "nth-check": "^2.0.0" | ||||
|           } | ||||
|         }, | ||||
|         "css-what": { | ||||
|           "version": "3.4.2", | ||||
|           "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", | ||||
|           "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", | ||||
|           "version": "4.0.0", | ||||
|           "resolved": "https://registry.npmjs.org/css-what/-/css-what-4.0.0.tgz", | ||||
|           "integrity": "sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A==", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "dom-serializer": { | ||||
|           "version": "1.2.0", | ||||
|           "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz", | ||||
|           "integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "domelementtype": "^2.0.1", | ||||
|             "domhandler": "^4.0.0", | ||||
|             "entities": "^2.0.0" | ||||
|           } | ||||
|         }, | ||||
|         "domelementtype": { | ||||
|           "version": "2.1.0", | ||||
|           "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", | ||||
|           "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "domhandler": { | ||||
|           "version": "4.0.0", | ||||
|           "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz", | ||||
|           "integrity": "sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "domelementtype": "^2.1.0" | ||||
|           } | ||||
|         }, | ||||
|         "domutils": { | ||||
|           "version": "1.7.0", | ||||
|           "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", | ||||
|           "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", | ||||
|           "version": "2.4.4", | ||||
|           "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.4.4.tgz", | ||||
|           "integrity": "sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "dom-serializer": "0", | ||||
|             "domelementtype": "1" | ||||
|             "dom-serializer": "^1.0.1", | ||||
|             "domelementtype": "^2.0.1", | ||||
|             "domhandler": "^4.0.0" | ||||
|           } | ||||
|         }, | ||||
|         "has-flag": { | ||||
|           "version": "3.0.0", | ||||
|           "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", | ||||
|           "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", | ||||
|         "entities": { | ||||
|           "version": "2.2.0", | ||||
|           "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", | ||||
|           "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", | ||||
|           "dev": true | ||||
|         }, | ||||
|         "mkdirp": { | ||||
|           "version": "0.5.5", | ||||
|           "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", | ||||
|           "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", | ||||
|         "nth-check": { | ||||
|           "version": "2.0.0", | ||||
|           "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", | ||||
|           "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "minimist": "^1.2.5" | ||||
|           } | ||||
|         }, | ||||
|         "supports-color": { | ||||
|           "version": "5.5.0", | ||||
|           "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", | ||||
|           "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "has-flag": "^3.0.0" | ||||
|             "boolbase": "^1.0.0" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
| @ -5752,12 +5580,6 @@ | ||||
|         "set-value": "^2.0.1" | ||||
|       } | ||||
|     }, | ||||
|     "unquote": { | ||||
|       "version": "1.1.1", | ||||
|       "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", | ||||
|       "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "unset-value": { | ||||
|       "version": "1.0.0", | ||||
|       "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", | ||||
| @ -5825,39 +5647,6 @@ | ||||
|       "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", | ||||
|       "dev": true | ||||
|     }, | ||||
|     "util.promisify": { | ||||
|       "version": "1.0.1", | ||||
|       "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", | ||||
|       "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", | ||||
|       "dev": true, | ||||
|       "requires": { | ||||
|         "define-properties": "^1.1.3", | ||||
|         "es-abstract": "^1.17.2", | ||||
|         "has-symbols": "^1.0.1", | ||||
|         "object.getownpropertydescriptors": "^2.1.0" | ||||
|       }, | ||||
|       "dependencies": { | ||||
|         "es-abstract": { | ||||
|           "version": "1.17.7", | ||||
|           "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", | ||||
|           "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", | ||||
|           "dev": true, | ||||
|           "requires": { | ||||
|             "es-to-primitive": "^1.2.1", | ||||
|             "function-bind": "^1.1.1", | ||||
|             "has": "^1.0.3", | ||||
|             "has-symbols": "^1.0.1", | ||||
|             "is-callable": "^1.2.2", | ||||
|             "is-regex": "^1.1.1", | ||||
|             "object-inspect": "^1.8.0", | ||||
|             "object-keys": "^1.1.1", | ||||
|             "object.assign": "^4.1.1", | ||||
|             "string.prototype.trimend": "^1.0.1", | ||||
|             "string.prototype.trimstart": "^1.0.1" | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     }, | ||||
|     "uuid": { | ||||
|       "version": "8.3.1", | ||||
|       "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.1.tgz", | ||||
|  | ||||
| @ -25,7 +25,7 @@ | ||||
|     "npm-run-all": "4.1.5", | ||||
|     "svg-path-bbox": "0.2.0", | ||||
|     "svglint": "1.0.7", | ||||
|     "svgo": "1.3.2", | ||||
|     "svgo": "2.0.3", | ||||
|     "svgpath": "2.3.0", | ||||
|     "uglify-js": "3.12.7" | ||||
|   }, | ||||
| @ -42,7 +42,7 @@ | ||||
|     "test": "jest", | ||||
|     "pretest": "npm run prepublishOnly", | ||||
|     "posttest": "npm run postpublish", | ||||
|     "svgo": "svgo --config=./.svgo.yml", | ||||
|     "svgo": "svgo --config svgo.config.js", | ||||
|     "get-filename": "node scripts/get-filename.js" | ||||
|   }, | ||||
|   "engine": { | ||||
|  | ||||
							
								
								
									
										126
									
								
								svgo.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								svgo.config.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,126 @@ | ||||
| const { extendDefaultPlugins } = require('svgo'); | ||||
| 
 | ||||
| module.exports = { | ||||
|   multipass: true, | ||||
|   plugins: extendDefaultPlugins([ | ||||
|     { | ||||
|       name: 'convertPathData', | ||||
|       params: { | ||||
|         // 3 decimals of precision in floating point numbers
 | ||||
|         floatPrecision: 3, | ||||
|         // Some editors (e.g. Adobe Illustrator and Sketch) cannot parse flags
 | ||||
|         // without space wrapping
 | ||||
|         noSpaceAfterFlags: false, | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Sort the attributes on the <svg> tag
 | ||||
|     { | ||||
|       name: 'sortAttrs', | ||||
|       params: { | ||||
|         order: ['role', 'viewBox'], | ||||
|         xmlnsOrder: 'end', | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Convert basic shapes (such as <circle>) to <path>
 | ||||
|     { | ||||
|       name: 'convertShapeToPath', | ||||
|       params: { | ||||
|         // including <arc>
 | ||||
|         convertArcs: true, | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Compound all <path>s into one
 | ||||
|     { | ||||
|       name: 'mergePaths', | ||||
|       params: { | ||||
|         force: true, | ||||
|         noSpaceAfterFlags: false, | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Keep the <title> tag
 | ||||
|     { | ||||
|       name: 'removeTitle', | ||||
|       active: false, | ||||
|     }, | ||||
| 
 | ||||
|     // 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'}, | ||||
|         ], | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Keep the 'role' attribute, if it's already defined
 | ||||
|     { | ||||
|       name: 'removeUnknownsAndDefaults', | ||||
|       params: { | ||||
|         keepRoleAttr: true, | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Remove all attributes except 'role', 'viewBox', and 'xmlns' from
 | ||||
|     // <svg> tags
 | ||||
|     { | ||||
|       name: 'removeAttrs', | ||||
|       params: { | ||||
|         attrs: [ | ||||
|           'baseProfile', | ||||
|           'version', | ||||
|           'fill-rule', | ||||
|         ], | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Remove paths with fill="none"
 | ||||
|     { | ||||
|       name: 'removeUselessStrokeAndFill', | ||||
|       params: { | ||||
|         removeNone: true, | ||||
|       }, | ||||
|     }, | ||||
| 
 | ||||
|     // Explicitly enable everything else
 | ||||
|     'removeDoctype', | ||||
|     'removeXMLProcInst', | ||||
|     'removeComments', | ||||
|     'removeMetadata', | ||||
|     'removeEditorsNSData', | ||||
|     'cleanupAttrs', | ||||
|     'inlineStyles', | ||||
|     'minifyStyles', | ||||
|     'convertStyleToAttrs', | ||||
|     'cleanupIDs', | ||||
|     'prefixIds', | ||||
|     'removeRasterImages', | ||||
|     'removeUselessDefs', | ||||
|     'cleanupNumericValues', | ||||
|     'cleanupListOfValues', | ||||
|     'convertColors', | ||||
|     'removeNonInheritableGroupAttrs', | ||||
|     'removeViewBox', | ||||
|     'cleanupEnableBackground', | ||||
|     'removeHiddenElems', | ||||
|     'removeEmptyText', | ||||
|     'moveElemsAttrsToGroup', | ||||
|     'moveGroupAttrsToElems', | ||||
|     'collapseGroups', | ||||
|     'convertTransform', | ||||
|     'removeEmptyAttrs', | ||||
|     'removeEmptyContainers', | ||||
|     'removeUnusedNS', | ||||
|     'removeDesc', | ||||
|     'removeDimensions', | ||||
|     'removeStyleElement', | ||||
|     'removeScriptElement', | ||||
|     'removeOffCanvasPaths', | ||||
|     'reusePaths', | ||||
|   ]), | ||||
| }; | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user