{"version":3,"sources":["webpack:///./src/js/react-hooks/use-fetch.js","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-faq/MSNoResults.tsx","webpack:///./src/js/react-component/ms-reusable-react-components/MSRteWithCTA/index.tsx","webpack:///./src/js/react-modules/ms-news-results-block/MSNewsCard.tsx","webpack:///./src/js/react-modules/ms-news-results-block/MSNewsSection.tsx","webpack:///./src/js/react-modules/ms-news-results-block/MSFeaturedNews.tsx","webpack:///./src/js/react-modules/ms-news-results-block/index.tsx"],"names":["useFetch","args","id","useState","response","setResponse","error","setError","isLoading","setIsLoading","fetch","config","axios","then","catch","finally","useEffect","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","main","document","querySelector","selectorsPrev","animationSelectors","split","selectors","map","s","trim","childrenToAnimate","forEach","selector","current","querySelectorAll","child","push","length","setAttribute","classList","add","init","className","ref","MSNoResults","noResultsImage","noResultsContent","src","dangerouslySetInnerHTML","__html","MSRteWithCTA","data","rteContent","cta","href","linkUrl","target","linkTarget","type","renderIcon","linkType","ArrowRight24","ArrowUpRight24","Download24","MicrophoneFilled24","Video24","chooseSVG","linkLabel","MSNewsCard","news","link","image","width","height","alt","imageAlt","planType","title","teaser","author","date","aria-label","MSNewsSection","newsData","noResultsText","paginationBackwardText","paginationForwardText","paginationItemsPerPageText","paginationSizes","totalItems","firstRowIndex","setFirstRowIndex","currentPageSize","setCurrentPageSize","newsToShow","setnewsToShow","slice","Row","index","Column","sm","md","lg","key","Pagination","backwardText","forwardText","pageSize","pageSizes","itemsPerPageText","onChange","page","FeaturedNews","featuredNews","featuredTitle","MSNewsResultsBlock","api","searchLabel","paginationPageSize","url","params","filteringTags","setfilteringTags","uniqueID","setUniqueID","searchTerms","setSearchTerms","searchValue","setsearchValue","leftColumnRteWithCTA","newsItems","featuredData","featuredItems","orderedNews","useMemo","sort","b","aDate","Date","toLowerCase","replace","reduce","lowCapsTags","Array","isArray","tags","lowerNewTags","tagsLower","tag","pageNumber","filteredNews","elementsToFilter","elementsToSearch","arrayString","filteringNews","item","text","filteredArr","some","term","includesText","elementToSearch","includes","handleSearchOnKeyDown","useCallback","event","value","intendedId","flatMap","indexOf","newTag","label","prev","substring","Search","placeholder","labelText","e","onKeyDown","facet","Tag","filter","onClose","search","handleOnCloseTag","Loading"],"mappings":"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","file":"16.bundle.js?v=c509a65c327fa21d28d8","sourcesContent":["import { useEffect, useState } from 'react';\nimport axios from 'axios';\n\nconst useFetch = ({ args, id }) => {\n const [response, setResponse] = useState(null);\n const [error, setError] = useState(null);\n const [isLoading, setIsLoading] = useState(false);\n const fetch = config => {\n setIsLoading(true);\n\n axios(config)\n .then(response => setResponse(response))\n .catch(error => setError(error))\n .finally(() => setIsLoading(false));\n };\n\n useEffect(() => {\n fetch(args);\n }, [id]);\n\n return { response, error, isLoading, fetch };\n};\n\nexport default useFetch;\n","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
\n {children}\n
\n );\n};\n\nexport default MSReactAnimator;\n","import React from 'react';\n\ntype Props = {\n noResultsImage: string;\n noResultsContent: string;\n};\n\nconst MSNoResults = ({ noResultsImage, noResultsContent }: Props) => {\n return (\n <>\n {noResultsContent && (\n
\n {noResultsImage && (\n \n )}\n
\n \n )}\n \n );\n};\n\nexport default MSNoResults;\n","import {\n ArrowUpRight24,\n ArrowRight24,\n Download24,\n Microphone24,\n Video24,\n MicrophoneFilled24\n} from '@carbon/icons-react';\nimport { Button, Link } from 'carbon-components-react';\nimport React from 'react';\n\ntype IPropMSRteWithCTA = {\n data: {\n rteContent?: string;\n cta?: {\n linkLabel: string;\n linkUrl: string;\n linkTarget?: string;\n linkType?: string;\n };\n };\n};\n\nconst MSRteWithCTA = ({ data }: IPropMSRteWithCTA) => {\n const chooseSVG = (linkType: string) => {\n switch (linkType) {\n case 'internal link':\n return ArrowRight24;\n\n case 'external link':\n return ArrowUpRight24;\n\n case 'pdf':\n return Download24;\n\n case 'podcast':\n return MicrophoneFilled24;\n\n case 'video':\n return Video24;\n\n default:\n return ArrowRight24;\n }\n };\n\n return (\n
\n {data.rteContent && (\n \n )}\n {data.cta && (\n \n {data.cta.linkLabel}\n \n )}\n
\n );\n};\n\nexport default MSRteWithCTA;\n","import React from 'react';\nimport {\n ArrowRight32,\n ArrowUpRight32,\n Download32,\n MicrophoneFilled32,\n Video32\n} from '@carbon/icons-react';\n\ntype propTypesMSNewsCard = {\n news: {\n link?: string;\n linkTarget?: string;\n image?: string;\n imageAlt?: string;\n linkType?: string;\n planType?: string;\n type?: string;\n title?: string;\n teaser?: string;\n author?: string;\n date?: string;\n tags?: string[];\n };\n};\n\nlet target = '';\n\nconst MSNewsCard = ({ news }: propTypesMSNewsCard) => {\n const chooseSVG = () => {\n switch (news.linkType) {\n case 'internal link':\n return ;\n\n case 'external link':\n return ;\n\n case 'pdf':\n return ;\n\n case 'podcast':\n return (\n \n );\n\n case 'video':\n return ;\n\n default:\n return ;\n }\n };\n\n return (\n \n {news.image ? (\n \n ) : (\n \n )}\n\n
\n

{news.planType}

\n

{news.title}

\n

{news.teaser}

\n

\n {news.author} | {news.date}\n

\n

{news.type}

\n
\n
{chooseSVG()}
\n \n );\n};\n\nexport default MSNewsCard;\n","import React, { useState, useEffect } from 'react';\nimport { Column, Pagination, Row } from 'carbon-components-react';\nimport MSNewsCard from './MSNewsCard';\nimport MSNoResults from '../ms-faq/MSNoResults';\nimport MSReactAnimator from '../../react-component/ms-reusable-react-components/MSReactAnimator';\n\ntype propTypesMSNewsSection = {\n newsData: propTypesMSNews[];\n noResultsImage: string;\n noResultsText: string;\n paginationBackwardText: string;\n paginationForwardText: string;\n paginationItemsPerPageText: string;\n paginationSizes?: number[];\n};\ninterface propTypesMSNews {\n link?: string;\n image?: string;\n imageAlt?: string;\n linkType?: string;\n planType?: string;\n type?: string;\n title?: string;\n teaser?: string;\n author?: string;\n date?: string;\n tags?: string[];\n}\n\nconst MSNewsSection = ({\n newsData,\n noResultsImage,\n noResultsText,\n paginationBackwardText,\n paginationForwardText,\n paginationItemsPerPageText,\n paginationSizes\n}: propTypesMSNewsSection) => {\n const totalItems: number = newsData.length;\n const [firstRowIndex, setFirstRowIndex] = useState(0);\n const [currentPageSize, setCurrentPageSize] = useState(\n paginationSizes[0] ? paginationSizes[0] : 12\n );\n const [newsToShow, setnewsToShow] = useState(newsData);\n\n useEffect(() => {\n if (totalItems < currentPageSize && firstRowIndex !== 0) {\n setFirstRowIndex(0);\n }\n }, [totalItems]);\n\n useEffect(() => {\n setnewsToShow(\n newsData.slice(firstRowIndex, firstRowIndex + currentPageSize)\n );\n }, [currentPageSize, firstRowIndex, newsData]);\n\n return (\n \n
\n
\n \n {newsToShow.length ? (\n newsToShow.map((news: propTypesMSNews, index) => (\n \n \n \n ))\n ) : (\n \n )}\n \n
\n {totalItems > 0 && (\n {\n if (pageSize !== currentPageSize) {\n setCurrentPageSize(pageSize);\n }\n setFirstRowIndex(pageSize * (page - 1));\n }}\n />\n )}\n
\n
\n );\n};\n\nexport default MSNewsSection;\n","import React from 'react';\n\ninterface propTypesNews {\n linkTarget: string;\n link: string;\n image: string;\n planType: string;\n type: string;\n title: string;\n teaser: string;\n author: string;\n date: string;\n}\n\nconst FeaturedNews = ({\n featuredNews,\n className,\n featuredTitle\n}: {\n featuredNews: {}[];\n className: string;\n featuredTitle: string;\n}) => {\n return (\n
\n

\n {featuredTitle}\n

\n {featuredNews.length\n ? featuredNews.map((news: propTypesNews, index) => (\n
\n \n {news.planType}\n \n

\n \n {news.title}\n \n

\n

{news.teaser}

\n

\n {news.author} | {news.date}\n

\n
\n ))\n : null}\n
\n );\n};\n\nexport default FeaturedNews;\n","import React, { useState, useMemo, useCallback } from 'react';\nimport {\n Search,\n MultiSelect,\n Tag,\n SearchSkeleton,\n PaginationSkeleton,\n Loading\n} from 'carbon-components-react';\nimport MSNewsSection from './MSNewsSection';\nimport FeaturedNews from './MSFeaturedNews';\nimport useFetch from '../../react-hooks/use-fetch';\nimport MSRteWithCTA from '../../react-component/ms-reusable-react-components/MSRteWithCTA';\nimport MSNoResults from '../ms-faq/MSNoResults';\n\ntype MSNewsResultsBlockProps = {\n id: string;\n api: string;\n noResultsImage: string;\n noResultsContent: string;\n searchLabel: string;\n paginationBackwardText: string;\n paginationForwardText: string;\n paginationItemsPerPageText: string;\n paginationPageSize: string;\n};\n\ninterface propTypesNews {\n link?: string;\n image?: string;\n imageAlt?: string;\n linkType?: string;\n planType?: string;\n type?: string;\n title?: string;\n teaser?: string;\n author?: string;\n date?: string;\n tags?: string[];\n}\n\ninterface propTypesFilters {\n id: string;\n label: string;\n text: string;\n disabled?: boolean;\n}\n\nconst MSNewsResultsBlock = ({\n id,\n api,\n noResultsContent,\n noResultsImage,\n searchLabel,\n paginationBackwardText,\n paginationForwardText,\n paginationItemsPerPageText,\n paginationPageSize\n}: MSNewsResultsBlockProps) => {\n const { response, isLoading } = useFetch({\n args: { url: api, params: { id: id } },\n id: id\n });\n const [filteringTags, setfilteringTags] = useState([]);\n const [uniqueID, setUniqueID] = useState(0);\n const [searchTerms, setSearchTerms] = useState([]);\n const [searchValue, setsearchValue] = useState('');\n const leftColumnRteWithCTA = response?.data.leftColumnRteWithCTA;\n\n //Raw data from fetch\n const newsData = response?.data.newsItems;\n const featuredData = response?.data.featuredItems;\n const featuredTitle = response?.data.featuredTitle;\n\n //Sort news data, make tags all low-caps\n const orderedNews = useMemo(() => {\n return newsData\n ?.sort((a: { date: string }, b: { date: string }) => {\n const aDate: any = new Date(a.date.toLowerCase().replace(',', ''));\n const bDate: any = new Date(b.date.toLowerCase().replace(',', ''));\n return bDate - aDate;\n })\n .reduce((lowCapsTags: {}[], news: { tags: string[] }) => {\n if (!Array.isArray(news.tags)) return lowCapsTags;\n const lowerNewTags = news.tags.reduce(\n (tagsLower: string[], tag: string) => {\n tagsLower.push(tag.toLowerCase());\n return tagsLower;\n },\n []\n );\n news = {\n ...news,\n tags: lowerNewTags\n };\n lowCapsTags.push(news);\n return lowCapsTags;\n }, []);\n }, [newsData]);\n\n const paginationSizes = paginationPageSize\n ? paginationPageSize.split(',').map((pageNumber: string) => {\n return parseInt(pageNumber.trim());\n })\n : [];\n\n //Search function\n const search = (\n elementsToFilter: propTypesNews[],\n searchArray: propTypesFilters[],\n elementsToSearch: string[]\n ): propTypesNews[] => {\n const arrayString = searchArray.reduce(\n (searchTerms: string[], item: propTypesFilters) => {\n searchTerms.push(item.text.toLowerCase());\n return searchTerms;\n },\n []\n );\n\n return elementsToFilter?.reduce(\n (filteredArr: propTypesNews[], element: any) => {\n const success = arrayString.some(term => {\n let includesText: boolean = false;\n elementsToSearch.map((elementToSearch: string) => {\n if (element[elementToSearch].toLowerCase().includes(term)) {\n includesText = true;\n }\n });\n return includesText;\n });\n if (success) {\n filteredArr.push(element);\n }\n return filteredArr;\n },\n []\n );\n };\n\n //Filter news according to filtering elements *tags+facets*\n const filteredNews: propTypesNews[] = useMemo(() => {\n let filteringNews = orderedNews;\n\n if (searchTerms.length) {\n filteringNews = search(filteringNews, searchTerms, [\n 'title',\n 'teaser',\n 'planType'\n ]);\n }\n\n return filteringNews;\n }, [orderedNews, searchTerms]);\n\n //Add filtering tag when enter key is pressed, clear input\n const handleSearchOnKeyDown = useCallback((event: any) => {\n if (event.key === 'Enter' && event.target.value != '') {\n let intendedId = `search-${event.target.value\n .toLowerCase()\n .replace(/\\s+/g, '')}`;\n if (searchTerms.flatMap(term => term.id).indexOf(intendedId) !== 0) {\n intendedId = `${intendedId}-${uniqueID}`;\n setUniqueID(uniqueID + 1);\n }\n const newTag = {\n text: event.target.value,\n label: event.target.value,\n id: `search-${intendedId}`\n };\n setfilteringTags(prev => [...prev, newTag]);\n setSearchTerms(prev => [...prev, newTag]);\n setsearchValue(prev => prev.substring(0, 0));\n }\n }, []);\n\n const handleOnCloseTag = (id: string) => {\n setSearchTerms(prev =>\n prev.filter((search: propTypesFilters) => search.id !== id)\n );\n };\n return (\n
\n
\n
\n {featuredData ? (\n \n ) : null}\n <>\n {leftColumnRteWithCTA && (\n \n )}\n \n
\n
\n {isLoading ? (\n \n ) : (\n setsearchValue(e.target.value)}\n onKeyDown={handleSearchOnKeyDown}\n />\n )}\n
\n {filteringTags?.length\n ? filteringTags.map(facet => (\n {\n setfilteringTags(prev =>\n prev.filter(\n (item: { id: string }) => item.id !== facet.id\n )\n );\n handleOnCloseTag(facet.id);\n }}\n >\n {facet.text}\n \n ))\n : null}\n
\n {!isLoading ? (\n filteredNews ? (\n <>\n \n {featuredData ? (\n \n ) : null}\n \n ) : (\n \n )\n ) : (\n <>\n \n \n \n )}\n
\n {leftColumnRteWithCTA && (\n \n )}\n
\n
\n
\n
\n );\n};\n\nexport default MSNewsResultsBlock;\n"],"sourceRoot":""}