UNPKG

@electron-forge/cli

Version:

A complete tool for building modern Electron applications

32 lines (28 loc) 998 B
import chalk from 'chalk'; function redConsoleError(msg: string) { console.error(chalk.red(msg)); } process.on('unhandledRejection', (reason: string, promise: Promise<unknown>) => { redConsoleError('\nAn unhandled rejection has occurred inside Forge:'); redConsoleError(reason.toString().trim()); promise.catch((err: Error) => { if ('stack' in err) { const usefulStack = err.stack; if (usefulStack?.startsWith(reason.toString().trim())) { redConsoleError(usefulStack.substring(reason.toString().trim().length + 1).trim()); } } process.exit(1); }); }); process.on('uncaughtException', (err) => { if (err && err.message && err.stack) { redConsoleError('\nAn unhandled exception has occurred inside Forge:'); redConsoleError(err.message); redConsoleError(err.stack); } else { redConsoleError('\nElectron Forge was terminated:'); redConsoleError(typeof err === 'string' ? err : JSON.stringify(err)); } process.exit(1); });