Files
smart-crop-ui/crop-x/vite.config.ts

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'
]
}
})