63 lines
1.7 KiB
TypeScript
63 lines
1.7 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react-swc'
|
|
import path from 'path'
|
|
import tailwindcss from "@tailwindcss/vite"
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [react(), tailwindcss()],
|
|
resolve: {
|
|
alias: {
|
|
'@': path.resolve(__dirname, './src'),
|
|
'@config': path.resolve(__dirname, './src/config'),
|
|
'@router': path.resolve(__dirname, './src/router'),
|
|
'@api': path.resolve(__dirname, './src/apis'),
|
|
'@stores': path.resolve(__dirname, './src/stores'),
|
|
'@pages': path.resolve(__dirname, './src/pages'),
|
|
'@components': path.resolve(__dirname, './src/components'),
|
|
'@utils': path.resolve(__dirname, './src/utils'),
|
|
'@types': path.resolve(__dirname, './src/types'),
|
|
'@assets': path.resolve(__dirname, './src/assets'),
|
|
'@lib': path.resolve(__dirname, './src/lib'),
|
|
'@hooks': path.resolve(__dirname, './src/hooks'),
|
|
'@styles': path.resolve(__dirname, './src/styles')
|
|
}
|
|
},
|
|
server: {
|
|
port: 3000,
|
|
open: true,
|
|
hmr: {
|
|
overlay: true
|
|
}
|
|
},
|
|
build: {
|
|
target: 'esnext',
|
|
outDir: 'build',
|
|
sourcemap: true,
|
|
rollupOptions: {
|
|
output: {
|
|
manualChunks: {
|
|
vendor: ['react', 'react-dom'],
|
|
radix: ['@radix-ui'],
|
|
charts: ['recharts'],
|
|
utils: ['date-fns', 'clsx', 'tailwind-merge'],
|
|
hooks: ['react-hook-form'],
|
|
icons: ['lucide-react']
|
|
}
|
|
}
|
|
},
|
|
chunkSizeWarningLimit: 1000
|
|
},
|
|
optimizeDeps: {
|
|
include: [
|
|
'react',
|
|
'react-dom',
|
|
'@radix-ui/react-slot',
|
|
'@radix-ui/react-dialog',
|
|
'@radix-ui/react-dropdown-menu',
|
|
'lucide-react',
|
|
'date-fns',
|
|
'clsx',
|
|
'tailwind-merge'
|
|
]
|
|
}
|
|
}) |