{"version":3,"sources":["webpack:///./modules/DownloadGallery.ts"],"names":["__webpack_require__","r","__webpack_exports__","uikit__WEBPACK_IMPORTED_MODULE_0__","uikit__WEBPACK_IMPORTED_MODULE_0___default","n","_helpers_helperFunctions__WEBPACK_IMPORTED_MODULE_1__","_helpers_DOMHelpers__WEBPACK_IMPORTED_MODULE_2__","direction","document","dir","DownloadGallery","element","_this","this","a","util","ready","accordion","multiple","width","window","innerWidth","screen","Object","Array","from","querySelectorAll","forEach","sliderElement","slider","customPagination","querySelector","on","$el","e","target","img","closest","style","top","height","animateCustomNavDots","setup","selector","filter","node","dataset","moduleInitialized","prototype","getSliderIndex","parentNode","children","indexOf","naviationDots","currentIndex","transformValue","navItemsList","navItemLength","length","visibleDotsToShow","Math","min","directionCorrection","leftPosition","slice","rightPosition","isCenter","isRight","transform"],"mappings":"2FAAAA,EAAAC,EAAAC,GAAA,IAAAC,EAAAH,EAAA,KAAAI,EAAAJ,EAAAK,EAAAF,GAAAG,EAAAN,EAAA,IAAAO,EAAAP,EAAA,GAIMQ,EAAoBC,SAASC,IAGnCC,EAAA,WASI,SAAAA,EAAmBC,GAAnB,IAAAC,EAAAC,KAAmBA,KAAAF,UAEfR,EAAAW,EAAMC,KAAKC,MAAM,WACbb,EAAAW,EAAMG,UAAU,uCACZC,UAAU,IAEd,IAAIC,EAAiBC,OAAOC,WAAa,EACnCD,OAAOC,WACPC,OAAOH,MAETI,OAAAlB,EAAA,EAAAkB,IAAcJ,GAAS,KACvBK,MAAMC,KAAKd,EAAQe,iBAAiB,mFAAmFC,QAAQ,SAACC,GAC5H,IAAIC,EAAS1B,EAAAW,EAAMe,OAAOD,MACtBE,EAAgCF,EAAcG,cAAc,yBAEhE5B,EAAAW,EAAMC,KAAKiB,GAAGH,EAAOI,IAAK,WAAY,SAACC,GACnC,IAAMC,EAAmCD,EAAEC,OACvCC,EAAwBD,EAAOJ,cAAc,OACRI,EAAOE,QAAQ,wBACGN,cAAc,gBACvDO,MAAMC,IAAM,IAAOH,EAAII,OAAS,EAAK,KACvD5B,EAAK6B,qBAAqBN,EAAQL,SAiD1D,OA7EWpB,EAAAgC,MAAP,SAAaC,QAAA,IAAAA,MAJM,mCAKfnB,MAAMC,KAAKjB,SAASkB,iBAAiBiB,IAAWC,OAAO,SAACC,GAAsB,OAACA,EAAKC,QAAQC,oBAAmBpB,QAAQ,SAAChB,GACpH,IAAID,EAAgBC,GACpBA,EAAQmC,QAAQC,kBAAoB,UAgC5CrC,EAAAsC,UAAAC,eAAA,SAAed,GACX,OAAOX,MAAMC,KAAKU,EAAOe,WAAWC,UAAUC,QAAQjB,IAG1DzB,EAAAsC,UAAAP,qBAAA,SAAqBN,EAAqBL,GACtC,IAAMuB,EAA6BvB,EAAiBC,cAAc,kBAG9DuB,EAAuBzC,KAAKoC,eAAed,GAC3CoB,EAHsB,IAGID,EAFD,GAGzBE,EAA8BhC,MAAMC,KAAK4B,EAAcF,UACvDM,EAAgBD,EAAaE,OAC7BC,EAAoBC,KAAKC,IAAI,EAAGJ,GAEhCK,EAAsB,IACtBC,EAAeP,EAAaQ,MAAM,EAAG,GAAGN,OACxCO,EAAgBT,EAAaE,OATJ,EAYzBQ,EAAWZ,GAAgBS,GAAgBT,EAAeW,EAC1DE,EAAUb,GAAgBW,EAEb,OAAb1D,IAAsBuD,EAAsB,IAJjCR,EAAeS,IAO1BxC,OAAAjB,EAAA,EAAAiB,CAAoBiC,EAAc,mBAClCjC,OAAAjB,EAAA,EAAAiB,EAAgBiC,EAAaG,EAAoB,IAAK,mBACtDN,EAAcf,MAAM8B,UAAY,cAAcN,EAAsB,QAGpEI,IACA3C,OAAAjB,EAAA,EAAAiB,CAAoBiC,EAAc,mBAClCjC,OAAAjB,EAAA,EAAAiB,EAAgBiC,EAAaF,EAzBJ,GAyBoCE,EAAaF,EAzBjD,IAyBkF,mBAC3GD,EAAcf,MAAM8B,UAAY,cAAcN,EAAsBP,EAAc,OAGlFY,IACA5C,OAAAjB,EAAA,EAAAiB,CAAoBiC,EAAc,mBAClCjC,OAAAjB,EAAA,EAAAiB,EAAgBiC,EAAaC,EAAgBE,IAAqB,mBAClEN,EAAcf,MAAM8B,UAAY,cAAcN,GAAsBG,EAAiC,GAAjB,GAAmB,QAGnHvD,EA/EA,eA8FI,IAAIA,EAAgBgC,MAhGD,mCAkGvB,IAAIhC,EAAgBgC","file":"./modules/DownloadGallery.1afdb2ea.js","sourcesContent":["/// \r\nimport UIkit from 'uikit';\r\nimport { isMobile } from '../helpers/helperFunctions';\r\nimport { removeClassFromList, addClassToList } from '../helpers/DOMHelpers';\r\nconst direction: string = document.dir;\r\nconst moduleSelector = '[data-module=\"DownloadGallery\"]';\r\n\r\nexport default class DownloadGallery {\r\n\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new DownloadGallery(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element?: HTMLElement) {\r\n\r\n UIkit.util.ready(() => {\r\n UIkit.accordion(\".cp-download-gallery-accordion-list\", {\r\n multiple: false\r\n });\r\n var width: number = (window.innerWidth > 0)\r\n ? window.innerWidth\r\n : screen.width;\r\n\r\n if (isMobile() && width <= 768) {\r\n Array.from(element.querySelectorAll('.cw-download-gallery-accordion-item .uk-accordion-content .media-items-wrapper')).forEach((sliderElement) => {\r\n var slider = UIkit.slider(sliderElement, {}),\r\n customPagination = sliderElement.querySelector('.cw-custom_pagination');\r\n\r\n UIkit.util.on(slider.$el, 'itemshow', (e) => {\r\n const target: HTMLElement = e.target,\r\n img: HTMLImageElement = target.querySelector('img'),\r\n sliderUl: HTMLElement = target.closest('.media-items-wrapper'),\r\n naviationChevrons: HTMLElement = sliderUl.querySelector('.cw-controls');\r\n naviationChevrons.style.top = 330 - (img.height / 2) + 'px';\r\n this.animateCustomNavDots(target, customPagination);\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n getSliderIndex(target): number {\r\n return Array.from(target.parentNode.children).indexOf(target);\r\n }\r\n\r\n animateCustomNavDots(target: HTMLElement, customPagination: HTMLElement) {\r\n const naviationDots = customPagination.querySelector('.uk-slider-nav'),\r\n dotDistance: number = 18,\r\n leftCorrection: number = 3,\r\n currentIndex: number = this.getSliderIndex(target),\r\n transformValue: number = (currentIndex - leftCorrection) * dotDistance,\r\n navItemsList = Array.from(naviationDots.children),\r\n navItemLength = navItemsList.length,\r\n visibleDotsToShow = Math.min(7, navItemLength);\r\n\r\n let directionCorrection = \"-\",\r\n leftPosition = navItemsList.slice(0, 4).length,\r\n rightPosition = navItemsList.length - leftCorrection;\r\n\r\n const isLeft = currentIndex < leftPosition,\r\n isCenter = currentIndex >= leftPosition && currentIndex < rightPosition,\r\n isRight = currentIndex >= rightPosition;\r\n\r\n if (direction == 'rtl') { directionCorrection = '' };\r\n\r\n if (isLeft) {\r\n removeClassFromList(navItemsList, 'uk-dotnav_small');\r\n addClassToList([navItemsList[visibleDotsToShow - 1]], 'uk-dotnav_small');\r\n naviationDots.style.transform = `translateX(${directionCorrection}${0}px)`;\r\n }\r\n\r\n if (isCenter) {\r\n removeClassFromList(navItemsList, 'uk-dotnav_small');\r\n addClassToList([navItemsList[currentIndex + leftCorrection], navItemsList[currentIndex - leftCorrection]], 'uk-dotnav_small');\r\n naviationDots.style.transform = `translateX(${directionCorrection}${transformValue}px)`;\r\n }\r\n\r\n if (isRight) {\r\n removeClassFromList(navItemsList, 'uk-dotnav_small');\r\n addClassToList([navItemsList[navItemLength - visibleDotsToShow]], 'uk-dotnav_small');\r\n naviationDots.style.transform = `translateX(${directionCorrection}${rightPosition - (leftPosition) * 18}px)`;\r\n }\r\n }\r\n}\r\n\r\n// Hot Module Replacement\r\nif (module.hot) {\r\n let nodesCache: HMRNodes[] = Array.from(document.querySelectorAll(moduleSelector)).map((element: Node) => ({ nodeToReplace: element, nodeOrigin: element.cloneNode(true) }));\r\n\r\n new DownloadGallery.setup(moduleSelector);\r\n\r\n module.hot.accept(() => {\r\n new DownloadGallery.setup(moduleSelector);\r\n });\r\n module.hot.dispose(() => {\r\n nodesCache.forEach(({ nodeToReplace, nodeOrigin }) => { nodeToReplace = nodeToReplace.parentElement.replaceChild(nodeOrigin.cloneNode(true), nodeToReplace) });\r\n });\r\n} else {\r\n new DownloadGallery.setup(moduleSelector);\r\n}\r\nnew DownloadGallery.setup();"],"sourceRoot":""}