feat(router): implement canLoad
This commit is contained in:
@ -10,6 +10,7 @@ import 'rxjs/add/operator/concatAll';
|
||||
import 'rxjs/add/operator/last';
|
||||
|
||||
import {Observable} from 'rxjs/Observable';
|
||||
import {fromPromise} from 'rxjs/observable/fromPromise';
|
||||
import {of } from 'rxjs/observable/of';
|
||||
|
||||
import {PRIMARY_OUTLET} from '../shared';
|
||||
@ -115,4 +116,18 @@ export function waitForMap<A, B>(
|
||||
} else {
|
||||
return of (res);
|
||||
}
|
||||
}
|
||||
|
||||
export function andObservables(observables: Observable<Observable<any>>): Observable<boolean> {
|
||||
return observables.mergeAll().every(result => result === true);
|
||||
}
|
||||
|
||||
export function wrapIntoObservable<T>(value: T | Observable<T>): Observable<T> {
|
||||
if (value instanceof Observable) {
|
||||
return value;
|
||||
} else if (value instanceof Promise) {
|
||||
return fromPromise(value);
|
||||
} else {
|
||||
return of (value);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user