MCPcopy Create free account
hub / github.com/hydro-dev/Hydro / transform

Function transform

framework/register/index.js:67–84  ·  view source on GitHub ↗
(filename, tsx = true)

Source from the content-addressed store, hash-verified

65}
66
67function transform(filename, tsx = true) {
68 const code = fs.readFileSync(filename, 'utf-8');
69 let result;
70 try {
71 result = tryTransform(filename, code, tsx);
72 } catch (e) {
73 if (!e.message.includes('Top-level await')) throw e;
74 result = tryTransform(filename, code.replace(/await import *\(/g, 'require('), tsx);
75 console.warn('transforming top-level await to require for file ', filename);
76 }
77 if (result.warnings.length) console.warn(result.warnings);
78 map[filename] = result.map;
79 if (process.env.LOADER_DUMP_CODE && filename.endsWith(`/${process.env.LOADER_DUMP_CODE}`)) {
80 console.log(`-----${filename}-----`);
81 console.log(result.code.split('/# sourceMappingURL=')[0]);
82 }
83 return result.code;
84}
85const _script = new vm.Script('"Hydro"', { produceCachedData: true });
86const bytecode = (_script.createCachedData && _script.createCachedData.call)
87 ? _script.createCachedData()

Callers 1

index.jsFile · 0.85

Calls 3

tryTransformFunction · 0.85
logMethod · 0.80
warnMethod · 0.45

Tested by

no test coverage detected