{"version":3,"file":"static/js/RelatedContent.a85acab9.js","mappings":"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","sources":["components/PageCard/PageCardLoader.tsx","components/RelatedContent/RelatedContent.styled.ts","components/RelatedContent/RelatedContent.tsx","../node_modules/ssr-window/ssr-window.esm.js"],"sourcesContent":["import loadable, { DefaultComponent } from \"@loadable/component\";\nimport React, { ReactElement } from \"react\";\n\nimport PageCardProps from \"./PageCardProps\";\n\nconst PageCard = loadable(\n (): Promise> =>\n import(/* webpackChunkName: \"PageCard\" */ \"./PageCard\"),\n);\nconst PageCardLoader = (props: PageCardProps): ReactElement => (\n \n);\nexport default PageCardLoader;\n","import { styled } from \"styled-components\";\nimport { Swiper } from \"swiper/react\";\n\nimport Button from \"components/Button/Button\";\nimport { Container as GridContainer } from \"style/components/Page\";\nimport { styleHeadingL } from \"style/components/Typography\";\nimport { GUTTER, columnGap } from \"style/grid\";\nimport { MQ } from \"style/mediaQueries\";\nimport { BASE_MAX_SIZE } from \"style/settings\";\n\nimport \"swiper/css\"; /* eslint-disable-line import/no-unresolved */\nimport \"swiper/css/navigation\"; /* eslint-disable-line import/no-unresolved */\nimport \"swiper/css/scrollbar\"; /* eslint-disable-line import/no-unresolved */\n\nconst OFFSET = \"0.4375rem\"; // OFFSET is used to increase interactive area for scrollbar without changing the other margin/padding\n\nexport const Slider = styled(Swiper)`\n --swiper-scrollbar-bg-color: var(--line-on-neutral-default);\n --swiper-scrollbar-drag-bg-color: var(--text-on-neutral-primary);\n --swiper-scrollbar-size: 1px;\n --swiper-scrollbar-top: 0;\n\n && {\n padding-top: calc(1.3125rem + ${OFFSET});\n\n .swiper-scrollbar {\n max-width: calc(${BASE_MAX_SIZE}px - calc(${GUTTER.XL} * 2));\n left: 0;\n width: calc(100% - ${GUTTER.SM});\n margin-top: ${OFFSET};\n\n :hover {\n cursor: pointer;\n }\n\n ${MQ.FROM_M} {\n width: calc(100% - ${GUTTER.MD});\n }\n\n ${MQ.FROM_XL} {\n width: calc(100% - ${GUTTER.XL});\n }\n }\n .swiper-scrollbar-drag {\n position: relative;\n }\n\n .swiper-scrollbar-drag::before {\n content: \"\";\n position: absolute;\n inset: -${OFFSET} 0 -${OFFSET} 0;\n }\n\n ${MQ.FROM_M} {\n padding-top: calc(1.75rem + ${OFFSET});\n }\n\n ${MQ.FROM_XL} {\n padding-top: calc(2.1875rem + ${OFFSET});\n }\n }\n`;\n\nexport const NavigationWrapper = styled.div`\n display: flex;\n grid-column: col-start 4 / span 1;\n height: 1.75rem;\n justify-content: end;\n\n ${MQ.FROM_M} {\n grid-column: col-start 10 / span 3;\n height: 3.5rem;\n }\n`;\n\nexport const NavigationButton = styled(Button)`\n && {\n &.swiper-button-disabled,\n :disabled {\n color: var(--color-black-o40);\n cursor: not-allowed;\n }\n\n &.next {\n margin-left: ${OFFSET};\n }\n }\n`;\n\nexport const Wrapper = styled.div`\n display: grid;\n grid-template-columns: 1fr min(100%, ${BASE_MAX_SIZE}px) 1fr;\n width: 100%;\n`;\n\nexport const Container = styled(GridContainer)`\n align-items: center;\n grid-column: 2 / span 2;\n max-width: none;\n padding-bottom: 13.125rem;\n padding-right: 0;\n padding-top: calc(2.625rem - ${OFFSET});\n\n .swiper-slide {\n width: calc(\n 3 * var(--grid-column-size) + 2 * var(--grid-column-gutter)\n );\n\n ${MQ.FROM_M} {\n width: calc(\n 5 * var(--grid-column-size) + 4 * var(--grid-column-gutter)\n );\n }\n\n ${MQ.FROM_XXL} {\n width: calc(\n 5 * var(--grid-column-size) + 4 * var(--grid-column-gutter)\n );\n }\n }\n\n ${MQ.FROM_M} {\n padding-top: calc(3.5rem - ${OFFSET});\n }\n\n ${MQ.FROM_XL} {\n padding-top: calc(4.375rem - ${OFFSET});\n }\n`;\n\nexport const HeadingContainer = styled(GridContainer)`\n ${columnGap};\n display: grid;\n grid-template-columns: repeat(4, [col-start] 1fr);\n padding-bottom: 0;\n padding-top: 2.1875rem;\n\n ${MQ.FROM_M} {\n grid-template-columns: repeat(12, [col-start] 1fr);\n padding-top: 3.5rem;\n }\n\n ${MQ.FROM_XL} {\n padding-top: 4.375rem;\n }\n`;\n\nexport const Heading = styled.div`\n ${styleHeadingL};\n grid-column: col-start 1 / span 2;\n\n ${MQ.FROM_M} {\n grid-column: col-start 1 / span 6;\n }\n\n ${MQ.FROM_XL} {\n grid-column: col-start 1 / span 4;\n }\n`;\n","import React, { ReactElement, useRef } from \"react\";\nimport SwiperCore, { Navigation, Scrollbar } from \"swiper\";\nimport { SwiperSlide } from \"swiper/react\";\n\nimport PageCard from \"components/PageCard\";\nimport Section from \"components/Section\";\nimport { useBreakpoint } from \"hooks\";\nimport { BREAKPOINT_VALUE } from \"style/breakpoints\";\nimport { addEditAttributesBlockLevel } from \"utils/episerver\";\n\nimport {\n Container,\n Heading,\n HeadingContainer,\n NavigationButton,\n NavigationWrapper,\n Wrapper,\n Slider,\n} from \"./RelatedContent.styled\";\nimport RelatedContentProps from \"./RelatedContentProps\";\n\nconst RelatedContent = ({\n heading,\n relatedContent,\n identifier,\n contentId,\n anchorName,\n l18n,\n}: RelatedContentProps): ReactElement => {\n const sliderRef = useRef(); // eslint-disable-line @typescript-eslint/no-explicit-any\n const navigationPrevRef = useRef(null);\n const navigationNextRef = useRef(null);\n let iconSize: number;\n switch (useBreakpoint()) {\n case \"XL\":\n case \"L\":\n case \"M\":\n iconSize = 56;\n break;\n default:\n iconSize = 28;\n break;\n }\n\n // Do not render component if there are no items to show\n if (!relatedContent || relatedContent.length === 0) return <>;\n\n return (\n \n \n {heading && {heading}}\n \n \n {l18n?.previous || \"Previous\"}\n \n \n {l18n?.next || \"Next\"}\n \n \n \n\n \n \n {\n sliderRef.current = swiper.el;\n }}\n navigation={{\n prevEl: navigationPrevRef.current,\n nextEl: navigationNextRef.current,\n }}\n spaceBetween={28} // Grid spacing\n slidesPerView={\"auto\"}\n loop={false}\n breakpoints={{\n [BREAKPOINT_VALUE.XL]: {\n spaceBetween: 56,\n },\n [BREAKPOINT_VALUE.M]: {\n spaceBetween: 35,\n },\n }}\n scrollbar={{\n dragSize: \"auto\",\n draggable: true,\n }}\n modules={[Navigation, Scrollbar]}\n >\n {relatedContent?.map((relatedContentItem, index) => (\n \n \n \n ))}\n \n \n \n \n );\n};\n\nexport default React.memo(RelatedContent);\n","/**\n * SSR Window 4.0.2\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n/* eslint-disable no-param-reassign */\nfunction isObject(obj) {\n return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;\n}\nfunction extend(target = {}, src = {}) {\n Object.keys(src).forEach(key => {\n if (typeof target[key] === 'undefined') target[key] = src[key];else if (isObject(src[key]) && isObject(target[key]) && Object.keys(src[key]).length > 0) {\n extend(target[key], src[key]);\n }\n });\n}\nconst ssrDocument = {\n body: {},\n addEventListener() {},\n removeEventListener() {},\n activeElement: {\n blur() {},\n nodeName: ''\n },\n querySelector() {\n return null;\n },\n querySelectorAll() {\n return [];\n },\n getElementById() {\n return null;\n },\n createEvent() {\n return {\n initEvent() {}\n };\n },\n createElement() {\n return {\n children: [],\n childNodes: [],\n style: {},\n setAttribute() {},\n getElementsByTagName() {\n return [];\n }\n };\n },\n createElementNS() {\n return {};\n },\n importNode() {\n return null;\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: ''\n }\n};\nfunction getDocument() {\n const doc = typeof document !== 'undefined' ? document : {};\n extend(doc, ssrDocument);\n return doc;\n}\nconst ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: ''\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: ''\n },\n history: {\n replaceState() {},\n pushState() {},\n go() {},\n back() {}\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n addEventListener() {},\n removeEventListener() {},\n getComputedStyle() {\n return {\n getPropertyValue() {\n return '';\n }\n };\n },\n Image() {},\n Date() {},\n screen: {},\n setTimeout() {},\n clearTimeout() {},\n matchMedia() {\n return {};\n },\n requestAnimationFrame(callback) {\n if (typeof setTimeout === 'undefined') {\n callback();\n return null;\n }\n return setTimeout(callback, 0);\n },\n cancelAnimationFrame(id) {\n if (typeof setTimeout === 'undefined') {\n return;\n }\n clearTimeout(id);\n }\n};\nfunction getWindow() {\n const win = typeof window !== 'undefined' ? window : {};\n extend(win, ssrWindow);\n return win;\n}\nexport { extend, getDocument, getWindow, ssrDocument, ssrWindow };"],"names":["PageCard","loadable","resolved","chunkName","isReady","props","key","resolve","__webpack_modules__","importAsync","requireAsync","then","requireSync","id","__webpack_require__","PageCardLoader","_jsx","OFFSET","Slider","styled","Swiper","withConfig","componentId","BASE_MAX_SIZE","GUTTER","XL","SM","MQ","FROM_M","MD","FROM_XL","NavigationWrapper","div","NavigationButton","Button","Wrapper","Container","GridContainer","FROM_XXL","HeadingContainer","columnGap","Heading","styleHeadingL","RelatedContent","heading","relatedContent","identifier","contentId","anchorName","l18n","sliderRef","useRef","navigationPrevRef","navigationNextRef","iconSize","useBreakpoint","length","_jsxs","Section","theme","alignItems","addEditAttributesBlockLevel","children","ref","iconOnly","a11y","icon","actionTheme","previous","className","next","onInit","swiper","current","el","navigation","prevEl","nextEl","spaceBetween","slidesPerView","loop","breakpoints","BREAKPOINT_VALUE","M","scrollbar","dragSize","draggable","modules","Navigation","Scrollbar","map","relatedContentItem","index","SwiperSlide","size","gtmClickType","_Fragment","React","isObject","obj","constructor","Object","extend","target","src","keys","forEach","ssrDocument","body","addEventListener","removeEventListener","activeElement","blur","nodeName","querySelector","querySelectorAll","getElementById","createEvent","initEvent","createElement","childNodes","style","setAttribute","getElementsByTagName","createElementNS","importNode","location","hash","host","hostname","href","origin","pathname","protocol","search","getDocument","doc","document","ssrWindow","navigator","userAgent","history","replaceState","pushState","go","back","CustomEvent","this","getComputedStyle","getPropertyValue","Image","Date","screen","setTimeout","clearTimeout","matchMedia","requestAnimationFrame","callback","cancelAnimationFrame","getWindow","win","window"],"sourceRoot":""}