From b970fb4aba71af548dacfddaeefeb5ffbfc7f64f Mon Sep 17 00:00:00 2001 From: Thomas Truong Date: Tue, 12 Jun 2018 14:18:43 +0100 Subject: [PATCH] feat(zen-observable): add concat method typing Adding missing method concat as shown here https://github.com/zenparsing/zen-observable. Concat merges the current observable with additional observables. --- types/zen-observable/index.d.ts | 4 +++- types/zen-observable/zen-observable-tests.ts | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/types/zen-observable/index.d.ts b/types/zen-observable/index.d.ts index bcf02e8f8a..94ca94ccd2 100644 --- a/types/zen-observable/index.d.ts +++ b/types/zen-observable/index.d.ts @@ -1,7 +1,8 @@ -// Type definitions for zen-observable 0.5 +// Type definitions for zen-observable 0.8 // Project: https://github.com/zenparsing/zen-observable // Definitions by: Kombu // JounQin +// Thomas // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare global { @@ -52,6 +53,7 @@ declare class Observable { reduce(callback: (previousValue: T, currentValue: T) => T, initialValue?: T): Observable; reduce(callback: (previousValue: R, currentValue: T) => R, initialValue?: R): Observable; flatMap(callback: (value: T) => ZenObservable.ObservableLike): Observable; + concat(...observable: Array>): Observable; static from(observable: Observable | ZenObservable.ObservableLike | ArrayLike): Observable; static of(...items: R[]): Observable; diff --git a/types/zen-observable/zen-observable-tests.ts b/types/zen-observable/zen-observable-tests.ts index b06e7cb512..b1aea6d46a 100644 --- a/types/zen-observable/zen-observable-tests.ts +++ b/types/zen-observable/zen-observable-tests.ts @@ -94,6 +94,14 @@ Observable.of(1, 2, 3) .flatMap(val => Observable.of(val.toString())) .subscribe(val => assert(typeof val === 'string')); +/** + * observable.concat + */ + +Observable.of(1, 2, 3) +.concat(Observable.of(4, 5, 6), Observable.of(7, 8, 9)) +.subscribe(val => assert(typeof val === 'number')); + /** * ZenObservable */