@remotion/cli
Version:
Control Remotion features using the `npx remotion` command
28 lines (27 loc) • 1.05 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.handleCtrlC = exports.registerCleanupJob = exports.cleanupBeforeQuit = void 0;
const log_1 = require("./log");
const cleanupJobs = [];
const cleanupBeforeQuit = ({ indent, logLevel, }) => {
log_1.Log.verbose({ indent, logLevel }, 'Cleaning up...');
const time = Date.now();
for (const job of cleanupJobs) {
job.job();
log_1.Log.verbose({ indent, logLevel }, `Cleanup job "${job.label}" done`);
}
log_1.Log.verbose({ indent, logLevel }, `Cleanup done in ${Date.now() - time}ms`);
};
exports.cleanupBeforeQuit = cleanupBeforeQuit;
const registerCleanupJob = (label, job) => {
cleanupJobs.push({ job, label });
};
exports.registerCleanupJob = registerCleanupJob;
const handleCtrlC = ({ indent, logLevel, }) => {
process.on('SIGINT', () => {
log_1.Log.info({ indent: false, logLevel });
(0, exports.cleanupBeforeQuit)({ indent, logLevel });
process.exit(0);
});
};
exports.handleCtrlC = handleCtrlC;