cloud-drive-renamer/vite.config.ts
Zain 1176d08224 feat(onedrive): 新增 OneDrive 个人版支持,更新第 13 个平台文案与键盘隔离
新增 OneDrive 个人版适配器、MAIN 桥接、名称校验与冲突检测、目录身份与分页遍历。同步更新三语简介、商店素材、仓库描述及
manifest 域名注册。修复面板键盘冒泡至宿主页面的隔离与工具栏 Escape 作用域。修正 OneDrive 同步结果语义为手动刷新提示,
避免误报同步失败。补全对应单测与浏览器验收脚本。
2026-09-27 17:31:44 +08:00

63 行
2.2 KiB
TypeScript

import { defineConfig } from 'vite';
import { crx } from '@crxjs/vite-plugin';
import manifest from './manifest.json';
export default defineConfig({
plugins: [crx({ manifest: manifest as any })],
build: {
rollupOptions: {
input: {
popup: 'src/popup/index.html',
// ✅ 添加 page-script 作为显式入口点
'page-script-aliyun': 'src/adapters/aliyun/page-script.ts',
'page-script-baidu': 'src/adapters/baidu/page-script.ts',
'page-script-quark': 'src/adapters/quark/page-script.ts',
'page-script-uc': 'src/adapters/uc/page-script.ts',
'page-script-115': 'src/adapters/115/page-script.ts',
'page-script-123': 'src/adapters/123/page-script.ts',
'page-script-cmcc': 'src/adapters/cmcc/page-script.ts',
'page-script-esurfing': 'src/adapters/esurfing/page-script.ts',
'page-script-xunlei': 'src/adapters/xunlei/page-script.ts',
'page-script-woozooo': 'src/adapters/woozooo/page-script.ts',
'page-script-guangyapan': 'src/adapters/guangyapan/page-script.ts',
'page-script-wkbrowser': 'src/adapters/wkbrowser/page-script.ts',
'page-script-onedrive': 'src/adapters/onedrive/page-script.ts',
},
output: {
entryFileNames: (chunkInfo) => {
// ✅ 为 page-script 生成正确的输出路径
if (chunkInfo.name.startsWith('page-script-')) {
const platform = chunkInfo.name.replace('page-script-', '');
return `src/adapters/${platform}/page-script.js`;
}
return '[name].js';
},
},
},
outDir: 'dist',
emptyOutDir: true,
// 仅在开发环境生成 source maps,生产环境禁用以减小包体积
sourcemap: process.env.NODE_ENV === 'development',
// 确保将node_modules中的依赖正确打包
commonjsOptions: {
include: [/node_modules/],
transformMixedEsModules: true,
},
},
resolve: {
alias: {
'@': '/src',
},
},
// 确保webcomponents polyfill被正确处理
optimizeDeps: {
include: ['@webcomponents/webcomponentsjs'],
},
server: {
port: 5173,
hmr: {
host: 'localhost',
},
},
});