import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { execSync } from 'node:child_process' // Short git SHA (or a timestamp fallback) baked into the bundle so the client // can detect when the server is running a newer build and reload itself. let buildVersion = process.env.VITE_BUILD_VERSION || String(Date.now()) if (!process.env.VITE_BUILD_VERSION) { try { buildVersion = execSync('git rev-parse --short HEAD').toString().trim() } catch { // not a git checkout; keep the timestamp } } export default defineConfig({ define: { __BUILD_VERSION__: JSON.stringify(buildVersion), }, plugins: [vue()], server: { port: 5173, proxy: { '/api': { target: 'http://localhost:8000', changeOrigin: true, ws: true, }, }, }, test: { environment: 'jsdom', globals: true, }, })