47 lines
1.4 KiB
TypeScript
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 }; |