mutation-testing-metrics
Advanced tools
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"group-by.d.ts","sourceRoot":"","sources":["../../../src/helpers/group-by.ts"],"names":[],"mappings":"AAAA,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAOhH"} | ||
| {"version":3,"file":"group-by.d.ts","sourceRoot":"","sources":["../../../src/helpers/group-by.ts"],"names":[],"mappings":"AAAA,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAiBhH"} |
| export function groupBy(arr, criteria) { | ||
| // @ts-expect-error -- groupBy exists in Node 22+ | ||
| if (Object.groupBy) { | ||
| // @ts-expect-error -- groupBy exists in Node 22+ | ||
| // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return | ||
| return Object.groupBy(arr, criteria); | ||
| } | ||
| return arr.reduce((acc, item) => { | ||
@@ -7,4 +13,4 @@ const key = criteria(item); | ||
| return acc; | ||
| }, {}); | ||
| }, Object.create(null)); | ||
| } | ||
| //# sourceMappingURL=group-by.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"group-by.js","sourceRoot":"","sources":["../../../src/helpers/group-by.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAA2B,GAAQ,EAAE,QAA2B;IACrF,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,GAA4B,EAAE,IAAI,EAAE,EAAE;QACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAChB,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"} | ||
| {"version":3,"file":"group-by.js","sourceRoot":"","sources":["../../../src/helpers/group-by.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAA2B,GAAQ,EAAE,QAA2B;IACrF,iDAAiD;IACjD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,iDAAiD;QACjD,kGAAkG;QAClG,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,GAAG,CAAC,MAAM,CACf,CAAC,GAA4B,EAAE,IAAI,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAChB,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC,EACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAA4B,CAC/C,CAAC;AACJ,CAAC"} |
+8
-4
| { | ||
| "name": "mutation-testing-metrics", | ||
| "version": "3.7.1", | ||
| "version": "3.7.2", | ||
| "description": "Utility functions to calculate mutation testing metrics.", | ||
@@ -29,8 +29,12 @@ "type": "module", | ||
| "dependencies": { | ||
| "mutation-testing-report-schema": "3.7.1" | ||
| "mutation-testing-report-schema": "3.7.2" | ||
| }, | ||
| "devDependencies": { | ||
| "eslint-config-mte": "3.7.0" | ||
| "@stryker-mutator/core": "catalog:", | ||
| "@stryker-mutator/mocha-runner": "catalog:", | ||
| "@stryker-mutator/typescript-checker": "catalog:", | ||
| "eslint": "catalog:", | ||
| "eslint-config-mte": "3.7.2" | ||
| }, | ||
| "gitHead": "683d6872c856cd6ff87c532cd1a375927670a6cd" | ||
| "gitHead": "9a5b81f237aa376d2896bcb9924daeac7c630ef9" | ||
| } |
| export function groupBy<K extends PropertyKey, T>(arr: T[], criteria: (element: T) => K): Partial<Record<K, T[]>> { | ||
| return arr.reduce((acc: Partial<Record<K, T[]>>, item) => { | ||
| const key = criteria(item); | ||
| acc[key] ??= []; | ||
| acc[key].push(item); | ||
| return acc; | ||
| }, {}); | ||
| // @ts-expect-error -- groupBy exists in Node 22+ | ||
| if (Object.groupBy) { | ||
| // @ts-expect-error -- groupBy exists in Node 22+ | ||
| // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return | ||
| return Object.groupBy(arr, criteria); | ||
| } | ||
| return arr.reduce( | ||
| (acc: Partial<Record<K, T[]>>, item) => { | ||
| const key = criteria(item); | ||
| acc[key] ??= []; | ||
| acc[key].push(item); | ||
| return acc; | ||
| }, | ||
| Object.create(null) as Partial<Record<K, T[]>>, | ||
| ); | ||
| } |
120198
0.84%1862
0.81%5
400%+ Added
- Removed