'use strict'; Object.defineProperty(exports, '__esModule', { value: true, }); exports.groupBy = groupBy; /** * Groups array items into a Map, given a function to produce grouping key. */ function groupBy(list, keyFn) { const result = new Map(); for (const item of list) { const key = keyFn(item); const group = result.get(key); if (group === undefined) { result.set(key, [item]); } else { group.push(item); } } return result; }