XuqmGroup-RNSDK/packages/log/metro/index.js
XuqmGroup b2058840bc feat(rn-log): 添加 metro plugin 存根 — withXuqmLog
打 Release 包时自动包裹 Metro config,后续补全 SourceMap 上传逻辑。
2026-06-16 12:20:04 +08:00

35 行
1.0 KiB
JavaScript

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

'use strict'
/**
* withXuqmLog(metroConfig)
* 包裹 Metro 配置,打 Release 包时自动上传 SourceMap。
* 当前为存根实现,后续补全 SourceMap 上传逻辑。
*/
function withXuqmLog(metroConfig) {
return {
...metroConfig,
serializer: {
...metroConfig.serializer,
customSerializer: async (entryPoint, preModules, graph, options) => {
// 调用原始 serializer
const baseSerializer = metroConfig.serializer?.customSerializer
const result = baseSerializer
? await baseSerializer(entryPoint, preModules, graph, options)
: undefined
// 仅 Release 包上传 SourceMapdev 模式跳过)
if (!options.dev) {
// TODO: 补全 SourceMap 上传逻辑
// 1. 读取 .xuqmconfig 或 xuqm.config.js 获取 logApiUrl
// 2. 读取 sourceMapUrl 对应的 .map 文件
// 3. 上传到 logApiUrl/log/v1/sourcemaps/upload
}
return result
},
},
}
}
module.exports = { withXuqmLog }