- 37개 파일 IP → zioinfo.co.kr 치환 (소스/매뉴얼/설정/하네스) - Manager DrConsole/NetworkConsole/CsapConsole 빌드 + /var/www/manager/ 배포 - 테스트: Manager HTTP 200, ITSM 신규 API 7개 전체 200 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
47 lines
1.2 KiB
JavaScript
47 lines
1.2 KiB
JavaScript
"use strict";
|
|
|
|
const { parseSync, transformFromAstSync } = require("@babel/core");
|
|
const nullthrows = require("nullthrows");
|
|
function transform({ filename, options, plugins, src }) {
|
|
const OLD_BABEL_ENV = process.env.BABEL_ENV;
|
|
process.env.BABEL_ENV = options.dev
|
|
? "development"
|
|
: process.env.BABEL_ENV || "production";
|
|
try {
|
|
const babelConfig = {
|
|
caller: {
|
|
name: "metro",
|
|
bundler: "metro",
|
|
platform: options.platform,
|
|
},
|
|
ast: true,
|
|
babelrc: options.enableBabelRCLookup,
|
|
code: false,
|
|
cwd: options.projectRoot,
|
|
highlightCode: true,
|
|
filename,
|
|
plugins,
|
|
sourceType: "module",
|
|
cloneInputAst: false,
|
|
};
|
|
const sourceAst = options.hermesParser
|
|
? require("hermes-parser").parse(src, {
|
|
babel: true,
|
|
sourceType: babelConfig.sourceType,
|
|
})
|
|
: parseSync(src, babelConfig);
|
|
const transformResult = transformFromAstSync(sourceAst, src, babelConfig);
|
|
return {
|
|
ast: nullthrows(transformResult.ast),
|
|
metadata: transformResult.metadata,
|
|
};
|
|
} finally {
|
|
if (OLD_BABEL_ENV) {
|
|
process.env.BABEL_ENV = OLD_BABEL_ENV;
|
|
}
|
|
}
|
|
}
|
|
module.exports = {
|
|
transform,
|
|
};
|