UNPKG

@tidyjs/tidy

Version:

Tidy up your data with JavaScript, inspired by dplyr and the tidyverse

23 lines (18 loc) 689 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var groupTraversal = require('./groupTraversal.js'); function groupMap(grouped, groupFn, keyFn = (keys) => keys[keys.length - 1]) { function addSubgroup(parentGrouped, keys) { const subgroup = new Map(); parentGrouped.set(keyFn(keys), subgroup); return subgroup; } function addLeaves(parentGrouped, keys, values) { parentGrouped.set(keyFn(keys), groupFn(values, keys)); } const outputGrouped = new Map(); groupTraversal.groupTraversal(grouped, outputGrouped, [], addSubgroup, addLeaves); return outputGrouped; } exports.groupMap = groupMap; //# sourceMappingURL=groupMap.js.map