ng-implementation/implem/.angular/cache/20.1.4/babel-webpack/9ec82e72263d253872425457c4897108.json

1 line
9.2 KiB
JSON
Raw Normal View History

2025-08-19 10:58:54 +02:00
{"ast":null,"code":"import { Observable } from '../Observable';\nimport { innerFrom } from '../observable/innerFrom';\nimport { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber, OperatorSubscriber } from './OperatorSubscriber';\nexport function groupBy(keySelector, elementOrOptions, duration, connector) {\n return operate(function (source, subscriber) {\n var element;\n if (!elementOrOptions || typeof elementOrOptions === 'function') {\n element = elementOrOptions;\n } else {\n duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector;\n }\n var groups = new Map();\n var notify = function (cb) {\n groups.forEach(cb);\n cb(subscriber);\n };\n var handleError = function (err) {\n return notify(function (consumer) {\n return consumer.error(err);\n });\n };\n var activeGroups = 0;\n var teardownAttempted = false;\n var groupBySourceSubscriber = new OperatorSubscriber(subscriber, function (value) {\n try {\n var key_1 = keySelector(value);\n var group_1 = groups.get(key_1);\n if (!group_1) {\n groups.set(key_1, group_1 = connector ? connector() : new Subject());\n var grouped = createGroupedObservable(key_1, group_1);\n subscriber.next(grouped);\n if (duration) {\n var durationSubscriber_1 = createOperatorSubscriber(group_1, function () {\n group_1.complete();\n durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe();\n }, undefined, undefined, function () {\n return groups.delete(key_1);\n });\n groupBySourceSubscriber.add(innerFrom(duration(grouped)).subscribe(durationSubscriber_1));\n }\n }\n group_1.next(element ? element(value) : value);\n } catch (err) {\n handleError(err);\n }\n }, function () {\n return notify(function (consumer) {\n return consumer.complete();\n });\n }, handleError, function () {\n return groups.clear();\n }, function () {\n teardownAttempted = true;\n return activeGroups === 0;\n });\n source.subscribe(groupBySourceSubscriber);\n function createGroupedObservable(key, groupSubject) {\n var result = new Observable(function (groupSubscriber) {\n activeGroups++;\n var innerSub = groupSubject.subscribe(groupSubscriber);\n return function () {\n innerSub.unsubscribe();\n --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe();\n };\n });\n result.key = key;\n return result;\n }\n });\n}\n//# sourceMappingURL=groupBy.js.map","map":{"version":3,"names":["Observable","innerFrom","Subject","operate","createOperatorSubscriber","OperatorSubscriber","groupBy","keySelector","elementOrOptions","duration","connector","source","subscriber","element","groups","Map","notify","cb","forEach","handleError","err","consumer","error","activeGroups","teardownAttempted","groupBySourceSubscriber","value","key_1","group_1","get","set","grouped","createGroupedObservable","next","durationSubscriber_1","complete","unsubscribe","undefined","delete","add","subscribe","clear","key","groupSubject","result","groupSubscriber","innerSub"],"sources":["/home/poule/encrypted/stockage-syncable/www/development/html/ng-implementation/implem/node_modules/rxjs/dist/esm5/internal/operators/groupBy.js"],"sourcesContent":["import { Observable } from '../Observable';\nimport { innerFrom } from '../observable/innerFrom';\nimport { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber, OperatorSubscriber } from './OperatorSubscriber';\nexport function groupBy(keySelector, elementOrOptions, duration, connector) {\n return operate(function (source, subscriber) {\n var element;\n if (!elementOrOptions || typeof elementOrOpti