import { Observable } from '../Observable'; import { SchedulerLike } from '../types'; import { Subscription } from '../Subscription'; export function schedulePromise<T>(input: PromiseLike<T>, scheduler: SchedulerLike) { return new Observable<T>(subscriber => { const sub = new Subscription(); sub.add(scheduler.schedule(() => input.then( value => { sub.add(scheduler.schedule(() => { subscriber.next(value); sub.add(scheduler.schedule(() => subscriber.complete())); })); }, err => { sub.add(scheduler.schedule(() => subscriber.error(err))); } ))); return sub; }); }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
scheduleArray.ts | File | 585 B | 0644 |
|
scheduleIterable.ts | File | 1.22 KB | 0644 |
|
scheduleObservable.ts | File | 852 B | 0644 |
|
schedulePromise.ts | File | 655 B | 0644 |
|
scheduled.ts | File | 1.45 KB | 0644 |
|