mirror of
https://github.com/hcengineering/platform.git
synced 2026-08-31 12:19:47 +02:00
Signed-off-by: Kristina Fefelova <kristin.fefelova@gmail.com> Co-authored-by: Andrey Sobolev <haiodo@gmail.com>
16 lines
326 B
TypeScript
16 lines
326 B
TypeScript
export function groupByArray<T, K> (array: T[], keyProvider: (item: T) => K): Map<K, T[]> {
|
|
const result = new Map<K, T[]>()
|
|
|
|
array.forEach((item) => {
|
|
const key = keyProvider(item)
|
|
|
|
if (!result.has(key)) {
|
|
result.set(key, [item])
|
|
} else {
|
|
result.get(key)?.push(item)
|
|
}
|
|
})
|
|
|
|
return result
|
|
}
|