diff --git a/packages/builder/vite.config.js b/packages/builder/vite.config.js index ecaedc3cbe..4a0ffca8d4 100644 --- a/packages/builder/vite.config.js +++ b/packages/builder/vite.config.js @@ -12,9 +12,31 @@ const ignoredWarnings = [ "a11y-click-events-have-key-events", ] +const copyFonts = dest => + viteStaticCopy({ + targets: [ + { + src: "../../node_modules/@fontsource/source-sans-pro", + dest, + }, + { + src: "../../node_modules/remixicon/fonts/*", + dest, + }, + ], + }) + export default defineConfig(({ mode }) => { const isProduction = mode === "production" const env = loadEnv(mode, process.cwd()) + + // Plugins to only run in dev + const devOnlyPlugins = [ + // Copy fonts to an additional path so that svelte's automatic + // prefixing of the base URL path can still resolve assets + copyFonts("builder/fonts"), + ] + return { test: { setupFiles: ["./vitest.setup.js"], @@ -60,18 +82,8 @@ export default defineConfig(({ mode }) => { ), "process.env.SENTRY_DSN": JSON.stringify(process.env.SENTRY_DSN), }), - viteStaticCopy({ - targets: [ - { - src: "../../node_modules/@fontsource/source-sans-pro", - dest: isProduction ? "fonts" : "builder/fonts", - }, - { - src: "../../node_modules/remixicon/fonts/*", - dest: isProduction ? "fonts" : "builder/fonts", - }, - ], - }), + copyFonts("fonts"), + ...(isProduction ? [] : devOnlyPlugins), ], optimizeDeps: { exclude: ["@roxi/routify"],