import path from 'node:path'; import { sveltekit } from '@sveltejs/kit/vite'; import { defineConfig, loadEnv, searchForWorkspaceRoot } from 'vite'; import { resolveBackendOrigin } from '../shared/frontend/backend'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, '.', ''); return { plugins: [sveltekit()], server: { allowedHosts: true, fs: { allow: [ searchForWorkspaceRoot(process.cwd()), path.resolve(__dirname, '../shared') ] }, hmr: { // When behind a reverse proxy (Traefik), use the client's host for WebSocket clientPort: 443, protocol: 'wss' }, proxy: { '/api': { target: resolveBackendOrigin(env), changeOrigin: true } } } }; });