@akala/core
Version:
41 lines • 1.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const timers_1 = require("timers");
const es6_promise_1 = require("es6-promise");
es6_promise_1.polyfill();
function Promisify(o) {
return Promise.resolve(o);
}
exports.Promisify = Promisify;
function isPromiseLike(o) {
return o && o['then'] && typeof (o['then']) == 'function';
}
exports.isPromiseLike = isPromiseLike;
function when(promises) {
return Promise.all(promises);
}
exports.when = when;
function whenOrTimeout(promise, timeoutInMs) {
return new Promise((resolve, reject) => {
var timedOut = false;
var timeOut = timers_1.setTimeout(function () {
timedOut = true;
reject('timeout');
}, timeoutInMs);
promise.then(function (data) {
timers_1.clearTimeout(timeOut);
resolve(data);
}, function (rejection) {
timers_1.clearTimeout(timeOut);
reject(rejection);
});
});
}
exports.whenOrTimeout = whenOrTimeout;
var PromiseStatus;
(function (PromiseStatus) {
PromiseStatus[PromiseStatus["Pending"] = 0] = "Pending";
PromiseStatus[PromiseStatus["Resolved"] = 1] = "Resolved";
PromiseStatus[PromiseStatus["Rejected"] = 2] = "Rejected";
})(PromiseStatus = exports.PromiseStatus || (exports.PromiseStatus = {}));
//# sourceMappingURL=promiseHelpers.js.map