UNPKG

31 kBSource Map (JSON)View Raw
1{"version":3,"sources":["ng://primeng/carousel/carousel.ts"],"names":["Carousel","el","zone","this","orientation","verticalViewPortHeight","contentClass","dotsContainerClass","circular","autoplayInterval","onPage","EventEmitter","_numVisible","_numScroll","_oldNumScroll","prevState","numScroll","numVisible","value","defaultNumScroll","defaultNumVisible","_page","isRemainingItemsAdded","remainingItems","swipeThreshold","totalShiftedItems","page","Object","defineProperty","prototype","val","isCreated","stopAutoplay","allowAutoplay","totalDots","step","_value","setCloneItems","ngAfterContentInit","_this","id","UniqueComponentId","responsiveOptions","createStyle","calculatePosition","bindDocumentListeners","templates","forEach","item","getType","itemTemplate","template","ngAfterContentChecked","isCircular","length","emit","itemsContainer","nativeElement","style","transform","isVertical","isAutoplay","startAutoplay","carouselStyle","document","createElement","type","body","appendChild","innerHTML","sort","data1","data2","value1","breakpoint","value2","localeCompare","undefined","numeric","i","res","windowWidth","window","innerWidth","matchedResponsiveData","parseInt","Math","floor","clonedItemsForStarting","clonedItemsForFinishing","_a","push","apply","__spread","slice","_b","firstIndex","lastIndex","ceil","totalDotsArray","Array","fill","containerClass","ui-carousel ui-widget","ui-carousel-vertical","ui-carousel-horizontal","contentClasses","dotsContentClasses","isForwardNavDisabled","isEmpty","isBackwardNavDisabled","navForward","e","index","cancelable","preventDefault","navBackward","onDotClick","dir","originalShiftedItems","abs","transition","interval","setInterval","clearInterval","onTransitionEnd","onTouchStart","touchobj","changedTouches","startPos","x","pageX","y","pageY","onTouchMove","onTouchEnd","changePageOnTouch","diff","documentResizeListener","addEventListener","unbindDocumentListeners","removeEventListener","ngOnDestroy","ElementRef","NgZone","__decorate","Input","Output","ViewChild","ContentChild","Header","Footer","ContentChildren","PrimeTemplate","Component","selector","changeDetection","ChangeDetectionStrategy","Default","CarouselModule","NgModule","imports","CommonModule","SharedModule","exports","declarations"],"mappings":"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","sourcesContent":["import { Component, Input, ElementRef, ViewChild, AfterContentInit, TemplateRef, ContentChildren, QueryList, NgModule, NgZone, EventEmitter, Output, ContentChild, ChangeDetectionStrategy } from '@angular/core';\nimport { PrimeTemplate, SharedModule, Header, Footer } from 'primeng/api';\nimport { CommonModule } from '@angular/common';\nimport { UniqueComponentId } from 'primeng/utils';\n\n@Component({\n\tselector: 'p-carousel',\n\ttemplate: `\n\t\t<div [attr.id]=\"id\" [ngClass]=\"containerClass()\" [ngStyle]=\"style\" [class]=\"styleClass\">\n\t\t\t<div class=\"ui-carousel-header\" *ngIf=\"headerFacet\">\n\t\t\t\t<ng-content select=\"p-header\"></ng-content>\n\t\t\t</div>\n\t\t\t<div [class]=\"contentClasses()\">\n\t\t\t\t<div class=\"ui-carousel-container\">\n\t\t\t\t\t<button [ngClass]=\"{'ui-carousel-prev ui-button ui-widget ui-state-default ui-corner-all':true, 'ui-state-disabled': isBackwardNavDisabled()}\" [disabled]=\"isBackwardNavDisabled()\" (click)=\"navBackward($event)\">\n\t\t\t\t\t\t<span [ngClass]=\"{'ui-carousel-prev-icon pi': true, 'pi-chevron-left': !isVertical(), 'pi-chevron-up': isVertical()}\"></span>\n\t\t\t\t\t</button>\n\t\t\t\t\t<div class=\"ui-carousel-items-content\" [ngStyle]=\"{'height': isVertical() ? verticalViewPortHeight : 'auto'}\">\n\t\t\t\t\t\t<div #itemsContainer class=\"ui-carousel-items-container\" (transitionend)=\"onTransitionEnd()\" (touchend)=\"onTouchEnd($event)\" (touchstart)=\"onTouchStart($event)\" (touchmove)=\"onTouchMove($event)\">\n\t\t\t\t\t\t\t<div *ngFor=\"let item of clonedItemsForStarting; let index = index\" [ngClass]= \"{'ui-carousel-item ui-carousel-item-cloned': true,'ui-carousel-item-active': (totalShiftedItems * -1) === (value.length),\n\t\t\t\t\t\t\t'ui-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t'ui-carousel-item-end': (clonedItemsForStarting.length - 1) === index}\">\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item}\"></ng-container>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div *ngFor=\"let item of value; let index = index\" [ngClass]= \"{'ui-carousel-item': true,'ui-carousel-item-active': (firstIndex() <= index && lastIndex() >= index),\n\t\t\t\t\t\t\t'ui-carousel-item-start': firstIndex() === index,\n\t\t\t\t\t\t\t'ui-carousel-item-end': lastIndex() === index}\">\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item}\"></ng-container>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div *ngFor=\"let item of clonedItemsForFinishing; let index = index\" [ngClass]= \"{'ui-carousel-item ui-carousel-item-cloned': true,'ui-carousel-item-active': ((totalShiftedItems *-1) === numVisible),\n\t\t\t\t\t\t\t'ui-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t'ui-carousel-item-end': (clonedItemsForFinishing.length - 1) === index}\">\n\t\t\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item}\"></ng-container>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<button [ngClass]=\"{'ui-carousel-next ui-button ui-widget ui-state-default ui-corner-all': true, 'ui-state-disabled': isForwardNavDisabled()}\" [disabled]=\"isForwardNavDisabled()\" (click)=\"navForward($event)\">\n\t\t\t\t\t\t<span [ngClass]=\"{'ui-carousel-next-icon pi': true, 'pi-chevron-right': !isVertical(), 'pi-chevron-down': isVertical()}\"></span>\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\t\t\t\t<ul [class]=\"dotsContentClasses()\">\n\t\t\t\t\t<li *ngFor=\"let totalDot of totalDotsArray(); let i = index\" [ngClass]=\"{'ui-carousel-dot-item':true,'ui-state-highlight': _page === i}\">\n\t\t\t\t\t\t<button class=\"ui-button ui-widget ui-state-default ui-corner-all\" (click)=\"onDotClick($event, i)\">\n\t\t\t\t\t\t\t<span [ngClass]=\"{'ui-carousel-dot-icon pi':true, 'pi-circle-on': _page === i, 'pi-circle-off': !(_page === i)}\"></span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div class=\"ui-carousel-footer\" *ngIf=\"footerFacet\">\n\t\t\t\t<ng-content select=\"p-footer\"></ng-content>\n\t\t\t</div>\n\t\t</div>\n `,\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class Carousel implements AfterContentInit {\n\n\t@Input() get page():number {\n\t\treturn this._page;\n\t}\n\tset page(val:number) {\n\t\tif (this.isCreated && val !== this._page) {\n\t\t\tif (this.autoplayInterval) {\n\t\t\t\tthis.stopAutoplay();\n\t\t\t\tthis.allowAutoplay = false;\n\t\t\t}\n\n\t\t\tif (val > this._page && val < (this.totalDots() - 1)) {\n\t\t\t\tthis.step(-1, val);\n\t\t\t}\n\t\t\telse if (val < this._page && val !== 0) {\n\t\t\t\tthis.step(1, val);\n\t\t\t}\n\t\t} \n\n\t\tthis._page = val;\n\t}\n\t\t\n\t@Input() get numVisible():number {\n\t\treturn this._numVisible;\n\t}\n\tset numVisible(val:number) {\n\t\tthis._numVisible = val;\n\t}\n\t\t\n\t@Input() get numScroll():number {\n\t\treturn this._numVisible;\n\t}\n\tset numScroll(val:number) {\n\t\tthis._numScroll = val;\n\t}\n\t\n\t@Input() responsiveOptions: any[];\n\t\n\t@Input() orientation = \"horizontal\";\n\t\n\t@Input() verticalViewPortHeight = \"300px\";\n\t\n\t@Input() contentClass: String = \"\";\n\n\t@Input() dotsContainerClass: String = \"\";\n\n\t@Input() get value() :any[] {\n\t\treturn this._value;\n\t};\n\tset value(val) {\n\t\tthis._value = val;\n\t\tif (this.circular && this._value) {\n\t\t\tthis.setCloneItems();\n\t\t}\n\t}\n\t\n\t@Input() circular:boolean = false;\n\n\t@Input() autoplayInterval:number = 0;\n\n\t@Input() style: any;\n\n\t@Input() styleClass: string;\n\t\n @Output() onPage: EventEmitter<any> = new EventEmitter();\n\n\t@ViewChild('itemsContainer') itemsContainer: ElementRef;\n\n\t@ContentChild(Header) headerFacet;\n\n @ContentChild(Footer) footerFacet;\n\n\t@ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n\t_numVisible: number = 1;\n\n\t_numScroll: number = 1;\n\n\t_oldNumScroll: number = 0;\n\n\tprevState: any = {\n\t\tnumScroll:0,\n\t\tnumVisible:0,\n\t\tvalue: []\n\t};\n\n\tdefaultNumScroll:number = 1;\n\n\tdefaultNumVisible:number = 1;\n\n\t_page: number = 0;\n\n\t_value: any[];\n\n\tcarouselStyle:any;\n\n\tid:string;\n\n\ttotalShiftedItems;\n\n\tisRemainingItemsAdded:boolean = false;\n\n\tanimationTimeout:any;\n\n\ttranslateTimeout:any;\n\n\tremainingItems: number = 0;\n\n\t_items: any[];\n\n\tstartPos: any;\n\n\tdocumentResizeListener: any;\n\n\tclonedItemsForStarting: any[];\n\n\tclonedItemsForFinishing: any[];\n\n\tallowAutoplay: boolean;\n\n\tinterval: any;\n\n\tisCreated: boolean;\n\n\tswipeThreshold: number = 20;\n\n\tpublic itemTemplate: TemplateRef<any>;\n\n\tconstructor(public el: ElementRef, public zone: NgZone) { \n\t\tthis.totalShiftedItems = this.page * this.numScroll * -1; \n\t}\n\n\tngAfterContentInit() {\n\t\tthis.id = UniqueComponentId();\n\t\tthis.allowAutoplay = !!this.autoplayInterval;\n\n\t\tif (this.circular) {\n\t\t\tthis.setCloneItems();\n\t\t}\n\n\t\tif (this.responsiveOptions) {\n\t\t\tthis.defaultNumScroll = this._numScroll;\n\t\t\tthis.defaultNumVisible = this._numVisible;\n\t\t}\n\n\t\tthis.createStyle();\n\t\tthis.calculatePosition();\n\n\t\tif (this.responsiveOptions) {\n\t\t\tthis.bindDocumentListeners();\n\t\t}\n\n\t\tthis.templates.forEach((item) => {\n\t\t\tswitch (item.getType()) {\n\t\t\t\tcase 'item':\n\t\t\t\t\tthis.itemTemplate = item.template;\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tthis.itemTemplate = item.template;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t});\n\t}\n\n\tngAfterContentChecked() {\n\t\tconst isCircular = this.isCircular();\n\t\tlet totalShiftedItems = this.totalShiftedItems;\n\t\t\n\t\tif (this.value && (this.prevState.numScroll !== this._numScroll || this.prevState.numVisible !== this._numVisible || this.prevState.value.length !== this.value.length)) {\n\t\t\tif (this.autoplayInterval) {\n\t\t\t\tthis.stopAutoplay();\n\t\t\t}\n\t\t\t\n\t\t\tthis.remainingItems = (this.value.length - this._numVisible) % this._numScroll;\n\n\t\t\tlet page = this._page;\n\t\t\tif (this.totalDots() !== 0 && page >= this.totalDots()) {\n page = this.totalDots() - 1;\n\t\t\t\tthis._page = page;\n\t\t\t\tthis.onPage.emit({\n\t\t\t\t\tpage: this.page\n\t\t\t\t});\n\t\t\t}\n\t\t\t\n\t\t\ttotalShiftedItems = (page * this._numScroll) * -1;\n if (isCircular) {\n totalShiftedItems -= this._numVisible;\n }\n\n\t\t\tif (page === (this.totalDots() - 1) && this.remainingItems > 0) {\n\t\t\t\ttotalShiftedItems += (-1 * this.remainingItems) + this._numScroll;\n\t\t\t\tthis.isRemainingItemsAdded = true;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.isRemainingItemsAdded = false;\n\t\t\t}\n\n\t\t\tif (totalShiftedItems !== this.totalShiftedItems) {\n this.totalShiftedItems = totalShiftedItems;\n }\n\n\t\t\tthis._oldNumScroll = this._numScroll;\n\t\t\tthis.prevState.numScroll = this._numScroll;\n\t\t\tthis.prevState.numVisible = this._numVisible;\n\t\t\tthis.prevState.value = this._value;\n\n\t\t\tif (this.totalDots() > 0 && this.itemsContainer && this.itemsContainer.nativeElement) {\n\t\t\t\tthis.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100/ this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100/ this._numVisible)}%, 0, 0)`;\n\t\t\t}\n\t\t\t\n\t\t\tthis.isCreated = true;\n\n\t\t\tif (this.autoplayInterval && this.isAutoplay()) {\n\t\t\t\tthis.startAutoplay();\n\t\t\t}\n\t\t}\n\n\t\tif (isCircular) {\n if (this.page === 0) {\n totalShiftedItems = -1 * this._numVisible;\n }\n else if (totalShiftedItems === 0) {\n totalShiftedItems = -1 * this.value.length;\n if (this.remainingItems > 0) {\n this.isRemainingItemsAdded = true;\n }\n }\n\n if (totalShiftedItems !== this.totalShiftedItems) {\n\t\t\t\tthis.totalShiftedItems = totalShiftedItems;\n }\n\t\t}\n\t}\n\n\tcreateStyle() {\n\t\t\tif (!this.carouselStyle) {\n\t\t\t\tthis.carouselStyle = document.createElement('style');\n\t\t\t\tthis.carouselStyle.type = 'text/css';\n\t\t\t\tdocument.body.appendChild(this.carouselStyle);\n\t\t\t}\n\n\t\t\tlet innerHTML = `\n #${this.id} .ui-carousel-item {\n\t\t\t\tflex: 1 0 ${ (100/ this.numVisible) }%\n\t\t\t}\n `;\n\n\t\t\tif (this.responsiveOptions) {\n\t\t\t\tthis.responsiveOptions.sort((data1, data2) => {\n\t\t\t\t\tconst value1 = data1.breakpoint;\n\t\t\t\t\tconst value2 = data2.breakpoint;\n\t\t\t\t\tlet result = null;\n\n\t\t\t\t\tif (value1 == null && value2 != null)\n\t\t\t\t\t\tresult = -1;\n\t\t\t\t\telse if (value1 != null && value2 == null)\n\t\t\t\t\t\tresult = 1;\n\t\t\t\t\telse if (value1 == null && value2 == null)\n\t\t\t\t\t\tresult = 0;\n\t\t\t\t\telse if (typeof value1 === 'string' && typeof value2 === 'string')\n\t\t\t\t\t\tresult = value1.localeCompare(value2, undefined, { numeric: true });\n\t\t\t\t\telse\n\t\t\t\t\t\tresult = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\n\n\t\t\t\t\treturn -1 * result;\n\t\t\t\t});\n\n\t\t\t\tfor (let i = 0; i < this.responsiveOptions.length; i++) {\n\t\t\t\t\tlet res = this.responsiveOptions[i];\n\n\t\t\t\t\tinnerHTML += `\n @media screen and (max-width: ${res.breakpoint}) {\n #${this.id} .ui-carousel-item {\n flex: 1 0 ${ (100/ res.numVisible) }%\n }\n }\n `\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.carouselStyle.innerHTML = innerHTML;\n\t\t}\n\n\tcalculatePosition() {\n\t\tif (this.itemsContainer && this.responsiveOptions) {\n\t\t\tlet windowWidth = window.innerWidth;\n\t\t\tlet matchedResponsiveData = {\n\t\t\t\tnumVisible: this.defaultNumVisible,\n\t\t\t\tnumScroll: this.defaultNumScroll\n\t\t\t};\n\n\t\t\tfor (let i = 0; i < this.responsiveOptions.length; i++) {\n\t\t\t\tlet res = this.responsiveOptions[i];\n\n\t\t\t\tif (parseInt(res.breakpoint, 10) >= windowWidth) {\n\t\t\t\t\tmatchedResponsiveData = res;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this._numScroll !== matchedResponsiveData.numScroll) {\n\t\t\t\tlet page = this._page;\n\t\t\t\tpage = Math.floor((page * this._numScroll) / matchedResponsiveData.numScroll);\n\n\t\t\t\tlet totalShiftedItems = (matchedResponsiveData.numScroll * this.page) * -1;\n\n\t\t\t\tif (this.isCircular()) {\n\t\t\t\t\ttotalShiftedItems -= matchedResponsiveData.numVisible;\n\t\t\t\t}\n\n\t\t\t\tthis.totalShiftedItems = totalShiftedItems;\n\t\t\t\tthis._numScroll = matchedResponsiveData.numScroll;\n\n\t\t\t\tthis._page = page;\n\t\t\t\tthis.onPage.emit({\n\t\t\t\t\tpage: this.page\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (this._numVisible !== matchedResponsiveData.numVisible) {\n\t\t\t\tthis._numVisible = matchedResponsiveData.numVisible;\n\t\t\t\tthis.setCloneItems();\n\t\t\t}\n\t\t}\n\t}\n\t\n\tsetCloneItems() {\n\t\tthis.clonedItemsForStarting = [];\n\t\tthis.clonedItemsForFinishing = [];\n\t\tif (this.isCircular()) {\n\t\t\tthis.clonedItemsForStarting.push(...this.value.slice(-1 * this._numVisible));\n\t\t\tthis.clonedItemsForFinishing.push(...this.value.slice(0, this._numVisible));\n\t\t}\n\t}\n\n\tfirstIndex() {\n\t\treturn this.isCircular() ? (-1 * (this.totalShiftedItems + this.numVisible)) : (this.totalShiftedItems * -1);\n\t}\n\n\tlastIndex() {\n\t\treturn this.firstIndex() + this.numVisible - 1;\n\t}\n\n\ttotalDots() {\n\t\treturn this.value ? Math.ceil((this.value.length - this._numVisible) / this._numScroll) + 1 : 0;\n\t}\n\n\ttotalDotsArray() {\n\t\tconst totalDots = this.totalDots();\n\t\treturn totalDots <= 0 ? [] : Array(totalDots).fill(0);\n\t}\n\n\tcontainerClass() {\n\t\treturn {\n\t\t\t'ui-carousel ui-widget':true, \n\t\t\t'ui-carousel-vertical': this.isVertical(),\n\t\t\t'ui-carousel-horizontal': !this.isVertical()\n\t\t};\n\t}\n\n\tcontentClasses() {\n\t\treturn 'ui-carousel-content '+ this.contentClass;\n\t}\n\n\tdotsContentClasses() {\n\t\treturn 'ui-carousel-dots-container ui-helper-reset ' + this.dotsContainerClass;\n\t}\n\n\tisVertical() {\n\t\treturn this.orientation === 'vertical';\n\t}\n\n\tisCircular() {\n\t\treturn this.circular && this.value && this.value.length >= this.numVisible;\n\t}\n\n\tisAutoplay() {\n\t\treturn this.autoplayInterval && this.allowAutoplay;\n\t}\n\n\tisForwardNavDisabled() {\n\t\treturn this.isEmpty() || (this._page >= (this.totalDots() - 1) && !this.isCircular());\n\t}\n\n\tisBackwardNavDisabled() {\n\t\treturn this.isEmpty() || (this._page <= 0 && !this.isCircular());\n\t}\n\n\tisEmpty() {\n\t\treturn !this.value || this.value.length === 0;\n\t}\n\n\tnavForward(e,index?) {\n\t\tif (this.isCircular() || this._page < (this.totalDots() - 1)) {\n\t\t\tthis.step(-1, index);\n\t\t}\n\n\t\tif (this.autoplayInterval) {\n\t\t\tthis.stopAutoplay();\n\t\t\tthis.allowAutoplay = false;\n\t\t}\n\n\t\tif (e && e.cancelable) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tnavBackward(e,index?) {\n\t\tif (this.isCircular() || this._page !== 0) {\n\t\t\tthis.step(1, index);\n\t\t}\n\n\t\tif (this.autoplayInterval) {\n\t\t\tthis.stopAutoplay();\n\t\t\tthis.allowAutoplay = false;\n\t\t}\n\t\t\n\t\tif (e && e.cancelable) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\tonDotClick(e, index) {\n\t\tlet page = this._page;\n\n\t\tif (this.autoplayInterval) {\n\t\t\tthis.stopAutoplay();\n\t\t\tthis.allowAutoplay = false;\n\t\t}\n\t\t\n\t\tif (index > page) {\n\t\t\tthis.navForward(e, index);\n\t\t}\n\t\telse if (index < page) {\n\t\t\tthis.navBackward(e, index);\n\t\t}\n\t}\n\n\tstep(dir, page) {\n\t\tlet totalShiftedItems = this.totalShiftedItems;\n\t\tconst isCircular = this.isCircular();\n\n\t\tif (page != null) {\n\t\t\ttotalShiftedItems = (this._numScroll * page) * -1;\n\n\t\t\tif (isCircular) {\n\t\t\t\ttotalShiftedItems -= this._numVisible;\n\t\t\t}\n\n\t\t\tthis.isRemainingItemsAdded = false;\n\t\t}\n\t\telse {\n\t\t\ttotalShiftedItems += (this._numScroll * dir);\n\t\t\tif (this.isRemainingItemsAdded) {\n\t\t\t\ttotalShiftedItems += this.remainingItems - (this._numScroll * dir);\n\t\t\t\tthis.isRemainingItemsAdded = false;\n\t\t\t}\n\n\t\t\tlet originalShiftedItems = isCircular ? (totalShiftedItems + this._numVisible) : totalShiftedItems;\n\t\t\tpage = Math.abs(Math.floor((originalShiftedItems / this._numScroll)));\n\t\t}\n\n\t\tif (isCircular && this.page === (this.totalDots() - 1) && dir === -1) {\n\t\t\ttotalShiftedItems = -1 * (this.value.length + this._numVisible);\n\t\t\tpage = 0;\n\t\t}\n\t\telse if (isCircular && this.page === 0 && dir === 1) {\n\t\t\ttotalShiftedItems = 0;\n\t\t\tpage = (this.totalDots() - 1);\n\t\t}\n\t\telse if (page === (this.totalDots() - 1) && this.remainingItems > 0) {\n\t\t\ttotalShiftedItems += ((this.remainingItems * -1) - (this._numScroll * dir));\n\t\t\tthis.isRemainingItemsAdded = true;\n\t\t}\n\n\t\tif (this.itemsContainer) {\n\t\t\tthis.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100/ this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100/ this._numVisible)}%, 0, 0)`;\n\t\t\tthis.itemsContainer.nativeElement.style.transition = 'transform 500ms ease 0s';\n\t\t}\n\n\t\tthis.totalShiftedItems = totalShiftedItems;\n\t\tthis._page = page;\n\t\tthis.onPage.emit({\n\t\t\tpage: this.page\n\t\t});\n\t}\n\n\tstartAutoplay() {\n\t\tthis.interval = setInterval(() => {\n\t\t\tif (this.totalDots() > 0) {\n\t\t\t\tif (this.page === (this.totalDots() - 1)) {\n\t\t\t\t\tthis.step(-1, 0);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.step(-1, this.page + 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}, \n\t\tthis.autoplayInterval);\n\t}\n\n\tstopAutoplay() {\n\t\tif (this.interval) {\n\t\t\tclearInterval(this.interval);\n\t\t}\n\t}\n\n\tonTransitionEnd() {\n\t\tif (this.itemsContainer) {\n\t\t\tthis.itemsContainer.nativeElement.style.transition = '';\n\n\t\t\tif ((this.page === 0 || this.page === (this.totalDots() - 1)) && this.isCircular()) {\n\t\t\t\tthis.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${this.totalShiftedItems * (100/ this._numVisible)}%, 0)` : `translate3d(${this.totalShiftedItems * (100/ this._numVisible)}%, 0, 0)`;\n\t\t\t}\n\t\t}\n\t}\n\n\tonTouchStart(e) {\n\t\tlet touchobj = e.changedTouches[0];\n\n\t\tthis.startPos = {\n\t\t\tx: touchobj.pageX,\n\t\t\ty: touchobj.pageY\n\t\t};\n\t}\n\n\tonTouchMove(e) {\n\t\tif (e.cancelable) {\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\tonTouchEnd(e) {\n\t\tlet touchobj = e.changedTouches[0];\n\n\t\tif (this.isVertical()) {\n\t\t\tthis.changePageOnTouch(e, (touchobj.pageY - this.startPos.y));\n\t\t}\n\t\telse {\n\t\t\tthis.changePageOnTouch(e, (touchobj.pageX - this.startPos.x));\n\t\t}\n\t}\n\n\tchangePageOnTouch(e, diff) {\n\t\tif (Math.abs(diff) > this.swipeThreshold) {\n\t\t\tif (diff < 0) {\n\t\t\t\tthis.navForward(e);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.navBackward(e);\n\n\t\t\t}\n\t\t}\n\t}\n\n\tbindDocumentListeners() {\n\t\tif (!this.documentResizeListener) {\n\t\t\tthis.documentResizeListener = (e) => {\n\t\t\t\tthis.calculatePosition();\n\t\t\t};\n\n\t\t\twindow.addEventListener('resize', this.documentResizeListener);\n\t\t}\n\t}\n\n\tunbindDocumentListeners() {\n\t\tif (this.documentResizeListener) {\n\t\t\twindow.removeEventListener('resize', this.documentResizeListener);\n\t\t\tthis.documentResizeListener = null;\n\t\t}\n\t}\n\n\tngOnDestroy() {\n\t\tif (this.responsiveOptions) {\n\t\t\tthis.unbindDocumentListeners();\n\t\t}\n\t\tif (this.autoplayInterval) {\n\t\t\tthis.stopAutoplay();\n\t\t}\n }\n\n}\n\n@NgModule({\n\timports: [CommonModule, SharedModule],\n\texports: [CommonModule, Carousel, SharedModule],\n\tdeclarations: [Carousel]\n})\nexport class CarouselModule { }\n"]}
\No newline at end of file