Files
CeruMusic/electron.vite.config.ts

80 lines
2.0 KiB
TypeScript
Raw Normal View History

2025-08-13 13:33:43 +08:00
import { resolve } from 'path'
2025-08-18 12:14:09 +08:00
import { defineConfig, externalizeDepsPlugin } from 'electron-vite'
2025-08-13 13:33:43 +08:00
import vue from '@vitejs/plugin-vue'
2025-08-16 23:48:06 +08:00
import vueDevTools from 'vite-plugin-vue-devtools'
2025-08-13 14:44:53 +08:00
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { TDesignResolver } from '@tdesign-vue-next/auto-import-resolver'
2025-08-17 23:21:53 +08:00
import wasm from 'vite-plugin-wasm'
import { NaiveUiResolver } from 'unplugin-vue-components/resolvers'
2025-08-17 23:21:53 +08:00
import topLevelAwait from 'vite-plugin-top-level-await'
2025-08-13 13:33:43 +08:00
export default defineConfig({
main: {
plugins: [externalizeDepsPlugin()],
resolve: {
alias: {
'@common': resolve('src/common')
}
},
build: {
rollupOptions: {
input: {
index: resolve(__dirname, 'src/main/index.ts'),
lyric: resolve(__dirname, 'src/web/lyric.html')
}
}
}
2025-08-13 13:33:43 +08:00
},
preload: {
plugins: [externalizeDepsPlugin()],
resolve: {
alias: {
'@common': resolve('src/common')
}
}
2025-08-13 13:33:43 +08:00
},
renderer: {
2025-08-13 14:44:53 +08:00
plugins: [
vue(),
2025-08-16 23:48:06 +08:00
vueDevTools(),
2025-08-17 23:21:53 +08:00
wasm(),
topLevelAwait(),
2025-08-13 14:44:53 +08:00
AutoImport({
resolvers: [
TDesignResolver({
library: 'vue-next'
})
2025-09-21 03:08:05 +08:00
],
imports: [
'vue',
{
'naive-ui': ['useDialog', 'useMessage', 'useNotification', 'useLoadingBar']
}
],
2025-09-21 03:08:05 +08:00
dts: true
2025-08-13 14:44:53 +08:00
}),
Components({
resolvers: [
TDesignResolver({
library: 'vue-next'
}),
NaiveUiResolver()
2025-09-21 03:08:05 +08:00
],
dts: true
2025-08-13 14:44:53 +08:00
})
],
2025-08-18 12:14:09 +08:00
base: './',
2025-08-13 13:33:43 +08:00
resolve: {
alias: {
2025-08-16 15:37:53 +08:00
'@renderer': resolve('src/renderer/src'),
2025-08-16 23:48:06 +08:00
'@assets': resolve('src/renderer/src/assets'),
2025-08-16 15:37:53 +08:00
'@components': resolve('src/renderer/src/components'),
'@services': resolve('src/renderer/src/services'),
'@types': resolve('src/renderer/src/types'),
'@store': resolve('src/renderer/src/store'),
'@common': resolve('src/common')
2025-08-13 13:33:43 +08:00
}
2025-08-13 14:44:53 +08:00
}
2025-08-13 13:33:43 +08:00
}
})