{"version":3,"sources":["webpack:///./aan/node_modules/ui-theme/widgets/slideshow/js/announement-slideshow.ts","webpack:///./aan/node_modules/@atypon/ui-bundle-generator/.generated/groups/_slideshow.js"],"names":["base","shadows","animatingClass","initElements","this","selectors","wrapper","options","isAnimatable","watchSlidesProgress","speed","addEventListeners","swiper","elements","length","on","onProgress","bind","onTransitionStart","onTransitionEnd","onClick","classList","add","remove","event","target","navigation","nextEl","prevEl","slideChangeTransitionEnd","rangeCalc","getSlideProgress","shadowLineTop","shadowLineBottom","style","cssText","multiplier","slides","slide","slideProgress","Math","abs","progress","slideProgressLimit","AnnouncementsSlideShow","Selectors","ClassList","Texts","main","UX","$slideShow","Array","prototype","slice","call","document","getElementsByClassName","$announcementsSlideShow","slideShow","map","item","SlideShow","initialize","err","console","error","announcementsSlideShow"],"mappings":"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","file":"js/slideshow-ab9b6b2436c8174000ab.js","sourcesContent":["import SlideShow, { SlideShowClassList, SlideShowElements, SlideShowOptions, SlideShowSelectors, SlideShowTexts } from '..';\nimport { BaseInjector } from '../../../js/base';\nimport { querySelectorAll, isIE, EmptyNodeList } from '../../../utility/utils/index';\nimport Swiper from 'swiper';\n\nclass Texts extends SlideShowTexts { }\n\nclass ClassList extends SlideShowClassList {\n base = 'slideshow--is-animating';\n shadows = 'slideshow--animate-shadow';\n}\n\nclass Selectors extends SlideShowSelectors {\n shadows = '.announcement__slideshow__shadow';\n animatingClass = 'slideshow--is-animating';\n}\n \nclass Elements extends SlideShowElements {\n selectors: Selectors;\n shadows: NodeListOf = new EmptyNodeList();\n\n initElements() {\n super.initElements()\n this.shadows = querySelectorAll(this.selectors.shadows, this.wrapper);\n }\n}\n\n\ninterface AnnouncementsSlideShow extends SlideShow {\n get selectors(): Selectors;\n get classList(): ClassList;\n get elements(): Elements;\n get texts(): Texts;\n}\n\n@BaseInjector(Selectors, Elements, ClassList, Texts)\nclass AnnouncementsSlideShow extends SlideShow {\n\n options(): SlideShowOptions {\n const options = super.options();\n if (!this.isAnimatable) {\n return options;\n }\n const customOptions = {\n watchSlidesProgress: true,\n speed: 400\n };\n return { ...options, ...customOptions };\n }\n\n get isAnimatable() {\n return true;\n }\n\n addEventListeners(swiper) {\n super.addEventListeners(swiper);\n if (!this.isAnimatable || !this.elements.shadows.length) {\n return;\n }\n swiper\n .on('progress', this.onProgress.bind(this))\n .on('transitionStart', this.onTransitionStart.bind(this))\n .on('transitionEnd', this.onTransitionEnd.bind(this));\n\n if (!isIE()) {\n swiper.on('click', this.onClick.bind(this));\n }\n }\n\n\n\n /**\n *\n */\n onTransitionStart() {\n this.wrapper.classList.add(this.classList.base);\n }\n\n /**\n *\n */\n onTransitionEnd() {\n this.wrapper.classList.remove(this.classList.base);\n }\n\n /**\n * Check that the click was on the navigation buttons and add class shadow\n *\n * @param swiper\n * @param event\n */\n onClick(swiper, event) {\n const { target } = event;\n if (target !== swiper.navigation.nextEl && target !== swiper.navigation.prevEl) {\n return;\n }\n this.wrapper.classList.add(this.classList.shadows);\n }\n\n /**\n * Remove the shadow animator\n *\n * @param swiper\n */\n slideChangeTransitionEnd(swiper) {\n this.wrapper.classList.remove(this.classList.shadows);\n super.slideChangeTransitionEnd(swiper);\n }\n\n /**\n * Animate the shadows based on the progress of pointer drag\n *\n * @param swiper\n * @param _\n */\n onProgress(swiper: Swiper) {\n const shadows = this.elements.shadows;\n\n if (!shadows.length) {\n return;\n }\n\n const rangeCalc = this.getSlideProgress.bind(this, swiper);\n const { 0: shadowLineTop, 1: shadowLineBottom } = shadows;\n if (shadowLineTop) {\n shadowLineTop.style.cssText = `\n width: calc(100% - ${rangeCalc(128)}px);\n left: ${rangeCalc(64)}px;\n transform: scaleY(${rangeCalc(2)})\n `;\n }\n if (shadowLineBottom) {\n shadowLineBottom.style.cssText = `\n width: calc(100% - ${rangeCalc(48)}px);\n left: ${rangeCalc(24)}px;\n transform: scaleY(${rangeCalc(2)})\n `;\n }\n }\n\n /**\n *\n * @param multiplier\n */\n getSlideProgress(swiper: Swiper, multiplier): number {\n if (swiper.slides) {\n // slide progress only decimal positive number minus 0.5 (0 ~ .5)\n const slide = swiper.slides[0] as any;\n const slideProgress = Math.abs((slide.progress % 1) - 0.5);\n // set slider progress lower limit (0) && upper limit (0.5)\n let slideProgressLimit = 0;\n if (slideProgress >= 0) {\n slideProgressLimit = (slideProgress > 0.5) ? 0.5 : slideProgress;\n }\n // slide progress range (0.5 ~ 0 ~ 0.5) * multiplier\n return slideProgressLimit * multiplier;\n }\n }\n\n}\n\nexport default AnnouncementsSlideShow;\n\nexport {\n Elements as AnnouncementsSlideShowElements,\n Selectors as AnnouncementsSlideShowSelectors,\n ClassList as AnnouncementsSlideShowClassList,\n Texts as AnnouncementsSlideShowTexts\n}","\n import SlideShow from '/mnt/ssd/na101/home/literatum/sourcegit/ui-products-branches/maint-250204-c9c27144/ui-products/wk/aan/node_modules/ui-theme/widgets/slideshow/index'; \nimport AnnouncementsSlideShow from '/mnt/ssd/na101/home/literatum/sourcegit/ui-products-branches/maint-250204-c9c27144/ui-products/wk/aan/node_modules/ui-theme/widgets/slideshow/js/announement-slideshow'; \nconst main = (UX) => {\n const $slideShow = Array.prototype.slice.call(document.getElementsByClassName('slideshow')),\n $announcementsSlideShow = Array.prototype.slice.call(document.getElementsByClassName('announcement__slideshow'))\n\ntry {\n if ($slideShow.length ) {\n UX.slideShow = $slideShow\n .map(item=>new SlideShow(item).initialize())\n }\n } catch (err) {\n console.error(err);\n }\n \ntry {\n if ($announcementsSlideShow.length ) {\n UX.announcementsSlideShow = $announcementsSlideShow\n .map(item=>new AnnouncementsSlideShow(item).initialize())\n }\n } catch (err) {\n console.error(err);\n }\n \n}\n\n export default main;\n "],"sourceRoot":""}