import { defineConfig, loadEnv } from 'vite'; import vue from '@vitejs/plugin-vue'; import Inspect from 'vite-plugin-inspect'; import VueSetupExtend from 'vite-plugin-vue-setup-extend'; import svgSprites from 'rollup-plugin-svg-sprites'; import { fileURLToPath, URL } from 'node:url'; import path from 'node:path'; import commonjs from '@rollup/plugin-commonjs'; // https://vite.dev/config/ export default defineConfig((_, mode) => { const env = loadEnv(mode, process.cwd(), ''); return { plugins: [ vue(), Inspect(), VueSetupExtend(), svgSprites({ vueComponent: true, exclude: ['node_modules/**'], symbolId(filePath) { const filename = path.basename(filePath); return 'icon-' + filename.substring(0, filename.lastIndexOf('.')); } }), commonjs({ include: ['node_modules/**'], }), ], base: './', define: { 'process.env.MODE': JSON.stringify(env.MODE) }, resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) }, extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue'] }, server: { host: 'localhost', port: 5274 } } });