{"version":3,"file":"dist/build-client/static/js/DesktopHeader-DesktopHeader.f4a4d80a.chunk.js","mappings":"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","sources":["Atoms/Divider/Divider.tsx","Atoms/Image/Image.tsx","Atoms/Loaders/Dots.tsx","Shared/Hooks/useLockBodyScroll.js","Atoms/Overlay/Overlay.tsx","Molecules/LanguagePicker/LanguagePicker.tsx","Organisms/Header/DesktopHeader/DesktopHeader.tsx","Molecules/QuickSearchProductCard/QuickSearchProductCard.tsx","Organisms/QuickSearchModal/QuickSearchModal.tsx","Organisms/DesktopQuickSearch/DesktopQuickSearch.tsx","Organisms/Header/HeaderMain.tsx","Organisms/Header/Reducers/menuReducer.ts","Organisms/Header/Reducers/miniCartReducer.ts","Organisms/Header/Reducers/quickSearchReducer.ts","Organisms/Header/Reducers/userMenuReducer.ts","Pages/CartPage/Cart.ts","Pages/SearchPage/Search.ts","Shared/Hooks/useOnScreen.js","Shared/Hooks/useOutsideClick.ts"],"sourcesContent":["import { styled } from '../../stitches.config';\r\n\r\ntype PropTypes = {\r\n type?: 'max' | 'vertical' | 'header' | 'headerLogo';\r\n marginTop?: boolean;\r\n noMargin?: boolean;\r\n css?: any;\r\n};\r\n\r\nexport const Divider = ({\r\n type,\r\n marginTop,\r\n noMargin,\r\n css,\r\n ...rest\r\n}: PropTypes) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst BaseDivider = styled('div', {\r\n h: 0.25,\r\n w: 16,\r\n mt: 0,\r\n mb: 6,\r\n backgroundColor: '$grey100',\r\n '@mediaMaxSmall': {\r\n mt: 6,\r\n mb: 3,\r\n },\r\n variants: {\r\n type: {\r\n max: {\r\n w: '100%',\r\n mx: 4,\r\n },\r\n vertical: {\r\n w: 0.25,\r\n h: '100%',\r\n my: 0,\r\n mx: 6,\r\n },\r\n header: {\r\n opacity: 0.5,\r\n h: 0,\r\n w: 0,\r\n my: 0,\r\n mx: 3,\r\n },\r\n headerLogo: {\r\n opacity: 0.5,\r\n h: 0,\r\n w: 0,\r\n my: 0,\r\n mx: 6,\r\n },\r\n },\r\n marginTop: {\r\n true: {\r\n mt: 6,\r\n },\r\n },\r\n noMargin: {\r\n true: {\r\n m: 0,\r\n },\r\n },\r\n },\r\n});\r\n\r\nexport default Divider;\r\n","import { useRef } from 'react';\r\nimport useOnScreen from '../../Shared/Hooks/useOnScreen';\r\nimport { styled } from '../../stitches.config';\r\n\r\ntype PropType = {\r\n src: string;\r\n alt: string;\r\n css?: any;\r\n imgFit?: boolean;\r\n onLoad?: () => void;\r\n usePlaceHolder?: boolean;\r\n title?: string;\r\n lazy?: boolean;\r\n};\r\n\r\nconst Image = ({\r\n src,\r\n alt = '',\r\n css,\r\n onLoad,\r\n usePlaceHolder,\r\n title = '',\r\n lazy = true,\r\n ...rest\r\n}: PropType) => {\r\n const ref = useRef(null);\r\n const onScreen = useOnScreen({ ref });\r\n\r\n return onScreen || !lazy ? (\r\n \r\n ) : usePlaceHolder ? (\r\n
\r\n ) : (\r\n \r\n );\r\n};\r\n\r\nconst StyledImage = styled('img', {\r\n w: '100%',\r\n});\r\n\r\nexport default Image;\r\n","import { styled } from '../../stitches.config';\r\nimport { timings } from '../../Theme/Settings/animation';\r\nimport { animationFrames } from '../../Theme/Settings/keyframes';\r\n\r\ntype DotsType = {\r\n color?: string;\r\n};\r\n\r\nfunction Dots({ color }: DotsType) {\r\n return (\r\n \r\n .\r\n .\r\n .\r\n \r\n );\r\n}\r\n\r\nexport default Dots;\r\n\r\nconst Wrapper = styled('div', {\r\n h: 'auto',\r\n});\r\n\r\nconst Dot = styled('div', {\r\n display: 'inline-block',\r\n color: '$primary',\r\n fs: 32,\r\n lineHeigh: 'auto',\r\n animation: `${animationFrames}`,\r\n animationDuration: timings.sevenFifths,\r\n animationIterationCount: 'infinite',\r\n animationTimingFunction: 'ease-in-out',\r\n animationFillMode: 'both',\r\n '&:nth-child(2)': {\r\n animationDelay: timings.oneFifth,\r\n },\r\n '&:nth-child(3)': {\r\n animationDelay: timings.twoFifths,\r\n },\r\n});\r\n","import { useLayoutEffect } from 'react';\r\nimport useMedia from './useMedia';\r\n\r\nconst activeUseLockBodyScrolls = {};\r\nlet scrollPos = null;\r\n\r\nfunction useLockBodyScroll({ mediaQuery = false, lock = true } = {}) {\r\n const mediaQueryIsTrue = useMedia(mediaQuery);\r\n\r\n /**\r\n * for some reason we can't use useEffect because of infinite rerenders in ios\r\n * */\r\n useLayoutEffect(() => {\r\n if (mediaQuery && !mediaQueryIsTrue) return;\r\n\r\n let scrollPosition,\r\n rootEle = document.getElementById('root'),\r\n header = document.getElementById('fixed-site-header');\r\n const id = new Date().valueOf();\r\n\r\n if ((!mediaQuery || (mediaQueryIsTrue && mediaQuery)) && lock) {\r\n scrollPosition = window.pageYOffset;\r\n\r\n if (scrollPos === null) {\r\n rootEle.style.top = `${-scrollPosition}px`;\r\n /*\r\n * global class declared in index.scss\r\n */\r\n rootEle.classList.add('rootlocked');\r\n }\r\n\r\n activeUseLockBodyScrolls[id] =\r\n scrollPos === null ? scrollPosition : scrollPos;\r\n }\r\n\r\n return () => {\r\n const idScrollPos = activeUseLockBodyScrolls[id];\r\n delete activeUseLockBodyScrolls[id];\r\n if (Object.isEmpty(activeUseLockBodyScrolls)) {\r\n header && (header.style.top = `0px`);\r\n /*\r\n * global class declared in index.scss\r\n */\r\n rootEle.classList.remove('rootlocked');\r\n window.scrollTo(0, idScrollPos);\r\n }\r\n };\r\n }, [lock, mediaQuery, mediaQueryIsTrue]);\r\n\r\n return mediaQueryIsTrue;\r\n}\r\n\r\nexport default useLockBodyScroll;\r\n","import { styled } from '../../stitches.config';\r\nimport useLockBodyScroll from '../../Shared/Hooks/useLockBodyScroll';\r\nimport { timings } from '../../Theme/Settings/animation';\r\nimport { overlayFadeIn } from '../../Theme/Settings/keyframes';\r\n\r\ntype PropTypes = {\r\n clickEvnt?: () => void;\r\n};\r\n\r\nfunction Overlay({ clickEvnt }: PropTypes) {\r\n useLockBodyScroll();\r\n\r\n return ;\r\n}\r\n\r\nexport default Overlay;\r\n\r\nconst OverlayDiv = styled('div', {\r\n position: 'fixed',\r\n top: 0,\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n backgroundColor: '$black',\r\n opacity: 0.5,\r\n zIndex: '$Overlay',\r\n transitionProperty: 'opacity',\r\n transitionDuration: '0.3s',\r\n transitionTimingFunction: 'ease-in',\r\n animation: `${overlayFadeIn} ${timings.oneHalf}`,\r\n});\r\n","import { useRef, useState } from 'react';\r\nimport { ChevronIcon } from '../../Atoms/Icons';\r\nimport Image from '../../Atoms/Image/Image';\r\nimport useCurrentPage from '../../Shared/Hooks/useCurrentPage';\r\nimport useOutsideClick from '../../Shared/Hooks/useOutsideClick';\r\nimport Language from '../../Shared/Models/LanguagePicker/Language.interface';\r\nimport LanguagePickerModel from '../../Shared/Models/LanguagePickerModel.interface';\r\nimport { styled } from '../../stitches.config';\r\n\r\ntype PropTypes = {\r\n languagePicker: LanguagePickerModel;\r\n};\r\n\r\nfunction LanguagePicker({ languagePicker }: PropTypes) {\r\n const { languageRoutes } = useCurrentPage();\r\n const [showDropdown, setShowDropdown] = useState(false);\r\n const languagePickerRef = useRef(null);\r\n const selectedLanguage = languagePicker.selectedLanguage;\r\n\r\n const onLanguageClick = (language: Language, e: any) => {\r\n e.preventDefault();\r\n if (language.countryCode !== undefined) {\r\n }\r\n\r\n if (languageRoutes[language.countryCode] !== undefined) {\r\n window.location.href = languageRoutes[language.countryCode];\r\n } else {\r\n window.location.href = language.url;\r\n }\r\n };\r\n\r\n useOutsideClick(languagePickerRef, () => {\r\n showDropdown && setShowDropdown(false);\r\n });\r\n\r\n return (\r\n \r\n setShowDropdown(!showDropdown)}\r\n ref={languagePickerRef}\r\n >\r\n \r\n \r\n {selectedLanguage?.flagImage?.src && (\r\n \r\n \r\n \r\n )}\r\n \r\n {selectedLanguage.name} / {selectedLanguage.currency}\r\n \r\n {!languagePicker.disableDropdown && (\r\n \r\n )}\r\n \r\n {!languagePicker.disableDropdown && showDropdown && (\r\n \r\n {languagePicker.languages.map(\r\n (language: Language) =>\r\n language.countryCode !==\r\n languagePicker.selectedLanguage.countryCode && (\r\n \r\n onLanguageClick(language, null)}\r\n >\r\n {language?.flagImage?.src && (\r\n \r\n \r\n \r\n )}\r\n {language.name} / {language.currency}\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 LanguagePicker;\r\n\r\nconst Root = styled('div', { ml: 'auto', py: 1 });\r\n\r\nconst LanguagePickerWrapper = styled('div', {});\r\n\r\nconst Flex = styled('div', {\r\n display: 'flex',\r\n alignItems: 'center',\r\n userSelect: 'none',\r\n px: 1,\r\n variants: { disableDropdown: { false: { cursor: 'pointer' } } },\r\n});\r\n\r\nconst StyledLink = styled('a', {\r\n display: 'flex',\r\n alignItems: 'center',\r\n textDecoration: 'none',\r\n w: '100%',\r\n '&:hover': {\r\n textDecoration: 'underline',\r\n },\r\n});\r\n\r\nconst FlagImageWrapper = styled('div', {\r\n alignItems: 'center',\r\n display: 'flex',\r\n h: '24px',\r\n w: '24px',\r\n mr: '10px',\r\n});\r\n\r\nconst FlagImage = styled(Image, {});\r\n\r\nconst SelectedLanguage = styled('div', {\r\n fontWeight: '$fw700',\r\n position: 'relative',\r\n});\r\n\r\nconst LinkWrapper = styled('div', {\r\n display: 'flex',\r\n py: 1,\r\n});\r\n\r\nconst Dropdown = styled('div', {\r\n position: 'absolute',\r\n background: '$rootBackgroundColor',\r\n zIndex: 1,\r\n r: -4,\r\n l: -4,\r\n pb: 1,\r\n pt: 3,\r\n px: 5,\r\n});\r\n\r\nconst SelectedSpan = styled('span', {\r\n mr: '8px',\r\n textDecoration: 'none',\r\n fontWeight: '$fw400',\r\n fontSize: '12px',\r\n lineHeight: '17px',\r\n letterSpacing: '1px',\r\n});\r\n","import { useRef, useReducer, useState, useEffect } from 'react';\r\nimport HeaderMain from '../HeaderMain';\r\nimport loadable, { LoadableComponent } from '@loadable/component';\r\nimport miniCartReducer from '../Reducers/miniCartReducer';\r\nimport userMenuReducer from '../Reducers/userMenuReducer';\r\nimport menuReducer from '../Reducers/menuReducer';\r\nimport { PropType as MiniCartPropType } from '../../MiniCart/MiniCart';\r\nimport { PropType as UserMenuPropType } from '../../../Shared/NavigationMenu/UserMenu';\r\nimport { styled } from '../../../stitches.config';\r\nimport quickSearchReducer from '../Reducers/quickSearchReducer';\r\nimport Overlay from '../../../Atoms/Overlay/Overlay';\r\nimport { useHeaderData } from '../Header';\r\n\r\nconst Menu = loadable(() => import('../../NavigationMenu/NavigationMenu'));\r\n\r\nconst UserMenu: LoadableComponent = loadable(\r\n () => import('../../../Shared/NavigationMenu/UserMenu')\r\n);\r\n\r\nconst MiniCart: LoadableComponent = loadable(\r\n () => import('../../MiniCart/MiniCart')\r\n);\r\n\r\nfunction DesktopHeader() {\r\n const {\r\n topLinks,\r\n languagePicker,\r\n logo,\r\n topLinkPrivate,\r\n topLinkCompany,\r\n topText,\r\n topResellerLink,\r\n } = useHeaderData();\r\n const hasBottomSection = topLinks && !!topLinks.length;\r\n\r\n const [placeholderPadding, setPlaceholderPadding] = useState(0);\r\n\r\n useEffect(() => {\r\n let headerElm = document.getElementById('header');\r\n headerElm && setPlaceholderPadding(headerElm.offsetHeight);\r\n });\r\n\r\n const [{ menuIsOpen, mountMenu }, menuDispatch] = useReducer(menuReducer, {\r\n menuIsOpen: false,\r\n mountMenu: true,\r\n });\r\n const [{ miniCartIsOpen, mountMiniCart }, miniCartDispatch] = useReducer(\r\n miniCartReducer,\r\n {\r\n miniCartIsOpen: false,\r\n mountMiniCart: true,\r\n }\r\n );\r\n\r\n const [{ userMenuIsOpen, mountUserMenu }, userMenuDispatch] = useReducer(\r\n userMenuReducer,\r\n {\r\n userMenuIsOpen: false,\r\n mountUserMenu: true,\r\n }\r\n );\r\n\r\n const [{ searchModalIsOpen, mountSearchModal }, quickSearchDispatch] =\r\n useReducer(quickSearchReducer, {\r\n searchModalIsOpen: false,\r\n mountSearchModal: true,\r\n });\r\n\r\n const menuBtnRef = useRef(null);\r\n const miniCartBtnRef = useRef(null);\r\n const userMenuBtnRef = useRef(null);\r\n\r\n const placeholderStyle = {\r\n paddingTop: placeholderPadding,\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n menuDispatch(menuIsOpen ? 'closeMenu' : 'mountAndOpen')\r\n }\r\n openMiniCart={() =>\r\n miniCartDispatch(miniCartIsOpen ? 'closeMiniCart' : 'mountAndOpen')\r\n }\r\n openUserMenu={() =>\r\n userMenuDispatch(userMenuIsOpen ? 'closeUserMenu' : 'mountAndOpen')\r\n }\r\n openQuickSearch={() =>\r\n quickSearchDispatch(\r\n searchModalIsOpen ? 'closeSearchModal' : 'mountAndOpen'\r\n )\r\n }\r\n closeSearchModal={() => quickSearchDispatch('closeSearchModal')}\r\n menuIsOpen={menuIsOpen}\r\n quickSearchIsOpen={searchModalIsOpen}\r\n ref={menuBtnRef}\r\n miniCartBtnRef={miniCartBtnRef}\r\n userMenuBtnRef={userMenuBtnRef}\r\n topLinks={topLinks}\r\n topLinkPrivate={topLinkPrivate}\r\n topLinkCompany={topLinkCompany}\r\n topText={topText}\r\n topResellerLink={topResellerLink}\r\n logo={logo}\r\n languagePicker={languagePicker}\r\n />\r\n \r\n {mountMenu && (\r\n menuDispatch('closeMenu')}\r\n />\r\n )}\r\n {mountUserMenu && (\r\n userMenuDispatch('closeUserMenu')}\r\n />\r\n )}\r\n \r\n {mountMiniCart && (\r\n miniCartDispatch('mountAndOpen')}\r\n closeMiniCart={() => miniCartDispatch('closeMiniCart')}\r\n />\r\n )}\r\n {searchModalIsOpen && }\r\n \r\n \r\n );\r\n}\r\n\r\nconst HeaderTag = styled('header', {\r\n zIndex: '$Header',\r\n backgroundColor: '$backgroundPrimary',\r\n position: 'fixed',\r\n t: 0,\r\n w: '100%',\r\n});\r\n\r\nconst Placeholder = styled('div', {\r\n w: '100%',\r\n});\r\n\r\nconst MenuContainer = styled('div', {\r\n maxWidth: '$screenMaxWidth',\r\n position: 'fixed',\r\n px: 4,\r\n py: 0,\r\n mx: 'auto',\r\n my: 0,\r\n});\r\n\r\nexport default DesktopHeader;\r\n","import KexLink from '../../Kex/KexLink';\r\nimport ProductCardModel from '../../ProductCard/Models/ProductCardModel.interface';\r\nimport { styled } from '../../stitches.config';\r\nimport { useState } from 'react';\r\nimport Image from '../../Atoms/Image/Image';\r\nimport { useTranslationData } from '../../Shared/Providers/TranslationProvider';\r\nimport QuantitySelectorSearch from '../../Atoms/Quantity/QuantitySelectorSearch';\r\nimport { UpdateCart } from '../../Pages/CartPage/Cart';\r\nimport { useAppSettingsData } from '../../Shared/Providers/AppSettingsProvider';\r\nimport useCurrentPage from '../../Shared/Hooks/useCurrentPage';\r\nimport PageModelBase from '../../Shared/Models/PageModelBase.interface';\r\nimport Button from '../../Atoms/Buttons/Button';\r\n\r\ntype PropType = {\r\n product: ProductCardModel;\r\n productCardClick: () => void;\r\n};\r\n\r\nfunction QuickSearchProductCard({ product, productCardClick }: PropType) {\r\n const [quantity, setQuantity] = useState(\r\n product.minimumSalesQuantity\r\n );\r\n const [isAdding, setIsAdding] = useState(false);\r\n\r\n const { 'product/artno': artnoLabel } = useTranslationData();\r\n const { languageRoute } = useAppSettingsData();\r\n const { channelId, pageId } = useCurrentPage();\r\n const { 'common/buyNow': buyNowLabel } = useTranslationData();\r\n\r\n const litiumContext = JSON.stringify({\r\n currentPageSystemId: pageId,\r\n channelSystemId: channelId,\r\n });\r\n const onQuantityChange = (value: number) => {\r\n setQuantity(value);\r\n };\r\n function addToCart() {\r\n setIsAdding(true);\r\n UpdateCart(product.code, quantity, languageRoute, litiumContext)\r\n .then(() => setIsAdding(false))\r\n .catch(() => setIsAdding(false));\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {product.brand && (\r\n \r\n {product.brand}\r\n \r\n )}\r\n {product.name}\r\n {product.price}\r\n {product.code && (\r\n \r\n \r\n {artnoLabel} {product.code}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default QuickSearchProductCard;\r\n\r\nconst Root = styled(KexLink, {\r\n w: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n fs: 6,\r\n pb: 4,\r\n borderBottom: 'solid',\r\n borderBottomWidth: '1px',\r\n borderBottomColor: 'transparent',\r\n});\r\n\r\nconst RightSection = styled('div', {\r\n display: 'flex',\r\n alignItems: 'flex-end',\r\n flexDirection: 'column',\r\n});\r\n\r\nconst ProductPrice = styled('div', {\r\n pb: 0,\r\n});\r\n\r\nconst AddToCart = styled('div', {\r\n justifyContent: 'flex-end',\r\n flexDirection: 'column',\r\n gap: '10px',\r\n mt: 4,\r\n '@mediaMinSmall': {\r\n mt: 'auto',\r\n },\r\n h: '100%',\r\n maxW: '78px',\r\n display: 'flex',\r\n pt: 0,\r\n w: '100%',\r\n});\r\n\r\nconst ProductBuyButton = styled('button', {\r\n py: 1,\r\n px: 3,\r\n borderRadius: '40px',\r\n fs: 4,\r\n fontWeight: '$fw700',\r\n backgroundColor: '$buttonSecondary',\r\n color: '$buttonHoverBackgroundPrimary',\r\n});\r\n\r\nconst LeftSection = styled('div', {\r\n display: 'flex',\r\n alignItems: 'flex-start',\r\n fs: 6,\r\n fontWeight: '$fw300',\r\n});\r\n\r\nconst ImageWrapper = styled('div', {\r\n wh: 10,\r\n minW: 10,\r\n});\r\n\r\nconst StyledImage = styled(Image, {\r\n objectFit: 'contain',\r\n h: '100%',\r\n});\r\n\r\nconst Attributes = styled('div', {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n ml: 2,\r\n color: '$textPrimary',\r\n});\r\n\r\nconst Brand = styled('div', {\r\n textDecoration: 'none',\r\n lineHeight: '16px',\r\n color: '$textPrimary',\r\n});\r\n\r\nconst Code = styled('div', {\r\n fontSize: '9px',\r\n lineHeight: '16px',\r\n letterSpacing: '1px',\r\n color: '$searchInputTextPrimary',\r\n});\r\n\r\nconst ProductName = styled('span', {\r\n maxW: '332px',\r\n textOverflow: 'ellipsis',\r\n overflow: 'hidden',\r\n whiteSpace: 'nowrap',\r\n lineHeight: '20px',\r\n});\r\n","import { useEffect, useState, useRef } from 'react';\r\nimport Dots from '../../Atoms/Loaders/Dots';\r\nimport { H2 } from '../../Atoms/Typography/Headings/Heading';\r\nimport KexLink from '../../Kex/KexLink';\r\nimport QuickSearchProductCard from '../../Molecules/QuickSearchProductCard/QuickSearchProductCard';\r\nimport ProductCardModel from '../../ProductCard/Models/ProductCardModel.interface';\r\nimport ContentModel from '../../Search/Models/ContentModel.interface';\r\nimport FullSearchResult from '../../Search/Models/FullSearchResult.interface';\r\nimport SearchLinkResult from '../../Search/Models/SearchLinkResult.interface';\r\nimport {\r\n EventDispatcher,\r\n ON_SEARCH,\r\n ON_MODAL_SEARCH,\r\n} from '../../Shared/Common/EventDispatcher';\r\nimport useMedia from '../../Shared/Hooks/useMedia';\r\nimport useOutsideClick from '../../Shared/Hooks/useOutsideClick';\r\nimport { useTranslationData } from '../../Shared/Providers/TranslationProvider';\r\nimport { styled } from '../../stitches.config';\r\nimport { mediaQueryTypes } from '../../Theme/Settings/mediaQueries';\r\n\r\ntype PropTypes = {\r\n searchResult?: FullSearchResult;\r\n isOpen: boolean;\r\n currentSearchPhrase: string;\r\n setInputActive?: any;\r\n onSearchResultChange?: any;\r\n closeSearchModal: () => void;\r\n};\r\n\r\nfunction QuickSearchModal({\r\n searchResult,\r\n isOpen,\r\n currentSearchPhrase,\r\n setInputActive,\r\n onSearchResultChange,\r\n closeSearchModal,\r\n}: PropTypes) {\r\n const [isSearching, setIsSearching] = useState(false);\r\n const isDesktop = useMedia(mediaQueryTypes.mediaMinLarge);\r\n const {\r\n 'search/showAllSearchResults': showAllSearchResultsLabel,\r\n 'search/pages': pagesLabel,\r\n 'searchPage/products': productsLabel,\r\n 'search/category': categoryLabel,\r\n 'search/noResults': noResultsLabel,\r\n } = useTranslationData();\r\n\r\n const onSearch = (value: boolean) => {\r\n setIsSearching(value);\r\n };\r\n\r\n const searchModalRef = useRef(null);\r\n\r\n useOutsideClick(searchModalRef, () => {\r\n if (isDesktop && isOpen) {\r\n closeSearchModal();\r\n setInputActive(false);\r\n }\r\n });\r\n\r\n const doSearch = () => {\r\n if (currentSearchPhrase.length > 0) {\r\n EventDispatcher.dispatch(ON_MODAL_SEARCH, true);\r\n }\r\n };\r\n\r\n const noSearchResult =\r\n !searchResult?.contentSearchResult &&\r\n !searchResult?.productSearchResult &&\r\n ((searchResult?.categorySearchResult &&\r\n !!!searchResult?.categorySearchResult.length) ||\r\n !searchResult?.categorySearchResult) &&\r\n !searchResult?.planogramSearchResult;\r\n\r\n const hasContentResults =\r\n searchResult?.contentSearchResult || searchResult?.categorySearchResult;\r\n\r\n useEffect(() => {\r\n EventDispatcher.subscribe(ON_SEARCH, onSearch);\r\n return () => {\r\n EventDispatcher.unsubscribe(ON_SEARCH, onSearch);\r\n };\r\n });\r\n\r\n const onResultItemClick = () => {\r\n setInputActive(false);\r\n onSearchResultChange(undefined, '');\r\n };\r\n\r\n return isOpen ? (\r\n <>\r\n \r\n {isSearching ? (\r\n \r\n \r\n \r\n ) : !isSearching && searchResult && noSearchResult ? (\r\n {noResultsLabel}\r\n ) : (\r\n \r\n {searchResult && searchResult.productSearchResult?.availableItems && (\r\n \r\n {productsLabel}\r\n {searchResult?.productSearchResult?.availableItems && (\r\n \r\n {searchResult?.productSearchResult?.items.map(\r\n (product: ProductCardModel) =>\r\n product.url && (\r\n \r\n \r\n \r\n )\r\n )}\r\n \r\n )}\r\n \r\n \r\n )}\r\n {searchResult && hasContentResults && (\r\n <>\r\n \r\n {!!searchResult?.categorySearchResult?.length && (\r\n
\r\n {categoryLabel}\r\n \r\n {searchResult?.categorySearchResult?.map(\r\n (item: SearchLinkResult) => (\r\n \r\n \r\n {item.name}\r\n \r\n \r\n )\r\n )}\r\n \r\n
\r\n )}\r\n {searchResult?.contentSearchResult?.availableItems && (\r\n
\r\n \r\n {pagesLabel}\r\n \r\n \r\n {searchResult?.contentSearchResult?.items.map(\r\n (item: ContentModel) =>\r\n item.src && (\r\n \r\n \r\n {item.name}\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 {!noSearchResult && !isSearching && (\r\n doSearch()}>\r\n {showAllSearchResultsLabel}\r\n \r\n )}\r\n
\r\n \r\n ) : (\r\n <>\r\n );\r\n}\r\n\r\nconst VerticalDivider = styled('div', {\r\n backgroundColor: '$grey100',\r\n h: 0.25,\r\n w: '100%',\r\n my: 10,\r\n});\r\n\r\nconst SearchResultModalContainer = styled('div', {\r\n position: 'fixed',\r\n t: 47,\r\n l: 4,\r\n r: 4,\r\n b: 4,\r\n px: 6,\r\n pt: 8,\r\n pb: 16,\r\n zIndex: 20,\r\n fs: 6,\r\n backgroundColor: '$white',\r\n h: '100%',\r\n overflowX: 'hidden',\r\n overflowY: 'auto',\r\n\r\n '@mediaMinLarge': {\r\n maxH: 'calc(100vh - 200px)',\r\n boxShadow: '0px 2px 6px rgba(0, 0, 0, 0.19717)',\r\n position: 'absolute',\r\n t: '54px',\r\n bottom: 'unset',\r\n w: '100%',\r\n l: 0,\r\n r: 0,\r\n mx: 'auto',\r\n h: 'auto',\r\n },\r\n});\r\n\r\nconst ModalTabsWrapper = styled('div', {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n});\r\n\r\nconst ShowAllButton = styled('button', {\r\n position: 'absolute',\r\n t: 8,\r\n r: 6,\r\n fontWeight: '$fw700',\r\n fs: 5,\r\n textTransform: 'uppercase',\r\n '&:hover': {\r\n textDecoration: 'underline',\r\n },\r\n});\r\n\r\nconst ContentResultWrapper = styled('div', {\r\n w: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n '@mediaMinLarge': {\r\n gridColumnEnd: 'span 1',\r\n },\r\n});\r\n\r\nconst ProductsResultWrapper = styled('div', {\r\n w: '100%',\r\n '@mediaMinLarge': {\r\n gridColumnEnd: 'span 1',\r\n },\r\n});\r\n\r\nconst StyledLink = styled(KexLink, {\r\n fs: 6,\r\n fontWeight: '$fw400',\r\n lineHeight: '20px',\r\n});\r\n\r\nconst ListItem = styled('li', {\r\n display: 'flex',\r\n '&:not(:last-child)': {\r\n mb: 2,\r\n },\r\n});\r\n\r\nconst ProductListItem = styled('li', {\r\n '&:not(:last-of-type)': {\r\n mb: 4,\r\n },\r\n});\r\n\r\nconst ResultCategory = styled(H2, {\r\n fontWeight: '$fw300',\r\n fs: 7,\r\n lineHeight: '23px',\r\n variants: {\r\n margin: {\r\n true: {\r\n mt: 8,\r\n },\r\n },\r\n },\r\n});\r\n\r\nconst ResultList = styled('ul', {\r\n listStyle: 'none',\r\n mt: 4,\r\n});\r\n\r\nconst DotsWrapper = styled('div', {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n pb: 9,\r\n});\r\n\r\nconst NoResultsWrapper = styled('div', {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n py: 9,\r\n});\r\n\r\nexport default QuickSearchModal;\r\n","import React, {\r\n KeyboardEvent,\r\n useCallback,\r\n useEffect,\r\n useRef,\r\n useState,\r\n} from 'react';\r\nimport { useAppSettingsData } from '../../Shared/Providers/AppSettingsProvider';\r\nimport { CloseIcon, SearchIcon } from '../../Atoms/Icons';\r\nimport { useKexNavigate } from '../../Kex/KexRouter/KexRouter';\r\nimport { styled } from '../../stitches.config';\r\nimport { useTranslationData } from '../../Shared/Providers/TranslationProvider';\r\nimport {\r\n EventDispatcher,\r\n ON_MODAL_SEARCH,\r\n ON_SEARCH_MODAL_OPEN_CHANGE,\r\n} from '../../Shared/Common/EventDispatcher';\r\nimport QuickSearchModal from '../QuickSearchModal/QuickSearchModal';\r\nimport FullSearchResult from '../../Search/Models/FullSearchResult.interface';\r\nimport { QuickSearch } from '../../Pages/SearchPage/Search';\r\nimport useCurrentPage from '../../Shared/Hooks/useCurrentPage';\r\nimport PageModelBase from '../../Shared/Models/PageModelBase.interface';\r\n\r\ntype PropTypes = {\r\n openQuickSearch: any;\r\n isOpen: boolean;\r\n closeSearchModal: () => void;\r\n};\r\n\r\nlet typeTimer: any;\r\n\r\nfunction DesktopQuickSearch({\r\n isOpen,\r\n openQuickSearch,\r\n closeSearchModal,\r\n}: PropTypes) {\r\n const {\r\n staticPages: { searchPage },\r\n languageRoute,\r\n startPageId,\r\n } = useAppSettingsData();\r\n const { channelId, pageId } = useCurrentPage();\r\n const { 'search/placeholder': placeholderText } = useTranslationData();\r\n\r\n const kexNavigate = useKexNavigate();\r\n const [query, setQuery] = useState('');\r\n\r\n const [searchResult, setSearchResult] = useState();\r\n const [isSearchInputActive, setIsSearchInputActive] = useState(false);\r\n const [currentSearchPhrase, setCurrentSearchPhrase] = useState('');\r\n\r\n const inputRef = useRef(null);\r\n\r\n const baseUrl = `/api/${languageRoute || 'en'}/search/QuickSearch?query=`;\r\n\r\n const onSearchResultChange = useCallback((res, searchPhrase) => {\r\n setCurrentSearchPhrase(searchPhrase);\r\n setSearchResult(res);\r\n }, []);\r\n\r\n const requestContext = JSON.stringify({\r\n currentPageSystemId: startPageId,\r\n categorySystemId: pageId,\r\n channelSystemId: channelId,\r\n });\r\n\r\n const doSearch = () => {\r\n if (query.length > 0 && searchResult) {\r\n // EventDispatcher.dispatch(ON_MOBILE_SEARCH_OPEN_CHANGE, false);\r\n // EventDispatcher.dispatch(ON_SEARCH_MODAL_OPEN_CHANGE, false);\r\n closeSearchModal();\r\n // setQuery('');\r\n setIsSearchInputActive(false);\r\n inputRef.current?.blur();\r\n // onSearchResultChange(undefined, '');\r\n kexNavigate(`${searchPage}?searchQuery=${query}`);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n EventDispatcher.subscribe(ON_MODAL_SEARCH, doSearch);\r\n return () => {\r\n EventDispatcher.unsubscribe(ON_MODAL_SEARCH, doSearch);\r\n };\r\n });\r\n\r\n const onCrossClick = () => {\r\n setCurrentSearchPhrase('');\r\n inputRef.current?.focus();\r\n };\r\n\r\n const onInputChange = useCallback(\r\n (value: string) => {\r\n openQuickSearch();\r\n setIsSearchInputActive(!!value.length);\r\n setCurrentSearchPhrase(value);\r\n if (!!value.length) {\r\n setQuery(value);\r\n clearTimeout(typeTimer);\r\n typeTimer = setTimeout(() => {\r\n setCurrentSearchPhrase(value);\r\n QuickSearch(value, requestContext)\r\n .then((res) => {\r\n onSearchResultChange(res, value);\r\n })\r\n .catch(() => {});\r\n }, 500);\r\n } else {\r\n clearTimeout(typeTimer);\r\n onSearchResultChange(undefined, '');\r\n }\r\n },\r\n [onSearchResultChange]\r\n );\r\n\r\n const onInputFocus = () => {\r\n setTimeout(() => {\r\n if (!isOpen && !!currentSearchPhrase.length) {\r\n EventDispatcher.dispatch(ON_SEARCH_MODAL_OPEN_CHANGE, true);\r\n openQuickSearch();\r\n setIsSearchInputActive(true);\r\n }\r\n }, 100);\r\n };\r\n\r\n return (\r\n \r\n onInputChange(e.currentTarget.value)}\r\n onKeyDown={(e: KeyboardEvent) =>\r\n e.key === 'Enter' && doSearch()\r\n }\r\n value={currentSearchPhrase}\r\n type=\"text\"\r\n placeholder={placeholderText}\r\n />\r\n \r\n \r\n \r\n {isOpen && !!currentSearchPhrase.length && (\r\n onCrossClick()}>\r\n \r\n \r\n )}\r\n {isOpen && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nconst Container = styled('div', {\r\n backgroundColor: '$white',\r\n h: '50px',\r\n maxW: 107.5,\r\n display: 'flex',\r\n alignItems: 'center',\r\n position: 'relative',\r\n w: '100%',\r\n mr: 'auto',\r\n border: '1px solid $searchInputBorderPrimary',\r\n borderRadius: '73px',\r\n pl: 10,\r\n variants: {\r\n isActive: {\r\n true: {\r\n boxShadow: '0px 0px 9px rgba(0, 0, 0, 0.16)',\r\n },\r\n },\r\n },\r\n});\r\n\r\nconst CloseButton = styled('button', {\r\n position: 'absolute',\r\n r: 15,\r\n});\r\n\r\nconst StyledSearchIcon = styled(SearchIcon, {\r\n wh: '50px',\r\n ml: 2,\r\n l: 0,\r\n});\r\n\r\nconst InputField = styled('input', {\r\n backgroundColor: 'transparent',\r\n color: '$searchInputBlurPrimary',\r\n flexGrow: 1,\r\n flexShrink: 1,\r\n fs: 7,\r\n mt: 0.25,\r\n letterSpacing: '1px',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n '&:focus': {\r\n color: '$searchInputTextPrimary',\r\n outline: 'none',\r\n },\r\n '&::placeholder': {\r\n color: '$grey700',\r\n fs: 5.5,\r\n },\r\n});\r\n\r\nconst SearchButton = styled('button', {\r\n display: 'flex',\r\n backgroundColor: '$grey100',\r\n w: '50px',\r\n h: '48px',\r\n border: 'none',\r\n borderLeft: '1px solid $searchInputBorderPrimary',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n borderRadius: '0 73px 73px 0',\r\n '&:focus': {\r\n outline: 'none',\r\n },\r\n});\r\n\r\nexport default React.memo(DesktopQuickSearch);\r\n","import React, { forwardRef, useRef } from 'react';\r\nimport ContentContainer from '../../Molecules/ContentContainer/ContentContainer';\r\nimport { MenuIcon, CartIcon, ProfileIcon } from '../../Atoms/Icons';\r\nimport { useAppSettingsData } from '../../Shared/Providers/AppSettingsProvider';\r\nimport { useUserStateData } from '../../Shared/UserContextProvider/UserContextProvider';\r\nimport DesktopQuickSearch from '../../Organisms/DesktopQuickSearch/DesktopQuickSearch';\r\nimport KexLink from '../../Kex/KexLink';\r\nimport { GetCart } from '../../Pages/CartPage/Cart';\r\nimport Divider from '../../Atoms/Divider/Divider';\r\nimport { styled } from '../../stitches.config';\r\nimport { useTranslationData } from '../../Shared/Providers/TranslationProvider';\r\nimport Link from '../../Shared/Models/Link.interface';\r\nimport ImageModel from '../../Assets/Models/ImageModel.interface';\r\nimport Image from '../../Atoms/Image/Image';\r\nimport LanguagePickerModel from '../../Shared/Models/LanguagePickerModel.interface';\r\nimport LanguagePicker from '../../Molecules/LanguagePicker/LanguagePicker';\r\nimport XhtmlArea from '../../Molecules/XHtmlArea/XHtmlArea';\r\nimport { useHeaderData } from './Header';\r\n\r\ntype PropTypes = {\r\n toggleMenu: () => void;\r\n openMiniCart: () => void;\r\n openUserMenu: () => void;\r\n openQuickSearch: () => void;\r\n closeSearchModal: () => void;\r\n quickSearchIsOpen: boolean;\r\n menuIsOpen: boolean;\r\n miniCartBtnRef: React.RefObject;\r\n userMenuBtnRef: React.RefObject;\r\n topLinks?: Link[];\r\n logo?: ImageModel;\r\n languagePicker?: LanguagePickerModel;\r\n topLinkPrivate?: Link;\r\n topLinkCompany?: Link;\r\n topText: string;\r\n topResellerLink: Link;\r\n};\r\n\r\nconst HeaderMain = forwardRef(\r\n (\r\n {\r\n toggleMenu,\r\n menuIsOpen,\r\n openMiniCart,\r\n miniCartBtnRef,\r\n openUserMenu,\r\n openQuickSearch,\r\n userMenuBtnRef,\r\n quickSearchIsOpen,\r\n closeSearchModal,\r\n topLinks,\r\n logo,\r\n languagePicker,\r\n topLinkPrivate,\r\n topLinkCompany,\r\n topText,\r\n topResellerLink,\r\n }: PropTypes,\r\n ref: React.Ref\r\n ) => {\r\n const {\r\n languageRoute,\r\n staticPages: { loginPage },\r\n } = useAppSettingsData();\r\n const { dontAllowLogin } = useHeaderData();\r\n // const [searchModalOpen, setSearchModalOpen] = useState(false);\r\n const {\r\n 'common/login': loginText,\r\n 'common/profile': profileText,\r\n 'common/cart': cartText,\r\n 'header/private': privateText,\r\n 'header/company': companyText,\r\n 'header/reseller': resellerText,\r\n } = useTranslationData();\r\n const { authenticated } = useUserStateData();\r\n const { cart, isLoading } = GetCart();\r\n const nbrRef = useRef(null);\r\n const isEmpty = cart.numberOfItems === 0;\r\n const hasTopLinks = topLinks && !!topLinks.length;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {topLinkPrivate?.href && topLinkCompany?.href && (\r\n \r\n
\r\n \r\n {privateText}\r\n {' '}\r\n /{' '}\r\n \r\n {companyText}\r\n \r\n
\r\n
\r\n )}\r\n \r\n {topText && }\r\n \r\n \r\n {languagePicker && (\r\n
\r\n \r\n
\r\n )}\r\n {topResellerLink?.href && (\r\n
\r\n \r\n {resellerText}\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 {logo?.alt}\r\n \r\n \r\n \r\n \r\n {!dontAllowLogin && (\r\n <>\r\n \r\n {!authenticated ? (\r\n \r\n \r\n \r\n \r\n {loginText}\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n {profileText}\r\n \r\n )}\r\n \r\n \r\n openMiniCart()}\r\n ref={miniCartBtnRef}\r\n >\r\n \r\n \r\n \r\n {cartText}\r\n {!isLoading && !isEmpty && (\r\n \r\n \r\n {cart.numberOfItems > 99\r\n ? '99+'\r\n : cart.numberOfItems}\r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {topLinks && !!topLinks.length && (\r\n \r\n {topLinks.map((topLink) => (\r\n \r\n {topLink.text}\r\n \r\n ))}\r\n \r\n )}\r\n
\r\n \r\n );\r\n }\r\n);\r\n\r\nconst Flex = styled('div', {\r\n display: 'flex',\r\n alignItems: 'center',\r\n '& img': {\r\n maxW: '70%',\r\n },\r\n});\r\n\r\nconst TopColumn = styled('div', {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n fontSize: '12px',\r\n fw: '$fw400',\r\n lineHeight: '24px',\r\n letterSpacing: '1px',\r\n gap: '10px',\r\n '& a': {\r\n fontSize: '12px',\r\n fw: '$fw400',\r\n lineHeight: '24px',\r\n letterSpacing: '1px',\r\n },\r\n '& div': {\r\n alignSelf: 'center',\r\n },\r\n});\r\n\r\nconst StyledKexLink = styled(KexLink, {\r\n fontWeight: '$fw400',\r\n textDecoration: 'underline',\r\n});\r\n\r\nconst Wrapper = styled('div', {\r\n position: 'relative',\r\n zIndex: '$Header',\r\n backgroundColor: '$backgroundPrimary',\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n pt: '20px',\r\n pb: 0,\r\n variants: {\r\n hasTopSection: {\r\n true: {\r\n pt: '0',\r\n },\r\n },\r\n hasTopLinks: {\r\n true: {\r\n pb: '20px',\r\n },\r\n },\r\n },\r\n});\r\n\r\nconst TopSection = styled('div', {\r\n background: '#DDDAD8',\r\n width: '100%',\r\n p: '20px 20px 0 20px',\r\n});\r\n\r\nconst TopContentContainer = styled('div', {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n maxW: '$contentMaxWidth',\r\n mb: 3,\r\n px: '20px',\r\n mx: 'auto',\r\n});\r\n\r\nconst UserMenuButton = styled('button', {\r\n color: '$backgroundSecondary',\r\n ml: 4,\r\n mr: 8,\r\n pxy: 2,\r\n});\r\n\r\nconst StyledContainer = styled(ContentContainer, {\r\n backgroundColor: '#F7F6F5',\r\n py: '20px',\r\n mx: 0,\r\n w: '100%',\r\n maxWidth: '100%',\r\n});\r\n\r\nconst Container = styled('div', {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n px: '20px',\r\n maxWidth: '$contentMaxWidth',\r\n mx: 'auto',\r\n});\r\n\r\nconst BottomSection = styled('div', {\r\n display: 'flex',\r\n maxWidth: '$contentMaxWidth',\r\n mx: 'auto',\r\n mt: '20px',\r\n mb: 0,\r\n width: '100%',\r\n px: '20px',\r\n py: 0,\r\n g: 10,\r\n});\r\n\r\nconst StyledLink = styled(KexLink, {\r\n fs: 7,\r\n});\r\n\r\nconst IconLink = styled(KexLink, {\r\n fontWeight: '$fw400',\r\n display: 'flex',\r\n flexFlow: 'column',\r\n alignItems: 'center',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n letterSpacing: '1px',\r\n});\r\n\r\nconst TextButton = styled('button', {\r\n backgroundColor: 'transparent',\r\n pxy: 0,\r\n fontWeight: '$300',\r\n color: '$textPrimary',\r\n display: 'flex',\r\n alignItems: 'center',\r\n '&:focus': {\r\n outlineStyle: 'none',\r\n },\r\n});\r\n\r\nconst Right = styled('div', {\r\n color: '$textPrimary',\r\n display: 'flex',\r\n alignItems: 'center',\r\n alignSelf: 'stretch',\r\n});\r\n\r\nconst IconButton = styled('button', {\r\n display: 'flex',\r\n flexFlow: 'column',\r\n alignItems: 'center',\r\n backgroundColor: 'transparent',\r\n border: 'none',\r\n position: 'relative',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n letterSpacing: '1px',\r\n '&:focus': {\r\n outlineStyle: 'none',\r\n },\r\n '& svg': {\r\n m: '0 auto',\r\n },\r\n});\r\n\r\nconst IconArea = styled('div', {\r\n display: 'flex',\r\n flexFlow: 'column',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n border: '1px solid #494948',\r\n br: '100%',\r\n wh: 10,\r\n mb: 1,\r\n});\r\n\r\nconst CartItemsNotifier = styled('span', {\r\n position: 'absolute',\r\n t: -1.25,\r\n r: -2,\r\n backgroundColor: '$black',\r\n color: '$white',\r\n br: 50,\r\n fontSize: '10px',\r\n fontWeight: '$fw600',\r\n lineHeight: '14px',\r\n letterSpacing: 0,\r\n minW: '24px',\r\n minH: '24px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n overflowY: 'hidden',\r\n zIndex: '$Cart',\r\n});\r\n\r\nexport default HeaderMain;\r\n","type MenuStateType = {\r\n menuIsOpen: boolean;\r\n mountMenu: boolean;\r\n};\r\ntype MenuActionType = 'mountAndOpen' | 'closeMenu' | 'unMountMenu';\r\n\r\nconst menuReducer = (state: MenuStateType, action: MenuActionType) => {\r\n switch (action) {\r\n case 'mountAndOpen': {\r\n return {\r\n ...state,\r\n menuIsOpen: true,\r\n mountMenu: true,\r\n };\r\n }\r\n case 'closeMenu': {\r\n return {\r\n ...state,\r\n menuIsOpen: false,\r\n };\r\n }\r\n case 'unMountMenu': {\r\n return {\r\n ...state,\r\n menuIsOpen: false,\r\n mountMenu: false,\r\n };\r\n }\r\n }\r\n};\r\n\r\nexport default menuReducer;\r\n","type MiniCartStateType = {\r\n miniCartIsOpen: boolean;\r\n mountMiniCart: boolean;\r\n};\r\n\r\ntype MiniCartActionType = 'mountAndOpen' | 'closeMiniCart' | 'unMountMiniCart';\r\n\r\nconst miniCartReducer = (\r\n state: MiniCartStateType,\r\n action: MiniCartActionType\r\n) => {\r\n switch (action) {\r\n case 'mountAndOpen': {\r\n return {\r\n ...state,\r\n miniCartIsOpen: true,\r\n mountMiniCart: true,\r\n };\r\n }\r\n case 'closeMiniCart': {\r\n return {\r\n ...state,\r\n miniCartIsOpen: false,\r\n };\r\n }\r\n case 'unMountMiniCart': {\r\n return {\r\n ...state,\r\n mountMiniCart: false,\r\n miniCartIsOpen: false,\r\n };\r\n }\r\n }\r\n};\r\n\r\nexport default miniCartReducer;\r\n","type UserMenuStateType = {\r\n searchModalIsOpen: boolean;\r\n mountSearchModal: boolean;\r\n};\r\n\r\ntype UserMenuActionType =\r\n | 'mountAndOpen'\r\n | 'closeSearchModal'\r\n | 'unMountSearchModal';\r\n\r\nconst quickSearchReducer = (\r\n state: UserMenuStateType,\r\n action: UserMenuActionType\r\n) => {\r\n switch (action) {\r\n case 'mountAndOpen': {\r\n return {\r\n ...state,\r\n searchModalIsOpen: true,\r\n mountSearchModal: true,\r\n };\r\n }\r\n case 'closeSearchModal': {\r\n return {\r\n ...state,\r\n searchModalIsOpen: false,\r\n };\r\n }\r\n case 'unMountSearchModal': {\r\n return {\r\n ...state,\r\n mountSearchModal: false,\r\n searchModalIsOpen: false,\r\n };\r\n }\r\n }\r\n};\r\n\r\nexport default quickSearchReducer;\r\n","type UserMenuStateType = {\r\n userMenuIsOpen: boolean;\r\n mountUserMenu: boolean;\r\n};\r\n\r\ntype UserMenuActionType = 'mountAndOpen' | 'closeUserMenu' | 'unMountUserMenu';\r\n\r\nconst userMenuReducer = (\r\n state: UserMenuStateType,\r\n action: UserMenuActionType\r\n) => {\r\n switch (action) {\r\n case 'mountAndOpen': {\r\n return {\r\n ...state,\r\n userMenuIsOpen: true,\r\n mountUserMenu: true,\r\n };\r\n }\r\n case 'closeUserMenu': {\r\n return {\r\n ...state,\r\n userMenuIsOpen: false,\r\n };\r\n }\r\n case 'unMountUserMenu': {\r\n return {\r\n ...state,\r\n mountUserMenu: false,\r\n userMenuIsOpen: false,\r\n };\r\n }\r\n }\r\n};\r\n\r\nexport default userMenuReducer;\r\n","import { useEffect, useState } from 'react';\r\nimport useSWR, { mutate } from 'swr';\r\nimport IKexCart from '../../Cart/Models/KexCart.interface';\r\nimport Fetcher from '../../Shared/Common/Fetcher';\r\nimport { IS_PRODUCTION_ENV } from '../../Shared/Configs/EnvConfig';\r\nimport { useAppSettingsData } from '../../Shared/Providers/AppSettingsProvider';\r\nimport {\r\n EventDispatcher,\r\n NOTIFY_ACTION,\r\n} from '../../Shared/Common/EventDispatcher';\r\nimport useCurrentPage from '../../Shared/Hooks/useCurrentPage';\r\n\r\nlet abortController: AbortController = new AbortController();\r\nlet hasMounted = false;\r\nlet cartUrl = '';\r\n\r\ntype CartReturnType = {\r\n cart: IKexCart;\r\n isLoading: boolean;\r\n};\r\n\r\nexport function GetCart(): CartReturnType {\r\n const tempCartObject: IKexCart = {} as IKexCart;\r\n const [cart, setCart] = useState(tempCartObject);\r\n const { pageCacheTime } = useAppSettingsData();\r\n const [isLoading, setIsLoading] = useState(true);\r\n const { languageRoute } = useAppSettingsData();\r\n const { pageId, channelId } = useCurrentPage();\r\n\r\n const litiumContext = JSON.stringify({\r\n currentPageSystemId: pageId,\r\n channelSystemId: channelId,\r\n });\r\n\r\n cartUrl = `/api/${languageRoute || 'en'}/Cart/GetCart`;\r\n\r\n const { data: fetchedCart } = useSWR(\r\n cartUrl,\r\n () => FetchCart(cartUrl, litiumContext),\r\n {\r\n initialData: undefined,\r\n revalidateOnFocus: IS_PRODUCTION_ENV,\r\n dedupingInterval: pageCacheTime,\r\n }\r\n );\r\n\r\n useEffect(() => {\r\n if (!hasMounted) {\r\n hasMounted = true;\r\n } else {\r\n if (fetchedCart) {\r\n setCart(fetchedCart);\r\n setIsLoading(false);\r\n }\r\n }\r\n }, [fetchedCart]);\r\n\r\n return { cart, isLoading };\r\n}\r\n\r\nexport async function RemoveFromCart(\r\n productCode: string,\r\n languageRoute: string,\r\n litiumContext: string\r\n) {\r\n cartUrl = `/api/${languageRoute || 'en'}/Cart/`;\r\n const res = await fetch(`${cartUrl}RemoveItem?code=${productCode}`, {\r\n method: 'POST',\r\n headers: {\r\n 'litium-request-context': litiumContext,\r\n },\r\n });\r\n if (res.ok) {\r\n const { cart, notification } = await res.json();\r\n EventDispatcher.dispatch(NOTIFY_ACTION, notification);\r\n mutate(`${cartUrl}GetCart`, cart, false);\r\n }\r\n}\r\n\r\nexport async function UpdateCart(\r\n productCode: string,\r\n quantity: number,\r\n languageRoute: string,\r\n litiumContext: string,\r\n setIsLoading?: (value: boolean) => void\r\n) {\r\n setIsLoading && setIsLoading(true);\r\n cartUrl = `/api/${languageRoute || 'en'}/Cart/`;\r\n const updateQuantity = quantity;\r\n const res = await fetch(\r\n `${cartUrl}Update?code=${productCode}&quantity=${updateQuantity}`,\r\n {\r\n method: 'POST',\r\n headers: {\r\n 'litium-request-context': litiumContext,\r\n },\r\n }\r\n );\r\n if (res.ok) {\r\n const { cart, notification } = await res.json();\r\n EventDispatcher.dispatch(NOTIFY_ACTION, notification);\r\n mutate(`${cartUrl}GetCart`, cart, false);\r\n setIsLoading && setIsLoading(false);\r\n return true;\r\n }\r\n setIsLoading && setIsLoading(false);\r\n return false;\r\n}\r\n\r\nexport async function ClearCart(\r\n languageRoute: string,\r\n litiumContext: string,\r\n setIsLoading?: (value: boolean) => void,\r\n openMiniCart?: () => void\r\n) {\r\n setIsLoading && setIsLoading(true);\r\n cartUrl = `/api/${languageRoute || 'en'}/Cart/`;\r\n const res = await fetch(`${cartUrl}ClearCart`, {\r\n method: 'POST',\r\n headers: {\r\n 'litium-request-context': litiumContext,\r\n },\r\n });\r\n if (res.ok) {\r\n const { cart, notification } = await res.json();\r\n EventDispatcher.dispatch(NOTIFY_ACTION, notification);\r\n openMiniCart && openMiniCart();\r\n mutate(`${cartUrl}GetCart`, cart, false);\r\n setIsLoading && setIsLoading(false);\r\n return true;\r\n }\r\n setIsLoading && setIsLoading(false);\r\n return false;\r\n}\r\n\r\nexport async function SetQuantity(\r\n productCode: string,\r\n quantity: number,\r\n languageRoute: string,\r\n litiumContext: string\r\n) {\r\n const updateQuantity = quantity;\r\n cartUrl = `/api/${languageRoute || 'en'}/Cart/`;\r\n const res = await fetch(\r\n `${cartUrl}SetQuantity?code=${productCode}&quantity=${updateQuantity}`,\r\n {\r\n method: 'POST',\r\n headers: {\r\n 'litium-request-context': litiumContext,\r\n },\r\n }\r\n );\r\n if (res.ok) {\r\n const { cart, notification } = await res.json();\r\n EventDispatcher.dispatch(NOTIFY_ACTION, notification);\r\n mutate(`${cartUrl}GetCart`, cart, false);\r\n }\r\n}\r\n\r\nexport function EmptyCart() {\r\n mutate(`${cartUrl}GetCart`, { numberOfItems: 0 } as IKexCart, false);\r\n}\r\n\r\nfunction FetchCart(url: string, litiumContext: string) {\r\n abortController.abort();\r\n abortController = new AbortController();\r\n const signal = abortController.signal;\r\n\r\n return Fetcher(\r\n url,\r\n signal,\r\n (data, resolve) => {\r\n resolve(data.cart);\r\n },\r\n litiumContext\r\n );\r\n}\r\n","import Fetcher from '../../Shared/Common/Fetcher';\r\nimport FullSearchResult from '../../Search/Models/FullSearchResult.interface';\r\nimport { canUseDOM } from '../../Shared/Common/Helpers';\r\nimport {\r\n EventDispatcher,\r\n ON_SEARCH,\r\n} from '../../Shared/Common/EventDispatcher';\r\n\r\nlet abortController: AbortController = new AbortController();\r\n\r\nexport enum SearchTypes {\r\n Products = 'getProduct',\r\n Content = 'getContent',\r\n Categories = 'getCategory',\r\n Sector = 'getSector',\r\n Documents = 'getDocument',\r\n Empty = '',\r\n}\r\n\r\nexport async function InitSearchResult(\r\n take: number,\r\n query: string,\r\n requestContext: string,\r\n languageRoute?: string\r\n) {\r\n const url = canUseDOM()\r\n ? `/api/${\r\n languageRoute || 'en'\r\n }/search/GetSearchResult?query=${query}&take=${take}&initialSearch=true&getProduct=true&getContent=true&sortBy=name`\r\n : '';\r\n\r\n return await FetchSearch(url, requestContext);\r\n}\r\n\r\nexport async function GetSearchResult(\r\n query: string,\r\n requestContext: string,\r\n languageRoute: string,\r\n take: number,\r\n type: SearchTypes,\r\n currentData?: FullSearchResult,\r\n skip?: number,\r\n sortBy?: string,\r\n sortDirection?: number,\r\n minPrice?: number,\r\n maxPrice?: number\r\n) {\r\n const url = canUseDOM()\r\n ? `/api/${languageRoute || 'en'}/search/GetSearchResult?query=${query}${\r\n take ? `&take=${take}` : ''\r\n }&skip=${skip}${sortBy ? `&sortBy=${sortBy}` : '&sortBy=name'}${\r\n sortDirection ? `&sortDirection=${sortDirection}` : ''\r\n }${`&priceFrom=${minPrice ? minPrice : 0}`}${\r\n maxPrice ? `&priceTo=${maxPrice}` : ''\r\n }`\r\n : '';\r\n\r\n const res = await FetchSearch(url, requestContext);\r\n if (res) {\r\n let newRes;\r\n switch (type) {\r\n case SearchTypes.Products:\r\n if (currentData) {\r\n newRes = {\r\n ...currentData,\r\n productSearchResult: {\r\n ...res.productSearchResult,\r\n items: [\r\n ...currentData.productSearchResult.items,\r\n ...res.productSearchResult.items,\r\n ],\r\n },\r\n };\r\n\r\n return newRes;\r\n }\r\n\r\n return res;\r\n case SearchTypes.Content:\r\n if (currentData) {\r\n newRes = {\r\n ...currentData,\r\n contentSearchResult: {\r\n ...res.contentSearchResult,\r\n items: [\r\n ...currentData.contentSearchResult.items,\r\n ...res.contentSearchResult.items,\r\n ],\r\n },\r\n };\r\n\r\n break;\r\n }\r\n\r\n return res;\r\n default:\r\n newRes = res;\r\n }\r\n return newRes;\r\n }\r\n}\r\n\r\nexport async function InitCategoryItems(\r\n pageId: string,\r\n take: number,\r\n litiumContext: string,\r\n languageRoute: string,\r\n queryString?: string\r\n) {\r\n const url = canUseDOM()\r\n ? `/api/${\r\n languageRoute || 'en'\r\n }/category/GetCategoryItems?pageId=${pageId}&sortBy=name&sortDirection=ascending&initialSearch=true${\r\n take ? `&take=${take}` : ''\r\n }${queryString ? `&${queryString}` : ''}`\r\n : '';\r\n\r\n return await FetchSearch(url, litiumContext);\r\n}\r\n\r\nexport async function GetCategoryItems(\r\n pageId: string,\r\n take: number,\r\n litiumContext: string,\r\n languageRoute: string,\r\n currentData?: FullSearchResult,\r\n skip?: number,\r\n sortBy?: string,\r\n sortDirection?: number,\r\n queryString?: string\r\n) {\r\n const url = canUseDOM()\r\n ? `/api/${\r\n languageRoute || 'en'\r\n }/category/GetCategoryItems?pageId=${pageId}&${\r\n take ? `take=${take}` : ''\r\n }${sortBy ? `&sortBy=${sortBy}` : '&sortBy=name'}${\r\n sortDirection ? `&sortDirection=${sortDirection}` : ''\r\n }${skip ? `&skip=${skip}` : ''}${queryString ? `&${queryString}` : ''}`\r\n : '';\r\n\r\n const res = await FetchSearch(url, litiumContext);\r\n\r\n if (res && currentData) {\r\n let newRes;\r\n newRes = {\r\n ...res,\r\n productSearchResult: {\r\n ...res.productSearchResult,\r\n items: [\r\n ...currentData.productSearchResult.items,\r\n ...res.productSearchResult.items,\r\n ],\r\n },\r\n };\r\n\r\n return newRes;\r\n }\r\n return res;\r\n}\r\n\r\nexport async function QuickSearch(url: string, litiumContext: string) {\r\n const urll = canUseDOM()\r\n ? `/api/en/search/QuickSearch?query=${url}&sortBy=name`\r\n : '';\r\n\r\n const res = await FetchSearch(urll, litiumContext);\r\n\r\n return res;\r\n}\r\n\r\nfunction FetchSearch(url: string, litiumContext: string) {\r\n abortController.abort();\r\n abortController = new AbortController();\r\n const signal = abortController.signal;\r\n EventDispatcher.dispatch(ON_SEARCH, true);\r\n\r\n return Fetcher(\r\n url,\r\n signal,\r\n (data, resolve) => {\r\n resolve(data);\r\n EventDispatcher.dispatch(ON_SEARCH, false);\r\n },\r\n litiumContext\r\n );\r\n}\r\n","import { useState, useEffect } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { IS_SERVER_CONTEXT } from '../Configs/EnvConfig';\r\n\r\nconst useOnScreen = ({ ref, rootMargin = '0px', once = true }) => {\r\n const [isIntersecting, setIntersecting] = useState(false);\r\n const [observerObject, setObserverObject] = useState(false);\r\n\r\n useEffect(() => {\r\n const elm = ref.current;\r\n const observer = new IntersectionObserver(\r\n ([entry]) => {\r\n setIntersecting(entry.isIntersecting);\r\n },\r\n {\r\n rootMargin,\r\n }\r\n );\r\n if (elm) {\r\n observer.observe(elm);\r\n }\r\n setObserverObject(observer);\r\n return () => {\r\n !Object.isEmpty(elm) && observer.unobserve(elm);\r\n };\r\n }, [ref, rootMargin]);\r\n\r\n if (\r\n once &&\r\n isIntersecting &&\r\n observerObject &&\r\n !Object.isEmpty(ref.current)\r\n ) {\r\n observerObject.unobserve(ref.current);\r\n }\r\n\r\n return IS_SERVER_CONTEXT ? true : isIntersecting;\r\n};\r\n\r\nuseOnScreen.propTypes /* remove-proptypes */ = {\r\n ref: PropTypes.shape({ current: PropTypes.element }),\r\n rootMargin: PropTypes.string,\r\n once: PropTypes.bool,\r\n};\r\n\r\nexport default useOnScreen;\r\n","import { useEffect } from 'react';\r\n\r\nconst useOutsideClick = (ref: React.RefObject, callback: () => void) => {\r\n const handleClick = (e: MouseEvent) => {\r\n if (ref.current && !ref.current.contains(e.target)) {\r\n callback();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n document.addEventListener('click', handleClick);\r\n\r\n return () => {\r\n document.removeEventListener('click', handleClick);\r\n };\r\n });\r\n};\r\n\r\nexport default useOutsideClick;\r\n"],"names":["Divider","_ref","type","marginTop","noMargin","css","rest","_objectWithoutProperties","_excluded","_jsx","BaseDivider","_objectSpread","styled","h","w","mt","mb","backgroundColor","variants","max","mx","vertical","my","header","opacity","headerLogo","true","m","StyledImage","src","_ref$alt","alt","onLoad","usePlaceHolder","_ref$title","title","_ref$lazy","lazy","ref","useRef","useOnScreen","color","_jsxs","Wrapper","children","Dot","display","fs","lineHeigh","animation","concat","animationFrames","animationDuration","timings","animationIterationCount","animationTimingFunction","animationFillMode","animationDelay","activeUseLockBodyScrolls","arguments","length","undefined","_ref$mediaQuery","mediaQuery","_ref$lock","lock","mediaQueryIsTrue","useMedia","useLayoutEffect","scrollPosition","rootEle","document","getElementById","id","Date","valueOf","window","pageYOffset","style","top","classList","add","idScrollPos","Object","isEmpty","remove","scrollTo","clickEvnt","useLockBodyScroll","OverlayDiv","onClick","position","bottom","left","right","zIndex","transitionProperty","transitionDuration","transitionTimingFunction","overlayFadeIn","_selectedLanguage$fla","_selectedLanguage$fla2","_selectedLanguage$fla3","languagePicker","languageRoutes","useCurrentPage","_useState","useState","_useState2","_slicedToArray","showDropdown","setShowDropdown","languagePickerRef","selectedLanguage","useOutsideClick","Root","LanguagePickerWrapper","SelectedLanguage","Flex","disableDropdown","flagImage","FlagImageWrapper","FlagImage","SelectedSpan","name","currency","ChevronIcon","size","rotateDown","rotateUp","transition","Dropdown","languages","map","language","_language$flagImage","_language$flagImage2","_language$flagImage3","countryCode","LinkWrapper","StyledLink","href","channelSystemId","url","e","preventDefault","location","onLanguageClick","ml","py","alignItems","userSelect","px","false","cursor","textDecoration","mr","Image","fontWeight","background","r","l","pb","pt","fontSize","lineHeight","letterSpacing","Menu","loadable","resolved","chunkName","isReady","props","key","resolve","__webpack_modules__","importAsync","requireAsync","_this","then","requireSync","__webpack_require__","UserMenu","MiniCart","DesktopHeader","_useHeaderData","useHeaderData","topLinks","logo","topLinkPrivate","topLinkCompany","topText","topResellerLink","placeholderPadding","setPlaceholderPadding","useEffect","headerElm","offsetHeight","_useReducer","useReducer","menuReducer","menuIsOpen","mountMenu","_useReducer2","_useReducer2$","menuDispatch","_useReducer3","miniCartReducer","miniCartIsOpen","mountMiniCart","_useReducer4","_useReducer4$","miniCartDispatch","_useReducer5","userMenuReducer","userMenuIsOpen","mountUserMenu","_useReducer6","_useReducer6$","userMenuDispatch","_useReducer7","quickSearchReducer","searchModalIsOpen","mountSearchModal","_useReducer8","_useReducer8$","quickSearchDispatch","menuBtnRef","miniCartBtnRef","userMenuBtnRef","placeholderStyle","paddingTop","_Fragment","Placeholder","HeaderTag","HeaderMain","toggleMenu","openMiniCart","openUserMenu","openQuickSearch","closeSearchModal","quickSearchIsOpen","MenuContainer","isOpen","onMenuClose","closeMiniCart","Overlay","t","maxWidth","_product$image","_product$image2","product","productCardClick","minimumSalesQuantity","_useState3","_useState4","artnoLabel","useTranslationData","_useCurrentPage","useAppSettingsData","languageRoute","channelId","pageId","JSON","stringify","currentPageSystemId","LeftSection","ImageWrapper","image","Attributes","brand","Brand","ProductName","ProductPrice","price","code","Code","KexLink","justifyContent","borderBottom","borderBottomWidth","borderBottomColor","flexDirection","gap","maxW","borderRadius","wh","minW","objectFit","textOverflow","overflow","whiteSpace","typeTimer","VerticalDivider","SearchResultModalContainer","b","overflowX","overflowY","maxH","boxShadow","ModalTabsWrapper","ShowAllButton","textTransform","ContentResultWrapper","gridColumnEnd","ProductsResultWrapper","ListItem","ProductListItem","ResultCategory","H2","margin","ResultList","listStyle","DotsWrapper","NoResultsWrapper","_searchResult$product","_searchResult$product2","_searchResult$product3","_searchResult$categor","_searchResult$categor2","_searchResult$content","_searchResult$categor3","_searchResult$content2","searchResult","currentSearchPhrase","setInputActive","onSearchResultChange","isSearching","setIsSearching","isDesktop","mediaQueryTypes","_useTranslationData","showAllSearchResultsLabel","pagesLabel","productsLabel","categoryLabel","noResultsLabel","onSearch","value","searchModalRef","noSearchResult","contentSearchResult","productSearchResult","categorySearchResult","planogramSearchResult","hasContentResults","EventDispatcher","ON_SEARCH","onResultItemClick","Dots","availableItems","items","QuickSearchProductCard","item","ON_MODAL_SEARCH","DesktopQuickSearch","_useAppSettingsData","searchPage","staticPages","startPageId","placeholderText","kexNavigate","useKexNavigate","query","setQuery","setSearchResult","_useState5","_useState6","isSearchInputActive","setIsSearchInputActive","_useState7","_useState8","setCurrentSearchPhrase","inputRef","useCallback","res","searchPhrase","requestContext","categorySystemId","doSearch","_inputRef$current","current","blur","onInputChange","clearTimeout","setTimeout","QuickSearch","catch","Container","isActive","InputField","onFocus","ON_SEARCH_MODAL_OPEN_CHANGE","onChange","currentTarget","onKeyDown","placeholder","SearchButton","StyledSearchIcon","CloseButton","_inputRef$current2","focus","onCrossClick","CloseIcon","QuickSearchModal","border","pl","SearchIcon","flexGrow","flexShrink","outline","borderLeft","React","forwardRef","loginPage","dontAllowLogin","loginText","profileText","cartText","privateText","companyText","resellerText","authenticated","useUserStateData","_GetCart","GetCart","cart","isLoading","nbrRef","numberOfItems","hasTopLinks","hasTopSection","TopSection","TopContentContainer","TopColumn","StyledKexLink","XhtmlArea","content","LanguagePicker","StyledContainer","TextButton","MenuIcon","Right","IconButton","UserMenuButton","IconArea","ProfileIcon","IconLink","noUnderline","CartIcon","CartItemsNotifier","BottomSection","topLink","text","fw","alignSelf","flexWrap","width","p","pxy","ContentContainer","g","flexFlow","outlineStyle","br","minH","state","action","abortController","AbortController","hasMounted","cartUrl","setCart","pageCacheTime","setIsLoading","litiumContext","_useSWR","useSWR","abort","signal","Fetcher","data","FetchCart","initialData","revalidateOnFocus","IS_PRODUCTION_ENV","dedupingInterval","fetchedCart","RemoveFromCart","_x","_x2","_x3","_RemoveFromCart","apply","_asyncToGenerator","_regeneratorRuntime","mark","_callee","productCode","_yield$res$json","notification","wrap","_context","prev","next","fetch","method","headers","sent","ok","json","NOTIFY_ACTION","mutate","stop","UpdateCart","_x4","_x5","_x6","_x7","_x8","_UpdateCart","_callee2","quantity","updateQuantity","_yield$res$json2","_context2","abrupt","ClearCart","_x9","_x10","_x11","_x12","_ClearCart","_callee3","_yield$res$json3","_context3","SetQuantity","_x13","_x14","_x15","_x16","_SetQuantity","_callee4","_yield$res$json4","_context4","SearchTypes","InitSearchResult","_InitSearchResult","take","canUseDOM","FetchSearch","GetSearchResult","_GetSearchResult","currentData","skip","sortBy","sortDirection","minPrice","maxPrice","newRes","t0","Products","Content","_toConsumableArray","InitCategoryItems","_x17","_x18","_x19","_x20","_InitCategoryItems","queryString","GetCategoryItems","_x21","_x22","_x23","_x24","_x25","_x26","_x27","_x28","_x29","_GetCategoryItems","_x30","_x31","_QuickSearch","_callee5","urll","_context5","_ref$rootMargin","rootMargin","_ref$once","once","isIntersecting","setIntersecting","observerObject","setObserverObject","elm","observer","IntersectionObserver","_ref2","entry","observe","unobserve","IS_SERVER_CONTEXT","callback","handleClick","contains","target","addEventListener","removeEventListener"],"sourceRoot":""}