]> git.apps.os.sepia.ceph.com Git - ceph.git/blob
66589c9609c76ce174fa77213d1b64d022c7152e
[ceph.git] /
1 import { Component, OnDestroy, OnInit } from '@angular/core';
2 import { Router } from '@angular/router';
3
4 import { TooltipConfig } from 'ngx-bootstrap/tooltip';
5 import { Subscription } from 'rxjs';
6
7 import { SummaryService } from '../../../shared/services/summary.service';
8 import { TaskManagerService } from '../../../shared/services/task-manager.service';
9
10 @Component({
11   selector: 'cd-workbench-layout',
12   templateUrl: './workbench-layout.component.html',
13   styleUrls: ['./workbench-layout.component.scss'],
14   providers: [
15     {
16       provide: TooltipConfig,
17       useFactory: (): TooltipConfig =>
18         Object.assign(new TooltipConfig(), {
19           container: 'body'
20         })
21     }
22   ]
23 })
24 export class WorkbenchLayoutComponent implements OnInit, OnDestroy {
25   private subs = new Subscription();
26
27   constructor(
28     private router: Router,
29     private summaryService: SummaryService,
30     private taskManagerService: TaskManagerService
31   ) {}
32
33   ngOnInit() {
34     this.subs.add(this.summaryService.startPolling());
35     this.subs.add(this.taskManagerService.init(this.summaryService));
36   }
37
38   ngOnDestroy() {
39     this.subs.unsubscribe();
40   }
41
42   isDashboardPage() {
43     return this.router.url === '/dashboard';
44   }
45 }