]> Untitled Git - lemmy-ui.git/blob - src/shared/utils/helpers/group-by.ts
Merge branch 'main' into breakout-role-utils
[lemmy-ui.git] / src / shared / utils / helpers / group-by.ts
1 export const groupBy = <T>(
2   array: T[],
3   predicate: (value: T, index: number, array: T[]) => string
4 ) =>
5   array.reduce((acc, value, index, array) => {
6     (acc[predicate(value, index, array)] ||= []).push(value);
7     return acc;
8   }, {} as { [key: string]: T[] });