44 lines
1.2 KiB
TypeScript
44 lines
1.2 KiB
TypeScript
/// <reference types="vitest" />
|
|
import tailwindcss from '@tailwindcss/vite';
|
|
import react from '@vitejs/plugin-react';
|
|
import path from 'path';
|
|
import {defineConfig, loadEnv} from 'vite';
|
|
|
|
export default defineConfig(({mode}) => {
|
|
const env = loadEnv(mode, '.', '');
|
|
return {
|
|
plugins: [react(), tailwindcss()],
|
|
define: {
|
|
'process.env.GEMINI_API_KEY': JSON.stringify(env.GEMINI_API_KEY),
|
|
},
|
|
resolve: {
|
|
alias: {
|
|
'@': path.resolve(__dirname, '.'),
|
|
},
|
|
},
|
|
test: {
|
|
globals: true,
|
|
environment: 'jsdom',
|
|
setupFiles: './src/test/setup.ts',
|
|
include: ['src/**/*.{test,spec}.{ts,tsx}'],
|
|
pool: 'forks',
|
|
forks: {
|
|
singleFork: true,
|
|
},
|
|
},
|
|
server: {
|
|
// HMR is disabled in AI Studio via DISABLE_HMR env var.
|
|
// Do not modify—file watching is disabled to prevent flickering during agent edits.
|
|
hmr: process.env.DISABLE_HMR !== 'true',
|
|
// Disable file watching when DISABLE_HMR is true to save CPU during agent edits.
|
|
watch: process.env.DISABLE_HMR === 'true' ? null : {},
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://localhost:3000',
|
|
changeOrigin: true,
|
|
},
|
|
},
|
|
},
|
|
};
|
|
});
|