{"version":3,"sources":["heroSliderBlock.js"],"names":["heroSliderBlock","initTinySlider","el","dataset","sliderId","autoplay","loop","pauseButton","querySelector","isPaused","prevButton","nextButton","slider","tns","container","items","slideBy","controls","navContainer","autoplayButton","autoplayTimeout","speed","onInit","tabIndex","events","on","classList","add","remove","addEventListener","play","pause","parallaxScrolling","scrollY","window","querySelectorAll","forEach","media","style","top","paddingBottom","initBlock","children","length","contains","document","_global","getOpacity","ControlBinders","register"],"mappings":"AAAA,MAAMA,gBAAkB,MACtB,MAcMC,EAAiBC,IACJA,EAAGC,QAAQC,SAA5B,MACMC,EAAWH,EAAGC,QAAQE,SACtBC,EAAOJ,EAAGC,QAAQG,KAClBC,EAAcL,EAAGM,cAAc,gBACrC,IAAIC,GAAW,EACf,MAAMC,EAAaR,EAAGM,cAAc,eAC9BG,EAAaT,EAAGM,cAAc,eAO9BI,EAASC,IAAI,CACjBC,UAAWZ,EAAGM,cAAc,2BAC5BO,MAAO,EACPC,QAAS,OACTX,SAAuB,SAAbA,EACVC,KAAe,SAATA,EACNW,UAAU,EACVC,aAAchB,EAAGM,cAAc,cAC/BE,WAAYA,EACZC,WAAYA,EACZQ,gBAAgB,EAChBC,gBAAiB,IACjBC,MAAO,IACPC,OAAQ,WAjBRZ,EAAWa,SAAW,EACtBZ,EAAWY,SAAW,KAoBxBX,EAAOY,OAAOC,GAAG,kBAAmB,WAClCvB,EAAGwB,UAAUC,IAAI,mCAEnBf,EAAOY,OAAOC,GAAG,gBAAiB,WAChCvB,EAAGwB,UAAUE,OAAO,mCAEtBrB,GAAeA,EAAYsB,iBAAiB,QAAS,KAC/CpB,GACFG,EAAOkB,OACPvB,EAAYmB,UAAUE,OAAO,6CAC7BnB,GAAW,IAEXG,EAAOmB,QACPxB,EAAYmB,UAAUC,IAAI,6CAC1BlB,GAAW,MAKXuB,EAAoB9B,IACxB,MAAM+B,EAAUC,OAAOD,QACvB/B,EAAGiC,iBAAiB,6BAA6BC,QAAQC,IACvDA,EAAMC,MAAMC,OAASN,EAAU,QAEjC/B,EAAGiC,iBAAiB,+BAA+BC,QAAQC,IACzDA,EAAMC,MAAME,iBAAmBP,EAAU,EAAI,UAIjD,MAAO,CACLQ,UA3EgBvC,IACZA,EAAGM,cAAc,2BAA2BkC,SAASC,OAAS,GAChE1C,EAAeC,GAGbA,EAAGwB,UAAUkB,SAAS,0BACxBC,SAAShB,iBAAiB,SAAU,KAClCG,EAAkB9B,GAElB4C,QAAQC,WAAW7C,QAVH,GAgFxB8C,eAAeC,SAAS,qBAAsB/C,GAAMF,gBAAgByC,UAAUvC","sourcesContent":["const heroSliderBlock = (() => {\r\n\r\n const initBlock = (el) => {\r\n if(el.querySelector(\"[data-slider-container]\").children.length > 1){\r\n initTinySlider(el); \r\n }\r\n if(el.classList.contains('hero-slider--parallax')){\r\n document.addEventListener('scroll', () => {\r\n parallaxScrolling(el);\r\n _global.getOpacity(el);\r\n }); \r\n }\r\n };\r\n\r\n const initTinySlider = (el) => {\r\n const sliderId = el.dataset.sliderId;\r\n const autoplay = el.dataset.autoplay;\r\n const loop = el.dataset.loop;\r\n const pauseButton = el.querySelector(\"[data-pause]\");\r\n let isPaused = false;\r\n const prevButton = el.querySelector(\"[data-prev]\");\r\n const nextButton = el.querySelector(\"[data-next]\");\r\n const tidyIndexes = () =>{\r\n prevButton.tabIndex = 0;\r\n nextButton.tabIndex = 0;\r\n }\r\n\r\n const slider = tns({\r\n container: el.querySelector(\"[data-slider-container]\"),\r\n items: 1,\r\n slideBy: 'page',\r\n autoplay: autoplay === \"True\",\r\n loop: loop === \"True\",\r\n controls: true,\r\n navContainer: el.querySelector(\"[data-nav]\"),\r\n prevButton: prevButton,\r\n nextButton: nextButton,\r\n autoplayButton: false,\r\n autoplayTimeout: 4000,\r\n speed: 900,\r\n onInit: function() {\r\n tidyIndexes()\r\n }\r\n });\r\n\r\n slider.events.on('transitionStart', function() {\r\n el.classList.add('hero-slider--is-transitioning');\r\n });\r\n\r\n slider.events.on('transitionEnd', function() {\r\n el.classList.remove('hero-slider--is-transitioning');\r\n });\r\n \r\n pauseButton && pauseButton.addEventListener(\"click\", ()=>{\r\n if(isPaused){\r\n slider.play();\r\n pauseButton.classList.remove(\"hero-slider__controls__nav__pause--paused\");\r\n isPaused = false;\r\n }else{\r\n slider.pause();\r\n pauseButton.classList.add(\"hero-slider__controls__nav__pause--paused\");\r\n isPaused = true;\r\n }\r\n })\r\n };\r\n\r\n const parallaxScrolling = (el) => {\r\n const scrollY = window.scrollY;\r\n el.querySelectorAll('.hero-slider__item__media').forEach((media) => {\r\n media.style.top = `${(scrollY / 2)}px`;\r\n });\r\n el.querySelectorAll('.hero-slider__item__content').forEach((media) => {\r\n media.style.paddingBottom = `${(scrollY / 5) + 30}px`;\r\n });\r\n };\r\n\r\n return {initBlock};\r\n})();\r\n\r\nControlBinders.register(\"[data-hero-slider]\", el => heroSliderBlock.initBlock(el));"],"file":"heroSliderBlock-min.js"}