UNPKG

@graphql-mesh/cli

Version:
21 lines (20 loc) 649 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.registerTerminateHandler = void 0; const terminateEvents = ['SIGINT', 'SIGTERM']; const terminateHandlers = new Set(); for (const eventName of terminateEvents) { process.once(eventName, () => { for (const handler of terminateHandlers) { handler(eventName); terminateHandlers.delete(handler); } }); } function registerTerminateHandler(callback) { terminateHandlers.add(callback); return () => { terminateHandlers.delete(callback); }; } exports.registerTerminateHandler = registerTerminateHandler;