CityGame/apps/frontend/vite.config.ts

46 lines
1.2 KiB
TypeScript

/// <reference types="vitest" />
import { defineConfig } from 'vitest/config';
import react from '@vitejs/plugin-react';
import path from 'path';
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
root: __dirname,
cacheDir: '../../node_modules/.vite/apps/frontend',
server: {
port: 5173,
host: true,
proxy: {
// Proxy all /api requests to the Spring Boot backend during dev
'/api': {
target: 'http://localhost:8080',
changeOrigin: true,
secure: false,
},
},
},
build: {
outDir: path.resolve(__dirname, '../../dist/apps/frontend'),
emptyOutDir: true,
reportCompressedSize: true,
commonjsOptions: {
transformMixedEsModules: true,
},
sourcemap: true,
},
test: {
globals: true,
environment: 'jsdom',
setupFiles: ['./src/test-setup.ts'],
include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
reporters: ['default', 'junit'],
outputFile: {
junit: path.resolve(__dirname, '../../reports/apps/frontend/junit.xml'),
},
coverage: {
reportsDirectory: '../../coverage/apps/frontend',
provider: 'v8',
},
},
});