import {NgModule,Component,Input,Output,EventEmitter,ChangeDetectionStrategy, ViewEncapsulation, TemplateRef, ContentChildren, QueryList, AfterContentInit} from '@angular/core'; import {CommonModule} from '@angular/common'; import {MenuItem, PrimeTemplate} from 'mirra-ui/api'; import {RouterModule} from '@angular/router'; @Component({ selector: "p-vertical-activity", templateUrl: "./vertical-activity.html", changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styleUrls: ["./vertical-activity.scss"], }) export class VerticalActivity implements AfterContentInit { @Input() activeIndex: number = 0; @Input() model: MenuItem[]; @Input() readonly: boolean = true; @Input() style: any; @Input() styleClass: string; contentTemplate: TemplateRef; @ContentChildren(PrimeTemplate) templates: QueryList; ngAfterContentInit() { this.templates.forEach((item) => { switch (item.getType()) { case "contentTemplate": this.contentTemplate = item.template; break; default: this.contentTemplate = item.template; break; } }); } @Output() activeIndexChange: EventEmitter = new EventEmitter(); } @NgModule({ imports: [CommonModule, RouterModule], exports: [VerticalActivity, RouterModule], declarations: [VerticalActivity], }) export class VerticalActivityModule {}