inceptum
Version:
hipages take on the foundational library for enterprise-grade apps written in NodeJS
36 lines • 967 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
class PromiseUtil {
static try(f) {
return new Promise((resolve, reject) => {
try {
resolve(f());
}
catch (e) {
reject(e);
}
});
}
static map(arr, f) {
return Promise.all(arr.map(f));
}
static mapSeries(arr, f) {
let p = Promise.resolve();
const result = [];
for (let i = 0; i < arr.length; i++) {
const index = i;
p = p.then(() => f(arr[i]))
.then((res) => {
result[index] = res;
});
}
return p.then(() => result);
}
static sleepPromise(ms, returnVal) {
return new Promise((resolve) => {
setTimeout(() => { resolve(returnVal); }, ms);
});
}
}
exports.PromiseUtil = PromiseUtil;
//# sourceMappingURL=PromiseUtil.js.map