import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { fileURLToPath, URL } from 'node:url' const __dirname = fileURLToPath(new URL('.', import.meta.url)) export default defineConfig({ plugins: [vue()], server: { port: 8080, open: false, hmr: { overlay: false } }, build: { sourcemap: false, chunkSizeWarningLimit: 1200, rollupOptions: { output: { manualChunks(id) { if (id.includes('node_modules')) { if (id.includes('element-plus')) return 'vendor_element-plus'; if (id.includes('echarts')) return 'vendor_echarts_lazy'; if (id.includes('@microsoft') || id.includes('signalr')) return 'vendor_signalr'; if (id.includes('wangeditor') || id.includes('wangEditor')) return 'vendor_wangeditor_lazy'; if (id.includes('vue-draggable-next') || id.includes('sortablejs')) return 'vendor_drag'; if (id.includes('vue')) return 'vendor_vue'; return 'vendor_misc'; } } } } }, css: { devSourcemap: true, preprocessorOptions: { less: {} } }, resolve: { alias: { '@': fileURLToPath(new URL('src', import.meta.url)) }, extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json'] } })