UNPKG

graphql

Version:

A Query Language and Runtime which can target any service.

1 lines 821 B
{"version":3,"file":"groupBy.js","sourceRoot":"","sources":["../../src/jsutils/groupBy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,6BAA4B;AAOrD,MAAM,UAAU,OAAO,CACrB,IAAsB,EACtB,KAAqB;IAErB,MAAM,MAAM,GAAG,IAAI,cAAc,EAAQ,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { AccumulatorMap } from './AccumulatorMap.ts';\n\n/**\n * Groups array items into a Map, given a function to produce grouping key.\n *\n * @internal\n */\nexport function groupBy<K, T>(\n list: ReadonlyArray<T>,\n keyFn: (item: T) => K,\n): Map<K, ReadonlyArray<T>> {\n const result = new AccumulatorMap<K, T>();\n for (const item of list) {\n result.add(keyFn(item), item);\n }\n return result;\n}\n"]}