import { EventEmitter, Component, Input, Output, ElementRef } from '@angular/core'; import { CardItem } from '../../pages/search/search'; @Component({ selector: 'error', templateUrl: 'error.html' }) export class Error { @Output() onClose = new EventEmitter(); @Input() cardItem: CardItem; constructor(private elementRef: ElementRef) { } close(ev) { let translate = 'translate3d(110%, 0, 0)'; if (ev != null && ev.direction === 2) { translate = 'translate3d(-110%, 0, 0)'; } let d = 250; this.elementRef.nativeElement.parentElement.animate({ transform: ['none', translate] }, { fill: 'forwards', duration: d, iterations: 1, easing: 'ease-in-out' }); setTimeout(() => { this.onClose.emit(this.cardItem); }, d); } }