mirror of
https://github.com/johndoe6345789/low-code-react-app-b.git
synced 2026-04-24 13:44:54 +00:00
85 lines
2.2 KiB
TypeScript
85 lines
2.2 KiB
TypeScript
import tailwindcss from "@tailwindcss/vite";
|
|
import react from "@vitejs/plugin-react-swc";
|
|
import { defineConfig, PluginOption } from "vite";
|
|
|
|
import sparkPlugin from "@github/spark/spark-vite-plugin";
|
|
import createIconImportProxy from "@github/spark/vitePhosphorIconProxyPlugin";
|
|
import { resolve } from 'path'
|
|
|
|
const projectRoot = process.env.PROJECT_ROOT || import.meta.dirname
|
|
|
|
// https://vite.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
react(),
|
|
tailwindcss(),
|
|
// DO NOT REMOVE
|
|
createIconImportProxy() as PluginOption,
|
|
sparkPlugin() as PluginOption,
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
'@': resolve(projectRoot, 'src')
|
|
}
|
|
},
|
|
server: {
|
|
host: '0.0.0.0',
|
|
port: 5000,
|
|
strictPort: false,
|
|
},
|
|
build: {
|
|
rollupOptions: {
|
|
output: {
|
|
manualChunks: {
|
|
'react-vendor': ['react', 'react-dom'],
|
|
'ui-core': [
|
|
'@radix-ui/react-dialog',
|
|
'@radix-ui/react-dropdown-menu',
|
|
'@radix-ui/react-tabs',
|
|
'@radix-ui/react-select',
|
|
'@radix-ui/react-popover',
|
|
],
|
|
'ui-extended': [
|
|
'@radix-ui/react-accordion',
|
|
'@radix-ui/react-alert-dialog',
|
|
'@radix-ui/react-context-menu',
|
|
'@radix-ui/react-hover-card',
|
|
'@radix-ui/react-menubar',
|
|
'@radix-ui/react-navigation-menu',
|
|
'@radix-ui/react-scroll-area',
|
|
],
|
|
'form-components': [
|
|
'react-hook-form',
|
|
'@hookform/resolvers',
|
|
'zod',
|
|
],
|
|
'code-editor': ['@monaco-editor/react'],
|
|
'data-viz': ['d3', 'recharts'],
|
|
'workflow': ['reactflow'],
|
|
'icons': ['@phosphor-icons/react', 'lucide-react'],
|
|
'utils': ['clsx', 'tailwind-merge', 'date-fns', 'uuid'],
|
|
},
|
|
},
|
|
},
|
|
chunkSizeWarningLimit: 1000,
|
|
sourcemap: false,
|
|
minify: 'terser',
|
|
terserOptions: {
|
|
compress: {
|
|
drop_console: true,
|
|
drop_debugger: true,
|
|
pure_funcs: ['console.log', 'console.time', 'console.timeEnd'],
|
|
},
|
|
},
|
|
},
|
|
optimizeDeps: {
|
|
include: [
|
|
'react',
|
|
'react-dom',
|
|
'@radix-ui/react-dialog',
|
|
'@radix-ui/react-tabs',
|
|
],
|
|
exclude: ['@github/spark'],
|
|
},
|
|
});
|