search-syntax-pro/vite.config.ts
Zain 0b39914071 feat(floating-panel): 新增悬浮按钮功能及高级搜索面板
实现搜索引擎页面的悬浮按钮功能,支持拖动调整位置和点击打开高级搜索面板。新增浮动面板组件,包含完整的搜索表单和交互逻辑。优化URL解码和搜索引擎选择器配置,提升用户体验。

- 新增浮动面板组件及样式
- 实现悬浮按钮的拖动和点击交互
- 添加URL安全解码工具函数
- 配置搜索引擎选择器和注入位置
- 优化多语言支持和响应式布局
- 添加性能测试和单元测试
2025-11-25 09:07:49 +08:00

45 行
1.5 KiB
TypeScript

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [react()],
build: {
rollupOptions: {
input: {
popup: resolve(__dirname, 'src/popup/index.html'),
detached: resolve(__dirname, 'src/detached/index.html'),
options: resolve(__dirname, 'src/options/index.html'),
'floating-panel': resolve(__dirname, 'src/floating-panel/index.html'),
background: resolve(__dirname, 'src/background/index.ts'),
content: resolve(__dirname, 'src/content/index.ts'),
},
output: {
entryFileNames: '[name].js',
chunkFileNames: '[name].js',
assetFileNames: '[name].[ext]',
// Chrome 扩展的 content scripts 和 service workers 不支持 ES modules
// 由于Vite多入口构建限制,共享代码仍会被提取为单独的chunk
// 后处理脚本会将这些chunk内联到需要它们的入口点中
}
},
outDir: 'dist',
emptyOutDir: true,
},
define: {
__IS_DEV__: process.env.NODE_ENV === 'development'
},
resolve: {
alias: {
'@': resolve(__dirname, 'src'),
'@/components': resolve(__dirname, 'src/components'),
'@/services': resolve(__dirname, 'src/services'),
'@/types': resolve(__dirname, 'src/types'),
'@/utils': resolve(__dirname, 'src/utils'),
'@/hooks': resolve(__dirname, 'src/hooks'),
'@/i18n': resolve(__dirname, 'src/i18n')
}
}
})