2
0
Эх сурвалжийг харах

CI: Add `svgo` pre-commit hook

Thaddeus Crews 1 жил өмнө
parent
commit
4af1068688

+ 3 - 0
.editorconfig

@@ -21,3 +21,6 @@ indent_size = 4
 [*.{yml,yaml}]
 [*.{yml,yaml}]
 indent_style = space
 indent_style = space
 indent_size = 2
 indent_size = 2
+
+[*.svg]
+insert_final_newline = false

+ 8 - 0
.pre-commit-config.yaml

@@ -118,6 +118,14 @@ repos:
         pass_filenames: false
         pass_filenames: false
         additional_dependencies: ['jsdoc@^4.0.3']
         additional_dependencies: ['jsdoc@^4.0.3']
 
 
+      - id: svgo
+        name: svgo
+        language: node
+        entry: svgo
+        files: \.svg$
+        args: [--quiet, --config, misc/utility/svgo.config.mjs]
+        additional_dependencies: ["[email protected]"]
+
       - id: copyright-headers
       - id: copyright-headers
         name: copyright-headers
         name: copyright-headers
         language: python
         language: python

+ 20 - 0
misc/utility/svgo.config.mjs

@@ -0,0 +1,20 @@
+export default {
+	multipass: true,
+	precision: 2,
+	plugins: [
+		{
+			name: "preset-default",
+			params: {
+				overrides: {
+					removeHiddenElems: false,
+					convertPathData: false,
+				},
+			},
+		},
+		"convertStyleToAttrs",
+		"removeScriptElement",
+		"removeStyleElement",
+		"reusePaths",
+		"sortAttrs",
+	],
+};