import { defineConfig } from "vite"; import react from "@vitejs/plugin-react-swc"; import path from "path"; // https://vitejs.dev/config/ export default defineConfig(({ mode }) => ({ server: { host: "::", port: 8080, }, plugins: [ react(), ], resolve: { alias: { "@": path.resolve(__dirname, "./src"), }, }, build: { // Otimizações para produção minify: 'esbuild', sourcemap: false, cssCodeSplit: true, rollupOptions: { output: { manualChunks: { // Separar vendor chunks para melhor cache vendor: ['react', 'react-dom', 'react-router-dom'], ui: ['@radix-ui/react-dialog', '@radix-ui/react-dropdown-menu', '@radix-ui/react-select', '@radix-ui/react-tabs', '@radix-ui/react-toast'], charts: ['recharts'], query: ['@tanstack/react-query'], supabase: ['@supabase/supabase-js'], dateUtils: ['date-fns', 'date-fns-tz'], pdf: ['jspdf', 'jspdf-autotable'], icons: ['lucide-react'], }, }, }, chunkSizeWarningLimit: 1000, }, // Otimizações para desenvolvimento optimizeDeps: { include: ['react', 'react-dom', 'react-router-dom', '@tanstack/react-query', '@supabase/supabase-js'], }, }));