parent
7362b4dc5c
commit
bd6d9f3399
@ -0,0 +1,29 @@ |
|||||||
|
const fs=require('fs'); |
||||||
|
|
||||||
|
const requireFn=` |
||||||
|
const require=function require(name) { |
||||||
|
if(require.cache[name]) return require.cache[name]; |
||||||
|
if(!require.source[name]) throw new Error("Cannot require "+name+": not found"); |
||||||
|
require.cache[name]=require.source[name]() || true; |
||||||
|
return require.cache[name]; |
||||||
|
}; |
||||||
|
require.cache=Object.create(null); |
||||||
|
require.source=Object.create(null); |
||||||
|
window.require=require; |
||||||
|
`;
|
||||||
|
|
||||||
|
let outputCode=[requireFn]; |
||||||
|
process.argv |
||||||
|
.slice(2) |
||||||
|
.map(a => [a, a.match(/([a-zA-Z_][a-zA-Z0-9_-]*).js$/)[1]]) |
||||||
|
.forEach(([modFile, modName]) => { |
||||||
|
const modSource=fs.readFileSync(modFile, 'utf8'); |
||||||
|
outputCode.push(` |
||||||
|
require.source['${modName}']=(a => a.bind(a)) (function ${modName}() { |
||||||
|
'use strict'; |
||||||
|
${modSource} |
||||||
|
}); |
||||||
|
`);
|
||||||
|
}); |
||||||
|
|
||||||
|
fs.writeSync(1, outputCode.join('\n')); |
Loading…
Reference in new issue