Files
moeplayer/rollup.config.js
T
王阳 159603341e 阶段2:拆分为 ES Module + Rollup 构建,重写 README
- src/ 下拆分为入口/语言包/默认配置/主函数/工具模块,主函数整体搬入零改动
- rollup 打包 UMD(moeplayer.js + moeplayer.min.js),用户使用方式不变
- 库拷贝逻辑移至 scripts/copy-libs.js
- README 重写:中文文档、快速开始、路线图、致谢原作者
- index.html 增加皮肤切换演示(默认/红色/西瓜)
2026-07-21 11:16:25 +08:00

50 lines
1.3 KiB
JavaScript

/*
* rollup 构建配置
* 功能:把 src/ 下的 ES Module 打包成与旧版等价的 UMD 产物
* 1. moeplayer/js/moeplayer.js —— 未压缩版
* 2. moeplayer/js/moeplayer.min.js —— terser 压缩版(保留版权注释)
* 运行时依赖(hls.js/flv.js/mpegts.js)的拷贝由 scripts/copy-libs.js 完成
* 用法:npm run build
*/
import terser from '@rollup/plugin-terser';
// 产物头部版权注释(与 src/index.js 顶部一致)
const banner = `/*
* 软件名称:MoePlayer
* 版本:X3
* 版权:MoePlayer 项目(fork 自 ckplayer, www.ckplayer.com)
* 开源协议:MIT
*/`;
const outputBase = {
format: 'umd',
name: 'MoePlayer',
// 仅导出 moeplayerEmbed 函数本身,与旧 UMD 的 module.exports = factory() 行为一致
exports: 'default',
banner
};
export default {
input: 'src/index.js',
// 关闭 tree-shaking:完整保留所有工具函数(含暂未被引用的),与旧单文件内容一致
treeshake: false,
output: [
{
...outputBase,
file: 'moeplayer/js/moeplayer.js'
},
{
...outputBase,
file: 'moeplayer/js/moeplayer.min.js',
plugins: [
terser({
format: {
// 保留文件头部的版权注释
comments: /^!|软件名称|版权/
}
})
]
}
]
};