import { Component, OnInit, Input, OnChanges, SimpleChanges } from '@angular/core'; import { Message } from 'primeng/primeng'; @Component({ selector: 'of-message', templateUrl: './message.component.html', }) export class MessageComponent implements OnInit, OnChanges { @Input() error: any; @Input() closeAfter: number; @Input() closable: boolean; msgs: Message[] = []; constructor( ) { } ngOnInit() { } ngOnChanges(changes: SimpleChanges) { if (changes['error'].currentValue) { const detail = ' (' + this.error.response.code + ')'; this.msgs = []; this.msgs.push({ severity: 'error', summary: 'Sorry. An Error has occurred.', detail: detail }); if (this.closeAfter) { setTimeout(() => { this.msgs = []; }, this.closeAfter * 1000); } } } }