import {defineConfig} from 'vite' import react, {reactCompilerPreset} from '@vitejs/plugin-react' import babel from '@rolldown/plugin-babel' import tailwindcss from '@tailwindcss/vite' import {fileURLToPath, URL} from 'node:url' // https://vite.dev/config/ export default defineConfig({ base: './', build: { rollupOptions: { output: { manualChunks(id) { if (!id.includes('node_modules')) { return } if (id.includes('/react-router-dom/')) { return 'router' } if (id.includes('/@tanstack/react-query/') || id.includes('/zustand/') || id.includes('/ky/')) { return 'data' } if (id.includes('/lucide-react/')) { return 'icons' } if (id.includes('/react/') || id.includes('/react-dom/')) { return 'react' } return 'vendor' }, }, }, }, server: { proxy: { '/api': { target: 'https://playx-api.cjdhr.top', changeOrigin: true, secure: true, }, }, }, resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)), }, }, plugins: [ tailwindcss(), react(), babel({presets: [reactCompilerPreset()]}) ], })