{"version":3,"file":"scripts/chunks/_app_app_components_organisms_O1-Header_index_ts.ac5d197edf699f02c38a.mjs","mappings":"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","sources":["webpack://rockworld/./app/components/atoms/Button/Button.tsx","webpack://rockworld/./app/components/atoms/Button/index.ts","webpack://rockworld/./app/components/atoms/icons/ArrowIcon.tsx","webpack://rockworld/./app/components/atoms/icons/ArrowLeftIcon.tsx","webpack://rockworld/./app/components/molecules/MediaFile/MediaFile.tsx","webpack://rockworld/./app/components/molecules/PrimaryButton/PrimaryButton.tsx","webpack://rockworld/./app/components/organisms/Carousel/Carousel.module.scss","webpack://rockworld/./app/components/organisms/Carousel/Carousel.tsx","webpack://rockworld/./app/components/organisms/Carousel/CarouselControl/CarouselControl.tsx","webpack://rockworld/./app/components/atoms/icons/CarretWideIcon.tsx","webpack://rockworld/./app/components/organisms/Carousel/CarouselNavButton/CarouselNavButton.module.scss","webpack://rockworld/./app/components/organisms/Carousel/CarouselNavButton/CarouselNavButton.tsx","webpack://rockworld/./app/components/organisms/Carousel/CarouselPagination/CarouselPagination.module.scss","webpack://rockworld/./app/components/organisms/Carousel/CarouselPagination/CarouselPagination.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Header.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/NavigationNew.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/Teasers/Teasers.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/Teasers/Teasers.tsx","webpack://rockworld/./app/components/atoms/icons/GlobeIcon.tsx","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/HeaderBottom/HeaderBottom.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/HeaderBottom/HeaderBottom.tsx","webpack://rockworld/./app/components/organisms/O1-Header/NavigationNew/NavigationNew.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/TopNavigation/TopNavigation.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/Bar/TopNavigation/TopNavigation.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/HeaderDropdownContent/HeaderDropdownContent.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/Bar/HeaderDropdownContent/HeaderDropdownContent.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/BrandLogo/BrandLogo.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/Bar/BrandLogo/BrandLogo.tsx","webpack://rockworld/./app/components/atoms/icons/BucketIcon.tsx","webpack://rockworld/./app/components/atoms/icons/CheckMarkIcon.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/Basket/Basket.module.scss","webpack://rockworld/./app/components/organisms/O1-Header/Bar/Basket/BasketItem.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/Basket/Basket.tsx","webpack://rockworld/./app/hooks/useBasketCount.ts","webpack://rockworld/./app/hooks/useBasketList.ts","webpack://rockworld/./app/hooks/useAddedBasketList.ts","webpack://rockworld/./app/components/atoms/icons/LoginIcon.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/Login/Login.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Bar/Bar.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Search/Search.tsx","webpack://rockworld/./app/components/organisms/O1-Header/Header.tsx","webpack://rockworld/./app/components/organisms/O1-Header/index.ts","webpack://rockworld/./app/scripts/core/consts.ts","webpack://rockworld/./app/scripts/core/views/react/molecules/svg/svgElements.tsx","webpack://rockworld/./app/scripts/framework/accordion.ts","webpack://rockworld/./app/utils/brand.ts","webpack://rockworld/./app/utils/getHeightOffset.ts","webpack://rockworld/./app/utils/setTranslatedForStickyToogle.ts"],"sourcesContent":["import { tidyStr } from '@utils/tidy-str';\r\nimport React, { CSSProperties, ReactElement } from 'react';\r\n\r\nexport const getButtonContent = ({\r\n iconName,\r\n svg,\r\n title,\r\n iconClassName = '',\r\n customBtnTextClassName,\r\n}: Pick & { iconClassName?: string }) => (\r\n <>\r\n {title}\r\n \r\n {typeof svg !== 'string' ? svg : null}\r\n \r\n \r\n);\r\n\r\ninterface CustomAttributes {\r\n [key: string]: string;\r\n}\r\ninterface Button {\r\n file?: boolean;\r\n svg?: string | JSX.Element;\r\n documentDataObject?: string;\r\n isFileGated?: boolean;\r\n isButtonStyleDisabled?: boolean;\r\n link?: string;\r\n title?: string;\r\n relationship?: string;\r\n target?: string;\r\n htmlAttributes?: string;\r\n extensions?: string;\r\n hasContent?: boolean;\r\n cssClass?: string;\r\n trackingLabel?: string;\r\n iconName?: string;\r\n fileTitle?: string;\r\n useButtonStyle?: boolean;\r\n fileCategory?: string;\r\n downloadType?: string;\r\n multipleFilesSelected?: boolean;\r\n fileType?: string;\r\n fileDataTarget?: string;\r\n onClick?(e: React.MouseEvent): void;\r\n linksToVideo?: boolean;\r\n cssStyle?: CSSProperties;\r\n useGatedWrapper?: boolean;\r\n useButtonWithoutIcon?: boolean;\r\n gatedContainerClassName?: string;\r\n isWhiteIcon?: boolean;\r\n customBtnTextClassName?: string;\r\n}\r\n\r\nconst Button = ({ useGatedWrapper = true, useButtonWithoutIcon, isWhiteIcon, ...props }: Button): ReactElement => {\r\n if (!props.hasContent) {\r\n return null;\r\n }\r\n\r\n const buttonContent = useButtonWithoutIcon\r\n ? props.title\r\n : getButtonContent({\r\n ...props,\r\n iconClassName: isWhiteIcon || (isWhiteIcon === undefined && props.file) ? 'is-white' : '',\r\n });\r\n\r\n const attributes: CustomAttributes = {\r\n target: props.target,\r\n href: props.isFileGated ? '' : props.link,\r\n };\r\n\r\n if (props.fileTitle) {\r\n attributes['download'] = props.fileTitle;\r\n }\r\n\r\n if (props.relationship && props.relationship.trim().length) {\r\n attributes['rel'] = props.relationship;\r\n }\r\n\r\n if (props.file) {\r\n const fileAnchor = (\r\n \r\n {buttonContent}\r\n \r\n );\r\n\r\n return useGatedWrapper ? (\r\n
\r\n {fileAnchor}\r\n
\r\n ) : (\r\n fileAnchor\r\n );\r\n }\r\n\r\n if (!props.isButtonStyleDisabled && props.useButtonStyle) {\r\n if (props.link && props.link.trim().length !== 0) {\r\n return (\r\n \r\n {buttonContent}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {props.title}\r\n \r\n );\r\n }\r\n\r\n if (props.link) {\r\n return (\r\n \r\n {buttonContent}\r\n \r\n );\r\n }\r\n\r\n if (props.title && props.title.trim()) {\r\n return (\r\n \r\n {buttonContent}\r\n \r\n );\r\n }\r\n\r\n return null;\r\n};\r\n\r\nexport default Button;\r\n","import Button from './Button';\r\n\r\nexport default Button;\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst ArrowIcon: FC = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default ArrowIcon;\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst ArrowLeftIcon: FC = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default ArrowLeftIcon;\r\n","import { tidyStr } from '@utils/tidy-str';\r\nimport React, { FC } from 'react';\r\n\r\ninterface MediaFile {\r\n mobileSrcset: string;\r\n imageDescription: string;\r\n imageCssClass: string;\r\n imageDataSrc: string;\r\n contentName: string;\r\n contentDataSrc: string;\r\n isImage: boolean;\r\n isEps: boolean;\r\n isPdf: boolean;\r\n}\r\n\r\nconst MediaFile: FC = (props) => {\r\n const {\r\n mobileSrcset,\r\n imageDescription,\r\n imageCssClass,\r\n imageDataSrc,\r\n isImage,\r\n isEps,\r\n contentDataSrc,\r\n contentName,\r\n isPdf,\r\n } = props;\r\n\r\n return (\r\n <>\r\n {isImage && (\r\n <>\r\n \r\n {mobileSrcset !== null && (\r\n \r\n )}\r\n \r\n \r\n\r\n \r\n \r\n )}\r\n {isEps && {contentName}}\r\n {isPdf && {contentName}}\r\n \r\n );\r\n};\r\n\r\nMediaFile.displayName = 'MediaFile';\r\n\r\nexport { MediaFile };\r\n","import React, { CSSProperties } from 'react';\r\nimport Button from '@atoms/Button';\r\nimport { htmlAttributes } from 'app/consts';\r\n\r\nexport type PrimaryButton = Button & {\r\n title?: string;\r\n cssClass?: string;\r\n openThankYouPageInTheSamePage?: boolean;\r\n link?: string;\r\n openLinkInNewTab?: boolean;\r\n cssStyle?: CSSProperties;\r\n linksToVideo?: boolean;\r\n};\r\n\r\nexport const getDefaultButton = ({\r\n openLinkInNewTab,\r\n openThankYouPageInTheSamePage,\r\n cssClass,\r\n ...rest\r\n}: PrimaryButton) => (\r\n \r\n);\r\n\r\nexport const PrimaryButton = ({ openLinkInNewTab, openThankYouPageInTheSamePage, ...rest }: PrimaryButton) => {\r\n const title = rest.title ? rest.title.trim() : rest.title;\r\n\r\n if (rest.link && title) {\r\n return getDefaultButton({ ...rest, title, openLinkInNewTab, openThankYouPageInTheSamePage });\r\n }\r\n\r\n if (title || rest.linksToVideo) {\r\n return (\r\n
\r\n {title}\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n};\r\n","// extracted by mini-css-extract-plugin\nexport default {\"carousel\":\"carousel__MniZg\",\"display\":\"display__JNJkk\",\"hidden\":\"hidden__ZXElU\",\"navigation\":\"navigation__xiHZj\"};","import { screenSizes } from 'app/scripts/core/consts';\r\nimport classNames from 'classnames';\r\nimport 'node_modules/swiper/swiper.scss';\r\nimport React, { FC, MutableRefObject, useEffect, useRef, useState } from 'react';\r\nimport Swiper from 'swiper';\r\nimport { Navigation, Pagination } from 'swiper/modules';\r\nimport { SwiperOptions } from 'swiper/types';\r\nimport styles from './Carousel.module.scss';\r\nimport { CarouselNavButton } from './CarouselNavButton';\r\nimport { CarouselPagination } from './CarouselPagination';\r\n\r\ninterface Carousel extends SwiperOptions {\r\n className?: string;\r\n navigationClassName?: string;\r\n controlClassName?: string;\r\n paginationClassName?: string;\r\n children?: React.ReactNode;\r\n navPrevRef?: MutableRefObject;\r\n navNextRef?: MutableRefObject;\r\n paginationRef?: MutableRefObject;\r\n carouselRef?: MutableRefObject;\r\n navButtonClassName?: string;\r\n onActiveSlideChange?: (x: number) => void;\r\n slideChangeTransitionStart?: (x: number) => void;\r\n carouselResize?: (x: number) => void;\r\n}\r\n\r\nconst Carousel: FC = (props) => {\r\n const {\r\n className,\r\n children,\r\n navPrevRef,\r\n navNextRef,\r\n paginationRef,\r\n carouselRef,\r\n navButtonClassName,\r\n onActiveSlideChange,\r\n slideChangeTransitionStart,\r\n carouselResize,\r\n ...options\r\n } = props;\r\n const defaultCarouselRef = useRef();\r\n const defaultNavPrevRef = useRef();\r\n const defaultNavNextRef = useRef();\r\n const defaultPaginationRef = useRef();\r\n const carouselClassName = classNames('swiper', styles.carousel, className);\r\n const ref = carouselRef || defaultCarouselRef;\r\n const showNavigation = (!navPrevRef || !navNextRef) && options.navigation;\r\n const [isSwiperInit, setIsSwiperInit] = useState(false);\r\n\r\n // Initialize swiper\r\n useEffect(() => {\r\n const pagination = paginationRef?.current || defaultPaginationRef.current;\r\n const navPrev = navPrevRef?.current || defaultNavPrevRef.current;\r\n const navNext = navNextRef?.current || defaultNavNextRef.current;\r\n\r\n const swiperOptions = getOptions({\r\n pagination,\r\n navPrev,\r\n navNext,\r\n options,\r\n setIsSwiperInit,\r\n onActiveSlideChange,\r\n slideChangeTransitionStart,\r\n carouselResize,\r\n });\r\n\r\n // eslint-disable-next-line no-new\r\n new Swiper(ref.current, swiperOptions as SwiperOptions);\r\n }, []);\r\n\r\n return (\r\n
\r\n
{children}
\r\n\r\n {showNavigation && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n\r\n {!paginationRef && (\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\ninterface OptionsConfig {\r\n options?: SwiperOptions;\r\n pagination: HTMLDivElement;\r\n navPrev: HTMLButtonElement;\r\n navNext: HTMLButtonElement;\r\n setIsSwiperInit: (x: boolean) => void;\r\n onActiveSlideChange?: (x: number) => void;\r\n slideChangeTransitionStart?: (x: number) => void;\r\n carouselResize?: (x: number) => void;\r\n}\r\n\r\n/** Get default options and override them with new options */\r\nconst getOptions = (config: OptionsConfig): Carousel => {\r\n const { on: swiperEvents, ...options } = config.options;\r\n\r\n return {\r\n modules: [Navigation, Pagination],\r\n slidesPerView: 1,\r\n speed: 500,\r\n pagination: {\r\n el: config.pagination,\r\n clickable: true,\r\n },\r\n breakpoints: {\r\n [screenSizes.tablet]: {\r\n navigation: {\r\n prevEl: config.navPrev,\r\n nextEl: config.navNext,\r\n },\r\n },\r\n },\r\n navigation: {\r\n prevEl: config.navPrev,\r\n nextEl: config.navNext,\r\n },\r\n on: {\r\n ...swiperEvents,\r\n init(swiper) {\r\n preloadImages(swiper);\r\n swiperEvents?.init(swiper);\r\n },\r\n slideChangeTransitionStart(swiper) {\r\n preloadImages(swiper);\r\n swiperEvents?.slideChangeTransitionStart(swiper);\r\n\r\n if (config?.slideChangeTransitionStart) {\r\n const { realIndex } = swiper;\r\n config?.slideChangeTransitionStart(realIndex);\r\n }\r\n },\r\n slideChangeTransitionEnd(swiper) {\r\n preloadImages(swiper);\r\n swiperEvents?.slideChangeTransitionEnd(swiper);\r\n\r\n if (config?.onActiveSlideChange) {\r\n const { realIndex } = swiper;\r\n config.onActiveSlideChange(realIndex);\r\n }\r\n },\r\n resize(swiper) {\r\n swiperEvents?.resize(swiper);\r\n\r\n if (config?.carouselResize) {\r\n const { params } = swiper;\r\n config.carouselResize(params.slidesPerGroup);\r\n swiper.slideTo(0);\r\n }\r\n },\r\n afterInit() {\r\n config.setIsSwiperInit(true);\r\n },\r\n },\r\n ...options,\r\n };\r\n};\r\n\r\n/** Preload images in next and previous slides in carousel */\r\nconst preloadImages = ({ slides, activeIndex }: Swiper) => {\r\n const prevSlide = slides.at(activeIndex - 1);\r\n const nextSlide = slides[activeIndex + 1];\r\n const activeSlideSiblings = [prevSlide, nextSlide];\r\n\r\n activeSlideSiblings.forEach((slide) => {\r\n const images = slide?.querySelectorAll('img');\r\n\r\n images?.forEach((image) => (image.loading = 'eager'));\r\n });\r\n};\r\n\r\ninterface SlideProps {\r\n children: React.ReactNode;\r\n className?: string;\r\n onClick?: () => void;\r\n}\r\n\r\nconst CarouselSlide: FC = ({ children, className, ...slideProps }) => {\r\n const swiperClassName = classNames('swiper-slide', className);\r\n\r\n return (\r\n
\r\n {children}\r\n
\r\n );\r\n};\r\n\r\nexport { Carousel, CarouselSlide };\r\n","import ArrowIcon from '@atoms/icons/ArrowIcon';\r\nimport React, { FC, MutableRefObject } from 'react';\r\nimport ArrowLeftIcon from '@atoms/icons/ArrowLeftIcon';\r\n\r\nexport type HorizontalPosition = 'Left' | 'Right';\r\n\r\ninterface CarouselControl {\r\n currentSlide: number;\r\n horizontalPosition?: HorizontalPosition;\r\n maxSlideCount: number;\r\n defaultNavPrevRef?: MutableRefObject;\r\n defaultNavNextRef?: MutableRefObject;\r\n isLoop?: boolean;\r\n idKey?: string;\r\n}\r\n\r\nconst CarouselControl: FC = ({\r\n currentSlide,\r\n maxSlideCount,\r\n horizontalPosition,\r\n defaultNavPrevRef,\r\n defaultNavNextRef,\r\n isLoop = false,\r\n idKey = '',\r\n}) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {currentSlide + 1}/{maxSlideCount}\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport { CarouselControl };\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst CarretWideIcon: FC = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default CarretWideIcon;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"nav-button\":\"nav-button__QeARH\",\"navButton\":\"nav-button__QeARH\",\"inverted\":\"inverted__Z_Oue\"};","import CarretWideIcon from '@atoms/icons/CarretWideIcon';\r\nimport classNames from 'classnames';\r\nimport React, { FC, MutableRefObject } from 'react';\r\nimport styles from './CarouselNavButton.module.scss';\r\n\r\ninterface CarouselNavButton {\r\n buttonRef?: MutableRefObject;\r\n className?: string;\r\n inverted?: boolean;\r\n}\r\n\r\nconst CarouselNavButton: FC = ({ buttonRef, className, inverted }) => {\r\n const buttonClassName = classNames(styles.navButton, className, { [styles.inverted]: inverted });\r\n const title = inverted ? 'next-slide-button' : 'previous-slide-button';\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport { CarouselNavButton };\r\n","// extracted by mini-css-extract-plugin\nexport default {\"pagination\":\"pagination__Qdqjj\"};","import classNames from 'classnames';\r\nimport React, { FC, MutableRefObject } from 'react';\r\nimport styles from './CarouselPagination.module.scss';\r\n\r\ninterface CarouselPagination {\r\n paginationRef?: MutableRefObject;\r\n clasName?: string;\r\n}\r\n\r\nconst CarouselPagination: FC = ({ paginationRef, clasName }) => {\r\n const paginationClassName = classNames(styles.pagination, clasName);\r\n\r\n return
;\r\n};\r\n\r\nexport { CarouselPagination };\r\n","// extracted by mini-css-extract-plugin\nexport default {\"O1-header__nav__list\":\"O1-header__nav__list__oPptV\",\"o1HeaderNavList\":\"O1-header__nav__list__oPptV\",\"O1-header__bottom__group__list\":\"O1-header__bottom__group__list__YtoFG\",\"o1HeaderBottomGroupList\":\"O1-header__bottom__group__list__YtoFG\",\"O1-header--open\":\"O1-header--open__4fyKm\",\"o1HeaderOpen\":\"O1-header--open__4fyKm\",\"O1-header\":\"O1-header__PS9mK\",\"o1Header\":\"O1-header__PS9mK\",\"not-in-top\":\"not-in-top__ckIhD\",\"notInTop\":\"not-in-top__ckIhD\",\"is-search\":\"is-search__wjcVs\",\"isSearch\":\"is-search__wjcVs\",\"O1-header__search\":\"O1-header__search__sJlPL\",\"o1HeaderSearch\":\"O1-header__search__sJlPL\",\"O1-header__bar\":\"O1-header__bar___oMRC\",\"o1HeaderBar\":\"O1-header__bar___oMRC\",\"O1-header__bg\":\"O1-header__bg__lAGwD\",\"o1HeaderBg\":\"O1-header__bg__lAGwD\",\"is-home-page\":\"is-home-page__QQpke\",\"isHomePage\":\"is-home-page__QQpke\",\"is-top\":\"is-top__p5BnI\",\"isTop\":\"is-top__p5BnI\",\"is-bottom\":\"is-bottom__WVMPu\",\"isBottom\":\"is-bottom__WVMPu\",\"modal--is-below-header\":\"modal--is-below-header__gAXHz\",\"modalIsBelowHeader\":\"modal--is-below-header__gAXHz\",\"modal--open\":\"modal--open__A38HI\",\"modalOpen\":\"modal--open__A38HI\",\"is-open\":\"is-open__KDC1B\",\"isOpen\":\"is-open__KDC1B\",\"no-transparency\":\"no-transparency__xy0Cg\",\"noTransparency\":\"no-transparency__xy0Cg\",\"no-backdropfilter\":\"no-backdropfilter__PmTri\",\"noBackdropfilter\":\"no-backdropfilter__PmTri\",\"O1-header__logo\":\"O1-header__logo__Ee4U7\",\"o1HeaderLogo\":\"O1-header__logo__Ee4U7\",\"icon--small-arrow-right\":\"icon--small-arrow-right__ibCFn\",\"iconSmallArrowRight\":\"icon--small-arrow-right__ibCFn\",\"icon--small-arrow-down\":\"icon--small-arrow-down__AxFXI\",\"iconSmallArrowDown\":\"icon--small-arrow-down__AxFXI\",\"icon--small-arrow-up\":\"icon--small-arrow-up__Bu1Wm\",\"iconSmallArrowUp\":\"icon--small-arrow-up__Bu1Wm\",\"O1-header__bottom\":\"O1-header__bottom__Y03Ti\",\"o1HeaderBottom\":\"O1-header__bottom__Y03Ti\",\"O1-header__bottom__links\":\"O1-header__bottom__links__rKl3e\",\"o1HeaderBottomLinks\":\"O1-header__bottom__links__rKl3e\",\"O1-header__bottom__accordion\":\"O1-header__bottom__accordion__ZJNWX\",\"o1HeaderBottomAccordion\":\"O1-header__bottom__accordion__ZJNWX\",\"O1-header__bottom__group\":\"O1-header__bottom__group__gxXgy\",\"o1HeaderBottomGroup\":\"O1-header__bottom__group__gxXgy\",\"is-shown-desktop\":\"is-shown-desktop__yQRqt\",\"isShownDesktop\":\"is-shown-desktop__yQRqt\",\"btn-login\":\"btn-login__LUJnk\",\"btnLogin\":\"btn-login__LUJnk\",\"btn-language\":\"btn-language__p12xW\",\"btnLanguage\":\"btn-language__p12xW\",\"icon--small-arrow-left\":\"icon--small-arrow-left__JlQFJ\",\"iconSmallArrowLeft\":\"icon--small-arrow-left__JlQFJ\",\"O1-header__menu\":\"O1-header__menu__x0jus\",\"o1HeaderMenu\":\"O1-header__menu__x0jus\",\"O1-header__menu__inner\":\"O1-header__menu__inner__mkX2k\",\"o1HeaderMenuInner\":\"O1-header__menu__inner__mkX2k\",\"container\":\"container__C4Gqo\",\"basket-icon\":\"basket-icon__maLDa\",\"basketIcon\":\"basket-icon__maLDa\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__ytq_G\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__ytq_G\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__YqSvI\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__YqSvI\",\"is-hidden\":\"is-hidden__HQAbR\",\"isHidden\":\"is-hidden__HQAbR\",\"O1-header__nav\":\"O1-header__nav__Uiml7\",\"o1HeaderNav\":\"O1-header__nav__Uiml7\",\"O1-header__nav__item\":\"O1-header__nav__item__NPicE\",\"o1HeaderNavItem\":\"O1-header__nav__item__NPicE\",\"no-clicks\":\"no-clicks__wej_v\",\"noClicks\":\"no-clicks__wej_v\",\"is-hidden-path\":\"is-hidden-path__SDdEw\",\"isHiddenPath\":\"is-hidden-path__SDdEw\",\"has-hover\":\"has-hover__CQSDk\",\"hasHover\":\"has-hover__CQSDk\",\"is-title\":\"is-title__oqu2p\",\"isTitle\":\"is-title__oqu2p\",\"O1-header__nav__sub\":\"O1-header__nav__sub__oGjnR\",\"o1HeaderNavSub\":\"O1-header__nav__sub__oGjnR\",\"is-open-path\":\"is-open-path__p7Fx6\",\"isOpenPath\":\"is-open-path__p7Fx6\",\"O1-header__nav__sub__back\":\"O1-header__nav__sub__back__ufeBQ\",\"o1HeaderNavSubBack\":\"O1-header__nav__sub__back__ufeBQ\",\"icon\":\"icon__ZyQCL\",\"has-set-width\":\"has-set-width__QeK8H\",\"hasSetWidth\":\"has-set-width__QeK8H\",\"site-lapinus\":\"site-lapinus__I1OlC\",\"siteLapinus\":\"site-lapinus__I1OlC\",\"site-rockpanel\":\"site-rockpanel__ffTmG\",\"siteRockpanel\":\"site-rockpanel__ffTmG\",\"is-active\":\"is-active__pwiWJ\",\"isActive\":\"is-active__pwiWJ\",\"has-sub\":\"has-sub__PFu7m\",\"hasSub\":\"has-sub__PFu7m\",\"has-open-sub\":\"has-open-sub__gwEPc\",\"hasOpenSub\":\"has-open-sub__gwEPc\",\"is-home\":\"is-home__ZuSr6\",\"isHome\":\"is-home__ZuSr6\",\"O1-header__nav__bread-arrow\":\"O1-header__nav__bread-arrow__ixa3l\",\"o1HeaderNavBreadArrow\":\"O1-header__nav__bread-arrow__ixa3l\",\"search-form\":\"search-form__sfG4U\",\"searchForm\":\"search-form__sfG4U\",\"is-shown\":\"is-shown__bH26Q\",\"isShown\":\"is-shown__bH26Q\",\"search-form__form\":\"search-form__form___Zuzn\",\"searchFormForm\":\"search-form__form___Zuzn\",\"search-form__reset\":\"search-form__reset__ekcKK\",\"searchFormReset\":\"search-form__reset__ekcKK\",\"search-form__suggestions\":\"search-form__suggestions__VgZ4F\",\"searchFormSuggestions\":\"search-form__suggestions__VgZ4F\",\"O1-header__teasers\":\"O1-header__teasers__Nuo20\",\"o1HeaderTeasers\":\"O1-header__teasers__Nuo20\",\"slider__controls\":\"slider__controls__FFdgv\",\"sliderControls\":\"slider__controls__FFdgv\",\"O1-header__teaser\":\"O1-header__teaser__OSKux\",\"o1HeaderTeaser\":\"O1-header__teaser__OSKux\",\"O1-header__teaser__img\":\"O1-header__teaser__img__X0UpW\",\"o1HeaderTeaserImg\":\"O1-header__teaser__img__X0UpW\",\"O1-header__teaser__content\":\"O1-header__teaser__content__bx8Rd\",\"o1HeaderTeaserContent\":\"O1-header__teaser__content__bx8Rd\",\"slider--initialized\":\"slider--initialized__lUUqH\",\"sliderInitialized\":\"slider--initialized__lUUqH\",\"no-transition\":\"no-transition__SJDyh\",\"noTransition\":\"no-transition__SJDyh\",\"O1-header__teaser__headline\":\"O1-header__teaser__headline__dP4oA\",\"o1HeaderTeaserHeadline\":\"O1-header__teaser__headline__dP4oA\",\"O1-header__tools\":\"O1-header__tools__cdChS\",\"o1HeaderTools\":\"O1-header__tools__cdChS\",\"O1-header__tools__item\":\"O1-header__tools__item__PI84Y\",\"o1HeaderToolsItem\":\"O1-header__tools__item__PI84Y\",\"O1-header__tools__item--lang\":\"O1-header__tools__item--lang__tZSEm\",\"o1HeaderToolsItemLang\":\"O1-header__tools__item--lang__tZSEm\",\"login-links-menu\":\"login-links-menu__RlqxN\",\"loginLinksMenu\":\"login-links-menu__RlqxN\",\"login-links-menu__title\":\"login-links-menu__title__q0Z3o\",\"loginLinksMenuTitle\":\"login-links-menu__title__q0Z3o\",\"login-links-menu__sign-in-btn\":\"login-links-menu__sign-in-btn__XUjMO\",\"loginLinksMenuSignInBtn\":\"login-links-menu__sign-in-btn__XUjMO\",\"btn\":\"btn__tTV_p\",\"is-profile-icon\":\"is-profile-icon__bAsQI\",\"isProfileIcon\":\"is-profile-icon__bAsQI\",\"login-links-menu__profile\":\"login-links-menu__profile__E7kMm\",\"loginLinksMenuProfile\":\"login-links-menu__profile__E7kMm\",\"login-links-menu__profile__text\":\"login-links-menu__profile__text__L3NW1\",\"loginLinksMenuProfileText\":\"login-links-menu__profile__text__L3NW1\",\"login-links-menu__text\":\"login-links-menu__text__fVT2k\",\"loginLinksMenuText\":\"login-links-menu__text__fVT2k\",\"login-links-menu__item\":\"login-links-menu__item__MILIJ\",\"loginLinksMenuItem\":\"login-links-menu__item__MILIJ\",\"sign-out\":\"sign-out__paHrY\",\"signOut\":\"sign-out__paHrY\",\"is-visible\":\"is-visible__jxV_x\",\"isVisible\":\"is-visible__jxV_x\",\"O1-header__menu-btn\":\"O1-header__menu-btn__omk36\",\"o1HeaderMenuBtn\":\"O1-header__menu-btn__omk36\",\"breadcrumbs\":\"breadcrumbs__qubXy\",\"r-link\":\"r-link__gGxrZ\",\"rLink\":\"r-link__gGxrZ\",\"breadcrumb__list\":\"breadcrumb__list__rv3B5\",\"breadcrumbList\":\"breadcrumb__list__rv3B5\",\"breadcrumb__group\":\"breadcrumb__group__pXc56\",\"breadcrumbGroup\":\"breadcrumb__group__pXc56\",\"breadcrumb__divider\":\"breadcrumb__divider__rHc_3\",\"breadcrumbDivider\":\"breadcrumb__divider__rHc_3\",\"faded\":\"faded__LuXg6\",\"O1-1-header--open\":\"O1-1-header--open__KOH47\",\"o11HeaderOpen\":\"O1-1-header--open__KOH47\",\"O1-1-header\":\"O1-1-header__m5k0V\",\"o11Header\":\"O1-1-header__m5k0V\",\"navigation-container\":\"navigation-container__JygsN\",\"navigationContainer\":\"navigation-container__JygsN\",\"stick-to-top\":\"stick-to-top__bYy0R\",\"stickToTop\":\"stick-to-top__bYy0R\",\"O1-1-header__menu-overlay\":\"O1-1-header__menu-overlay__RJ6fy\",\"o11HeaderMenuOverlay\":\"O1-1-header__menu-overlay__RJ6fy\",\"is-hidden-desktop\":\"is-hidden-desktop__R3oUm\",\"isHiddenDesktop\":\"is-hidden-desktop__R3oUm\",\"O1-1-header__bg\":\"O1-1-header__bg__nFrMf\",\"o11HeaderBg\":\"O1-1-header__bg__nFrMf\",\"no-mix-blend-mode\":\"no-mix-blend-mode__N4zWd\",\"noMixBlendMode\":\"no-mix-blend-mode__N4zWd\",\"search-shown\":\"search-shown__o3dCf\",\"searchShown\":\"search-shown__o3dCf\"};","// extracted by mini-css-extract-plugin\nexport default {\"O1-1-header__menu\":\"O1-1-header__menu__GVAQV\",\"o11HeaderMenu\":\"O1-1-header__menu__GVAQV\",\"is-open\":\"is-open__db1sk\",\"isOpen\":\"is-open__db1sk\",\"container\":\"container__RP9ae\",\"with-max-height\":\"with-max-height__juDfC\",\"withMaxHeight\":\"with-max-height__juDfC\",\"O1-1-header__menu__inner\":\"O1-1-header__menu__inner__X2gAh\",\"o11HeaderMenuInner\":\"O1-1-header__menu__inner__X2gAh\",\"basket-icon\":\"basket-icon__FwK_y\",\"basketIcon\":\"basket-icon__FwK_y\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__rmbYR\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__rmbYR\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__BDSxv\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__BDSxv\",\"is-hidden\":\"is-hidden__dtDB0\",\"isHidden\":\"is-hidden__dtDB0\",\"O1-1-header\":\"O1-1-header__YXn0q\",\"o11Header\":\"O1-1-header__YXn0q\",\"is-home-page\":\"is-home-page__F1Em5\",\"isHomePage\":\"is-home-page__F1Em5\",\"not-in-top\":\"not-in-top__mO2i1\",\"notInTop\":\"not-in-top__mO2i1\"};","// extracted by mini-css-extract-plugin\nexport default {\"O1-1-header__teasers\":\"O1-1-header__teasers__oYAR6\",\"o11HeaderTeasers\":\"O1-1-header__teasers__oYAR6\",\"O1-1-header__teaser\":\"O1-1-header__teaser__EqJea\",\"o11HeaderTeaser\":\"O1-1-header__teaser__EqJea\",\"O1-1-header__teaser__img\":\"O1-1-header__teaser__img__tuXHW\",\"o11HeaderTeaserImg\":\"O1-1-header__teaser__img__tuXHW\",\"O1-1-header__teaser__content\":\"O1-1-header__teaser__content__wfT8e\",\"o11HeaderTeaserContent\":\"O1-1-header__teaser__content__wfT8e\",\"O1-1-header__teaser__headline\":\"O1-1-header__teaser__headline__Yk8St\",\"o11HeaderTeaserHeadline\":\"O1-1-header__teaser__headline__Yk8St\"};","import React, { FC, MutableRefObject, useMemo, useRef, useState } from 'react';\r\nimport { PrimaryButton } from '@molecules/PrimaryButton';\r\nimport { Carousel } from '@organisms/Carousel';\r\nimport { CarouselSlide } from '@organisms/Carousel/Carousel';\r\nimport { Autoplay, Pagination, Navigation } from 'swiper/modules';\r\nimport { MediaFile } from '@molecules/MediaFile';\r\nimport { CarouselControl } from '@organisms/Carousel/CarouselControl';\r\nimport styles from './Teasers.module.scss';\r\n\r\nexport type TeasersItem = { backgroundImage: MediaFile; title: string; button: PrimaryButton; index: number };\r\nexport type TeasersItems = TeasersItem[];\r\nexport type Teasers = {\r\n filteredItems: TeasersItems;\r\n carouselRef: MutableRefObject;\r\n};\r\n\r\nconst Teasers: FC = ({ filteredItems, carouselRef }) => {\r\n const [activeSlideIndex, setActiveSlideIndex] = useState(0);\r\n\r\n const carouselNavPrevRef = useRef();\r\n const carouselNavNextRef = useRef();\r\n const paginationRef = useRef();\r\n\r\n const articles = useMemo(() => {\r\n const artilesArray = [];\r\n filteredItems?.forEach((item) => {\r\n if (item?.backgroundImage?.isImage) {\r\n artilesArray.push({\r\n element: (\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n

{item.title}

\r\n \r\n
\r\n
\r\n ),\r\n index: item.index,\r\n });\r\n }\r\n });\r\n\r\n return artilesArray;\r\n }, [filteredItems]);\r\n\r\n const maxSlideCount = useMemo(() => articles.length, [articles]);\r\n\r\n return (\r\n
\r\n setActiveSlideIndex(step)}\r\n loop\r\n >\r\n {articles?.map((article) => (\r\n {article.element}\r\n ))}\r\n \r\n {maxSlideCount > 1 && (\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport { Teasers };\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst GlobeIcon: FC = (props) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport default GlobeIcon;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"O1-1-header__bottom__group__list\":\"O1-1-header__bottom__group__list__Esr8x\",\"o11HeaderBottomGroupList\":\"O1-1-header__bottom__group__list__Esr8x\",\"O1-header__nav__list\":\"O1-header__nav__list__YupTU\",\"o1HeaderNavList\":\"O1-header__nav__list__YupTU\",\"O1-header__bottom__group__list\":\"O1-header__bottom__group__list__sIFyQ\",\"o1HeaderBottomGroupList\":\"O1-header__bottom__group__list__sIFyQ\",\"O1-header--open\":\"O1-header--open__J9cNP\",\"o1HeaderOpen\":\"O1-header--open__J9cNP\",\"O1-header\":\"O1-header__zEULq\",\"o1Header\":\"O1-header__zEULq\",\"not-in-top\":\"not-in-top__jZRDm\",\"notInTop\":\"not-in-top__jZRDm\",\"is-search\":\"is-search__dnnuR\",\"isSearch\":\"is-search__dnnuR\",\"O1-header__search\":\"O1-header__search__dXsnH\",\"o1HeaderSearch\":\"O1-header__search__dXsnH\",\"O1-header__bar\":\"O1-header__bar__DP4T0\",\"o1HeaderBar\":\"O1-header__bar__DP4T0\",\"O1-header__bg\":\"O1-header__bg__Enfr9\",\"o1HeaderBg\":\"O1-header__bg__Enfr9\",\"is-home-page\":\"is-home-page__v_kTf\",\"isHomePage\":\"is-home-page__v_kTf\",\"is-top\":\"is-top__VWNrC\",\"isTop\":\"is-top__VWNrC\",\"is-bottom\":\"is-bottom__ENicV\",\"isBottom\":\"is-bottom__ENicV\",\"modal--is-below-header\":\"modal--is-below-header__Hy0nP\",\"modalIsBelowHeader\":\"modal--is-below-header__Hy0nP\",\"modal--open\":\"modal--open__ojhQB\",\"modalOpen\":\"modal--open__ojhQB\",\"is-open\":\"is-open__YuZH9\",\"isOpen\":\"is-open__YuZH9\",\"no-transparency\":\"no-transparency__mUUXr\",\"noTransparency\":\"no-transparency__mUUXr\",\"no-backdropfilter\":\"no-backdropfilter__RRY40\",\"noBackdropfilter\":\"no-backdropfilter__RRY40\",\"O1-header__logo\":\"O1-header__logo__u4S8Y\",\"o1HeaderLogo\":\"O1-header__logo__u4S8Y\",\"icon--small-arrow-right\":\"icon--small-arrow-right__eM0XK\",\"iconSmallArrowRight\":\"icon--small-arrow-right__eM0XK\",\"icon--small-arrow-down\":\"icon--small-arrow-down__FmTSX\",\"iconSmallArrowDown\":\"icon--small-arrow-down__FmTSX\",\"icon--small-arrow-up\":\"icon--small-arrow-up__DLi4p\",\"iconSmallArrowUp\":\"icon--small-arrow-up__DLi4p\",\"O1-header__bottom\":\"O1-header__bottom__teF0a\",\"o1HeaderBottom\":\"O1-header__bottom__teF0a\",\"O1-header__bottom__links\":\"O1-header__bottom__links__ZQt3F\",\"o1HeaderBottomLinks\":\"O1-header__bottom__links__ZQt3F\",\"O1-header__bottom__accordion\":\"O1-header__bottom__accordion__E4ZdA\",\"o1HeaderBottomAccordion\":\"O1-header__bottom__accordion__E4ZdA\",\"O1-header__bottom__group\":\"O1-header__bottom__group__e3scQ\",\"o1HeaderBottomGroup\":\"O1-header__bottom__group__e3scQ\",\"is-shown-desktop\":\"is-shown-desktop__kcuDt\",\"isShownDesktop\":\"is-shown-desktop__kcuDt\",\"btn-login\":\"btn-login__VSWlT\",\"btnLogin\":\"btn-login__VSWlT\",\"btn-language\":\"btn-language__DoofN\",\"btnLanguage\":\"btn-language__DoofN\",\"icon--small-arrow-left\":\"icon--small-arrow-left__b1ZSS\",\"iconSmallArrowLeft\":\"icon--small-arrow-left__b1ZSS\",\"O1-header__menu\":\"O1-header__menu__bub2P\",\"o1HeaderMenu\":\"O1-header__menu__bub2P\",\"O1-header__menu__inner\":\"O1-header__menu__inner__QzXGt\",\"o1HeaderMenuInner\":\"O1-header__menu__inner__QzXGt\",\"container\":\"container__SbOpR\",\"basket-icon\":\"basket-icon__f4rVi\",\"basketIcon\":\"basket-icon__f4rVi\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__RQ4go\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__RQ4go\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__psopO\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__psopO\",\"is-hidden\":\"is-hidden__erTF5\",\"isHidden\":\"is-hidden__erTF5\",\"O1-header__nav\":\"O1-header__nav__mF4Cx\",\"o1HeaderNav\":\"O1-header__nav__mF4Cx\",\"O1-header__nav__item\":\"O1-header__nav__item___IX0Q\",\"o1HeaderNavItem\":\"O1-header__nav__item___IX0Q\",\"no-clicks\":\"no-clicks__wl0yf\",\"noClicks\":\"no-clicks__wl0yf\",\"is-hidden-path\":\"is-hidden-path__UvlGd\",\"isHiddenPath\":\"is-hidden-path__UvlGd\",\"has-hover\":\"has-hover__sT1x1\",\"hasHover\":\"has-hover__sT1x1\",\"is-title\":\"is-title__8TI6U\",\"isTitle\":\"is-title__8TI6U\",\"O1-header__nav__sub\":\"O1-header__nav__sub__DaiYf\",\"o1HeaderNavSub\":\"O1-header__nav__sub__DaiYf\",\"is-open-path\":\"is-open-path__pY8l6\",\"isOpenPath\":\"is-open-path__pY8l6\",\"O1-header__nav__sub__back\":\"O1-header__nav__sub__back__HooRK\",\"o1HeaderNavSubBack\":\"O1-header__nav__sub__back__HooRK\",\"icon\":\"icon__GG93R\",\"has-set-width\":\"has-set-width__rnXNJ\",\"hasSetWidth\":\"has-set-width__rnXNJ\",\"site-lapinus\":\"site-lapinus__Nq5g9\",\"siteLapinus\":\"site-lapinus__Nq5g9\",\"site-rockpanel\":\"site-rockpanel__dnQDq\",\"siteRockpanel\":\"site-rockpanel__dnQDq\",\"is-active\":\"is-active__hDim4\",\"isActive\":\"is-active__hDim4\",\"has-sub\":\"has-sub__HSjtS\",\"hasSub\":\"has-sub__HSjtS\",\"has-open-sub\":\"has-open-sub__XQ99d\",\"hasOpenSub\":\"has-open-sub__XQ99d\",\"is-home\":\"is-home__sHSBX\",\"isHome\":\"is-home__sHSBX\",\"O1-header__nav__bread-arrow\":\"O1-header__nav__bread-arrow__CQtzu\",\"o1HeaderNavBreadArrow\":\"O1-header__nav__bread-arrow__CQtzu\",\"search-form\":\"search-form__EkOzf\",\"searchForm\":\"search-form__EkOzf\",\"is-shown\":\"is-shown__yF8Go\",\"isShown\":\"is-shown__yF8Go\",\"search-form__form\":\"search-form__form__vN8ms\",\"searchFormForm\":\"search-form__form__vN8ms\",\"search-form__reset\":\"search-form__reset__WQx69\",\"searchFormReset\":\"search-form__reset__WQx69\",\"search-form__suggestions\":\"search-form__suggestions__rFBNc\",\"searchFormSuggestions\":\"search-form__suggestions__rFBNc\",\"O1-header__teasers\":\"O1-header__teasers__iyHCT\",\"o1HeaderTeasers\":\"O1-header__teasers__iyHCT\",\"slider__controls\":\"slider__controls__p1Icj\",\"sliderControls\":\"slider__controls__p1Icj\",\"O1-header__teaser\":\"O1-header__teaser__dsMK9\",\"o1HeaderTeaser\":\"O1-header__teaser__dsMK9\",\"O1-header__teaser__img\":\"O1-header__teaser__img__Kmtdm\",\"o1HeaderTeaserImg\":\"O1-header__teaser__img__Kmtdm\",\"O1-header__teaser__content\":\"O1-header__teaser__content__rx5DN\",\"o1HeaderTeaserContent\":\"O1-header__teaser__content__rx5DN\",\"slider--initialized\":\"slider--initialized__PY97s\",\"sliderInitialized\":\"slider--initialized__PY97s\",\"no-transition\":\"no-transition__YLiDe\",\"noTransition\":\"no-transition__YLiDe\",\"O1-header__teaser__headline\":\"O1-header__teaser__headline__RZsny\",\"o1HeaderTeaserHeadline\":\"O1-header__teaser__headline__RZsny\",\"O1-header__tools\":\"O1-header__tools__ZPnC2\",\"o1HeaderTools\":\"O1-header__tools__ZPnC2\",\"O1-header__tools__item\":\"O1-header__tools__item__qz7Y5\",\"o1HeaderToolsItem\":\"O1-header__tools__item__qz7Y5\",\"O1-header__tools__item--lang\":\"O1-header__tools__item--lang__bn_5Y\",\"o1HeaderToolsItemLang\":\"O1-header__tools__item--lang__bn_5Y\",\"login-links-menu\":\"login-links-menu__d1Rv8\",\"loginLinksMenu\":\"login-links-menu__d1Rv8\",\"login-links-menu__title\":\"login-links-menu__title__NKRFj\",\"loginLinksMenuTitle\":\"login-links-menu__title__NKRFj\",\"login-links-menu__sign-in-btn\":\"login-links-menu__sign-in-btn__w91Ve\",\"loginLinksMenuSignInBtn\":\"login-links-menu__sign-in-btn__w91Ve\",\"btn\":\"btn__Wv8HF\",\"is-profile-icon\":\"is-profile-icon__N_mj3\",\"isProfileIcon\":\"is-profile-icon__N_mj3\",\"login-links-menu__profile\":\"login-links-menu__profile__c5rnC\",\"loginLinksMenuProfile\":\"login-links-menu__profile__c5rnC\",\"login-links-menu__profile__text\":\"login-links-menu__profile__text__adoTq\",\"loginLinksMenuProfileText\":\"login-links-menu__profile__text__adoTq\",\"login-links-menu__text\":\"login-links-menu__text__yPRbt\",\"loginLinksMenuText\":\"login-links-menu__text__yPRbt\",\"login-links-menu__item\":\"login-links-menu__item__qhTVc\",\"loginLinksMenuItem\":\"login-links-menu__item__qhTVc\",\"sign-out\":\"sign-out__v4suD\",\"signOut\":\"sign-out__v4suD\",\"is-visible\":\"is-visible__Q116n\",\"isVisible\":\"is-visible__Q116n\",\"O1-header__menu-btn\":\"O1-header__menu-btn__SIiOc\",\"o1HeaderMenuBtn\":\"O1-header__menu-btn__SIiOc\",\"breadcrumbs\":\"breadcrumbs____4cT\",\"r-link\":\"r-link__XhqLn\",\"rLink\":\"r-link__XhqLn\",\"breadcrumb__list\":\"breadcrumb__list__LIn2u\",\"breadcrumbList\":\"breadcrumb__list__LIn2u\",\"breadcrumb__group\":\"breadcrumb__group__z9IG1\",\"breadcrumbGroup\":\"breadcrumb__group__z9IG1\",\"breadcrumb__divider\":\"breadcrumb__divider__l3Hn7\",\"breadcrumbDivider\":\"breadcrumb__divider__l3Hn7\",\"faded\":\"faded__SU53b\",\"O1-1-header--open\":\"O1-1-header--open__ipHjg\",\"o11HeaderOpen\":\"O1-1-header--open__ipHjg\",\"O1-1-header\":\"O1-1-header__juu0Y\",\"o11Header\":\"O1-1-header__juu0Y\",\"navigation-container\":\"navigation-container__TzV9U\",\"navigationContainer\":\"navigation-container__TzV9U\",\"stick-to-top\":\"stick-to-top__f3GGO\",\"stickToTop\":\"stick-to-top__f3GGO\",\"O1-1-header__menu-overlay\":\"O1-1-header__menu-overlay__aTlqM\",\"o11HeaderMenuOverlay\":\"O1-1-header__menu-overlay__aTlqM\",\"is-hidden-desktop\":\"is-hidden-desktop__fewVF\",\"isHiddenDesktop\":\"is-hidden-desktop__fewVF\",\"O1-1-header__bg\":\"O1-1-header__bg__SfNbG\",\"o11HeaderBg\":\"O1-1-header__bg__SfNbG\",\"no-mix-blend-mode\":\"no-mix-blend-mode__LARuE\",\"noMixBlendMode\":\"no-mix-blend-mode__LARuE\",\"search-shown\":\"search-shown__eh8Ty\",\"searchShown\":\"search-shown__eh8Ty\",\"O1-1-header__bottom\":\"O1-1-header__bottom__EGqrU\",\"o11HeaderBottom\":\"O1-1-header__bottom__EGqrU\",\"O1-1-header__bottom__links\":\"O1-1-header__bottom__links__grqxM\",\"o11HeaderBottomLinks\":\"O1-1-header__bottom__links__grqxM\",\"O1-1-header__bottom__accordion\":\"O1-1-header__bottom__accordion__fuAlI\",\"o11HeaderBottomAccordion\":\"O1-1-header__bottom__accordion__fuAlI\",\"O1-1-header__bottom__group\":\"O1-1-header__bottom__group__LBLxL\",\"o11HeaderBottomGroup\":\"O1-1-header__bottom__group__LBLxL\"};","import React, { FC, useMemo } from 'react';\r\nimport { ArrowRightIcon, SmallArrowUpIcon } from 'app/scripts/core/views/react/molecules/svg/svgElements';\r\nimport GlobeIcon from '@atoms/icons/GlobeIcon';\r\nimport styles from './HeaderBottom.module.scss';\r\n\r\nexport type OrganizationLink = {\r\n url: string;\r\n brandClass: string;\r\n text: string;\r\n rel: string;\r\n target: string;\r\n title: string;\r\n};\r\n\r\nexport type HeaderBottom = {\r\n showLanguageSelector: boolean;\r\n currentLanguage: string;\r\n brand: string;\r\n organizationLinks: OrganizationLink[];\r\n ourOrganizations: string;\r\n};\r\n\r\nconst HeaderBottom: FC = ({\r\n organizationLinks,\r\n showLanguageSelector,\r\n currentLanguage,\r\n brand,\r\n ourOrganizations,\r\n}) => {\r\n const organizationLinksArray = useMemo(\r\n () =>\r\n organizationLinks?.map((link) =>\r\n link.url !== '#' ? (\r\n
  • \r\n {link.title}\r\n
  • \r\n ) : (\r\n
  • \r\n \r\n {link.title}\r\n \r\n
  • \r\n )\r\n ),\r\n [organizationLinks]\r\n );\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport { HeaderBottom };\r\n","import React, { FC, MutableRefObject } from 'react';\r\nimport { HeaderNavigation, HeaderNavigationProps } from '@organisms/O119-HeaderNavigation/HeaderNavigation';\r\nimport styles from './NavigationNew.module.scss';\r\nimport { Teasers, TeasersItems } from './Teasers/Teasers';\r\nimport { HeaderBottom, OrganizationLink } from './HeaderBottom/HeaderBottom';\r\nimport { useHeaderMainContext } from '../header-context';\r\n\r\nexport type Navigation = {\r\n carouselItems: TeasersItems;\r\n currentLanguage: string;\r\n mainNavigationReactModel: HeaderNavigationProps;\r\n organizationLinks: OrganizationLink[];\r\n ourOrganizations: string;\r\n showLanguageSelector: boolean;\r\n};\r\n\r\nexport interface NavigationNew extends Navigation {\r\n brand: string;\r\n carouselRef: MutableRefObject;\r\n headerMenuInnerRef: MutableRefObject;\r\n}\r\n\r\nconst NavigationNew: FC = ({\r\n organizationLinks,\r\n carouselItems: filteredItems,\r\n mainNavigationReactModel,\r\n showLanguageSelector,\r\n currentLanguage,\r\n brand,\r\n carouselRef,\r\n ourOrganizations,\r\n headerMenuInnerRef,\r\n}) => {\r\n const { isMenuOpen } = useHeaderMainContext();\r\n\r\n return (\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport { NavigationNew };\r\n","// extracted by mini-css-extract-plugin\nexport default {\"O1-1-header__top_nav\":\"O1-1-header__top_nav__VxnBB\",\"o11HeaderTopNav\":\"O1-1-header__top_nav__VxnBB\",\"O1-1-header__top_nav__item\":\"O1-1-header__top_nav__item__Cqsak\",\"o11HeaderTopNavItem\":\"O1-1-header__top_nav__item__Cqsak\",\"is-open\":\"is-open___V1hF\",\"isOpen\":\"is-open___V1hF\",\"has-narrow-items\":\"has-narrow-items__ftRtV\",\"hasNarrowItems\":\"has-narrow-items__ftRtV\"};","import React, { FC, MouseEvent } from 'react';\r\nimport { tidyStr } from '@utils/tidy-str';\r\nimport styles from './TopNavigation.module.scss';\r\n\r\nexport type TopNavigationType = {\r\n cssClass: string;\r\n menuItems: ExtendedTopMenuItem[];\r\n};\r\n\r\nexport type TopMenuItem = {\r\n pageId: string;\r\n url: string;\r\n csscClass: string;\r\n title: string;\r\n virtualPath: string;\r\n};\r\n\r\nexport type ExtendedTopMenuItem = {\r\n pageId: string;\r\n url: string;\r\n csscClass: string;\r\n title: string;\r\n virtualPath: string;\r\n isOpen: boolean;\r\n};\r\n\r\nexport interface TopNavigation extends TopNavigationType {\r\n onTopNavClick: (e: MouseEvent, pageId: string, csscClass: string) => void;\r\n}\r\n\r\nconst TopNavigation: FC = ({ menuItems, cssClass, onTopNavClick }) => (\r\n \r\n);\r\n\r\nexport { TopNavigation };\r\n","// extracted by mini-css-extract-plugin\nexport default {\"O1-header__nav__list\":\"O1-header__nav__list__IZXMy\",\"o1HeaderNavList\":\"O1-header__nav__list__IZXMy\",\"O1-header__bottom__group__list\":\"O1-header__bottom__group__list__QkXvQ\",\"o1HeaderBottomGroupList\":\"O1-header__bottom__group__list__QkXvQ\",\"O1-header--open\":\"O1-header--open__dmOtM\",\"o1HeaderOpen\":\"O1-header--open__dmOtM\",\"O1-header\":\"O1-header__ezwdX\",\"o1Header\":\"O1-header__ezwdX\",\"not-in-top\":\"not-in-top__JGmmA\",\"notInTop\":\"not-in-top__JGmmA\",\"is-search\":\"is-search__xWO8E\",\"isSearch\":\"is-search__xWO8E\",\"O1-header__search\":\"O1-header__search__oCY_g\",\"o1HeaderSearch\":\"O1-header__search__oCY_g\",\"O1-header__bar\":\"O1-header__bar__eVQhz\",\"o1HeaderBar\":\"O1-header__bar__eVQhz\",\"O1-header__bg\":\"O1-header__bg__ys6Fk\",\"o1HeaderBg\":\"O1-header__bg__ys6Fk\",\"is-home-page\":\"is-home-page__bng4M\",\"isHomePage\":\"is-home-page__bng4M\",\"is-top\":\"is-top__CdUaZ\",\"isTop\":\"is-top__CdUaZ\",\"is-bottom\":\"is-bottom__zkd01\",\"isBottom\":\"is-bottom__zkd01\",\"modal--is-below-header\":\"modal--is-below-header__e5vrA\",\"modalIsBelowHeader\":\"modal--is-below-header__e5vrA\",\"modal--open\":\"modal--open__bD865\",\"modalOpen\":\"modal--open__bD865\",\"is-open\":\"is-open__yYbMD\",\"isOpen\":\"is-open__yYbMD\",\"no-transparency\":\"no-transparency__LCM18\",\"noTransparency\":\"no-transparency__LCM18\",\"no-backdropfilter\":\"no-backdropfilter___ZsjG\",\"noBackdropfilter\":\"no-backdropfilter___ZsjG\",\"O1-header__logo\":\"O1-header__logo__mB1ln\",\"o1HeaderLogo\":\"O1-header__logo__mB1ln\",\"icon--small-arrow-right\":\"icon--small-arrow-right__oYoFp\",\"iconSmallArrowRight\":\"icon--small-arrow-right__oYoFp\",\"icon--small-arrow-down\":\"icon--small-arrow-down__OcVbH\",\"iconSmallArrowDown\":\"icon--small-arrow-down__OcVbH\",\"icon--small-arrow-up\":\"icon--small-arrow-up__D6l3k\",\"iconSmallArrowUp\":\"icon--small-arrow-up__D6l3k\",\"O1-header__bottom\":\"O1-header__bottom__mZmzk\",\"o1HeaderBottom\":\"O1-header__bottom__mZmzk\",\"O1-header__bottom__links\":\"O1-header__bottom__links__h_0VK\",\"o1HeaderBottomLinks\":\"O1-header__bottom__links__h_0VK\",\"O1-header__bottom__accordion\":\"O1-header__bottom__accordion__PG2kl\",\"o1HeaderBottomAccordion\":\"O1-header__bottom__accordion__PG2kl\",\"O1-header__bottom__group\":\"O1-header__bottom__group__WMyc0\",\"o1HeaderBottomGroup\":\"O1-header__bottom__group__WMyc0\",\"is-shown-desktop\":\"is-shown-desktop__TUEtp\",\"isShownDesktop\":\"is-shown-desktop__TUEtp\",\"btn-login\":\"btn-login__sKMJj\",\"btnLogin\":\"btn-login__sKMJj\",\"btn-language\":\"btn-language__tO_F4\",\"btnLanguage\":\"btn-language__tO_F4\",\"icon--small-arrow-left\":\"icon--small-arrow-left__lJeXQ\",\"iconSmallArrowLeft\":\"icon--small-arrow-left__lJeXQ\",\"O1-header__menu\":\"O1-header__menu__XBByF\",\"o1HeaderMenu\":\"O1-header__menu__XBByF\",\"O1-header__menu__inner\":\"O1-header__menu__inner__jiqAx\",\"o1HeaderMenuInner\":\"O1-header__menu__inner__jiqAx\",\"container\":\"container__etRjj\",\"basket-icon\":\"basket-icon__nEZEt\",\"basketIcon\":\"basket-icon__nEZEt\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__jRqOx\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__jRqOx\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__t16q3\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__t16q3\",\"is-hidden\":\"is-hidden__u2XNq\",\"isHidden\":\"is-hidden__u2XNq\",\"O1-header__nav\":\"O1-header__nav__VzEBE\",\"o1HeaderNav\":\"O1-header__nav__VzEBE\",\"O1-header__nav__item\":\"O1-header__nav__item__g_Hn9\",\"o1HeaderNavItem\":\"O1-header__nav__item__g_Hn9\",\"no-clicks\":\"no-clicks__fV9CB\",\"noClicks\":\"no-clicks__fV9CB\",\"is-hidden-path\":\"is-hidden-path__Bp3uo\",\"isHiddenPath\":\"is-hidden-path__Bp3uo\",\"has-hover\":\"has-hover__U2qSC\",\"hasHover\":\"has-hover__U2qSC\",\"is-title\":\"is-title__fhPSZ\",\"isTitle\":\"is-title__fhPSZ\",\"O1-header__nav__sub\":\"O1-header__nav__sub__lkWyy\",\"o1HeaderNavSub\":\"O1-header__nav__sub__lkWyy\",\"is-open-path\":\"is-open-path__Bun6Y\",\"isOpenPath\":\"is-open-path__Bun6Y\",\"O1-header__nav__sub__back\":\"O1-header__nav__sub__back__ge4PQ\",\"o1HeaderNavSubBack\":\"O1-header__nav__sub__back__ge4PQ\",\"icon\":\"icon__zDko8\",\"has-set-width\":\"has-set-width__FY2ai\",\"hasSetWidth\":\"has-set-width__FY2ai\",\"site-lapinus\":\"site-lapinus__xmIer\",\"siteLapinus\":\"site-lapinus__xmIer\",\"site-rockpanel\":\"site-rockpanel__aUP2_\",\"siteRockpanel\":\"site-rockpanel__aUP2_\",\"is-active\":\"is-active__nJCd7\",\"isActive\":\"is-active__nJCd7\",\"has-sub\":\"has-sub__f8Q_9\",\"hasSub\":\"has-sub__f8Q_9\",\"has-open-sub\":\"has-open-sub__bgE4t\",\"hasOpenSub\":\"has-open-sub__bgE4t\",\"is-home\":\"is-home__O0yH4\",\"isHome\":\"is-home__O0yH4\",\"O1-header__nav__bread-arrow\":\"O1-header__nav__bread-arrow__fkWPB\",\"o1HeaderNavBreadArrow\":\"O1-header__nav__bread-arrow__fkWPB\",\"search-form\":\"search-form__RpVhf\",\"searchForm\":\"search-form__RpVhf\",\"is-shown\":\"is-shown__qCICw\",\"isShown\":\"is-shown__qCICw\",\"search-form__form\":\"search-form__form__WOVSc\",\"searchFormForm\":\"search-form__form__WOVSc\",\"search-form__reset\":\"search-form__reset__Pj8Tx\",\"searchFormReset\":\"search-form__reset__Pj8Tx\",\"search-form__suggestions\":\"search-form__suggestions__Pj1Jh\",\"searchFormSuggestions\":\"search-form__suggestions__Pj1Jh\",\"O1-header__teasers\":\"O1-header__teasers__xIrUr\",\"o1HeaderTeasers\":\"O1-header__teasers__xIrUr\",\"slider__controls\":\"slider__controls__ytJV3\",\"sliderControls\":\"slider__controls__ytJV3\",\"O1-header__teaser\":\"O1-header__teaser__u36pU\",\"o1HeaderTeaser\":\"O1-header__teaser__u36pU\",\"O1-header__teaser__img\":\"O1-header__teaser__img__bsbMA\",\"o1HeaderTeaserImg\":\"O1-header__teaser__img__bsbMA\",\"O1-header__teaser__content\":\"O1-header__teaser__content__vDYFL\",\"o1HeaderTeaserContent\":\"O1-header__teaser__content__vDYFL\",\"slider--initialized\":\"slider--initialized__Rx9Kf\",\"sliderInitialized\":\"slider--initialized__Rx9Kf\",\"no-transition\":\"no-transition__vpHHF\",\"noTransition\":\"no-transition__vpHHF\",\"O1-header__teaser__headline\":\"O1-header__teaser__headline__EU_iE\",\"o1HeaderTeaserHeadline\":\"O1-header__teaser__headline__EU_iE\",\"O1-header__tools\":\"O1-header__tools__Cci64\",\"o1HeaderTools\":\"O1-header__tools__Cci64\",\"O1-header__tools__item\":\"O1-header__tools__item__Lu7Kc\",\"o1HeaderToolsItem\":\"O1-header__tools__item__Lu7Kc\",\"O1-header__tools__item--lang\":\"O1-header__tools__item--lang__ZzT_i\",\"o1HeaderToolsItemLang\":\"O1-header__tools__item--lang__ZzT_i\",\"login-links-menu\":\"login-links-menu__E52tV\",\"loginLinksMenu\":\"login-links-menu__E52tV\",\"login-links-menu__title\":\"login-links-menu__title__Mfc3z\",\"loginLinksMenuTitle\":\"login-links-menu__title__Mfc3z\",\"login-links-menu__sign-in-btn\":\"login-links-menu__sign-in-btn__x0_wW\",\"loginLinksMenuSignInBtn\":\"login-links-menu__sign-in-btn__x0_wW\",\"btn\":\"btn__vYvW1\",\"is-profile-icon\":\"is-profile-icon__QMZWh\",\"isProfileIcon\":\"is-profile-icon__QMZWh\",\"login-links-menu__profile\":\"login-links-menu__profile__dn5NF\",\"loginLinksMenuProfile\":\"login-links-menu__profile__dn5NF\",\"login-links-menu__profile__text\":\"login-links-menu__profile__text__pMegg\",\"loginLinksMenuProfileText\":\"login-links-menu__profile__text__pMegg\",\"login-links-menu__text\":\"login-links-menu__text__tONzE\",\"loginLinksMenuText\":\"login-links-menu__text__tONzE\",\"login-links-menu__item\":\"login-links-menu__item__runQw\",\"loginLinksMenuItem\":\"login-links-menu__item__runQw\",\"sign-out\":\"sign-out__IzaHJ\",\"signOut\":\"sign-out__IzaHJ\",\"is-visible\":\"is-visible__q8psJ\",\"isVisible\":\"is-visible__q8psJ\",\"O1-header__menu-btn\":\"O1-header__menu-btn__eoCJe\",\"o1HeaderMenuBtn\":\"O1-header__menu-btn__eoCJe\",\"breadcrumbs\":\"breadcrumbs__s8SKF\",\"r-link\":\"r-link__A1dll\",\"rLink\":\"r-link__A1dll\",\"breadcrumb__list\":\"breadcrumb__list__L1KJq\",\"breadcrumbList\":\"breadcrumb__list__L1KJq\",\"breadcrumb__group\":\"breadcrumb__group__g09XK\",\"breadcrumbGroup\":\"breadcrumb__group__g09XK\",\"breadcrumb__divider\":\"breadcrumb__divider__wPRk7\",\"breadcrumbDivider\":\"breadcrumb__divider__wPRk7\",\"faded\":\"faded__eo2Mf\",\"O1-1-header--open\":\"O1-1-header--open__e4CAb\",\"o11HeaderOpen\":\"O1-1-header--open__e4CAb\",\"O1-1-header\":\"O1-1-header__WFaxC\",\"o11Header\":\"O1-1-header__WFaxC\",\"navigation-container\":\"navigation-container__BoKgC\",\"navigationContainer\":\"navigation-container__BoKgC\",\"stick-to-top\":\"stick-to-top__EczQT\",\"stickToTop\":\"stick-to-top__EczQT\",\"O1-1-header__menu-overlay\":\"O1-1-header__menu-overlay__ym8rT\",\"o11HeaderMenuOverlay\":\"O1-1-header__menu-overlay__ym8rT\",\"is-hidden-desktop\":\"is-hidden-desktop__RlGbB\",\"isHiddenDesktop\":\"is-hidden-desktop__RlGbB\",\"O1-1-header__bg\":\"O1-1-header__bg__SPUTN\",\"o11HeaderBg\":\"O1-1-header__bg__SPUTN\",\"no-mix-blend-mode\":\"no-mix-blend-mode__Xmveq\",\"noMixBlendMode\":\"no-mix-blend-mode__Xmveq\",\"search-shown\":\"search-shown__xtIvH\",\"searchShown\":\"search-shown__xtIvH\",\"O1-1-header--login\":\"O1-1-header--login__jspjG\",\"o11HeaderLogin\":\"O1-1-header--login__jspjG\",\"O1-1-header__tools__item--login\":\"O1-1-header__tools__item--login__QQ9py\",\"o11HeaderToolsItemLogin\":\"O1-1-header__tools__item--login__QQ9py\",\"O1-1-header__tools__item--lang\":\"O1-1-header__tools__item--lang__K5iT_\",\"o11HeaderToolsItemLang\":\"O1-1-header__tools__item--lang__K5iT_\"};","import React, { FC, useMemo } from 'react';\r\nimport GlobeIcon from '@atoms/icons/GlobeIcon';\r\nimport styles from './HeaderDropdownContent.module.scss';\r\n\r\nexport type HeaderDropdownContentProps = {\r\n items: { pageLink: string; classes: string; extensionClasses: string[]; displayString: string }[];\r\n displayString: string;\r\n isLanguageSelector: boolean;\r\n chooseOtherLanguageText: string;\r\n};\r\n\r\nexport interface HeaderDropdownContent extends HeaderDropdownContentProps {\r\n showDropdown: boolean;\r\n}\r\n\r\nconst HeaderDropdownContent: FC = ({\r\n items,\r\n displayString,\r\n isLanguageSelector,\r\n chooseOtherLanguageText,\r\n}) => {\r\n const globeIconWithText = useMemo(\r\n () => (\r\n <>\r\n \r\n \r\n \r\n {displayString}\r\n \r\n ),\r\n [displayString]\r\n );\r\n\r\n return items.length === 0 ? (\r\n \r\n {globeIconWithText}\r\n \r\n ) : (\r\n \r\n {globeIconWithText}\r\n
    \r\n {items?.map((item) => (\r\n \r\n {item.displayString}\r\n \r\n ))}\r\n {isLanguageSelector && (\r\n \r\n {chooseOtherLanguageText}\r\n \r\n )}\r\n
    \r\n \r\n );\r\n};\r\nexport { HeaderDropdownContent };\r\n","// extracted by mini-css-extract-plugin\nexport default {\"O1-header__nav__list\":\"O1-header__nav__list__mKIRo\",\"o1HeaderNavList\":\"O1-header__nav__list__mKIRo\",\"O1-header__bottom__group__list\":\"O1-header__bottom__group__list__IDIvC\",\"o1HeaderBottomGroupList\":\"O1-header__bottom__group__list__IDIvC\",\"O1-header--open\":\"O1-header--open__DRh0W\",\"o1HeaderOpen\":\"O1-header--open__DRh0W\",\"O1-header\":\"O1-header__Bx_LN\",\"o1Header\":\"O1-header__Bx_LN\",\"not-in-top\":\"not-in-top__atCkd\",\"notInTop\":\"not-in-top__atCkd\",\"is-search\":\"is-search__XqeP7\",\"isSearch\":\"is-search__XqeP7\",\"O1-header__search\":\"O1-header__search__VBuJ5\",\"o1HeaderSearch\":\"O1-header__search__VBuJ5\",\"O1-header__bar\":\"O1-header__bar__o2UEd\",\"o1HeaderBar\":\"O1-header__bar__o2UEd\",\"O1-header__bg\":\"O1-header__bg__ZaOgb\",\"o1HeaderBg\":\"O1-header__bg__ZaOgb\",\"is-home-page\":\"is-home-page__AwCsO\",\"isHomePage\":\"is-home-page__AwCsO\",\"is-top\":\"is-top__trYM7\",\"isTop\":\"is-top__trYM7\",\"is-bottom\":\"is-bottom__wCE5W\",\"isBottom\":\"is-bottom__wCE5W\",\"modal--is-below-header\":\"modal--is-below-header__mPDW1\",\"modalIsBelowHeader\":\"modal--is-below-header__mPDW1\",\"modal--open\":\"modal--open__u07Kk\",\"modalOpen\":\"modal--open__u07Kk\",\"is-open\":\"is-open__j42BD\",\"isOpen\":\"is-open__j42BD\",\"no-transparency\":\"no-transparency__K2y3G\",\"noTransparency\":\"no-transparency__K2y3G\",\"no-backdropfilter\":\"no-backdropfilter__UU_ae\",\"noBackdropfilter\":\"no-backdropfilter__UU_ae\",\"O1-header__logo\":\"O1-header__logo__Mlg5U\",\"o1HeaderLogo\":\"O1-header__logo__Mlg5U\",\"icon--small-arrow-right\":\"icon--small-arrow-right__Oxn3B\",\"iconSmallArrowRight\":\"icon--small-arrow-right__Oxn3B\",\"icon--small-arrow-down\":\"icon--small-arrow-down__AGsKI\",\"iconSmallArrowDown\":\"icon--small-arrow-down__AGsKI\",\"icon--small-arrow-up\":\"icon--small-arrow-up__Qm4_O\",\"iconSmallArrowUp\":\"icon--small-arrow-up__Qm4_O\",\"O1-header__bottom\":\"O1-header__bottom__SK2kI\",\"o1HeaderBottom\":\"O1-header__bottom__SK2kI\",\"O1-header__bottom__links\":\"O1-header__bottom__links__omcIh\",\"o1HeaderBottomLinks\":\"O1-header__bottom__links__omcIh\",\"O1-header__bottom__accordion\":\"O1-header__bottom__accordion__zeMzd\",\"o1HeaderBottomAccordion\":\"O1-header__bottom__accordion__zeMzd\",\"O1-header__bottom__group\":\"O1-header__bottom__group__VnN_l\",\"o1HeaderBottomGroup\":\"O1-header__bottom__group__VnN_l\",\"is-shown-desktop\":\"is-shown-desktop__TIFhq\",\"isShownDesktop\":\"is-shown-desktop__TIFhq\",\"btn-login\":\"btn-login__dX0sg\",\"btnLogin\":\"btn-login__dX0sg\",\"btn-language\":\"btn-language__ZIPdo\",\"btnLanguage\":\"btn-language__ZIPdo\",\"icon--small-arrow-left\":\"icon--small-arrow-left__RLZbc\",\"iconSmallArrowLeft\":\"icon--small-arrow-left__RLZbc\",\"O1-header__menu\":\"O1-header__menu__CejPe\",\"o1HeaderMenu\":\"O1-header__menu__CejPe\",\"O1-header__menu__inner\":\"O1-header__menu__inner__wOWaZ\",\"o1HeaderMenuInner\":\"O1-header__menu__inner__wOWaZ\",\"container\":\"container__kbJkz\",\"basket-icon\":\"basket-icon__S5fqG\",\"basketIcon\":\"basket-icon__S5fqG\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__gjGtO\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__gjGtO\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__A6VFU\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__A6VFU\",\"is-hidden\":\"is-hidden__l8ei2\",\"isHidden\":\"is-hidden__l8ei2\",\"O1-header__nav\":\"O1-header__nav__BdU2E\",\"o1HeaderNav\":\"O1-header__nav__BdU2E\",\"O1-header__nav__item\":\"O1-header__nav__item__NaWCv\",\"o1HeaderNavItem\":\"O1-header__nav__item__NaWCv\",\"no-clicks\":\"no-clicks__Zjwce\",\"noClicks\":\"no-clicks__Zjwce\",\"is-hidden-path\":\"is-hidden-path__iXBBp\",\"isHiddenPath\":\"is-hidden-path__iXBBp\",\"has-hover\":\"has-hover__rjJtD\",\"hasHover\":\"has-hover__rjJtD\",\"is-title\":\"is-title__yo_dJ\",\"isTitle\":\"is-title__yo_dJ\",\"O1-header__nav__sub\":\"O1-header__nav__sub__jWF3U\",\"o1HeaderNavSub\":\"O1-header__nav__sub__jWF3U\",\"is-open-path\":\"is-open-path__igO46\",\"isOpenPath\":\"is-open-path__igO46\",\"O1-header__nav__sub__back\":\"O1-header__nav__sub__back__PmTPk\",\"o1HeaderNavSubBack\":\"O1-header__nav__sub__back__PmTPk\",\"icon\":\"icon__RLofC\",\"has-set-width\":\"has-set-width__yMUN5\",\"hasSetWidth\":\"has-set-width__yMUN5\",\"site-lapinus\":\"site-lapinus__ZA7yG\",\"siteLapinus\":\"site-lapinus__ZA7yG\",\"site-rockpanel\":\"site-rockpanel__K6gaV\",\"siteRockpanel\":\"site-rockpanel__K6gaV\",\"is-active\":\"is-active__W8OTV\",\"isActive\":\"is-active__W8OTV\",\"has-sub\":\"has-sub__DbXNT\",\"hasSub\":\"has-sub__DbXNT\",\"has-open-sub\":\"has-open-sub__ZwgR3\",\"hasOpenSub\":\"has-open-sub__ZwgR3\",\"is-home\":\"is-home__xzwWv\",\"isHome\":\"is-home__xzwWv\",\"O1-header__nav__bread-arrow\":\"O1-header__nav__bread-arrow__Sei_s\",\"o1HeaderNavBreadArrow\":\"O1-header__nav__bread-arrow__Sei_s\",\"search-form\":\"search-form__jS9F7\",\"searchForm\":\"search-form__jS9F7\",\"is-shown\":\"is-shown__oBVTf\",\"isShown\":\"is-shown__oBVTf\",\"search-form__form\":\"search-form__form__YIZTF\",\"searchFormForm\":\"search-form__form__YIZTF\",\"search-form__reset\":\"search-form__reset__p1v2d\",\"searchFormReset\":\"search-form__reset__p1v2d\",\"search-form__suggestions\":\"search-form__suggestions__n6l9z\",\"searchFormSuggestions\":\"search-form__suggestions__n6l9z\",\"O1-header__teasers\":\"O1-header__teasers__ZeDfc\",\"o1HeaderTeasers\":\"O1-header__teasers__ZeDfc\",\"slider__controls\":\"slider__controls__OajSA\",\"sliderControls\":\"slider__controls__OajSA\",\"O1-header__teaser\":\"O1-header__teaser__G460Y\",\"o1HeaderTeaser\":\"O1-header__teaser__G460Y\",\"O1-header__teaser__img\":\"O1-header__teaser__img__yhKfe\",\"o1HeaderTeaserImg\":\"O1-header__teaser__img__yhKfe\",\"O1-header__teaser__content\":\"O1-header__teaser__content__D1ddK\",\"o1HeaderTeaserContent\":\"O1-header__teaser__content__D1ddK\",\"slider--initialized\":\"slider--initialized__ZNVwI\",\"sliderInitialized\":\"slider--initialized__ZNVwI\",\"no-transition\":\"no-transition__PIHlV\",\"noTransition\":\"no-transition__PIHlV\",\"O1-header__teaser__headline\":\"O1-header__teaser__headline__xAwuj\",\"o1HeaderTeaserHeadline\":\"O1-header__teaser__headline__xAwuj\",\"O1-header__tools\":\"O1-header__tools__TEM9_\",\"o1HeaderTools\":\"O1-header__tools__TEM9_\",\"O1-header__tools__item\":\"O1-header__tools__item__sOIFv\",\"o1HeaderToolsItem\":\"O1-header__tools__item__sOIFv\",\"O1-header__tools__item--lang\":\"O1-header__tools__item--lang__V8uDF\",\"o1HeaderToolsItemLang\":\"O1-header__tools__item--lang__V8uDF\",\"login-links-menu\":\"login-links-menu__e0YOk\",\"loginLinksMenu\":\"login-links-menu__e0YOk\",\"login-links-menu__title\":\"login-links-menu__title__nad4P\",\"loginLinksMenuTitle\":\"login-links-menu__title__nad4P\",\"login-links-menu__sign-in-btn\":\"login-links-menu__sign-in-btn__ChGDk\",\"loginLinksMenuSignInBtn\":\"login-links-menu__sign-in-btn__ChGDk\",\"btn\":\"btn__pBt_n\",\"is-profile-icon\":\"is-profile-icon__jls64\",\"isProfileIcon\":\"is-profile-icon__jls64\",\"login-links-menu__profile\":\"login-links-menu__profile__iqlH1\",\"loginLinksMenuProfile\":\"login-links-menu__profile__iqlH1\",\"login-links-menu__profile__text\":\"login-links-menu__profile__text__xtx1I\",\"loginLinksMenuProfileText\":\"login-links-menu__profile__text__xtx1I\",\"login-links-menu__text\":\"login-links-menu__text__qbcsn\",\"loginLinksMenuText\":\"login-links-menu__text__qbcsn\",\"login-links-menu__item\":\"login-links-menu__item__lJ7yN\",\"loginLinksMenuItem\":\"login-links-menu__item__lJ7yN\",\"sign-out\":\"sign-out__UgNkH\",\"signOut\":\"sign-out__UgNkH\",\"is-visible\":\"is-visible__pXLRb\",\"isVisible\":\"is-visible__pXLRb\",\"O1-header__menu-btn\":\"O1-header__menu-btn__l1476\",\"o1HeaderMenuBtn\":\"O1-header__menu-btn__l1476\",\"breadcrumbs\":\"breadcrumbs__d1mKZ\",\"r-link\":\"r-link__1xISl\",\"rLink\":\"r-link__1xISl\",\"breadcrumb__list\":\"breadcrumb__list__rBLkH\",\"breadcrumbList\":\"breadcrumb__list__rBLkH\",\"breadcrumb__group\":\"breadcrumb__group__dF93u\",\"breadcrumbGroup\":\"breadcrumb__group__dF93u\",\"breadcrumb__divider\":\"breadcrumb__divider__bwweC\",\"breadcrumbDivider\":\"breadcrumb__divider__bwweC\",\"faded\":\"faded__CNLFj\",\"O1-1-header--open\":\"O1-1-header--open__OeaGi\",\"o11HeaderOpen\":\"O1-1-header--open__OeaGi\",\"O1-1-header\":\"O1-1-header__B8SAu\",\"o11Header\":\"O1-1-header__B8SAu\",\"navigation-container\":\"navigation-container__LgqPx\",\"navigationContainer\":\"navigation-container__LgqPx\",\"stick-to-top\":\"stick-to-top__HG78c\",\"stickToTop\":\"stick-to-top__HG78c\",\"O1-1-header__menu-overlay\":\"O1-1-header__menu-overlay__mKFes\",\"o11HeaderMenuOverlay\":\"O1-1-header__menu-overlay__mKFes\",\"is-hidden-desktop\":\"is-hidden-desktop__EbJMs\",\"isHiddenDesktop\":\"is-hidden-desktop__EbJMs\",\"O1-1-header__bg\":\"O1-1-header__bg__MajZc\",\"o11HeaderBg\":\"O1-1-header__bg__MajZc\",\"no-mix-blend-mode\":\"no-mix-blend-mode__sOSKg\",\"noMixBlendMode\":\"no-mix-blend-mode__sOSKg\",\"search-shown\":\"search-shown__K64gx\",\"searchShown\":\"search-shown__K64gx\",\"O1-1-header__logo\":\"O1-1-header__logo__MGru6\",\"o11HeaderLogo\":\"O1-1-header__logo__MGru6\"};","import React, { FC } from 'react';\r\nimport styles from './BrandLogo.module.scss';\r\n\r\nexport type BrandLogo = {\r\n startPageHref: string;\r\n brandLogoSvg: string;\r\n};\r\n\r\nconst BrandLogo: FC = ({ startPageHref, brandLogoSvg }) => (\r\n
    \r\n \r\n
    ;\r\n \r\n
    \r\n);\r\n\r\nexport { BrandLogo };\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst BucketIcon: FC = (props) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport default BucketIcon;\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst CheckMarkIcon: FC = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default CheckMarkIcon;\r\n","// extracted by mini-css-extract-plugin\nexport default {\"basket-icon\":\"basket-icon__D0VAH\",\"basketIcon\":\"basket-icon__D0VAH\",\"ordet-bucket-icon-wrap\":\"ordet-bucket-icon-wrap__n0dls\",\"ordetBucketIconWrap\":\"ordet-bucket-icon-wrap__n0dls\",\"ordet-bucket-icon-amount\":\"ordet-bucket-icon-amount__EcuVQ\",\"ordetBucketIconAmount\":\"ordet-bucket-icon-amount__EcuVQ\",\"O1-header\":\"O1-header__dW5aZ\",\"o1Header\":\"O1-header__dW5aZ\",\"is-home-page\":\"is-home-page__OU7hF\",\"isHomePage\":\"is-home-page__OU7hF\",\"not-in-top\":\"not-in-top__fpJIo\",\"notInTop\":\"not-in-top__fpJIo\"};","/* eslint-disable jsx-a11y/control-has-associated-label */\r\nimport React, { FC } from 'react';\r\n\r\nexport type BasketItem = {\r\n title: string;\r\n sampleColorName?: string;\r\n data: {\r\n image: string;\r\n title: string;\r\n sampleColorName: string;\r\n text: string;\r\n };\r\n count?: number;\r\n id: string;\r\n // eslint-disable-next-line react/no-unused-prop-types\r\n format: string;\r\n};\r\n\r\nexport const BasketItem: FC = ({ data, count, id }) => (\r\n
    \r\n \r\n

    \r\n {count > 1 && `${count} x `}\r\n {data.title} {data.sampleColorName}\r\n

    \r\n
    \r\n);\r\n","import React, { FC } from 'react';\r\nimport BucketIcon from '@atoms/icons/BucketIcon';\r\nimport CheckMarkIcon from '@atoms/icons/CheckMarkIcon';\r\nimport { useBasketCount } from '@hooks/useBasketCount';\r\nimport { useBasketList } from '@hooks/useBasketList';\r\nimport { useAddedBasketList } from '@hooks/useAddedBasketList';\r\nimport styles from './Basket.module.scss';\r\nimport barStyles from '../Bar.module.scss';\r\nimport { BasketItem } from './BasketItem';\r\n\r\nexport type Basket = {\r\n orderItemsText: string;\r\n checkoutText: string;\r\n addedText: string;\r\n};\r\n\r\nconst Basket: FC = ({ orderItemsText, checkoutText, addedText }) => {\r\n const basketCount = useBasketCount();\r\n const basketList = useBasketList();\r\n const addedBasketList = useAddedBasketList();\r\n\r\n return (\r\n \r\n
    \r\n \r\n \r\n \r\n {basketCount > 0 && (\r\n \r\n {basketCount.toString()}\r\n \r\n )}\r\n
    \r\n

    {orderItemsText}

    \r\n
    \r\n {basketList?.map((item) => (\r\n \r\n ))}\r\n
    \r\n
    {checkoutText}
    \r\n
    \r\n
    \r\n

    \r\n \r\n \r\n \r\n {addedText}\r\n

    \r\n
    \r\n {addedBasketList.map((item) => (\r\n \r\n ))}\r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport { Basket };\r\n","import { EventEnum, subscribe, unsubscribe } from '@utils/custom-events';\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport const useBasketCount = () => {\r\n const [basketCount, setBasketCount] = useState(0);\r\n\r\n useEffect(() => {\r\n const getInitialBasketCount = () => {\r\n const storedBasket = window.localStorage.getItem('basket')\r\n ? JSON.parse(window.localStorage.getItem('basket'))\r\n : [];\r\n\r\n let totalCount = 0;\r\n storedBasket?.items?.forEach((item) => {\r\n totalCount += item.count;\r\n });\r\n\r\n return totalCount;\r\n };\r\n setBasketCount(getInitialBasketCount());\r\n\r\n const eventHandler = ({ detail }: CustomEvent) => {\r\n setBasketCount(detail);\r\n };\r\n\r\n subscribe(EventEnum.changeBasketCount, eventHandler);\r\n\r\n return () => unsubscribe(EventEnum.changeBasketCount, eventHandler);\r\n }, []);\r\n\r\n return basketCount;\r\n};\r\n","import { BasketItem } from '@organisms/O1-Header/Bar/Basket/BasketItem';\r\nimport { EventEnum, subscribe, unsubscribe } from '@utils/custom-events';\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport const useBasketList = () => {\r\n const [basketList, setBasketList] = useState([]);\r\n\r\n useEffect(() => {\r\n const getInitialBasketList = () => {\r\n const storedBasket = window.localStorage.getItem('basket')\r\n ? JSON.parse(window.localStorage.getItem('basket'))\r\n : {};\r\n\r\n return storedBasket.items;\r\n };\r\n setBasketList(getInitialBasketList);\r\n\r\n const eventHandler = ({ detail }: CustomEvent) => {\r\n setBasketList(detail);\r\n };\r\n\r\n subscribe(EventEnum.changeBasketList, eventHandler);\r\n\r\n return () => unsubscribe(EventEnum.changeBasketList, eventHandler);\r\n }, []);\r\n\r\n return basketList;\r\n};\r\n","import { BasketItem } from '@organisms/O1-Header/Bar/Basket/BasketItem';\r\nimport { EventEnum, subscribe, unsubscribe } from '@utils/custom-events';\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport const useAddedBasketList = () => {\r\n const [addedBasketList, setAddedBasketList] = useState([]);\r\n\r\n useEffect(() => {\r\n const eventHandler = ({ detail }: CustomEvent) => {\r\n setAddedBasketList(detail);\r\n };\r\n\r\n subscribe(EventEnum.changeAddedBasketList, eventHandler);\r\n\r\n return () => unsubscribe(EventEnum.changeAddedBasketList, eventHandler);\r\n }, []);\r\n\r\n return addedBasketList;\r\n};\r\n","import React, { FC, SVGProps } from 'react';\r\n\r\ntype Props = SVGProps;\r\n\r\nconst LoginIcon: FC = (props) => (\r\n \r\n \r\n \r\n);\r\n\r\nexport default LoginIcon;\r\n","import React, { FC } from 'react';\r\nimport LoginIcon from '@atoms/icons/LoginIcon';\r\nimport { OrganizationLink } from '@organisms/O1-Header/NavigationNew/HeaderBottom/HeaderBottom';\r\nimport toolStyles from '../HeaderDropdownContent/HeaderDropdownContent.module.scss';\r\nimport BarStyles from '../Bar.module.scss';\r\n\r\nexport type Login = {\r\n portalLinks: OrganizationLink[];\r\n};\r\n\r\nconst Login: FC = ({ portalLinks }) => (\r\n \r\n \r\n \r\n \r\n
    \r\n {portalLinks?.map(({ url, target, rel, text }) => (\r\n \r\n {text}\r\n \r\n ))}\r\n
    \r\n \r\n);\r\n\r\nexport { Login };\r\n","import React, { FC, MouseEvent } from 'react';\r\nimport { tidyStr } from '@utils/tidy-str';\r\nimport SearchIcon from '@atoms/icons/SearchIcon';\r\nimport styles from './Bar.module.scss';\r\nimport { ExtendedTopMenuItem, TopNavigation } from './TopNavigation/TopNavigation';\r\nimport { HeaderDropdownContent } from './HeaderDropdownContent';\r\nimport { BrandLogo } from './BrandLogo/BrandLogo';\r\nimport { Basket } from './Basket/Basket';\r\nimport { Login } from './Login/Login';\r\nimport { OrganizationLink } from '../NavigationNew/HeaderBottom/HeaderBottom';\r\n\r\nexport type Bar = {\r\n headerExtensions: string;\r\n startPageHref: string;\r\n hasMinWidth: string;\r\n isShowSearchText: boolean;\r\n searchHeaderIconText: string;\r\n showBasket: boolean;\r\n commerceMarketoFormId: string;\r\n orderItemsText: string;\r\n checkoutText: string;\r\n addedText: string;\r\n hasPortalLinks: boolean;\r\n portalLinks: OrganizationLink[];\r\n searchPageUrl: string;\r\n inputPlaceholder: string;\r\n headerDropdownContent: HeaderDropdownContent;\r\n toggleSearch: (event: MouseEvent) => void;\r\n onClickMenu: (event: MouseEvent) => void;\r\n onTopNavClick: (e: MouseEvent, pageId: string, csscClass: string) => void;\r\n cssClass: string;\r\n extendedTopNavigationItems: ExtendedTopMenuItem[];\r\n brandLogoSvg: string;\r\n};\r\n\r\nconst Bar: FC = ({\r\n portalLinks,\r\n startPageHref,\r\n hasMinWidth,\r\n isShowSearchText,\r\n searchHeaderIconText,\r\n showBasket,\r\n commerceMarketoFormId,\r\n orderItemsText,\r\n checkoutText,\r\n addedText,\r\n hasPortalLinks,\r\n headerDropdownContent,\r\n toggleSearch,\r\n onClickMenu,\r\n onTopNavClick,\r\n extendedTopNavigationItems,\r\n cssClass,\r\n brandLogoSvg,\r\n}) => {\r\n const getSearchButton = (isSticky: boolean) => (\r\n (isSticky ? toggleSearch(e) : {})}\r\n data-testid={isSticky ? 'sticky-search-btn' : 'search-btn'}\r\n >\r\n \r\n \r\n {isShowSearchText && {searchHeaderIconText}}\r\n \r\n \r\n );\r\n\r\n return (\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {getSearchButton(false)}\r\n {getSearchButton(true)}\r\n {showBasket && !commerceMarketoFormId && (\r\n \r\n )}\r\n {hasPortalLinks && }\r\n {headerDropdownContent?.showDropdown && }\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport { Bar };\r\n","import React, { FC } from 'react';\r\nimport { SearchForm } from '@molecules/SearchForm/SearchForm';\r\nimport { SearchSuggestion } from '@molecules/SearchSuggestions/SearchSuggestionItem/SearchSuggestionItem';\r\nimport styles from './Search.module.scss';\r\n\r\nexport type Search = {\r\n searchPageUrl: string;\r\n closeSearch: () => void;\r\n inputPlaceholder: string;\r\n stickySearchInput: React.MutableRefObject;\r\n searchFormRef: React.MutableRefObject;\r\n formRef: React.MutableRefObject;\r\n sugestionsRef: React.MutableRefObject;\r\n searchFormWithSuggestionsData: {\r\n onChangeSugestionsCollection: (collection: SearchSuggestion[]) => void;\r\n isSearchOpen: boolean;\r\n typingTimeout: NodeJS.Timeout;\r\n onChangeInputValue: (value: string) => void;\r\n isShownSuggestionList: boolean;\r\n closeSearchList: (keepMobileOpen?: boolean) => void;\r\n isInHeader: boolean;\r\n inputValue: string;\r\n onChangeTypingTimeout: (value: NodeJS.Timeout) => void;\r\n isShownSearchForm: boolean;\r\n listOpen: boolean;\r\n mobileOpen: boolean;\r\n onChangeListOpen: (value: boolean) => void;\r\n openMobileSearch: () => void;\r\n handleChangeSearchElementsStyles: (close: boolean) => void;\r\n suggestionsCollection: SearchSuggestion[];\r\n };\r\n};\r\n\r\nconst Search: FC = ({\r\n searchPageUrl,\r\n closeSearch,\r\n inputPlaceholder,\r\n stickySearchInput,\r\n searchFormRef,\r\n formRef,\r\n sugestionsRef,\r\n searchFormWithSuggestionsData,\r\n}) => {\r\n const {\r\n onChangeSugestionsCollection,\r\n isShownSearchForm,\r\n onChangeInputValue,\r\n isSearchOpen,\r\n closeSearchList,\r\n isInHeader,\r\n inputValue,\r\n typingTimeout,\r\n onChangeTypingTimeout,\r\n listOpen,\r\n mobileOpen,\r\n onChangeListOpen,\r\n openMobileSearch,\r\n handleChangeSearchElementsStyles,\r\n suggestionsCollection,\r\n isShownSuggestionList,\r\n } = searchFormWithSuggestionsData;\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport { Search };\r\n","import React, { FC, MouseEvent, useCallback, useEffect, useRef, useState } from 'react';\r\nimport { tidyStr } from '@utils/tidy-str';\r\nimport { EventEnum, publish, subscribe, unsubscribe } from '@utils/custom-events';\r\nimport keyCodes from 'app/scripts/core/views/key-codes';\r\nimport { setTranslatedForStickyToogle } from '@utils/setTranslatedForStickyToogle';\r\nimport { getHeightOffset } from '@utils/getHeightOffset';\r\nimport Accordion from '@framework/accordion';\r\nimport { Brand } from '@utils/brand';\r\nimport { screenSizes } from 'app/scripts/core/consts';\r\nimport { useSearchFormWithSuggestions } from '@hooks/useSearchFormWithSuggestions';\r\nimport { PubSubKeys, useGlobal } from '@utils/pubSub';\r\nimport styles from './Header.module.scss';\r\nimport { Navigation, NavigationNew } from './NavigationNew/NavigationNew';\r\nimport { HeaderDropdownContent } from './Bar/HeaderDropdownContent/HeaderDropdownContent';\r\nimport { Bar } from './Bar/Bar';\r\nimport { OrganizationLink } from './NavigationNew/HeaderBottom/HeaderBottom';\r\nimport { ExtendedTopMenuItem, TopMenuItem } from './Bar/TopNavigation/TopNavigation';\r\nimport { HeaderMainContext } from './header-context';\r\nimport { Search } from './Search/Search';\r\n\r\nexport type Header = {\r\n addedText: string;\r\n checkoutText: string;\r\n hasPortalLinks: boolean;\r\n headerDropdown: HeaderDropdownContent;\r\n headerExtensions: string;\r\n inputPlaceholder: string;\r\n isShowSearchText: boolean;\r\n layoutStartPage: string;\r\n minWidth: string;\r\n navigation: Navigation;\r\n portalLinks: OrganizationLink[];\r\n searchHeaderIconText: string;\r\n searchPageUrl: string;\r\n showBasket: boolean;\r\n showSearchText: string;\r\n topNavigationNewReact: { cssClass: string; menuItems: TopMenuItem[] };\r\n commerceMarketoFormId: string;\r\n orderItemsText: string;\r\n brandLogoSvg: string;\r\n brandLogo: Brand;\r\n};\r\n\r\nconst overlayClass = 'js-menu-overlay';\r\nconst isDesktopSelectorName = screenSizes.desktopLarge;\r\nconst O11HeaderOpenClass = 'O1-1-header--open';\r\nconst O11HeaderClass = 'O1-1-header';\r\n\r\nconst Header: FC
    = (props) => {\r\n const {\r\n portalLinks,\r\n searchPageUrl,\r\n headerExtensions,\r\n layoutStartPage,\r\n minWidth,\r\n isShowSearchText,\r\n searchHeaderIconText,\r\n showBasket,\r\n commerceMarketoFormId,\r\n orderItemsText,\r\n checkoutText,\r\n addedText,\r\n inputPlaceholder,\r\n navigation,\r\n headerDropdown,\r\n topNavigationNewReact,\r\n hasPortalLinks,\r\n brandLogoSvg,\r\n brandLogo,\r\n } = props;\r\n\r\n const getInitExtendedNavigationItems = () =>\r\n topNavigationNewReact.menuItems.map((item) => ({ ...item, isOpen: false }));\r\n\r\n const [isSearchOpen, setIsSearchOpen] = useState(false);\r\n const [hasSearchShownClass, setHasSearchShownClass] = useState(false);\r\n const [hasNoTransparaencyClass, setHasNoTransparaencyClass] = useState(false);\r\n const [hasNotInTopClass, setHasNotInTopClass] = useState(false);\r\n const [hasStickTopTopClass, setHasStickTopTopClass] = useState(false);\r\n const [prevScrollTop, setPrevScrollTop] = useState(0);\r\n const [lastWindowWidth, setLastWindowWidth] = useState(0);\r\n const [hasIsOpenClass, setHasIsOpenClass] = useState(false);\r\n const [rootMenuClass, setRootMenuClass] = useState('');\r\n const [currentActivePage, setCurrentActivePage] = useState('');\r\n const [extendedTopNavigationItems, setExtendedTopNavigationItems] = useState(\r\n getInitExtendedNavigationItems()\r\n );\r\n const [searchEl, setSearchEl] = useState(null);\r\n const [isOpenMenu, setIsOpenMenu] = useState(false);\r\n const [menuNavigate, setMenuNavigate] = useState(null);\r\n\r\n const PubSub = useGlobal();\r\n\r\n const headerRef = useRef(null);\r\n const bgEls = useRef([]);\r\n const carouselRef = useRef(null);\r\n const headerMenuInnerRef = useRef(null);\r\n const stickySearchInput = useRef(null);\r\n const searchFormRef = useRef(null);\r\n const formRef = useRef(null);\r\n const sugestionsRef = useRef(null);\r\n\r\n const searchFormWithSuggestionsData = useSearchFormWithSuggestions({\r\n headerRef,\r\n searchFormRef,\r\n sugestionsRef,\r\n searchElRef: null,\r\n });\r\n\r\n useEffect(() => {\r\n if (isSearchOpen) {\r\n searchFormWithSuggestionsData.handleChangeSearchElementsStyles(false);\r\n }\r\n }, [isSearchOpen]);\r\n\r\n useEffect(() => {\r\n if (isOpenMenu) {\r\n openMenu();\r\n } else {\r\n closeMenu();\r\n }\r\n }, [isOpenMenu]);\r\n\r\n useEffect(() => {\r\n setSearchEl(document.querySelector('.O3-2-new-home-page-hero__search'));\r\n PubSub.reply(PubSubKeys.headerGetHeight, getHeaderHeight);\r\n PubSub.reply(PubSubKeys.headerIsOpen, getHeaderIsOpen);\r\n PubSub.reply(PubSubKeys.menuNavigationStatus, () => ({\r\n isOpen: isOpenMenu,\r\n activePage: currentActivePage,\r\n }));\r\n PubSub.on(PubSubKeys.headerShow, showSticky);\r\n\r\n if (typeof Storage !== 'undefined') {\r\n const path = window.location.pathname;\r\n sessionStorage.setItem('breadcrumbs', path);\r\n }\r\n\r\n if (window.scrollY) {\r\n hideSticky();\r\n }\r\n }, []);\r\n\r\n const toggleStickySearch = (e: MouseEvent) => {\r\n if (isSearchOpen) {\r\n closeStickySearch();\r\n e.stopPropagation();\r\n } else {\r\n openStickySearch();\r\n }\r\n };\r\n\r\n const openStickySearch = () => {\r\n publish(EventEnum.changeIsCloseOpenedMenu, true);\r\n setIsSearchOpen(true);\r\n setHasSearchShownClass(true);\r\n };\r\n\r\n useEffect(() => {\r\n if (stickySearchInput?.current && isSearchOpen && hasSearchShownClass) {\r\n stickySearchInput.current.focus();\r\n }\r\n }, [stickySearchInput, isSearchOpen, hasSearchShownClass]);\r\n\r\n const closeStickySearch = () => {\r\n removeOpenClasses();\r\n publish(EventEnum.changeIsSearchClose, true);\r\n };\r\n\r\n const removeOpenClasses = () => {\r\n setIsSearchOpen(false);\r\n setHasSearchShownClass(false);\r\n };\r\n\r\n useEffect(() => {\r\n subscribe(EventEnum.changeIsSearchClose, removeOpenClasses);\r\n\r\n return () => {\r\n unsubscribe(EventEnum.changeIsSearchClose, removeOpenClasses);\r\n };\r\n }, [removeOpenClasses]);\r\n\r\n const keyUp = (e) => {\r\n if (e.key === keyCodes.Esc) {\r\n closeStickySearch();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n document.addEventListener('keyup', keyUp);\r\n\r\n return () => {\r\n document.removeEventListener('keyup', keyUp);\r\n };\r\n }, [keyUp]);\r\n\r\n const onResize = () => {\r\n if (isOpenMenu) {\r\n if (\r\n headerMenuInnerRef?.current &&\r\n headerRef?.current?.classList?.contains(O11HeaderClass) &&\r\n (isResizingFromDesktopToMobile() || isResizingFromMobileToDesktop())\r\n ) {\r\n headerMenuInnerRef.current.scrollTop = 0;\r\n setIsOpenMenu(false);\r\n }\r\n }\r\n setLastWindowWidth(window.innerWidth);\r\n };\r\n\r\n useEffect(() => {\r\n window.addEventListener('resize', onResize);\r\n\r\n return () => {\r\n window.removeEventListener('resize', onResize);\r\n };\r\n }, [onResize]);\r\n\r\n const updateTopNavigationItems = (pageId: string) => {\r\n setExtendedTopNavigationItems((prevItems) =>\r\n prevItems.map((item) => {\r\n if (item.pageId === pageId) {\r\n return { ...item, isOpen: !item.isOpen };\r\n }\r\n\r\n return item;\r\n })\r\n );\r\n };\r\n\r\n const onTopNavClick = (e: MouseEvent, pageId: string, csscClass: string) => {\r\n if (!csscClass.includes('has-sub')) {\r\n return;\r\n }\r\n\r\n e.preventDefault();\r\n\r\n if (extendedTopNavigationItems.find((item) => item.pageId === pageId).isOpen) {\r\n setIsOpenMenu(false);\r\n } else {\r\n clearTopNav();\r\n updateTopNavigationItems(pageId);\r\n menuNavigate(pageId);\r\n setIsOpenMenu(true);\r\n }\r\n\r\n setCurrentActivePage(pageId);\r\n };\r\n\r\n const onClickMenu = (e) => {\r\n if (isOpenMenu) {\r\n setIsOpenMenu(false);\r\n } else {\r\n setIsOpenMenu(true);\r\n menuNavigate(null);\r\n }\r\n e.preventDefault();\r\n };\r\n\r\n useEffect(() => {\r\n let accordionProps = {};\r\n\r\n if (headerRef?.current?.classList?.contains(O11HeaderClass)) {\r\n setRootMenuClass(`${styles[O11HeaderOpenClass]}`);\r\n accordionProps = {\r\n parent: headerRef.current,\r\n mdSelector: '.js-accordion-lg',\r\n isDesktopSelectorName,\r\n };\r\n } else {\r\n setRootMenuClass('O1-header--open');\r\n accordionProps = {\r\n parent: headerRef.current,\r\n mdSelector: '.js-accordion-md',\r\n };\r\n }\r\n\r\n // eslint-disable-next-line no-new\r\n new Accordion(accordionProps);\r\n }, [headerRef, onClickMenu]);\r\n\r\n useEffect(() => {\r\n if (headerRef?.current?.classList?.contains(O11HeaderClass)) {\r\n document.querySelector(`.${overlayClass}`).addEventListener('click', onClickMenu);\r\n }\r\n\r\n return () => {\r\n if (headerRef?.current?.classList?.contains(O11HeaderClass)) {\r\n document.querySelector(`.${overlayClass}`).removeEventListener('click', onClickMenu);\r\n }\r\n };\r\n }, [headerRef, onClickMenu]);\r\n\r\n const closeMenu = () => {\r\n setIsOpenMenu(false);\r\n clearTopNav();\r\n\r\n if (document.documentElement.classList?.contains(rootMenuClass)) {\r\n document.documentElement.classList.remove(rootMenuClass);\r\n }\r\n\r\n setHasIsOpenClass(false);\r\n };\r\n\r\n useEffect(() => {\r\n subscribe(EventEnum.changeIsCloseOpenedMenu, closeMenu);\r\n\r\n return () => {\r\n unsubscribe(EventEnum.changeIsCloseOpenedMenu, closeMenu);\r\n };\r\n }, [closeMenu]);\r\n\r\n const setSlideWidth = () => {\r\n const { slides, slidesPerView } = carouselRef.current.swiper;\r\n\r\n if (slides?.length === 0) {\r\n return;\r\n }\r\n\r\n slides.forEach((slide) => {\r\n slide.style.width = '';\r\n });\r\n\r\n const swiperElement = carouselRef.current.swiper.el;\r\n const parentWidth = swiperElement.getBoundingClientRect().width;\r\n const slideWidth = Math.ceil(parentWidth / slidesPerView);\r\n\r\n slides.forEach((slide) => {\r\n const marginRight = parseInt(window.getComputedStyle(slide).getPropertyValue('margin-right'), 10);\r\n const newWidth = slideWidth - (marginRight / slidesPerView) * (slidesPerView - 1);\r\n slide.style.width = `${newWidth}px`;\r\n });\r\n };\r\n\r\n const openMenu = () => {\r\n publish(EventEnum.changeIsSearchClose, true);\r\n publish(EventEnum.changeIsOpenExtendedSearchForm, false);\r\n const menuBtn = headerRef?.current?.querySelector('.O1-header__menu-btn');\r\n\r\n if (menuBtn != null) {\r\n menuBtn.classList.add(styles['is-open']);\r\n }\r\n\r\n document.documentElement.classList.add(rootMenuClass);\r\n setHasIsOpenClass(true);\r\n\r\n setTimeout(() => {\r\n setHasNoTransparaencyClass(true);\r\n }, 20);\r\n\r\n if (carouselRef.current.swiper) {\r\n setSlideWidth();\r\n carouselRef.current.swiper.slideTo(carouselRef.current.swiper.activeIndex);\r\n }\r\n };\r\n\r\n const onStickyScroll = () => {\r\n const scrollTop = window.scrollY;\r\n let elHeight = 5;\r\n const searchPageResultsEl = null;\r\n\r\n if (searchEl?.querySelector('.is-open') && headerRef?.current) {\r\n elHeight = searchEl.offsetHeight + headerRef.current.offsetHeight;\r\n } else if (searchPageResultsEl && headerRef?.current) {\r\n elHeight = searchPageResultsEl.offsetHeight + headerRef.current.offsetHeight;\r\n }\r\n\r\n if (document.documentElement.classList.contains(rootMenuClass)) {\r\n return;\r\n }\r\n\r\n if (scrollTop <= elHeight) {\r\n showSticky(true);\r\n } else if (!hasNotInTopClass) {\r\n setHasNotInTopClass(true);\r\n }\r\n\r\n if (Math.abs(prevScrollTop - scrollTop) < 5) {\r\n setPrevScrollTop(scrollTop);\r\n return;\r\n }\r\n\r\n if (scrollTop < prevScrollTop) {\r\n showSticky();\r\n } else if (scrollTop > prevScrollTop) {\r\n if (scrollTop > elHeight) {\r\n hideSticky();\r\n }\r\n }\r\n\r\n setPrevScrollTop(scrollTop);\r\n };\r\n\r\n useEffect(() => {\r\n window.addEventListener('scroll', onStickyScroll, { passive: true });\r\n\r\n return () => {\r\n window.removeEventListener('scroll', onStickyScroll);\r\n };\r\n }, [onStickyScroll]);\r\n\r\n const showSticky = (topScroll?: boolean) => {\r\n if (topScroll) {\r\n unsetSticky();\r\n return;\r\n }\r\n\r\n if (headerRef?.current?.classList.contains('is-shown')) {\r\n return;\r\n }\r\n\r\n setTranslatedForStickyToogle(false);\r\n };\r\n\r\n const hideSticky = () => {\r\n if (\r\n headerRef?.current?.classList.contains('is-hidden') ||\r\n headerRef?.current?.classList.contains('has-search-open')\r\n ) {\r\n return;\r\n }\r\n\r\n setTranslatedForStickyToogle(true);\r\n };\r\n\r\n const unsetSticky = () => {\r\n const isHomePage = headerRef?.current?.classList.contains('is-home-page');\r\n\r\n if (isHomePage) {\r\n const heightOffset = getHeightOffset('country-redirect-panel');\r\n\r\n setHasNotInTopClass(false);\r\n setHasStickTopTopClass(true);\r\n if (headerRef?.current) {\r\n headerRef.current.style.transform = `translateY(${heightOffset}px)`;\r\n }\r\n if (hasSearchShownClass && headerRef?.current) {\r\n const toolsItemSerachEl: HTMLElement = headerRef.current.querySelector(\r\n '.O1-1-header__tools__item__search.sticky'\r\n );\r\n toolsItemSerachEl.click();\r\n }\r\n if (headerRef?.current) {\r\n headerRef.current.style.transition = '';\r\n }\r\n bgEls.current.forEach((bgEl) => {\r\n bgEl.style.transition = '';\r\n bgEl.style.transform = `translateY(${heightOffset}px)`;\r\n });\r\n }\r\n };\r\n\r\n const getHeaderHeight = () => headerRef?.current?.offsetHeight;\r\n\r\n const getHeaderIsOpen = () => isSearchOpen;\r\n\r\n const isResizingFromMobileToDesktop = () => {\r\n const currentWindowWidth = window.innerWidth;\r\n if (lastWindowWidth < isDesktopSelectorName && currentWindowWidth >= isDesktopSelectorName) {\r\n return true;\r\n }\r\n\r\n return false;\r\n };\r\n\r\n const isResizingFromDesktopToMobile = () => {\r\n const currentWindowWidth = window.innerWidth;\r\n if (lastWindowWidth >= isDesktopSelectorName && currentWindowWidth < isDesktopSelectorName) {\r\n return true;\r\n }\r\n\r\n return false;\r\n };\r\n\r\n const clearTopNav = () => {\r\n const menuBtn = headerRef?.current?.querySelector('.O1-header__menu-btn');\r\n if (menuBtn != null) {\r\n menuBtn.classList.remove('is-open');\r\n }\r\n\r\n setExtendedTopNavigationItems((prevItems) =>\r\n prevItems.map((item) => {\r\n if (item.csscClass.includes('has-sub')) {\r\n return { ...item, isOpen: false };\r\n }\r\n return item;\r\n })\r\n );\r\n };\r\n\r\n const getHeaderBgCssClass = useCallback(\r\n (extensions: string) => {\r\n let classes = `${styles['O1-1-header__bg']} O1-1-header__bg ${styles[headerExtensions]} O1-header-js__bg ${styles[extensions]} ${headerExtensions}`;\r\n\r\n if (hasSearchShownClass) {\r\n classes = `${classes} ${styles['search-shown']} search-shown`;\r\n }\r\n\r\n if (hasNoTransparaencyClass) {\r\n classes = `${classes} ${styles['no-transparency']}`;\r\n }\r\n\r\n if (hasNotInTopClass) {\r\n classes = `${classes} ${styles['not-in-top']} not-in-top`;\r\n }\r\n\r\n if (hasStickTopTopClass) {\r\n classes = `${classes} stick-top-top`;\r\n }\r\n\r\n return tidyStr`${classes}`;\r\n },\r\n [headerExtensions, hasNotInTopClass, hasSearchShownClass, hasStickTopTopClass, hasNoTransparaencyClass]\r\n );\r\n\r\n return (\r\n setIsOpenMenu(value),\r\n setMenuNavigate: (func: () => void) => setMenuNavigate(func),\r\n menuNavigate,\r\n }}\r\n >\r\n (bgEls.current[0] = el)} />\r\n (bgEls.current[1] = el)} />\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport { Header };\r\n","import { Brands } from '@utils/brand';\r\n\r\nexport { Header } from './Header';\r\n\r\nexport const headerTestData = {\r\n headerExtensions: 'extensiond',\r\n startPageHref: '#',\r\n hasMinWidth: '',\r\n isShowSearchText: true,\r\n searchHeaderIconText: '',\r\n showBasket: true,\r\n commerceMarketoFormId: null,\r\n orderItemsText: 'Test text',\r\n checkoutText: 'Test checkout text',\r\n addedText: 'Test added text',\r\n hasPortalLinks: true,\r\n portalLinks: [\r\n {\r\n url: 'https://localhost:48000/group/',\r\n target: 'blank',\r\n rel: 'rel',\r\n text: 'Text 1',\r\n brandClass: 'open-rockwool-selector',\r\n title: 'ROCKWOOL',\r\n },\r\n {\r\n url: 'https://localhost:48000/group/',\r\n target: 'blank',\r\n rel: 'rel',\r\n text: 'Text 2',\r\n brandClass: 'open-rockwool-selector',\r\n title: 'ROCKWOOL',\r\n },\r\n ],\r\n searchPageUrl: '#',\r\n inputPlaceholder: 'Test input placeholder',\r\n headerDropdown: {\r\n showDropdown: true,\r\n items: [\r\n {\r\n pageLink: '#',\r\n classes: 'js-multi-selector__open open-rockwool-selector\"',\r\n extensionClasses: ['js-multi-selector__open', 'open-rockwool-selector'],\r\n displayString: 'ROCKWOOL',\r\n },\r\n {\r\n pageLink: '#',\r\n classes: 'js-multi-selector__open open-rockwool-selector\"',\r\n extensionClasses: ['js-multi-selector__open', 'open-rockwool-selector'],\r\n displayString: 'ROCKWOOL',\r\n },\r\n ],\r\n displayString: '',\r\n isLanguageSelector: true,\r\n chooseOtherLanguageText: 'Group',\r\n },\r\n cssClass: 'class',\r\n extendedTopNavigationItems: [\r\n {\r\n csscClass: 'has-sub',\r\n isOpen: false,\r\n pageId: '597546',\r\n title: 'Products & Applications',\r\n url: '597546',\r\n },\r\n {\r\n pageId: '702888',\r\n url: '702888',\r\n csscClass: 'has-sub',\r\n title: 'Advice and Inspiration',\r\n virtualPath: '',\r\n isOpen: false,\r\n },\r\n {\r\n pageId: '599783',\r\n url: '599783',\r\n csscClass: 'has-sub',\r\n title: 'About Us',\r\n virtualPath: '',\r\n isOpen: false,\r\n },\r\n ],\r\n brandLogoSvg:\r\n ' ',\r\n showLanguageSelector: true,\r\n currentLanguage: 'pl',\r\n brand: 'rockwool',\r\n organizationLinks: [\r\n {\r\n url: '#',\r\n title: 'ROCKWOOL',\r\n brandClass: 'open-rockwool-selector',\r\n text: 'ROCKWOOL',\r\n rel: '',\r\n target: '',\r\n },\r\n {\r\n url: '#',\r\n title: 'Rockfon',\r\n brandClass: 'open-rockfon-selector',\r\n text: 'ROCKWOOL',\r\n rel: '',\r\n target: '',\r\n },\r\n ],\r\n ourOrganizations: 'Test text',\r\n filteredItems: [\r\n { hasImage: true, image: {}, title: 'test title 1', button: {} },\r\n { hasImage: true, image: {}, title: 'test title 2', button: {} },\r\n { hasImage: true, image: {}, title: 'test title 3', button: {} },\r\n ],\r\n carouselRef: null,\r\n mainNavigationReactModel: {},\r\n headerMenuInnerRef: null,\r\n layoutStartPage: '',\r\n minWidth: '',\r\n navigation: {\r\n showLanguageSelector: true,\r\n currentLanguage: 'pl',\r\n organizationLinks: [\r\n {\r\n url: '#',\r\n title: 'ROCKWOOL',\r\n brandClass: 'open-rockwool-selector',\r\n text: 'ROCKWOOL',\r\n rel: '',\r\n target: '',\r\n },\r\n {\r\n url: '#',\r\n title: 'Rockfon',\r\n brandClass: 'open-rockfon-selector',\r\n text: 'ROCKWOOL',\r\n rel: '',\r\n target: '',\r\n },\r\n ],\r\n ourOrganizations: 'Test text',\r\n carouselItems: [\r\n { hasImage: true, image: {}, title: 'test title 1', button: {} },\r\n { hasImage: true, image: {}, title: 'test title 2', button: {} },\r\n { hasImage: true, image: {}, title: 'test title 3', button: {} },\r\n ],\r\n mainNavigationReactModel: {\r\n currentPageId: '559275',\r\n homeLabel: 'home label',\r\n menuItems: [\r\n {\r\n children: [],\r\n fullUrl: '',\r\n isActive: true,\r\n isFolder: false,\r\n isOpenInNewTab: true,\r\n notRender: false,\r\n pageId: '',\r\n subMenuTitle: 'Sub menu title',\r\n title: 'test title',\r\n url: '',\r\n virtualPath: '',\r\n },\r\n {\r\n children: [],\r\n fullUrl: '',\r\n isActive: true,\r\n isFolder: false,\r\n isOpenInNewTab: true,\r\n notRender: false,\r\n pageId: '',\r\n subMenuTitle: 'Sub menu title 2',\r\n title: 'test title 2',\r\n url: '',\r\n virtualPath: '',\r\n },\r\n ],\r\n legacyHeader: false,\r\n renderingForCrawler: true,\r\n },\r\n },\r\n topNavigationNewReact: { cssClass: 'cssClass', menuItems: [] },\r\n brandLogo: Brands[0],\r\n};\r\n","interface ScreenWidths {\r\n mobile: number;\r\n tablet: number;\r\n desktop: number;\r\n desktopLarge: number;\r\n}\r\n\r\nexport const screenSizes: ScreenWidths = {\r\n mobile: 375,\r\n tablet: 768,\r\n desktop: 992,\r\n desktopLarge: 1200,\r\n};\r\n\r\n","import React from 'react';\r\nimport type { FunctionComponent } from 'react';\r\n\r\nexport const ArrowDown: FunctionComponent<{ isWhite?: boolean }> = (props) => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\nArrowDown.defaultProps = { isWhite: false };\r\n\r\nexport const FacebookIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const LinkedInIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const TwitterIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const GoogleIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const TelegramIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const VkIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const PinterestIcon = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const ArrowRightIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const ArrowLeftIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const SmallArrowDownIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const SmallArrowUpIcon = () => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const MapItemTemplate = (brandColor: string) => {\r\n const svgTemplate =\r\n '';\r\n return svgTemplate.replace('{{ color }}', brandColor);\r\n};\r\n\r\nexport const IconYoutubeSquareSurface = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const ZendeskIcon = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const ZendeskRockfonIcon = () => (\r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const IconCloseCross = () => (\r\n \r\n \r\n \r\n \r\n);\r\n","/* eslint-disable max-classes-per-file */\r\n/**\r\n * Accordion\r\n *\r\n * @author Daniel Kvistgaard \r\n */\r\n\r\nimport _ from 'underscore';\r\nimport EventEmitter from 'events';\r\nimport { PubSubKeys, PubSub } from '@utils/pubSub';\r\nimport * as customFunctions from './custom-functions';\r\n\r\n// Setting up default options parameters\r\nconst defaults = {\r\n selector: '.js-accordion',\r\n forceOpen: 'js-accordion-force-open',\r\n target: '.js-accordion__target',\r\n closeSelector: false,\r\n openClass: 'has-accordion-open',\r\n\r\n targetIsNext: false,\r\n closeOthers: true,\r\n scrollIntoView: false,\r\n\r\n slideDuration: 300,\r\n slideEasing: 'easeOutQuad',\r\n rowDisplay: 'block',\r\n};\r\n\r\n/**\r\n * Instance\r\n * A single instance of an accordion container.\r\n */\r\nclass Instance extends EventEmitter {\r\n constructor(options) {\r\n super();\r\n\r\n this.eventsNamespace = [];\r\n this.options = options;\r\n this.group = this.options.group;\r\n this.el = this.options.el;\r\n this.isDesktopSelectorName = this.options.isDesktopSelectorName || App.mq.desktop;\r\n this.mdTargetSelector = this.options.mdTargetSelector || `${this.options.mdSelector}--target`;\r\n this.xsTargetSelector = this.options.xsTargetSelector || `${this.options.xsSelector}--target`;\r\n\r\n // Used to check if tablet/mobile events are bound\r\n this.mdEventsBound = false;\r\n this.xsEventsBound = false;\r\n\r\n // Checking if the media query matches the desktop size breakpoint\r\n this.isDesktop = Modernizr.mq(`(min-width: ${this.isDesktopSelectorName}px)`);\r\n this.isMobile = Modernizr.mq(`(max-width: ${App.mq.tablet - 1}px)`);\r\n\r\n // Trigger for closing all accordions in this instance\r\n this.on('close', () => {\r\n // Selecting all normal accordion selectors to close them\r\n const allElems = this.el.querySelectorAll(this.options.selector);\r\n const otherOpen = this.el.querySelectorAll(`${this.options.selector}.${this.options.openClass}`);\r\n\r\n // Looping through the accordions, getting their target element\r\n // and triggering the close function\r\n [].forEach.call(allElems, (elem) => {\r\n const target = this.getElTarget(elem);\r\n this.close(elem, target, !!otherOpen.length);\r\n });\r\n\r\n // If we aren't on a desktop device (mobile or tablet), then also the accordions\r\n // for tablet and mobile devices needs to be closed.\r\n if (!this.isDesktop && this.options.mdSelector) {\r\n const allMdElems = this.el.querySelectorAll(this.options.mdSelector);\r\n\r\n // Looping through the accordions, getting their target element\r\n // and triggering the close function\r\n [].forEach.call(allMdElems, (elem) => {\r\n const target = this.getElTarget(elem, this.mdTargetSelector);\r\n this.close(elem, target, !!otherOpen.length);\r\n });\r\n }\r\n });\r\n\r\n // Binding user action events\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.selector,\r\n this.onClick.bind(this, this.options.target)\r\n );\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.mdSelector,\r\n this.onClick.bind(this, this.mdTargetSelector)\r\n );\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.xsSelector,\r\n this.onClick.bind(this, this.xsTargetSelector)\r\n );\r\n\r\n if (this.options.closeSelector && typeof this.options.closeSelector === 'string') {\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.closeSelector,\r\n this.onClickClose.bind(this, this.options.target)\r\n );\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.mdSelector,\r\n this.onClickClose.bind(this, this.mdTargetSelector)\r\n );\r\n customFunctions.delegateSelectorInElement(\r\n [this.el],\r\n 'click',\r\n this.options.xsSelector,\r\n this.onClickClose.bind(this, this.xsTargetSelector)\r\n );\r\n }\r\n }\r\n\r\n // Checking if the clicked target was a link\r\n // that should follow user somewhere instead\r\n // of opening accordion.\r\n isTargetLink(target) {\r\n if (target?.tagName?.toString() === 'A') {\r\n // a link was clicked.\r\n if (!customFunctions.is(target, this.options.targetSelector)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * onClick\r\n *\r\n * @param {String} targetSelector\r\n * @param {Object} e\r\n */\r\n onClick(targetSelector, e) {\r\n if (this.isTargetLink(e.target)) {\r\n if (!e.target.classList.contains(defaults.forceOpen)) {\r\n return;\r\n }\r\n }\r\n\r\n if (e && e.cancelable) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }\r\n\r\n const { userAgent } = window.navigator;\r\n this.isIE = userAgent.indexOf('MSIE ') >= 0 || userAgent.indexOf('Trident/') >= 0;\r\n\r\n const el = this.setElement(e);\r\n\r\n // Fix to stop some of the rows jumping in IE\r\n const tableRow = el.parentNode.parentNode;\r\n const tableRowChildren = tableRow.querySelectorAll('th');\r\n\r\n if (this.isIE && tableRow) {\r\n _.each(tableRowChildren, (element) => {\r\n const initialWidth = window.getComputedStyle(element, null).getPropertyValue('width');\r\n element.style.width = initialWidth;\r\n });\r\n }\r\n\r\n // Stop if we don't have a target to open\r\n if (!this.options.target && !targetSelector) {\r\n return;\r\n }\r\n\r\n if (!this._canOpenBasedOnVersion(targetSelector)) {\r\n return;\r\n }\r\n\r\n // Getting the target\r\n const target = this.getElTarget(el, targetSelector);\r\n this.clickOpen(el, target);\r\n }\r\n\r\n setElement(e) {\r\n let el = e.target;\r\n let className = this.options.selector;\r\n\r\n if (className[0]?.toString() === '.') {\r\n className = className.substring(1);\r\n }\r\n if (![].some.call(e.target.classList, (cl) => cl.includes(className))) {\r\n const [firstEl] = e.target.parents(`[class*='${className}']`);\r\n el = firstEl;\r\n }\r\n return el;\r\n }\r\n\r\n _canOpenBasedOnVersion(targetSelector) {\r\n this.isDesktop = Modernizr.mq(`(min-width: ${this.isDesktopSelectorName}px)`);\r\n this.isMobile = Modernizr.mq(`(max-width: ${App.mq.tablet - 1}px)`);\r\n\r\n if (\r\n this.isDesktop &&\r\n (targetSelector === this.options.mdTargetSelector || targetSelector === this.options.xsTargetSelector)\r\n ) {\r\n return false;\r\n }\r\n if (!this.isMobile && targetSelector === this.options.xsTargetSelector) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * onClickClose\r\n */\r\n onClickClose(targetSelector, e) {\r\n if (this.isTargetLink(e.target)) {\r\n // if we got there - the link was clicked and it is not\r\n // the trigger to open/close the accordion, so we\r\n // should fallback to the default behaviour, not\r\n // proceed with our code.\r\n return;\r\n }\r\n\r\n if (e && e.cancelable) {\r\n e.preventDefault();\r\n }\r\n\r\n // Stop if we don't have a target to close\r\n if (!this.options.target && !targetSelector) {\r\n return;\r\n }\r\n\r\n // Getting the target\r\n const el = e.currentTarget;\r\n const target = Instance.closest(el, targetSelector);\r\n const btnEl = this.getElTarget(target, this.options.selector);\r\n\r\n this.close(btnEl, target, false);\r\n }\r\n\r\n /**\r\n * Opening an element and checking if others are open.\r\n *\r\n * @param {HTMLElement} el\r\n * @param {HTMLElement} target\r\n */\r\n clickOpen(el, target) {\r\n const opening = !el.classList.contains(this.options.openClass);\r\n\r\n // Figuring out if other accordion items are open\r\n const otherOpen = this.el.querySelectorAll(`${this.options.selector}.${this.options.openClass}`);\r\n\r\n // Close other open accordions (unless closeOthers are set to false)\r\n if (opening && this.options.closeOthers && otherOpen.length > 0) {\r\n this.emit('close');\r\n }\r\n\r\n // Toggling the accordion\r\n if (opening) {\r\n this.open(el, target, !!otherOpen.length);\r\n } else {\r\n this.close(el, target, false);\r\n }\r\n }\r\n\r\n /**\r\n * getElTarget\r\n * Getting the target element of a specified element in its context.\r\n *\r\n * @param {HTMLElement} el - the DOM element of which we want to find its target\r\n * @param {String} targetSelector\r\n */\r\n getElTarget(el, targetSelector) {\r\n // Getting the target\r\n const containsTarget = (targetSelector || this.options.target).replace('.', '');\r\n const elem = this.options.selectorParent ? Instance.closest(el, this.options.selectorParent) : el;\r\n let target = null;\r\n\r\n if (this.options.targetIsNext) {\r\n const nextEl = elem.nextElementSibling;\r\n const nextIsElem = nextEl && nextEl instanceof HTMLElement;\r\n target = nextIsElem && nextEl.classList.contains(containsTarget) ? nextEl : false;\r\n\r\n if (!target && nextIsElem && nextEl.querySelector(targetSelector || this.options.target)) {\r\n target = nextEl.querySelector(targetSelector || this.options.target);\r\n }\r\n\r\n if (target) {\r\n return target;\r\n }\r\n }\r\n\r\n target = elem.parentNode.querySelector(targetSelector || this.options.target);\r\n\r\n // If we can't find the target within the parentNode, then we'll expand the search a bit\r\n if (!target) {\r\n target = elem.parentNode.parentNode.querySelector(targetSelector || this.options.target);\r\n }\r\n\r\n return target;\r\n }\r\n\r\n /**\r\n * Opening an accordion element.\r\n *\r\n * @param {HTMLElement} el\r\n * @param {HTMLElement} target\r\n */\r\n open(el, target, otherOpen) {\r\n const targetEl = !target || typeof target === 'string' ? this.getElTarget(el, target) : target;\r\n const item = this.options.item ? Instance.closest(el, this.options.item) : null;\r\n const selectorParent =\r\n targetEl && this.options.selectorParent ? Instance.closest(targetEl, this.options.selectorParent) : null;\r\n\r\n el.classList.add(this.options.openClass);\r\n\r\n if (this.options.parentOpenClass && !otherOpen) {\r\n this.el.classList.add(this.options.openClass);\r\n }\r\n\r\n if (item) {\r\n item.classList.add(this.options.openClass);\r\n }\r\n\r\n if (targetEl) {\r\n targetEl.classList.add(this.options.openClass);\r\n }\r\n\r\n if (selectorParent) {\r\n selectorParent.classList.add(`${this.options.openClass}--parent`);\r\n }\r\n\r\n if (this.options.indicatorSelector) {\r\n [].forEach.call(el.querySelectorAll(this.options.indicatorSelector), (e) => {\r\n e.classList.add(this.options.openClass);\r\n });\r\n }\r\n\r\n // Calling beforeOpen if it's set.\r\n // beforeOpen makes it possible to do calculations or similar before the accordion item opens\r\n if (this.options.beforeOpen && _.isFunction(this.options.beforeOpen)) {\r\n this.options.beforeOpen(otherOpen, targetEl, item, () => {\r\n if (targetEl) {\r\n this.slide(targetEl, 'down');\r\n }\r\n });\r\n } else if (targetEl) {\r\n this.slide(targetEl, 'down');\r\n }\r\n }\r\n\r\n /**\r\n * Closing an accordion element.\r\n *\r\n * @param {HTMLElement} el\r\n * @param {HTMLElement} target\r\n */\r\n close(el, target, otherOpen) {\r\n const targetEl = !target || typeof target === 'string' ? this.getElTarget(el, target) : target;\r\n const item = this.options.item ? Instance.closest(el, this.options.item) : null;\r\n\r\n // Prevent closing elements that aren't open\r\n if (!el.classList.contains(this.options.openClass)) {\r\n return;\r\n }\r\n\r\n el.classList.remove(this.options.openClass);\r\n\r\n if (this.options.parentOpenClass && !otherOpen) {\r\n this.el.classList.remove(this.options.openClass);\r\n }\r\n\r\n if (item) {\r\n item.classList.remove(this.options.openClass);\r\n }\r\n\r\n if (targetEl) {\r\n targetEl.classList.remove(this.options.openClass);\r\n }\r\n\r\n if (this.options.indicatorSelector) {\r\n [].forEach.call(el.querySelectorAll(this.options.indicatorSelector), (e) => {\r\n e.classList.remove(this.options.openClass);\r\n });\r\n }\r\n\r\n // Calling beforeClose if it's set.\r\n // beforeClose makes it possible to do calculations or similar before the accordion item closes\r\n if (this.options.beforeClose && _.isFunction(this.options.beforeClose)) {\r\n this.options.beforeClose(otherOpen, targetEl, item, () => {\r\n if (targetEl) {\r\n this.slide(targetEl, 'up');\r\n }\r\n });\r\n } else if (targetEl) {\r\n this.slide(targetEl, 'up');\r\n }\r\n }\r\n\r\n /**\r\n * Clearing all tablet/mobile setup (classes and stylings).\r\n * This is used when we go from tablet/mobile to desktop.\r\n */\r\n clearMdSetup() {\r\n const mdSelectors = this.el.querySelectorAll(this.options.mdSelector);\r\n const mdTargets = this.el.querySelectorAll(this.mdTargetSelector);\r\n\r\n [].forEach.call(mdSelectors, (mdSelector) => {\r\n mdSelector.classList.remove(this.options.openClass);\r\n });\r\n\r\n [].forEach.call(mdTargets, (mdTarget) => {\r\n mdTarget.style.display = '';\r\n mdTarget.classList.add(this.options.openClass);\r\n });\r\n }\r\n\r\n /**\r\n * Clearing all mobile setup (classes and stylings).\r\n * This is used when we go from mobile to tablet/desktop.\r\n */\r\n clearXsSetup() {\r\n const xsSelectors = this.el.querySelectorAll(this.options.xsSelector);\r\n const xsTargets = this.el.querySelectorAll(this.xsTargetSelector);\r\n\r\n [].forEach.call(xsSelectors, (xsSelector) => {\r\n xsSelector.classList.remove(this.options.openClass);\r\n });\r\n\r\n [].forEach.call(xsTargets, (xsTarget) => {\r\n xsTarget.style.display = '';\r\n xsTarget.classList.add(this.options.openClass);\r\n });\r\n }\r\n\r\n /**\r\n * Slide up or down functionality\r\n * Velocity doesn't handle stress sliding very well, so we had to remake\r\n * the functionality.\r\n *\r\n * @param {HTMLElement} target\r\n * @param {String} direction - values: 'up' or 'down'\r\n */\r\n async slide(target, direction) {\r\n const self = this;\r\n const selectorParent = this.options.selectorParent ? Instance.closest(target, this.options.selectorParent) : null;\r\n const targetStyles = window.getComputedStyle(target);\r\n let height = 0;\r\n let paddingTop = 0;\r\n let paddingBottom = 0;\r\n\r\n // Stop any previous velocity animations\r\n const Velocity = (await import('velocity-animate')).default;\r\n Velocity.animate(target, 'stop');\r\n\r\n if (direction === 'down') {\r\n const prevHeight = target.offsetHeight;\r\n const prevPaddingTop = prevHeight === 0 ? 0 : parseInt(targetStyles.getPropertyValue('padding-top') || 0, 10);\r\n const prevPaddingBottom =\r\n prevHeight === 0 ? 0 : parseInt(targetStyles.getPropertyValue('padding-bottom') || 0, 10);\r\n\r\n target.style.display = this.options.rowDisplay;\r\n target.style.height = '';\r\n target.style.paddingTop = '';\r\n target.style.paddingBottom = '';\r\n\r\n height = target.offsetHeight;\r\n paddingTop = parseInt(targetStyles.getPropertyValue('padding-top'), 10);\r\n paddingBottom = parseInt(targetStyles.getPropertyValue('padding-bottom'), 10);\r\n\r\n target.style.height = `${prevHeight}px`;\r\n target.style.paddingTop = `${prevPaddingTop}px`;\r\n target.style.paddingBottom = `${prevPaddingBottom}px`;\r\n }\r\n\r\n target.style.overflow = 'hidden';\r\n\r\n Velocity.animate(\r\n target,\r\n {\r\n height,\r\n paddingTop,\r\n paddingBottom,\r\n },\r\n {\r\n duration: this.options.slideDuration,\r\n easing: this.options.slideEasing,\r\n\r\n complete() {\r\n if (direction === 'up') {\r\n target.style.display = '';\r\n\r\n if (selectorParent) {\r\n selectorParent.classList.remove(`${self.options.openClass}--parent`);\r\n }\r\n }\r\n\r\n target.style.overflow = '';\r\n target.style.height = '';\r\n target.style.paddingTop = '';\r\n target.style.paddingBottom = '';\r\n\r\n if (\r\n direction === 'down' &&\r\n (self.options.scrollIntoView === true ||\r\n (App.mq[self.options.scrollIntoView] &&\r\n Modernizr.mq(`(max-width: ${App.mq[self.options.scrollIntoView] - 1}px)`)))\r\n ) {\r\n self.scrollIntoView(target);\r\n }\r\n },\r\n }\r\n );\r\n }\r\n\r\n /**\r\n * Scrolling the target into view.\r\n *\r\n * @param {HTMLElement} target\r\n */\r\n async scrollIntoView(target) {\r\n const targetEl = this.options.item ? Instance.closest(target, this.options.item) : target;\r\n const headerHeight = PubSub.request(PubSubKeys.headerGetHeight);\r\n const scrollTop = window.scrollY || window.pageYOffset;\r\n const top = targetEl.getBoundingClientRect().top + scrollTop;\r\n const bottom = top + targetEl.offsetHeight;\r\n const windowTop = scrollTop + headerHeight;\r\n const windowBottom = scrollTop + window.innerHeight;\r\n if (top < windowTop || bottom > windowBottom) {\r\n const Velocity = (await import('velocity-animate')).default;\r\n Velocity.animate(targetEl, 'scroll', {\r\n offset: (headerHeight + 50) * -1,\r\n duration: this.options.slideDuration,\r\n easing: 'easeOutQuad',\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Finding the closest element in the parent tree.\r\n *\r\n * @param {HTMLElement} el\r\n * @param {String} target\r\n */\r\n static closest(el, target) {\r\n let ancestor = el;\r\n\r\n if (!document.documentElement.contains(el)) {\r\n return null;\r\n }\r\n\r\n do {\r\n if (ancestor.matches ? ancestor.matches(target) : ancestor.msMatchesSelector(target)) {\r\n return ancestor;\r\n }\r\n\r\n ancestor = ancestor.parentElement;\r\n } while (ancestor !== null);\r\n\r\n return null;\r\n }\r\n}\r\n\r\n/**\r\n * Setting up all accordion instances.\r\n * If the parent options is set as a string selector, then we'll loop\r\n * through all elements matching the selector and initialize a new instance\r\n * for that element. All items within that parent matching the selector\r\n * parameter will then get the accordion functionality attached.\r\n */\r\nclass Accordion {\r\n constructor(options) {\r\n this.options = _.extend({}, defaults, options);\r\n this.instances = [];\r\n\r\n if (this.options.parent instanceof NodeList) {\r\n [].forEach.call(this.options.parent, (parent) => {\r\n this.createInstance(parent);\r\n });\r\n } else if (this.options.parent && (_.isString(this.options.parent) || _.isArray(this.options.parent))) {\r\n const parents = _.isString(this.options.parent)\r\n ? document.querySelectorAll(this.options.parent)\r\n : this.options.parent;\r\n\r\n [].forEach.call(parents, (parent) => {\r\n this.createInstance(parent);\r\n });\r\n } else if (this.options.parent) {\r\n this.createInstance(this.options.parent);\r\n }\r\n return this;\r\n }\r\n\r\n createInstance(parent) {\r\n const initializedClass = 'accordion--initialized';\r\n if (parent.classList.contains(initializedClass)) {\r\n return;\r\n }\r\n\r\n this.instances.push(\r\n new Instance(\r\n _.extend(\r\n {\r\n el: parent,\r\n group: this,\r\n },\r\n this.options\r\n )\r\n )\r\n );\r\n parent.classList.add(initializedClass);\r\n }\r\n\r\n open(el, target) {\r\n [].forEach.call(this.instances, (instance) => {\r\n instance.clickOpen(el, target);\r\n });\r\n }\r\n\r\n /**\r\n * Closing all accordions of all instances.\r\n */\r\n closeAll() {\r\n [].forEach.call(this.instances, (instance) => {\r\n instance.emit('close');\r\n });\r\n }\r\n}\r\n\r\nexport default Accordion;\r\n","export const Brands = [\r\n 'rockwool group',\r\n 'rockwool',\r\n 'grodan',\r\n 'lapinus',\r\n 'rockfon',\r\n 'rockpanel',\r\n 'rockwool rti',\r\n 'rockwool consolidation',\r\n 'parafon',\r\n 'rockwool rainwater systems',\r\n 'rockwool prefab building systems',\r\n] as const;\r\n\r\nexport type Brand = (typeof Brands)[number];\r\n\r\nexport const getBrand = (brand: BrandType, brands = Brands as unknown as string[]) => {\r\n const normalizedBrands = brands.map((b) => b.toLocaleLowerCase());\r\n const normalized = (brand as string).toLocaleLowerCase().replace(/^rockwool.+/, 'rockwool');\r\n const match = (normalizedBrands.find((b) => b === normalized) || 'rockwool') as BrandType;\r\n return match;\r\n};\r\n","export const getHeightOffset = (className:string) => {\r\n let heightOffset = 0;\r\n const offsettingElement: HTMLElement = document.querySelector(`.${className}`);\r\n if (offsettingElement != null) {\r\n heightOffset = offsettingElement.offsetHeight;\r\n }\r\n\r\n return heightOffset;\r\n};","import { EventEnum, publish } from '@utils/custom-events';\r\nimport { getHeightOffset } from './getHeightOffset';\r\n\r\nexport const setTranslatedForStickyToogle = (isHidden: boolean) => {\r\n publish(EventEnum.changeNavVisibility, !isHidden);\r\n publish(EventEnum.changeIsHeaderHidden, isHidden);\r\n\r\n const el: HTMLElement = document.querySelector('.O1-header-js');\r\n\r\n if (!el) {\r\n return;\r\n }\r\n\r\n const bgEls = el.parentNode.querySelectorAll('.O1-header-js__bg');\r\n const elHeight = el.offsetHeight;\r\n const heightOffset = getHeightOffset('country-redirect-panel');\r\n const translateY = elHeight + heightOffset;\r\n const transfromValue = `translateY(${isHidden ? -translateY : heightOffset}px)`;\r\n\r\n [...bgEls, el].forEach((element: HTMLElement) => {\r\n element.classList.remove(isHidden ? 'is-shown' : 'is-hidden');\r\n element.classList.add(isHidden ? 'is-hidden' : 'is-shown');\r\n if (!isHidden) {\r\n element.classList.remove('stick-to-top');\r\n }\r\n element.style.transform = transfromValue;\r\n });\r\n};\r\n"],"names":["getButtonContent","_ref","iconName","svg","title","iconClassName","customBtnTextClassName","React","className","suppressHydrationWarning","dangerouslySetInnerHTML","__html","undefined","_ref2","useGatedWrapper","useButtonWithoutIcon","isWhiteIcon","props","_objectWithoutProperties","_excluded","hasContent","buttonContent","_objectSpread","file","attributes","target","href","isFileGated","link","fileTitle","relationship","trim","length","fileAnchor","_extends","tidyStr","cssClass","extensions","documentDataObject","trackingLabel","fileType","fileCategory","downloadType","fileDataTarget","style","cssStyle","gatedContainerClassName","isButtonStyleDisabled","useButtonStyle","type","onClick","Button","width","height","viewBox","fillRule","d","MediaFile","mobileSrcset","imageDescription","imageCssClass","imageDataSrc","isImage","isEps","contentDataSrc","contentName","isPdf","media","srcSet","alt","loading","src","displayName","getDefaultButton","openLinkInNewTab","openThankYouPageInTheSamePage","rest","htmlAttributes","relAttributeWithNoopenerNoReferrerVaule","targetValueBlank","targetValueSelf","PrimaryButton","_excluded2","linksToVideo","Carousel","children","navPrevRef","navNextRef","paginationRef","carouselRef","navButtonClassName","onActiveSlideChange","slideChangeTransitionStart","carouselResize","options","defaultCarouselRef","useRef","defaultNavPrevRef","defaultNavNextRef","defaultPaginationRef","carouselClassName","classNames","styles","ref","showNavigation","navigation","isSwiperInit","setIsSwiperInit","useState","useEffect","pagination","current","navPrev","navNext","swiperOptions","getOptions","Swiper","navigationClassName","CarouselNavButton","buttonRef","inverted","CarouselPagination","clasName","paginationClassName","config","_config$options","on","swiperEvents","modules","Navigation","Pagination","slidesPerView","speed","el","clickable","breakpoints","screenSizes","tablet","prevEl","nextEl","init","swiper","preloadImages","realIndex","slideChangeTransitionEnd","resize","params","slidesPerGroup","slideTo","afterInit","slides","activeIndex","at","forEach","slide","images","querySelectorAll","image","CarouselSlide","slideProps","_excluded3","swiperClassName","CarouselControl","currentSlide","maxSlideCount","horizontalPosition","isLoop","idKey","id","ArrowLeftIcon","ArrowIcon","fill","stroke","strokeWidth","buttonClassName","CarretWideIcon","Teasers","filteredItems","activeSlideIndex","setActiveSlideIndex","carouselNavPrevRef","carouselNavNextRef","articles","useMemo","artilesArray","item","backgroundImage","push","element","button","index","Autoplay","autoplay","delay","disableOnInteraction","longSwipesRatio","step","loop","map","article","key","version","xmlns","transform","HeaderBottom","organizationLinks","showLanguageSelector","currentLanguage","brand","ourOrganizations","organizationLinksArray","url","brandClass","GlobeIcon","ArrowRightIcon","SmallArrowUpIcon","NavigationNew","carouselItems","mainNavigationReactModel","headerMenuInnerRef","isMenuOpen","useHeaderMainContext","HeaderNavigation","currentPageId","homeLabel","menuItems","renderingForCrawler","legacyHeader","TopNavigation","onTopNavClick","pageId","csscClass","virtualPath","isOpen","e","HeaderDropdownContent","items","displayString","isLanguageSelector","chooseOtherLanguageText","globeIconWithText","pageLink","classes","extensionClasses","BrandLogo","startPageHref","brandLogoSvg","BasketItem","data","count","JSON","stringify","sampleColorName","Basket","orderItemsText","checkoutText","addedText","basketCount","useBasketCount","setBasketCount","getInitialBasketCount","storedBasket","window","localStorage","getItem","parse","totalCount","eventHandler","detail","subscribe","EventEnum","changeBasketCount","unsubscribe","basketList","useBasketList","setBasketList","getInitialBasketList","changeBasketList","addedBasketList","useAddedBasketList","setAddedBasketList","changeAddedBasketList","barStyles","BucketIcon","toString","CheckMarkIcon","Login","portalLinks","BarStyles","toolStyles","LoginIcon","rel","text","Bar","hasMinWidth","isShowSearchText","searchHeaderIconText","showBasket","commerceMarketoFormId","hasPortalLinks","headerDropdownContent","toggleSearch","onClickMenu","extendedTopNavigationItems","getSearchButton","isSticky","sticky","SearchIcon","container","showDropdown","Search","searchPageUrl","closeSearch","inputPlaceholder","stickySearchInput","searchFormRef","formRef","sugestionsRef","searchFormWithSuggestionsData","onChangeSugestionsCollection","isShownSearchForm","onChangeInputValue","isSearchOpen","closeSearchList","isInHeader","inputValue","typingTimeout","onChangeTypingTimeout","listOpen","mobileOpen","onChangeListOpen","openMobileSearch","handleChangeSearchElementsStyles","suggestionsCollection","isShownSuggestionList","SearchForm","placeHolderText","placeHolderTextNoHtml","searchPageLink","searchForm","inputElementRef","isO3HomePageNewSearch","closeSearchCb","overlayClass","isDesktopSelectorName","desktopLarge","O11HeaderClass","Header","headerExtensions","layoutStartPage","minWidth","headerDropdown","topNavigationNewReact","brandLogo","setIsSearchOpen","hasSearchShownClass","setHasSearchShownClass","hasNoTransparaencyClass","setHasNoTransparaencyClass","hasNotInTopClass","setHasNotInTopClass","hasStickTopTopClass","setHasStickTopTopClass","prevScrollTop","setPrevScrollTop","lastWindowWidth","setLastWindowWidth","hasIsOpenClass","setHasIsOpenClass","rootMenuClass","setRootMenuClass","currentActivePage","setCurrentActivePage","setExtendedTopNavigationItems","searchEl","setSearchEl","isOpenMenu","setIsOpenMenu","menuNavigate","setMenuNavigate","PubSub","useGlobal","headerRef","bgEls","useSearchFormWithSuggestions","searchElRef","openMenu","closeMenu","document","querySelector","reply","PubSubKeys","headerGetHeight","getHeaderHeight","headerIsOpen","getHeaderIsOpen","menuNavigationStatus","activePage","headerShow","showSticky","Storage","path","location","pathname","sessionStorage","setItem","scrollY","hideSticky","openStickySearch","publish","changeIsCloseOpenedMenu","focus","closeStickySearch","removeOpenClasses","changeIsSearchClose","keyUp","keyCodes","Esc","addEventListener","removeEventListener","onResize","classList","contains","isResizingFromDesktopToMobile","isResizingFromMobileToDesktop","scrollTop","innerWidth","preventDefault","accordionProps","parent","mdSelector","Accordion","clearTopNav","documentElement","remove","changeIsOpenExtendedSearchForm","menuBtn","add","setTimeout","setSlideWidth","parentWidth","getBoundingClientRect","slideWidth","Math","ceil","marginRight","parseInt","getComputedStyle","getPropertyValue","newWidth","onStickyScroll","elHeight","offsetHeight","abs","passive","topScroll","unsetSticky","setTranslatedForStickyToogle","isHomePage","heightOffset","getHeightOffset","click","transition","bgEl","currentWindowWidth","prevItems","includes","getHeaderBgCssClass","useCallback","HeaderMainContext","Provider","value","func","stopPropagation","find","updateTopNavigationItems","headerTestData","hasImage","fullUrl","isActive","isFolder","isOpenInNewTab","notRender","subMenuTitle","Brands","mobile","desktop","ArrowDown","isWhite","defaultProps","FacebookIcon","LinkedInIcon","TwitterIcon","GoogleIcon","TelegramIcon","xmlSpace","y","x","VkIcon","PinterestIcon","xmlnsXlink","SmallArrowDownIcon","MapItemTemplate","brandColor","replace","IconYoutubeSquareSurface","ZendeskIcon","cx","cy","r","ZendeskRockfonIcon","strokeLinecap","rx","IconCloseCross","clipRule","defaults","selector","forceOpen","closeSelector","openClass","targetIsNext","closeOthers","scrollIntoView","slideDuration","slideEasing","rowDisplay","Instance","EventEmitter","constructor","super","this","eventsNamespace","group","App","mq","mdTargetSelector","xsTargetSelector","xsSelector","mdEventsBound","xsEventsBound","isDesktop","Modernizr","isMobile","allElems","otherOpen","call","elem","getElTarget","close","allMdElems","customFunctions","bind","onClickClose","isTargetLink","tagName","targetSelector","cancelable","userAgent","navigator","isIE","indexOf","setElement","tableRow","parentNode","tableRowChildren","_","initialWidth","_canOpenBasedOnVersion","clickOpen","substring","some","cl","firstEl","parents","currentTarget","closest","btnEl","opening","emit","open","containsTarget","selectorParent","nextElementSibling","nextIsElem","HTMLElement","targetEl","parentOpenClass","indicatorSelector","beforeOpen","beforeClose","clearMdSetup","mdSelectors","mdTargets","mdTarget","display","clearXsSetup","xsSelectors","xsTargets","xsTarget","direction","self","targetStyles","paddingTop","paddingBottom","Velocity","default","animate","prevHeight","prevPaddingTop","prevPaddingBottom","overflow","duration","easing","complete","headerHeight","request","pageYOffset","top","bottom","windowTop","windowBottom","innerHeight","offset","ancestor","matches","msMatchesSelector","parentElement","instances","NodeList","createInstance","initializedClass","instance","closeAll","getBrand","normalizedBrands","arguments","b","toLocaleLowerCase","normalized","offsettingElement","isHidden","changeNavVisibility","changeIsHeaderHidden","transfromValue"],"sourceRoot":""}