/// <reference types="vitest/config" />
import tailwindcss from '@tailwindcss/vite';
import react from '@vitejs/plugin-react';
import path from 'node:path';
import { defineConfig } from 'vite';

export default defineConfig({
  plugins: [react(), tailwindcss()],
  test: {
    // e2e/ appartient à Playwright — vitest ne joue que les tests unitaires
    include: ['src/**/*.test.{ts,tsx}'],
  },
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src'),
      // Le paquet partagé est compilé en CJS pour l'API ; côté Vite on
      // consomme sa SOURCE TypeScript (exports nommés, HMR, pas de rebuild).
      '@siop/shared': path.resolve(__dirname, '../../packages/shared/src/index.ts'),
    },
  },
  server: {
    // Même topologie qu'en prod (nginx : /api → apps/api sans préfixe)
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
        rewrite: (p) => p.replace(/^\/api/, ''),
      },
    },
  },
});
