You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.7 KiB
JavaScript
62 lines
1.7 KiB
JavaScript
import { defineConfig } from 'vite'
|
|
import path from 'node:path'
|
|
import electron from 'vite-plugin-electron/simple'
|
|
import Vue from '@vitejs/plugin-vue'
|
|
import Pages from 'vite-plugin-pages'
|
|
import Layouts from 'vite-plugin-vue-layouts'
|
|
import Components from 'unplugin-vue-components/vite'
|
|
import AutoImport from 'unplugin-auto-import/vite'
|
|
import {ElementPlusResolver} from 'unplugin-vue-components/resolvers'
|
|
import {viteCommonjs} from '@originjs/vite-plugin-commonjs'
|
|
import Unocss from 'unocss/vite'
|
|
import {presetAttributify, presetUno, presetIcons} from 'unocss'
|
|
export default defineConfig({
|
|
resolve: {
|
|
alias: {
|
|
'~/': `${path.resolve(__dirname, 'src')}/`
|
|
}
|
|
},
|
|
plugins: [
|
|
Vue({
|
|
reactivityTransform: true
|
|
}),
|
|
viteCommonjs(),
|
|
Pages(),
|
|
Layouts(),
|
|
AutoImport({
|
|
resolvers: [ElementPlusResolver()],
|
|
imports: [
|
|
'vue',
|
|
'vue/macros',
|
|
'vue-router',
|
|
'@vueuse/core'
|
|
],
|
|
}),
|
|
Components({
|
|
resolvers: [ElementPlusResolver()]
|
|
}),
|
|
Unocss({
|
|
presets: [
|
|
presetAttributify({}),
|
|
presetUno(),
|
|
presetIcons({
|
|
warn: true,
|
|
})],
|
|
}),
|
|
electron({
|
|
main: {
|
|
// Shortcut of `build.lib.entry`.
|
|
entry: 'electron/main.js',
|
|
},
|
|
preload: {
|
|
// Shortcut of `build.rollupOptions.input`.
|
|
// Preload scripts may contain Web assets, so use the `build.rollupOptions.input` instead `build.lib.entry`.
|
|
input: path.join(__dirname, 'electron/preload.js'),
|
|
},
|
|
// Ployfill the Electron and Node.js built-in modules for Renderer process.
|
|
// See 👉 https://github.com/electron-vite/vite-plugin-electron-renderer
|
|
renderer: {},
|
|
}),
|
|
],
|
|
})
|