{"version":3,"sources":["webpack:///./src/js/modules/ms-scroll-triggered-animator.ts","webpack:///./src/js/utils/animations.ts","webpack:///./src/js/react-component/ms-reusable-react-components/MSReactAnimator/index.tsx","webpack:///./src/js/react-modules/ms-breadcrumb/index.tsx"],"names":["MSScrollTriggeredAnimator","this","el","animatedElements","dom","dataset","inView","margin","element","play","overrideAnimationDuration","parseFloat","overrideAnimationDelay","computedAnimationDuration","getComputedStyle","computedAnimationDelay","animationDuration","animationDelay","startNumber","parseInt","endNumber","animation","animate","progress","a","Math","finalString","duration","delay","counter","MSReactAnimator","children","childRef","React","useRef","useEffect","main","document","querySelector","selectorsPrev","animationSelectors","split","selectors","map","s","trim","childrenToAnimate","forEach","selector","current","querySelectorAll","child","push","length","setAttribute","classList","add","init","className","ref","Breadcrumbs","breadcrumb","href","breadcrumbs","currentPageHref","slice","hrefs","replace","useState","isMobile","setIsMobile","updateDimensions","window","addEventListener","removeEventListener","width","innerWidth","noTrailingSlash","data-floating-menu-container","index","key","itemText","isCurrentPage"],"mappings":"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","file":"41.bundle.js?v=50bac95ae48ff7a83a44","sourcesContent":["import { inView } from 'motion';\nimport { counter } from '../utils/animations';\n\nclass MSScrollTriggeredAnimator {\n dom: { el: any; animatedElements: any[] };\n animation: any;\n\n constructor(el: any) {\n this.dom = {\n el,\n animatedElements: [el, ...el.querySelectorAll('[data-animate=\"true\"]')]\n };\n\n this.animation = this.dom.el.dataset.animation;\n }\n\n init() {\n inView(\n this.dom.el,\n () => {\n this.animate();\n },\n { margin: '0px 0px -20% 0px' }\n );\n }\n\n animate() {\n this.dom.animatedElements.forEach((element: HTMLElement) => {\n switch (element.dataset.animation) {\n case 'fade':\n element.classList.remove('fade');\n element.classList.add('fade-in');\n break;\n case 'slide-up':\n element.classList.remove('slide-up');\n element.classList.add('slide-in');\n break;\n case 'slide-left':\n element.classList.remove('slide-left');\n element.classList.add('slide-in');\n break;\n case 'slide-right':\n element.classList.remove('slide-right');\n element.classList.add('slide-in');\n break;\n case 'counter':\n counter({ element, play: true });\n break;\n }\n });\n }\n}\n\nexport default MSScrollTriggeredAnimator;\n","import { animate } from 'motion';\n\nconst defaultAnimationDuration = 1;\nconst defaultAnimationDelay = 0;\n\n// export const slideUp = ({\n// element,\n// play\n// }: {\n// element: HTMLElement;\n// play?: boolean;\n// }) => {\n// const animation = animate(\n// element,\n// {\n// opacity: [0, 1],\n// top: 0\n// },\n// {\n// duration:\n// getComputedStyle(element).transitionDuration !== '0s'\n// ? parseFloat(getComputedStyle(element).transitionDuration)\n// : defaultAnimationDuration,\n// delay:\n// getComputedStyle(element).transitionDelay !== '0s'\n// ? parseFloat(getComputedStyle(element).transitionDelay)\n// : defaultAnimationDelay\n// }\n// );\n\n// if (play) animation.play();\n// else animation.stop();\n// };\n\nexport const counter = ({\n element,\n play\n}: {\n element: HTMLElement;\n play?: boolean;\n}) => {\n const overrideAnimationDuration = element.dataset.animationDuration\n ? parseFloat(element.dataset.animationDuration) / 1000\n : null;\n\n const overrideAnimationDelay = element.dataset.animationDelay\n ? parseFloat(element.dataset.animationDelay) / 1000\n : null;\n\n const computedAnimationDuration =\n getComputedStyle(element).transitionDuration !== '0s'\n ? parseFloat(getComputedStyle(element).transitionDuration)\n : defaultAnimationDuration;\n\n const computedAnimationDelay =\n getComputedStyle(element).transitionDelay !== '0s'\n ? parseFloat(getComputedStyle(element).transitionDelay)\n : defaultAnimationDelay;\n\n const animationDuration =\n overrideAnimationDuration || computedAnimationDuration;\n const animationDelay = overrideAnimationDelay || computedAnimationDelay;\n\n const startNumber = parseInt(element.dataset.startNumber);\n const endNumber = parseInt(element.dataset.endNumber);\n const animation = animate(\n progress => {\n const a = endNumber\n ? startNumber +\n Math.round(\n progress *\n (endNumber >= startNumber\n ? endNumber - startNumber\n : startNumber - endNumber)\n )\n : startNumber;\n\n let finalString = Math.round(a).toString();\n if (element.dataset.useThousandSeparator === 'true') {\n switch (element.dataset.thousandSeparator) {\n case 'comma':\n finalString = Math.round(a).toLocaleString('en-US');\n break;\n case 'dot':\n finalString = Math.round(a).toLocaleString('de-DE');\n break;\n case 'space':\n finalString = Math.round(a)\n .toLocaleString('en-US')\n .replace(/,/g, ' ');\n break;\n default:\n finalString = Math.round(a).toLocaleString('en-US');\n break;\n }\n }\n\n element.innerText = finalString;\n },\n {\n duration: animationDuration,\n delay: animationDelay\n }\n );\n if (play) animation.play();\n else animation.stop();\n};\n","import React, { useState, useEffect } from 'react';\nimport MSScrollTriggeredAnimator from '../../../modules/ms-scroll-triggered-animator';\n\nconst MSReactAnimator = ({ children }: any) => {\n const childRef = React.useRef(null);\n\n useEffect(() => {\n const main = document.querySelector('main');\n\n const selectorsPrev = document\n .querySelector('main')\n ?.dataset?.animationSelectors?.split(',');\n\n const selectors = selectorsPrev?.map(s => (s = s.trim()));\n\n const childrenToAnimate = [] as HTMLElement[];\n\n selectors?.forEach(selector => {\n if (childRef.current.querySelector(selector) !== null) {\n childRef.current.querySelectorAll(selector).forEach((child: any) => {\n childrenToAnimate.push(child);\n });\n }\n });\n\n if (childrenToAnimate.length > 0) {\n childrenToAnimate.forEach((element: any) => {\n element.setAttribute(\n 'data-animation',\n main.dataset.animation || 'fade'\n );\n element.classList.add(main.dataset.animation || 'fade');\n\n const t = new MSScrollTriggeredAnimator(element);\n t.init();\n });\n }\n });\n\n return (\n