{"version":3,"file":"mergeAll.js","sourceRoot":"","sources":["../../src/operator/mergeAll.ts"],"names":[],"mappings":";AAEA,yBAAwC,uBAAuB,CAAC,CAAA;AAKhE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,kBAAiD,UAA6C;IAA7C,0BAA6C,GAA7C,aAAqB,MAAM,CAAC,iBAAiB;IAC5F,MAAM,CAAC,mBAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAkB,CAAC;AACxD,CAAC;AAFe,gBAAQ,WAEvB,CAAA","sourcesContent":["import { Observable } from '../Observable';\nimport { Subscribable } from '../Observable';\nimport { mergeAll as higherOrder } from '../operators/mergeAll';\n\nexport function mergeAll(this: Observable, concurrent?: number): T;\nexport function mergeAll(this: Observable, concurrent?: number): Subscribable;\n\n/**\n * Converts a higher-order Observable into a first-order Observable which\n * concurrently delivers all values that are emitted on the inner Observables.\n *\n * Flattens an Observable-of-Observables.\n *\n * \n *\n * `mergeAll` subscribes to an Observable that emits Observables, also known as\n * a higher-order Observable. Each time it observes one of these emitted inner\n * Observables, it subscribes to that and delivers all the values from the\n * inner Observable on the output Observable. The output Observable only\n * completes once all inner Observables have completed. Any error delivered by\n * a inner Observable will be immediately emitted on the output Observable.\n *\n * @example Spawn a new interval Observable for each click event, and blend their outputs as one Observable\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var higherOrder = clicks.map((ev) => Rx.Observable.interval(1000));\n * var firstOrder = higherOrder.mergeAll();\n * firstOrder.subscribe(x => console.log(x));\n *\n * @example Count from 0 to 9 every second for each click, but only allow 2 concurrent timers\n * var clicks = Rx.Observable.fromEvent(document, 'click');\n * var higherOrder = clicks.map((ev) => Rx.Observable.interval(1000).take(10));\n * var firstOrder = higherOrder.mergeAll(2);\n * firstOrder.subscribe(x => console.log(x));\n *\n * @see {@link combineAll}\n * @see {@link concatAll}\n * @see {@link exhaust}\n * @see {@link merge}\n * @see {@link mergeMap}\n * @see {@link mergeMapTo}\n * @see {@link mergeScan}\n * @see {@link switch}\n * @see {@link zipAll}\n *\n * @param {number} [concurrent=Number.POSITIVE_INFINITY] Maximum number of inner\n * Observables being subscribed to concurrently.\n * @return {Observable} An Observable that emits values coming from all the\n * inner Observables emitted by the source Observable.\n * @method mergeAll\n * @owner Observable\n */\nexport function mergeAll(this: Observable, concurrent: number = Number.POSITIVE_INFINITY): Observable {\n return higherOrder(concurrent)(this) as Observable;\n}\n"]}