{"version":3,"file":"TechnicalSpecification-Chunk-e61be4e2187a93878dc9.js","mappings":"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","sources":["webpack://nikon-client/./components/atoms/LoadMoreButton/LoadMoreButton.tsx","webpack://nikon-client/./utility/hooks/useHorizontalGrabScroll.ts","webpack://nikon-client/./utility/hooks/useHorizontalScrollShadows.ts","webpack://nikon-client/./components/atoms/ShadowContainerHorizontal/ShadowContainerHorizontal.tsx","webpack://nikon-client/./components/atoms/Tag/Tag.tsx","webpack://nikon-client/./components/molecules/TechnicalSpecificationItem/TechnicalSpecificationItem.tsx","webpack://nikon-client/./components/organisms/TechnicalSpecification/TechnicalSpecification.tsx","webpack://nikon-client/./models/enums/ScrollProgressEnum.ts","webpack://nikon-client/./models/enums/SizeEnum.ts","webpack://nikon-client/./models/enums/TagTypesEnum.ts","webpack://nikon-client/./utility/helpers/gtm.ts","webpack://nikon-client/./utility/helpers/truncateText.ts","webpack://nikon-client/./utility/hooks/useIsTouchDevice.ts","webpack://nikon-client/./utility/hooks/useMediaQuery.ts","webpack://nikon-client/./node_modules/.pnpm/react-icomoon@2.6.0_react@18.3.1/node_modules/react-icomoon/dist/index.js"],"sourcesContent":["import Icon from '@atoms/Icon/Icon';\nimport classNames from 'classnames';\nimport { motion } from 'framer-motion';\nimport { ButtonHTMLAttributes, DetailedHTMLProps } from 'react';\n\ninterface Props\n extends DetailedHTMLProps<\n ButtonHTMLAttributes,\n HTMLButtonElement\n > {\n readonly open?: boolean;\n readonly loadMoreLabel: string;\n readonly loadLessLabel?: string;\n readonly _type?: 'BASIC' | 'YELLOW-HIGHLIGHT';\n readonly isLightMode?: boolean;\n readonly dataTestId?: string;\n}\n\nconst LoadMoreButton = ({\n open = false,\n loadMoreLabel,\n loadLessLabel,\n _type = 'BASIC',\n isLightMode,\n dataTestId,\n ...props\n}: Props) => (\n \n {(!open || loadLessLabel) && (\n

{open ? loadLessLabel : loadMoreLabel}

\n )}\n\n \n \n \n \n);\n\nexport default LoadMoreButton;\n","import { RefObject, useEffect, useRef, useState } from 'react';\n\nconst useHorizontalGrabScroll = (\n containerRef: RefObject,\n disabled: boolean\n) => {\n const [isMouseDown, setIsMouseDown] = useState(false);\n const mouseScrollPosition = useRef<{\n top: number;\n left: number;\n x: number;\n y: number;\n }>({\n top: 0,\n left: 0,\n x: 0,\n y: 0,\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.clientWidth) return;\n\n if (container.clientWidth >= container.scrollWidth || disabled) {\n container.style.cursor = 'inherit';\n return;\n }\n\n if (isMouseDown) {\n container.style.cursor = 'grabbing';\n return;\n }\n\n container.style.cursor = 'grab';\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isMouseDown, disabled]);\n\n useEffect(() => {\n mouseScrollPosition.current = { top: 0, left: 0, x: 0, y: 0 };\n const container = containerRef.current;\n\n if (!container) return () => ({});\n if (disabled) {\n container.scrollTop = 0;\n container.scrollLeft = 0;\n\n return () => ({});\n }\n\n const mouseMoveHandler = (e: MouseEvent) => {\n const dx = e.clientX - mouseScrollPosition.current.x;\n const dy = e.clientY - mouseScrollPosition.current.y;\n\n container.scrollTop = mouseScrollPosition.current.top - dy;\n container.scrollLeft = mouseScrollPosition.current.left - dx;\n };\n\n const mouseUpHandler = () => {\n document.removeEventListener('mousemove', mouseMoveHandler);\n document.removeEventListener('mouseup', mouseUpHandler);\n setIsMouseDown(false);\n };\n\n const mouseDownHandler = (e: MouseEvent) => {\n mouseScrollPosition.current = {\n top: container.scrollTop,\n left: container.scrollLeft,\n x: e.clientX,\n y: e.clientY,\n };\n setIsMouseDown(true);\n\n document.addEventListener('mousemove', mouseMoveHandler);\n document.addEventListener('mouseup', mouseUpHandler);\n };\n\n const onWheel = (e: WheelEvent) => {\n if (e.deltaY === 0) return;\n\n container.scrollTo({\n left: container.scrollLeft + e.deltaY,\n behavior: 'smooth',\n });\n };\n\n container.addEventListener('mousedown', mouseDownHandler);\n container.addEventListener('wheel', onWheel, { passive: true });\n\n return () => {\n container.removeEventListener('mousedown', mouseDownHandler);\n container.removeEventListener('wheel', onWheel);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disabled]);\n};\n\nexport default useHorizontalGrabScroll;\n","import ScrollProgressEnum from '@models/enums/ScrollProgressEnum';\nimport { useMotionValueEvent, useScroll } from 'framer-motion';\nimport { RefObject, useEffect, useState } from 'react';\n\nconst useHorizontalScrollShadows = (\n containerRef: RefObject,\n threshold: number,\n disabled: boolean\n) => {\n const { scrollXProgress } = useScroll({ container: containerRef });\n const [isStart, setIsStart] = useState(true);\n const [isEnd, setIsEnd] = useState(false);\n const [scrollProgress, setScrollProgress] = useState(\n ScrollProgressEnum.Start\n );\n\n useMotionValueEvent(scrollXProgress, 'change', (value: number) => {\n if (value < threshold) {\n setScrollProgress(ScrollProgressEnum.Start);\n }\n\n if (value >= threshold && value <= 1 - threshold) {\n setScrollProgress(ScrollProgressEnum.Middle);\n }\n\n if (value > 1 - threshold) {\n setScrollProgress(ScrollProgressEnum.End);\n }\n });\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container?.clientWidth || disabled) return;\n\n const { clientWidth, scrollWidth } = container;\n if (clientWidth >= scrollWidth) {\n setIsStart(true);\n setIsEnd(true);\n\n return;\n }\n\n if (scrollProgress === ScrollProgressEnum.Start) {\n setIsStart(true);\n setIsEnd(false);\n }\n\n if (scrollProgress === ScrollProgressEnum.Middle) {\n setIsStart(false);\n setIsEnd(false);\n }\n\n if (scrollProgress === ScrollProgressEnum.End) {\n setIsEnd(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [disabled, scrollProgress]);\n\n return { isStart, isEnd };\n};\n\nexport default useHorizontalScrollShadows;\n","import useHorizontalGrabScroll from '@utils/hooks/useHorizontalGrabScroll';\nimport useHorizontalScrollShadows from '@utils/hooks/useHorizontalScrollShadows';\nimport classNames from 'classnames';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport {\n PropsWithChildren,\n forwardRef,\n useImperativeHandle,\n useRef,\n} from 'react';\n\nexport interface IShadowContainerHorizontalRef {\n readonly scrollTo: (offset: number) => void;\n readonly getOffsetWidth: () => number;\n}\n\ninterface Props {\n readonly className?: string;\n readonly shadowColour?: string;\n readonly threshold?: number;\n readonly showStart?: boolean; // Manually override shadows from a parent component\n readonly showEnd?: boolean;\n readonly disableScroll?: boolean; // Used together with showStart/showEnd to disable scrolling within the container (e.g. when we want to wrap a carousel within some left/right shadows, we want to use the carousel's scrolling/swiping, not the container's one)\n readonly shadowWidth?: string;\n readonly isNoWrapEnabled?: boolean;\n}\n\nconst ShadowContainerHorizontal = forwardRef<\n IShadowContainerHorizontalRef,\n PropsWithChildren\n>(\n (\n {\n children,\n className,\n disableScroll = false,\n shadowColour = 'from-white dark:from-black-100',\n threshold = 0.05,\n showStart = false,\n showEnd = true,\n shadowWidth = 'w-10',\n isNoWrapEnabled = true,\n },\n ref\n ) => {\n const containerRef = useRef(null);\n const { isStart, isEnd } = useHorizontalScrollShadows(\n containerRef,\n threshold,\n disableScroll\n );\n useHorizontalGrabScroll(containerRef, disableScroll);\n\n useImperativeHandle(ref, () => ({\n scrollTo: (leftOffset: number) => {\n containerRef.current?.scrollTo({\n left: leftOffset,\n behavior: 'smooth',\n });\n },\n getOffsetWidth: () => containerRef.current?.offsetWidth ?? 0,\n }));\n\n return (\n
\n \n {(!isStart || showStart) && (\n \n )}\n \n\n \n {children}\n
\n\n {/* isEnd is always false when using showEnd override so !isEnd is always true */}\n \n {!isEnd && showEnd && (\n \n )}\n \n \n );\n }\n);\n\nexport default ShadowContainerHorizontal;\n","import SizeEnum from '@models/enums/SizeEnum';\nimport TagTypesEnum from '@models/enums/TagTypesEnum';\nimport { ILink } from '@models/ILink';\nimport classNames from 'classnames';\nimport {\n ButtonHTMLAttributes,\n DetailedHTMLProps,\n PropsWithChildren,\n} from 'react';\n\ninterface Props {\n readonly className?: string;\n readonly disabled?: boolean;\n readonly editHint?: string;\n readonly link?: ILink;\n readonly linkCallback?: () => void;\n readonly pointerStates?: boolean;\n readonly size?: Exclude;\n readonly tagType?: TagTypesEnum;\n readonly text?: string;\n readonly span?: boolean;\n readonly isLightMode?: boolean;\n readonly dataTestId?: string;\n}\n\ntype TagProps = Props &\n DetailedHTMLProps, HTMLButtonElement>;\n\nconst Tag = ({\n children,\n className,\n disabled = false,\n editHint,\n link,\n linkCallback,\n pointerStates = true,\n size = SizeEnum.Small,\n span = false,\n tagType,\n text,\n isLightMode,\n dataTestId,\n ...buttonProps\n}: PropsWithChildren) => {\n const tagClasses = classNames(\n {\n [`text-black-100 bg-grey-200 ${\n isLightMode ? '' : 'dark:bg-grey-600 dark:text-white'\n }`]: tagType === TagTypesEnum.Primary,\n //\n [`hover:bg-grey active:text-white active:bg-black-100 ${\n isLightMode\n ? ''\n : 'dark:hover:text-white dark:hover:bg-grey-500 dark:active:text-black-100 dark:active:bg-white'\n }`]: tagType === TagTypesEnum.Primary && pointerStates,\n //\n [`text-white bg-black-100 ${\n isLightMode ? '' : 'dark:bg-white dark:text-black-100'\n }`]:\n tagType === TagTypesEnum.Secondary || tagType === TagTypesEnum.Square,\n //\n [`hover:bg-grey hover:text-black-100 active:text-black-100 active:bg-grey-200 ${\n isLightMode\n ? ''\n : 'dark:hover:text-white dark:hover:bg-grey-500 dark:active:text-white dark:active:bg-grey-600'\n }`]: tagType === TagTypesEnum.Secondary && pointerStates,\n //\n [`text-black-100 bg-white ${\n isLightMode ? '' : 'dark:bg-black-100 dark:text-white'\n }`]: tagType === TagTypesEnum.Three,\n //\n [`hover:bg-grey active:bg-grey-400 ${\n isLightMode\n ? ''\n : 'dark:hover:text-white dark:hover:bg-grey-500 dark:active:text-black-100 dark:active:bg-white'\n }`]: tagType === TagTypesEnum.Three && pointerStates,\n //\n 'text-yellow bg-black-100': tagType === TagTypesEnum.Four,\n //\n 'hover:bg-grey hover:text-black-100 active:text-black-100 active:bg-grey-100':\n tagType === TagTypesEnum.Four && pointerStates,\n //\n 'py-2.5 px-5': size === SizeEnum.Large && tagType !== TagTypesEnum.Square,\n //\n 'px-4 py-1': size === SizeEnum.Small && tagType !== TagTypesEnum.Square,\n //\n 'pointer-events-none': !pointerStates,\n },\n tagType === TagTypesEnum.Square ? 'rounded-[3px]' : 'rounded-full body-two',\n 'select-none',\n className\n );\n\n if (span) {\n return (\n \n {text}\n \n );\n }\n\n return link?.url && (link?.name || children) && !disabled ? (\n \n {children || link.name}\n \n ) : (\n \n {children || text}\n \n );\n};\n\nexport default Tag;\n","import Icon from '@atoms/Icon/Icon';\nimport { ITechnicalSpecificationItem } from '@models/ITechnicalSpecificationItem';\nimport truncateText from '@utils/helpers/truncateText';\nimport useMediaQuery from '@utils/hooks/useMediaQuery';\nimport { useState } from 'react';\n\ninterface Props extends ITechnicalSpecificationItem {\n readonly dataTestId: string;\n readonly showIcons: boolean;\n readonly readMoreLabel: string;\n readonly readLessLabel: string;\n}\n\nconst TechnicalSpecificationItem = ({\n dataTestId,\n title,\n icon,\n text,\n readMoreLabel,\n readLessLabel,\n showIcons,\n}: Props) => {\n const [readMore, setReadMore] = useState(false);\n const isMobile = useMediaQuery(400);\n\n return (\n \n {showIcons && icon && (\n
\n
\n \n
\n
\n )}\n {(title || text) && (\n
\n {title && (\n \n )}\n {text && (\n 165 && isMobile && !readMore\n ? truncateText(text, 165, ' ')\n : text,\n }}\n className=\"body-one col-span-9 text-grey-600 dark:text-grey-500\"\n data-testid={`${dataTestId}-Text`}\n />\n )}\n\n {text && text.length > 165 && isMobile && (\n setReadMore(!readMore)}\n className=\"w-full cursor-pointer text-black-100 underline dark:text-grey-200\"\n aria-hidden=\"true\"\n data-testid={`${dataTestId}-Read-More`}\n >\n {readMore ? readLessLabel : readMoreLabel}\n
\n )}\n \n )}\n \n );\n};\n\nexport default TechnicalSpecificationItem;\n","import LoadMoreButton from '@atoms/LoadMoreButton/LoadMoreButton';\nimport ShadowContainerHorizontal from '@atoms/ShadowContainerHorizontal/ShadowContainerHorizontal';\nimport Tag from '@atoms/Tag/Tag';\nimport TagTypesEnum from '@models/enums/TagTypesEnum';\nimport { ITechnicalSpecification } from '@models/ITechnicalSpecification';\nimport { ITechnicalSpecificationItem } from '@models/ITechnicalSpecificationItem';\nimport TechnicalSpecificationItem from '@molecules/TechnicalSpecificationItem/TechnicalSpecificationItem';\nimport updateDataLayer from '@utils/helpers/gtm';\nimport useIsTouchDevice from '@utils/hooks/useIsTouchDevice';\nimport { useState } from 'react';\n\nconst TechnicalSpecification = ({\n anchorId = '',\n defaultCount = 8,\n tabs,\n loadLessLabel,\n loadMoreLabel,\n meta,\n readLessLabel,\n readMoreLabel,\n title,\n}: ITechnicalSpecification) => {\n const [open, setOpen] = useState(false);\n const isTouchDevice = useIsTouchDevice();\n const [activeTabIndex, setActiveTabIndex] = useState(0);\n\n const currentTab = tabs[activeTabIndex];\n\n const scrollTo = (id: string) => {\n const element = document.getElementById(id);\n const y =\n (element?.getBoundingClientRect().top || 0) +\n window.scrollY -\n (isTouchDevice ? 180 : 150);\n window.scrollTo({ top: y, behavior: 'smooth' });\n };\n\n return (\n \n
\n {title && (\n \n {title}\n \n )}\n {tabs.length > 1 && (\n \n
\n {tabs.map((tab, index) => {\n const isActive = activeTabIndex === index;\n return (\n {\n setActiveTabIndex(index);\n }}\n dataTestId={`CT-16-Technical-Specification-Tab-${index}`}\n />\n );\n })}\n
\n
\n )}\n\n {currentTab && !!currentTab.items?.length && (\n \n {currentTab.items\n .slice(0, !open ? defaultCount : currentTab.items.length)\n .map((item: ITechnicalSpecificationItem, index) => (\n obj.icon)} // only show icons if all icons are populated\n readMoreLabel={readMoreLabel}\n readLessLabel={readLessLabel}\n />\n ))}\n
\n )}\n {currentTab &&\n currentTab.items &&\n currentTab.items.length > defaultCount && (\n
\n {\n if (open) {\n scrollTo(`a-${anchorId ?? 'tech-specs'}`);\n }\n setOpen(!open);\n updateDataLayer({\n event: 'selectContent',\n content_type: 'technical_specifications',\n link_text: 'load_more',\n });\n }}\n dataTestId=\"CT-16-Technical-Specification-Load-More-Button\"\n />\n
\n )}\n \n \n );\n};\n\nexport default TechnicalSpecification;\n","enum ScrollProgressEnum {\n Start = 'Start',\n Middle = 'Middle',\n End = 'End',\n}\n\nexport default ScrollProgressEnum;\n","enum SizeEnum {\n Small = 'SMALL',\n Medium = 'MEDIUM',\n Large = 'LARGE',\n XLarge = 'XLARGE',\n}\n\nexport default SizeEnum;\n","enum TagTypesEnum {\n Primary = 'PRIMARY',\n Secondary = 'SECONDARY',\n Three = 'THREE',\n Four = 'FOUR',\n Square = 'SQUARE',\n}\n\nexport default TagTypesEnum;\n","const updateDataLayer = (eventPayload: Record) => {\n if (typeof window !== 'undefined') {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(eventPayload);\n }\n};\n\nexport default updateDataLayer;\n","// Truncates text to the specific limit but keeps the last matched word intact even if it exceeds the limit\nconst truncateText = (text: string, charLimit: number, suffix: string) => {\n const truncatedText = text.replace(\n new RegExp(`^(.{${charLimit}}[^\\\\s]*).*`),\n '$1'\n );\n const isLastCharFullStop =\n truncatedText.substring(truncatedText.length - 1) === '.';\n\n return isLastCharFullStop\n ? `${truncatedText.slice(0, -1)}${suffix}`\n : `${truncatedText}${suffix}`;\n};\n\nexport default truncateText;\n","import { useEffect, useState } from 'react';\n\nconst useIsTouchDevice = () => {\n const [isTouchDevice, setIsTouchDevice] = useState();\n\n const handleIsTouchDevice = (): void => {\n setIsTouchDevice('ontouchstart' in window || navigator.maxTouchPoints > 0);\n };\n\n useEffect(() => {\n handleIsTouchDevice();\n\n window.addEventListener('resize', handleIsTouchDevice);\n\n return () => window.removeEventListener('resize', handleIsTouchDevice);\n }, []);\n\n return isTouchDevice;\n};\n\nexport default useIsTouchDevice;\n","import { useCallback, useEffect, useState } from 'react';\n\nconst useMediaQuery = (minWidth: number) => {\n // Set the default value to undefined in order to properly distinguish the falsey values\n // where undefined is the value before computing whether the screen size is smaller than the minWidth\n // i.e. a state where we don't really know whether we're below the threshold or not\n // and false is the value where the computation returns false\n const [isSmallerThan, setIsSmallerThan] = useState();\n\n const handler = useCallback(() => {\n const isDesiredWidth = window.innerWidth < minWidth;\n setIsSmallerThan(isDesiredWidth);\n }, [minWidth]);\n\n useEffect(() => {\n window.addEventListener('resize', handler);\n handler();\n\n return () => {\n window.removeEventListener('resize', handler);\n };\n }, [handler]);\n\n return isSmallerThan;\n};\n\nexport default useMediaQuery;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.iconList = void 0;\nvar react_1 = require(\"react\");\nvar IcoMoon = function (_a) {\n var iconSet = _a.iconSet, icon = _a.icon, size = _a.size, title = _a.title, disableFill = _a.disableFill, removeInlineStyle = _a.removeInlineStyle, native = _a.native, SvgComponent = _a.SvgComponent, PathComponent = _a.PathComponent, props = __rest(_a, [\"iconSet\", \"icon\", \"size\", \"title\", \"disableFill\", \"removeInlineStyle\", \"native\", \"SvgComponent\", \"PathComponent\"]);\n if (!iconSet || !icon)\n return null;\n var currentIcon = iconSet.icons.find(function (item) { return item.properties.name === icon; });\n if (!currentIcon)\n return null;\n var initialStyle = {\n display: \"inline-block\",\n stroke: \"currentColor\",\n fill: \"currentColor\",\n };\n if (native) {\n initialStyle.display = \"flex\";\n initialStyle.flexDirection = \"row\";\n initialStyle.flexWrap = \"wrap\";\n }\n var comptuedStyle = __assign(__assign(__assign({}, (removeInlineStyle ? {} : initialStyle)), (size ? { width: size, height: size } : {})), (props.style || {}));\n var _b = currentIcon.icon.width, width = _b === void 0 ? \"1024\" : _b;\n var viewBox = \"0 0 \".concat(width, \" 1024\");\n var children = currentIcon.icon.paths.map(function (path, index) {\n var _a;\n var attrs = (_a = currentIcon.icon.attrs) === null || _a === void 0 ? void 0 : _a[index];\n var pathProps = __assign({ d: path, key: icon + index }, (!disableFill && attrs ? attrs : {}));\n return (0, react_1.createElement)(PathComponent || \"path\", pathProps);\n });\n if (title && !native) {\n children.push((0, react_1.createElement)(\"title\", { key: title }, title));\n }\n return (0, react_1.createElement)(SvgComponent || \"svg\", __assign(__assign({}, props), { viewBox: viewBox, style: comptuedStyle }), children);\n};\nvar iconList = function (iconSet) {\n if (!iconSet || !Array.isArray(iconSet.icons))\n return null;\n return iconSet.icons.map(function (icon) { return icon.properties.name; });\n};\nexports.iconList = iconList;\nexports.default = IcoMoon;\n//# sourceMappingURL=index.js.map"],"names":["_ref","open","loadMoreLabel","loadLessLabel","_type","isLightMode","dataTestId","props","React","createElement","_extends","className","classNames","motion","span","animate","rotate","Icon","name","size","colorClassName","useHorizontalGrabScroll","containerRef","disabled","isMouseDown","setIsMouseDown","useState","mouseScrollPosition","useRef","top","left","x","y","useEffect","container","current","clientWidth","scrollWidth","style","cursor","scrollTop","scrollLeft","mouseMoveHandler","e","dx","clientX","dy","clientY","mouseUpHandler","document","removeEventListener","mouseDownHandler","addEventListener","onWheel","deltaY","scrollTo","behavior","passive","useHorizontalScrollShadows","threshold","scrollXProgress","useScroll","isStart","setIsStart","isEnd","setIsEnd","scrollProgress","setScrollProgress","ScrollProgressEnum","Start","useMotionValueEvent","value","Middle","End","forwardRef","ref","children","disableScroll","shadowColour","showStart","showEnd","shadowWidth","isNoWrapEnabled","useImperativeHandle","leftOffset","getOffsetWidth","offsetWidth","AnimatePresence","opacity","exit","initial","transition","duration","tabIndex","editHint","link","linkCallback","pointerStates","SizeEnum","Small","tagType","text","buttonProps","tagClasses","TagTypesEnum","Primary","Secondary","Square","Three","Four","Large","url","href","target","onClick","title","icon","readMoreLabel","readLessLabel","showIcons","readMore","setReadMore","isMobile","useMediaQuery","dangerouslySetInnerHTML","__html","length","truncateText","anchorId","defaultCount","tabs","meta","setOpen","isTouchDevice","useIsTouchDevice","activeTabIndex","setActiveTabIndex","currentTab","id","editHints","ShadowContainerHorizontal","map","tab","index","isActive","Tag","key","items","slice","item","TechnicalSpecificationItem","every","obj","LoadMoreButton","element","getElementById","getBoundingClientRect","window","scrollY","updateDataLayer","event","content_type","link_text","eventPayload","dataLayer","push","charLimit","suffix","truncatedText","replace","RegExp","substring","setIsTouchDevice","handleIsTouchDevice","navigator","maxTouchPoints","minWidth","isSmallerThan","setIsSmallerThan","handler","useCallback","isDesiredWidth","innerWidth","__assign","this","Object","assign","t","s","i","n","arguments","p","prototype","hasOwnProperty","call","apply","__rest","indexOf","getOwnPropertySymbols","propertyIsEnumerable","defineProperty","exports","iconList","react_1","iconSet","Array","isArray","icons","properties","_a","disableFill","removeInlineStyle","native","SvgComponent","PathComponent","currentIcon","find","initialStyle","display","stroke","fill","flexDirection","flexWrap","comptuedStyle","width","height","_b","viewBox","concat","paths","path","attrs","pathProps","d"],"sourceRoot":""}