| "use strict"; | 
| Object.defineProperty(exports, "__esModule", { value: true }); | 
| var Observable_1 = require("../Observable"); | 
| var isScheduler_1 = require("../util/isScheduler"); | 
| var mergeAll_1 = require("../operators/mergeAll"); | 
| var fromArray_1 = require("./fromArray"); | 
| function merge() { | 
|     var observables = []; | 
|     for (var _i = 0; _i < arguments.length; _i++) { | 
|         observables[_i] = arguments[_i]; | 
|     } | 
|     var concurrent = Number.POSITIVE_INFINITY; | 
|     var scheduler = null; | 
|     var last = observables[observables.length - 1]; | 
|     if (isScheduler_1.isScheduler(last)) { | 
|         scheduler = observables.pop(); | 
|         if (observables.length > 1 && typeof observables[observables.length - 1] === 'number') { | 
|             concurrent = observables.pop(); | 
|         } | 
|     } | 
|     else if (typeof last === 'number') { | 
|         concurrent = observables.pop(); | 
|     } | 
|     if (scheduler === null && observables.length === 1 && observables[0] instanceof Observable_1.Observable) { | 
|         return observables[0]; | 
|     } | 
|     return mergeAll_1.mergeAll(concurrent)(fromArray_1.fromArray(observables, scheduler)); | 
| } | 
| exports.merge = merge; | 
| //# sourceMappingURL=merge.js.map |