rxjs
Version:
Reactive Extensions for modern JavaScript
27 lines • 1.09 kB
JavaScript
import { __read, __spread } from "tslib";
import { combineLatestInit } from '../observable/combineLatest';
import { operate } from '../util/lift';
import { argsOrArgArray } from '../util/argsOrArgArray';
import { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';
import { pipe } from '../util/pipe';
import { popResultSelector } from '../util/args';
export function combineLatest() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var resultSelector = popResultSelector(args);
return resultSelector
? pipe(combineLatest.apply(void 0, __spread(args)), mapOneOrManyArgs(resultSelector))
: operate(function (source, subscriber) {
combineLatestInit(__spread([source], argsOrArgArray(args)))(subscriber);
});
}
export function combineLatestWith() {
var otherSources = [];
for (var _i = 0; _i < arguments.length; _i++) {
otherSources[_i] = arguments[_i];
}
return combineLatest.apply(void 0, __spread(otherSources));
}
//# sourceMappingURL=combineLatestWith.js.map