From 30ee34d3ea5fc6cb25a96c5e30cdb952253ec697 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Sat, 1 Feb 2025 17:36:16 +0100 Subject: [web-client] simple theme: vite plugins plg_svg2png & plg_svg2svg Signed-off-by: Markus Heiser --- client/simple/vite.config.js | 50 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 48 insertions(+), 2 deletions(-) (limited to 'client/simple/vite.config.js') diff --git a/client/simple/vite.config.js b/client/simple/vite.config.js index 4c3c3b566..edf3b1f80 100644 --- a/client/simple/vite.config.js +++ b/client/simple/vite.config.js @@ -6,6 +6,8 @@ import { resolve } from "node:path"; import { defineConfig } from "vite"; import stylelint from "vite-plugin-stylelint"; import { viteStaticCopy } from "vite-plugin-static-copy"; +import { plg_svg2png } from "./tools/plg.js"; +import { plg_svg2svg } from "./tools/plg.js"; const ROOT = "../.."; // root of the git reposetory @@ -23,7 +25,19 @@ const PATH = { templates: resolve(ROOT, "searx/templates/simple"), }; +const svg2svg_opts = { + plugins: [ + { name: "preset-default" }, + "sortAttrs", + "convertStyleToAttrs", + ] +}; +const svg2svg_favicon_opts = { + plugins: [ + { name: "preset-default" }, + "sortAttrs", + ] }; @@ -121,8 +135,40 @@ export default defineConfig({ { src: PATH.leaflet + "/*.{css,css.map}", dest: PATH.dist + "/css" }, { src: PATH.static + "/**/*", dest: PATH.dist }, ] - }) - ], + }), + + // SearXNG brand (static) + + plg_svg2png( + [ + { src: PATH.brand + "/searxng-wordmark.svg", dest: PATH.dist + "/img/favicon.png" }, + { src: PATH.brand + "/searxng.svg", dest: PATH.dist + "/img/searxng.png" }, + ], + ), + + // -- svg + plg_svg2svg( + [ + { src: PATH.brand + "/searxng.svg", dest: PATH.dist + "/img/searxng.svg" }, + { src: PATH.brand + "/img_load_error.svg", dest: PATH.dist + "/img/img_load_error.svg" }, + ], + svg2svg_opts, + ), + + // -- favicon + plg_svg2svg( + [ { src: PATH.brand + "/searxng-wordmark.svg", dest: PATH.dist + "/img/favicon.svg" } ], + svg2svg_favicon_opts, + ), + + // -- simple templates + plg_svg2svg( + [ + { src: PATH.brand + "/searxng-wordmark.svg", dest: PATH.templates + "/searxng-wordmark.min.svg" }, + ], + svg2svg_opts + ), + ] // end: plugins }); -- cgit v1.2.3