12345678910111213141516171819202122232425262728293031323334 |
- import { combineLatestInit } from '../observable/combineLatest';
- import { ObservableInput, ObservableInputTuple, OperatorFunction } from '../types';
- 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';
- /** @deprecated Replaced with {@link combineLatestWith}. Will be removed in v8. */
- export function combineLatest<T, A extends readonly unknown[], R>(
- sources: [...ObservableInputTuple<A>],
- project: (...values: [T, ...A]) => R
- ): OperatorFunction<T, R>;
- /** @deprecated Replaced with {@link combineLatestWith}. Will be removed in v8. */
- export function combineLatest<T, A extends readonly unknown[], R>(sources: [...ObservableInputTuple<A>]): OperatorFunction<T, [T, ...A]>;
- /** @deprecated Replaced with {@link combineLatestWith}. Will be removed in v8. */
- export function combineLatest<T, A extends readonly unknown[], R>(
- ...sourcesAndProject: [...ObservableInputTuple<A>, (...values: [T, ...A]) => R]
- ): OperatorFunction<T, R>;
- /** @deprecated Replaced with {@link combineLatestWith}. Will be removed in v8. */
- export function combineLatest<T, A extends readonly unknown[], R>(...sources: [...ObservableInputTuple<A>]): OperatorFunction<T, [T, ...A]>;
- /**
- * @deprecated Replaced with {@link combineLatestWith}. Will be removed in v8.
- */
- export function combineLatest<T, R>(...args: (ObservableInput<any> | ((...values: any[]) => R))[]): OperatorFunction<T, unknown> {
- const resultSelector = popResultSelector(args);
- return resultSelector
- ? pipe(combineLatest(...(args as Array<ObservableInput<any>>)), mapOneOrManyArgs(resultSelector))
- : operate((source, subscriber) => {
- combineLatestInit([source, ...argsOrArgArray(args)])(subscriber);
- });
- }
|