Add multi-layer RIC instance selector
[portal/ric-dashboard.git] / webapp-frontend / src / app / services / ui / loading-dialog.service.ts
index 0a58a17..2f797f3 100644 (file)
 import { Injectable } from '@angular/core';
 import { MatDialog, MatDialogRef } from '@angular/material/dialog';
 import { LoadingDialogComponent } from './../../ui/loading-dialog/loading-dialog.component';
+import { UiService } from './ui.service';
 
 @Injectable({
   providedIn: 'root'
 })
 export class LoadingDialogService {
 
-  constructor(private dialog: MatDialog) { }
+  darkMode: boolean;
+  panelClass: string;
+
+  constructor(private dialog: MatDialog,
+    public ui: UiService) { }
 
   private loadingDialogRef: MatDialogRef<LoadingDialogComponent>;
 
   startLoading(msg: string) {
+    this.ui.darkModeState.subscribe((isDark) => {
+      this.darkMode = isDark;
+    });
+    if (this.darkMode) {
+      this.panelClass = 'dark-theme';
+    } else {
+      this.panelClass = '';
+    }
     this.loadingDialogRef = this.dialog.open(LoadingDialogComponent, {
+      panelClass: this.panelClass,
       disableClose: true,
       width: '480px',
       position: { top: '100px' },
@@ -43,7 +57,7 @@ export class LoadingDialogService {
   }
 
   stopLoading() {
-    this.loadingDialogRef.close()
+    this.loadingDialogRef.close();
   }
 
 }