import path from 'path'; import { defineConfig, loadEnv } from 'vite'; import react from '@vitejs/plugin-react'; import tailwindcss from '@tailwindcss/vite'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, '.', ''); // Servido atrás de um proxy TLS (ex.: dev.scoreodonto.com via nginx/traefik): // libera o host e roteia o websocket de HMR por wss:443. Só ativa quando // DEV_PUBLIC_HOST está definido (container dev) — `npm run dev` local não muda. const proxiedHost = process.env.DEV_PUBLIC_HOST; return { server: { port: 3000, host: 'localhost', ...(proxiedHost ? { allowedHosts: [proxiedHost], hmr: { protocol: 'wss', host: proxiedHost, clientPort: 443 }, } : {}), }, plugins: [ react(), tailwindcss(), ], define: { 'process.env.API_KEY': JSON.stringify(env.GEMINI_API_KEY), 'process.env.GEMINI_API_KEY': JSON.stringify(env.GEMINI_API_KEY) }, resolve: { alias: { '@': path.resolve(__dirname, '.'), } } }; });