@code-pushup/utils 0.6.6 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -1556,6 +1556,22 @@ var verboseUtils = (verbose) => ({
1556
1556
  log: getLogVerbose(verbose),
1557
1557
  exec: getExecVerbose(verbose)
1558
1558
  });
1559
+
1560
+ // packages/utils/src/lib/group-by-status.ts
1561
+ function groupByStatus(results) {
1562
+ return results.reduce(
1563
+ (acc, result) => {
1564
+ if (result.status === "fulfilled") {
1565
+ return { ...acc, fulfilled: [...acc.fulfilled, result] };
1566
+ }
1567
+ if (result.status === "rejected") {
1568
+ return { ...acc, rejected: [...acc.rejected, result] };
1569
+ }
1570
+ return acc;
1571
+ },
1572
+ { fulfilled: [], rejected: [] }
1573
+ );
1574
+ }
1559
1575
  export {
1560
1576
  CODE_PUSHUP_DOMAIN,
1561
1577
  FOOTER_PREFIX,
@@ -1577,6 +1593,7 @@ export {
1577
1593
  getLatestCommit,
1578
1594
  getProgressBar,
1579
1595
  git,
1596
+ groupByStatus,
1580
1597
  importEsmModule,
1581
1598
  isPromiseFulfilledResult,
1582
1599
  isPromiseRejectedResult,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-pushup/utils",
3
- "version": "0.6.6",
3
+ "version": "0.8.0",
4
4
  "dependencies": {
5
5
  "@code-pushup/models": "*",
6
6
  "bundle-require": "^4.0.1",
package/src/index.d.ts CHANGED
@@ -12,3 +12,4 @@ export { reportToStdout } from './lib/report-to-stdout';
12
12
  export { ScoredReport, scoreReport } from './lib/scoring';
13
13
  export { CliArgsObject, countOccurrences, distinct, factorOf, objectToCliArgs, objectToEntries, objectToKeys, toArray, toUnixPath, } from './lib/transform';
14
14
  export { verboseUtils } from './lib/verbose-utils';
15
+ export { groupByStatus } from './lib/group-by-status';
@@ -0,0 +1,4 @@
1
+ export declare function groupByStatus<T>(results: PromiseSettledResult<T>[]): {
2
+ fulfilled: PromiseFulfilledResult<T>[];
3
+ rejected: PromiseRejectedResult[];
4
+ };