import { defineConfig } from 'vite'; import { sveltekit } from '@sveltejs/kit/vite'; import tailwindcss from '@tailwindcss/vite'; export default defineConfig({ cacheDir: 'node_modules/.vite', plugins: [ tailwindcss(), sveltekit() // <-- Must come after Tailwind ], server: { watch: { // Do not trigger HMR/reload for documentation or test files ignored: ['**/documentation/**', '**/tests/**'] } }, optimizeDeps: { // Pre-bundle smaller deps; exclude large CJS libs we prefer to handle via SSR/noExternal exclude: ['@codemirror/*'], include: [] }, ssr: { // Avoid forcing ESM conversion on large editor libs; let them be handled as-is noExternal: ['@codemirror/*'] }, build: { sourcemap: false, minify: 'esbuild', rollupOptions: { output: { // Keep all svelte internals in one chunk to prevent circular // dependency warnings between runtime.js and index-client.js manualChunks(id) { if (id.includes('/node_modules/svelte/')) { return 'svelte-vendor'; } } } } } });