"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.installExitHooks = installExitHooks; function _chalk() { const data = _interopRequireDefault(require("chalk")); _chalk = function () { return data; }; return data; } function _xdl() { const data = require("@expo/xdl"); _xdl = function () { return data; }; return data; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function installExitHooks(projectDir, onStop = _xdl().Project.stopAsync) { // install ctrl+c handler that writes non-running state to directory if (process.platform === 'win32') { require('readline').createInterface({ input: process.stdin, output: process.stdout }).on('SIGINT', () => { process.kill(process.pid, 'SIGINT'); }); } const killSignals = ['SIGINT', 'SIGTERM']; for (const signal of killSignals) { process.on(signal, () => { console.log(_chalk().default.blue('\nStopping packager...')); onStop(projectDir).then(() => { console.log(_chalk().default.green('Packager stopped.')); process.exit(); }); }); } } //# sourceMappingURL=__sourcemaps__/exit.js.map