@make-mjs/main
Version:
29 lines • 1.26 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const object_1 = require("@tsfun/object");
const utils_1 = require("@make-mjs/utils");
const code_1 = require("@make-mjs/code");
const get_module_container_1 = require("../utils/get-module-container");
exports.DEFAULT_PATH_TRANSFORM_FUNC = path => utils_1.replacePathExtension(path, '.mjs');
async function* transform(options) {
const { files, getNewPath = exports.DEFAULT_PATH_TRANSFORM_FUNC, codeTransformOptions = {} } = options;
for await (const { path, content } of files) {
const newPath = getNewPath(path);
const parserOptions = {
...codeTransformOptions.parserOptions || code_1.DEFAULT_PARSER_OPTIONS,
sourceFilename: path
};
const newCodeTransOpts = object_1.objectExtends(codeTransformOptions, {
moduleContainer: Array.from(get_module_container_1.getModuleContainer(path)),
parserOptions
});
const transformResult = await code_1.transformCode(content, newCodeTransOpts);
yield {
path: newPath,
content: transformResult.code
};
}
}
exports.transform = transform;
exports.default = transform;
//# sourceMappingURL=transform.js.map
;