LendAndRegret/node_modules/es-toolkit/dist/compat/array/groupBy.mjs
2026-05-02 17:27:43 +08:00

16 lines
543 B
JavaScript

import { groupBy as groupBy$1 } from '../../array/groupBy.mjs';
import { identity } from '../../function/identity.mjs';
import { isArrayLike } from '../predicate/isArrayLike.mjs';
import { iteratee } from '../util/iteratee.mjs';
function groupBy(source, _getKeyFromItem) {
if (source == null) {
return {};
}
const items = isArrayLike(source) ? Array.from(source) : Object.values(source);
const getKeyFromItem = iteratee(_getKeyFromItem ?? identity);
return groupBy$1(items, getKeyFromItem);
}
export { groupBy };