X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=dashboard%2Fwebapp-frontend%2Fsrc%2Fapp%2Fapp-control%2Fapp-control.component.ts;fp=dashboard%2Fwebapp-frontend%2Fsrc%2Fapp%2Fapp-control%2Fapp-control.component.ts;h=9a5d0724a70d97f171a05c037880f1a2ba807c60;hb=8139455dc6a9db3958ececed5a54f5dc3541d429;hp=75044a31f3eabe237ca88230ac804ab654dd9240;hpb=5447254cb207353b33e6a444cce8a7fd84cfd34a;p=portal%2Fric-dashboard.git diff --git a/dashboard/webapp-frontend/src/app/app-control/app-control.component.ts b/dashboard/webapp-frontend/src/app/app-control/app-control.component.ts index 75044a31..9a5d0724 100644 --- a/dashboard/webapp-frontend/src/app/app-control/app-control.component.ts +++ b/dashboard/webapp-frontend/src/app/app-control/app-control.component.ts @@ -19,6 +19,7 @@ */ import { HttpErrorResponse, HttpResponse } from '@angular/common/http'; import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core'; +import { MatDialog } from '@angular/material/dialog'; import { MatSort } from '@angular/material/sort'; import { Router } from '@angular/router'; import { Subscription } from 'rxjs'; @@ -31,6 +32,8 @@ import { ConfirmDialogService } from '../services/ui/confirm-dialog.service'; import { ErrorDialogService } from '../services/ui/error-dialog.service'; import { LoadingDialogService } from '../services/ui/loading-dialog.service'; import { NotificationService } from '../services/ui/notification.service'; +import { UiService } from '../services/ui/ui.service'; +import { AppConfigurationComponent } from './../app-configuration/app-configuration.component'; import { AppControlAnimations } from './app-control.animations'; import { AppControlDataSource } from './app-control.datasource'; @@ -42,6 +45,8 @@ import { AppControlDataSource } from './app-control.datasource'; }) export class AppControlComponent implements OnInit, OnDestroy { + darkMode: boolean; + panelClass: string; displayedColumns: string[] = ['xapp', 'name', 'status', 'ip', 'port', 'action']; dataSource: AppControlDataSource; @ViewChild(MatSort, { static: true }) sort: MatSort; @@ -51,15 +56,21 @@ export class AppControlComponent implements OnInit, OnDestroy { constructor( private appMgrSvc: AppMgrService, private router: Router, + private dialog: MatDialog, private confirmDialogService: ConfirmDialogService, private errorDialogService: ErrorDialogService, private loadingDialogService: LoadingDialogService, public instanceSelectorService: InstanceSelectorService, - private notificationService: NotificationService) { } + private notificationService: NotificationService, + public ui: UiService + ) { } ngOnInit() { this.dataSource = new AppControlDataSource(this.appMgrSvc, this.sort, this.notificationService); + this.ui.darkModeState.subscribe((isDark) => { + this.darkMode = isDark; + }); this.instanceChange = this.instanceSelectorService.getSelectedInstance().subscribe((instance: RicInstance) => { if (instance.key) { this.instanceKey = instance.key; @@ -77,6 +88,27 @@ export class AppControlComponent implements OnInit, OnDestroy { this.errorDialogService.displayError('No control available for ' + app.xapp + ' (yet)'); } + onConfigureApp(xappRow: XappControlRow): void { + if (this.darkMode) { + this.panelClass = 'dark-theme'; + } else { + this.panelClass = ''; + } + const dialogRef = this.dialog.open(AppConfigurationComponent, { + panelClass: this.panelClass, + width: '80%', + maxHeight: '70%', + position: { + top: '10%' + }, + data: { + xapp: xappRow.xapp, + instanceKey: this.instanceKey + } + + }); + } + onUndeployApp(app: XappControlRow): void { this.confirmDialogService.openConfirmDialog('Are you sure you want to undeploy App ' + app.xapp + '?') .afterClosed().subscribe((res: boolean) => {