summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'MLEB/Translate/.svgo.config.js')
-rw-r--r--MLEB/Translate/.svgo.config.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/MLEB/Translate/.svgo.config.js b/MLEB/Translate/.svgo.config.js
new file mode 100644
index 00000000..e2abffbd
--- /dev/null
+++ b/MLEB/Translate/.svgo.config.js
@@ -0,0 +1,55 @@
+/**
+ * SVGO Configuration
+ * Recommended options from:
+ * https://www.mediawiki.org/wiki/Manual:Coding_conventions/SVG#Exemplified_safe_configuration
+ */
+const { extendDefaultPlugins } = require( 'svgo' );
+module.exports = {
+ multipass: true,
+ plugins: extendDefaultPlugins( [
+ {
+ name: 'cleanupIDs',
+ active: false
+ },
+ {
+ name: 'removeDesc',
+ active: false
+ },
+ {
+ name: 'removeRasterImages',
+ active: true
+ },
+ {
+ name: 'removeTitle',
+ active: false
+ },
+ {
+ name: 'removeViewBox',
+ active: false
+ },
+ {
+ // If the SVG doesn't start with an XML declaration, then its MIME type will
+ // be detected as "text/plain" rather than "image/svg+xml" by libmagic and,
+ // consequently, MediaWiki's CSSMin CSS minifier. libmagic's default database
+ // currently requires that SVGs contain an XML declaration:
+ // https://github.com/threatstack/libmagic/blob/master/magic/Magdir/sgml#L5
+ name: 'removeXMLProcInst',
+ active: false
+ },
+ {
+ name: 'sortAttrs',
+ active: true
+ }
+ ] ),
+
+ // Configure the indent (default 4 spaces) used by `--pretty` here:
+ // @see https://github.com/svg/svgo/blob/master/lib/svgo/js2svg.js#L6 for more config options
+ //
+ // Unfortunately EOL cannot be configured, SVGO uses the platform's EOL marker.
+ // On non-unix systems the linebreaks will be normalized to LF (unix) only at git commit,
+ // assuming `core.autocrlf` is 'true' (default) or 'input'.
+ js2svg: {
+ indent: "\t",
+ pretty: true,
+ }
+}