| 
									
										
										
										
											2025-08-29 09:35:52 +08:00
										 |  |  | import { resolve } from 'path' | 
					
						
							|  |  |  | import { defineConfig, externalizeDepsPlugin } from 'electron-vite' | 
					
						
							|  |  |  | import vue from '@vitejs/plugin-vue' | 
					
						
							|  |  |  | import AutoImport from 'unplugin-auto-import/vite' | 
					
						
							|  |  |  | import Components from 'unplugin-vue-components/vite' | 
					
						
							|  |  |  | import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' | 
					
						
							|  |  |  | import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' | 
					
						
							|  |  |  | import path from 'path' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export default defineConfig({ | 
					
						
							|  |  |  |   main: { | 
					
						
							|  |  |  |     plugins: [externalizeDepsPlugin()] | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   preload: { | 
					
						
							|  |  |  |     plugins: [externalizeDepsPlugin()] | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   renderer: { | 
					
						
							|  |  |  |     resolve: { | 
					
						
							|  |  |  |       alias: { | 
					
						
							|  |  |  |         '@renderer': resolve('src/renderer/src'), | 
					
						
							|  |  |  |         '@': resolve('src/renderer/src') | 
					
						
							|  |  |  |       } | 
					
						
							|  |  |  |     }, | 
					
						
							|  |  |  |     plugins: [ | 
					
						
							|  |  |  |       vue(), | 
					
						
							|  |  |  |       AutoImport({ | 
					
						
							|  |  |  |         imports: ['vue'], | 
					
						
							|  |  |  |         dts: 'src/auto-imports.d.ts', // 自动生成类型声明文件
 | 
					
						
							|  |  |  |         resolvers: [ElementPlusResolver()] | 
					
						
							|  |  |  |       }), | 
					
						
							|  |  |  |       Components({ | 
					
						
							|  |  |  |         resolvers: [ElementPlusResolver()] | 
					
						
							|  |  |  |       }), | 
					
						
							|  |  |  |       // SVG图标插件配置
 | 
					
						
							|  |  |  |       // 配置SVG图标插件
 | 
					
						
							|  |  |  |       createSvgIconsPlugin({ | 
					
						
							|  |  |  |         iconDirs: [path.resolve(process.cwd(), 'src/renderer/src/icons/svg')], | 
					
						
							|  |  |  |         symbolId: 'icon-[name]', | 
					
						
							|  |  |  |         // 自动清除 SVG 中的 fill 和 stroke 属性
 | 
					
						
							|  |  |  |         svgoOptions: { | 
					
						
							|  |  |  |           plugins: [{ name: 'removeAttrs', params: { attrs: ['fill', 'stroke', 'stroke-width'] } }] | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  |     ] | 
					
						
							|  |  |  |     // server: {
 | 
					
						
							| 
									
										
										
										
											2025-10-11 16:29:34 +08:00
										 |  |  |     //   port: 8848,
 | 
					
						
							| 
									
										
										
										
											2025-08-29 09:35:52 +08:00
										 |  |  |     //   proxy: {
 | 
					
						
							|  |  |  |     //     '/api': {
 | 
					
						
							| 
									
										
										
										
											2025-10-11 16:29:34 +08:00
										 |  |  |     //       target: localStorage.getItem('ip') || 'http://127.0.0.1:8848',
 | 
					
						
							| 
									
										
										
										
											2025-08-29 09:35:52 +08:00
										 |  |  |     //       changeOrigin: true,
 | 
					
						
							|  |  |  |     //       rewrite: (path) => path.replace(/^\/api/, '')
 | 
					
						
							|  |  |  |     //     }
 | 
					
						
							|  |  |  |     //   }
 | 
					
						
							|  |  |  |     // }
 | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | }) |