/// import { defineConfig } from 'vite'; import react from '@vitejs/plugin-react'; import tailwindcss from '@tailwindcss/vite'; /** * Vite-Konfiguration der Syncova-Weboberflaeche. * * Die API-Adresse wird niemals fest im Code hinterlegt: im Entwicklungsbetrieb * laeuft sie ueber einen Proxy, im Produktionsbetrieb liefert derselbe Ursprung * Oberflaeche und API aus (PROMPT.md ยง98: keine hardcoded Production-URLs). */ export default defineConfig({ plugins: [react(), tailwindcss()], resolve: { // shadcn-uebliche Kurzform. Ohne sie wandern Importe in ../../.. -Ketten, // die beim Verschieben einer Datei still brechen. alias: { '@': new URL('./src', import.meta.url).pathname }, }, server: { // Der Entwicklungsserver bindet nur lokal. host: '127.0.0.1', port: 5173, proxy: { // Anfragen an die API werden an den lokalen Go-Dienst weitergereicht. // Dadurch bleibt der Ursprung gleich und es wird kein CORS benoetigt. '/api': { target: 'http://127.0.0.1:8080', changeOrigin: false, }, '/health': { target: 'http://127.0.0.1:8080', changeOrigin: false, }, }, }, build: { outDir: 'dist', // Source Maps erleichtern die Fehlersuche im Betrieb, ohne Quellcode auszuliefern. sourcemap: true, }, test: { environment: 'jsdom', globals: true, setupFiles: ['./src/test/setup.ts'], css: false, }, });