| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- import { fileURLToPath, URL } from 'node:url'
- import { defineConfig, loadEnv } 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 vueJsx from '@vitejs/plugin-vue-jsx'
- // https://vitejs.dev/config/
- export default defineConfig(({ command, mode }) => {
- process.env = { ...process.env, ...loadEnv(mode, process.cwd()) }
- const theme = process.env.VITE_THEME || 'default'
- return {
- base: process.env.VITE_BASE_URL,
- build: {
- sourcemap: false
- },
- plugins: [
- vue(),
- vueJsx(),
- AutoImport({
- resolvers: [ElementPlusResolver()]
- }),
- Components({
- resolvers: [ElementPlusResolver()]
- })
- ],
- resolve: {
- alias: {
- '@': fileURLToPath(new URL('./src', import.meta.url))
- }
- },
- server: {
- host: '0.0.0.0'
- },
- define: {
- 'process.env': process.env
- },
- css: {
- preprocessorOptions: {
- scss: {
- additionalData: `@use "@/styles/themes/${theme}/index.scss";
- @use "@/styles/themes/${theme}/dark.scss";`,
- api: 'modern-compiler'
- }
- }
- },
- html: {}
- }
- })
|