55 lines
1.3 KiB
TypeScript
55 lines
1.3 KiB
TypeScript
import { defineConfig } from 'vite';
|
|
import vue from '@vitejs/plugin-vue';
|
|
import vueDevTools from 'vite-plugin-vue-devtools';
|
|
import path from 'node:path';
|
|
import AutoImport from 'unplugin-auto-import/vite';
|
|
import { NaiveUiResolver } from 'unplugin-vue-components/resolvers';
|
|
import Components from 'unplugin-vue-components/vite';
|
|
|
|
export default defineConfig({
|
|
root: path.resolve(__dirname, 'web-src'),
|
|
plugins: [
|
|
vue(),
|
|
vueDevTools(),
|
|
AutoImport({
|
|
imports: [
|
|
'vue',
|
|
'@vueuse/core',
|
|
'pinia',
|
|
'vue-router',
|
|
{
|
|
'naive-ui': ['useDialog', 'useMessage', 'useNotification', 'useLoadingBar'],
|
|
},
|
|
],
|
|
dts: 'types/AutoImport.d.ts',
|
|
}),
|
|
Components({
|
|
resolvers: [NaiveUiResolver()],
|
|
dts: 'types/Components.d.ts',
|
|
}),
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
'@': path.resolve(__dirname, 'web-src'),
|
|
},
|
|
},
|
|
build: {
|
|
outDir: path.resolve(__dirname, 'src/main/resources/html'),
|
|
emptyOutDir: true,
|
|
rollupOptions: {
|
|
output: {
|
|
chunkFileNames: 'static/js/[hash].js',
|
|
entryFileNames: 'static/js/[hash].js',
|
|
assetFileNames: 'static/[ext]/[hash].[ext]',
|
|
},
|
|
},
|
|
},
|
|
server: {
|
|
host: '0.0.0.0',
|
|
port: 5174,
|
|
proxy: {
|
|
'/apis': 'http://localhost:9963',
|
|
},
|
|
},
|
|
});
|