import { Component, OnInit, Input, SimpleChanges } from '@angular/core'; import { Router } from '@angular/router'; import { environment } from '../../../../../environments/environment'; import {MatTabChangeEvent, VERSION} from '@angular/material'; import { Observable, Observer } from 'rxjs'; import { HeadertabsService } from './headertabs.service'; export interface ExampleTab { label: string; content: any; } @Component({ selector: 'app-header-tabs-component', templateUrl: './header-tabs.component.html', styleUrls: ['./header-tabs.component.css'] }) export class HeaderTabsComponent implements OnInit { asyncTabs: Observable; @Input("reportId") reportId : string; @Input ("reportMode") reportMode : string; finalReportId : string; repMode : string; navLinks : {}[]; reportType : string; tabChanged : any; constructor(private _router : Router, private _headerTabsService : HeadertabsService) { this.asyncTabs = new Observable((observer: Observer) => { setTimeout(() => { observer.next([ {label: 'Definition', content: ''}, ]); }, 1000); }); //console.log(this.reportId); if(this.reportId == "" && this.reportMode=="") { this.finalReportId = "-1"; this.repMode = "Create"; this.reportId = "-1"; this.reportMode = "Create"; console.log(this.finalReportId, this.repMode); } else { if(this.reportId !== undefined && this.reportMode !== undefined) { this.finalReportId = this.reportId; this.repMode = this.reportMode; console.log(this.finalReportId, this.repMode); } } } ngOnInit() { if(this.reportId == "" && this.reportMode=="") { this.finalReportId = "-1"; this.repMode = "Create"; this.reportId = "-1"; this.reportMode = "Create"; console.log(this.finalReportId, this.repMode); } else { if(this.reportId !== undefined && this.reportMode !== undefined) { this.finalReportId = this.reportId; this.repMode = this.reportMode; this._headerTabsService.getReportTypeData(this.finalReportId) .subscribe((responseReportType) => { this.reportType = responseReportType["reportType"]; console.log(this.reportType); }); console.log(this.finalReportId, this.repMode); } } } ngAfterViewInit() { //console.log(this.reportId); if(this.reportId == "" && this.reportMode=="") { this.finalReportId = "-1"; this.repMode = "Create"; this.reportId = "-1"; this.reportMode = "Create"; console.log(this.finalReportId, this.repMode); } else { if(this.reportId !== undefined && this.reportMode !== undefined) { this.finalReportId = this.reportId; this.repMode = this.reportMode; console.log(this.finalReportId, this.repMode); } } } ngDoCheck() { // var id = this.finalReportId; // console.log(this.finalReportId); this.tabChanged = (tabChangeEvent: MatTabChangeEvent): void => { console.log('tabChangeEvent => ', tabChangeEvent); console.log('index => ', tabChangeEvent.index); }; } ngOnChanges(changes: SimpleChanges) { this.tabChanged = (tabChangeEvent: MatTabChangeEvent): void => { }; } getReportType(reportTypeObject: any){ this.reportType= reportTypeObject['reportType']; } }