Files
SmartUp/frontend/vite.config.ts
T

46 lines
1.4 KiB
TypeScript

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import { resolve } from 'path'
export default defineConfig({
plugins: [
vue(),
AutoImport({ resolvers: [ElementPlusResolver()] }),
Components({ resolvers: [ElementPlusResolver({ importStyle: 'css' })] }),
],
resolve: {
alias: { '@': resolve(__dirname, 'src') },
},
server: {
proxy: {
'/api': { target: 'http://localhost:8000', changeOrigin: true },
'/healthz': { target: 'http://localhost:8000', changeOrigin: true },
},
},
build: {
outDir: 'dist',
sourcemap: false,
target: 'es2020',
cssCodeSplit: true,
chunkSizeWarningLimit: 800,
rollupOptions: {
output: {
manualChunks(id: string) {
if (id.includes('/node_modules/element-plus/') || id.includes('/node_modules/@element-plus/')) {
return 'vendor-el';
}
if (id.includes('/node_modules/vue/') || id.includes('/node_modules/pinia/') || id.includes('/node_modules/vue-router/')) {
return 'vendor-vue';
}
if (id.includes('/node_modules/axios/')) {
return 'vendor-axios';
}
},
},
},
},
})