Files
flyer-crawler.projectium.com/vite.config.ts

47 lines
1.4 KiB
TypeScript

// vite.config.ts
/// <reference types="vitest" />
import path from 'path';
import { defineConfig as defineViteConfig } from 'vite';
import { defineConfig as defineVitestConfig } from 'vitest/config';
import react from '@vitejs/plugin-react';
console.log('--- [EXECUTION PROOF] vite.config.ts is being loaded. ---');
const vitestConfig = defineVitestConfig({
test: {
environment: 'jsdom',
setupFiles: ['./src/vitest.setup.ts'],
coverage: {
provider: 'v8', // or 'istanbul'
// Reporters to use. 'text' will show a summary in the console.
// 'html' will generate a full report in the directory specified below.
reporter: ['text', 'html'],
reportsDirectory: './coverage',
include: ['src/**/*.{ts,tsx}'], // This now correctly includes all src files for coverage analysis.
// Exclude files that are not relevant for coverage.
exclude: [
'src/main.tsx', 'src/vite-env.d.ts', 'src/types.ts', 'src/vitest.setup.ts',
'src/**/*.test.{ts,tsx}', 'src/components/icons', 'src/services/logger.ts', 'src/services/notificationService.ts'
],
}
},
});
const viteConfig = defineViteConfig({
plugins: [react()],
// No explicit 'css' block. Let Vite do its job.
server: {
port: 3000,
host: '0.0.0.0',
},
resolve: {
alias: {
'@': path.resolve(process.cwd(), './src'),
}
},
});
export default { ...viteConfig, test: vitestConfig.test };