{"version":3,"file":"concat.js","sourceRoot":"","sources":["../../src/operator/concat.ts"],"names":[],"mappings":";AAEA,uBAAsC,qBAAqB,CAAC,CAAA;AAE5D,uBAAuC,sBAAsB,CAAC;AAArD,uCAAqD;AAW9D,mCAAmC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH;IAAkD,qBAAwD;SAAxD,WAAwD,CAAxD,sBAAwD,CAAxD,IAAwD;QAAxD,oCAAwD;;IACxG,MAAM,CAAC,eAAW,eAAI,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAFe,cAAM,SAErB,CAAA","sourcesContent":["import { Observable, ObservableInput } from '../Observable';\nimport { IScheduler } from '../Scheduler';\nimport { concat as higherOrder } from '../operators/concat';\n\nexport { concat as concatStatic } from '../observable/concat';\n\n/* tslint:disable:max-line-length */\nexport function concat(this: Observable, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, v2: ObservableInput, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, v2: ObservableInput, v3: ObservableInput, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, v2: ObservableInput, v3: ObservableInput, v4: ObservableInput, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, v2: ObservableInput, v3: ObservableInput, v4: ObservableInput, v5: ObservableInput, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, v2: ObservableInput, v3: ObservableInput, v4: ObservableInput, v5: ObservableInput, v6: ObservableInput, scheduler?: IScheduler): Observable;\nexport function concat(this: Observable, ...observables: Array | IScheduler>): Observable;\nexport function concat(this: Observable, ...observables: Array | IScheduler>): Observable;\n/* tslint:enable:max-line-length */\n\n/**\n * Creates an output Observable which sequentially emits all values from every\n * given input Observable after the current Observable.\n *\n * Concatenates multiple Observables together by\n * sequentially emitting their values, one Observable after the other.\n *\n * \n *\n * Joins this Observable with multiple other Observables by subscribing to them\n * one at a time, starting with the source, and merging their results into the\n * output Observable. Will wait for each Observable to complete before moving\n * on to the next.\n *\n * @example Concatenate a timer counting from 0 to 3 with a synchronous sequence from 1 to 10\n * var timer = Rx.Observable.interval(1000).take(4);\n * var sequence = Rx.Observable.range(1, 10);\n * var result = timer.concat(sequence);\n * result.subscribe(x => console.log(x));\n *\n * // results in:\n * // 1000ms-> 0 -1000ms-> 1 -1000ms-> 2 -1000ms-> 3 -immediate-> 1 ... 10\n *\n * @example Concatenate 3 Observables\n * var timer1 = Rx.Observable.interval(1000).take(10);\n * var timer2 = Rx.Observable.interval(2000).take(6);\n * var timer3 = Rx.Observable.interval(500).take(10);\n * var result = timer1.concat(timer2, timer3);\n * result.subscribe(x => console.log(x));\n *\n * // results in the following:\n * // (Prints to console sequentially)\n * // -1000ms-> 0 -1000ms-> 1 -1000ms-> ... 9\n * // -2000ms-> 0 -2000ms-> 1 -2000ms-> ... 5\n * // -500ms-> 0 -500ms-> 1 -500ms-> ... 9\n *\n * @see {@link concatAll}\n * @see {@link concatMap}\n * @see {@link concatMapTo}\n *\n * @param {ObservableInput} other An input Observable to concatenate after the source\n * Observable. More than one input Observables may be given as argument.\n * @param {Scheduler} [scheduler=null] An optional IScheduler to schedule each\n * Observable subscription on.\n * @return {Observable} All values of each passed Observable merged into a\n * single Observable, in order, in serial fashion.\n * @method concat\n * @owner Observable\n */\nexport function concat(this: Observable, ...observables: Array | IScheduler>): Observable {\n return higherOrder(...observables)(this);\n}\n"]}