2026-06-06 20:12:40 +07:00
parent de84b2bf48
commit 97ac0f71f5
13682 changed files with 1125938 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
/**
* Like `Promise.allSettled()` but throws an error if any promises are rejected.
*/
export const allSettledWithThrow = async (promises) => {
const results = await Promise.allSettled(promises);
const rejected = results.filter((result) => result.status === 'rejected');
if (rejected.length) {
for (const result of rejected) {
console.error(result.reason);
}
throw new Error(`${rejected.length} promise(s) failed - see the above errors`);
}
// Note: TS was complaining about using `.filter().map()` here for some reason
const values = [];
for (const result of results) {
if (result.status === 'fulfilled') {
values.push(result.value);
}
}
return values;
};
//# sourceMappingURL=Util.mjs.map