66 lines
1.4 KiB
TypeScript
66 lines
1.4 KiB
TypeScript
// Plugins
|
|
import { URL, fileURLToPath } from 'node:url'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import AutoImport from 'unplugin-auto-import/vite'
|
|
import VueDevTools from 'vite-plugin-vue-devtools'
|
|
import vuetify from 'vite-plugin-vuetify'
|
|
|
|
// Utilities
|
|
import { defineConfig } from 'vite'
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
VueDevTools(),
|
|
vue({
|
|
template: {
|
|
compilerOptions: {
|
|
isCustomElement: tag => tag === 'swiper-container' || tag === 'swiper-slide',
|
|
},
|
|
},
|
|
}),
|
|
|
|
// https://github.com/vuetifyjs/vuetify-loader/tree/next/packages/vite-plugin
|
|
vuetify({
|
|
// autoImport: true,
|
|
styles: {
|
|
configFile: 'src/styles/vuetify/_variables.scss',
|
|
},
|
|
}),
|
|
AutoImport({
|
|
imports: ['vue', 'vue-router'],
|
|
vueTemplate: true,
|
|
}),
|
|
],
|
|
define: { 'process.env': {} },
|
|
resolve: {
|
|
alias: {
|
|
'@': fileURLToPath(new URL('./src', import.meta.url)),
|
|
'@appConfig': fileURLToPath(new URL('./appConfig.ts', import.meta.url)),
|
|
'@axios': fileURLToPath(new URL('./src/plugins/axios.ts', import.meta.url)),
|
|
},
|
|
extensions: [
|
|
'.js',
|
|
'.json',
|
|
'.jsx',
|
|
'.mjs',
|
|
'.ts',
|
|
'.tsx',
|
|
'.vue',
|
|
],
|
|
},
|
|
server: {
|
|
port: 5173,
|
|
},
|
|
build: {
|
|
chunkSizeWarningLimit: 5000,
|
|
},
|
|
optimizeDeps: {
|
|
exclude: ['vuetify'],
|
|
entries: [
|
|
'./src/**/*.vue',
|
|
],
|
|
},
|
|
|
|
})
|