import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';

// https://vite.dev/config/
export default defineConfig({
  plugins: [react()],
  build: {
    rolldownOptions: {
      output: {
        codeSplitting: {
          groups: [
            {
              name: 'react',
              test: /node_modules[\\/](react|react-dom|react-router|react-router-dom)[\\/]/,
              priority: 30,
            },
            {
              name: 'echarts',
              test: /node_modules[\\/](echarts|zrender)[\\/]/,
              priority: 20,
              maxSize: 600_000,
            },
            {
              name: 'antd',
              test: /node_modules[\\/](@ant-design|antd|rc-[^\\/]+)[\\/]/,
              priority: 10,
              maxSize: 600_000,
            },
          ],
        },
      },
    },
  },
  server: {
    port: 3002,
    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true,
      },
    },
  },
  optimizeDeps: {
    include: [
      'dayjs',
      'dayjs/locale/zh-cn',
      'dayjs/plugin/customParseFormat',
      'dayjs/plugin/advancedFormat',
      'dayjs/plugin/weekday',
      'dayjs/plugin/localeData',
      'dayjs/plugin/weekOfYear',
      'dayjs/plugin/weekYear',
      'dayjs/plugin/updateLocale',
      'antd/es/locale/zh_CN',
    ],
  },
});
