UNPKG

@fluent-org/logger

Version:
39 lines 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.pDefer = exports.awaitTimeout = exports.awaitNextTick = exports.awaitAtMost = void 0; const awaitAtMost = (promise, timeout) => { let timeoutId = null; const racePromise = Promise.race([ promise, new Promise(resolve => (timeoutId = setTimeout(() => { timeoutId = null; resolve(); }, timeout))), ]); racePromise .finally(() => { if (timeoutId) clearTimeout(timeoutId); }) .catch(() => { }); return racePromise; }; exports.awaitAtMost = awaitAtMost; const awaitNextTick = () => { return new Promise(r => process.nextTick(r)); }; exports.awaitNextTick = awaitNextTick; const awaitTimeout = (timeout) => { return new Promise(r => setTimeout(r, timeout)); }; exports.awaitTimeout = awaitTimeout; const pDefer = () => { const deferred = {}; deferred.promise = new Promise((resolve, reject) => { deferred.resolve = resolve; deferred.reject = reject; }); return deferred; }; exports.pDefer = pDefer; //# sourceMappingURL=util.js.map