{"version":3,"sources":["webpack:///./src/components/pmicom/components/related-articles-partial/controller.js","webpack:///./src/js/isRtl.js","webpack:///./src/js/miniSwipe.js"],"names":["default","breakXtraSmall","require","mediaQueryMin","trackGtm","trackGtm4","MiniSwipe","module","exports","init","smallImageAboveTitleList","root","querySelectorAll","widgetName","getAttribute","widetTitle","Object","assign","initialize","swipedList","touchZone","swipeContainer","hasSwipe","forEach","element","addEventListener","readingTime","closest","querySelector","categoryName","linkText","innerText","eventCategory","eventAction","eventLabel","href","event","widget_name","widget_title","category_name","link_text","link_url","reading_time","onResize","deactivate","activate","isRtl","document","asyncImport","OUT_EASING","DELAY_DEBOUNCE","DIRECTION_LEFT","DIRECTION_RIGHT","stuttering","onWidthResize","mediumDelay","getNumber","getClosest","isFocusable","getFocusablesFrom","duration","CLASS_ACTIVE","CLASS_IS_PANNING","toggleSwiped","swiped","isActive","classList","toggle","undefined","setAttribute","markTilesActive","currentOffset","target","viewablesCount","defineNotches","initTouchEvents","setTilesActive","touch","Hammer","throtteledActivation","throttle","bind","on","e","offset","deltaMove","deltaX","add","panEnd","DEBOUNCE","getOffsetFromDelta","adjustToNotch","remove","setOffset","style","setProperty","set","enable","list","getOffset","position","getBoundingClientRect","window","innerWidth","origin","notches","map","lastNotch","length","delta","limit","next","MoveToDirection","previous","isNext","currentIndex","indexOf","Math","abs","incrementedIndex","jumpToIndex","getLoopedIndex","index","lastIndex","value","notch","animation","easing","update","animations","currentValue","anime","targets","adjustToNotchEvents","getNotchIndex","notchToFind","notchWidth","half","some","i","givenTarget","onUpdate","current","onFirst","offFirst","onLast","offLast","max","min"],"mappings":"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","file":"components--related-articles-partial8fa9f1b3348c92c06ccb.js","sourcesContent":["const {\n\tdefault: { breakXtraSmall },\n} = require('../../../../js/sass-variables');\nconst { mediaQueryMin, trackGtm, trackGtm4 } = require('util/functions');\nconst MiniSwipe = require('../../../../js/miniSwipe');\n\nmodule.exports = {\n\tinit() {\n\t\tconst smallImageAboveTitleList = this.root.querySelectorAll(\n\t\t\t'.small-image-above-title a',\n\t\t);\n\t\tconst widgetName = this.root.getAttribute('data-parent');\n\t\tconst widetTitle = this.root.getAttribute('data-title');\n\n\t\tObject.assign(this, MiniSwipe);\n\n\t\tthis.initialize({\n\t\t\tswipedList: this.root.querySelectorAll('.small-image-above-title'),\n\t\t\ttouchZone: this.root,\n\t\t\tswipeContainer: this.root,\n\t\t\thasSwipe: false,\n\t\t});\n\n\t\tsmallImageAboveTitleList.forEach(element => {\n\t\t\telement.addEventListener('click', () => {\n\t\t\t\tconst readingTime = element\n\t\t\t\t\t.closest('.small-image-above-title')\n\t\t\t\t\t?.querySelector('.small-image-above-title--reading-time');\n\t\t\t\tconst categoryName = element\n\t\t\t\t\t.closest('.small-image-above-title')\n\t\t\t\t\t?.querySelector('.category-title');\n\t\t\t\tconst linkText = element.querySelector('img')\n\t\t\t\t\t? element.querySelector('img')?.getAttribute('alt')\n\t\t\t\t\t\t? `Alt text: ${element.querySelector('img')?.getAttribute('alt')}`\n\t\t\t\t\t\t: 'Alt text: not set'\n\t\t\t\t\t: element.innerText;\n\t\t\t\ttrackGtm({\n\t\t\t\t\teventCategory: 'articles',\n\t\t\t\t\teventAction: 'Related Articles',\n\t\t\t\t\teventLabel: element.href,\n\t\t\t\t});\n\t\t\t\ttrackGtm4({\n\t\t\t\t\tevent: 'GA4_event_c_related_article',\n\t\t\t\t\twidget_name: widgetName,\n\t\t\t\t\twidget_title: widetTitle ? widetTitle : 'Title not set',\n\t\t\t\t\tcategory_name: categoryName\n\t\t\t\t\t\t? categoryName.innerText\n\t\t\t\t\t\t: 'Category not set',\n\t\t\t\t\tlink_text: linkText,\n\t\t\t\t\tlink_url: element.href,\n\t\t\t\t\treading_time: readingTime ? readingTime.innerText : 'No reading time',\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t},\n\tonResize() {\n\t\tif (mediaQueryMin(breakXtraSmall)) {\n\t\t\t// desktop\n\t\t\tthis.deactivate();\n\t\t} else {\n\t\t\t// mobile\n\t\t\tthis.activate();\n\t\t}\n\t},\n};\n","const isRtl = !!document.querySelector('[dir=\"rtl\"]');\n\nexport default isRtl;\n","const asyncImport = require('util/asyncImport').default;\nconst {\n\tOUT_EASING,\n\tDELAY_DEBOUNCE,\n\tDIRECTION_LEFT,\n\tDIRECTION_RIGHT,\n} = require('./consts');\nconst { stuttering, default: onWidthResize } = require('./onWidthResize');\nconst {\n\tdefault: { mediumDelay },\n} = require('./sass-variables');\nconst {\n\tgetNumber,\n\tgetClosest,\n\tisFocusable,\n\tgetFocusablesFrom,\n} = require('./functions');\nconst isRtl = require('./isRtl').default;\n\nconst duration = getNumber(mediumDelay) * 1000;\n\nconst CLASS_ACTIVE = 'active';\nconst CLASS_IS_PANNING = 'is-panning';\n\n// initialize parameters:\n// swipedList\n// list of elements that will be swiped.\n// touchZone\n// element in wich the swiping fill happen\n// swipeContainer\n// the element in wich the div that will be swiped will move according to --offset\n//\n// in object declarable methods:\n// onResize\n// the resize event\n// onFirst, on last\n// called when on the first or the last element respectively\n// offFirst, offLast\n// called when out of them\n//\n// import the object in your widget with a Object.assign(this, MiniSwipe);\n\nconst toggleSwiped = (swiped, isActive, hasSwipe) => {\n\tswiped.classList.toggle(CLASS_ACTIVE, isActive);\n\tif (hasSwipe || hasSwipe == undefined) {\n\t\t[\n\t\t\t...getFocusablesFrom(swiped),\n\t\t\t...(isFocusable(swiped) ? [swiped] : []),\n\t\t].forEach(element => element.setAttribute('tabindex', isActive ? 0 : -1));\n\t}\n};\n\nmodule.exports = {\n\tasync initialize({\n\t\tswipedList,\n\t\ttouchZone,\n\t\tswipeContainer,\n\t\tmarkTilesActive,\n\t\thasSwipe,\n\t}) {\n\t\tthis.swipedList = swipedList;\n\t\tthis.markTilesActive = markTilesActive;\n\t\tthis.swipeContainer = swipeContainer;\n\t\tthis.touchZone = touchZone;\n\t\tthis.hasSwipe = hasSwipe;\n\t\tthis.currentOffset = 0;\n\t\tthis.target = 0;\n\t\tthis.viewablesCount = 1;\n\t\tawait asyncImport(this, ['anime', 'Hammer', 'throttle']);\n\n\t\tthis.defineNotches();\n\t\tthis.initTouchEvents();\n\t\tthis.setTilesActive(0);\n\t},\n\tinitTouchEvents() {\n\t\tthis.touch = new this.Hammer(this.touchZone);\n\t\tconst throtteledActivation = this.throttle(\n\t\t\tthis.setTilesActive.bind(this),\n\t\t\t50,\n\t\t);\n\t\tthis.touch.on('pan', e => {\n\t\t\tconst offset = this.deltaMove(e.deltaX);\n\t\t\t// to precent link click while panning on desktop\n\t\t\tthis.touchZone.classList.add(CLASS_IS_PANNING);\n\t\t\tthrotteledActivation(offset);\n\t\t});\n\t\tthis.touch.on('panend', this.panEnd.bind(this));\n\t\tif (this.onResize) {\n\t\t\tonWidthResize(\n\t\t\t\t() => {\n\t\t\t\t\tthis.onResize();\n\t\t\t\t\tif (this.markTilesActive) this.setTilesActive();\n\t\t\t\t},\n\t\t\t\tstuttering.DEBOUNCE,\n\t\t\t\tDELAY_DEBOUNCE,\n\t\t\t);\n\t\t\tthis.onResize();\n\t\t}\n\t},\n\tpanEnd(e) {\n\t\tthis.deltaMove(e.deltaX);\n\t\tthis.currentOffset = this.getOffsetFromDelta(e.deltaX);\n\t\tthis.adjustToNotch(this.currentOffset);\n\t\tthis.touchZone.classList.remove(CLASS_IS_PANNING);\n\t},\n\tsetOffset(offset) {\n\t\tthis.swipeContainer.style.setProperty('--offset', offset);\n\t\tthis.offset = offset;\n\t\tthis.target = offset;\n\t},\n\tdeactivate() {\n\t\tif (this.touch) this.touch.set({ enable: false });\n\t\tthis.setOffset(0);\n\t},\n\tactivate() {\n\t\tthis.touch.set({ enable: true });\n\t\tthis.defineNotches();\n\t},\n\tdefineNotches() {\n\t\tconst list = [...this.swipedList];\n\t\tconst getOffset = element => {\n\t\t\tconst position =\n\t\t\t\telement.getBoundingClientRect()[isRtl ? 'right' : 'left'];\n\t\t\treturn isRtl ? window.innerWidth - position : position;\n\t\t};\n\t\tconst origin = getOffset(this.swipeContainer);\n\t\tthis.notches = list.map(swiped => getOffset(swiped) - origin);\n\t\tthis.lastNotch = this.notches[this.notches.length - this.viewablesCount];\n\t},\n\tgetOffsetFromDelta(delta) {\n\t\treturn this.limit(this.currentOffset + delta * (isRtl ? 1 : -1));\n\t},\n\tdeltaMove(delta) {\n\t\tconst offset = this.getOffsetFromDelta(delta);\n\t\tthis.setOffset(-offset);\n\t\treturn offset;\n\t},\n\tnext() {\n\t\tthis.MoveToDirection(true);\n\t},\n\tprevious() {\n\t\tthis.MoveToDirection(false);\n\t},\n\tMoveToDirection(isNext) {\n\t\tconst currentIndex = this.notches.indexOf(\n\t\t\tgetClosest(this.notches, Math.abs(this.target)),\n\t\t);\n\t\tconst incrementedIndex = currentIndex + (isNext ? 1 : -1);\n\t\tthis.jumpToIndex(this.getLoopedIndex(incrementedIndex));\n\t},\n\tgetLoopedIndex(index) {\n\t\tconst lastIndex = this.notches.indexOf(this.lastNotch) + 1;\n\t\treturn (index + lastIndex) % lastIndex;\n\t},\n\tjumpToIndex(index) {\n\t\tthis.adjustToNotch(this.notches[this.getLoopedIndex(index)]);\n\t},\n\tadjustToNotch(value) {\n\t\tif (this.target !== value) {\n\t\t\tconst notch = getClosest(this.notches, this.limit(value));\n\t\t\tthis.target = notch;\n\t\t\tconst animation = {\n\t\t\t\toffset: -notch,\n\t\t\t\tduration,\n\t\t\t\teasing: OUT_EASING,\n\t\t\t\tupdate: ({ animations: [{ currentValue }] }) => {\n\t\t\t\t\tthis.setOffset(currentValue);\n\t\t\t\t},\n\t\t\t};\n\t\t\tthis.anime({\n\t\t\t\t...animation,\n\t\t\t\ttargets: this,\n\t\t\t\tcurrentOffset: [this.currentOffset, notch],\n\t\t\t});\n\t\t\tif (this.markTilesActive) this.setTilesActive();\n\t\t}\n\t\tthis.adjustToNotchEvents();\n\t},\n\tgetNotchIndex(notchToFind) {\n\t\tconst notchWidth = Math.abs(this.notches[1] - this.notches[0]);\n\t\tconst half = notchWidth / 2;\n\t\tlet index = 0;\n\t\tthis.notches.some((notch, i) => {\n\t\t\tif (notchToFind <= notch + half) {\n\t\t\t\tindex = i;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t});\n\t\treturn index;\n\t},\n\tsetTilesActive(givenTarget) {\n\t\tconst target = givenTarget !== undefined ? givenTarget : this.target;\n\t\tconst currentIndex = this.getNotchIndex(target);\n\t\tthis.onUpdate && this.onUpdate(currentIndex);\n\t\tthis.swipedList.forEach((swiped, i) => {\n\t\t\tif (i >= currentIndex && i <= currentIndex + this.viewablesCount - 1)\n\t\t\t\ttoggleSwiped(swiped, true, this.hasSwipe);\n\t\t\telse toggleSwiped(swiped, false, this.hasSwipe);\n\t\t});\n\t},\n\tadjustToNotchEvents() {\n\t\tconst current = Math.abs(this.target);\n\t\tif (this.onFirst) {\n\t\t\tif (current === 0) this.onFirst();\n\t\t\telse this.offFirst();\n\t\t}\n\t\tif (this.onLast) {\n\t\t\tif (current === this.lastNotch) this.onLast();\n\t\t\telse this.offLast();\n\t\t}\n\t\tthis.setTilesActive();\n\t},\n\tlimit(offset) {\n\t\treturn Math.max(0, Math.min(offset, this.lastNotch));\n\t},\n};\n"],"sourceRoot":""}