import { defineConfig, loadEnv } from "vite"; import react from "@vitejs/plugin-react"; import path from "path"; export default defineConfig(({ mode }) => { const env = loadEnv(mode, process.cwd(), ''); const tunnelDomain = env.VITE_APP_DOMAIN; const proxyTarget = env.VITE_DEV_API_PROXY_TARGET || "http://127.0.0.1:8000"; const usePolling = String(env.CHOKIDAR_USEPOLLING || "false").toLowerCase() === "true"; return { plugins: [react()], resolve: { alias: { "@": path.resolve(__dirname, "./src"), }, }, server: { port: 5174, allowedHosts: true, watch: usePolling ? { usePolling: true, interval: 150, } : undefined, hmr: tunnelDomain ? { host: tunnelDomain, clientPort: 443, protocol: 'wss', } : undefined, proxy: { "/api": { target: proxyTarget, changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ""), }, }, }, }; });