FMHY-Website/website/utils.ts
taskylizard 16bf6230c0
k
2025-06-27 22:54:07 +00:00

15 lines
328 B
TypeScript

// prettier-ignore
export function groupBy<T, K extends keyof any>(
arr: T[],
key: (i: T) => K,
): Record<K, T[]> {
return arr.reduce(
(groups, item) => {
// biome-ignore lint/suspicious/noAssignInExpressions: <explanation>
(groups[key(item)] ||= []).push(item);
return groups;
},
{} as Record<K, T[]>,
);
}