source: trip-planner-front/node_modules/.cache/babel-webpack/846a6693933fe03d06f73074879f470f.json@ 6fe77af

Last change on this file since 6fe77af was e29cc2e, checked in by Ema <ema_spirova@…>, 3 years ago

primeNG components

  • Property mode set to 100644
File size: 92.8 KB
Line 
1{"ast":null,"code":"import * as i0 from '@angular/core';\nimport { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChild, ContentChildren, NgModule } from '@angular/core';\nimport { Header, Footer, PrimeTemplate, SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { UniqueComponentId } from 'primeng/utils';\nconst _c0 = [\"itemsContainer\"];\n\nfunction Carousel_div_1_ng_container_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\n\nfunction Carousel_div_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 11);\n i0.ɵɵprojection(1);\n i0.ɵɵtemplate(2, Carousel_div_1_ng_container_2_Template, 1, 0, \"ng-container\", 12);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r0.headerTemplate);\n }\n}\n\nconst _c1 = function (a1) {\n return {\n \"p-carousel-prev p-link\": true,\n \"p-disabled\": a1\n };\n};\n\nconst _c2 = function (a1, a2) {\n return {\n \"p-carousel-prev-icon pi\": true,\n \"pi-chevron-left\": a1,\n \"pi-chevron-up\": a2\n };\n};\n\nfunction Carousel_button_4_Template(rf, ctx) {\n if (rf & 1) {\n const _r11 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵelementStart(0, \"button\", 13);\n i0.ɵɵlistener(\"click\", function Carousel_button_4_Template_button_click_0_listener($event) {\n i0.ɵɵrestoreView(_r11);\n const ctx_r10 = i0.ɵɵnextContext();\n return ctx_r10.navBackward($event);\n });\n i0.ɵɵelement(1, \"span\", 2);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction1(3, _c1, ctx_r1.isBackwardNavDisabled()))(\"disabled\", ctx_r1.isBackwardNavDisabled());\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction2(5, _c2, !ctx_r1.isVertical(), ctx_r1.isVertical()));\n }\n}\n\nfunction Carousel_div_8_ng_container_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\n\nconst _c3 = function (a1, a2, a3) {\n return {\n \"p-carousel-item p-carousel-item-cloned\": true,\n \"p-carousel-item-active\": a1,\n \"p-carousel-item-start\": a2,\n \"p-carousel-item-end\": a3\n };\n};\n\nconst _c4 = function (a0) {\n return {\n $implicit: a0\n };\n};\n\nfunction Carousel_div_8_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 2);\n i0.ɵɵtemplate(1, Carousel_div_8_ng_container_1_Template, 1, 0, \"ng-container\", 14);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const item_r12 = ctx.$implicit;\n const index_r13 = ctx.index;\n const ctx_r3 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction3(3, _c3, ctx_r3.totalShiftedItems * -1 === ctx_r3.value.length, 0 === index_r13, ctx_r3.clonedItemsForStarting.length - 1 === index_r13));\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r3.itemTemplate)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(7, _c4, item_r12));\n }\n}\n\nfunction Carousel_div_9_ng_container_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\n\nconst _c5 = function (a1, a2, a3) {\n return {\n \"p-carousel-item\": true,\n \"p-carousel-item-active\": a1,\n \"p-carousel-item-start\": a2,\n \"p-carousel-item-end\": a3\n };\n};\n\nfunction Carousel_div_9_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 2);\n i0.ɵɵtemplate(1, Carousel_div_9_ng_container_1_Template, 1, 0, \"ng-container\", 14);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const item_r15 = ctx.$implicit;\n const index_r16 = ctx.index;\n const ctx_r4 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction3(3, _c5, ctx_r4.firstIndex() <= index_r16 && ctx_r4.lastIndex() >= index_r16, ctx_r4.firstIndex() === index_r16, ctx_r4.lastIndex() === index_r16));\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r4.itemTemplate)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(7, _c4, item_r15));\n }\n}\n\nfunction Carousel_div_10_ng_container_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\n\nfunction Carousel_div_10_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 2);\n i0.ɵɵtemplate(1, Carousel_div_10_ng_container_1_Template, 1, 0, \"ng-container\", 14);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const item_r18 = ctx.$implicit;\n const index_r19 = ctx.index;\n const ctx_r5 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction3(3, _c3, ctx_r5.totalShiftedItems * -1 === ctx_r5.numVisible, 0 === index_r19, ctx_r5.clonedItemsForFinishing.length - 1 === index_r19));\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r5.itemTemplate)(\"ngTemplateOutletContext\", i0.ɵɵpureFunction1(7, _c4, item_r18));\n }\n}\n\nconst _c6 = function (a1) {\n return {\n \"p-carousel-next p-link\": true,\n \"p-disabled\": a1\n };\n};\n\nconst _c7 = function (a1, a2) {\n return {\n \"p-carousel-prev-icon pi\": true,\n \"pi-chevron-right\": a1,\n \"pi-chevron-down\": a2\n };\n};\n\nfunction Carousel_button_11_Template(rf, ctx) {\n if (rf & 1) {\n const _r22 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵelementStart(0, \"button\", 13);\n i0.ɵɵlistener(\"click\", function Carousel_button_11_Template_button_click_0_listener($event) {\n i0.ɵɵrestoreView(_r22);\n const ctx_r21 = i0.ɵɵnextContext();\n return ctx_r21.navForward($event);\n });\n i0.ɵɵelement(1, \"span\", 2);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r6 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction1(3, _c6, ctx_r6.isForwardNavDisabled()))(\"disabled\", ctx_r6.isForwardNavDisabled());\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction2(5, _c7, !ctx_r6.isVertical(), ctx_r6.isVertical()));\n }\n}\n\nconst _c8 = function (a1) {\n return {\n \"p-carousel-indicator\": true,\n \"p-highlight\": a1\n };\n};\n\nfunction Carousel_ul_12_li_1_Template(rf, ctx) {\n if (rf & 1) {\n const _r27 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵelementStart(0, \"li\", 2);\n i0.ɵɵelementStart(1, \"button\", 15);\n i0.ɵɵlistener(\"click\", function Carousel_ul_12_li_1_Template_button_click_1_listener($event) {\n const restoredCtx = i0.ɵɵrestoreView(_r27);\n const i_r25 = restoredCtx.index;\n const ctx_r26 = i0.ɵɵnextContext(2);\n return ctx_r26.onDotClick($event, i_r25);\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const i_r25 = ctx.index;\n const ctx_r23 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction1(5, _c8, ctx_r23._page === i_r25));\n i0.ɵɵadvance(1);\n i0.ɵɵclassMap(ctx_r23.indicatorStyleClass);\n i0.ɵɵproperty(\"ngClass\", \"p-link\")(\"ngStyle\", ctx_r23.indicatorStyle);\n }\n}\n\nfunction Carousel_ul_12_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"ul\", 0);\n i0.ɵɵtemplate(1, Carousel_ul_12_li_1_Template, 2, 7, \"li\", 8);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r7 = i0.ɵɵnextContext();\n i0.ɵɵclassMap(ctx_r7.indicatorsContentClass);\n i0.ɵɵproperty(\"ngClass\", \"p-carousel-indicators p-reset\")(\"ngStyle\", ctx_r7.indicatorsContentStyle);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngForOf\", ctx_r7.totalDotsArray());\n }\n}\n\nfunction Carousel_div_13_ng_container_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\n\nfunction Carousel_div_13_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 16);\n i0.ɵɵprojection(1, 1);\n i0.ɵɵtemplate(2, Carousel_div_13_ng_container_2_Template, 1, 0, \"ng-container\", 12);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r8 = i0.ɵɵnextContext();\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r8.footerTemplate);\n }\n}\n\nconst _c9 = [[[\"p-header\"]], [[\"p-footer\"]]];\n\nconst _c10 = function (a1, a2) {\n return {\n \"p-carousel p-component\": true,\n \"p-carousel-vertical\": a1,\n \"p-carousel-horizontal\": a2\n };\n};\n\nconst _c11 = function (a0) {\n return {\n \"height\": a0\n };\n};\n\nconst _c12 = [\"p-header\", \"p-footer\"];\n\nclass Carousel {\n constructor(el, zone, cd) {\n this.el = el;\n this.zone = zone;\n this.cd = cd;\n this.orientation = \"horizontal\";\n this.verticalViewPortHeight = \"300px\";\n this.contentClass = \"\";\n this.indicatorsContentClass = \"\";\n this.indicatorStyleClass = \"\";\n this.circular = false;\n this.showIndicators = true;\n this.showNavigators = true;\n this.autoplayInterval = 0;\n this.onPage = new EventEmitter();\n this._numVisible = 1;\n this._numScroll = 1;\n this._oldNumScroll = 0;\n this.prevState = {\n numScroll: 0,\n numVisible: 0,\n value: []\n };\n this.defaultNumScroll = 1;\n this.defaultNumVisible = 1;\n this._page = 0;\n this.isRemainingItemsAdded = false;\n this.remainingItems = 0;\n this.swipeThreshold = 20;\n this.totalShiftedItems = this.page * this.numScroll * -1;\n }\n\n get page() {\n return this._page;\n }\n\n set page(val) {\n if (this.isCreated && val !== this._page) {\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n\n if (val > this._page && val <= this.totalDots() - 1) {\n this.step(-1, val);\n } else if (val < this._page) {\n this.step(1, val);\n }\n }\n\n this._page = val;\n }\n\n get numVisible() {\n return this._numVisible;\n }\n\n set numVisible(val) {\n this._numVisible = val;\n }\n\n get numScroll() {\n return this._numVisible;\n }\n\n set numScroll(val) {\n this._numScroll = val;\n }\n\n get value() {\n return this._value;\n }\n\n set value(val) {\n this._value = val;\n }\n\n ngOnChanges(simpleChange) {\n if (simpleChange.value) {\n if (this.circular && this._value) {\n this.setCloneItems();\n }\n }\n\n if (this.isCreated) {\n if (simpleChange.numVisible) {\n if (this.responsiveOptions) {\n this.defaultNumVisible = this.numVisible;\n }\n\n if (this.isCircular()) {\n this.setCloneItems();\n }\n\n this.createStyle();\n this.calculatePosition();\n }\n\n if (simpleChange.numScroll) {\n if (this.responsiveOptions) {\n this.defaultNumScroll = this.numScroll;\n }\n }\n }\n }\n\n ngAfterContentInit() {\n this.id = UniqueComponentId();\n this.allowAutoplay = !!this.autoplayInterval;\n\n if (this.circular) {\n this.setCloneItems();\n }\n\n if (this.responsiveOptions) {\n this.defaultNumScroll = this._numScroll;\n this.defaultNumVisible = this._numVisible;\n }\n\n this.createStyle();\n this.calculatePosition();\n\n if (this.responsiveOptions) {\n this.bindDocumentListeners();\n }\n\n this.templates.forEach(item => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n ngAfterContentChecked() {\n const isCircular = this.isCircular();\n let totalShiftedItems = this.totalShiftedItems;\n\n if (this.value && this.itemsContainer && (this.prevState.numScroll !== this._numScroll || this.prevState.numVisible !== this._numVisible || this.prevState.value.length !== this.value.length)) {\n if (this.autoplayInterval) {\n this.stopAutoplay();\n }\n\n this.remainingItems = (this.value.length - this._numVisible) % this._numScroll;\n let page = this._page;\n\n if (this.totalDots() !== 0 && page >= this.totalDots()) {\n page = this.totalDots() - 1;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n\n totalShiftedItems = page * this._numScroll * -1;\n\n if (isCircular) {\n totalShiftedItems -= this._numVisible;\n }\n\n if (page === this.totalDots() - 1 && this.remainingItems > 0) {\n totalShiftedItems += -1 * this.remainingItems + this._numScroll;\n this.isRemainingItemsAdded = true;\n } else {\n this.isRemainingItemsAdded = false;\n }\n\n if (totalShiftedItems !== this.totalShiftedItems) {\n this.totalShiftedItems = totalShiftedItems;\n }\n\n this._oldNumScroll = this._numScroll;\n this.prevState.numScroll = this._numScroll;\n this.prevState.numVisible = this._numVisible;\n this.prevState.value = [...this._value];\n\n if (this.totalDots() > 0 && this.itemsContainer.nativeElement) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n }\n\n this.isCreated = true;\n\n if (this.autoplayInterval && this.isAutoplay()) {\n this.startAutoplay();\n }\n }\n\n if (isCircular) {\n if (this.page === 0) {\n totalShiftedItems = -1 * this._numVisible;\n } else if (totalShiftedItems === 0) {\n totalShiftedItems = -1 * this.value.length;\n\n if (this.remainingItems > 0) {\n this.isRemainingItemsAdded = true;\n }\n }\n\n if (totalShiftedItems !== this.totalShiftedItems) {\n this.totalShiftedItems = totalShiftedItems;\n }\n }\n }\n\n createStyle() {\n if (!this.carouselStyle) {\n this.carouselStyle = document.createElement('style');\n this.carouselStyle.type = 'text/css';\n document.body.appendChild(this.carouselStyle);\n }\n\n let innerHTML = `\n #${this.id} .p-carousel-item {\n\t\t\t\tflex: 1 0 ${100 / this.numVisible}%\n\t\t\t}\n `;\n\n if (this.responsiveOptions) {\n this.responsiveOptions.sort((data1, data2) => {\n const value1 = data1.breakpoint;\n const value2 = data2.breakpoint;\n let result = null;\n if (value1 == null && value2 != null) result = -1;else if (value1 != null && value2 == null) result = 1;else if (value1 == null && value2 == null) result = 0;else if (typeof value1 === 'string' && typeof value2 === 'string') result = value1.localeCompare(value2, undefined, {\n numeric: true\n });else result = value1 < value2 ? -1 : value1 > value2 ? 1 : 0;\n return -1 * result;\n });\n\n for (let i = 0; i < this.responsiveOptions.length; i++) {\n let res = this.responsiveOptions[i];\n innerHTML += `\n @media screen and (max-width: ${res.breakpoint}) {\n #${this.id} .p-carousel-item {\n flex: 1 0 ${100 / res.numVisible}%\n }\n }\n `;\n }\n }\n\n this.carouselStyle.innerHTML = innerHTML;\n }\n\n calculatePosition() {\n if (this.responsiveOptions) {\n let windowWidth = window.innerWidth;\n let matchedResponsiveData = {\n numVisible: this.defaultNumVisible,\n numScroll: this.defaultNumScroll\n };\n\n for (let i = 0; i < this.responsiveOptions.length; i++) {\n let res = this.responsiveOptions[i];\n\n if (parseInt(res.breakpoint, 10) >= windowWidth) {\n matchedResponsiveData = res;\n }\n }\n\n if (this._numScroll !== matchedResponsiveData.numScroll) {\n let page = this._page;\n page = Math.floor(page * this._numScroll / matchedResponsiveData.numScroll);\n let totalShiftedItems = matchedResponsiveData.numScroll * this.page * -1;\n\n if (this.isCircular()) {\n totalShiftedItems -= matchedResponsiveData.numVisible;\n }\n\n this.totalShiftedItems = totalShiftedItems;\n this._numScroll = matchedResponsiveData.numScroll;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n\n if (this._numVisible !== matchedResponsiveData.numVisible) {\n this._numVisible = matchedResponsiveData.numVisible;\n this.setCloneItems();\n }\n\n this.cd.markForCheck();\n }\n }\n\n setCloneItems() {\n this.clonedItemsForStarting = [];\n this.clonedItemsForFinishing = [];\n\n if (this.isCircular()) {\n this.clonedItemsForStarting.push(...this.value.slice(-1 * this._numVisible));\n this.clonedItemsForFinishing.push(...this.value.slice(0, this._numVisible));\n }\n }\n\n firstIndex() {\n return this.isCircular() ? -1 * (this.totalShiftedItems + this.numVisible) : this.totalShiftedItems * -1;\n }\n\n lastIndex() {\n return this.firstIndex() + this.numVisible - 1;\n }\n\n totalDots() {\n return this.value ? Math.ceil((this.value.length - this._numVisible) / this._numScroll) + 1 : 0;\n }\n\n totalDotsArray() {\n const totalDots = this.totalDots();\n return totalDots <= 0 ? [] : Array(totalDots).fill(0);\n }\n\n isVertical() {\n return this.orientation === 'vertical';\n }\n\n isCircular() {\n return this.circular && this.value && this.value.length >= this.numVisible;\n }\n\n isAutoplay() {\n return this.autoplayInterval && this.allowAutoplay;\n }\n\n isForwardNavDisabled() {\n return this.isEmpty() || this._page >= this.totalDots() - 1 && !this.isCircular();\n }\n\n isBackwardNavDisabled() {\n return this.isEmpty() || this._page <= 0 && !this.isCircular();\n }\n\n isEmpty() {\n return !this.value || this.value.length === 0;\n }\n\n navForward(e, index) {\n if (this.isCircular() || this._page < this.totalDots() - 1) {\n this.step(-1, index);\n }\n\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n\n if (e && e.cancelable) {\n e.preventDefault();\n }\n }\n\n navBackward(e, index) {\n if (this.isCircular() || this._page !== 0) {\n this.step(1, index);\n }\n\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n\n if (e && e.cancelable) {\n e.preventDefault();\n }\n }\n\n onDotClick(e, index) {\n let page = this._page;\n\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n\n if (index > page) {\n this.navForward(e, index);\n } else if (index < page) {\n this.navBackward(e, index);\n }\n }\n\n step(dir, page) {\n let totalShiftedItems = this.totalShiftedItems;\n const isCircular = this.isCircular();\n\n if (page != null) {\n totalShiftedItems = this._numScroll * page * -1;\n\n if (isCircular) {\n totalShiftedItems -= this._numVisible;\n }\n\n this.isRemainingItemsAdded = false;\n } else {\n totalShiftedItems += this._numScroll * dir;\n\n if (this.isRemainingItemsAdded) {\n totalShiftedItems += this.remainingItems - this._numScroll * dir;\n this.isRemainingItemsAdded = false;\n }\n\n let originalShiftedItems = isCircular ? totalShiftedItems + this._numVisible : totalShiftedItems;\n page = Math.abs(Math.floor(originalShiftedItems / this._numScroll));\n }\n\n if (isCircular && this.page === this.totalDots() - 1 && dir === -1) {\n totalShiftedItems = -1 * (this.value.length + this._numVisible);\n page = 0;\n } else if (isCircular && this.page === 0 && dir === 1) {\n totalShiftedItems = 0;\n page = this.totalDots() - 1;\n } else if (page === this.totalDots() - 1 && this.remainingItems > 0) {\n totalShiftedItems += this.remainingItems * -1 - this._numScroll * dir;\n this.isRemainingItemsAdded = true;\n }\n\n if (this.itemsContainer) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n this.itemsContainer.nativeElement.style.transition = 'transform 500ms ease 0s';\n }\n\n this.totalShiftedItems = totalShiftedItems;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n\n startAutoplay() {\n this.interval = setInterval(() => {\n if (this.totalDots() > 0) {\n if (this.page === this.totalDots() - 1) {\n this.step(-1, 0);\n } else {\n this.step(-1, this.page + 1);\n }\n }\n }, this.autoplayInterval);\n }\n\n stopAutoplay() {\n if (this.interval) {\n clearInterval(this.interval);\n }\n }\n\n onTransitionEnd() {\n if (this.itemsContainer) {\n this.itemsContainer.nativeElement.style.transition = '';\n\n if ((this.page === 0 || this.page === this.totalDots() - 1) && this.isCircular()) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${this.totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${this.totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n }\n }\n }\n\n onTouchStart(e) {\n let touchobj = e.changedTouches[0];\n this.startPos = {\n x: touchobj.pageX,\n y: touchobj.pageY\n };\n }\n\n onTouchMove(e) {\n if (e.cancelable) {\n e.preventDefault();\n }\n }\n\n onTouchEnd(e) {\n let touchobj = e.changedTouches[0];\n\n if (this.isVertical()) {\n this.changePageOnTouch(e, touchobj.pageY - this.startPos.y);\n } else {\n this.changePageOnTouch(e, touchobj.pageX - this.startPos.x);\n }\n }\n\n changePageOnTouch(e, diff) {\n if (Math.abs(diff) > this.swipeThreshold) {\n if (diff < 0) {\n this.navForward(e);\n } else {\n this.navBackward(e);\n }\n }\n }\n\n bindDocumentListeners() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = e => {\n this.calculatePosition();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n }\n\n unbindDocumentListeners() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n\n ngOnDestroy() {\n if (this.responsiveOptions) {\n this.unbindDocumentListeners();\n }\n\n if (this.autoplayInterval) {\n this.stopAutoplay();\n }\n }\n\n}\n\nCarousel.ɵfac = function Carousel_Factory(t) {\n return new (t || Carousel)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef));\n};\n\nCarousel.ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: Carousel,\n selectors: [[\"p-carousel\"]],\n contentQueries: function Carousel_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, Header, 5);\n i0.ɵɵcontentQuery(dirIndex, Footer, 5);\n i0.ɵɵcontentQuery(dirIndex, PrimeTemplate, 4);\n }\n\n if (rf & 2) {\n let _t;\n\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerFacet = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.footerFacet = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);\n }\n },\n viewQuery: function Carousel_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n }\n\n if (rf & 2) {\n let _t;\n\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.itemsContainer = _t.first);\n }\n },\n hostAttrs: [1, \"p-element\"],\n inputs: {\n page: \"page\",\n numVisible: \"numVisible\",\n numScroll: \"numScroll\",\n responsiveOptions: \"responsiveOptions\",\n orientation: \"orientation\",\n verticalViewPortHeight: \"verticalViewPortHeight\",\n contentClass: \"contentClass\",\n indicatorsContentClass: \"indicatorsContentClass\",\n indicatorsContentStyle: \"indicatorsContentStyle\",\n indicatorStyleClass: \"indicatorStyleClass\",\n indicatorStyle: \"indicatorStyle\",\n value: \"value\",\n circular: \"circular\",\n showIndicators: \"showIndicators\",\n showNavigators: \"showNavigators\",\n autoplayInterval: \"autoplayInterval\",\n style: \"style\",\n styleClass: \"styleClass\"\n },\n outputs: {\n onPage: \"onPage\"\n },\n features: [i0.ɵɵNgOnChangesFeature],\n ngContentSelectors: _c12,\n decls: 14,\n vars: 22,\n consts: [[3, \"ngClass\", \"ngStyle\"], [\"class\", \"p-carousel-header\", 4, \"ngIf\"], [3, \"ngClass\"], [1, \"p-carousel-container\"], [\"type\", \"button\", \"pRipple\", \"\", 3, \"ngClass\", \"disabled\", \"click\", 4, \"ngIf\"], [1, \"p-carousel-items-content\", 3, \"ngStyle\"], [1, \"p-carousel-items-container\", 3, \"transitionend\", \"touchend\", \"touchstart\", \"touchmove\"], [\"itemsContainer\", \"\"], [3, \"ngClass\", 4, \"ngFor\", \"ngForOf\"], [3, \"ngClass\", \"class\", \"ngStyle\", 4, \"ngIf\"], [\"class\", \"p-carousel-footer\", 4, \"ngIf\"], [1, \"p-carousel-header\"], [4, \"ngTemplateOutlet\"], [\"type\", \"button\", \"pRipple\", \"\", 3, \"ngClass\", \"disabled\", \"click\"], [4, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [\"type\", \"button\", 3, \"ngClass\", \"ngStyle\", \"click\"], [1, \"p-carousel-footer\"]],\n template: function Carousel_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef(_c9);\n i0.ɵɵelementStart(0, \"div\", 0);\n i0.ɵɵtemplate(1, Carousel_div_1_Template, 3, 1, \"div\", 1);\n i0.ɵɵelementStart(2, \"div\", 2);\n i0.ɵɵelementStart(3, \"div\", 3);\n i0.ɵɵtemplate(4, Carousel_button_4_Template, 2, 8, \"button\", 4);\n i0.ɵɵelementStart(5, \"div\", 5);\n i0.ɵɵelementStart(6, \"div\", 6, 7);\n i0.ɵɵlistener(\"transitionend\", function Carousel_Template_div_transitionend_6_listener() {\n return ctx.onTransitionEnd();\n })(\"touchend\", function Carousel_Template_div_touchend_6_listener($event) {\n return ctx.onTouchEnd($event);\n })(\"touchstart\", function Carousel_Template_div_touchstart_6_listener($event) {\n return ctx.onTouchStart($event);\n })(\"touchmove\", function Carousel_Template_div_touchmove_6_listener($event) {\n return ctx.onTouchMove($event);\n });\n i0.ɵɵtemplate(8, Carousel_div_8_Template, 2, 9, \"div\", 8);\n i0.ɵɵtemplate(9, Carousel_div_9_Template, 2, 9, \"div\", 8);\n i0.ɵɵtemplate(10, Carousel_div_10_Template, 2, 9, \"div\", 8);\n i0.ɵɵelementEnd();\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(11, Carousel_button_11_Template, 2, 8, \"button\", 4);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(12, Carousel_ul_12_Template, 2, 5, \"ul\", 9);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(13, Carousel_div_13_Template, 3, 1, \"div\", 10);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n i0.ɵɵclassMap(ctx.styleClass);\n i0.ɵɵproperty(\"ngClass\", i0.ɵɵpureFunction2(17, _c10, ctx.isVertical(), !ctx.isVertical()))(\"ngStyle\", ctx.style);\n i0.ɵɵattribute(\"id\", ctx.id);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.headerFacet || ctx.headerTemplate);\n i0.ɵɵadvance(1);\n i0.ɵɵclassMap(ctx.contentClass);\n i0.ɵɵproperty(\"ngClass\", \"p-carousel-content\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx.showNavigators);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngStyle\", i0.ɵɵpureFunction1(20, _c11, ctx.isVertical() ? ctx.verticalViewPortHeight : \"auto\"));\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngForOf\", ctx.clonedItemsForStarting);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngForOf\", ctx.value);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngForOf\", ctx.clonedItemsForFinishing);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.showNavigators);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.showIndicators);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.footerFacet || ctx.footerTemplate);\n }\n },\n directives: [i1.NgClass, i1.NgStyle, i1.NgIf, i1.NgForOf, i1.NgTemplateOutlet, i2.Ripple],\n styles: [\".p-carousel{display:flex;flex-direction:column}.p-carousel-content{display:flex;flex-direction:column;overflow:auto}.p-carousel-prev,.p-carousel-next{align-self:center;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-carousel-container{display:flex;flex-direction:row}.p-carousel-items-content{overflow:hidden;width:100%}.p-carousel-items-container{display:flex;flex-direction:row}.p-carousel-indicators{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap}.p-carousel-indicator>button{display:flex;align-items:center;justify-content:center}.p-carousel-vertical .p-carousel-container{flex-direction:column}.p-carousel-vertical .p-carousel-items-container{flex-direction:column;height:100%}.p-items-hidden .p-carousel-item{visibility:hidden}.p-items-hidden .p-carousel-item.p-carousel-item-active{visibility:visible}\\n\"],\n encapsulation: 2,\n changeDetection: 0\n});\n\n(function () {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(Carousel, [{\n type: Component,\n args: [{\n selector: 'p-carousel',\n template: `\n\t\t<div [attr.id]=\"id\" [ngClass]=\"{'p-carousel p-component':true, 'p-carousel-vertical': isVertical(), 'p-carousel-horizontal': !isVertical()}\" [ngStyle]=\"style\" [class]=\"styleClass\">\n\t\t\t<div class=\"p-carousel-header\" *ngIf=\"headerFacet || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t\t<div [class]=\"contentClass\" [ngClass]=\"'p-carousel-content'\">\n\t\t\t\t<div class=\"p-carousel-container\">\n\t\t\t\t\t<button type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-prev p-link':true, 'p-disabled': isBackwardNavDisabled()}\" [disabled]=\"isBackwardNavDisabled()\" (click)=\"navBackward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-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=\"p-carousel-items-content\" [ngStyle]=\"{'height': isVertical() ? verticalViewPortHeight : 'auto'}\">\n\t\t\t\t\t\t<div #itemsContainer class=\"p-carousel-items-container\" (transitionend)=\"onTransitionEnd()\" (touchend)=\"onTouchEnd($event)\" (touchstart)=\"onTouchStart($event)\" (touchmove)=\"onTouchMove($event)\">\n <div *ngFor=\"let item of clonedItemsForStarting; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': (totalShiftedItems * -1) === (value.length),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of value; let index = index\" [ngClass]= \"{'p-carousel-item': true,\n 'p-carousel-item-active': (firstIndex() <= index && lastIndex() >= index),\n\t\t\t\t\t\t\t 'p-carousel-item-start': firstIndex() === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of clonedItemsForFinishing; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': ((totalShiftedItems *-1) === numVisible),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-next p-link': true, 'p-disabled': isForwardNavDisabled()}\" [disabled]=\"isForwardNavDisabled()\" (click)=\"navForward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-carousel-prev-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 [ngClass]=\"'p-carousel-indicators p-reset'\" [class]=\"indicatorsContentClass\" [ngStyle]=\"indicatorsContentStyle\" *ngIf=\"showIndicators\">\n\t\t\t\t\t<li *ngFor=\"let totalDot of totalDotsArray(); let i = index\" [ngClass]=\"{'p-carousel-indicator':true,'p-highlight': _page === i}\">\n\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"'p-link'\" (click)=\"onDotClick($event, i)\" [class]=\"indicatorStyleClass\" [ngStyle]=\"indicatorStyle\"></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=\"p-carousel-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t</div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n },\n styles: [\".p-carousel{display:flex;flex-direction:column}.p-carousel-content{display:flex;flex-direction:column;overflow:auto}.p-carousel-prev,.p-carousel-next{align-self:center;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-carousel-container{display:flex;flex-direction:row}.p-carousel-items-content{overflow:hidden;width:100%}.p-carousel-items-container{display:flex;flex-direction:row}.p-carousel-indicators{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap}.p-carousel-indicator>button{display:flex;align-items:center;justify-content:center}.p-carousel-vertical .p-carousel-container{flex-direction:column}.p-carousel-vertical .p-carousel-items-container{flex-direction:column;height:100%}.p-items-hidden .p-carousel-item{visibility:hidden}.p-items-hidden .p-carousel-item.p-carousel-item-active{visibility:visible}\\n\"]\n }]\n }], function () {\n return [{\n type: i0.ElementRef\n }, {\n type: i0.NgZone\n }, {\n type: i0.ChangeDetectorRef\n }];\n }, {\n page: [{\n type: Input\n }],\n numVisible: [{\n type: Input\n }],\n numScroll: [{\n type: Input\n }],\n responsiveOptions: [{\n type: Input\n }],\n orientation: [{\n type: Input\n }],\n verticalViewPortHeight: [{\n type: Input\n }],\n contentClass: [{\n type: Input\n }],\n indicatorsContentClass: [{\n type: Input\n }],\n indicatorsContentStyle: [{\n type: Input\n }],\n indicatorStyleClass: [{\n type: Input\n }],\n indicatorStyle: [{\n type: Input\n }],\n value: [{\n type: Input\n }],\n circular: [{\n type: Input\n }],\n showIndicators: [{\n type: Input\n }],\n showNavigators: [{\n type: Input\n }],\n autoplayInterval: [{\n type: Input\n }],\n style: [{\n type: Input\n }],\n styleClass: [{\n type: Input\n }],\n onPage: [{\n type: Output\n }],\n itemsContainer: [{\n type: ViewChild,\n args: ['itemsContainer']\n }],\n headerFacet: [{\n type: ContentChild,\n args: [Header]\n }],\n footerFacet: [{\n type: ContentChild,\n args: [Footer]\n }],\n templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }]\n });\n})();\n\nclass CarouselModule {}\n\nCarouselModule.ɵfac = function CarouselModule_Factory(t) {\n return new (t || CarouselModule)();\n};\n\nCarouselModule.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: CarouselModule\n});\nCarouselModule.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n imports: [[CommonModule, SharedModule, RippleModule], CommonModule, SharedModule]\n});\n\n(function () {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CarouselModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule, SharedModule, RippleModule],\n exports: [CommonModule, Carousel, SharedModule],\n declarations: [Carousel]\n }]\n }], null, null);\n})();\n/**\n * Generated bundle index. Do not edit.\n */\n\n\nexport { Carousel, CarouselModule };","map":{"version":3,"sources":["C:/Users/DELL/Desktop/bachelor-thesis/trip-planner-front/node_modules/primeng/fesm2015/primeng-carousel.mjs"],"names":["i0","EventEmitter","Component","ChangeDetectionStrategy","ViewEncapsulation","Input","Output","ViewChild","ContentChild","ContentChildren","NgModule","Header","Footer","PrimeTemplate","SharedModule","i2","RippleModule","i1","CommonModule","UniqueComponentId","Carousel","constructor","el","zone","cd","orientation","verticalViewPortHeight","contentClass","indicatorsContentClass","indicatorStyleClass","circular","showIndicators","showNavigators","autoplayInterval","onPage","_numVisible","_numScroll","_oldNumScroll","prevState","numScroll","numVisible","value","defaultNumScroll","defaultNumVisible","_page","isRemainingItemsAdded","remainingItems","swipeThreshold","totalShiftedItems","page","val","isCreated","stopAutoplay","allowAutoplay","totalDots","step","_value","ngOnChanges","simpleChange","setCloneItems","responsiveOptions","isCircular","createStyle","calculatePosition","ngAfterContentInit","id","bindDocumentListeners","templates","forEach","item","getType","itemTemplate","template","headerTemplate","footerTemplate","ngAfterContentChecked","itemsContainer","length","emit","nativeElement","style","transform","isVertical","isAutoplay","startAutoplay","carouselStyle","document","createElement","type","body","appendChild","innerHTML","sort","data1","data2","value1","breakpoint","value2","result","localeCompare","undefined","numeric","i","res","windowWidth","window","innerWidth","matchedResponsiveData","parseInt","Math","floor","markForCheck","clonedItemsForStarting","clonedItemsForFinishing","push","slice","firstIndex","lastIndex","ceil","totalDotsArray","Array","fill","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","ɵfac","ElementRef","NgZone","ChangeDetectorRef","ɵcmp","NgClass","NgStyle","NgIf","NgForOf","NgTemplateOutlet","Ripple","args","selector","changeDetection","OnPush","encapsulation","None","host","styles","indicatorsContentStyle","indicatorStyle","styleClass","headerFacet","footerFacet","CarouselModule","ɵmod","ɵinj","imports","exports","declarations"],"mappings":"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","sourcesContent":["import * as i0 from '@angular/core';\nimport { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ViewChild, ContentChild, ContentChildren, NgModule } from '@angular/core';\nimport { Header, Footer, PrimeTemplate, SharedModule } from 'primeng/api';\nimport * as i2 from 'primeng/ripple';\nimport { RippleModule } from 'primeng/ripple';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport { UniqueComponentId } from 'primeng/utils';\n\nclass Carousel {\n constructor(el, zone, cd) {\n this.el = el;\n this.zone = zone;\n this.cd = cd;\n this.orientation = \"horizontal\";\n this.verticalViewPortHeight = \"300px\";\n this.contentClass = \"\";\n this.indicatorsContentClass = \"\";\n this.indicatorStyleClass = \"\";\n this.circular = false;\n this.showIndicators = true;\n this.showNavigators = true;\n this.autoplayInterval = 0;\n this.onPage = new EventEmitter();\n this._numVisible = 1;\n this._numScroll = 1;\n this._oldNumScroll = 0;\n this.prevState = {\n numScroll: 0,\n numVisible: 0,\n value: []\n };\n this.defaultNumScroll = 1;\n this.defaultNumVisible = 1;\n this._page = 0;\n this.isRemainingItemsAdded = false;\n this.remainingItems = 0;\n this.swipeThreshold = 20;\n this.totalShiftedItems = this.page * this.numScroll * -1;\n }\n get page() {\n return this._page;\n }\n set page(val) {\n if (this.isCreated && val !== this._page) {\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n if (val > this._page && val <= (this.totalDots() - 1)) {\n this.step(-1, val);\n }\n else if (val < this._page) {\n this.step(1, val);\n }\n }\n this._page = val;\n }\n get numVisible() {\n return this._numVisible;\n }\n set numVisible(val) {\n this._numVisible = val;\n }\n get numScroll() {\n return this._numVisible;\n }\n set numScroll(val) {\n this._numScroll = val;\n }\n get value() {\n return this._value;\n }\n ;\n set value(val) {\n this._value = val;\n }\n ngOnChanges(simpleChange) {\n if (simpleChange.value) {\n if (this.circular && this._value) {\n this.setCloneItems();\n }\n }\n if (this.isCreated) {\n if (simpleChange.numVisible) {\n if (this.responsiveOptions) {\n this.defaultNumVisible = this.numVisible;\n }\n if (this.isCircular()) {\n this.setCloneItems();\n }\n this.createStyle();\n this.calculatePosition();\n }\n if (simpleChange.numScroll) {\n if (this.responsiveOptions) {\n this.defaultNumScroll = this.numScroll;\n }\n }\n }\n }\n ngAfterContentInit() {\n this.id = UniqueComponentId();\n this.allowAutoplay = !!this.autoplayInterval;\n if (this.circular) {\n this.setCloneItems();\n }\n if (this.responsiveOptions) {\n this.defaultNumScroll = this._numScroll;\n this.defaultNumVisible = this._numVisible;\n }\n this.createStyle();\n this.calculatePosition();\n if (this.responsiveOptions) {\n this.bindDocumentListeners();\n }\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n ngAfterContentChecked() {\n const isCircular = this.isCircular();\n let totalShiftedItems = this.totalShiftedItems;\n if (this.value && this.itemsContainer && (this.prevState.numScroll !== this._numScroll || this.prevState.numVisible !== this._numVisible || this.prevState.value.length !== this.value.length)) {\n if (this.autoplayInterval) {\n this.stopAutoplay();\n }\n this.remainingItems = (this.value.length - this._numVisible) % this._numScroll;\n let page = this._page;\n if (this.totalDots() !== 0 && page >= this.totalDots()) {\n page = this.totalDots() - 1;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n totalShiftedItems = (page * this._numScroll) * -1;\n if (isCircular) {\n totalShiftedItems -= this._numVisible;\n }\n if (page === (this.totalDots() - 1) && this.remainingItems > 0) {\n totalShiftedItems += (-1 * this.remainingItems) + this._numScroll;\n this.isRemainingItemsAdded = true;\n }\n else {\n this.isRemainingItemsAdded = false;\n }\n if (totalShiftedItems !== this.totalShiftedItems) {\n this.totalShiftedItems = totalShiftedItems;\n }\n this._oldNumScroll = this._numScroll;\n this.prevState.numScroll = this._numScroll;\n this.prevState.numVisible = this._numVisible;\n this.prevState.value = [...this._value];\n if (this.totalDots() > 0 && this.itemsContainer.nativeElement) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n }\n this.isCreated = true;\n if (this.autoplayInterval && this.isAutoplay()) {\n this.startAutoplay();\n }\n }\n if (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 if (totalShiftedItems !== this.totalShiftedItems) {\n this.totalShiftedItems = totalShiftedItems;\n }\n }\n }\n createStyle() {\n if (!this.carouselStyle) {\n this.carouselStyle = document.createElement('style');\n this.carouselStyle.type = 'text/css';\n document.body.appendChild(this.carouselStyle);\n }\n let innerHTML = `\n #${this.id} .p-carousel-item {\n\t\t\t\tflex: 1 0 ${(100 / this.numVisible)}%\n\t\t\t}\n `;\n if (this.responsiveOptions) {\n this.responsiveOptions.sort((data1, data2) => {\n const value1 = data1.breakpoint;\n const value2 = data2.breakpoint;\n let result = null;\n if (value1 == null && value2 != null)\n result = -1;\n else if (value1 != null && value2 == null)\n result = 1;\n else if (value1 == null && value2 == null)\n result = 0;\n else if (typeof value1 === 'string' && typeof value2 === 'string')\n result = value1.localeCompare(value2, undefined, { numeric: true });\n else\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\n return -1 * result;\n });\n for (let i = 0; i < this.responsiveOptions.length; i++) {\n let res = this.responsiveOptions[i];\n innerHTML += `\n @media screen and (max-width: ${res.breakpoint}) {\n #${this.id} .p-carousel-item {\n flex: 1 0 ${(100 / res.numVisible)}%\n }\n }\n `;\n }\n }\n this.carouselStyle.innerHTML = innerHTML;\n }\n calculatePosition() {\n if (this.responsiveOptions) {\n let windowWidth = window.innerWidth;\n let matchedResponsiveData = {\n numVisible: this.defaultNumVisible,\n numScroll: this.defaultNumScroll\n };\n for (let i = 0; i < this.responsiveOptions.length; i++) {\n let res = this.responsiveOptions[i];\n if (parseInt(res.breakpoint, 10) >= windowWidth) {\n matchedResponsiveData = res;\n }\n }\n if (this._numScroll !== matchedResponsiveData.numScroll) {\n let page = this._page;\n page = Math.floor((page * this._numScroll) / matchedResponsiveData.numScroll);\n let totalShiftedItems = (matchedResponsiveData.numScroll * this.page) * -1;\n if (this.isCircular()) {\n totalShiftedItems -= matchedResponsiveData.numVisible;\n }\n this.totalShiftedItems = totalShiftedItems;\n this._numScroll = matchedResponsiveData.numScroll;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n if (this._numVisible !== matchedResponsiveData.numVisible) {\n this._numVisible = matchedResponsiveData.numVisible;\n this.setCloneItems();\n }\n this.cd.markForCheck();\n }\n }\n setCloneItems() {\n this.clonedItemsForStarting = [];\n this.clonedItemsForFinishing = [];\n if (this.isCircular()) {\n this.clonedItemsForStarting.push(...this.value.slice(-1 * this._numVisible));\n this.clonedItemsForFinishing.push(...this.value.slice(0, this._numVisible));\n }\n }\n firstIndex() {\n return this.isCircular() ? (-1 * (this.totalShiftedItems + this.numVisible)) : (this.totalShiftedItems * -1);\n }\n lastIndex() {\n return this.firstIndex() + this.numVisible - 1;\n }\n totalDots() {\n return this.value ? Math.ceil((this.value.length - this._numVisible) / this._numScroll) + 1 : 0;\n }\n totalDotsArray() {\n const totalDots = this.totalDots();\n return totalDots <= 0 ? [] : Array(totalDots).fill(0);\n }\n isVertical() {\n return this.orientation === 'vertical';\n }\n isCircular() {\n return this.circular && this.value && this.value.length >= this.numVisible;\n }\n isAutoplay() {\n return this.autoplayInterval && this.allowAutoplay;\n }\n isForwardNavDisabled() {\n return this.isEmpty() || (this._page >= (this.totalDots() - 1) && !this.isCircular());\n }\n isBackwardNavDisabled() {\n return this.isEmpty() || (this._page <= 0 && !this.isCircular());\n }\n isEmpty() {\n return !this.value || this.value.length === 0;\n }\n navForward(e, index) {\n if (this.isCircular() || this._page < (this.totalDots() - 1)) {\n this.step(-1, index);\n }\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n if (e && e.cancelable) {\n e.preventDefault();\n }\n }\n navBackward(e, index) {\n if (this.isCircular() || this._page !== 0) {\n this.step(1, index);\n }\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n if (e && e.cancelable) {\n e.preventDefault();\n }\n }\n onDotClick(e, index) {\n let page = this._page;\n if (this.autoplayInterval) {\n this.stopAutoplay();\n this.allowAutoplay = false;\n }\n if (index > page) {\n this.navForward(e, index);\n }\n else if (index < page) {\n this.navBackward(e, index);\n }\n }\n step(dir, page) {\n let totalShiftedItems = this.totalShiftedItems;\n const isCircular = this.isCircular();\n if (page != null) {\n totalShiftedItems = (this._numScroll * page) * -1;\n if (isCircular) {\n totalShiftedItems -= this._numVisible;\n }\n this.isRemainingItemsAdded = false;\n }\n else {\n totalShiftedItems += (this._numScroll * dir);\n if (this.isRemainingItemsAdded) {\n totalShiftedItems += this.remainingItems - (this._numScroll * dir);\n this.isRemainingItemsAdded = false;\n }\n let originalShiftedItems = isCircular ? (totalShiftedItems + this._numVisible) : totalShiftedItems;\n page = Math.abs(Math.floor((originalShiftedItems / this._numScroll)));\n }\n if (isCircular && this.page === (this.totalDots() - 1) && dir === -1) {\n totalShiftedItems = -1 * (this.value.length + this._numVisible);\n page = 0;\n }\n else if (isCircular && this.page === 0 && dir === 1) {\n totalShiftedItems = 0;\n page = (this.totalDots() - 1);\n }\n else if (page === (this.totalDots() - 1) && this.remainingItems > 0) {\n totalShiftedItems += ((this.remainingItems * -1) - (this._numScroll * dir));\n this.isRemainingItemsAdded = true;\n }\n if (this.itemsContainer) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n this.itemsContainer.nativeElement.style.transition = 'transform 500ms ease 0s';\n }\n this.totalShiftedItems = totalShiftedItems;\n this._page = page;\n this.onPage.emit({\n page: this.page\n });\n }\n startAutoplay() {\n this.interval = setInterval(() => {\n if (this.totalDots() > 0) {\n if (this.page === (this.totalDots() - 1)) {\n this.step(-1, 0);\n }\n else {\n this.step(-1, this.page + 1);\n }\n }\n }, this.autoplayInterval);\n }\n stopAutoplay() {\n if (this.interval) {\n clearInterval(this.interval);\n }\n }\n onTransitionEnd() {\n if (this.itemsContainer) {\n this.itemsContainer.nativeElement.style.transition = '';\n if ((this.page === 0 || this.page === (this.totalDots() - 1)) && this.isCircular()) {\n this.itemsContainer.nativeElement.style.transform = this.isVertical() ? `translate3d(0, ${this.totalShiftedItems * (100 / this._numVisible)}%, 0)` : `translate3d(${this.totalShiftedItems * (100 / this._numVisible)}%, 0, 0)`;\n }\n }\n }\n onTouchStart(e) {\n let touchobj = e.changedTouches[0];\n this.startPos = {\n x: touchobj.pageX,\n y: touchobj.pageY\n };\n }\n onTouchMove(e) {\n if (e.cancelable) {\n e.preventDefault();\n }\n }\n onTouchEnd(e) {\n let touchobj = e.changedTouches[0];\n if (this.isVertical()) {\n this.changePageOnTouch(e, (touchobj.pageY - this.startPos.y));\n }\n else {\n this.changePageOnTouch(e, (touchobj.pageX - this.startPos.x));\n }\n }\n changePageOnTouch(e, diff) {\n if (Math.abs(diff) > this.swipeThreshold) {\n if (diff < 0) {\n this.navForward(e);\n }\n else {\n this.navBackward(e);\n }\n }\n }\n bindDocumentListeners() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = (e) => {\n this.calculatePosition();\n };\n window.addEventListener('resize', this.documentResizeListener);\n }\n }\n unbindDocumentListeners() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n ngOnDestroy() {\n if (this.responsiveOptions) {\n this.unbindDocumentListeners();\n }\n if (this.autoplayInterval) {\n this.stopAutoplay();\n }\n }\n}\nCarousel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: Carousel, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\nCarousel.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"12.0.0\", version: \"13.0.0\", type: Carousel, selector: \"p-carousel\", inputs: { page: \"page\", numVisible: \"numVisible\", numScroll: \"numScroll\", responsiveOptions: \"responsiveOptions\", orientation: \"orientation\", verticalViewPortHeight: \"verticalViewPortHeight\", contentClass: \"contentClass\", indicatorsContentClass: \"indicatorsContentClass\", indicatorsContentStyle: \"indicatorsContentStyle\", indicatorStyleClass: \"indicatorStyleClass\", indicatorStyle: \"indicatorStyle\", value: \"value\", circular: \"circular\", showIndicators: \"showIndicators\", showNavigators: \"showNavigators\", autoplayInterval: \"autoplayInterval\", style: \"style\", styleClass: \"styleClass\" }, outputs: { onPage: \"onPage\" }, host: { classAttribute: \"p-element\" }, queries: [{ propertyName: \"headerFacet\", first: true, predicate: Header, descendants: true }, { propertyName: \"footerFacet\", first: true, predicate: Footer, descendants: true }, { propertyName: \"templates\", predicate: PrimeTemplate }], viewQueries: [{ propertyName: \"itemsContainer\", first: true, predicate: [\"itemsContainer\"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `\n\t\t<div [attr.id]=\"id\" [ngClass]=\"{'p-carousel p-component':true, 'p-carousel-vertical': isVertical(), 'p-carousel-horizontal': !isVertical()}\" [ngStyle]=\"style\" [class]=\"styleClass\">\n\t\t\t<div class=\"p-carousel-header\" *ngIf=\"headerFacet || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t\t<div [class]=\"contentClass\" [ngClass]=\"'p-carousel-content'\">\n\t\t\t\t<div class=\"p-carousel-container\">\n\t\t\t\t\t<button type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-prev p-link':true, 'p-disabled': isBackwardNavDisabled()}\" [disabled]=\"isBackwardNavDisabled()\" (click)=\"navBackward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-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=\"p-carousel-items-content\" [ngStyle]=\"{'height': isVertical() ? verticalViewPortHeight : 'auto'}\">\n\t\t\t\t\t\t<div #itemsContainer class=\"p-carousel-items-container\" (transitionend)=\"onTransitionEnd()\" (touchend)=\"onTouchEnd($event)\" (touchstart)=\"onTouchStart($event)\" (touchmove)=\"onTouchMove($event)\">\n <div *ngFor=\"let item of clonedItemsForStarting; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': (totalShiftedItems * -1) === (value.length),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of value; let index = index\" [ngClass]= \"{'p-carousel-item': true,\n 'p-carousel-item-active': (firstIndex() <= index && lastIndex() >= index),\n\t\t\t\t\t\t\t 'p-carousel-item-start': firstIndex() === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of clonedItemsForFinishing; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': ((totalShiftedItems *-1) === numVisible),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-next p-link': true, 'p-disabled': isForwardNavDisabled()}\" [disabled]=\"isForwardNavDisabled()\" (click)=\"navForward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-carousel-prev-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 [ngClass]=\"'p-carousel-indicators p-reset'\" [class]=\"indicatorsContentClass\" [ngStyle]=\"indicatorsContentStyle\" *ngIf=\"showIndicators\">\n\t\t\t\t\t<li *ngFor=\"let totalDot of totalDotsArray(); let i = index\" [ngClass]=\"{'p-carousel-indicator':true,'p-highlight': _page === i}\">\n\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"'p-link'\" (click)=\"onDotClick($event, i)\" [class]=\"indicatorStyleClass\" [ngStyle]=\"indicatorStyle\"></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=\"p-carousel-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t</div>\n `, isInline: true, styles: [\".p-carousel{display:flex;flex-direction:column}.p-carousel-content{display:flex;flex-direction:column;overflow:auto}.p-carousel-prev,.p-carousel-next{align-self:center;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-carousel-container{display:flex;flex-direction:row}.p-carousel-items-content{overflow:hidden;width:100%}.p-carousel-items-container{display:flex;flex-direction:row}.p-carousel-indicators{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap}.p-carousel-indicator>button{display:flex;align-items:center;justify-content:center}.p-carousel-vertical .p-carousel-container{flex-direction:column}.p-carousel-vertical .p-carousel-items-container{flex-direction:column;height:100%}.p-items-hidden .p-carousel-item{visibility:hidden}.p-items-hidden .p-carousel-item.p-carousel-item-active{visibility:visible}\\n\"], directives: [{ type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { type: i1.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { type: i1.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { type: i1.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\"] }, { type: i2.Ripple, selector: \"[pRipple]\" }, { type: i1.NgForOf, selector: \"[ngFor][ngForOf]\", inputs: [\"ngForOf\", \"ngForTrackBy\", \"ngForTemplate\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: Carousel, decorators: [{\n type: Component,\n args: [{ selector: 'p-carousel', template: `\n\t\t<div [attr.id]=\"id\" [ngClass]=\"{'p-carousel p-component':true, 'p-carousel-vertical': isVertical(), 'p-carousel-horizontal': !isVertical()}\" [ngStyle]=\"style\" [class]=\"styleClass\">\n\t\t\t<div class=\"p-carousel-header\" *ngIf=\"headerFacet || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t\t<div [class]=\"contentClass\" [ngClass]=\"'p-carousel-content'\">\n\t\t\t\t<div class=\"p-carousel-container\">\n\t\t\t\t\t<button type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-prev p-link':true, 'p-disabled': isBackwardNavDisabled()}\" [disabled]=\"isBackwardNavDisabled()\" (click)=\"navBackward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-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=\"p-carousel-items-content\" [ngStyle]=\"{'height': isVertical() ? verticalViewPortHeight : 'auto'}\">\n\t\t\t\t\t\t<div #itemsContainer class=\"p-carousel-items-container\" (transitionend)=\"onTransitionEnd()\" (touchend)=\"onTouchEnd($event)\" (touchstart)=\"onTouchStart($event)\" (touchmove)=\"onTouchMove($event)\">\n <div *ngFor=\"let item of clonedItemsForStarting; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': (totalShiftedItems * -1) === (value.length),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of value; let index = index\" [ngClass]= \"{'p-carousel-item': true,\n 'p-carousel-item-active': (firstIndex() <= index && lastIndex() >= index),\n\t\t\t\t\t\t\t 'p-carousel-item-start': firstIndex() === index,\n\t\t\t\t\t\t\t 'p-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 <div *ngFor=\"let item of clonedItemsForFinishing; let index = index\" [ngClass]= \"{'p-carousel-item p-carousel-item-cloned': true,\n 'p-carousel-item-active': ((totalShiftedItems *-1) === numVisible),\n\t\t\t\t\t\t\t 'p-carousel-item-start': 0 === index,\n\t\t\t\t\t\t\t 'p-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 type=\"button\" *ngIf=\"showNavigators\" [ngClass]=\"{'p-carousel-next p-link': true, 'p-disabled': isForwardNavDisabled()}\" [disabled]=\"isForwardNavDisabled()\" (click)=\"navForward($event)\" pRipple>\n\t\t\t\t\t\t<span [ngClass]=\"{'p-carousel-prev-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 [ngClass]=\"'p-carousel-indicators p-reset'\" [class]=\"indicatorsContentClass\" [ngStyle]=\"indicatorsContentStyle\" *ngIf=\"showIndicators\">\n\t\t\t\t\t<li *ngFor=\"let totalDot of totalDotsArray(); let i = index\" [ngClass]=\"{'p-carousel-indicator':true,'p-highlight': _page === i}\">\n\t\t\t\t\t\t<button type=\"button\" [ngClass]=\"'p-link'\" (click)=\"onDotClick($event, i)\" [class]=\"indicatorStyleClass\" [ngStyle]=\"indicatorStyle\"></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=\"p-carousel-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n\t\t\t</div>\n\t\t</div>\n `, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {\n 'class': 'p-element'\n }, styles: [\".p-carousel{display:flex;flex-direction:column}.p-carousel-content{display:flex;flex-direction:column;overflow:auto}.p-carousel-prev,.p-carousel-next{align-self:center;flex-grow:0;flex-shrink:0;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative}.p-carousel-container{display:flex;flex-direction:row}.p-carousel-items-content{overflow:hidden;width:100%}.p-carousel-items-container{display:flex;flex-direction:row}.p-carousel-indicators{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap}.p-carousel-indicator>button{display:flex;align-items:center;justify-content:center}.p-carousel-vertical .p-carousel-container{flex-direction:column}.p-carousel-vertical .p-carousel-items-container{flex-direction:column;height:100%}.p-items-hidden .p-carousel-item{visibility:hidden}.p-items-hidden .p-carousel-item.p-carousel-item-active{visibility:visible}\\n\"] }]\n }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { page: [{\n type: Input\n }], numVisible: [{\n type: Input\n }], numScroll: [{\n type: Input\n }], responsiveOptions: [{\n type: Input\n }], orientation: [{\n type: Input\n }], verticalViewPortHeight: [{\n type: Input\n }], contentClass: [{\n type: Input\n }], indicatorsContentClass: [{\n type: Input\n }], indicatorsContentStyle: [{\n type: Input\n }], indicatorStyleClass: [{\n type: Input\n }], indicatorStyle: [{\n type: Input\n }], value: [{\n type: Input\n }], circular: [{\n type: Input\n }], showIndicators: [{\n type: Input\n }], showNavigators: [{\n type: Input\n }], autoplayInterval: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], onPage: [{\n type: Output\n }], itemsContainer: [{\n type: ViewChild,\n args: ['itemsContainer']\n }], headerFacet: [{\n type: ContentChild,\n args: [Header]\n }], footerFacet: [{\n type: ContentChild,\n args: [Footer]\n }], templates: [{\n type: ContentChildren,\n args: [PrimeTemplate]\n }] } });\nclass CarouselModule {\n}\nCarouselModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: CarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\nCarouselModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: CarouselModule, declarations: [Carousel], imports: [CommonModule, SharedModule, RippleModule], exports: [CommonModule, Carousel, SharedModule] });\nCarouselModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: CarouselModule, imports: [[CommonModule, SharedModule, RippleModule], CommonModule, SharedModule] });\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"13.0.0\", ngImport: i0, type: CarouselModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, SharedModule, RippleModule],\n exports: [CommonModule, Carousel, SharedModule],\n declarations: [Carousel]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Carousel, CarouselModule };\n"]},"metadata":{},"sourceType":"module"}
Note: See TracBrowser for help on using the repository browser.