{"version":3,"file":"static/js/6963.e09413e2.chunk.js","mappings":"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","sources":["hooks/useKeyboardNavigation.jsx","shared/service-link-card-container/service-link-card-container-component.jsx"],"sourcesContent":["import { useState, useEffect } from \"react\"\n\nfunction useKeyboardNavigation() {\n const [isKeyboardNavigation, setIsKeyboardNavigation] = useState(false)\n\n useEffect(() => {\n const handleKeyDown = () => setIsKeyboardNavigation(true)\n const handleMouseDown = () => setIsKeyboardNavigation(false)\n\n window.addEventListener(\"keydown\", handleKeyDown)\n window.addEventListener(\"mousedown\", handleMouseDown)\n\n // Cleanup event listeners on unmount\n return () => {\n window.removeEventListener(\"keydown\", handleKeyDown)\n window.removeEventListener(\"mousedown\", handleMouseDown)\n }\n }, [])\n\n return isKeyboardNavigation\n}\n\nexport default useKeyboardNavigation\n","import React, { useState } from \"react\"\nimport ReactHtmlParser from \"react-html-parser\"\nimport Slider from \"react-slick\"\nimport * as SelectionFactoryHelper from \"../helpers/SelectionFactoryHelper\"\nimport useWindowWidth from \"../../hooks/useWindowWidth\"\nimport useKeyboardNavigation from \"../../hooks/useKeyboardNavigation\"\n\nexport default function ServiceLinkCardContainer({ serviceLinkCards, headline, backgroundColor, bottomPadding, topPadding }) {\n const windowWidth = useWindowWidth()\n const keyboardNavigating = useKeyboardNavigation()\n\n const bgColor = SelectionFactoryHelper.getFromSelectionFactory(backgroundColor, false) || \"\"\n const tPadding = SelectionFactoryHelper.getFromSelectionFactory(bottomPadding, false) || \"\"\n const bPadding = SelectionFactoryHelper.getFromSelectionFactory(topPadding, false) || \"\"\n\n const htmlServiceLinkCards =\n serviceLinkCards && serviceLinkCards.length > 0\n ? serviceLinkCards.map((card, index) => {\n return (\n <ServiceLinkCard\n key={card.cardHeader + index}\n header={card.cardHeader}\n subtext={card.cardSubtext}\n svg={card.svg}\n link={card.link}\n target={card.target}\n windowWidth={windowWidth}\n keyboardNavigating={keyboardNavigating}\n />\n )\n })\n : undefined\n\n var settings = {\n dots: windowWidth < 950 ? true : false,\n arrows: windowWidth < 950 ? false : true,\n infinite: false,\n slidesToScroll: 1,\n swipe: true,\n variableWidth: true,\n }\n\n const htmlHeadline = ReactHtmlParser(headline)\n\n return (\n <section className={`service-link-card-container ${bgColor} ${tPadding} ${bPadding}`}>\n <h2 className=\"service-link-container-headline\">{htmlHeadline}</h2>\n {htmlServiceLinkCards && htmlServiceLinkCards.length > 0 ? (\n <div className=\"w--wider\">\n {windowWidth < 950 ? (\n <Slider {...settings}>{htmlServiceLinkCards}</Slider>\n ) : (\n <div className=\"service-link-cards\">{htmlServiceLinkCards}</div>\n )}\n </div>\n ) : (\n <div className=\"no-content\"></div>\n )}\n </section>\n )\n}\n\nfunction ServiceLinkCard({ svg, header, subtext, link, target, windowWidth, keyboardNavigating }) {\n const [isHovered, setIsHovered] = useState(false)\n const [isFocused, setIsFocused] = useState(false)\n\n function handleMouseEvent() {\n if (!isFocused) setIsHovered(!isHovered)\n }\n\n function handleFocusEvent() {\n setIsFocused(!isFocused)\n if (isHovered) setIsHovered(!isHovered)\n }\n\n const selectedSvg = SelectionFactoryHelper.getFromSelectionFactory(svg)\n const selectedLinkTarget = SelectionFactoryHelper.getFromSelectionFactory(target)\n\n return (\n <div className={`grid-item${keyboardNavigating && isFocused ? \" focus-visible\" : \"\"}`}>\n <a\n onMouseEnter={windowWidth >= 768 ? () => handleMouseEvent() : undefined}\n onMouseLeave={windowWidth >= 768 ? () => handleMouseEvent() : undefined}\n onFocus={() => handleFocusEvent()}\n onBlur={() => handleFocusEvent()}\n href={link}\n target={selectedLinkTarget || \"_blank\"}\n >\n {selectedSvg ? (\n <svg className={`svg-icon svg-icon--${selectedSvg}`}>\n <use xmlnsXlink=\"http://www.w3.org/1999/xlink\" xlinkHref={`/dist/svg/symbols.svg#svg-${selectedSvg}`}>\n \n </use>\n </svg>\n ) : (\n <div className=\"no-svg\"></div>\n )}\n <div className=\"servicelinkcard\">\n <div className=\"flex-container\">\n <div className=\"textarea-header\">\n <h3 className={isHovered || isFocused ? \"is-hovered\" : \"\"}>{header}</h3>\n </div>\n <p className={`maintext${isHovered || isFocused ? \" is-hovered\" : \"\"}`}>{subtext}</p>\n </div>\n </div>\n </a>\n </div>\n )\n}\n"],"names":["_useState","useState","_useState2","_slicedToArray","isKeyboardNavigation","setIsKeyboardNavigation","useEffect","handleKeyDown","handleMouseDown","window","addEventListener","removeEventListener","ServiceLinkCardContainer","_ref","serviceLinkCards","headline","backgroundColor","bottomPadding","topPadding","windowWidth","useWindowWidth","keyboardNavigating","useKeyboardNavigation","bgColor","SelectionFactoryHelper","tPadding","bPadding","htmlServiceLinkCards","length","map","card","index","_jsx","ServiceLinkCard","header","cardHeader","subtext","cardSubtext","svg","link","target","undefined","settings","dots","arrows","infinite","slidesToScroll","swipe","variableWidth","htmlHeadline","ReactHtmlParser","_jsxs","className","concat","children","Slider","_objectSpread","_ref2","isHovered","setIsHovered","_useState3","_useState4","isFocused","setIsFocused","handleMouseEvent","handleFocusEvent","selectedSvg","selectedLinkTarget","onMouseEnter","onMouseLeave","onFocus","onBlur","href","xmlnsXlink","xlinkHref"],"sourceRoot":""}