{"version":3,"file":"carousel-CNU4mOXc.js","sources":["../../Frontend/js/modules/carousel.js"],"sourcesContent":["import gsap from 'gsap';\r\n\r\nexport default function fCarousel() {\r\n const aCarousels = document.querySelectorAll('.js-carousel');\r\n\r\n const fInitCarousel = (oCarousel) => {\r\n const aThumbs = oCarousel.querySelectorAll('.js-carousel-thumb');\r\n const aTextBlocks = oCarousel.querySelectorAll('.js-carousel-text');\r\n const oCarouselLeft = oCarousel.querySelector('.js-carousel-left');\r\n const oCarouselRight = oCarousel.querySelector('.js-carousel-right');\r\n const aImagesLeft = oCarouselLeft.querySelectorAll('.js-carousel-image');\r\n const aImagesRight = oCarouselRight.querySelectorAll('.js-carousel-image');\r\n\r\n const oButtonPrev = oCarousel.querySelector('.js-carousel-prev');\r\n const oButtonNext = oCarousel.querySelector('.js-carousel-next');\r\n\r\n let iCurrentIndex = 0;\r\n let iTargetIndex = 1;\r\n\r\n const fShowItem = () => {\r\n let oTimeline = gsap.timeline();\r\n let oCurrentTextBlock = aTextBlocks[iCurrentIndex];\r\n let oCurrentImageLeft = aImagesLeft[iCurrentIndex];\r\n let oCurrentImageRight = aImagesRight[iCurrentIndex];\r\n let oTargetTextBlock = aTextBlocks[iTargetIndex];\r\n let oTargetImageLeft = aImagesLeft[iTargetIndex];\r\n let oTargetImageRight = aImagesRight[iTargetIndex];\r\n\r\n gsap.defaults({ease: 'quart.Out'});\r\n oTimeline.timeScale(2);\r\n\r\n oTimeline.set(oTargetImageLeft, {\r\n x: iCurrentIndex > iTargetIndex ? '100%' : \"-100%\",\r\n display: 'block'\r\n }).set(oTargetImageRight, {\r\n x: iCurrentIndex > iTargetIndex ? '100%' : \"-100%\",\r\n display: 'block'\r\n }).to(oCurrentImageLeft, 1, {\r\n x: iCurrentIndex > iTargetIndex ? '-100%' : \"100%\"\r\n }).to(oCurrentImageRight, 1, {\r\n x: iCurrentIndex > iTargetIndex ? '-100%' : \"100%\"\r\n }, 0).to(oTargetImageLeft, 1, {\r\n x: '0%'\r\n }, 0).to(oTargetImageRight, 1, {\r\n x: '0%'\r\n }, 0).set(oCurrentTextBlock, {\r\n display: 'none'\r\n }, 0).set(oTargetTextBlock, {\r\n display: 'block'\r\n }, 0);\r\n\r\n aThumbs[iCurrentIndex].classList.remove('is-active');\r\n aThumbs[iTargetIndex].classList.add('is-active');\r\n\r\n let tempTargetIndex = iTargetIndex;\r\n iCurrentIndex = tempTargetIndex;\r\n iTargetIndex = tempTargetIndex !== (aImagesLeft.length - 1) ? tempTargetIndex + 1 : 0;\r\n }\r\n\r\n if (oButtonPrev) {\r\n oButtonPrev.addEventListener('click', e => {\r\n iTargetIndex = iCurrentIndex > 0 ? iCurrentIndex - 1 : aImagesLeft.length - 1;\r\n fShowItem();\r\n });\r\n }\r\n\r\n if (oButtonNext) {\r\n oButtonNext.addEventListener('click', e => {\r\n iTargetIndex = iCurrentIndex < aImagesLeft.length - 1 ? iCurrentIndex + 1 : 0;\r\n fShowItem();\r\n });\r\n }\r\n\r\n oCarousel.addEventListener('click', event => {\r\n if (event.target.closest('.js-carousel-items') && !event.target.closest('.age-restriction')) {\r\n fShowItem();\r\n }\r\n\r\n if (event.target.matches('.js-carousel-thumb')) {\r\n iTargetIndex = parseInt(event.target.getAttribute('data-carousel-target'), 10);\r\n\r\n fShowItem();\r\n }\r\n });\r\n }\r\n\r\n for (let a = 0; a < aCarousels.length; a += 1) {\r\n fInitCarousel(aCarousels[a]);\r\n }\r\n}\r\n"],"names":["fCarousel","aCarousels","fInitCarousel","oCarousel","aThumbs","aTextBlocks","oCarouselLeft","oCarouselRight","aImagesLeft","aImagesRight","oButtonPrev","oButtonNext","iCurrentIndex","iTargetIndex","fShowItem","oTimeline","gsap","oCurrentTextBlock","oCurrentImageLeft","oCurrentImageRight","oTargetTextBlock","oTargetImageLeft","oTargetImageRight","tempTargetIndex","e","event","a"],"mappings":"wCAEe,SAASA,GAAY,CAChC,MAAMC,EAAa,SAAS,iBAAiB,cAAc,EAErDC,EAAiBC,GAAc,CACjC,MAAMC,EAAUD,EAAU,iBAAiB,oBAAoB,EACzDE,EAAcF,EAAU,iBAAiB,mBAAmB,EAC5DG,EAAgBH,EAAU,cAAc,mBAAmB,EAC3DI,EAAiBJ,EAAU,cAAc,oBAAoB,EAC7DK,EAAcF,EAAc,iBAAiB,oBAAoB,EACjEG,EAAeF,EAAe,iBAAiB,oBAAoB,EAEnEG,EAAcP,EAAU,cAAc,mBAAmB,EACzDQ,EAAcR,EAAU,cAAc,mBAAmB,EAE/D,IAAIS,EAAgB,EAChBC,EAAe,EAEnB,MAAMC,EAAY,IAAM,CACpB,IAAIC,EAAYC,EAAK,WACjBC,EAAoBZ,EAAYO,CAAa,EAC7CM,EAAoBV,EAAYI,CAAa,EAC7CO,EAAqBV,EAAaG,CAAa,EAC/CQ,EAAmBf,EAAYQ,CAAY,EAC3CQ,EAAmBb,EAAYK,CAAY,EAC3CS,EAAoBb,EAAaI,CAAY,EAEjDG,EAAK,SAAS,CAAC,KAAM,WAAW,CAAC,EACjCD,EAAU,UAAU,CAAC,EAErBA,EAAU,IAAIM,EAAkB,CAC5B,EAAGT,EAAgBC,EAAe,OAAS,QAC3C,QAAS,OACzB,CAAa,EAAE,IAAIS,EAAmB,CACtB,EAAGV,EAAgBC,EAAe,OAAS,QAC3C,QAAS,OACzB,CAAa,EAAE,GAAGK,EAAmB,EAAG,CACxB,EAAGN,EAAgBC,EAAe,QAAU,MAC5D,CAAa,EAAE,GAAGM,EAAoB,EAAG,CACzB,EAAGP,EAAgBC,EAAe,QAAU,MAC/C,EAAE,CAAC,EAAE,GAAGQ,EAAkB,EAAG,CAC1B,EAAG,IACN,EAAE,CAAC,EAAE,GAAGC,EAAmB,EAAG,CAC3B,EAAG,IACnB,EAAe,CAAC,EAAE,IAAIL,EAAmB,CACzB,QAAS,MACzB,EAAe,CAAC,EAAE,IAAIG,EAAkB,CACxB,QAAS,OACZ,EAAE,CAAC,EAEJhB,EAAQQ,CAAa,EAAE,UAAU,OAAO,WAAW,EACnDR,EAAQS,CAAY,EAAE,UAAU,IAAI,WAAW,EAE/C,IAAIU,EAAkBV,EACtBD,EAAgBW,EAChBV,EAAeU,IAAqBf,EAAY,OAAS,EAAKe,EAAkB,EAAI,CACvF,EAEGb,GACAA,EAAY,iBAAiB,QAASc,GAAK,CACvCX,EAAeD,EAAgB,EAAIA,EAAgB,EAAIJ,EAAY,OAAS,EAC5EM,GAChB,CAAa,EAGDH,GACAA,EAAY,iBAAiB,QAASa,GAAK,CACvCX,EAAeD,EAAgBJ,EAAY,OAAS,EAAII,EAAgB,EAAI,EAC5EE,GAChB,CAAa,EAGLX,EAAU,iBAAiB,QAASsB,GAAS,CACrCA,EAAM,OAAO,QAAQ,oBAAoB,GAAK,CAACA,EAAM,OAAO,QAAQ,kBAAkB,GACtFX,IAGAW,EAAM,OAAO,QAAQ,oBAAoB,IACzCZ,EAAe,SAASY,EAAM,OAAO,aAAa,sBAAsB,EAAG,EAAE,EAE7EX,IAEhB,CAAS,CACJ,EAED,QAASY,EAAI,EAAGA,EAAIzB,EAAW,OAAQyB,GAAK,EACxCxB,EAAcD,EAAWyB,CAAC,CAAC,CAEnC"}