]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/core/routing/preload-selected-modules-list.ts
Bumped to version v5.2.1
[github/Chocobozzz/PeerTube.git] / client / src / app / core / routing / preload-selected-modules-list.ts
index dd5be6ad948c9886cc668f1600f10118a4c17618..1abcdb01514c12df0a8ecceeca7ca76d04980802 100644 (file)
@@ -1,16 +1,18 @@
-import { Route, PreloadingStrategy } from '@angular/router';
-import { Observable } from 'rxjs/Observable';
-import 'rxjs/add/observable/timer';
-import 'rxjs/add/operator/switchMap';
+import { Observable, of as ofObservable, timer as observableTimer } from 'rxjs'
+import { switchMap } from 'rxjs/operators'
+import { Injectable } from '@angular/core'
+import { PreloadingStrategy, Route } from '@angular/router'
 
+@Injectable()
 export class PreloadSelectedModulesList implements PreloadingStrategy {
-  preload(route: Route, load: Function): Observable<any> {
-    if (!route.data || !route.data.preload) return Observable.of(null);
+
+  preload (route: Route, load: () => Observable<any>): Observable<any> {
+    if (!route.data?.preload) return ofObservable(null)
 
     if (typeof route.data.preload === 'number') {
-      return Observable.timer(route.data.preload).switchMap(() => load());
+      return observableTimer(route.data.preload).pipe(switchMap(() => load()))
     }
 
-    return load();
+    return load()
   }
 }