* ========================LICENSE_END===================================
*/
import { Component, OnInit } from '@angular/core';
+import { Subscription } from 'rxjs';
+import { RicInstance } from './interfaces/dashboard.types';
+import { InstanceSelectorService } from './services/instance-selector/instance-selector.service';
+import { InstanceSelectorDialogService } from './services/ui/instance-selector-dialog.service';
import { UiService } from './services/ui/ui.service';
@Component({
showMenu = false;
darkModeActive: boolean;
- constructor(public ui: UiService) {
+ private selectedInstanceName: string = 'Select RIC instance';
+ private instanceChange: Subscription;
+
+ constructor(
+ public ui: UiService,
+ private instanceSelectorDialogService: InstanceSelectorDialogService,
+ private instanceSelectorService: InstanceSelectorService) {
}
ngOnInit() {
this.ui.darkModeState.subscribe((value) => {
this.darkModeActive = value;
});
+
+ this.instanceChange = this.instanceSelectorService.getSelectedInstance().subscribe((instance: RicInstance) => {
+ if (instance.name) {
+ this.selectedInstanceName = instance.name;
+ } else {
+ this.openInstanceSelectorDialog()
+ }
+ });
}
- toggleMenu() {
- this.showMenu = !this.showMenu;
+ ngOnDestroy() {
+ this.instanceChange.unsubscribe();
}
modeToggleSwitch() {
this.ui.darkModeState.next(!this.darkModeActive);
}
+ openInstanceSelectorDialog() {
+ this.instanceSelectorDialogService.openInstanceSelectorDialog();
+ }
+
}