22 lines
		
	
	
		
			792 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			792 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /**
 | |
|  * 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
 |