Files
2025-10-09 11:18:26 +08:00

29 lines
694 B
JavaScript

const ChildProcess = require('child_process');
const Chalk = require('chalk');
function compile(directory) {
return new Promise((resolve, reject) => {
const tscProcess = ChildProcess.exec('npx tsc', {
cwd: directory,
});
tscProcess.stdout.on('data', data =>
process.stdout.write(Chalk.yellowBright(`[tsc] `) + Chalk.white(data.toString()))
);
tscProcess.stderr.on('data', data =>
process.stderr.write(Chalk.yellowBright(`[tsc] `) + Chalk.white(data.toString()))
);
tscProcess.on('exit', exitCode => {
if (exitCode > 0) {
reject(exitCode);
} else {
resolve();
}
});
});
}
module.exports = compile;