UNPKG

@reactivex/ix-esnext-esm

Version:

The Interactive Extensions for JavaScript

1 lines 1.47 kB
{"version":3,"sources":["add/iterable-operators/groupby.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAmB,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAW/C,MAAM,UAAU,YAAY,CAE1B,WAAqC,EACrC,kBAA8C,QAAQ;IAEtD,OAAO,OAAO,CAAwB,WAAW,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,CAAC,SAAS,CAAC,OAAO,GAAG,YAAY,CAAC","file":"groupby.js","sourcesContent":["import { IterableX } from '../../iterable/iterablex';\nimport { groupBy, GroupedIterable } from '../../iterable/operators/groupby';\nimport { identity } from '../../util/identity';\n\nexport function groupByProto<TSource, TKey>(\n this: IterableX<TSource>,\n keySelector: (value: TSource) => TKey\n): IterableX<GroupedIterable<TKey, TSource>>;\nexport function groupByProto<TSource, TKey, TValue>(\n this: IterableX<TSource>,\n keySelector: (value: TSource) => TKey,\n elementSelector?: (value: TSource) => TValue\n): IterableX<GroupedIterable<TKey, TValue>>;\nexport function groupByProto<TSource, TKey, TValue>(\n this: IterableX<TSource>,\n keySelector: (value: TSource) => TKey,\n elementSelector: (value: TSource) => TValue = identity\n): IterableX<GroupedIterable<TKey, TValue>> {\n return groupBy<TSource, TKey, TValue>(keySelector, elementSelector)(this);\n}\n\nIterableX.prototype.groupBy = groupByProto;\n\ndeclare module '../../iterable/iterablex' {\n interface IterableX<T> {\n groupBy: typeof groupByProto;\n }\n}\n"]}