UNPKG

@openshift-console/dynamic-plugin-sdk-webpack

Version:

Provides webpack ConsoleRemotePlugin used to build all dynamic plugin assets.

26 lines (25 loc) 943 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.settleAllPromises = void 0; /** * Unwrap the result of `Promise.allSettled` call as `[fulfilledValues, rejectedReasons, results]` tuple. */ const unwrapPromiseSettledResults = (results) => { const fulfilledValues = results .filter((r) => r.status === 'fulfilled') .map((r) => r.value); const rejectedReasons = results .filter((r) => r.status === 'rejected') .map((r) => r.reason); return [fulfilledValues, rejectedReasons, results]; }; /** * Await `Promise.allSettled(promises)` and unwrap the resulting objects. * * `Promise.allSettled` never rejects, therefore the resulting `Promise` never rejects. */ const settleAllPromises = async (promises) => { const results = await Promise.allSettled(promises); return unwrapPromiseSettledResults(results); }; exports.settleAllPromises = settleAllPromises;