import { Component, HostBinding, OnDestroy, Input, OnInit } from '@angular/core';
import { CarouselComponent } from './carousel.component';
@Component({
selector: 'slide',
template: `
`
})
export class SlideComponent implements OnInit, OnDestroy {
/** Is current slide active */
@HostBinding('class.active')
@Input() public active:boolean;
/** Wraps element by appropriate CSS classes */
@HostBinding('class.item')
@HostBinding('class.carousel-item')
public addClass:boolean = true;
/** Link to Parent(container-collection) component */
protected carousel:CarouselComponent;
public constructor(carousel:CarouselComponent) {
this.carousel = carousel;
}
/** Fires changes in container collection after adding a new slide instance */
public ngOnInit():void {
this.carousel.addSlide(this);
}
/** Fires changes in container collection after removing of this slide instance */
public ngOnDestroy():void {
this.carousel.removeSlide(this);
}
}