import { defineConfig } from 'vite';

export default defineConfig({
    server: {
        host: true, // Permet l'accès depuis le réseau local (pour tester sur mobile)
        port: 3000,
        open: true,
        allowedHosts: [
            'jeu.maison43.duckdns.org', // Domaine DuckDNS autorisé
            'localhost',
            '127.0.0.1',
        ],
        // HMR désactivé temporairement - problème de proxy WebSocket avec Nginx Proxy Manager
        // Pour l'instant, rafraîchir manuellement la page après modifications
        hmr: false,
    },
    plugins: [
        {
            name: 'log-client-connections',
            configureServer(server) {
                server.middlewares.use((req, res, next) => {
                    const ip =
                        (req.headers['x-forwarded-for'] as string) ||
                        req.socket.remoteAddress ||
                        'unknown';
                    const ua = req.headers['user-agent'] || 'unknown';
                    const url = req.url || '';
                    console.log(`[vite] ${ip} ${req.method} ${url} ua="${ua}"`);
                    next();
                });
            },
        },
    ],
    build: {
        outDir: 'dist',
        assetsDir: 'assets',
        sourcemap: true,
    },
    publicDir: 'public',
});
