65 lines
1.6 KiB
JavaScript
65 lines
1.6 KiB
JavaScript
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 { resolve } from 'path'
|
|
import { readFileSync } from 'fs'
|
|
|
|
const wailsConfig = JSON.parse(readFileSync(resolve(__dirname, '../wails.json'), 'utf-8'))
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
vue(),
|
|
|
|
AutoImport({
|
|
imports: [
|
|
'vue',
|
|
'vue-router',
|
|
'vue-i18n',
|
|
'pinia',
|
|
{
|
|
'@core/api/index.js': ['api'],
|
|
'@core/constants.js': [
|
|
'SERVICE_NAMES', 'SITE_STATUS', 'PROXY_STATUS', 'VACCESS_TYPE',
|
|
'CERT_MODE', 'THEME', 'LOCALE', 'STORAGE_KEYS', 'AUTO_REFRESH_INTERVAL', 'APP_VERSION',
|
|
],
|
|
},
|
|
],
|
|
dirs: [
|
|
'src/Core/composables',
|
|
'src/Core/stores',
|
|
'src/Core/utils',
|
|
],
|
|
vueTemplate: true,
|
|
dts: 'src/auto-imports.d.ts',
|
|
}),
|
|
|
|
Components({
|
|
dirs: [
|
|
'src/Design/components/ui',
|
|
'src/Design/components/layout',
|
|
'src/Design/components/services',
|
|
'src/Design/components/sites',
|
|
'src/Design/components/proxies',
|
|
'src/Design/components/vaccess', ],
|
|
dts: 'src/components.d.ts',
|
|
}),
|
|
],
|
|
|
|
server: {
|
|
port: 4444,
|
|
},
|
|
|
|
define: {
|
|
__APP_VERSION__: JSON.stringify(wailsConfig.info.productVersion),
|
|
},
|
|
|
|
resolve: {
|
|
alias: {
|
|
'@': resolve(__dirname, 'src'),
|
|
'@core': resolve(__dirname, 'src/Core'),
|
|
'@design': resolve(__dirname, 'src/Design'),
|
|
},
|
|
},
|
|
})
|