{"version":3,"sources":["webpack:///./src/state/discover/selectors.js","webpack:///./src/blueprint/theme/icons2/arrow-up.svg","webpack:///./src/legacy/static/components/localization/shipping-country-select-dropdown.module.scss","webpack:///./src/legacy/static/components/localization/shipping-country-select-dropdown.jsx","webpack:///./src/legacy/static/components/localization/shipping-country-select.jsx","webpack:///./src/legacy/static/components/localization/localization-menu.jsx","webpack:///./src/constants/page-types.js","webpack:///./src/components/atoms/space/space.tsx","webpack:///./src/components/site-footer/footer-localization-link.module.scss","webpack:///./src/components/site-footer/footer-localization-link.tsx","webpack:///./src/utils/consent-service.js","webpack:///./src/components/site-footer/footer-links.module.scss","webpack:///./src/blueprint/theme/logos/appstore.svg?4f45","webpack:///./src/blueprint/theme/logos/googleplay.svg?0a84","webpack:///./src/components/site-footer/footer-links.jsx","webpack:///./src/blueprint/theme/icons2/network-fb.svg?a8d8","webpack:///./src/blueprint/theme/icons2/network-tt.svg","webpack:///./src/blueprint/theme/icons2/network-ig.svg","webpack:///./src/blueprint/theme/icons2/network-linkedin.svg","webpack:///./src/blueprint/theme/icons2/bankid.svg?2b30","webpack:///./src/blueprint/theme/logos/paypal.svg?65f3","webpack:///./src/components/site-footer/footer-partners.module.scss","webpack:///./src/components/site-footer/footer-partners.jsx","webpack:///./src/components/site-footer/dhl.svg","webpack:///./src/blueprint/theme/logos/visa.svg?84c0","webpack:///./src/blueprint/theme/logos/mastercard_vertical.svg?4461","webpack:///./src/blueprint/theme/logos/swish_horizontal.svg?16cb","webpack:///./src/blueprint/theme/logos/klarna.svg?124e","webpack:///./src/blueprint/theme/logos/paynova.svg?8d8d","webpack:///./src/blueprint/theme/logos/google-pay.svg?7ce0","webpack:///./src/blueprint/theme/logos/apple-pay.svg?fb48","webpack:///./src/components/site-footer/site-footer.module.scss","webpack:///./src/components/site-footer/footer-currency-link.module.scss","webpack:///./src/components/site-footer/footer-currency-link.jsx","webpack:///./src/apps/tradera/components/app-download-banner/phone-3x.png","webpack:///./src/apps/tradera/components/app-download-banner/app-download-banner.module.scss","webpack:///./src/apps/tradera/components/app-download-banner/app-download-banner.jsx","webpack:///./src/apps/tradera/components/app-download-banner/phone-mobile.png","webpack:///./src/components/site-footer/site-footer.jsx","webpack:///./src/helpers/filter-categories-helper.ts","webpack:///./src/components/international-identification-modal/messaging-international-identification-modal.jsx","webpack:///./src/blueprint/theme/icons2/filter.svg","webpack:///./src/blueprint/theme/icons2/home.svg","webpack:///./src/blueprint/theme/icons2/store.svg","webpack:///./src/components/separator/separator.module.scss","webpack:///./src/components/separator/separator.tsx","webpack:///./src/blueprint/theme/icons/arrow-right.svg","webpack:///./src/blueprint/theme/icons/load.svg","webpack:///./src/blueprint/theme/icons-colored/message-icon.svg","webpack:///./src/components/messaging/messaging-modal.module.scss","webpack:///./src/components/messaging/messaging-modal.tsx","webpack:///./src/blueprint/theme/icons2/translate.svg","webpack:///./src/components/form-controls/search-input/search-input.tsx","webpack:///./src/blueprint/theme/icons2/winning.svg","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/email-notification-tooltip.module.scss","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/email-notification-tooltip.tsx","webpack:///./src/legacy/static/components/search/helpers/suggestions-api.js","webpack:///./src/blueprint/theme/icons2/unsold.svg","webpack:///./src/legacy/static/utils/on-ready.js","webpack:///./src/blueprint/theme/icons2/bid-lost.svg","webpack:///./src/components/site-header/localization-link.jsx","webpack:///./src/blueprint/theme/logos/tradera_symbol.svg","webpack:///./src/components/form-controls/base-input-wrapper/base-input-wrapper.tsx","webpack:///./src/blueprint/theme/icons2/user-fill.svg","webpack:///./src/hooks/use-cookie-util.js","webpack:///./src/blueprint/theme/icons2/bookmark-fill.svg","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/save-search-hint-tooltip.jsx","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/save-search-button.module.scss","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/save-search-button.tsx","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search/utils.js","webpack:///./src/blueprint/theme/icons2/category-currency.svg","webpack:///./src/blueprint/theme/icons2/category-home-household.svg","webpack:///./src/blueprint/theme/icons2/auction.svg","webpack:///./src/blueprint/theme/icons2/search.svg","webpack:///./src/blueprint/theme/icons2/sold.svg","webpack:///./src/blueprint/theme/icons2/pen.svg","webpack:///./src/state/categories/actions.js","webpack:///./src/blueprint/theme/icons2/category-charity.svg","webpack:///./src/blueprint/theme/icons2/heart.svg","webpack:///./src/utils/format-time-left.js","webpack:///./src/blueprint/theme/icons2/alert.svg","webpack:///./src/blueprint/theme/icons2/bookmark.svg","webpack:///./src/components/international-identification-modal/mit-id-logo.module.scss","webpack:///./src/components/international-identification-modal/mit-id-logo.jsx","webpack:///./src/blueprint/theme/icons2/category-shoes.svg","webpack:///./src/blueprint/theme/icons2/user.svg","webpack:///./src/components/messaging/get-messaging-url.js","webpack:///./src/hooks/use-qualtive.js","webpack:///./src/components/wish-list-item/wish-list-item.module.scss","webpack:///./src/components/wish-list-item/item-states.js","webpack:///./src/components/wish-list-item/badge.jsx","webpack:///./src/legacy/static/components/shimmer/shimmer.jsx","webpack:///./src/components/wish-list-item/end-time-label.jsx","webpack:///./src/components/wish-list-item/wish-list-button.jsx","webpack:///./src/components/wish-list-item/action-button.jsx","webpack:///./src/components/wish-list-item/item-details-desktop.jsx","webpack:///./src/components/wish-list-item/item-details-mobile.jsx","webpack:///./src/components/wish-list-item/wish-list-item.jsx","webpack:///./src/components/form-controls/base-input-field/base-input-field.module.scss","webpack:///./src/components/form-controls/base-input-field/base-input-field.tsx","webpack:///./src/blueprint/theme/icons2/category-accessories.svg","webpack:///./src/components/side-menu/side-menu.module.scss","webpack:///./src/components/side-menu/side-menu.jsx","webpack:///./src/legacy/static/components/localization/currency-select.module.scss","webpack:///./src/legacy/static/components/localization/currency-select.tsx","webpack:///./src/state/personalisation/actions.js","webpack:///./src/state/personalisation/api.js","webpack:///./src/blueprint/theme/icons2/settings.svg","webpack:///./src/blueprint/theme/icons2/pen-write.svg","webpack:///./src/blueprint/theme/icons2/logout.svg","webpack:///./src/blueprint/theme/icons/warning.svg","webpack:///./src/blueprint/theme/icons2/wallet.svg","webpack:///./src/legacy/static/components/search/components/highlight-word.jsx","webpack:///./src/legacy/static/components/search/components/suggestion-list-items.jsx","webpack:///./src/legacy/static/components/search/components/search-suggestion-section.module.scss","webpack:///./src/legacy/static/components/search/components/search-suggestion-section.jsx","webpack:///./src/legacy/static/components/search/components/search-suggestion.jsx","webpack:///./src/components/site-header/hover-menu/constants.ts","webpack:///./src/hooks/use-on-mount.js","webpack:///./src/legacy/static/packages/debounce.js","webpack:///./src/blueprint/theme/icons/close-narrow.svg","webpack:///./src/components/form-controls/radio-switch.tsx","webpack:///./src/blueprint/theme/icons2/chat.svg","webpack:///./src/legacy/static/components/localization/language-select.module.scss","webpack:///./src/legacy/static/components/localization/translation-preferred-menu-item.module.scss","webpack:///./src/legacy/static/components/localization/translation-preferred-menu-item.jsx","webpack:///./src/legacy/static/components/localization/language-select.tsx","webpack:///./src/legacy/static/utils/environment.js","webpack:///./src/components/application-error-boundary/application-error-boundary.jsx","webpack:///./src/backend/utils/error.js","webpack:///./src/blueprint/theme/icons2/hot.svg","webpack:///./src/hooks/use-navigation.js","webpack:///./src/blueprint/theme/icons2/heart-fill.svg","webpack:///./src/blueprint/theme/icons2/check.svg","webpack:///./src/blueprint/theme/icons2/category-clothes.svg","webpack:///./src/blueprint/theme/icons2/list.svg","webpack:///./src/components/international-identification-modal/mit-id.jsx","webpack:///./src/blueprint/theme/icons2/arrow-down.svg","webpack:///./src/hooks/use-is-mounted.ts","webpack:///./src/blueprint/theme/icons2/valuation.svg","webpack:///./src/localization/map-currency-code-to-country-code.js","webpack:///./src/blueprint/theme/icons2/currency.svg","webpack:///./src/utils/script.js","webpack:///./src/hooks/use-is-loggedin.js","webpack:///./src/hooks/use-ticker.js","webpack:///./src/hooks/use-countdown.js","webpack:///./src/constants/surveys.ts","webpack:///./src/components/international-identification-modal/document-scanning.module.scss","webpack:///./src/components/international-identification-modal/document-scanning.jsx","webpack:///./src/components/international-identification-modal/international-identification-modal.module.scss","webpack:///./src/components/international-identification-modal/card-verification.module.scss","webpack:///./src/components/international-identification-modal/card-verification.jsx","webpack:///./src/components/international-identification-modal/signicat-scanning.jsx","webpack:///./src/components/international-identification-modal/international-identification-modal.jsx","webpack:///./src/blueprint/theme/icons2/message.svg","webpack:///./src/legacy/static/components/search/components/search-input.jsx","webpack:///./src/hooks/use-is-tablet.js","webpack:///./src/blueprint/theme/icons2/time.svg","webpack:///./src/legacy/static/packages/analytics.ts","webpack:///./src/blueprint/theme/icons2/dropdown.svg","webpack:///./src/blueprint/theme/icons2/rating-positive.svg","webpack:///./src/blueprint/theme/logos/tradera-app-logo.svg","webpack:///./src/blueprint/theme/icons2/cart.svg","webpack:///./src/components/site-header/cart-link.jsx","webpack:///./src/components/site-header/dropdown-menu-burger.jsx","webpack:///./src/components/site-header/dropdown-menu-item-separator.jsx","webpack:///./src/components/site-header/dropdown-menu-item-button.jsx","webpack:///./src/components/site-header/dropdown-menu-item.tsx","webpack:///./src/components/site-header/dropdown-menu-item-expandable.jsx","webpack:///./src/blueprint/theme/icons2/branded-ending.svg","webpack:///./src/blueprint/theme/icons2/branded-recommended.svg","webpack:///./src/blueprint/theme/icons2/inspiration.svg","webpack:///./src/hooks/use-menu-height-fix.ts","webpack:///./src/components/site-header/seo-links.jsx","webpack:///./src/components/site-header/dropdown-menu-content.tsx","webpack:///./src/components/site-header/dropdown-menu.jsx","webpack:///./src/components/site-header/sign-up-link.jsx","webpack:///./src/components/push-notification-modal/push-notification-modal.jsx","webpack:///./src/components/push-notification-modal/push-splash-icon.svg","webpack:///./src/components/push-notification-modal/push-wishlist-icon.svg","webpack:///./src/components/push-notification-modal/push-selling-icon.svg","webpack:///./src/blueprint/theme/icons2/buy.svg","webpack:///./src/components/site-header/hover-menu/hover-menu-item.module.scss","webpack:///./src/components/site-header/hover-menu/hover-menu-item.jsx","webpack:///./src/components/site-header/hover-menu/hover-menu-separator.module.scss","webpack:///./src/components/site-header/hover-menu/hover-menu-separator.jsx","webpack:///./src/components/site-header/site-header.analytics.js","webpack:///./src/components/site-header/buy-menu.jsx","webpack:///./src/components/site-header/buying-link.jsx","webpack:///./src/components/site-header/how-tradera-works.jsx","webpack:///./src/components/site-header/new-listing-link.jsx","webpack:///./src/components/profile-menu/expandable-localization-menu-item.jsx","webpack:///./src/components/profile-menu/expandable-currency-menu-item.jsx","webpack:///./src/components/profile-menu/profile-menu-alerts.jsx","webpack:///./src/components/profile/profile-card.jsx","webpack:///./src/blueprint/theme/icons2/date.svg","webpack:///./src/components/profile-menu/profile-menu-content.jsx","webpack:///./src/components/profile-menu/chat-bot-loader.js","webpack:///./src/components/profile-menu/sign-in-menu-content.jsx","webpack:///./src/components/profile-menu/profile-menu.tsx","webpack:///./src/components/site-header/profile.tsx","webpack:///./src/components/site-header/profile-link.tsx","webpack:///./src/components/site-header/profile-menu-link.jsx","webpack:///./src/components/site-header/search-button.jsx","webpack:///./src/components/site-header/watch-list-menu.jsx","webpack:///./src/components/site-header/wishlist-link.jsx","webpack:///./src/components/site-header/ongoing-auctions-link.jsx","webpack:///./src/components/site-header/sell-menu.jsx","webpack:///./src/components/site-header/selling-link.jsx","webpack:///./src/components/toasts/tradera-toast-container.jsx","webpack:///./src/components/site-header/currency-link.jsx","webpack:///./src/apps/tradera/components/wish-list-side-sheet/wish-list-side-sheet.module.scss","webpack:///./src/apps/tradera/components/start-page/wish-list/wish-list-empty.jsx","webpack:///./src/apps/tradera/components/wish-list-side-sheet/wish-list-items.jsx","webpack:///./src/apps/tradera/components/wish-list-side-sheet/use-fetch-wish-list.js","webpack:///./src/apps/tradera/components/wish-list-side-sheet/wish-list-side-sheet.jsx","webpack:///./src/components/site-header/localization-region-picker-image.svg","webpack:///./src/localization/map-country-code-to-currency-code.js","webpack:///./src/components/site-header/localization-region-picker.jsx","webpack:///./src/hooks/use-user-agent.js","webpack:///./src/utils/is-crawler-bot.js","webpack:///./src/components/loader/loader-line.module.scss","webpack:///./src/components/loader/loader-line.jsx","webpack:///./src/apps/nextweb/hooks/use-viewport-width.js","webpack:///./src/components/site-header/site-header.jsx","webpack:///./src/blueprint/theme/icons2/category-antiques-design.svg","webpack:///./src/blueprint/theme/icons2/star.svg","webpack:///./src/components/site-header/hover-menu/hover-menu.module.scss","webpack:///./src/blueprint/theme/icons2/info.svg","webpack:///./src/legacy/static/components/search/helpers/helper.js","webpack:///./src/legacy/static/components/search-category/search-category.module.scss","webpack:///./src/legacy/static/components/search-category/search-category.jsx","webpack:///./src/legacy/static/components/search/search.jsx","webpack:///./src/legacy/static/components/search/helpers/search.analytics.js","webpack:///./src/components/flag/flag.tsx","webpack:///./src/blueprint/theme/icons2/plus-outline.svg","webpack:///./src/blueprint/theme/icons2/write.svg","webpack:///./src/components/site-header/hover-menu/hover-menu.jsx","webpack:///./src/blueprint/theme/icons2/sale.svg","webpack:///./src/blueprint/theme/logos/tradera_new.svg","webpack:///./src/components/atoms/text/text.module.scss","webpack:///./src/components/atoms/text/text.tsx","webpack:///./src/blueprint/theme/icons2/package.svg","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search-modal.module.scss","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search-modal.jsx","webpack:///./src/apps/tradera/components/discover/components/search-results/save-search.png","webpack:///./src/blueprint/theme/icons2/document.svg","webpack:///./src/hooks/use-tw-growth-book.ts","webpack:///./src/components/growth-book/growth-book.tsx","webpack:///./src/components/breakpoint/breakpoint.tsx","webpack:///./src/utils/location.js","webpack:///./src/blueprint/theme/icons2/category-art.svg","webpack:///./src/blueprint/theme/icons2/category-beauty-care.svg","webpack:///./src/blueprint/theme/icons2/category-books-magazines.svg","webpack:///./src/blueprint/theme/icons2/category-childrens-clothing-shoes.svg","webpack:///./src/blueprint/theme/icons2/category-childrens-items.svg","webpack:///./src/blueprint/theme/icons2/category-collectibles.svg","webpack:///./src/blueprint/theme/icons2/category-computers-accessories.svg","webpack:///./src/blueprint/theme/icons2/category-construction-tools.svg","webpack:///./src/blueprint/theme/icons2/category-consumer-electronics.svg","webpack:///./src/blueprint/theme/icons2/category-dvd-videos.svg","webpack:///./src/blueprint/theme/icons2/category-garden-plants.svg","webpack:///./src/blueprint/theme/icons2/category-hobby.svg","webpack:///./src/blueprint/theme/icons2/category-jewlry-gemstones.svg","webpack:///./src/blueprint/theme/icons2/category-mobile-phone-telecommunications.svg","webpack:///./src/blueprint/theme/icons2/category-music.svg","webpack:///./src/blueprint/theme/icons2/category-other.svg","webpack:///./src/blueprint/theme/icons2/category-photo-cameras-optics.svg","webpack:///./src/blueprint/theme/icons2/category-postcards-pictures.svg","webpack:///./src/blueprint/theme/icons2/category-sports-leisure.svg","webpack:///./src/blueprint/theme/icons2/category-stamp.svg","webpack:///./src/blueprint/theme/icons2/category-tickets-travel.svg","webpack:///./src/blueprint/theme/icons2/category-toys-childrens-items.svg","webpack:///./src/blueprint/theme/icons2/category-watches.svg","webpack:///./src/blueprint/theme/icons2/category-vehicles-boats-parts.svg","webpack:///./src/blueprint/theme/icons2/category-video-computer-games.svg","webpack:///./src/blueprint/theme/icons2/category-handmade-applied-arts.svg","webpack:///./src/helpers/category-icon-helper.js"],"names":["selectDisplayCountyFilter","state","isSwedenCountryCodeOrUndefined","selectShippingRegionCountryCodeIso2","selectPageType","selectSaveSearchData","createSelector","discover","_ref","queryParams","currentCategoryId","headerText","totalItems","isSavedSearchEmailEnabled","searchName","q","categoryId","selectItemConditionFilter","filters","itemCondition","selectSellerTypeFilter","sellerType","selectCountyFilter","county","selectItemTypeFilter","itemType","selectSortByFilter","sortBy","selectAllowedBuyerRegionsFilter","allowedBuyerRegions","selectItemStatusFilter","itemStatus","environment","featureSwitches","_objectSpread","options","flatMap","option","value","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","styles","props","_objectWithoutProperties","_excluded","React","createElement","viewBox","xmlns","clipRule","d","fillRule","ShippingCountrySelectDropdown","_shippingCountries$fi","shippingCountries","selectedShippingCountryCodeIso2","onSelect","className","_ref$itemsBeforeScrol","itemsBeforeScrollCount","shippingCountryPlaceholder","relative","_ref$style","style","t","useTranslator","_useState2","_slicedToArray","useState","search","setSearch","_useState4","isSearchEnabled","setIsSearchEnabled","includesSearch","v","toLowerCase","includes","filteredShippingCountries","filter","_ref2","name","countryCodeIso2","listLength","listStyle","height","Math","min","width","zIndex","Row","_ref3","index","_jsxs","onClick","children","_jsx","Flag","_Fragment","autoFocus","type","placeholder","autoComplete","onChange","e","onBlur","setTimeout","Button","theme","CloseIcon","variant","find","x","ArrowDownIcon","classNames","onMouseDown","preventDefault","AutoSizer","disableWidth","_ref4","FixedSizeList","itemCount","itemSize","PlainShippingCountrySelect","getAvailableShippingCountries","shippingCountry","shippingCountryCodes","updateShippingRegion","showShippingCountries","isLoadingAvailableShippingCountries","useMemo","map","mapCountryCodeToCountryKey","useEffect","Load","propTypes","mapDispatchToProps","ShippingCountrySelect","connect","selectShippingCountry","selectAvailableShippingCountryCodes","selectIsLoadingAvailableShippingCountries","selectHasLoadedAvailableShippingCountries","LocalizationMenu","showRegionSelection","LanguageSelect","title","BRAND_PAGE","BRAND_LIST_PAGE","CATEGORY_LIST","CATEGORY_RESULT_PAGE","CUSTOM_RESULT_PAGE","DEFAULT","ENDLESS_RECOMMENDATIONS_PAGE","ERROR_PAGE","FAVOURITE_SELLERS_PAGE","HOW_TO_BUY","HOW_TO_SELL","MY_TRADERA_PAGE","MY_SHIPPING_COMPLAINT","PROFILE_PAGE","REPORT_ITEM_PAGE","SEARCH_RESULT_PAGE","START_PAGE","SYI_PAGE","TRADERA_SHOP_PAGE","VALUATION","VIEW_ITEM_PAGE","Space","polyRef","forwardRef","ref","_ref$as","as","Component","_ref$direction","direction","alignProp","align","_ref$gap","gap","_ref$wrap","wrap","_ref$inline","inline","justify","rest","gapClass","Array","isArray","FooterLocalizationLink","isLocalizationSettingsVisible","setLocalizationSettingsVisible","useAppSelector","selectShowRegionSelection","onMouseLeave","HoverMenu","showMenu","icon","TranslateIcon","shouldBeVisible","visible","label","GtmService","trackAction","trackAnalytics","DropdownIcon","constructor","openUi","window","__tcfapi","FooterLinks","links","callerId","language","useCurrentLanguage","linksToRender","link","includedLanguages","lang","areLanguageCodesIso2Equal","text","href","undefined","toUpperCase","BuyingLinks","toLocalizedUrl","useUrlLocalizer","availableLanguageCodesIso2","useSelector","selectAvailableLanguageCodesIso2","SV","DA","SellingLinks","isPennybridgeCharitiesEnabled","useIsFeatureEnabled","DE","EN","Boolean","ContactAndHelpLinks","isQuantcastConsentEnabled","rel","FR","NL","event","ConsentService","InformationLinks","isSwedishOrUndefined","SocialLinks","_useAppDownloadLink","useAppDownloadLink","appStore","googlePlay","src","loading","alt","MitIdLogo","color","AppstoreLogo","appName","GooglePlayLogo","FooterPartners","partners","containerCss","shouldRender","partner","FooterCurrencyLink","isCurrencySettingsVisible","setCurrencySettingsVisible","CurrencySelect","onCurrencySelected","inProfileMenu","brandedText","CurrencyIcon","AppDownloadBanner","isDesktop","useIsDesktop","trackClick","store","srcSet","PhoneLg","Heading","size","branded","Trans","i18nKey","components","AppstoreBadge","GooglePlayBadge","RatingStars","rating","dark","pageType","page","isCouponationNavLinkEnabled","_useInView2","useInView","threshold","symbolRef","inView","showAppDownloadBanner","Date","getFullYear","TraderaSymbol","filterCategories","categories","slice","category","_category$categoryNod","categoryNodes","node","MessagingInternationalIdentificationModal","onCloseModal","onVerifyComplete","InternationalIdentificationModal","purpose","introText","heading","VerticalSeparator","_ref$thick","thick","HorizontalSeparator","_ref2$thick","fill","POST_MESSAGE_TYPE_PREFIX","CLOSE_EVENT","OPEN_INTERNATIONAL_IDENTIFICATION_MODAL_EVENT","MessageEventSchema","z","discriminatedUnion","object","literal","MessagingModal","onModalClosed","recipientId","item","participatingProp","participating","isContactHighestBidder","isMobile","useIsMobile","showInternationalIdentificationModal","setShowInternationalIdentificationModal","MESSAGING_REMOTE_URL","getMessagingUrl","_React$useState2","setParticipating","iframeRef","useRef","handleMessage","useCallback","indexOf","origin","parsed","parse","data","error","handleClose","current","contentWindow","focus","addEventListener","removeEventListener","checkUserMessagingParticipation","then","catch","logger","isContactingHighestBidderButNotParticipating","modalTitle","maxWidth","DialogModal","onDismiss","css","HeaderWithCloseButton","onClose","border","_iframeRef$current","_iframeRef$current$co","location","reload","ContactHighestBidderNotParticipatingMessage","NotParticipatingMessage","Loader","LoadIcon","MessageIcon","Text","fluid","seller","alias","ArrowRightIcon","iconConfig","position","transaction","purchaseOrderId","SearchInput","hint","help","_ref$collapsed","collapsed","_ref$autoComplete","allowClear","toString","localValue","setLocalValue","handleOnChange","button","handleClear","SearchIcon","BaseInputWrapper","BaseInputField","isInvalid","inputMode","suffix","EmailNotificationTooltipPosition","EmailNotificationToolTip","searchId","center","_ref$position","Bottom","isEmailChecked","setIsEmailChecked","toggleEmailNotification","useToggleEmailNotificationMutation","boxClass","cn","Left","Top","htmlFor","id","isEmailEnabled","savedSearchDto","sendMail","unwrap","showErrorToast","searchGtm","checked","useGetSuggestions","automaticTranslationPreferred","selectAutomaticTranslationPreferred","params","getSuggestions","languageCodeIso2","async","_ref$searchTerm","searchTerm","_ref$limitPrevious","limitPrevious","_ref$enablePrevious","enablePrevious","_ref$enableSuggestion","enableSuggestions","_ref$recentSearches","recentSearches","generateSuggestionId","term","suggestedResults","searches","shops","charities","campaigns","previousSearchResults","filteredRecentSearches","getSuggestionsFromBackend","withDuplicates","concat","uniqueMap","Map","forEach","has","set","uniqueResults","from","values","shopResults","memberId","urlName","inSPA","charitiesResults","slug","capaignId","campaignId","normalizeSearches","reduce","acc","push","query","_response$data","webApiClient","get","_response$data$campai","_response$data$shops","_response$data$charit","message","onDOMContentLoaded","callback","document","readyState","onWindowLoad","LocalizationLink","mapStateToProps","_ref2$hideRegionSelec","hideRegionSelection","preferredLanguage","selectPreferredLanguage","showLocalizationRegionPicker","selectShowLocalizationRegionPicker","mouseOver","mouseOut","transparentHeader","_ref$showIconAndTextI","showIconAndTextInsteadOfFlag","countryCode","getCountryCodeForFlagFromLanguage","onMouseEnter","HOVER_MENUS","LOCALIZATION","tabIndex","hoverMenuStyles","alignRight","_ref$styles","isVisibleNode","textBelow","hasLabelOrHelp","font","fontWeight","role","useCookieUtil","serverCookies","_state$request","request","cookies","getCookie","isServer","getCookieFromBrowser","setCookie","cookie","Error","setCookieToBrowser","CookieUtil","SaveSearchHintTooltip","BookmarkFillIcon","SaveSearchButton","_ref$type","_ref$successToast","successToast","_ref$showHint","showHint","saveText","_ref$emailDefaultOff","emailDefaultOff","onSaveClick","_ref$gaActionString","gaActionString","_ref$id","_ref$isVertical","isVertical","_ref$containerClassNa","containerClassName","_ref$iconColor","iconColor","_ref$emailTooltipPosi","emailTooltipPosition","dispatch","useAppDispatch","isSaved","setIsSaved","savedSearchId","setSavedSearchId","_useState6","showEmailTooltip","setShowEmailTooltip","_useState8","showHintTooltip","setShowHintTooltip","isLoggedIn","useIsLoggedIn","saveSearchData","localStore","getItem","STORAGE_KEYS","SAVE_SEARCH_HINT","STORAGE_VALUES","SAVE_SEARCH_HINT_CLICKED","_useSaveSearchMutatio2","useSaveSearchMutation","fixedCacheKey","saveSearch","saveSearchResponse","saveStatus","status","saveSearchResponseData","isSavePending","_useRemoveSavedSearch2","useRemoveSavedSearchesMutation","removeSavedSearches","_useRemoveSavedSearch3","isRemovePending","isLoading","removeSearchResponseData","hasPendingRequest","hideHint","setItem","handleSaveSearch","handleLogin","redirectUrl","encodeURIComponent","pathname","toSearchString","signIn","savedQueryName","storeSavedSearch","showSuccessToast","buttonTheme","hideText","hideIcon","iconClassName","buttonClass","containerClass","centerTooltip","tooltipPosition","saveSearchHintTooltipTitle","saveSearchHintTooltipText","handleClick","ids","removeSavedSearchFromStorage","BookmarkIcon","stroke","fetchCategoryList","requestCategoryList","touchWebClient","cancelTokenId","results","receiveCategoryList","API_ERRORS","VERSION_MISMATCH","CANCELLED","handleCategoryListError","HOUR_IN_SECONDS","formatVipTimeLeft","secondsLeft","formattedTimeLeft","_getTimeSpanParts","getTimeSpanParts","endUnit","TIME_SPAN_UNITS","HOURS","days","hours","count","hoursOrEmpty","trim","_getTimeSpanParts2","startUnit","MINUTES","minutes","minutesOrEmpty","_getTimeSpanParts3","SECONDS","seconds","formatItemCardTimeLeft","endDate","serverDate","dayjs","Number","isInteger","formatEndDate","ifValueNotZeroShowLabel","floor","_ref$className","logoClassName","LOCALES","sv","en","da","de","mapLocale","useQualtive","customAttributes","isQualtiveFeatureToggleEnabled","_state$environment","_state$environment$fe","_state$member","member","_state$language","_state$language$prefe","preferred","isQualtiveEnabled","GdprSettings","isFunctionalEnabled","config","locale","user","openQualtiveModal","survey","translate","_window$qualtive","surveyOptions","darkMode","qualtive","loadScript","present","withQualtive","WrappedComponent","WithQualtive","_useQualtive","displayName","itemStates","BadgeInner","Badge","itemState","Shimmer","memo","EndTimeLabel","time","formatUtcDateInSwedishTimeZone","useFormatUtcDateInSwedishTimeZone","_useCountdown","useCountdown","timeLeftText","isCountdownDone","isCountdownEnabled","isTimeLeftBelowWarningLimit","timeText","WishListButton","disabled","toggled","iconClasses","combinedClassName","HeartFilledIcon","ActionButton","useDispatch","trackGoToVip","itemUrl","itemActions","itemId","ItemDetailsDesktop","existsInState","onGoToVipClick","localizedPriceFormatter","useLocalizedPriceFormatter","isShopItem","itemTypes","SHOP_ITEM","shortDescription","PURE_BIN","totalBids","maxBidAmount","amount","sellerMemberId","sellerAlias","showText","onWishListButtonClick","price","preferredShipping","cost","ItemDetailsMobile","WishListItem","_ref$onGoToVipClick","onLoad","imageUrl","replace","hidePlaceholderOnFocus","SideMenu","fromLeft","show","_ref$allowFullScreen","allowFullScreen","_ref$width","TransitionGroup","component","mountOnEnter","EnterFade","in","Overlay","top","closeModalCallback","EnterFrom","RemoveScroll","forwardProps","defaultProps","currencies","selectCurrencies","preferredCurrency","selectPreferredCurrency","code","shortName","longName","setPreferredCurrencyThunk","handleOnClick","mapCurrencyCodeToCountryCode","CheckIcon","fetchPersonalisedSearchesIfNeeded","getState","personalisation","setPersonalisedSearchesStatus","searchesResult","axiosWithTokenRefresh","ENDPOINTS","PERSONALISED_SUGGESTIONS","headers","defaultJsonRequestHeaders","handleError","logError","response","newStatus","setPersonalisedSearches","items","addRecentSearches","growthbook","prettySearchTerm","existingSearch","searchQueryParams","stripPaginationFromQueryParameters","stripSaveSearchNameFromQueryParameters","getFeatureValue","showSaveSearchBanner","dismissCount","parseInt","cookieUtil","readCookie","SAVE_SEARCH_MODAL_DISMISSED","openModal","modalId","SAVE_SEARCH_MODAL_ID","setRecentSearchLocalStorage","setRecentSearches","removeRecentSearches","removeRecentSearchLocalStorage","removeRecentSearch","HighlightWord","_ref$query","split","beforeQuery","afterQuery","hasSplitQuery","evt","fixFlexHeightInIpadMini2Style","flexBasis","PreviousSearchesListItem","changeSearchTerm","isSelected","onPreviousSearchRemoved","selectedCategoryId","searchString","ALink","useLink","TimeIcon","CloseNarrowIcon","SearchesSuggestionsListItem","ShopsSuggestionsListItem","suggestionUrl","CharitiesSuggestionsListItem","CampaignSuggestionsListItem","_ref5","headline","AdvancedSearchListItem","_ref6","FilterIcon","SellerSearchListItem","_ref7","searchUrl","StoreIcon","SearchSuggestionSection","suggestions","previousSearches","entry","trendingSearchesItems","useGetTrendingSearchesQuery","trendingSearches","url","mapTrendingSearchesToTags","previousSearchesEmpty","trendingSearchesEmpty","sectionEmpty","removePreviousSearch","which","KEYCODE","ENTER","stopPropagation","previousSearch","onKeyDown","trendingSearch","SearchSuggestion","onChangeSearchTerm","selectedIndex","searchSuggestionsElementRef","setIsSearchInputFocused","currentTarget","contains","relatedTarget","ESC","componentProps","JSON","stringify","WISHLIST","SELL","BUY","CURRENCY","HOW_TRADERA_WORKS","useOnMount","fn","useOnHydration","debounce","func","wait","immediate","timeout","context","args","callNow","clearTimeout","RadioSwitch","defaultChecked","_ref$dynamic","dynamic","otherProps","classnames","flexGrow","TranslationPreferredMenuItem","selectIsLoggedIn","post","isAutomaticTranslationPreferred","setAutomaticTranslationPreferred","availableLanguages","selectAvailableLanguages","languages","setPreferredLanguage","SURVEYS","isDev","process","warnIfDevBuild","moduleName","console","log","onModuleLoaded","isModuleLoaded","body","getAttribute","MutationObserver","mutationsList","attributeName","observe","attributes","Logger","ApplicationErrorBoundary","componentDidCatch","onError","_ref$capture","capture","loggingContext","errorMessage","getErrorMessage","render","_this$props","fallback","Sentry","useNavigation","isNextDataFetchingDisabled","nextRouter","useRouter","touchwebHistory","useHistory","isNextJs","shallow","refresh","STATE","handleMitIdQueryParam","identifiedQueryParam","publishAction","errorAction","memberIdentificationClient","command","errors","MitId","onVerifyCompleteIncoming","onVerifyCancelIncoming","onVerifyCancel","useCallbackWrapper","MitIdDesktop","MitIdMobile","callbackRef","setIsLoading","abortControllerRef","AbortController","selectPreferredLanguageCode","verifyingState","setVerifyingState","abortController","poll","mitIdWindow","Promise","resolve","reject","closed","userClosedWindow","signal","result","isCompleted","close","delay","windowHeight","innerHeight","windowWidth","innerWidth","screenY","left","screenX","open","abort","LocalLoader","a","useIsMounted","isMountedDirectly","isMounted","currencyCode","sek","usd","jpy","gbp","nok","eur","dkk","optionsWithDefaults","dataAttributes","querySelector","script","timeoutTimer","onload","onerror","head","removeChild","attribute","keys","setAttribute","appendChild","intervals","endDateStr","formatTimeLeft","warningLimit","setIsCountdownDone","setTimeLeftText","setIsCountdownEnabled","setIsTimeLeftBelowWarningLimit","previousAdjustment","_useState10","synchronizedEndDateStr","setSynchronizedDateStr","preferredLanguageCode","useDayJs","resetState","updateTimeLeft","isInitialCall","syncServerTime","secondsLeftWithFractions","adjustedSecondsLeftWithFractions","isNaN","round","adjustment","period","cleanup","callbacks","cb","clearInterval","intervalId","setInterval","useTicker","general","supportURL","paynova","textKey","cardVerification","bankId","MYT_PAGE_NAMES","BuyerActiveItems","BuyerPurchases","BuyerItemsLost","SellerActive","SellerSold","SellerUnsold","valuationPage","syiDraftPage","combinedShipping","payouts","translationImprovements","shipping","selectShipping","invoice","syiDescreasePriceOnRestart","purchaseOffer","picklist","DocumentScanning","currentTimeoutId","token","relayState","zignSecWebSdkUrl","webSdkUrl","dataAttributeName","js","zs","ZignSec","ZsProduct","Scanning","r","openInIframe","relay_state","analysis_types","sessionId","getSessionStatus","isSuccessful","validationErrors","missingZignSecData","InfoIcon","states","CardVerification","onCardVerified","setIsHidden","memberEmail","setState","submitButtonRef","authorization","clientToken","container","threeDSecure","create","createErrors","instance","requestPaymentMethod","email","requestPaymentMethodErr","payload","_braintreeWebError","nonce","isVerified","setIsInternationalWacko","threeDSecureValidationFailed","liabilityShiftPossible","liabilityShifted","restart","SignicatScanning","onfidoWebSdkUrl","dossierId","Onfido","init","containerId","steps","hideCountrySelection","documentTypes","passport","national_identity_card","driving_licence","onComplete","_await$poll","isComplete","ex","IDENTIFICATION_TYPES","validIdentifications","setValidIdentifications","setError","isHidden","selectedIdentification","setSelectedIdentification","onCancel","selectedIdentificationGui","ScrollableModal","identification","element","Fragment","categoriesElement","inputClassName","onClearSearchInput","onFocus","onFormSubmit","onUserInputChange","onUserKeyUp","searchInputRef","selectedCategory","suggestionsElement","placeholderText","focusOverride","placeHolderTranslation","categoryName","showClearButton","action","method","onSubmit","maxLength","useIsTablet","useMediaQuery","minWidth","BREAKPOINT_SIZES","MD","max","pushToDataLayer","dataLayer","isNonInteractive","analyticsData","userTriggered","trackEvent","eventCategory","eventAction","eventLabel","eventValue","eventNonInteractive","hitCallback","level","trackPageView","ga","trackTiming","variable","CartLink","formattedCartItems","cartSum","cartUrl","CartIcon","LocalizedPrice","DropDownMenuHamburger","active","MenuItemSeparator","MenuItemButton","follow","gaAttributes","MenuItem","alerts","bold","highlight","imageContainerClassName","notify","notificationDot","MenuItemContent","backgroundImage","NotificationDot","ExpandableMenuItem","super","toggleOpen","prevState","expanded","_this$props$onOpen","onOpen","_this$props$onClose","defaultExpanded","componentDidUpdate","prevProps","_this$props2","ArrowUpIcon","useMenuHeightFix","menuContentRef","isExtraLargeDesktop","XL","parentElement","marginBottom","marginY","getBoundingClientRect","menuHeight","maxHeight","TopLevelCategories","topLevelCategories","c","inspirationLinks","SeoLinks","inspirationLink","getGaAttributes","DropdownMenuContent","isValuationPageEnabled","mediaProps","BREAKPOINTS","categoryList","list","isSwedish","MediaQuery","UserIcon","PenIcon","RecommendedIcon","EndingSoonIcon","BrandIcon","CategoryCharityIcon","ValuationIcon","CategoryMenuItems","searchPlaceholder","InspirationIcon","setFilter","filteredCategories","setFilteredCategories","applyFilter","newFilter","_categoryList$","_filteredCategories$","inputElement","blur","CategoryMenuItem","_ref3$category","_ref3$inSPA","getCategoryIcon","categoryNode","isTopLevel","DropdownMenu","dropdownMenu","ui","categoryDropdownMenu","MODAL_STATE","OPEN","closeCategoryDropdownMenu","closeProfileMenu","isFetching","openCategoryDropdownMenu","onItemClick","sideMenuMediaProps","LG","dropdownMenuMediaProps","renderChild","SignUpLink","clickAction","signInButtonExperimentEnabled","register","selectIsSwedishVisitor","selectIsForeignLanguageActivated","selectIsOutsideSweden","PushNotificationModal","modalType","gaLabel","description","tagGroups","closeModal","trackGa","footer","pushNotificationActions","dangerouslySetInnerHTML","__html","HoverMenuItem","HoverMenuItemSeparator","getMenuGaAttributes","BuyMenu","alignSm43Lg50","AuctionIcon","WinningIcon","AuctionLostIcon","RatingPositiveIcon","BuyingLink","buyingText","BuyIcon","HowTraderaWorks","NewListingLink","newListingLink","PlainLocalizationMenuItem","onToggle","mapLanguageCodeToLanguageKey","LocalizationMenuItem","CurrencyMenuItem","showCurrencySelection","selectShowCurrencySelection","currencyShortName","trackPaymentOnboarding","InvoiceUnpaidAlert","InvoiceOverdueAlert","WarningIcon","BankAccountMissingAlert","PayoutFailedAlert","PayoutReadyBankAccountMissingAlert","HyperwalletPayeeVerificationAlert","HyperwalletPayeeVerificationReviewAlert","KycQuestionnaireAlert","PayoutReadyVerificationRequiredAlert","OutstandingTraderaPayLicenseAlert","PayoutReadyOutstandingTraderaPayLicenseAlert","getGaLinkAttributes","getGaButtonAttributes","ProfileCard","imageAvailable","setImageAvailable","_useAppSelector","memberAlias","cleanedMemberAlias","memberDetailedSellerRatingAverage","memberHeroImage","handleCloseProfileMenu","mediaBelowLarge","trackExpandItemClick","ProfileMenuContent","hasTraderaPay","threadsUnread","badges","messaging","showMessagingLink","systemMessages","isTraderaShopEnabled","ExperimentMenuItem","HomeIcon","ChatIcon","originalPlacement","HeartIcon","StarIcon","SaleIcon","SoldIcon","UnsoldIcon","ListIcon","WriteIcon","PackageIcon","DateIcon","DocumentIcon","InvoiceUnpaid","InvoiceOverdue","WalletIcon","BankAccountMissing","PayoutReadyBankAccountMissing","PayoutFailed","HyperwalletPayeeVerificationRequired","HyperwalletPayeeVerificationUnderReview","PayoutReadyVerificationRequired","OutstandingTraderaPayLicense","PayoutReadyOutstandingTraderaPayLicense","UnreadPayouts","SettingsIcon","KycQuestionnaire","uiActions","logOutAction","LogoutIcon","_ref$originalPlacemen","experimentVariant","useFeatureValue","PenWriteIcon","PlusOutlineIcon","isExisting","trackOnClick","SignInMenuContent","closeMenu","profileMenu","isChatBotEnabled","iframeClass","getReturnUrl","onIframeLoad","iframe","iframeDocument","contentDocument","keyCode","openChatBot","protocol","__be","BE_API","openChatWindow","isChatWindowOpened","scriptEl","ProfileMenu","handleExpand","Breakpoint","upTo","is","Profile","facebookId","ProfileLink","handleProfileClick","menuExpanded","_useAppSelector2","systemMessageCount","system","logInText","tooltip","badgeType","multipleBadges","buttonClasses","textClass","ProfileMenuLink","pageName","preventNavigationAndShowLogin","redirect","handleLoginClick","openProfileMenu","scrollTo","_profileMenu$open","profileMenuOpen","SearchButton","showSearch","WatchListMenu","WishlistLink","isOpen","wishListSideSheet","isWishListSideSheetEnabled","wishListItemIds","prevNumWishListItemIds","setPrevNumWishListItemIds","heartBlink","setHeartBlink","closeWishListSideSheet","openWishListSideSheet","WatchlistMenu","OngoingAuctionsLink","SellMenu","alignSm25Lg50","SellingLink","selling","transition","cssTransition","enter","exit","hideProgressBar","closeOnClick","draggablePercent","autoClose","pauseOnFocusLoss","info","success","hot","HotIcon","warning","AlertIcon","closeButton","closeToast","marginTop","TraderaToastContainer","ToastContainer","CurrencyLink","onClickMenuOption","WishListEmpty","opacity","fillOpacity","WishListItems","setShowMayBeMoreResultsText","_useFetchWishList","totalCount","wishListItemsData","setWishListItemsData","itemsPerPage","setQuery","setIsFetching","fetchNextPage","itemIds","getWishListItems","wishListItems","useFetchWishList","_useInView","loadingMoreRef","hasSearchTerm","isAllItemsFetched","timeoutCheck","visibleWishListItems","Fuse","ignoreLocation","LoadingIcon","WishListSideSheet","showMayBeMoreResultsText","setSearchTerm","filterOptions","selectedFilter","setSelectedFilter","handleDismiss","ScrollableModalContent","header","innerClassName","cx","cy","rx","ry","mapCountryCodeToCurrencyCode","LocalizationRegionPicker","geolocation","selectGeolocation","userAgent","useUserAgent","navigator","isCrawler","isPrerender","userAgentLowerCase","isCrawlerBot","dismissLocalizationRegionPicker","shippingCountriesTmp","selectAvailableShippingCountries","countryNameEng","isoCode","shippingCountryCodeIso2","setShippingCountryCodeIso2","LocalizationImage","englishCountryNames","right","forceZIndex","onLocalizationShippingRegionSelected","LoaderLine","isActive","viewportChangeCallback","visibilityState","viewportWidth","String","VIEWPORT_WIDTH","expires","setMonth","getMonth","createCookie","setViewportCookie","SiteHeader","isPageLoading","uiSlice","showSearchForm","showHeaderSearch","messagingModal","notificationOptinModal","hasLoggedIn","isMessagingEnabled","isTablet","isSticky","setIsSticky","_React$useState4","activeHoverMenu","setActiveHoverMenu","cartIdCookieValue","CART_ID","useGetCartSummaryQuery","getCartSummaryParams","skip","cartItemCount","cartItems","quantity","showMfaVerifiedMessage","referrer","enabledByGdprSettings","hasValueForKey","HAS_SHOWED_MFA_VERIFICATION_MESSAGE","getGeolocation","fetchMessagingNotifications","handleMouseOverMenu","menu","handleMouseOutMenu","handleMenuClick","hasCartItems","stickyEnabledOnPage","hideElements","showAppLogoOnTinyScreen","showSaveSearch","useGrowthBook","Sticky","enabled","enableTransforms","activeClass","TraderaAppLogo","TraderaLogo","Search","closeHoverMenu","handleClickSearch","closeSearchForm","openSearchForm","handleRegisterClick","cookieName","expireDate","setTime","getTime","closeMessagingModal","closeNotificationOptinModal","AppDownloadModal","specialSearchTerms","stammisglaset","SearchCategory","handleCategoryChange","selectOptions","chosenCategory","categorySelectRef","showSsrCategorySelect","isCategorySelected","UP","DOWN","PlainSearch","_props$topLevelCatego","_props$categoryPath","categoryPath","_props$inputClassName","_props$placeholderTex","_props$discoverCurren","discoverCurrentCategoryId","_props$discoverSearch","discoverSearchTerm","navigation","createRef","setCurrentCategoryId","isSearchInputFocused","setSuggestions","selectedSuggestionIndex","setSelectedSuggestionIndex","_searchInputRef$curre","_searchInputRef$curre2","loadSearchSuggestions","getSuggestionsWrapper","loadSuggestionsDebounce","enableSuggestionsFromBackend","handleUpDownArrowKeys","incrementBy","newIndex","getNextIndex","currentIndex","totalElements","newSearchTerm","searchIsFocused","activeElement","changeWindowLocation","newQuery","trimmedSearchTerm","newSearchUrl","getNewSearchUrl","allCategories","specialTermUrl","filteredQueryParams","paging","spage","isQueryReformulation","SEARCH","qs","addQueryPrefix","currentCategory","Analytics","_getCategoryDropdownC","getCategoryDropdownConfig","allCategoriesOption","optionsList","selectedOption","categorySelectOptions","setCurrentCategoryIdAction","selectBox","selectedOptions","trackSearchCategoryChanges","_evt$relatedTarget","_evt$relatedTarget$da","_evt$relatedTarget2","_evt$relatedTarget2$d","dataset","suggestionSectionButton","suggestionSectionButtonRemove","handleFocus","_searchSuggestionsEle","querySelectorAll","click","_state$discover$query","PAGE_TYPES","hoverContainer","toggleShow","toggleShowTimeoutId","_this$props$className","noContainerPositioningStyling","hoverMenuContainer","hoverMenuContainerNoPositioning","hoverMenuArea","hoverMenuAreaContent","_ref$size","fontStyle","nowrap","SaveSearchModal","_ref$queryParams","emailToggleEnabled","setEmailToggleEnabled","handleCloseModal","saveModalDismissed","expiresSixMonths","add","toDate","mobileBottomSheet","handleSaveClick","strong","useTWGrowthBook","initData","_document","_document$cookie","growthBookRef","growthBookConfig","apiHost","clientKey","growthBookClientKey","enableDevMode","getGrowthBookConfig","urlSearchParams","URLSearchParams","forceEnable","fromEntries","entries","isGrowthBookEnabled","gaId","match","clientId","idParts","join","_growthBookRef$curren","_clientId","GrowthBook","trackingCallback","experiment","trackGtmEvent","event_category","experiment_id","variation_id","variationId","setAttributes","loggedIn","configureCache","backgroundSync","_growthBookRef$curren2","loadFeatures","WithGrowthBook","GrowthBookProvider","desktop","tablet","mobile","isProp","upToProp","downToProp","downTo","mediaQuery","SM","force","reloadLocalized","categoryIcons","ClothesIcon","AntiquesDesignIcon","HomeHouseholdIcon","CharityIcon","AccessoriesIcon","ShoesIcon","ToysChildrensItemsIcon","iconSizeClass","IconComponent"],"mappings":"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","file":"script/chunks/chunk.14.083bd2bb39.js","sourcesContent":["import { createSelector } from '@reduxjs/toolkit';\nimport { selectShippingRegionCountryCodeIso2 } from 'tradera/state/shipping-region/selectors';\nimport { isSwedenCountryCodeOrUndefined } from 'tradera/localization/countrycode';\nimport { selectPageType } from '../page/selectors';\n\nexport const selectDisplayCountyFilter = (state) => {\n return (\n isSwedenCountryCodeOrUndefined(\n selectShippingRegionCountryCodeIso2(state)\n ) && selectPageType(state) !== 'ProfilePage_items'\n );\n};\n\nexport const selectSaveSearchData = createSelector(\n (state) => state.discover,\n ({\n queryParams,\n currentCategoryId,\n headerText,\n totalItems,\n isSavedSearchEmailEnabled\n }) => ({\n searchName: queryParams?.q || headerText,\n categoryId: currentCategoryId,\n queryParams,\n totalItems,\n isSavedSearchEmailEnabled\n })\n);\n\nexport const selectItemConditionFilter = (state) =>\n state.discover.filters.itemCondition;\n\nexport const selectSellerTypeFilter = (state) =>\n state.discover.filters.sellerType;\n\nexport const selectCountyFilter = (state) => state.discover.filters.county;\n\nexport const selectItemTypeFilter = (state) => state.discover.filters.itemType;\n\nexport const selectSortByFilter = (state) => state.discover.filters.sortBy;\n\nexport const selectAllowedBuyerRegionsFilter = (state) =>\n state.discover.filters.allowedBuyerRegions;\n\nexport const selectItemStatusFilter = (state) => {\n const itemStatus = state.discover.filters.itemStatus;\n const includeUnsoldOption =\n state.environment.featureSwitches['search-item-status-unsold'];\n\n if (includeUnsoldOption || !itemStatus) {\n return itemStatus;\n }\n\n return {\n ...itemStatus,\n options: itemStatus.options.flatMap((option) =>\n option.value === 'Unsold' ? [] : [option]\n )\n };\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8 7.1L3.1 12l-1.4-1.4L8 4.2l6.4 6.4L13 12z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"shipping-country-flag\":\"shipping-country-flag--zmyHK\",\"shippingCountryFlag\":\"shipping-country-flag--zmyHK\"};","import React, { useState } from 'react';\nimport { FixedSizeList } from 'react-window';\nimport AutoSizer from 'react-virtualized-auto-sizer';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\nimport ArrowDownIcon from '@tradera/blueprint/theme/icons2/arrow-down.svg?jsx';\nimport { useTranslator } from 'tradera/lang/translate';\nimport Flag from 'tradera/components/flag/flag';\nimport styles from './shipping-country-select-dropdown.module.scss';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport classNames from 'classnames';\n\nexport const ShippingCountrySelectDropdown = ({\n shippingCountries,\n selectedShippingCountryCodeIso2,\n onSelect,\n className,\n itemsBeforeScrollCount = 5,\n shippingCountryPlaceholder,\n relative,\n style = {}\n}) => {\n const { t } = useTranslator();\n const [search, setSearch] = useState('');\n const [isSearchEnabled, setIsSearchEnabled] = useState(false);\n const includesSearch = (v) =>\n v.toLowerCase().includes(search.toLowerCase());\n const filteredShippingCountries = shippingCountries.filter(\n ({ name, countryCodeIso2 }) =>\n includesSearch(name) || includesSearch(countryCodeIso2)\n );\n\n const paddingHeight = 7;\n const listLength =\n filteredShippingCountries.length === 0\n ? 1\n : filteredShippingCountries.length;\n const minOfListOrItemsBeforeScrollCount = Math.min(\n listLength,\n itemsBeforeScrollCount\n );\n const height =\n paddingHeight +\n minOfListOrItemsBeforeScrollCount * 35 +\n (listLength <= itemsBeforeScrollCount ? 0 : 21);\n const listStyle = {\n height: `${height}px`,\n width: '100%',\n zIndex: 1,\n ...style\n };\n\n const Row = ({ index, style }) => (\n {\n setIsSearchEnabled(false);\n onSelect(filteredShippingCountries[index].countryCodeIso2);\n }}>\n \n {filteredShippingCountries[index].name}\n \n );\n\n return (\n
\n \n {!isSearchEnabled ? (\n <>\n {\n setIsSearchEnabled(true);\n }}>\n \n \n {\n shippingCountries.find(\n (x) =>\n x.countryCodeIso2 ===\n selectedShippingCountryCodeIso2.toLowerCase()\n )?.name\n }\n \n \n \n \n ) : (\n <>\n setSearch(e.target.value)}\n onBlur={() => {\n setTimeout(() => {\n setIsSearchEnabled(false);\n }, 100);\n }}\n />\n {\n setSearch('');\n setIsSearchEnabled(false);\n }}>\n \n \n \n )}\n \n {isSearchEnabled && (\n
\n e.preventDefault()}\n style={listStyle}>\n {filteredShippingCountries.length > 0 ? (\n \n {({ height }) => (\n \n {Row}\n \n )}\n \n ) : (\n
\n
\n {t('siteHeader_shippingCountryNoResults')}\n
\n
\n )}\n
\n
\n )}\n \n );\n};\n","import React, { useEffect, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport { useTranslator } from 'tradera/lang/translate';\nimport {\n selectAvailableShippingCountryCodes,\n selectShippingCountry,\n selectIsLoadingAvailableShippingCountries,\n selectHasLoadedAvailableShippingCountries\n} from 'tradera/state/shipping-region/selectors';\nimport {\n updateShippingRegion,\n getAvailableShippingCountries\n} from 'tradera/state/shipping-region/actions';\nimport { ShippingCountrySelectDropdown } from './shipping-country-select-dropdown';\nimport Load from '@tradera/blueprint/theme/icons2/loading.svg?jsx';\nimport { mapCountryCodeToCountryKey } from 'tradera/localization/countries';\n\nconst PlainShippingCountrySelect = ({\n getAvailableShippingCountries,\n shippingCountry,\n shippingCountryCodes,\n updateShippingRegion,\n showShippingCountries,\n isLoadingAvailableShippingCountries\n}) => {\n const { t } = useTranslator();\n const shippingCountries = useMemo(\n () =>\n shippingCountryCodes.map((countryCodeIso2) => ({\n countryCodeIso2,\n name: t(mapCountryCodeToCountryKey(countryCodeIso2))\n })),\n [t, shippingCountryCodes]\n );\n useEffect(() => {\n getAvailableShippingCountries();\n }, [getAvailableShippingCountries]);\n\n return (\n
\n \n {t('siteHeader_shippingCountry')}\n \n
\n {isLoadingAvailableShippingCountries && (\n
\n \n
\n )}\n {showShippingCountries && (\n {\n updateShippingRegion(countryCodeIso2);\n }}\n />\n )}\n
\n
\n );\n};\n\nPlainShippingCountrySelect.propTypes = {\n shippingCountryCodes: PropTypes.arrayOf(PropTypes.string),\n shippingCountry: PropTypes.object,\n updateShippingRegion: PropTypes.func,\n getAvailableShippingCountries: PropTypes.func.isRequired,\n showShippingCountries: PropTypes.bool,\n isLoadingAvailableShippingCountries: PropTypes.bool\n};\n\nconst mapStateToProps = (state) => ({\n shippingCountry: selectShippingCountry(state),\n shippingCountryCodes: selectAvailableShippingCountryCodes(state),\n isLoadingAvailableShippingCountries:\n selectIsLoadingAvailableShippingCountries(state),\n showShippingCountries:\n selectHasLoadedAvailableShippingCountries(state) &&\n !selectIsLoadingAvailableShippingCountries(state)\n});\n\nconst mapDispatchToProps = {\n updateShippingRegion,\n getAvailableShippingCountries\n};\n\nexport const ShippingCountrySelect = connect(\n mapStateToProps,\n mapDispatchToProps\n)(PlainShippingCountrySelect);\n","import React from 'react';\nimport { LanguageSelect } from './language-select';\nimport { ShippingCountrySelect } from './shipping-country-select';\nimport { useTranslator } from 'tradera/lang/translate';\n\nexport const LocalizationMenu = ({ showRegionSelection }) => {\n const { t } = useTranslator();\n return (\n
\n {showRegionSelection && (\n <>\n \n
\n \n )}\n <>\n \n
\n \n
\n );\n};\n","export default {\n BRAND_PAGE: 'Brand',\n BRAND_LIST_PAGE: 'BrandList',\n CATEGORY_LIST: 'CategoryList',\n CATEGORY_RESULT_PAGE: 'Category',\n CUSTOM_RESULT_PAGE: 'CustomResults',\n DEFAULT: 'default',\n ENDLESS_RECOMMENDATIONS_PAGE: 'EndlessRecommendation',\n ERROR_PAGE: 'ErrorPage',\n FAVOURITE_SELLERS_PAGE: 'FavouriteSellers',\n HOW_TO_BUY: 'HowToBuy',\n HOW_TO_SELL: 'HowToSell',\n MY_TRADERA_PAGE: 'MyTradera',\n MY_SHIPPING_COMPLAINT: 'MyShippingComplaint',\n PROFILE_PAGE: 'ProfilePage',\n REPORT_ITEM_PAGE: 'ReportItem',\n SEARCH_RESULT_PAGE: 'SearchResults',\n START_PAGE: 'StartPage',\n SYI_PAGE: 'SellItem',\n TRADERA_SHOP_PAGE: 'TraderaShop',\n VALUATION: 'Valuation',\n VIEW_ITEM_PAGE: 'VIP'\n};\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport type { OnlyAs, PolyRefFunction } from 'react-polymorphed';\n\nconst polyRef = forwardRef as PolyRefFunction;\n\ntype Gap = 0 | 1 | 2 | 3 | 4 | 5;\n\nexport type SpaceProps = {\n /**\n * Default: 'horizontal'\n */\n direction?: 'horizontal' | 'vertical';\n /**\n * Default: 'center' for horizontal, 'start' for vertical\n */\n align?: 'start' | 'center' | 'end' | 'normal' | 'baseline';\n /**\n * Default: 'start'\n */\n justify?: 'start' | 'center' | 'end' | 'between';\n /**\n * Gap sizes as defined by Blueprint. Default: 1. Can be a single value or an array of two values for horizontal and vertical gaps.\n */\n gap?: Gap | [Gap, Gap];\n /**\n * Default: false\n */\n wrap?: boolean;\n /**\n * Default: false\n * If true, the component will be rendered as an inline-flex element.\n */\n inline?: boolean;\n\n children: React.ReactNode;\n} & React.HTMLAttributes;\n\n/**\n * A component to use when you want to space out elements in a row or column.\n * Example:\n * \n * \n * \n * \n */\nexport const Space = polyRef<\n 'div',\n SpaceProps,\n OnlyAs<'div' | 'section' | 'article' | 'label' | 'span'>\n>(\n (\n {\n as: Component = 'div',\n direction = 'horizontal',\n align: alignProp,\n gap = 1,\n wrap = false,\n inline = false,\n className,\n children,\n justify,\n ...rest\n },\n ref\n ) => {\n const defaultAlign = direction === 'horizontal' ? 'center' : 'start';\n const align = alignProp ?? defaultAlign;\n\n const gapX = Array.isArray(gap) ? gap[0] : gap ?? 1;\n const gapY = Array.isArray(gap) ? gap[1] : gap ?? 1;\n\n const gapClass = `gap-x-${gapX} gap-y-${gapY}`;\n\n return (\n \n {children}\n \n );\n }\n);\n","// extracted by mini-css-extract-plugin\nexport default {\"hover-localization-menu-footer\":\"hover-localization-menu-footer--lqWMy\",\"hoverLocalizationMenuFooter\":\"hover-localization-menu-footer--lqWMy\"};","import React, { useState } from 'react';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { selectShowRegionSelection } from 'tradera/state/shipping-region/selectors';\nimport { useTranslator } from 'tradera/lang/translate';\nimport DropdownIcon from '@tradera/blueprint/theme/icons2/dropdown.svg?jsx';\nimport { LocalizationMenu } from 'tradera/legacy/static/components/localization/localization-menu';\nimport HoverMenu from 'tradera/components/site-header/hover-menu/hover-menu';\nimport styles from './footer-localization-link.module.scss';\nimport TranslateIcon from '@tradera/blueprint/theme/icons2/translate.svg?jsx';\nimport { useAppSelector } from 'tradera/state/hooks';\nimport { Button } from '../atoms/button/button';\n\nconst trackAnalytics = (visible: boolean) => {\n const label = visible ? 'Open' : 'Close';\n GtmService.trackAction('Footer', 'Localization menu', label);\n};\n\ntype FooterLocalizationLinkProps = {\n className?: string;\n};\n\nexport const FooterLocalizationLink = ({\n className\n}: FooterLocalizationLinkProps) => {\n const { t } = useTranslator();\n const [isLocalizationSettingsVisible, setLocalizationSettingsVisible] =\n useState(false);\n const showRegionSelection = useAppSelector(selectShowRegionSelection);\n\n const onClick = () => {\n const shouldBeVisible = !isLocalizationSettingsVisible;\n trackAnalytics(shouldBeVisible);\n setLocalizationSettingsVisible(shouldBeVisible);\n };\n\n const title = showRegionSelection\n ? t('footer_localization_regionAndlanguage')\n : t('footer_localization_language');\n\n return (\n setLocalizationSettingsVisible(false)}>\n \n \n \n }\n onClick={onClick}>\n {title}\n \n \n
\n );\n};\n","class ConsentService {\n openUi = () =>\n typeof window.__tcfapi === 'function' &&\n window.__tcfapi('displayConsentUi', 2, () => {});\n}\n\nexport default new ConsentService();\n","// extracted by mini-css-extract-plugin\nexport default {\"link-container\":\"link-container--0iufq\",\"linkContainer\":\"link-container--0iufq\",\"icon-row\":\"icon-row--Pnk4t\",\"iconRow\":\"icon-row--Pnk4t\"};","export default \"//static.tradera.net/touchweb/static/output/images/appstore.ebc98d68.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/googleplay.32c4c811.svg\";","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport {\n useTranslator,\n useCurrentLanguage,\n useUrlLocalizer\n} from 'tradera/lang/translate';\nimport {\n areLanguageCodesIso2Equal,\n isSwedishOrUndefined\n} from 'tradera/localization/languagecode';\nimport ConsentService from 'tradera/utils/consent-service';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport styles from './footer-links.module.scss';\nimport { selectAvailableLanguageCodesIso2 } from 'tradera/state/language/selectors';\n\nimport AppstoreLogo from '@tradera/blueprint/theme/logos/appstore.svg?next-image';\nimport FacebookIcon from '@tradera/blueprint/theme/icons2/network-fb.svg?next-image';\nimport GooglePlayLogo from '@tradera/blueprint/theme/logos/googleplay.svg?next-image';\nimport InstagramIcon from '@tradera/blueprint/theme/icons2/network-ig.svg?next-image';\nimport LinkedInIcon from '@tradera/blueprint/theme/icons2/network-linkedin.svg?next-image';\nimport TikTokIcon from '@tradera/blueprint/theme/icons2/network-tt.svg?next-image';\nimport BankidIcon from '@tradera/blueprint/theme/icons2/bankid.svg?next-image';\nimport { MitIdLogo } from 'tradera/components/international-identification-modal/mit-id-logo';\nimport { useAppDownloadLink } from 'tradera/hooks/use-app-download-link';\n\nconst FooterLinks = ({ links, callerId }) => {\n const { language } = useCurrentLanguage();\n\n const linksToRender = links.filter((link) =>\n link.includedLanguages.find((lang) =>\n areLanguageCodesIso2Equal(lang, language)\n )\n );\n\n return (\n <>\n {linksToRender.map(\n (\n { text, className, includedLanguages, href, icon, ...rest },\n index\n ) => {\n return (\n \n \n {icon && icon}\n {text}\n \n \n );\n }\n )}\n \n );\n};\n\nexport const BuyingLinks = () => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const availableLanguageCodesIso2 = useSelector(\n selectAvailableLanguageCodesIso2\n );\n\n const links = [\n {\n href: toLocalizedUrl('/how-to-buy'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Så handlar du på Tradera',\n text: t('footer_howToShop'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: toLocalizedUrl('/kategorier'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Kategorier',\n text: t('footer_categories'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: toLocalizedUrl('/brands'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Populära varumärken',\n text: t('footer_popularBrands'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: {\n SV: '/inspiration',\n DA: '/info/da/inspiration'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Inspiration',\n text: t('footer_inspiration'),\n includedLanguages: ['SV', 'DA']\n },\n {\n href: '/info/gronfrakt/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Grön frakt på Tradera',\n text: t('footer_greenShipping'),\n includedLanguages: ['SV']\n },\n {\n href: 'https://info.tradera.com/klarna-betala-senare/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Köp nu - betala senare',\n text: t('footer_buyNowPayLater'),\n includedLanguages: ['SV']\n }\n ];\n\n return (\n
\n

{t('footer_buyHeading')}

\n
    \n \n
\n
\n );\n};\n\nexport const SellingLinks = () => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const isPennybridgeCharitiesEnabled = useIsFeatureEnabled(\n 'pennybridge-charities'\n );\n const availableLanguageCodesIso2 = useSelector(\n selectAvailableLanguageCodesIso2\n );\n\n const links = [\n {\n href: toLocalizedUrl('/how-to-sell'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Så säljer du som privatperson',\n text: t('footer_howToSellPrivate'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: {\n SV: 'https://info.tradera.com/foretag/',\n DA: 'https://info.tradera.com/da/virksomhedskonto/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Sälj som företag',\n text: t('footer_howToSellCorporate'),\n includedLanguages: ['SV', 'DA']\n },\n isPennybridgeCharitiesEnabled && {\n href: toLocalizedUrl('/causes'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Donera med Tradera',\n text: t('footer_donateWithTradera'),\n includedLanguages: ['SV']\n },\n {\n href: toLocalizedUrl('/frakt'),\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Fraktkalkylator',\n text: t('footer_shippingCalculator'),\n includedLanguages: ['SV', 'DA', 'EN']\n },\n {\n href: {\n SV: 'https://info.tradera.com/butik-privat/',\n DA: 'https://info.tradera.com/da/butik-privat/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Butik',\n text: t('footer_store'),\n includedLanguages: ['SV', 'DA']\n },\n {\n href: {\n SV: 'https://info.tradera.com/salja-pa-tradera/prislista-privat/',\n DA: 'https://info.tradera.com/da/price-list-personal-account/',\n DE: 'https://info.tradera.com/en/price-list-personal-account/',\n EN: 'https://info.tradera.com/en/price-list-personal-account/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Priser',\n text: t('footer_prices'),\n includedLanguages: ['SV', 'DA', 'EN']\n },\n {\n href: {\n SV: 'https://prolister.tradera.com/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'ProLister',\n text: t('footer_prolister'),\n includedLanguages: ['SV']\n }\n ].filter(Boolean);\n\n return (\n
\n

{t('footer_sellHeading')}

\n
    \n \n
\n
\n );\n};\n\nexport const ContactAndHelpLinks = () => {\n const { t } = useTranslator();\n const isQuantcastConsentEnabled = useIsFeatureEnabled('quantcast-consent');\n const availableLanguageCodesIso2 = useSelector(\n selectAvailableLanguageCodesIso2\n );\n\n const links = [\n {\n href: {\n SV: 'https://info.tradera.com/sakerhetscenter/regler-pa-tradera/',\n DA: 'https://info.tradera.com/da/rules-at-tradera-2/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Regler på Tradera',\n text: t('footer_traderaRules'),\n includedLanguages: ['SV', 'DA']\n },\n {\n href: 'http://www.mynewsdesk.com/se/tradera',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Press',\n text: t('footer_press'),\n rel: 'nofollow',\n includedLanguages: ['SV']\n },\n {\n href: {\n SV: 'https://info.tradera.com/sakerhetscenter',\n DA: 'https://info.tradera.com/da/security-center/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Säkerhet',\n text: t('footer_security'),\n includedLanguages: ['SV', 'DA']\n },\n {\n href: {\n SV: 'https://info.tradera.com',\n DA: 'https://info.tradera.com/da',\n DE: 'https://info.tradera.com/en',\n EN: 'https://info.tradera.com/en',\n FR: 'https://info.tradera.com/en',\n NL: 'https://info.tradera.com/en'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Vanliga frågor',\n text: t('footer_faq'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: 'https://www.tradera.com/info/blogg/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Vad är nytt',\n text: t('footer_whatsUp'),\n includedLanguages: ['SV']\n },\n {\n href: 'https://info.tradera.com/kontakt/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Kontakta oss',\n text: t('footer_contactUs'),\n includedLanguages: ['SV']\n },\n {\n href: '#',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Open GDPR Settings',\n text: t('footer_gdpr_settings'),\n onClick: (event) => {\n event.preventDefault();\n if (isQuantcastConsentEnabled) {\n ConsentService.openUi();\n }\n },\n includedLanguages: availableLanguageCodesIso2\n }\n ];\n\n return (\n
\n

{t('footer_contactHelpHeading')}

\n
    \n \n
\n
\n );\n};\n\nexport const InformationLinks = () => {\n const { t } = useTranslator();\n const { language } = useCurrentLanguage();\n const availableLanguageCodesIso2 = useSelector(\n selectAvailableLanguageCodesIso2\n );\n\n const links = [\n {\n href: isSwedishOrUndefined(language)\n ? 'https://info.tradera.com/anvandaravtal/'\n : 'https://info.tradera.com/en/anvandaravtal-eng/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Användaravtal',\n text: t('footer_userAgreement'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: isSwedishOrUndefined(language)\n ? 'https://info.tradera.com/sakerhetscenter/integritetspolicy/'\n : 'https://info.tradera.com/en/integritetespolicy-eng/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Integritetspolicy',\n text: t('footer_integrityPolicy'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: isSwedishOrUndefined(language)\n ? 'https://info.tradera.com/cookies-webb-beacons-och-liknande-teknik/'\n : 'https://info.tradera.com/en/cookies-webb-beacons-och-liknande-teknik/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Cookies',\n text: t('footer_cookies'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: {\n SV: '/info/om-oss',\n DE: '/info/uber-uns/',\n EN: '/info/about-us/',\n DA: '/info/om-os',\n FR: '/info/about-us/',\n NL: '/info/about-us/'\n },\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Om oss',\n text: t('footer_aboutTradera'),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n href: 'https://careers.tradera.com/',\n 'data-ga-category': 'Footer',\n 'data-ga-action': 'Navigation',\n 'data-ga-label': 'Jobb',\n text: t('footer_availableJobs'),\n includedLanguages: availableLanguageCodesIso2\n }\n ];\n\n return (\n
\n

{t('footer_informationHeading')}

\n
    \n \n
\n
\n );\n};\n\nexport const SocialLinks = () => {\n const { t } = useTranslator();\n const availableLanguageCodesIso2 = useSelector(\n selectAvailableLanguageCodesIso2\n );\n\n const { appStore, googlePlay } = useAppDownloadLink();\n\n const links = [\n {\n ['aria-label']: 'Tradera Facebook',\n href: 'https://www.facebook.com/Tradera',\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'Sociala medier - Facebook',\n rel: 'nofollow',\n icon: (\n \n ),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n ['aria-label']: 'Tradera TikTok',\n href: 'https://www.tiktok.com/@tradera',\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'Sociala medier - TikTok',\n rel: 'nofollow',\n icon: (\n \n ),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n ['aria-label']: 'Tradera Instagram',\n href: {\n SV: 'https://www.instagram.com/tradera/',\n DE: 'https://www.instagram.com/tradera/',\n EN: 'https://www.instagram.com/tradera/',\n DA: 'https://www.instagram.com/tradera_dk/',\n FR: 'https://www.instagram.com/tradera/',\n NL: 'https://www.instagram.com/tradera/'\n },\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'Sociala medier - Instagram',\n rel: 'nofollow',\n icon: (\n \n ),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n ['aria-label']: 'Tradera LinkedIn',\n href: 'https://www.linkedin.com/company/tradera/',\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'Sociala medier - LinkedIn',\n rel: 'nofollow',\n icon: (\n \n ),\n includedLanguages: availableLanguageCodesIso2\n },\n {\n ['aria-label']: 'Tradera BankId',\n href: 'https://www.bankid.com/',\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'BankId',\n target: '_blank',\n rel: 'nofollow',\n icon: (\n \n ),\n includedLanguages: ['sv']\n },\n {\n ['aria-label']: 'Tradera MitId',\n href: 'https://www.mitid.dk/',\n ['data-ga-category']: 'Footer',\n ['data-ga-action']: 'Navigation',\n ['data-ga-label']: 'MitId',\n target: '_blank',\n rel: 'nofollow',\n icon: ,\n includedLanguages: ['da']\n }\n ];\n\n return (\n
\n {/* Social media */}\n
\n
    \n \n
\n
\n \n {/* App download */}\n
\n \n \n \n \n \n \n
\n
\n );\n};\n","export default \"//static.tradera.net/touchweb/static/output/images/network-fb.fb8fde4a.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/network-tt.46cea493.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/network-ig.9323cdfe.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/network-linkedin.a9ce5654.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/bankid.81f2e99a.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/paypal.1891c35a.svg\";","// extracted by mini-css-extract-plugin\nexport default {\"image-container\":\"image-container--Azw28\",\"imageContainer\":\"image-container--Azw28\"};","import React from 'react';\nimport PaypalLogo from '@tradera/blueprint/theme/logos/paypal.svg?next-image';\nimport MastercardLogo from '@tradera/blueprint/theme/logos/mastercard_vertical.svg?next-image';\nimport VisaLogo from '@tradera/blueprint/theme/logos/visa.svg?next-image';\nimport GooglePayLogo from '@tradera/blueprint/theme/logos/google-pay.svg?next-image';\nimport ApplePayLogo from '@tradera/blueprint/theme/logos/apple-pay.svg?next-image';\nimport KlarnaLogo from '@tradera/blueprint/theme/logos/klarna.svg?next-image';\nimport SwishLogo from '@tradera/blueprint/theme/logos/swish_horizontal.svg?next-image';\nimport PaynovaLogo from '@tradera/blueprint/theme/logos/paynova.svg?next-image';\nimport DhlLogo from './dhl.svg?next-image';\nimport styles from './footer-partners.module.scss';\nimport { useCurrentLanguage } from 'tradera/lang/translate';\nimport { areLanguageCodesIso2Equal } from 'tradera/localization/languagecode';\n\nexport const FooterPartners = () => {\n const { language } = useCurrentLanguage();\n\n const partners = [\n {\n src: '/static/images/shipping/postnord.svg',\n alt: 'Postnord logo',\n height: 9,\n containerCss: styles.imageContainer,\n shouldRender: true\n },\n {\n src: '/static/images/shipping/schenker.svg',\n alt: 'Schenker logo',\n height: 9,\n containerCss: styles.imageContainer,\n shouldRender: true\n },\n {\n src: DhlLogo,\n height: 9,\n containerCss: styles.imageContainer,\n shouldRender: !areLanguageCodesIso2Equal(language, 'da')\n },\n {\n src: '/static/images/shipping/bring.svg',\n alt: 'Bring logo',\n height: 15,\n containerCss: styles.imageContainer,\n shouldRender: areLanguageCodesIso2Equal(language, 'da')\n },\n {\n src: '/static/images/shipping/gls.svg',\n alt: 'GLS logo',\n height: 15,\n containerCss: styles.imageContainer,\n shouldRender: !areLanguageCodesIso2Equal(language, 'sv')\n },\n {\n src: VisaLogo,\n height: 10,\n containerCss: styles.imageContainer,\n shouldRender: true\n },\n {\n src: MastercardLogo,\n height: 15,\n containerCss: styles.imageContainer,\n shouldRender: true\n },\n {\n src: SwishLogo,\n height: 15,\n containerCss: styles.imageContainer,\n shouldRender: areLanguageCodesIso2Equal(language, 'sv')\n },\n {\n src: KlarnaLogo,\n height: 15,\n containerCss: styles.imageContainer,\n shouldRender: areLanguageCodesIso2Equal(language, 'sv')\n },\n {\n src: PaypalLogo,\n height: 12,\n containerCss: styles.imageContainer,\n shouldRender: true\n },\n {\n src: PaynovaLogo,\n height: 13,\n containerCss: styles.imageContainer,\n shouldRender: areLanguageCodesIso2Equal(language, 'sv')\n },\n {\n src: GooglePayLogo,\n height: 21,\n shouldRender: true\n },\n {\n src: ApplePayLogo,\n height: 21,\n shouldRender: true\n }\n ];\n\n return (\n <>\n {partners.map((partner, index) => {\n return partner.shouldRender ? (\n \n \n \n ) : null;\n })}\n \n );\n};\n","export default \"//static.tradera.net/touchweb/static/output/images/dhl.f1fde3d3.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/visa.339c683d.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/mastercard_vertical.1baaecdb.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/swish_horizontal.52dbe256.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/klarna.7735b4d5.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/paynova.25f6689b.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/google-pay.5a4d9214.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/apple-pay.3451619b.svg\";","// extracted by mini-css-extract-plugin\nexport default {\"site-footer\":\"site-footer--wLDv+\",\"siteFooter\":\"site-footer--wLDv+\",\"wrapper\":\"wrapper--JsgSK\",\"symbol\":\"symbol--kiNXb\",\"logo\":\"logo--dTo4y\",\"play-animation\":\"play-animation--1WqjT\",\"playAnimation\":\"play-animation--1WqjT\",\"counter-clockwise\":\"counter-clockwise--2-qK+\",\"counterClockwise\":\"counter-clockwise--2-qK+\",\"logos-row\":\"logos-row--ia7gW\",\"logosRow\":\"logos-row--ia7gW\"};","// extracted by mini-css-extract-plugin\nexport default {\"hover-currency-menu-footer\":\"hover-currency-menu-footer--8eT4c\",\"hoverCurrencyMenuFooter\":\"hover-currency-menu-footer--8eT4c\"};","import React, { useState } from 'react';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { useTranslator } from 'tradera/lang/translate';\nimport DropdownIcon from '@tradera/blueprint/theme/icons2/dropdown.svg?jsx';\nimport HoverMenu from 'tradera/components/site-header/hover-menu/hover-menu';\nimport styles from './footer-currency-link.module.scss';\nimport { CurrencySelect } from 'tradera/legacy/static/components/localization/currency-select';\nimport CurrencyIcon from '@tradera/blueprint/theme/icons2/currency.svg?jsx';\nimport { Button } from '../atoms/button/button';\n\nconst trackAnalytics = (visible) => {\n const label = visible ? 'Open' : 'Close';\n GtmService.trackAction('Footer', 'Currency menu', label);\n};\n\nexport const FooterCurrencyLink = ({ className }) => {\n const { t } = useTranslator();\n const [isCurrencySettingsVisible, setCurrencySettingsVisible] =\n useState(false);\n\n const onClick = () => {\n const shouldBeVisible = !isCurrencySettingsVisible;\n trackAnalytics(shouldBeVisible);\n setCurrencySettingsVisible(shouldBeVisible);\n };\n\n return (\n setCurrencySettingsVisible(false)}>\n \n setCurrencySettingsVisible(false)}\n inProfileMenu={false}\n title={t('siteHeader_currency')}\n />\n \n }\n onClick={onClick}>\n {t('footer_localization_currency')}\n \n \n
\n );\n};\n","export default \"//static.tradera.net/touchweb/static/output/images/phone-3x.abb0511f.png\";","// extracted by mini-css-extract-plugin\nexport default {\"appDownloadBanner\":\"appDownloadBanner--da93H\",\"appDownloadWrapper\":\"appDownloadWrapper--AeviZ\",\"appDownloadBannerContent\":\"appDownloadBannerContent--RSURh\",\"appDownLoadBannerImage\":\"appDownLoadBannerImage--tD9mK\"};","import React from 'react';\nimport useIsDesktop from 'tradera/hooks/use-is-desktop';\nimport { Trans, useTranslator } from 'tradera/lang/translate';\nimport Phone from './phone.png';\nimport PhoneMd from './phone-2x.png';\nimport PhoneLg from './phone-3x.png';\nimport PhoneMobile from './phone-mobile.png';\nimport { Heading } from 'tradera/components/atoms/heading/heading';\nimport RatingStars from 'tradera/components/rating-stars/rating-stars';\nimport AppstoreLogo from '@tradera/blueprint/theme/logos/appstore.svg?next-image';\nimport GooglePlayLogo from '@tradera/blueprint/theme/logos/googleplay.svg?next-image';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { useAppDownloadLink } from 'tradera/hooks/use-app-download-link';\nimport {\n AppstoreBadge,\n GooglePlayBadge\n} from '../app-download-badge/app-download-badge';\nimport styles from './app-download-banner.module.scss';\n\nexport const AppDownloadBanner = () => {\n const { t } = useTranslator();\n const isDesktop = useIsDesktop();\n\n const trackClick = (store) => {\n GtmService.trackAction('StartPage', 'App download banner', store);\n };\n\n const { appStore, googlePlay } = useAppDownloadLink();\n\n return (\n
\n
\n
\n
\n {isDesktop ? (\n \n ) : (\n \"\"\n )}\n
\n \n \n \n }}\n />\n \n
\n trackClick('App Store')}>\n {isDesktop ? (\n \n ) : (\n \n )}\n \n trackClick('Google Play')}>\n {isDesktop ? (\n \n ) : (\n \n )}\n \n
\n
\n \n
\n
\n
\n
\n \n );\n};\n","export default \"//static.tradera.net/touchweb/static/output/images/phone-mobile.766437b4.png\";","import React from 'react';\nimport { connect } from 'react-redux';\nimport { useInView } from 'react-intersection-observer';\nimport { FooterLocalizationLink } from './footer-localization-link';\nimport TraderaSymbol from '@tradera/blueprint/theme/logos/tradera_symbol.svg?jsx';\n\nimport {\n BuyingLinks,\n SellingLinks,\n ContactAndHelpLinks,\n InformationLinks,\n SocialLinks\n} from './footer-links';\nimport { FooterPartners } from './footer-partners';\n\nimport styles from './site-footer.module.scss';\nimport { FooterCurrencyLink } from './footer-currency-link';\nimport { AppDownloadBanner } from 'tradera/apps/tradera/components/app-download-banner/app-download-banner';\n\nconst SiteFooter = ({ pageType }) => {\n const [symbolRef, inView] = useInView({\n threshold: 0\n });\n\n const showAppDownloadBanner = pageType === 'StartPage';\n\n return (\n \n {showAppDownloadBanner && }\n
\n
\n
\n
\n {/* Köp */}\n \n\n {/* Sälj */}\n \n {/* Kontakt & hjälp */}\n \n {/* Information */}\n \n
\n
\n \n \n
\n
\n \n
\n \n \n
\n {/* Copyright */}\n
\n

\n © {new Date().getFullYear()} Tradera\n

\n
\n
\n
\n
\n \n
\n \n \n );\n};\n\nconst mapStateToProps = (state) => ({\n pageType: state.page.type,\n isCouponationNavLinkEnabled:\n state.environment.featureSwitches['couponation-nav-link']\n});\n\nexport default connect(mapStateToProps)(SiteFooter);\n","import type { Category } from 'tradera/features/category-list/category-list-page';\n\nexport function filterCategories(categories: Category[], filter: string) {\n if (categories && filter.length > 0) {\n return categories\n .slice()\n .map((category) => {\n const categoryNodes =\n category.categoryNodes\n ?.slice()\n .filter((node) =>\n node.title\n .toLowerCase()\n .includes(filter.toLowerCase())\n ) || [];\n return {\n ...category,\n categoryNodes\n };\n })\n .filter((category) => category.categoryNodes.length > 0);\n }\n return categories;\n}\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { InternationalIdentificationModal } from './international-identification-modal';\n\nexport const MessagingInternationalIdentificationModal = ({\n onCloseModal,\n onVerifyComplete\n}) => {\n const { t } = useTranslator();\n\n return (\n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M14.5 2.8c.2-.3 0-.8-.4-.8H1.9c-.4 0-.7.5-.4.8l4.8 6.8c.2.3.3.6.3.9v3.1c-.1.2.1.4.4.4h2c.3 0 .5-.2.5-.5v-3.1c0-.3.1-.6.3-.9zM14.1 1c1.2 0 1.9 1.4 1.2 2.4l-4.7 6.8c-.1.1-.1.2-.1.3v3.1c0 .8-.7 1.5-1.5 1.5H7c-.8 0-1.5-.7-1.5-1.5v-3.1c0-.1 0-.2-.1-.3L.6 3.4C0 2.4.7 1 1.9 1z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.4 2c-.2-.2-.5-.2-.6 0L2.2 6.5c-.1.1-.2.3-.2.4v6.7c0 .2.2.5.5.5H5v-3.5c0-.9.7-1.5 1.5-1.5h2.2c.3 0 .5.2.5.5 0 .2-.2.5-.5.5H6.5c-.3 0-.5.2-.5.5v3.5h7.5c.3 0 .5-.2.5-.5V6.9c0-.1-.1-.3-.2-.4zm-1.3-.8C7.7.7 8.5.7 9 1.2l5.5 4.5c.3.3.5.8.5 1.2v6.7c0 .8-.7 1.5-1.5 1.5h-11c-.8 0-1.5-.7-1.5-1.5V6.9c0-.4.2-.9.5-1.2z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.5 9c.3 0 .5.2.5.5V13h.5c.3 0 .5.2.5.5s-.2.5-.5.5h-5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5H6V9.5c0-.3.2-.5.5-.5h3zm2.7-7c.2 0 .3.1.4.2l2.3 3.5c.5.7.3 1.6-.4 2.1-.2 0-.3.1-.5.2v5.5c0 .3-.2.5-.5.5s-.5-.2-.5-.5V8H3v5.5c0 .3-.2.5-.5.5s-.5-.2-.5-.5V8C1.3 7.8.9 7.2.9 6.5c0-.3.1-.6.2-.8l2.3-3.5c.1-.1.2-.2.4-.2h8.4zM9 10H7v3h2v-3zm2.9-7H4.1L1.9 6.2v.3c0 .3.2.5.5.5h11.3c.1 0 .2 0 .3-.1.2-.2.3-.5.1-.7L11.9 3z\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"separatorVertical\":\"separatorVertical--tW8lP\",\"separatorVerticalWide\":\"separatorVerticalWide--029QP\",\"separatorHorizontal\":\"separatorHorizontal--tLsUG\",\"separatorHorizontalThick\":\"separatorHorizontalThick--7A1sI\"};","import classNames from 'classnames';\nimport React from 'react';\n\nimport styles from './separator.module.scss';\n\ntype SeparatorProps = { className?: string; thick?: boolean };\n\nexport const VerticalSeparator = ({\n className,\n thick = false\n}: SeparatorProps) => (\n \n);\n\nexport const HorizontalSeparator = ({\n className,\n thick = false\n}: SeparatorProps) => (\n \n);\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.6 0a.4.4 0 01.23.1l7.4 7.65c.16.16.16.32 0 .48l-7.4 7.65c-.15.16-.3.16-.46 0l-2.25-2.33c-.16-.16-.16-.32 0-.48l4.91-5.08L3.12 2.9c-.16-.16-.16-.32 0-.48L5.37.1A.4.4 0 015.6 0z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 34 34\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.5 4.5v4.38a2.41 2.41 0 01-.73 1.76 2.41 2.41 0 01-1.77.73 2.41 2.41 0 01-1.77-.72 2.41 2.41 0 01-.73-1.78V4.5c0-.7.24-1.28.73-1.77A2.41 2.41 0 0117 2a2.41 2.41 0 011.77.73 2.41 2.41 0 01.73 1.77zm0 20.63v4.37a2.41 2.41 0 01-.73 1.77A2.41 2.41 0 0117 32a2.41 2.41 0 01-1.77-.73 2.41 2.41 0 01-.73-1.77v-4.38c0-.69.24-1.28.73-1.77a2.41 2.41 0 011.77-.73 2.41 2.41 0 011.77.73 2.41 2.41 0 01.73 1.77zM11.37 17a2.41 2.41 0 01-.72 1.77 2.41 2.41 0 01-1.78.73H4.5a2.41 2.41 0 01-1.77-.73A2.41 2.41 0 012 17c0-.7.24-1.28.73-1.77a2.41 2.41 0 011.77-.73h4.38a2.41 2.41 0 011.76.73 2.41 2.41 0 01.73 1.77zM32 17a2.41 2.41 0 01-.73 1.77 2.41 2.41 0 01-1.77.73h-4.38a2.41 2.41 0 01-1.77-.73 2.41 2.41 0 01-.73-1.77c0-.7.25-1.28.73-1.77a2.41 2.41 0 011.77-.73h4.38a2.41 2.41 0 011.77.73A2.41 2.41 0 0132 17zm-19-4c-.48.52-1.06.77-1.75.77-.68 0-1.26-.25-1.75-.76L6.38 9.9a2.39 2.39 0 01-.73-1.75c0-.68.24-1.26.73-1.75a2.45 2.45 0 013.54 0L13 9.5c.5.49.76 1.07.76 1.75 0 .69-.25 1.27-.76 1.76zM27.6 27.64a2.39 2.39 0 01-1.75.73 2.39 2.39 0 01-1.76-.73L21 24.5a2.33 2.33 0 01-.76-1.75c0-.69.25-1.27.76-1.76a2.33 2.33 0 011.76-.76c.68 0 1.26.25 1.75.76l3.09 3.1a2.45 2.45 0 010 3.54zm0-17.71L24.5 13c-.49.5-1.07.76-1.75.76-.69 0-1.27-.25-1.76-.76a2.33 2.33 0 01-.76-1.76c0-.68.25-1.26.76-1.75l3.1-3.09a2.33 2.33 0 011.75-.76c.68 0 1.26.25 1.75.76.51.49.76 1.07.76 1.75 0 .69-.25 1.27-.76 1.76zM13.01 24.5l-3.1 3.13a2.39 2.39 0 01-1.75.73 2.5 2.5 0 01-1.79-4.28L9.5 21a2.33 2.33 0 011.75-.76c.69 0 1.27.25 1.76.76.5.49.76 1.07.76 1.76 0 .68-.25 1.26-.76 1.75z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 126 142\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M.02 138.58c0 1.63 28.21 2.8 63 2.59 34.78-.2 62.97-1.69 62.96-3.32 0-1.63-28.21-2.79-63-2.59-34.78.2-62.97 1.7-62.96 3.32z\",\n fill: \"#EDEAEA\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M59.3 2.1L5.77 49.69a.21.21 0 00.14.36h115.6c.2 0 .28-.24.13-.37L64.78 2.03a4.2 4.2 0 00-5.49.08z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M64.1 2.83c-1.2-1-2.95-.97-4.11.06L8.12 49h111.09L64.1 2.84zm56.88 47.65zm-114.5-.02zM58.6 1.32a5.24 5.24 0 016.85-.1l56.87 47.65c.9.75.37 2.22-.8 2.22H5.91a1.26 1.26 0 01-.84-2.2L58.6 1.32z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.32 50.04c0-1.15.94-2.1 2.1-2.1h114.31c1.16 0 2.1.95 2.1 2.1v76.57a2.1 2.1 0 01-2.1 2.1H6.41a2.1 2.1 0 01-2.1-2.1V50.04z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M120.73 50.04H6.41v76.57h114.32V50.04zM6.41 47.94a2.1 2.1 0 00-2.1 2.1v76.57c0 1.15.95 2.1 2.1 2.1h114.32a2.1 2.1 0 002.1-2.1V50.04a2.1 2.1 0 00-2.1-2.1H6.41z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.2 25.34c0-1.02.95-1.85 2.1-1.85h78.03c1.16 0 2.1.83 2.1 1.86v95.81c0 1.02-.94 1.85-2.1 1.85H24.31c-1.16 0-2.1-.83-2.1-1.85V25.35z\",\n fill: \"#FEF880\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M102.33 25.34H24.31v95.82h78.02V25.35zM24.31 23.5c-1.16 0-2.1.83-2.1 1.86v95.81c0 1.02.94 1.85 2.1 1.85h78.02c1.16 0 2.1-.83 2.1-1.85V25.35c0-1.03-.94-1.86-2.1-1.86H24.31z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M63.05 89.5L5.69 50.28a.21.21 0 00-.32.17v76.82c0 .17.18.27.32.18L63.05 89.5z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M64.93 89.52l-58.66 38.8a1.26 1.26 0 01-1.95-1.06V50.44a1.26 1.26 0 011.97-1.04l58.64 40.12zM6.42 52.03v73.67l54.75-36.2L6.42 52.02z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M64.1 88.19l57.35 39.24c.14.1.33 0 .33-.18V50.8a.21.21 0 00-.33-.18L64.1 88.2z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M62.21 88.17l58.67-38.42c.84-.55 1.95.05 1.95 1.05v76.45a1.26 1.26 0 01-1.97 1.04L62.2 88.17zm58.52 37.5V52.34L65.98 88.21l54.75 37.45z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M56.45 88.42l-50.6 38.86a.21.21 0 00.13.37h115.58c.2 0 .3-.25.13-.37L69.08 88.3a10.49 10.49 0 00-12.63.11z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M68.45 89.16a9.44 9.44 0 00-11.36.1L8.45 126.6h110.57L68.45 89.17zm52.61 38.96zM55.81 87.59a11.54 11.54 0 0113.9-.12l52.6 38.96c.98.72.47 2.27-.75 2.27H5.98a1.26 1.26 0 01-.76-2.25L55.8 87.59z\",\n fill: \"#000\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"container--AECTP\",\"fixedHeight\":\"fixedHeight--3NEEn\",\"body\":\"body--+xdpf\",\"bodyWithIframe\":\"bodyWithIframe--gBZSs\",\"iframe\":\"iframe--WgeIR\"};","import React, { useEffect, useState } from 'react';\nimport { checkUserMessagingParticipation } from 'tradera/apps/my-tradera/app/helpers/messaging-helpers';\nimport ArrowRightIcon from '@tradera/blueprint/theme/icons/arrow-right.svg?jsx';\nimport CloseIcon from '@tradera/blueprint/theme/icons/close-narrow.svg?jsx';\nimport LoadIcon from '@tradera/blueprint/theme/icons/load.svg?jsx';\nimport { logger } from 'packages/logger';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { getMessagingUrl } from 'tradera/components/messaging/get-messaging-url';\nimport { z } from 'zod';\nimport classNames from 'classnames';\nimport { MessagingInternationalIdentificationModal } from 'tradera/components/international-identification-modal/messaging-international-identification-modal';\nimport { Space } from '../atoms/space/space';\nimport { Button } from '../atoms/button/button';\nimport { Heading } from '../atoms/heading/heading';\nimport { Text } from '../atoms/text/text';\nimport MessageIcon from '@tradera/blueprint/theme/icons-colored/message-icon.svg?jsx';\nimport DialogModal from 'tradera/components/dialog/dialog-modal';\nimport { HeaderWithCloseButton } from 'tradera/components/scrollable-modal/header-with-close-button';\nimport useIsMobile from 'tradera/hooks/use-is-mobile';\nimport css from './messaging-modal.module.scss';\n\nconst POST_MESSAGE_TYPE_PREFIX = 'tradera.messaging.';\nconst CLOSE_EVENT = `${POST_MESSAGE_TYPE_PREFIX}close` as const;\nconst OPEN_INTERNATIONAL_IDENTIFICATION_MODAL_EVENT =\n `${POST_MESSAGE_TYPE_PREFIX}openInternationalIdentificationModal` as const;\n\nconst MessageEventSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal(CLOSE_EVENT)\n }),\n z.object({\n type: z.literal(OPEN_INTERNATIONAL_IDENTIFICATION_MODAL_EVENT)\n })\n]);\n\n// Don't know where this comes from, so won't be using any generated type for now\ntype MessagingItem = {\n seller: { alias: string };\n transaction: { purchaseOrderId: string };\n};\n\ntype MessagingModalProps = {\n title?: string;\n src: string;\n onModalClosed: () => void;\n recipientId: number;\n item: MessagingItem;\n participating?: boolean;\n isContactHighestBidder?: boolean;\n};\n\nexport const MessagingModal = ({\n onModalClosed,\n recipientId,\n title,\n src,\n item,\n participating: participatingProp,\n isContactHighestBidder\n}: MessagingModalProps) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n const isMobile = useIsMobile();\n const [\n showInternationalIdentificationModal,\n setShowInternationalIdentificationModal\n ] = useState(false);\n\n const MESSAGING_REMOTE_URL = getMessagingUrl(toLocalizedUrl);\n const [participating, setParticipating] = React.useState(\n participatingProp || null\n );\n const iframeRef = React.useRef(null);\n\n const handleMessage = React.useCallback(\n (event: MessageEvent) => {\n if (MESSAGING_REMOTE_URL.indexOf(event.origin) < 0) {\n return;\n }\n\n let parsed;\n try {\n parsed = MessageEventSchema.parse(event.data);\n } catch (error) {\n return;\n }\n const { type } = parsed;\n\n switch (type) {\n // Messages loaded & ready\n // Unread threads update\n case CLOSE_EVENT:\n onModalClosed();\n break;\n case OPEN_INTERNATIONAL_IDENTIFICATION_MODAL_EVENT:\n setShowInternationalIdentificationModal(true);\n break;\n }\n },\n [MESSAGING_REMOTE_URL, onModalClosed]\n );\n\n const handleClose = () => {\n onModalClosed();\n };\n\n useEffect(() => {\n if (iframeRef.current) {\n // Focus on iframe content window to allow focus to move into iframe\n setTimeout(() => {\n if (iframeRef.current && iframeRef.current.contentWindow) {\n iframeRef.current.contentWindow.focus();\n }\n }, 0);\n }\n }, [iframeRef]);\n\n useEffect(() => {\n window.addEventListener('message', handleMessage);\n\n return () => {\n window.removeEventListener('message', handleMessage);\n };\n }, [handleMessage]);\n\n useEffect(() => {\n if (participating === null) {\n checkUserMessagingParticipation(recipientId)\n .then((participating: boolean) =>\n setParticipating(participating)\n )\n .catch(logger);\n }\n }, [participating, recipientId]);\n\n const isContactingHighestBidderButNotParticipating =\n isContactHighestBidder && participating === false;\n\n const modalTitle =\n !isContactingHighestBidderButNotParticipating && title ? title : '';\n\n const maxWidth = '43rem';\n\n return (\n \n \n \n \n {participating === true && (\n <>\n \n {showInternationalIdentificationModal && (\n \n setShowInternationalIdentificationModal(\n false\n )\n }\n onVerifyComplete={() => {\n setShowInternationalIdentificationModal(\n false\n );\n iframeRef.current?.contentWindow?.location.reload();\n }}\n />\n )}\n \n )}\n {isContactingHighestBidderButNotParticipating && (\n \n )}\n {!isContactingHighestBidderButNotParticipating &&\n participating === false && (\n \n )}\n {participating === null && }\n \n \n \n );\n};\n\nconst Loader = () => {\n return (\n
\n \n
\n );\n};\n\ntype ContactHighestBidderNotParticipatingMessageProps = {\n onClose: () => void;\n};\n\nconst ContactHighestBidderNotParticipatingMessage = ({\n onClose\n}: ContactHighestBidderNotParticipatingMessageProps) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n const { t } = useTranslator();\n\n return (\n \n \n \n {t('messaging_not_participating_title')}\n \n {t('messaging_not_participating_content')}\n \n \n \n \n \n );\n};\n\ntype NotParticipatingMessageProps = {\n item: MessagingItem;\n onClose: () => void;\n};\n\nconst NotParticipatingMessage = ({\n item,\n onClose\n}: NotParticipatingMessageProps) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n\n if (item) {\n return (\n
\n
\n

{item.seller.alias}

\n

\n Butik\n

\n
\n

\n {item.seller.alias} är inte en privat säljare och\n finns för tillfället inte tillgänglig via Traderas\n meddelandetjänst.\n

\n

\n Vi rekommenderar att du kontaktar dem via\n orderinformation för detta köp.\n

\n
\n \n }\n iconConfig={{ position: 'right', variant: 'fixed' }}\n href={toLocalizedUrl(\n `/my/order/${item.transaction.purchaseOrderId}`\n )}>\n Orderinformation\n \n \n \n Stäng\n \n
\n
\n \n );\n }\n\n return (\n
\n
\n

\n Säljaren finns för tillfället inte tillgänglig via Traderas\n meddelandetjänst.\n

\n
\n \n \n \n Stäng\n \n
\n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.5 4.4c-.7.4-1.2 1.1-1.4 1.9v-.6c-.2.1-.3.2-.5.3-.7.5-1 1-1 1.6 0 .5.2.8.6.8.3 0 .5-.1.8-.1v.9c-.2-.1-.5 0-.8 0-.4 0-.8-.2-1.1-.5s-.4-.7-.4-1.1c0-.9.4-1.6 1.3-2.3.3-.2.7-.4 1.1-.6 0-.4 0-.7.1-1.1H1.9v-.9h2.4c0-.4.1-.7.2-1.1l.9.2c-.1.4-.2.7-.2 1 1.3 0 2.3-.1 3.2-.1H9l.1.9c-.9 0-1.9.1-3 .1h-1c-.1.2-.1.5-.1.8.2 0 .3-.1.5-.1zM11 4h-1V2c0-.6-.4-1-1-1H2c-.6 0-1 .4-1 1v7c0 .6.4 1 1 1h2v1H2a2 2 0 01-2-2V2C0 .9.9 0 2 0h7a2 2 0 012 2zm3 1a2 2 0 012 2v7a2 2 0 01-2 2H7a2 2 0 01-2-2V7c0-1.1.9-2 2-2zm0 1H7c-.6 0-1 .4-1 1v7c0 .6.4 1 1 1h7c.6 0 1-.4 1-1V7c0-.6-.4-1-1-1zm-5.5 8H7.1l2.6-7.3h1.6l2.6 7.3h-1.4l-.6-1.8H9.1zm1-2.9h2l-1-2.9h-.1z\"\n})));","import React from 'react';\nimport type { BaseInputFieldProps } from '../base-input-field/base-input-field';\nimport { BaseInputField } from '../base-input-field/base-input-field';\nimport type { BaseInputWrapperProps } from '../base-input-wrapper/base-input-wrapper';\nimport { BaseInputWrapper } from '../base-input-wrapper/base-input-wrapper';\nimport SearchIcon from '@tradera/blueprint/theme/icons2/search.svg?jsx';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\nimport { Button } from 'tradera/components/atoms/button/button';\n\nexport type SearchInputProps = {\n allowClear?: boolean;\n} & Omit &\n Omit;\n\nexport const SearchInput = React.forwardRef(\n function SearchInput(\n {\n value,\n label,\n hint,\n error,\n help,\n alt,\n collapsed = true,\n autoComplete = 'on',\n onChange,\n name,\n allowClear,\n className,\n style,\n ...props\n },\n ref\n ) {\n const [localValue, setLocalValue] = React.useState(\n value?.toString() || ''\n );\n\n const handleOnChange = (e: React.ChangeEvent) => {\n /**\n * Set local value to be able to clear and react to changes if the component is not controlled.\n */\n setLocalValue(e.target.value);\n\n onChange?.(e);\n };\n\n const handleClear = () => {\n handleOnChange({\n target: { value: '' }\n } as React.ChangeEvent);\n };\n\n const button =\n allowClear &&\n (value?.toString() || localValue?.toString() || '').length > 0 ? (\n \n \n \n ) : (\n \n );\n\n return (\n \n \n \n );\n }\n);\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M9.1 10.9c-.4.1-.7.1-1.1.1h-.3c-.3 0-.7-.1-.9-.2-1-.4-1.7-1.2-1.9-2.2l-.1-.7c-1.3-.1-2.1-.8-2.6-1.6s-.6-1.8-.7-2.4c0-.1 0-.3.1-.4s.3-.2.4-.2h1.2v-.1C2.6 2.1 3.4 1 4.5 1h7c1 0 1.9 1.1 1.3 2.1l-.1.1H14c.1 0 .3.1.4.2s.1.3.1.4c-.1.6-.2 1.6-.7 2.4s-1.3 1.5-2.6 1.6l-.1.7c-.2 1.2-1 2-2 2.4l-.4-1c.7-.2 1.3-.8 1.4-1.5l.5-2.8 1 .2-.2 1.1c.7-.1 1.2-.5 1.5-1.1.3-.5.4-1 .5-1.5h-1.2l-.1.2c-.2.4-.4.8-.5 1.3l-1-.2c.1-.5.3-1.1.6-1.6l.7-1.4c.2-.2 0-.6-.4-.6h-7c-.4 0-.6.4-.5.7l.7 1.4c.3.5.5 1 .6 1.6l.5 2.7c.2.7.7 1.2 1.4 1.5.2.1.4.1.6.1H8c.3 0 .5 0 .7-.1zM3.8 4.3H2.6c.1.5.2 1 .5 1.5s.8.9 1.5 1.1l-.2-1c-.1-.5-.3-.9-.5-1.4zm.7 9.7H2c-.3 0-.5.2-.5.5s.2.5.5.5h12c.3 0 .5-.2.5-.5s-.2-.5-.5-.5h-2.5c-.3-1.6-1.8-2.6-3.5-2.6-1.7-.1-3.2 1-3.5 2.6zm1.1 0h4.9c-.3-1-1.3-1.7-2.5-1.7s-2.2.8-2.4 1.7z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"emailNotificationBox\":\"emailNotificationBox--1CzO9\",\"emailNotificationBoxCenter\":\"emailNotificationBoxCenter--dGv+2\",\"emailNotificationBoxClose\":\"emailNotificationBoxClose---76Ki\",\"emailNotificationToggleInput\":\"emailNotificationToggleInput--VQY26\",\"emailNotificationBoxLeft\":\"emailNotificationBoxLeft--r8rTA\",\"emailNotificationBoxTop\":\"emailNotificationBoxTop--zIgw1\"};","import React, { useState } from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { useToggleEmailNotificationMutation } from 'tradera/apps/my-tradera/saved-searches/saved-searches-api';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\nimport cn from 'classnames';\nimport * as searchGtm from 'tradera/apps/tradera/components/discover/helpers/search-gtm';\nimport { showErrorToast } from 'tradera/services/toasts';\nimport styles from './email-notification-tooltip.module.scss';\n\nexport enum EmailNotificationTooltipPosition {\n Top = 'top',\n Bottom = 'bottom',\n Left = 'left'\n}\n\ntype EmailNotificationToolTipProps = {\n searchName: string;\n searchId: number;\n isSavedSearchEmailEnabled: boolean;\n onClose: () => void;\n center?: boolean;\n position?: EmailNotificationTooltipPosition;\n};\n\nexport const EmailNotificationToolTip = ({\n searchName,\n searchId,\n isSavedSearchEmailEnabled,\n onClose,\n center,\n position = EmailNotificationTooltipPosition.Bottom\n}: EmailNotificationToolTipProps) => {\n const { t } = useTranslator();\n const [isEmailChecked, setIsEmailChecked] = useState(true);\n const [toggleEmailNotification] = useToggleEmailNotificationMutation();\n\n const handleEmailToggle = () => {\n setIsEmailChecked((isEmailEnabled) => !isEmailEnabled);\n toggleEmailNotification({\n savedSearchDto: { id: searchId, sendMail: !isEmailChecked }\n })\n .unwrap()\n .catch(() => {\n setIsEmailChecked((isEmailEnabled) => !isEmailEnabled);\n showErrorToast('searchResults_saveSearch_error');\n });\n searchGtm.trackAction(\n searchGtm.GA_EVENT_SAVE_SEARCH,\n isEmailChecked ? 'Email removed' : 'Email added'\n );\n };\n\n const boxClass = cn(styles.emailNotificationBox, {\n [styles.emailNotificationBoxCenter]: center,\n [styles.emailNotificationBoxLeft]:\n position === EmailNotificationTooltipPosition.Left,\n [styles.emailNotificationBoxTop]:\n position === EmailNotificationTooltipPosition.Top\n });\n\n return (\n
\n \n {t('searchResults_saveSearch_savedTooltip', {\n searchName\n })}\n \n {isSavedSearchEmailEnabled ? (\n \n \n {t('searchResults_saveSearch_savedTooltipNotify')}\n \n {\n handleEmailToggle();\n }}\n checked={isEmailChecked}\n />\n \n ) : (\n

\n {t('searchResults_saveSearch_emailDisabledTooltip')}\n

\n )}\n onClose()}>\n \n \n
\n );\n};\n","import { logger } from 'packages/logger';\nimport { webApiClient } from 'tradera/utils/http';\nimport { useCurrentLanguage } from 'tradera/lang/translate';\nimport { useSelector } from 'react-redux';\nimport { selectAutomaticTranslationPreferred } from 'tradera/state/language/selectors';\nimport { useCallback } from 'react';\n\nexport const useGetSuggestions = () => {\n const automaticTranslationPreferred = useSelector(\n selectAutomaticTranslationPreferred\n );\n const { language } = useCurrentLanguage();\n return useCallback(\n (params) =>\n getSuggestions({\n ...params,\n automaticTranslationPreferred,\n languageCodeIso2: language\n }),\n [automaticTranslationPreferred, language]\n );\n};\n\nconst getSuggestions = async ({\n searchTerm = '',\n limitPrevious = 7,\n enablePrevious = false,\n enableSuggestions = false,\n recentSearches = [],\n automaticTranslationPreferred,\n languageCodeIso2\n}) => {\n const generateSuggestionId = (categoryId, term) =>\n categoryId ? categoryId + '-' + term : term;\n\n let suggestedResults = {\n searches: [],\n shops: [],\n charities: [],\n campaigns: []\n };\n\n let previousSearchResults = [];\n\n // ------------------------------\n // get suggestion data\n if (enablePrevious) {\n //Filter based on search term\n const filteredRecentSearches =\n searchTerm.length === 0\n ? recentSearches\n : recentSearches.filter((search) =>\n search.text.includes(searchTerm?.toLowerCase())\n );\n previousSearchResults = filteredRecentSearches?.slice(0, limitPrevious);\n }\n\n if (enableSuggestions) {\n suggestedResults = await getSuggestionsFromBackend(\n searchTerm,\n automaticTranslationPreferred,\n languageCodeIso2\n );\n }\n\n // ------------------------------\n // merge lists\n const withDuplicates = [].concat(\n previousSearchResults.map((item, index) => ({\n key: `previous_search-${index}`,\n type: 'previous',\n text: item.text,\n queryParams: item.queryParams,\n id: generateSuggestionId(null, index)\n })),\n suggestedResults.searches.map((item, index) => ({\n key: `suggested_search-${index}`,\n type: 'suggested-item',\n categories: item.categories,\n item,\n text: item.text,\n id: generateSuggestionId(\n item.category ? item.category.id : null,\n item.text\n )\n }))\n );\n const uniqueMap = new Map();\n withDuplicates.forEach((item) => {\n if (uniqueMap.has(item.id)) return;\n uniqueMap.set(item.id, item);\n });\n const uniqueResults = Array.from(uniqueMap.values());\n\n const shopResults = suggestedResults.shops.map((item, key) => ({\n key: `suggested_shop-${key}`,\n type: 'suggested-shop',\n item,\n memberId: item.memberId,\n name: item.name,\n urlName: item.urlName,\n inSPA: false, // Turned off until profile pages are SPAified\n id: key\n }));\n\n const suggestedCharitiesResults = suggestedResults.charities || [];\n const charitiesResults = suggestedCharitiesResults.map((item, key) => ({\n key: `suggested_charity-${key}`,\n type: 'suggested-charity',\n item,\n name: item.name,\n slug: item.slug,\n inSPA: false, // Turned off until profile pages are SPAified\n id: key\n }));\n\n const suggestedCampaignResults = suggestedResults.campaigns || [];\n const campaignResults = suggestedCampaignResults.map((item, key) => ({\n key: `suggested_campaign-${key}`,\n type: 'suggested-campaign',\n item,\n capaignId: item.campaignId,\n name: item.name,\n urlName: item.urlName,\n inSPA: false, // Turned off until profile pages are SPAified\n id: key\n }));\n\n const allSuggestions = [\n ...campaignResults,\n ...uniqueResults,\n ...shopResults,\n ...charitiesResults,\n {\n key: 'seller-search',\n type: 'link-seller-search'\n },\n {\n key: 'advanced-search',\n type: 'link-advanced-search'\n }\n ];\n return allSuggestions;\n};\n\n// --------------------------------------------\n// backend suggestions\n// --------------------------------------------\n\nconst normalizeSearches = (searches = []) => {\n return searches.reduce((acc, search) => {\n if (search.categories) {\n search.categories.map((category) => {\n acc.push({\n text: search.text,\n category: category\n });\n });\n } else {\n acc.push({\n text: search.text,\n category: null\n });\n }\n return acc;\n }, []);\n};\n\nconst getSuggestionsFromBackend = async (\n query,\n automaticTranslationPreferred,\n languageCodeIso2\n) => {\n try {\n const response = await webApiClient.get('/browse/suggestions', {\n params: {\n query,\n automaticTranslationPreferred,\n languageCodeIso2\n }\n });\n\n const {\n campaigns = [],\n searches,\n shops = [],\n charities = []\n } = response.data;\n return {\n campaigns,\n searches: normalizeSearches(searches) || [],\n shops,\n charities\n };\n } catch (error) {\n if (error.message !== 'CANCELLED') {\n logger(error);\n }\n return { searches: [], shops: [] };\n }\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 2.02H1.54a.5.5 0 00-.5.5v4.45a5 5 0 011-.57V3.02h9.71l2.87 3.72.05.08a.5.5 0 01-.06.53l-2.85 3.66H9c0 .34-.04.68-.1 1H12a.5.5 0 00.4-.2l3-3.84a1.5 1.5 0 000-1.84l-3-3.92a.5.5 0 00-.4-.19zM4 15a4 4 0 100-8 4 4 0 000 8zm1.25-5.87a.44.44 0 11.62.62L4.62 11l1.25 1.25a.44.44 0 11-.62.62L4 11.62l-1.25 1.25a.44.44 0 11-.62-.62L3.38 11 2.13 9.75a.44.44 0 01.62-.62L4 10.38l1.25-1.25zM12 8a1 1 0 100-2 1 1 0 000 2z\"\n})));","/**\n * Run callback when document DOM content is ready\n *\n * @param {function} callback\n */\nfunction onDOMContentLoaded(callback) {\n if (document.readyState !== 'loading') {\n callback();\n } else {\n document.addEventListener('DOMContentLoaded', callback);\n }\n}\n\n/**\n * Run callback when all window content has loaded\n *\n * @param {function} callback\n */\nfunction onWindowLoad(callback) {\n if (document.readyState === 'complete') {\n callback();\n } else {\n window.addEventListener('load', callback);\n }\n}\n\nexport {\n // Export onDOMContentLoaded as default to cover old uses of onReady\n onDOMContentLoaded as default,\n onDOMContentLoaded,\n onWindowLoad\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1 1.5c0-.3.2-.5.5-.5h13c.3 0 .5.2.5.5v8c0 .1-.1.3-.1.4-.1.1-.3.1-.4.1h-6v4.5c0 .3-.2.5-.5.5s-.5-.2-.5-.5V10h-6c-.1 0-.3 0-.3-.1-.1-.1-.2-.2-.2-.4v-8zM2 2v7h12V2H2z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.6 6.9c.2.2.5.2.7 0 .2-.2.2-.5 0-.7l-2-2c-.1-.2-.5-.2-.7-.1l-2 2c-.2.2-.2.5 0 .7.2.2.6.2.8.1L8 5.2l1.6 1.7z\"\n})));","import React from 'react';\nimport { connect } from 'react-redux';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport { selectPreferredLanguage } from 'tradera/state/language/selectors';\nimport {\n selectShowLocalizationRegionPicker,\n selectShowRegionSelection\n} from 'tradera/state/shipping-region/selectors';\nimport HoverMenu from './hover-menu/hover-menu';\nimport hoverMenuStyles from './hover-menu/hover-menu.module.scss';\nimport { LocalizationMenu } from 'tradera/legacy/static/components/localization/localization-menu';\nimport TranslateIcon from '@tradera/blueprint/theme/icons2/translate.svg?jsx';\nimport { getCountryCodeForFlagFromLanguage } from 'tradera/localization/languagecode';\nimport Flag from 'tradera/components/flag/flag';\nimport { useTranslator } from 'tradera/lang/translate';\n\nconst PlainLocalizationLink = ({\n onClick,\n mouseOver,\n mouseOut,\n showMenu,\n preferredLanguage,\n showRegionSelection,\n showLocalizationRegionPicker,\n transparentHeader,\n showIconAndTextInsteadOfFlag = false\n}) => {\n const { t } = useTranslator();\n const countryCode = getCountryCodeForFlagFromLanguage(\n preferredLanguage.languageCodeIso2\n );\n\n return (\n \n mouseOver(HOVER_MENUS.LOCALIZATION)}\n onMouseLeave={mouseOut}>\n {\n GtmService.trackAction(\n 'Top navigation',\n 'Localization menu',\n 'Open/Close'\n );\n onClick(e, HOVER_MENUS.LOCALIZATION);\n }}>\n {showIconAndTextInsteadOfFlag ? (\n \n \n {t('siteHeader_localizationLink_language')}\n \n ) : (\n \n \n \n )}\n \n \n \n \n \n \n );\n};\n\nconst mapStateToProps = (state, { hideRegionSelection = false }) => ({\n preferredLanguage: selectPreferredLanguage(state),\n showRegionSelection:\n !hideRegionSelection && selectShowRegionSelection(state),\n showLocalizationRegionPicker: selectShowLocalizationRegionPicker(state)\n});\n\nconst mapDispatchToProps = {};\n\nexport const LocalizationLink = connect(\n mapStateToProps,\n mapDispatchToProps\n)(PlainLocalizationLink);\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1000 1000\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M500 950c-120.2 0-233.2-46.8-318.2-131.8C96.82 733.2 50 620.2 50 500s46.81-233.2 131.8-318.2S379.8 50 500 50s233.2 46.81 318.2 131.8c85 85 131.8 198 131.8 318.2s-46.8 233.2-131.8 318.2S620.2 950 500 950zm0-867.85c-111.61 0-216.54 43.46-295.47 122.38S82.15 388.4 82.15 500c0 111.62 43.46 216.55 122.38 295.47S388.4 917.86 500 917.86c111.62 0 216.55-43.47 295.47-122.39S917.86 611.62 917.86 500s-43.47-216.54-122.39-295.47S611.62 82.15 500 82.15z\"\n}), /*#__PURE__*/React.createElement(\"g\", {\n className: styles[\"symbol-inner\"] || \"symbol-inner\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M470.88 396.1H460.7v23.52h-9.32V396.1h-10.19v-8.2h29.7zM515.11 387.9v31.72h-9.32v-12.13h-14.07v12.13h-9.32V387.9h9.32v11.22h14.07V387.9zM556.66 411.89v7.73H529.9V387.9h26.58v7.72h-17.26v4.14h14.67v7.08h-14.67v5.05zM342.23 493.19c0-9.46 6.86-16.8 17.7-16.8 8.7 0 14.19 4.06 16.18 10.28l-9.03 3.37c-1.2-3.5-3.23-5.23-7.38-5.23-4.87 0-7.9 3.59-7.9 8.33 0 4.7 3.03 8.29 7.9 8.29 4.15 0 6.4-1.73 7.6-5.66l9.02 3.37c-2.37 6.65-7.85 10.7-16.57 10.7-10.57 0-17.52-7.25-17.52-16.65zM388.84 477.26h9.32v31.72h-9.32zM444.16 508.98h-9.92l-.65-5.74c-.48-4.19-1.77-5.83-5.65-5.83h-5.74v11.57h-9.33v-31.72h18.7c8.67 0 12.33 4.23 12.33 9.8 0 3.7-2.2 6.38-5.65 7.6 2.8 1.37 4.27 3.79 4.88 7.63zm-13.68-18.04c2.6 0 3.93-1.25 3.93-3.15s-1.34-3.2-3.93-3.2h-8.28v6.35h8.28zM455.4 493.19c0-9.46 6.87-16.8 17.7-16.8 8.72 0 14.2 4.06 16.18 10.28l-9.02 3.37c-1.2-3.5-3.23-5.23-7.38-5.23-4.87 0-7.9 3.59-7.9 8.33 0 4.7 3.03 8.29 7.9 8.29 4.15 0 6.4-1.73 7.6-5.66l9.02 3.37c-2.37 6.65-7.85 10.7-16.57 10.7-10.58 0-17.52-7.25-17.52-16.65zM501.39 495.04v-17.78h9.32v17.05c0 4.1 2.11 6.9 6.34 6.9 4.32 0 6.43-2.8 6.43-6.95v-17h9.32v17.65c0 9.32-6.38 14.93-15.83 14.93-9.41 0-15.58-5.52-15.58-14.8zM571.15 500.78v8.2H547.2v-31.72h9.32v23.52zM603.65 501.73h-11.48l-2.29 7.25h-9.19l10.8-31.72h13.28l10.8 31.72h-9.63zm-2.55-7.98l-3.19-10.1-3.2 10.1zM657.78 508.98h-9.93l-.64-5.74c-.48-4.19-1.77-5.83-5.66-5.83h-5.74v11.57h-9.32v-31.72h18.69c8.67 0 12.34 4.23 12.34 9.8 0 3.7-2.2 6.38-5.65 7.6 2.8 1.37 4.27 3.79 4.87 7.63zm-13.68-18.04c2.59 0 3.93-1.25 3.93-3.15s-1.34-3.2-3.93-3.2h-8.29v6.35h8.29zM414.03 598.34h-8.8l.34-23.99h-.3l-6.56 15.36h-7.77l-6.56-15.36h-.3l.35 24h-8.38v-31.72h14.16l5.05 11.3 5.05-11.3h13.72zM447.96 591.1h-11.48l-2.29 7.24H425l10.79-31.71h13.3l10.78 31.71h-9.62zm-2.55-7.99l-3.19-10.1-3.2 10.1zM502.09 598.34h-9.93l-.65-5.73c-.47-4.2-1.76-5.83-5.65-5.83h-5.74v11.56h-9.32v-31.71h18.69c8.67 0 12.34 4.22 12.34 9.8 0 3.7-2.2 6.38-5.65 7.59 2.8 1.38 4.27 3.8 4.87 7.64zm-13.68-18.03c2.59 0 3.92-1.26 3.92-3.15 0-1.9-1.33-3.2-3.92-3.2h-8.29v6.35zM528.98 584.1l-4.36 4.45v9.8h-9.32v-31.72h9.32v12.08l11.87-12.13h11l-11.39 11.57 11.82 20.2h-10.87zM585.8 590.62v7.72h-26.76v-31.71h26.59v7.72h-17.26v4.14h14.67v7.08h-14.67v5.05zM626.37 574.83h-10.19v23.51h-9.32v-23.51h-10.18v-8.2h29.69z\"\n})), /*#__PURE__*/React.createElement(\"g\", {\n className: styles[\"symbol-outer\"] || \"symbol-outer\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M187.84 663.7l-2.03-2.87-10.1 7.13-3.1-4.39-2.55 1.8 8.23 11.65 2.54-1.8-3.1-4.38zM161.99 653.93l7.45-1.34-3.76 6.57 3.12 4.42 12.65-8.93-1.85-2.61-10.16 7.3-.1-.14 4.6-7.88-1.63-2.3-8.97 1.68-.1-.13 10.29-7.13-1.93-2.74-12.65 8.93zM219.88 735.93l137.38-41.9-19.2-27.18-30.77 9.37-36.85-52.19 19.14-25.85-19.2-27.19-85.49 115.39zm58.33-50.87l-46.8 14.25-8.15-11.55 29.1-39.3zM429.17 815.11c0 28.63 19.41 50.03 57.84 50.03h71.94v-136.4h-32.6v40.02l-52.72.08c-6.57 0-10-3.01-10-7.4v-32.7h-32.61v33.07c0 9.3 7.24 16.18 16.85 17.56-12.06 8.21-18.7 20.75-18.7 35.74zm97.17 19.48h-39.33c-16.4 0-24.45-5.59-24.45-19.4 0-12.53 7.54-19.48 24.45-19.48h39.33zM717.61 592.4l-73 94.8 24.2 18.64 53.1-68.96 19.86 15.29-44.6 57.91 22.55 17.37 44.6-57.91 17.26 13.28-53.11 68.96 24.2 18.64 73-94.8zM855.63 416.49l-11.48-56.3-133.64 27.26 11.32 55.52c10.42 51.1 42.48 73.3 83.73 64.9 44.23-9.02 60.64-39.52 50.07-91.38zm-103.87 20.37l-4.8-23.57 73.78-15.04 4.8 23.57c6.54 32.06-1.9 48.68-27.34 53.86-25.58 5.22-39.9-6.75-46.44-38.82zM630.16 158.23l-98.5 104.53 30.16 14.09 22.08-23.4 57.87 27.02-3.79 31.94 30.16 14.09 16.98-142.6zm-25.41 73.1l33.57-35.58 12.8 5.98-5.76 48.57zM400.03 192.83c-14.61-24.62-42.23-33.12-75.27-13.51l-61.87 36.71 69.6 117.3 28.04-16.64-20.42-34.41 45.3-26.98c5.64-3.35 10.14-2.5 12.37 1.26l16.69 28.12 28.04-16.64-16.87-28.43c-4.75-8-14.49-10.22-23.45-6.5 6.17-13.22 5.49-27.4-2.16-40.28zm-93.51 32.83l33.83-20.07c14.1-8.37 23.87-7.67 30.92 4.2 6.4 10.78 3.46 20.6-11.08 29.23l-33.83 20.08zM160.11 499.28l11.2-52.57 103.52 22.04 6.79-31.89-103.52-22.04 11.19-52.57-29.88-6.36-29.17 137.03z\"\n}))));","import classNames from 'classnames';\nimport React from 'react';\n\nimport { Text } from 'tradera/components/atoms/text/text';\n\nexport type BaseInputWrapperProps = {\n label?: React.ReactNode;\n hint?: React.ReactNode;\n // A string or ReactNode can be used as the error message and error styling, a boolean will only give error styling\n error?: boolean | React.ReactNode;\n help?: React.ReactNode;\n name?: string;\n children: React.ReactNode;\n /**\n * This will collapse the hint/error area when there's no info\n */\n collapsed?: boolean;\n className?: string;\n style?: React.CSSProperties;\n};\n\nconst isVisibleNode = (error: BaseInputWrapperProps['error']) => {\n return (\n (typeof error === 'string' && !!error) ||\n (typeof error === 'object' && error !== null)\n );\n};\n\nexport const BaseInputWrapper = ({\n label,\n error,\n hint,\n help,\n name,\n collapsed,\n className,\n style,\n children\n}: BaseInputWrapperProps) => {\n const textBelow = isVisibleNode(error) ? (\n error\n ) : isVisibleNode(hint) ? (\n hint\n ) : //   is to make sure that this element always has a height,\n // otherwise the form will jump when the error message is shown, if\n // no hint is provided\n collapsed ? (\n ''\n ) : (\n <> \n );\n\n const hasLabelOrHelp = !!label || !!help;\n\n return (\n \n {hasLabelOrHelp ? (\n
\n \n {label}\n \n \n {help}\n \n
\n ) : null}\n {children}\n {textBelow ? (\n \n {textBelow}\n \n ) : null}\n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.8 2.3h.1c.7-.2 1.3.1 1.8.6l.2.2v.1c.2 1.1-.1 2.5-.5 3.5-1 2.8-3.9 2.8-4.9 0-.3-1.1-.7-2.6-.4-3.8C5.6 1.5 6.6.8 8 .8c.6 0 1.2.1 1.6.4.1.1.1.3-.1.3-.3.1-.6.3-.8.7 0 0 0 .1.1.1zM2 13.2c.8-2.3 2.7-3.4 5-3.4h2c2.4 0 4.1 1 5 3.4 0 .1 0 .3-.1.3l-1.5.7c-2.8 1.4-6 1.4-8.8 0l-1.5-.7c-.1-.1-.1-.2-.1-.3z\",\n fillRule: \"evenodd\"\n})));","import { useCallback, useMemo } from 'react';\nimport { useSelector } from 'react-redux';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { CookieUtil } from 'tradera/utils/cookie';\nimport {\n getCookieFromBrowser,\n setCookieToBrowser\n} from 'tradera/utils/cookie-helpers';\n\nexport const useCookieUtil = () => {\n const serverCookies = useSelector((state) => state.request?.cookies);\n\n const getCookie = useCallback(\n (key) => {\n if (isServer) {\n return serverCookies[key] || null;\n }\n return getCookieFromBrowser(key);\n },\n [serverCookies]\n );\n\n const setCookie = useCallback((cookie) => {\n if (isServer) {\n throw new Error('Cannot set cookie on server using this hook');\n } else {\n setCookieToBrowser(cookie);\n }\n }, []);\n\n const cookieUtil = useMemo(\n () => new CookieUtil(getCookie, setCookie),\n [getCookie, setCookie]\n );\n\n return cookieUtil;\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M3.1 1.1c.1 0 .3-.1.4-.1h9c.3 0 .5.2.5.5v13c0 .2-.1.4-.3.4-.2.1-.4.1-.5 0L8 12l-4.2 3h-.5c-.2-.1-.3-.3-.3-.5v-13c0-.1 0-.3.1-.4z\",\n fillRule: \"evenodd\"\n})));","import React from 'react';\nimport BookmarkFillIcon from '@tradera/blueprint/theme/icons2/bookmark-fill.svg?jsx';\nimport CloseIcon from '@tradera/blueprint/theme/icons/close-narrow.svg?jsx';\n\nexport const SaveSearchHintTooltip = ({ onClick, title, text }) => (\n onClick()}>\n
\n \n \n

{title}

\n {text}\n
\n \n \n \n
\n \n);\n","// extracted by mini-css-extract-plugin\nexport default {\"verticalIcon\":\"verticalIcon---mis+\"};","import React, { useEffect, useState } from 'react';\nimport cn from 'classnames';\nimport { useSelector } from 'react-redux';\nimport { useAppDispatch } from 'tradera/state/hooks';\nimport { useTranslator } from 'tradera/lang/translate';\nimport useIsMobile from 'tradera/hooks/use-is-mobile';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport { selectSaveSearchData } from 'tradera/state/discover/selectors';\nimport { useSaveSearchMutation } from 'tradera/state/services/touchweb-search-api';\nimport {\n useRemoveSavedSearchesMutation,\n useToggleEmailNotificationMutation\n} from 'tradera/apps/my-tradera/saved-searches/saved-searches-api';\nimport {\n EmailNotificationToolTip,\n EmailNotificationTooltipPosition\n} from './email-notification-tooltip';\nimport { showSuccessToast, showErrorToast } from 'tradera/services/toasts';\nimport useIsLoggedIn from 'tradera/hooks/use-is-loggedin';\nimport { toSearchString } from 'tradera/utils/url';\nimport { signIn } from 'tradera/state/ui/actions';\nimport BookmarkFillIcon from '@tradera/blueprint/theme/icons2/bookmark-fill.svg?jsx';\nimport BookmarkIcon from '@tradera/blueprint/theme/icons2/bookmark.svg?jsx';\nimport { SaveSearchHintTooltip } from './save-search-hint-tooltip';\nimport { showSaveSearchHint, hideSaveSearchHint } from './utils';\nimport {\n removeSavedSearch as removeSavedSearchFromStorage,\n storeSavedSearch\n} from 'tradera/state/services/helpers/saved-searches-storage';\nimport * as searchGtm from 'tradera/apps/tradera/components/discover/helpers/search-gtm';\nimport styles from './save-search-button.module.scss';\n\nexport type ButtonType = 'default' | 'icon' | 'no-icon';\n\nexport type SaveSearchButtonProps = React.PropsWithChildren<{\n type?: ButtonType;\n successToast?: boolean;\n showHint?: boolean;\n saveText?: string;\n emailDefaultOff?: boolean;\n onSaveClick?: (event?: React.MouseEvent) => void;\n gaActionString?: string;\n id?: string;\n isVertical?: boolean;\n containerClassName?: string;\n iconColor?: 'default' | 'white';\n emailTooltipPosition?: EmailNotificationTooltipPosition;\n}>;\n\nexport const SaveSearchButton = ({\n type = 'default',\n successToast = false,\n showHint = true,\n saveText,\n emailDefaultOff = false,\n onSaveClick,\n gaActionString = searchGtm.GA_EVENT_SAVE_SEARCH,\n id = 'save-search-button',\n isVertical = false,\n containerClassName = '',\n iconColor = 'default',\n emailTooltipPosition = EmailNotificationTooltipPosition.Bottom\n}: SaveSearchButtonProps) => {\n const { t } = useTranslator();\n const dispatch = useAppDispatch();\n const [isSaved, setIsSaved] = useState(false);\n const [savedSearchId, setSavedSearchId] = useState(0);\n const [showEmailTooltip, setShowEmailTooltip] = useState(false);\n const [showHintTooltip, setShowHintTooltip] = useState(false);\n const isLoggedIn = useIsLoggedIn();\n const isMobile = useIsMobile();\n const saveSearchData = useSelector(selectSaveSearchData);\n const {\n searchName,\n categoryId,\n queryParams,\n isSavedSearchEmailEnabled,\n totalItems\n } = saveSearchData;\n\n useEffect(() => {\n setShowHintTooltip(showHint && showSaveSearchHint());\n }, [showHint]);\n\n const [saveSearch, saveSearchResponse] = useSaveSearchMutation({\n fixedCacheKey: 'shared-save-search'\n });\n const { status: saveStatus, data: saveSearchResponseData } =\n saveSearchResponse;\n\n const isSavePending = saveStatus === 'pending';\n const [\n removeSavedSearches,\n { isLoading: isRemovePending, data: removeSearchResponseData }\n ] = useRemoveSavedSearchesMutation({\n fixedCacheKey: 'shared-remove-search'\n });\n\n const hasPendingRequest = isSavePending || isRemovePending;\n const [toggleEmailNotification] = useToggleEmailNotificationMutation();\n\n const hideHint = () => {\n hideSaveSearchHint();\n setShowHintTooltip(false);\n };\n\n const handleLogin = () => {\n const query = {\n ...queryParams,\n saveSearch: 'true'\n };\n const redirectUrl = encodeURIComponent(\n `${window.location.pathname}${toSearchString(query)}`\n );\n dispatch(signIn({ redirectUrl }));\n };\n\n useEffect(() => {\n setIsSaved(false);\n setSavedSearchId(0);\n setShowEmailTooltip(false);\n }, [saveSearchData]);\n\n useEffect(() => {\n if (isSavePending) {\n setIsSaved((isSaved) => !isSaved);\n }\n\n if (saveSearchResponseData?.id) {\n setSavedSearchId(saveSearchResponseData.id);\n }\n }, [saveSearchResponseData, isSavePending]);\n\n useEffect(() => {\n if (isRemovePending) {\n setIsSaved((isSaved) => !isSaved);\n }\n\n if (!removeSearchResponseData) {\n setSavedSearchId(0);\n }\n }, [removeSearchResponseData, isRemovePending]);\n\n const handleSaveSearch = () => {\n if (!isLoggedIn) {\n return handleLogin();\n }\n if (onSaveClick) {\n onSaveClick();\n }\n hideHint();\n saveSearch({\n savedQueryName: searchName,\n categoryId,\n ...queryParams\n })\n .unwrap()\n .then(({ id }) => {\n storeSavedSearch(id, { totalItems });\n if (successToast) {\n showSuccessToast('searchResults_saveSearch_success');\n } else {\n setShowEmailTooltip(true);\n }\n if (emailDefaultOff) {\n toggleEmailNotification({\n savedSearchDto: {\n id,\n sendMail: false\n }\n });\n }\n return;\n })\n .catch(() => {\n setShowEmailTooltip(false);\n setIsSaved((isSaved) => !isSaved);\n showErrorToast('searchResults_saveSearch_error');\n });\n searchGtm.trackAction(gaActionString, 'Saved');\n };\n\n const handleRemoveSavedSearch = () => {\n if (!savedSearchId) {\n return;\n }\n setShowEmailTooltip(false);\n removeSavedSearches({ ids: [savedSearchId] }).catch(() => {\n setIsSaved((isSaved) => !isSaved);\n showErrorToast('searchResults_saveSearch_error');\n });\n removeSavedSearchFromStorage(savedSearchId);\n searchGtm.trackAction(gaActionString, 'Removed');\n };\n\n const handleClick = () => {\n if (hasPendingRequest) {\n return;\n }\n if (savedSearchId) {\n handleRemoveSavedSearch();\n return;\n }\n handleSaveSearch();\n };\n\n const buttonTheme = type === 'icon' ? 'text' : 'primary';\n const hideText = type === 'icon';\n const hideIcon = type === 'no-icon';\n\n const iconClassName = cn('icon icon-md', {\n 'icon-white': iconColor === 'white'\n });\n const buttonClass = cn({\n [styles.verticalIcon]: isVertical\n });\n const containerClass = cn(\n 'tooltip_container tooltip-toggle tooltip-toggle-show position-relative',\n {\n [containerClassName]: containerClassName\n }\n );\n const centerTooltip = type === 'default' && isMobile;\n\n const tooltipPosition = isVertical\n ? EmailNotificationTooltipPosition.Left\n : emailTooltipPosition;\n\n const saveSearchHintTooltipTitle = t(\n 'searchResults_saveSearch_tooltip_title'\n );\n const saveSearchHintTooltipText = t('searchResults_saveSearch_tooltip');\n\n return (\n
\n \n ) : (\n \n )\n }>\n {isSaved ? (\n hideText ? (\n \n ) : (\n t('searchResults_saveSearch_saved')\n )\n ) : (\n <>\n {hideText ? (\n \n ) : saveText ? (\n saveText\n ) : (\n t('searchResults_saveSearch_save')\n )}\n \n )}\n \n {showEmailTooltip && (\n setShowEmailTooltip(false)}\n center={centerTooltip}\n position={tooltipPosition}\n />\n )}\n {showHintTooltip && (\n \n )}\n
\n );\n};\n","import { localStore } from 'tradera/utils/storage';\nimport { STORAGE_KEYS, STORAGE_VALUES } from 'tradera/constants/storage';\n\nexport const showSaveSearchHint = () =>\n localStore &&\n localStore.getItem(STORAGE_KEYS.SAVE_SEARCH_HINT) !==\n STORAGE_VALUES.SAVE_SEARCH_HINT_CLICKED;\n\nexport const hideSaveSearchHint = () =>\n localStore &&\n localStore.setItem(\n STORAGE_KEYS.SAVE_SEARCH_HINT,\n STORAGE_VALUES.SAVE_SEARCH_HINT_CLICKED\n );\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 6c.6 0 1 .4 1 1v8c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V7c0-.6.4-1 1-1zm0 1H1v8h14zM8 8c1.7 0 3 1.3 3 3s-1.3 3-3 3-3-1.3-3-3 1.3-3 3-3zm5.5 5c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm-10 0c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zM8 9c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zM3.5 8c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm10 0c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zM5 1c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0 1c-.6 0-1 .4-1 1s.4 1 1 1 1-.4 1-1-.4-1-1-1zm5-2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0 1c-.6 0-1 .4-1 1s.4 1 1 1 1-.4 1-1-.4-1-1-1z\",\n fill: \"#282828\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.5 6c-.3 0-.5.1-.7.3s-.3.4-.3.7v3h-11V7c0-.3-.1-.5-.3-.7S1.8 6 1.5 6s-.5.1-.7.3-.3.4-.3.7v3.5c0 .4.2.8.4 1.1.3.2.7.4 1.1.4h12c.4 0 .8-.2 1.1-.4.3-.3.4-.6.4-1.1V7c0-.3-.1-.5-.3-.7s-.4-.3-.7-.3z\",\n fill: \"none\",\n stroke: \"#282828\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 1.5a2 2 0 012 2v7H2v-7c0-1.1.9-2 2-2zm0 1H4c-.5 0-.9.4-1 .9v6.1h10v-6c0-.5-.4-.9-.9-1zm-10 9v3H1v-3zm13 0v3h-1v-3z\",\n fill: \"#282828\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M7.4 1.7c.2-.2.5-.2.7 0l.6.6 2 1.9.6.6c.2.2.2.5 0 .7s-.5.2-.7 0l-.2-.2-1.3 1.3 5.5 5.5c.2.2.2.5 0 .7s-.5.2-.7 0L8.4 7.3 7.2 8.5l.3.3c.2.2.2.5 0 .7s-.5.2-.7 0L3.5 6.3c-.2-.2-.2-.6 0-.7.2-.2.5-.2.7 0l.3.3 3.2-3.2-.3-.3c-.2-.2-.2-.6 0-.7zm2.3 2.9L8.4 3.4 5.2 6.6l1.2 1.2L8 6.2zM1.8 14c-.3 0-.5.2-.5.5s.2.5.5.5h6.1c.3 0 .5-.2.5-.5s-.2-.5-.5-.5z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M3.4 3.5c-1.8 1.8-1.8 4.8 0 6.6s4.8 1.8 6.6 0 1.8-4.8 0-6.6a4.53 4.53 0 00-6.6 0zm-.7 7.4C.4 8.6.4 5 2.7 2.7s5.9-2.3 8.2 0c2.1 2.1 2.3 5.5.4 7.8l3.6 3.6c.2.2.2.6 0 .8s-.6.2-.8 0l-3.6-3.6a5.94 5.94 0 01-7.8-.4z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.54 3.02H12c.16 0 .3.07.4.2l3 3.91c.43.54.42 1.3 0 1.84l-3 3.85a.5.5 0 01-.4.19H1.54a.5.5 0 01-.5-.5V3.52c0-.28.23-.5.5-.5zm13.08 4.72l-2.87-3.72h-9.7V12h9.7l2.86-3.66a.5.5 0 00.06-.53l-.05-.08zM8.15 6.15a.5.5 0 01.78.63l-.06.07-2.44 2.54a.5.5 0 01-.64.07l-.07-.06-1.57-1.57a.5.5 0 01.63-.77l.07.06 1.21 1.21 2.1-2.18zM12 9a1 1 0 100-2 1 1 0 000 2z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M13.3 4.9l-2-2-8 8-.5 2.5 2.5-.6zm-1.2-2.7c-.4-.4-1-.4-1.4 0l-8 8c-.1.1-.2.3-.3.5l-.6 2.5c-.2.7.5 1.4 1.2 1.2l2.5-.6c.2 0 .4-.1.5-.3l8-8c.4-.4.4-1 0-1.4z\",\n fillRule: \"evenodd\"\n})));","import { API_ERRORS } from 'tradera/utils/api';\nimport { reload } from 'tradera/utils/location';\nimport {\n handleCategoryListError,\n receiveCategoryList,\n requestCategoryList\n} from 'tradera/state/categories/reducer';\nimport { touchWebClient } from 'tradera/utils/http';\n\nexport const fetchCategoryList = () => (dispatch) => {\n dispatch(requestCategoryList());\n\n return touchWebClient\n .get('categories', { cancelTokenId: 'getCategoryList' })\n .then((results) => dispatch(receiveCategoryList(results.data)))\n .catch((error) => {\n switch (error.message) {\n case API_ERRORS.VERSION_MISMATCH:\n reload(true);\n break;\n case API_ERRORS.CANCELLED:\n break;\n default:\n dispatch(handleCategoryListError(error));\n break;\n }\n });\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.5 9.9c.5-.2 1-.1 1.4.1s.6.7.7 1.1v.3c0 .5-.3 1-.7 1.3l-.1.1-5.7 2.7c-.5.3-1.1.3-1.7.2l-.2-.1-1.8-.7c-.2-.1-.5-.1-.8-.1h-.2l-1.3.4c-.3.1-.5-.1-.6-.3s0-.5.3-.6h.1l1.3-.4c.4-.1.9-.1 1.3 0l.2.1 1.8.7c.3.1.7.1 1 0l.1-.1 5.7-2.7c.2-.1.3-.2.3-.4v-.2c0-.2-.1-.3-.2-.4s-.3-.1-.4-.1h-.1l-3.3 1.3c-.3.1-.5 0-.7-.3s0-.5.3-.7h.1zM9 2.1c-.6-.4-1.1-.5-1.7-.4-1.1.2-1.8 1.1-1.8 2.3 0 1.4 1.1 2.8 3.1 4.1.2.1.5.1.7 0 2.1-1.3 3.1-2.7 3.1-4.1 0-1.2-.7-2.1-1.8-2.3-.5-.1-1.1 0-1.6.4zm1.5.6c.6.1 1 .6 1 1.3v.1c-.1.9-.8 2-2.4 3l-.1.1.2.1C7.4 6.2 6.5 5 6.5 4c0-.7.4-1.2 1-1.3.4-.1.9.1 1.1.4l.4.5.4-.5c.2-.4.7-.5 1.1-.4z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.4 9.5c.2 0 .5 0 .7.1l.2.1 1.6.6c.4.2.8.5.9 1v.2c.1.5-.1 1-.5 1.3-.3.2-.8.3-1.2.2H8l-2.2-.6h-.1c-.3-.1-.5-.3-.4-.6s.3-.5.6-.4h.2l2.2.6c.2 0 .3 0 .5-.1.1-.1.1-.1.1-.2v-.2c0-.1-.1-.3-.2-.3h-.1L7 10.6c-.1 0-.3-.1-.4-.1H5.4l-3.8 1c-.3.1-.5-.1-.6-.4 0-.1.1-.4.3-.5h.1l3.8-1c.1 0 .3-.1.4-.1h.2z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8 2.5C7.1 1.2 5.4.8 4 1.1 2.1 1.5.5 3 .5 5.6c0 2.7 2 6 7.2 9.3.2.1.4.1.5 0 5.3-3.3 7.2-6.6 7.2-9.3 0-2.6-1.6-4.2-3.5-4.5-1.3-.3-3 .1-3.9 1.4zm-3.8-.4c-1.4.3-2.7 1.4-2.7 3.5s1.6 5.1 6.5 8.3c4.9-3.2 6.5-6.2 6.5-8.3S13.2 2.3 11.8 2s-2.9.3-3.4 1.6c0 .3-.2.4-.4.4s-.4-.1-.5-.3c-.4-1.3-1.9-1.9-3.3-1.6z\",\n fillRule: \"evenodd\"\n})));","import { getTimeSpanParts, TIME_SPAN_UNITS } from 'tradera/utils/date';\nimport { formatEndDate } from './format';\n\nconst DAY_IN_SECONDS = 24 * 60 * 60;\nconst HOUR_IN_SECONDS = 60 * 60;\nconst MINUTE_IN_SECONDS = 60;\n\nconst TIME_LEFT_DAY_LIMIT = 24 * 60 * 60;\nconst TIME_LEFT_HOUR_LIMIT = 60 * 60;\nconst TIME_LEFT_MINUTE_LIMIT = 60;\n\nexport const formatVipTimeLeft = (secondsLeft, t) => {\n const hoursOrEmpty = (hours, t) =>\n hours ? t('vip_hours', { count: hours }) : '';\n\n const minutesOrEmpty = (minutes, t) =>\n minutes ? t('vip_minutes', { count: minutes }) : '';\n\n if (secondsLeft < 1) {\n return '';\n }\n let formattedTimeLeft;\n if (secondsLeft > TIME_LEFT_DAY_LIMIT) {\n const { days, hours } = getTimeSpanParts(secondsLeft, {\n endUnit: TIME_SPAN_UNITS.HOURS\n });\n formattedTimeLeft = (\n t('vip_days', { count: days }) +\n ' ' +\n hoursOrEmpty(hours, t)\n ).trim();\n } else if (secondsLeft > TIME_LEFT_HOUR_LIMIT) {\n const { hours, minutes } = getTimeSpanParts(secondsLeft, {\n startUnit: TIME_SPAN_UNITS.HOURS,\n endUnit: TIME_SPAN_UNITS.MINUTES\n });\n formattedTimeLeft = (\n t('vip_hours', { count: hours }) +\n ' ' +\n minutesOrEmpty(minutes, t)\n ).trim();\n } else if (secondsLeft > TIME_LEFT_MINUTE_LIMIT) {\n const { minutes, seconds } = getTimeSpanParts(secondsLeft, {\n startUnit: TIME_SPAN_UNITS.MINUTES,\n endUnit: TIME_SPAN_UNITS.SECONDS\n });\n formattedTimeLeft =\n t('vip_minutes', { count: minutes }) +\n ' ' +\n t('vip_seconds', { count: seconds || 0 });\n } else {\n formattedTimeLeft = t('vip_seconds', { count: secondsLeft });\n }\n return formattedTimeLeft;\n};\n\nexport const formatItemCardTimeLeft = (\n secondsLeft,\n t,\n endDate,\n serverDate,\n dayjs\n) => {\n if (Number.isInteger(secondsLeft)) {\n if (secondsLeft > DAY_IN_SECONDS) {\n return formatEndDate(endDate, t, serverDate, dayjs);\n }\n\n if (secondsLeft > HOUR_IN_SECONDS) {\n const ifValueNotZeroShowLabel = (label, value) =>\n value > 0 ? ' ' + t(label, { count: value }) : '';\n const hours = Math.floor(secondsLeft / HOUR_IN_SECONDS);\n const minutes = Math.floor(\n Math.floor(secondsLeft % HOUR_IN_SECONDS) / MINUTE_IN_SECONDS\n );\n return (\n t('vip_hours', { count: hours }) +\n ifValueNotZeroShowLabel('vip_minutes', minutes)\n );\n }\n\n if (secondsLeft > 2 * MINUTE_IN_SECONDS) {\n const minutes = Math.floor(secondsLeft / MINUTE_IN_SECONDS);\n return t('vip_minutes', { count: minutes });\n }\n\n return t('vip_seconds', { count: secondsLeft });\n } else {\n return '';\n }\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 15 15\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 1.6c.2.1.3.2.4.4l5.8 10c.3.5.1 1.1-.4 1.4-.2.1-.3.1-.5.1H1.7c-.6 0-1-.4-1-1 0-.2 0-.3.1-.5L6.6 2c.3-.5.9-.7 1.4-.4zm-.5.9l-5.8 10h11.5l-5.7-10zm0 7c.3 0 .5.2.5.5v1c0 .3-.2.5-.5.5S7 11.3 7 11v-1c0-.3.2-.5.5-.5zm0-4c.3 0 .5.2.5.5v2c0 .3-.2.5-.5.5S7 8.3 7 8V6c0-.3.2-.5.5-.5z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M3.1 1.1c.1 0 .3-.1.4-.1h9c.3 0 .5.2.5.5v13c0 .2-.1.4-.3.4-.2.1-.4.1-.5 0L8 12l-4.2 3h-.5c-.2-.1-.3-.3-.3-.5v-13c0-.1 0-.3.1-.4zM4 2v11.6L7.7 11c.2-.1.4-.1.6 0l3.7 2.6V2z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"logo--oBm1T\",\"logo-white\":\"logo-white--6+Hvg\",\"logoWhite\":\"logo-white--6+Hvg\",\"logo-dark\":\"logo-dark--24FUL\",\"logoDark\":\"logo-dark--24FUL\"};","import React from 'react';\nimport styles from './mit-id-logo.module.scss';\n\nexport const MitIdLogo = ({ className = '', color }) => {\n const logoClassName =\n color === 'white'\n ? styles.logoWhite\n : color === 'dark'\n ? styles.logoDark\n : styles.logoWhite;\n return (\n \n \n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.4 9.4c-2.6.6-5.3.9-7.9.8l-7-.3c-.3 0-.5.2-.5.5l.2 1.9c0 .2.2.4.4.4l7 .3c2.5.1 5.1-.2 7.5-.9l.5-.2c.2-.1.3-.2.3-.5V9.9c.1-.3-.2-.6-.5-.5zm-.3 1.1v.7l-.2.1-.5.2c-2.2.6-4.4.8-6.6.7l-6.6-.3-.1-1 6.4.3c2.3.1 4.7-.1 7-.5zM7.2 2.9c.2-.1.4-.1.6 0V3l.6.6c1.3 1.3 2.7 2.5 4.2 3.6l.6.5-.6.8c-1.5-1.1-3-2.3-4.4-3.6l-.5-.7-.3-.3c-.3.4-.4.9-.2 1.3l.1.1-.8.5c-.5-.8-.4-1.9.3-2.5l.1-.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.7 4.8c.1-.1.3-.1.4 0h.1l3 1.8c.3.2.7.4 1 .5s.5.2.8.3l.3.1 1.2.2c1.2.2 2.2 1.1 2.4 2.3v.2l.1.4-.9.1-.1-.5c-.1-.8-.7-1.5-1.5-1.6h-.1l-1.2-.2c-.5-.1-.9-.2-1.3-.4-.3-.1-.6-.3-.9-.4l-.3-.2-2.8-1.7-1.4.8c-.4.2-.9.4-1.3.4H4c-.6 0-1-.1-1.4-.3l-.3-.1-.9-.5v.2c-.2.6-.3 1.2-.4 1.7v.4l-.1 2.1H0l.1-2.1c0-1.1.3-2.1.6-3.1.1-.2.4-.4.6-.3h.1l1.4.8c.3.2.7.3 1.1.3.3 0 .7-.1.9-.2l.2-.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M.6 6.6C2.2 7 3.4 8.3 3.7 10v.2l.1.6-.9.1-.1-.6C2.7 9 1.8 7.9.5 7.6H.3zm8-1.8c.2-.2.5-.2.7 0 .1.2.2.5 0 .6v.1L7.4 7.4c-.2.2-.5.2-.7 0-.1-.2-.2-.4 0-.6l.1-.1zM9.8 6c.2-.2.5-.2.7 0s.2.4.1.6l-.1.1L9 8.1c-.2.2-.5.2-.7 0-.1-.2-.1-.4 0-.6l.1-.1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.8 2.3h.1c.7-.2 1.3.1 1.8.6.1.2.2.3.2.3.2 1.1-.1 2.5-.5 3.5-1 2.8-3.9 2.8-4.9 0-.3-1.1-.7-2.6-.4-3.8C5.6 1.5 6.6.8 8 .8c.6 0 1.2.1 1.6.4.1.1.1.3-.1.3-.3.1-.6.3-.8.7 0 0 0 .1.1.1zm-.7-.6c-.8 0-2.3.3-2.2 2.5C6 6.5 6.7 8 8 8s1.7-1.2 1.9-2.4c.3-1.2.3-1.9-.2-2.3S8.5 3.4 8 3s-.5-1.1.1-1.3zM2 13.2c.8-2.3 2.7-3.4 5-3.4h2c2.4 0 4.1 1 5 3.4 0 .1 0 .3-.1.3l-1.5.7c-2.8 1.4-6 1.4-8.8 0l-1.5-.7c-.1-.1-.1-.2-.1-.3zm6-2.5c-2.6 0-4.3.8-4.9 2.4 1.6.8 3.3 1.3 4.9 1.3s3.3-.4 4.9-1.3c-.6-1.6-2.3-2.4-4.9-2.4z\",\n fillRule: \"evenodd\"\n})));","export const getMessagingUrl = (toLocalizedUrl) =>\n toLocalizedUrl(`${window.origin}/messagingiframe`);\n","import React from 'react';\nimport GdprSettings from 'tradera/utils/gdpr-settings';\nimport { useSelector } from 'react-redux';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { loadScript } from 'tradera/utils/script';\n\nconst LOCALES = {\n sv: 'sv-se',\n en: 'en-us',\n da: 'da-dk',\n de: 'de-de'\n};\n\nconst mapLocale = (languageCodeIso2) =>\n languageCodeIso2 in LOCALES ? LOCALES[languageCodeIso2] : LOCALES['sv'];\n\nconst openQualtiveModal = async (config, translate) => {\n const { survey, title, ...surveyOptions } = config;\n const options = {\n title: translate(title ? title : 'qualtiveTitle_default'),\n darkMode: 'never',\n ...surveyOptions\n };\n\n if (!window.qualtive) {\n await loadScript('https://static.qualtive.io/client/web.v1.js');\n }\n window.qualtive?.present(survey, options);\n};\n\nexport const useQualtive = (customAttributes = {}) => {\n const { t } = useTranslator();\n const isQualtiveFeatureToggleEnabled = useSelector(\n (state) => state.environment?.featureSwitches?.['qualtive-feedback']\n );\n const memberId = useSelector((state) => state.member?.memberId);\n const languageCodeIso2 = useSelector(\n (state) => state.language?.preferred?.languageCodeIso2\n );\n const isQualtiveEnabled =\n isQualtiveFeatureToggleEnabled && GdprSettings.isFunctionalEnabled();\n const config = {\n locale: mapLocale(languageCodeIso2),\n customAttributes\n };\n if (memberId) {\n config.user = { id: memberId };\n }\n\n return {\n isQualtiveEnabled,\n openQualtiveModal: (survey) => {\n if (isQualtiveEnabled) {\n openQualtiveModal(\n {\n ...config,\n ...survey\n },\n t\n );\n }\n }\n };\n};\n\nexport const withQualtive = (WrappedComponent) => {\n function WithQualtive(props) {\n const { isQualtiveEnabled, openQualtiveModal } = useQualtive();\n return (\n \n );\n }\n\n WithQualtive.displayName = `withQualtive(${\n WrappedComponent.displayName || WrappedComponent.name\n }`;\n\n return WithQualtive;\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"item\":\"item--HebDT\",\"item--removed\":\"item--removed--VftBs\",\"itemRemoved\":\"item--removed--VftBs\",\"button\":\"button--5M2W0\",\"icon\":\"icon--Ati8Q\",\"hover-show\":\"hover-show--sGt8G\",\"hoverShow\":\"hover-show--sGt8G\",\"hover-hide\":\"hover-hide--kL+DY\",\"hoverHide\":\"hover-hide--kL+DY\",\"image-container\":\"image-container--E0uuL\",\"imageContainer\":\"image-container--E0uuL\",\"image\":\"image--4dyaT\",\"item-details-desktop-right\":\"item-details-desktop-right--zjLPy\",\"itemDetailsDesktopRight\":\"item-details-desktop-right--zjLPy\",\"item-details-mobile\":\"item-details-mobile--wIugT\",\"itemDetailsMobile\":\"item-details-mobile--wIugT\",\"badge\":\"badge--jP4fM\"};","export const itemStates = {\n bidderAuctionRemoved: 'BidderAuctionRemoved',\n bidderBidRemoved: 'BidderBidRemoved',\n bidderEndedWon: 'BidderEndedWon',\n bidderEndedReservedPriceNotReached: 'BidderEndedReservedPriceNotReached',\n bidderEndedNotWon: 'BidderEndedNotWon',\n bidderActiveLeading: 'BidderActiveLeading',\n bidderActiveReservedPriceNotReached: 'BidderActiveReservedPriceNotReached',\n bidderActiveOverbidden: 'BidderActiveOverbidden',\n generalActive: 'GeneralActive',\n generalEnded: 'GeneralEnded',\n purchasedNotPaid: 'PurchasedNotPaid',\n purchasedPaid: 'PurchasedPaid',\n purchasedDone: 'PurchasedDone',\n shopItemActive: 'ShopItemActive',\n shopItemEnded: 'ShopItemEnded',\n shopItemEndedWon: 'ShopItemEndedWon',\n buyItNowEndedWon: 'BuyItNowEndedWon',\n buyItNowEnded: 'BuyItNowEnded',\n buyItNowActive: 'BuyItNowActive',\n sellerActiveBids: 'SellerActiveBids',\n sellerActiveNoBids: 'SellerActiveNoBids',\n sellerReservedPriceNotReached: 'SellerReservedPriceNotReached',\n sellerSoldNotPaid: 'SellerSoldNotPaid',\n sellerSoldDone: 'SellerSoldDone',\n sellerSoldShipped: 'SellerSoldShipped',\n sellerSoldPaid: 'SellerSoldPaid',\n sellerSoldShippingBooked: 'SellerSoldShippingBooked'\n};\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { itemStates } from './item-states';\nimport styles from './wish-list-item.module.scss';\n\nconst BadgeInner = ({ className, text }) => (\n \n {text}\n \n);\n\nexport const Badge = ({ itemState }) => {\n const { t } = useTranslator();\n\n switch (itemState) {\n case itemStates.bidderAuctionRemoved:\n return (\n \n );\n case itemStates.bidderBidRemoved:\n return (\n \n );\n case itemStates.bidderEndedWon:\n return (\n \n );\n case itemStates.bidderEndedReservedPriceNotReached:\n return (\n \n );\n case itemStates.bidderEndedNotWon:\n return (\n \n );\n case itemStates.bidderActiveLeading:\n return (\n \n );\n case itemStates.bidderActiveReservedPriceNotReached:\n return (\n \n );\n case itemStates.bidderActiveOverbidden:\n return (\n \n );\n case itemStates.generalActive:\n return (\n \n );\n case itemStates.shopItemActive:\n return (\n \n );\n case itemStates.generalEnded:\n return (\n \n );\n case itemStates.shopItemEnded:\n return (\n \n );\n case itemStates.buyItNowEndedWon:\n return (\n \n );\n case itemStates.buyItNowEnded:\n return (\n \n );\n case itemStates.buyItNowActive:\n return (\n \n );\n case itemStates.shopItemEndedWon:\n return (\n \n );\n default:\n throw new Error('Unknown item state');\n }\n};\n","import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\n\nconst Shimmer = ({ width, height, classNames }) => (\n \n);\n\nShimmer.propTypes = {\n width: PropTypes.any.isRequired,\n height: PropTypes.number.isRequired,\n classNames: PropTypes.string\n};\n\nexport default memo(Shimmer);\n","import { useTranslator } from 'tradera/lang/translate';\nimport { useFormatUtcDateInSwedishTimeZone } from 'tradera/hooks/use-format-utc-date-in-swedish-timezone';\nimport { useCountdown } from 'tradera/hooks/use-countdown';\nimport { formatItemCardTimeLeft } from 'tradera/utils/format-time-left';\nimport React from 'react';\n\nexport const EndTimeLabel = ({ time }) => {\n const { t } = useTranslator();\n const formatUtcDateInSwedishTimeZone = useFormatUtcDateInSwedishTimeZone();\n const {\n timeLeftText,\n isCountdownDone,\n isCountdownEnabled,\n isTimeLeftBelowWarningLimit\n } = useCountdown(time, formatItemCardTimeLeft);\n\n const timeText = timeLeftText\n ? timeLeftText\n : time\n ? formatUtcDateInSwedishTimeZone(time)\n : '';\n\n return (\n <>\n {isCountdownEnabled && isCountdownDone ? (\n {t('itemCard_ended')}\n ) : (\n \n {timeText}\n \n )}\n \n );\n};\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport styles from './wish-list-item.module.scss';\nimport HeartFilledIcon from '@tradera/blueprint/theme/icons2/heart-fill.svg?jsx';\nimport { Button } from '../atoms/button/button';\n\nexport const WishListButton = ({ className, disabled, onClick, toggled }) => {\n const { t } = useTranslator();\n const text = toggled\n ? t('itemCard_savedToWishlist')\n : t('itemCard_saveToWishlist');\n\n const iconClasses = `icon icon-md ${styles.icon} icon-stroke-white ${\n toggled ? 'icon-danger' : ''\n }`;\n\n const combinedClassName = `btn btn-sm p-0 ${styles.button}\n ${className || ''}`;\n\n return (\n \n {toggled ? (\n \n ) : (\n <>\n \n \n \n )}\n \n );\n};\n","import React from 'react';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport * as itemActions from 'tradera/state/items/actions';\nimport { useDispatch } from 'react-redux';\nimport { itemStates } from './item-states';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { Button } from '../atoms/button/button';\n\nexport const ActionButton = ({ item }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const dispatch = useDispatch();\n\n const trackGoToVip = () => {\n GtmService.trackAction('My Tradera', 'Wishlist', 'Go to VIP');\n };\n\n switch (item.itemState) {\n case itemStates.bidderActiveLeading:\n return (\n \n {t('myt_actions_listItemRaiseMaxBidAction')}\n \n );\n case itemStates.bidderActiveReservedPriceNotReached:\n case itemStates.bidderActiveOverbidden:\n case itemStates.generalActive:\n return (\n \n {t('myt_actions_listItemBidAction')}\n \n );\n case itemStates.buyItNowActive:\n case itemStates.shopItemActive:\n return (\n \n {t('myt_actions_listItemBuyAction')}\n \n );\n case itemStates.bidderAuctionRemoved:\n case itemStates.bidderBidRemoved:\n case itemStates.bidderEndedReservedPriceNotReached:\n case itemStates.bidderEndedNotWon:\n case itemStates.buyItNowEnded:\n case itemStates.generalEnded:\n case itemStates.shopItemEnded:\n return (\n \n dispatch(itemActions.wishlist(item.itemId, false))\n }>\n {t('myt_actions_listItemWishListDeleteAction')}\n \n );\n case itemStates.bidderEndedWon:\n case itemStates.shopItemEndedWon:\n case itemStates.buyItNowEndedWon:\n return (\n \n {t('myt_actions_listGotoPurchasesAction')}\n \n );\n default:\n throw new Error('Unknown item state');\n }\n};\n","import React from 'react';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { useLocalizedPriceFormatter } from 'tradera/localization/use-localized-price-formatter';\nimport { useDispatch } from 'react-redux';\nimport * as itemActions from 'tradera/state/items/actions';\nimport itemTypes from 'tradera/constants/item-types';\nimport { EndTimeLabel } from './end-time-label';\nimport { WishListButton } from './wish-list-button';\nimport { ActionButton } from './action-button';\nimport styles from './wish-list-item.module.scss';\n\nexport const ItemDetailsDesktop = ({ item, existsInState, onGoToVipClick }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const localizedPriceFormatter = useLocalizedPriceFormatter();\n\n const dispatch = useDispatch();\n const onWishListButtonClick = (itemId) =>\n dispatch(itemActions.wishlist(itemId));\n\n const isShopItem = item.itemType === itemTypes.SHOP_ITEM;\n\n return (\n <>\n
\n
\n \n {item.shortDescription}\n \n
\n
\n {!isShopItem ? (\n \n ) : (\n
\n {t('myt_listItem_fixedPrice')}\n
\n )}\n {!isShopItem && item.itemType !== itemTypes.PURE_BIN ? (\n \n {t('myt_listItem_numberOfBidsWithCount', {\n count: item.totalBids\n })}\n \n ) : (\n -\n )}\n {!!item.maxBidAmount && (\n \n {t('myt_listItem_maxBidAmount', {\n amount: localizedPriceFormatter(\n item.maxBidAmount\n )\n })}\n \n )}\n
\n
\n \n {t('myt_listItem_sellerTitle')}\n \n \n {item.sellerAlias}\n \n
\n
\n \n
\n onWishListButtonClick(item.itemId)}\n />\n
\n
\n {localizedPriceFormatter(item.price)}\n
\n
\n {t('myt_listItem_shippingPrice', {\n price: localizedPriceFormatter(\n item.preferredShipping.cost\n )\n })}\n
\n \n \n \n );\n};\n","import React from 'react';\nimport styles from './wish-list-item.module.scss';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { useLocalizedPriceFormatter } from 'tradera/localization/use-localized-price-formatter';\nimport * as itemActions from 'tradera/state/items/actions';\nimport { EndTimeLabel } from './end-time-label';\nimport itemTypes from 'tradera/constants/item-types';\nimport { WishListButton } from './wish-list-button';\nimport { ActionButton } from './action-button';\nimport { useDispatch } from 'react-redux';\n\nexport const ItemDetailsMobile = ({ item, existsInState, onGoToVipClick }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const localizedPriceFormatter = useLocalizedPriceFormatter();\n\n const dispatch = useDispatch();\n const onWishListButtonClick = (itemId) =>\n dispatch(itemActions.wishlist(itemId));\n\n const isShopItem = item.itemType === itemTypes.SHOP_ITEM;\n\n return (\n
\n
\n \n {item.shortDescription}\n \n onWishListButtonClick(item.itemId)}\n />\n
\n
\n {!isShopItem ? (\n \n ) : (\n \n {t('myt_listItem_fixedPrice')}\n \n )}\n \n {localizedPriceFormatter(item.price)}\n \n
\n
\n \n {t('myt_listItem_shippingPrice', {\n price: localizedPriceFormatter(\n item.preferredShipping.cost\n )\n })}\n \n {!isShopItem && item.itemType !== itemTypes.PURE_BIN && (\n \n {t('myt_listItem_numberOfBidsWithCount', {\n count: item.totalBids\n })}\n \n )}\n
\n
\n \n {item.sellerAlias}\n \n {!!item.maxBidAmount && (\n \n {t('myt_listItem_maxBidAmount', {\n amount: localizedPriceFormatter(item.maxBidAmount)\n })}\n \n )}\n
\n
\n \n
\n
\n );\n};\n","import React from 'react';\nimport styles from './wish-list-item.module.scss';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport { Badge } from './badge';\nimport Shimmer from 'tradera/legacy/static/components/shimmer/shimmer';\nimport { ItemDetailsDesktop } from './item-details-desktop';\nimport { ItemDetailsMobile } from './item-details-mobile';\n\nexport const WishListItem = ({\n item,\n existsInState,\n isMobile,\n onGoToVipClick = () => {}\n}) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n\n return (\n \n
\n \n }\n className={`w-100 d-block overflow-hidden ${styles.image}`}\n src={item.imageUrl.replace('/medium/', '/small-fit/')}\n title={item.shortDescription}\n alt={item.shortDescription}\n />\n \n \n
\n {isMobile ? (\n \n ) : (\n \n )}\n \n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"inputWrapper\":\"inputWrapper--XsKcq\",\"error\":\"error--zP75I\",\"disabled\":\"disabled--gTTUD\",\"input\":\"input--NBcoq\",\"hidePlaceholderOnFocus\":\"hidePlaceholderOnFocus--tq9My\"};","import React from 'react';\nimport cn from 'classnames';\nimport css from './base-input-field.module.scss';\n\nexport type BaseInputFieldProps = {\n suffix?: React.ReactNode;\n isInvalid?: boolean;\n align?: 'left' | 'center' | 'right';\n hidePlaceholderOnFocus?: boolean;\n} & React.ComponentPropsWithRef<'input'>;\n\n/**\n * This component is used as a base for other input fields.\n * It's not meant to be used directly.\n *\n */\nexport const BaseInputField = React.forwardRef<\n HTMLInputElement,\n BaseInputFieldProps\n>(function BaseInputField(\n {\n isInvalid,\n className,\n style,\n suffix,\n name,\n hidePlaceholderOnFocus,\n ...props\n },\n ref\n) {\n return (\n \n \n {typeof suffix === 'undefined' ? null : (\n
\n {suffix}\n
\n )}\n \n );\n});\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 8a2 2 0 012 2v1a2 2 0 01-2 2H3a2 2 0 01-2-2v-1c0-1.1.9-2 2-2zm0 1H3c-.5 0-.9.4-1 .9V11c0 .5.4.9.9 1H5c.5 0 .9-.4 1-.9V10c0-.5-.4-.9-.9-1zm8-1a2 2 0 012 2v1a2 2 0 01-2 2h-2a2 2 0 01-2-2v-1c0-1.1.9-2 2-2zm0 1h-2c-.5 0-.9.4-1 .9V11c0 .5.4.9.9 1H13c.5 0 .9-.4 1-.9V10c0-.5-.4-.9-.9-1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 9h4v1H6zm-.3-5.1c.3 0 .5.3.4.6s-.3.4-.6.4c-.5-.1-.7-.1-.8.1L3 8.7c-.2.3-.5.4-.7.3s-.4-.4-.3-.7l1.7-3.8c.4-.6 1.1-.8 2-.6zm4.6 0c-.3 0-.5.3-.4.6 0 .3.3.5.6.4.5-.1.8 0 .8.1L13 8.7c.2.3.5.4.7.3.3-.1.4-.4.3-.7l-1.7-3.8c-.4-.6-1.1-.8-2-.6z\"\n}))));","// extracted by mini-css-extract-plugin\nexport default {\"side-menu\":\"side-menu--G-HL-\",\"sideMenu\":\"side-menu--G-HL-\",\"side-menu__from-right\":\"side-menu__from-right--YRtKQ\",\"sideMenuFromRight\":\"side-menu__from-right--YRtKQ\"};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TransitionGroup } from 'react-transition-group';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport {\n EnterFrom,\n EnterFade\n} from 'tradera/components/transitions/transitions';\nimport { Overlay } from 'tradera/components/scrollable-modal/overlay';\nimport styles from './side-menu.module.scss';\n\nconst SideMenu = ({\n children,\n fromLeft,\n show,\n onDismiss,\n allowFullScreen = false,\n width = '35rem'\n}) => (\n \n {show && (\n \n \n \n )}\n {show && (\n \n \n \n {children}\n \n \n \n )}\n \n);\n\nSideMenu.defaultProps = {\n fromLeft: true\n};\n\nSideMenu.propTypes = {\n children: PropTypes.node,\n show: PropTypes.bool,\n fromLeft: PropTypes.bool\n};\n\nexport default SideMenu;\n","// extracted by mini-css-extract-plugin\nexport default {\"row\":\"row--qyxpK\"};","import React from 'react';\nimport {\n selectCurrencies,\n selectPreferredCurrency\n} from 'tradera/state/multi-currency/selectors';\nimport { setPreferredCurrencyThunk } from 'tradera/state/multi-currency/actions';\nimport Flag from 'tradera/components/flag/flag';\nimport { mapCurrencyCodeToCountryCode } from 'tradera/localization/map-currency-code-to-country-code';\nimport styles from './currency-select.module.scss';\nimport CheckIcon from '@tradera/blueprint/theme/icons2/check.svg?jsx';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport { useAppDispatch, useAppSelector } from 'tradera/state/hooks';\n\ntype Currency = {\n code: string;\n shortName: string;\n longName: string;\n};\n\ntype CurrencySelectProps = {\n onCurrencySelected?: () => void;\n inProfileMenu?: boolean;\n title?: string;\n};\n\nexport const CurrencySelect = ({\n onCurrencySelected,\n inProfileMenu,\n title\n}: CurrencySelectProps) => {\n const currencies: Currency[] = useAppSelector((state) =>\n selectCurrencies(state)\n );\n const preferredCurrency = useAppSelector((state) =>\n selectPreferredCurrency(state)\n );\n const dispatch = useAppDispatch();\n\n const handleOnClick = (code: string) => {\n dispatch(setPreferredCurrencyThunk(code));\n onCurrencySelected && onCurrencySelected();\n };\n\n return (\n
\n {title && (\n
\n {title}\n
\n )}\n {currencies.map(({ code, shortName, longName }) => (\n {\n handleOnClick(code);\n }}>\n \n \n {preferredCurrency.code === code ? (\n \n {shortName} - {longName}\n \n ) : (\n \n {shortName} - {longName}\n \n )}\n \n {preferredCurrency.code === code && (\n \n )}\n \n ))}\n
\n );\n};\n","import { SAVE_SEARCH_MODAL_ID } from 'tradera/apps/tradera/components/discover/components/search-results/save-search-modal';\nimport {\n stripPaginationFromQueryParameters,\n stripSaveSearchNameFromQueryParameters,\n toSearchString\n} from 'tradera/utils/url';\nimport { openModal, showSaveSearchBanner } from '../ui/reducer';\nimport { getPersonalisedSearches } from './api';\nimport {\n setRecentSearchLocalStorage,\n removeRecentSearchLocalStorage\n} from './helpers';\nimport {\n setPersonalisedSearches,\n setPersonalisedSearchesStatus,\n setRecentSearches,\n removeRecentSearch\n} from './reducer';\nimport cookieUtil from 'tradera/utils/cookie';\nimport { SAVE_SEARCH_MODAL_DISMISSED } from 'tradera/constants/cookies';\nimport * as searchGtm from 'tradera/apps/tradera/components/discover/helpers/search-gtm';\n\nexport const fetchPersonalisedSearchesIfNeeded =\n () => async (dispatch, getState) => {\n const { status } = getState().personalisation.searches;\n if (status !== 'NOT_FETCHED') return;\n\n dispatch(setPersonalisedSearchesStatus('LOADING'));\n\n const searchesResult = await getPersonalisedSearches();\n\n const newStatus =\n searchesResult.length > 0 ? 'HAS_DATA' : 'HAS_NO_DATA';\n dispatch(\n setPersonalisedSearches({\n items: searchesResult,\n status: newStatus\n })\n );\n };\n\nexport const addRecentSearches =\n (queryParams, growthbook) => async (dispatch, getState) => {\n const { q } = queryParams;\n\n const prettySearchTerm = q\n .toString()\n .replace(//g, ' ')\n .trim()\n .toLowerCase();\n\n const recentSearches = getState().personalisation.recentSearches;\n\n const existingSearch = recentSearches.find(\n (search) => search.text === prettySearchTerm\n );\n\n let count = 1;\n\n const searchQueryParams = stripPaginationFromQueryParameters(\n stripSaveSearchNameFromQueryParameters(queryParams)\n );\n\n if (existingSearch) {\n const isSameSearch =\n toSearchString(existingSearch.queryParams).toLowerCase() ===\n toSearchString(queryParams).toLowerCase();\n\n if (isSameSearch) {\n count = existingSearch.count + 1;\n\n const featureValue = growthbook?.getFeatureValue(\n 'tgl-339-a-a-b-save-search-bottom-banner',\n 'disabled'\n );\n\n const saveSearchBannerEnabled = featureValue === 'enabled';\n\n if (saveSearchBannerEnabled) {\n if (count % 2 == 0) {\n dispatch(showSaveSearchBanner());\n searchGtm.trackAction(\n 'Save search bottom banner',\n 'Show'\n );\n } else {\n dispatch(showSaveSearchBanner(false));\n }\n } else {\n const dismissCount =\n parseInt(\n cookieUtil.readCookie(SAVE_SEARCH_MODAL_DISMISSED)\n ) || 0;\n\n if (count == 3 && dismissCount < 3) {\n searchGtm.trackAction('Save search modal', 'Show');\n dispatch(\n openModal({\n modalId: SAVE_SEARCH_MODAL_ID,\n data: {\n queryParams: searchQueryParams\n }\n })\n );\n }\n }\n } else {\n count = existingSearch.count;\n }\n }\n\n setRecentSearchLocalStorage(prettySearchTerm, searchQueryParams, count);\n\n dispatch(\n setRecentSearches({\n text: prettySearchTerm,\n count,\n queryParams: searchQueryParams\n })\n );\n };\n\nexport const removeRecentSearches = (searchTerm) => async (dispatch) => {\n removeRecentSearchLocalStorage(searchTerm);\n dispatch(removeRecentSearch(searchTerm));\n};\n","import ENDPOINTS from 'tradera/constants/endpoints';\nimport {\n axiosWithTokenRefresh,\n defaultJsonRequestHeaders,\n handleError,\n logError\n} from 'tradera/utils/api';\n\nexport const getPersonalisedBrands = () => {\n return axiosWithTokenRefresh()\n .get(`${ENDPOINTS.PERSONALISED_SUGGESTIONS}/brands`, {\n headers: defaultJsonRequestHeaders\n })\n .catch(handleError())\n .catch(logError)\n .then((response) => response?.data || []);\n};\n\nexport const getPersonalisedSearches = () => {\n return axiosWithTokenRefresh()\n .get(`${ENDPOINTS.PERSONALISED_SUGGESTIONS}/searches`, {\n headers: defaultJsonRequestHeaders\n })\n .catch(handleError())\n .catch(logError)\n .then((response) => response?.data || []);\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M4.6 3.7c.5.1 1-.2 1.2-.7l.5-1.2c.1-.5.4-.8.9-.8h1.4c.4 0 .8.3 1 .7L10 3c.1.5.7.8 1.2.7l1.6-.4c.4-.1.9.1 1.1.5l.7 1.2c.2.4.2.9-.1 1.2l-1.2 1.2c-.4.4-.4 1 0 1.4l1.2 1.2c.3.3.4.8.1 1.2l-.6 1.1a1 1 0 01-1.1.5l-1.6-.4c-.6-.2-1.2.1-1.3.6l-.5 1.2c-.1.5-.5.8-.9.8H7.2c-.4 0-.8-.3-1-.7l-.5-1.2c-.1-.5-.7-.8-1.2-.7l-1.6.4a1 1 0 01-1.1-.5l-.7-1.2c-.2-.4-.1-.9.2-1.2l1.2-1.2c.4-.4.4-1 0-1.4L1.3 6.1c-.3-.3-.4-.8-.2-1.2l.7-1.2a1 1 0 011.1-.5zm.1.8l-1.1-.2c-.3-.1-.6-.2-.9-.2l-.8 1.3c.4.4.6.7.8.9l1 1.2c.3.3.3.8 0 1.1l-1 1.1c-.1.2-.4.5-.8.9l.7 1.3c.4-.1.7-.1 1-.2l1.4-.3c.5-.1 1.3.4 1.5.8l.4 1.2c-.1.2 0 .4.1.6h1.7c.2-.2.3-.4.3-.6l.5-1.3c.1-.4.9-.8 1.3-.7l1.5.3c.3.1.6.1.9.2l.8-1.2c-.2-.3-.4-.5-.6-.7l-1.1-1.2c-.3-.3-.4-1.4-.1-1.7L13.3 6l.6-.6-.8-1.3c-.3 0-.6.1-.8.1l-1.3.3c-.4.1-1.5-.2-1.6-.6L9 3c-.1-.3-.2-.6-.4-1H7.1c-.1.3-.2.5-.3.7l-.5 1.1c-.1.5-1.1.8-1.6.7zM8 10c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm0-1c.6 0 1-.4 1-1s-.4-1-1-1-1 .4-1 1 .4 1 1 1z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M9.86.19c.21-.24.59-.25.82-.02l2.28 2.28c.22.21.22.56.01.79l-8.57 9.2a.57.57 0 01-.19.13L1.17 13.9a.57.57 0 01-.77-.67l.95-3.52a.57.57 0 01.12-.24zm.43.98l-.7.79 1.67 1.67.72-.77zm.3 3.18L8.92 2.7l-6.65 7.36-.7 2.6 2.17-.95zm-6.77 7.32zM0 14.79c0-.28.22-.5.5-.5h15a.5.5 0 010 .99H.5a.5.5 0 01-.5-.5z\",\n fill: \"#000\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M6.8 1.1c-1.4 0-2.5 1.1-2.5 2.5v3.5h-2c-.3 0-.5.1-.5.5s.2.5.4.5h2v4.4c0 1.4 1.1 2.5 2.5 2.5h5c1.4 0 2.5-1.1 2.5-2.5V3.6c0-1.4-1.1-2.5-2.5-2.5zm-1.6 7v4.4c0 .9.5 1.6 1.3 1.6h5.2c.8 0 1.5-.7 1.5-1.6V3.6c0-.8-.6-1.5-1.5-1.5H6.6c-.8 0-1.3.7-1.3 1.5v3.5h3.6l-1-1.2c-.1-.3-.1-.7.2-.7.2-.1.6-.1.7.1l1.4 2c.1.2.1.4 0 .6l-1.4 2c-.1.2-.4.3-.7.1-.3-.1-.3-.4-.2-.8L8.8 8H5.2z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 34 34\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M31.63 27.49a2.9 2.9 0 01-.1 3.02C30.9 31.5 30 32 28.84 32H5.14c-1.15 0-2.04-.5-2.67-1.5a3.05 3.05 0 01-.14-3.01L14.2 3.74A2.97 2.97 0 0116.99 2c1.3 0 2.23.58 2.78 1.74zm-16.5-17.36v10.62h3.74V10.12zM17 28.86a2.4 2.4 0 001.76-.73 2.41 2.41 0 00.73-1.77c0-.69-.24-1.28-.73-1.77a2.4 2.4 0 00-1.76-.73c-.7 0-1.29.25-1.77.73a2.41 2.41 0 00-.73 1.77c0 .7.24 1.29.73 1.77a2.4 2.4 0 001.77.73z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M4 2C2.6 2 1.5 3.1 1.5 4.5v7C1.5 12.9 2.6 14 4 14h7c1.4 0 2.5-1.1 2.5-2.5v-1.1h-1.2c-1 0-1.8-.8-1.8-1.8s.8-1.8 1.8-1.8h1.2v-2c-.2.1-.5.2-.7.2H3.3c-.3 0-.5-.2-.5-.5S3 4 3.3 4h9.4c.4 0 .8-.3.8-.7v-.6c0-.4-.3-.7-.7-.7zm10.5 4.7v-4c0-1-.8-1.7-1.7-1.7H4C2.1 1 .5 2.6.5 4.5v7C.5 13.4 2.1 15 4 15h7c1.9 0 3.5-1.6 3.5-3.5v-1.2h.5c.3 0 .5-.2.5-.5V7.2c0-.3-.2-.5-.5-.5zm-3 1.8c0-.4.4-.8.8-.8h2.2v1.6h-2.2c-.4.1-.8-.3-.8-.8z\",\n fillRule: \"evenodd\"\n})));","import React from 'react';\n\n// https://github.com/facebook/react/issues/3386#issuecomment-291152357\nconst HighlightWord = ({ text, query = '', icon }) => {\n if (!text) {\n return null;\n }\n\n const [beforeQuery, afterQuery] = query ? text.split(query) : [];\n const hasSplitQuery = beforeQuery && afterQuery;\n return (\n \n {icon && icon}\n {hasSplitQuery && {beforeQuery}}\n {hasSplitQuery ? query : text}\n {hasSplitQuery && {afterQuery}}\n \n );\n};\n\nexport default HighlightWord;\n","import React from 'react';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport ALink from 'tradera/components/alink/alink';\nimport FilterIcon from '@tradera/blueprint/theme/icons2/filter.svg?jsx';\nimport TimeIcon from '@tradera/blueprint/theme/icons2/time.svg?jsx';\nimport StoreIcon from '@tradera/blueprint/theme/icons2/store.svg?jsx';\nimport HighlightWord from './highlight-word';\nimport CloseNarrowIcon from '@tradera/blueprint/theme/icons/close-narrow.svg?jsx';\nimport { toSearchString } from 'tradera/utils/url';\nimport { Button } from 'tradera/components/atoms/button/button';\n\n// Dont blur input when there's a mouseclick on the search suggestions\nconst preventDefault = (evt) => {\n evt.preventDefault();\n};\n\n// Without this, the search field dropdown is collapsed. Fixes TWT-993.\nconst fixFlexHeightInIpadMini2Style = { flexBasis: 'auto' };\n\nexport const PreviousSearchesListItem = ({\n changeSearchTerm,\n inSPA,\n isSelected,\n onPreviousSearchRemoved,\n searchTerm,\n selectedCategoryId,\n text,\n queryParams\n}) => {\n const searchString = toSearchString(\n queryParams || { q: text, categoryId: selectedCategoryId || null }\n );\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n \n {\n changeSearchTerm(text, event);\n }}\n onMouseDown={preventDefault}\n data-suggestion\n data-previous-suggestion={text}\n data-ga-category=\"User search\"\n data-ga-action=\"Suggestion - Previous Query\"\n data-ga-label={searchTerm}>\n }\n />\n \n {\n onPreviousSearchRemoved(text);\n }}\n onMouseDown={preventDefault}\n type=\"reset\">\n \n \n \n );\n};\n\nexport const SearchesSuggestionsListItem = ({\n changeSearchTerm,\n inSPA,\n isSelected,\n item,\n searchTerm,\n selectedCategoryId\n}) => {\n const categoryId = item.category\n ? item.category.id\n : selectedCategoryId\n ? selectedCategoryId\n : 0;\n const { toLocalizedUrl } = useUrlLocalizer();\n const { t } = useTranslator();\n\n return (\n changeSearchTerm(item.text, event)}\n onMouseDown={preventDefault}\n data-suggestion\n data-search-suggestion={item.text}\n data-ga-category=\"User search\"\n data-ga-action={`Suggestion - ${\n item.category ? 'Category' : 'Auto Query'\n }`}\n data-ga-label={item.text}>\n \n \n {' '}\n {item.category\n ? `${t('search_suggestion_within')} ${item.category.name}`\n : ''}\n \n \n );\n};\n\nexport const ShopsSuggestionsListItem = ({\n changeSearchTerm,\n inSPA,\n isSelected,\n item,\n searchTerm\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const suggestionUrl =\n item.name === 'Musikhjälpen'\n ? toLocalizedUrl('/charity/musikhjalpen')\n : toLocalizedUrl(`/profile/items/${item.memberId}/${item.urlName}`);\n return (\n changeSearchTerm(item.text, event)}\n onMouseDown={preventDefault}\n data-suggestion\n data-shop-suggestion={item.name}\n data-ga-category=\"User search\"\n data-ga-action=\"Suggestion - Shop\"\n data-ga-label={item.name}>\n {t('siteHeader_shop')}\n \n \n );\n};\n\nexport const CharitiesSuggestionsListItem = ({\n changeSearchTerm,\n // inSPA,\n isSelected,\n item,\n searchTerm\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n changeSearchTerm(item.text)}\n onMouseDown={preventDefault}\n data-suggestion\n data-shop-suggestion={item.name}\n data-ga-category=\"User search\"\n data-ga-action=\"Suggestion - Charity\"\n data-ga-label={item.name}>\n {t('siteHeader_cause')}\n \n \n );\n};\n\nexport const CampaignSuggestionsListItem = ({\n changeSearchTerm,\n // inSPA,\n isSelected,\n item,\n searchTerm\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n changeSearchTerm(item.text, event)}\n onMouseDown={preventDefault}\n data-suggestion\n data-campaign-suggestion={item.headline}\n data-ga-category=\"User search\"\n data-ga-action=\"Suggestion - Campaign\"\n data-ga-label={item.headline}>\n \n {t('siteHeader_campaign')}\n \n \n \n );\n};\n\nexport const AdvancedSearchListItem = ({ isSelected }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n \n \n {t('siteHeader_searchAdvanced')}\n \n );\n};\n\nexport const SellerSearchListItem = ({ isSelected, searchTerm }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const searchUrl = '/search/detailed/member';\n const href = searchTerm\n ? toLocalizedUrl(`${searchUrl}?q=${searchTerm}`)\n : toLocalizedUrl(searchUrl);\n\n return (\n \n \n {t('siteHeader_searchSeller')}\n \n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"removePreviousSearchButton\":\"removePreviousSearchButton--1bzDq\"};","import React from 'react';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\nimport {\n AdvancedSearchListItem,\n SellerSearchListItem\n} from './suggestion-list-items';\nimport { toSearchString } from 'tradera/utils/url';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { KEYCODE } from '../search';\nimport styles from './search-suggestion-section.module.scss';\nimport { useGetTrendingSearchesQuery } from 'tradera/state/services/discover-api';\n\nconst preventDefault = (e) => {\n e.preventDefault();\n e.stopPropagation();\n};\n\nconst mapTrendingSearchesToTags = (trendingSearches) =>\n trendingSearches?.map((search) => ({\n index: search.index,\n name: search.query || '',\n url: `/search?q=${search.query}${\n search.categoryId ? `&categoryId=${search.categoryId}` : ''\n }&sortBy=MostBids`\n }));\n\nexport const SearchSuggestionSection = ({\n suggestions,\n onPreviousSearchRemoved,\n changeSearchTerm\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n\n const previousSearches = suggestions.filter(\n (entry) => entry.type === 'previous'\n );\n\n const { data: trendingSearchesItems } =\n useGetTrendingSearchesQuery(undefined);\n\n const trendingSearches = React.useMemo(\n () => mapTrendingSearchesToTags(trendingSearchesItems),\n [trendingSearchesItems]\n );\n\n const previousSearchesEmpty =\n !previousSearches || previousSearches.length === 0;\n const trendingSearchesEmpty =\n !trendingSearches || trendingSearches.length === 0;\n\n const sectionEmpty = previousSearchesEmpty && trendingSearchesEmpty;\n\n const removePreviousSearch = (e, searchTerm) => {\n if (e.type === 'click' || e.which === KEYCODE.ENTER) {\n preventDefault(e);\n onPreviousSearchRemoved(searchTerm);\n }\n };\n\n return (\n <>\n {!sectionEmpty && (\n
\n {!previousSearchesEmpty && (\n <>\n

\n {t('siteHeader_recentSearches')}\n

\n
\n {previousSearches.map((previousSearch) => (\n {\n changeSearchTerm(\n previousSearch.text,\n e\n );\n }}\n onMouseDown={(e) => e.preventDefault()}\n data-suggestion-section-button\n useLink={true}>\n \n {previousSearch.text}\n \n \n removePreviousSearch(\n e,\n previousSearch.text\n )\n }\n onKeyDown={(e) =>\n removePreviousSearch(\n e,\n previousSearch.text\n )\n }\n data-suggestion-section-button-remove\n tabIndex={0}\n type=\"reset\">\n \n
\n \n ))}\n
\n \n )}\n {!trendingSearchesEmpty && (\n <>\n

\n {t('siteHeader_trendingSearches')}\n

\n
\n {trendingSearches.map((trendingSearch) => (\n {\n changeSearchTerm(\n trendingSearch.name,\n e\n );\n }}\n onMouseDown={(e) => e.preventDefault()}\n data-suggestion-section-button\n useLink={true}>\n {trendingSearch.name}\n \n ))}\n
\n \n )}\n \n )}\n
\n {suggestions.map((entry) => {\n switch (entry.type) {\n case 'link-advanced-search':\n return ;\n case 'link-seller-search':\n return ;\n default:\n return null;\n }\n })}\n
\n \n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { SearchSuggestionSection } from './search-suggestion-section';\nimport {\n CampaignSuggestionsListItem,\n PreviousSearchesListItem,\n SearchesSuggestionsListItem,\n ShopsSuggestionsListItem,\n AdvancedSearchListItem,\n SellerSearchListItem,\n CharitiesSuggestionsListItem\n} from './suggestion-list-items';\nimport { KEYCODE } from '../search';\n\nconst SearchSuggestion = ({\n suggestions,\n inSPA,\n visible,\n onChangeSearchTerm,\n onPreviousSearchRemoved,\n searchTerm,\n selectedCategoryId,\n selectedIndex,\n searchSuggestionsElementRef,\n setIsSearchInputFocused\n}) => {\n const handleSuggestionsBlur = (e) => {\n if (!e.currentTarget.contains(e.relatedTarget)) {\n setIsSearchInputFocused(false);\n }\n };\n\n const handleKeyDown = (e) => {\n if (e.which === KEYCODE.ESC) {\n setIsSearchInputFocused(false);\n }\n };\n\n return (\n \n {searchTerm ? (\n
\n {suggestions.map((entry, index) => {\n const componentProps = {\n changeSearchTerm: onChangeSearchTerm,\n inSPA: inSPA,\n isSelected: index === selectedIndex,\n item: entry.item,\n key: entry.key,\n searchTerm: searchTerm,\n selectedCategoryId: selectedCategoryId,\n text: entry.text,\n queryParams: entry.queryParams\n };\n switch (entry.type) {\n case 'previous':\n return (\n \n );\n case 'suggested-campaign':\n return (\n \n );\n case 'suggested-item':\n return (\n \n );\n case 'suggested-shop':\n return (\n \n );\n case 'suggested-charity':\n return (\n \n );\n case 'link-advanced-search':\n return (\n \n );\n case 'link-seller-search':\n return (\n \n );\n default:\n throw new Error(\n 'unhandled entry type: ',\n JSON.stringify(entry)\n );\n }\n })}\n
\n ) : (\n \n )}\n \n );\n};\n\nSearchSuggestion.propTypes = {\n allSuggestions: PropTypes.array,\n isSearchInputFocused: PropTypes.bool,\n onChangeSearchTerm: PropTypes.func,\n onPreviousSearchRemoved: PropTypes.func,\n previousSearches: PropTypes.array,\n searchTerm: PropTypes.string,\n selectedCategoryId: PropTypes.number,\n selectedIndex: PropTypes.number,\n setSearchSuggestionsElement: PropTypes.func\n};\n\nexport default SearchSuggestion;\n","export const HOVER_MENUS = {\n WISHLIST: 'Wishlist',\n SELL: 'Selling',\n BUY: 'Buying',\n LOCALIZATION: 'Localization',\n CURRENCY: 'Currency',\n HOW_TRADERA_WORKS: 'HowTraderaWorks'\n} as const;\n","import { useEffect } from 'react';\n\nexport const useOnMount = (fn) => {\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return useEffect(fn, []);\n};\n\nexport const useOnHydration = useOnMount;\n","/* eslint-disable better-mutation/no-mutation */\n/**\n * Debounce function\n * Borrowed from underscore;\n */\nexport const debounce = function (func, wait, immediate) {\n let timeout;\n return function () {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const context = this,\n args = arguments;\n const later = function () {\n timeout = null;\n if (!immediate) {\n func.apply(context, args);\n }\n };\n const callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) {\n func.apply(context, args);\n }\n };\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 14.1 14.1\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.4 7l5.7 5.7-1.3 1.3L7 8.4l-5.7 5.7L0 12.8l5.7-5.7L0 1.3 1.3 0 7 5.7 12.7 0l1.4 1.3z\"\n})));","import React from 'react';\nimport classnames from 'classnames';\n\ntype RadioSwitchOption = {\n name: React.ReactNode;\n value: string;\n className?: string;\n style?: React.CSSProperties;\n disabled?: boolean;\n};\n\nexport type RadioSwitchProps = Omit<\n React.ComponentPropsWithoutRef<'div'>,\n 'defaultChecked' | 'checked'\n> & {\n options: RadioSwitchOption[];\n handleOnChange: (value: string) => void;\n id: string;\n dynamic?: boolean;\n} & (\n | {\n /**\n * Cannot be used together with `defaultChecked`\n */\n checked?: never;\n /**\n * Cannot be used together with `checked`\n */\n defaultChecked: string;\n }\n | {\n /**\n * Cannot be used together with `defaultChecked`\n */\n checked: string;\n /**\n * Cannot be used together with `checked`\n */\n defaultChecked?: never;\n }\n );\n\nexport const RadioSwitch = ({\n checked,\n defaultChecked,\n className,\n handleOnChange,\n id,\n options,\n dynamic = false,\n ...otherProps\n}: RadioSwitchProps) => {\n return (\n \n {options.map((option) => {\n return (\n option.value && (\n \n {\n if (!option.disabled)\n handleOnChange(e.target.value);\n }}\n disabled={option.disabled}\n />\n \n {option.name}\n \n \n )\n );\n })}\n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M3.9 3.5A5.2 5.2 0 002 7.3c0 1 .5 2.6 1.3 3.4a9.47 9.47 0 01.8 3.1l.9-.4.2.5-.2-.5c1-.5 1.8-.9 2.9-.9h.3c1.8 0 2.8-.6 4-1.5 1.1-.8 1.8-2.4 1.8-3.7s-.7-3-1.9-3.9C11 2.6 10 2 8.1 2 6.3 2 5 2.6 3.9 3.5zm-.6-.8C4.6 1.7 6.1 1 8.1 1s3.3.6 4.6 1.7 2.3 3 2.3 4.7c0 1.6-.9 3.6-2.2 4.6-1.4 1-2.6 1.5-4.6 1.5H8c-1 0-1.6.3-2.5.7l-1.6.8c-.1.1-.3.1-.5 0-.1-.1-.2-.2-.2-.4v-.3c-.1-1-.3-2-.7-2.9-.9-1-1.5-2.7-1.5-4.1 0-1.6.9-3.6 2.3-4.6z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"language-select\":\"language-select--RSodX\",\"languageSelect\":\"language-select--RSodX\",\"language-select-row\":\"language-select-row--qcNla\",\"languageSelectRow\":\"language-select-row--qcNla\"};","// extracted by mini-css-extract-plugin\nexport default {\"translation-preferred-form-toggle-input\":\"translation-preferred-form-toggle-input--Guynx\",\"translationPreferredFormToggleInput\":\"translation-preferred-form-toggle-input--Guynx\"};","import React from 'react';\nimport { touchWebClient } from 'tradera/utils/http';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { selectAutomaticTranslationPreferred } from 'tradera/state/language/selectors';\nimport styles from './translation-preferred-menu-item.module.scss';\nimport { setAutomaticTranslationPreferred } from 'tradera/state/language/reducer';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { selectIsLoggedIn } from 'tradera/state/member/selectors';\n\nexport const TranslationPreferredMenuItem = () => {\n const { t } = useTranslator();\n const dispatch = useDispatch();\n const automaticTranslationPreferred = useSelector(\n selectAutomaticTranslationPreferred\n );\n const isLoggedIn = useSelector(selectIsLoggedIn);\n\n const onAutomaticTranslationPreferredChanged = async (e) => {\n const checked = e.target.checked;\n await touchWebClient.post(\n 'my/profile/save-automatic-translation-preferred-setting',\n { isAutomaticTranslationPreferred: checked }\n );\n\n dispatch(\n setAutomaticTranslationPreferred({\n automaticTranslationPreferred: checked\n })\n );\n };\n return isLoggedIn ? (\n
\n \n {t('profileMenu_translationPreferredHeading')}\n \n \n
\n {t('profileMenu_translationPreferredText')}\n
\n
\n ) : null;\n};\n","import React from 'react';\nimport {\n selectAvailableLanguages,\n selectPreferredLanguage\n} from 'tradera/state/language/selectors';\nimport { setPreferredLanguage } from 'tradera/state/language/actions';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { SURVEYS } from 'tradera/constants/surveys';\nimport Flag from 'tradera/components/flag/flag';\nimport { getCountryCodeForFlagFromLanguage } from 'tradera/localization/languagecode';\nimport { useQualtive } from 'tradera/hooks/use-qualtive';\nimport CheckIcon from '@tradera/blueprint/theme/icons2/check.svg?jsx';\nimport styles from './language-select.module.scss';\nimport { TranslationPreferredMenuItem } from './translation-preferred-menu-item';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport { useAppDispatch, useAppSelector } from 'tradera/state/hooks';\n\ntype PlainLanguageSelectProps = {\n inProfileMenu?: boolean;\n title?: string;\n};\n\nexport const LanguageSelect = ({\n inProfileMenu,\n title\n}: PlainLanguageSelectProps) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const { isQualtiveEnabled, openQualtiveModal } = useQualtive();\n const dispatch = useAppDispatch();\n const availableLanguages = useAppSelector(selectAvailableLanguages);\n const preferredLanguage = useAppSelector(selectPreferredLanguage);\n\n const languages = useIsFeatureEnabled('french-dutch-selectable')\n ? availableLanguages\n : availableLanguages?.filter(\n (x) => !['fr', 'nl'].includes(x.languageCodeIso2 || '')\n );\n\n const onLanguageChanged = (code: string) => {\n if (preferredLanguage?.languageCodeIso2 === code) {\n return;\n }\n dispatch(setPreferredLanguage(code, toLocalizedUrl));\n };\n return (\n
\n {title && (\n
\n {title}\n
\n )}\n {languages?.map(({ languageCodeIso2, displayName }) => (\n {\n onLanguageChanged(languageCodeIso2 || '');\n }}\n data-language-select={languageCodeIso2}>\n \n \n {preferredLanguage?.languageCodeIso2 ===\n languageCodeIso2 ? (\n {displayName}\n ) : (\n {displayName}\n )}\n \n {preferredLanguage?.languageCodeIso2 ===\n languageCodeIso2 && (\n \n )}\n \n ))}\n \n {isQualtiveEnabled && (\n
\n {t('siteHeader_languageDisclaimerShort')} \n openQualtiveModal(SURVEYS.language)}>\n {t('siteHeader_languageLeaveFeedBack')}\n \n
\n )}\n
\n );\n};\n","export const isDev = () =>\n process && process.env && process.env.NODE_ENV !== 'production';\n\nexport const warnIfDevBuild = (moduleName) => {\n if (isDev()) {\n console.log(\n `%c Warning: This is a Dev build of ${moduleName}`,\n 'background:red; color:white; font-size:18px;'\n );\n }\n};\n\n/**\n * helper function that is called after the header has been loaded. useful when you want to have the redux loaded before you start\n * to dispatch actions.\n * @param {func} callback\n */\nexport const onModuleLoaded = (callback) => {\n const isModuleLoaded = () =>\n window.document.body.getAttribute('data-module-loaded') === 'true';\n\n try {\n if (isModuleLoaded()) {\n callback();\n }\n const observer = new MutationObserver((mutationsList) => {\n const element = mutationsList.filter(\n (item) => item.attributeName === 'data-module-loaded'\n );\n if (element !== null && isModuleLoaded()) {\n callback();\n }\n });\n observer.observe(window.document.body, { attributes: true });\n // eslint-disable-next-line no-empty\n } catch (error) {}\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport * as Sentry from '@sentry/react';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { getErrorMessage } from 'tradera-backend/utils/error';\n\nlet log;\n\n(async () => {\n if (isServer) {\n const { Logger } = await import(\n '@tradera-internal/infrastructure-logging'\n );\n // eslint-disable-next-line better-mutation/no-mutation\n log = new Logger('ApplicationErrorBoundary');\n }\n})();\n\nclass ApplicationErrorBoundary extends React.Component {\n componentDidCatch() {}\n\n onError(error) {\n const { capture = true, loggingContext } = this?.props || {};\n if (typeof capture === 'function') {\n capture(error);\n }\n if (isServer && log) {\n const errorMessage = getErrorMessage(error);\n log.error(errorMessage, loggingContext, error);\n }\n }\n\n render() {\n const { children, fallback, capture } = this.props;\n\n if (!capture) {\n return children;\n }\n\n return (\n this.onError(error)}>\n {children}\n \n );\n }\n}\n\nApplicationErrorBoundary.propTypes = {\n // Capture function, if false then errors are silently ignored\n capture: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]).isRequired,\n fallback: PropTypes.node\n};\n\nApplicationErrorBoundary.defaultProps = {\n capture: true,\n fallback: null\n};\n\nexport default ApplicationErrorBoundary;\n","import { getMemberIdFromAuthCookie, getExpiryFromAuthCookie } from './cookies';\n\nconst getClientIPFromXForwardedForHeader = (req) => {\n // In production, we will get the X-Forwarded-For header from the Google's Load Balancer and Kubernetes Proxy.\n // See https://stackoverflow.com/a/46691172, the header will come in the following format:\n // X-Forwarded-For: , , , \n // For the purpose of logging we make it simple and assume there are no unverified IPs at the beginning of the header.\n return req.headers?.['x-forwarded-for']?.split(',').shift().trim();\n};\n\nconst getClientIPFromXRealIPHeader = (req) => {\n return req.headers?.['x-real-ip'];\n};\n\nconst getClientIP = (req) => {\n return (\n getClientIPFromXForwardedForHeader(req) ||\n getClientIPFromXRealIPHeader(req) ||\n req.socket?.remoteAddress\n );\n};\n\nexport const getLoggingContext = (context = {}) => {\n const { locale, req = {}, resolvedUrl } = context;\n const { headers = {}, method, url } = req;\n const memberId = getMemberIdFromAuthCookie(req);\n const authTokenExpiry = getExpiryFromAuthCookie(req);\n const loggingContext = {\n method,\n url: resolvedUrl || url,\n locale,\n ip: getClientIP(req),\n userAgent: headers['user-agent'],\n referer: headers['referer'],\n memberId,\n authTokenExpiry\n };\n return loggingContext;\n};\n\nexport const getErrorMessage = (error) => {\n switch (typeof error) {\n case 'string':\n return error;\n case 'object':\n if (error?.name && error?.message) {\n return `${error.name}: ${error.message}`;\n } else if (error?.message) {\n return error.message;\n }\n return `unknown error object: ${error}`;\n default:\n return `unknown error type caught: ${error}`;\n }\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 1.1c.2-.1.4-.1.5 0 1.2.6 1.9 1.7 2.4 2.8.2.6.4 1.2.5 1.8.1-.4.1-1-.1-1.5-.1-.2 0-.5.2-.6.2-.1.4-.1.6 0 2.3 1.4 3.5 3.7 3.5 6.1 0 2.4-1.5 4.3-3.6 5.1-.7.2-1.4.2-2 .2-.5 0-1.1 0-1.7-.2-2-.6-3.6-2.3-3.6-4.6 0-1.8.8-3 1.6-4.2.1-.1.1-.2.2-.2.8-1.2 1.5-2.4 1.3-4.2 0-.2 0-.4.2-.5zm.8 1.4C6.7 4.1 6 5.2 5.3 6.3c0 .1-.1.1-.1.2-.8 1.2-1.4 2.2-1.4 3.7 0 1.8 1.3 3.2 2.9 3.7.4.1.8.1 1.3.1.6 0 1.1 0 1.5-.2 1.7-.6 2.9-2.2 2.9-4.2 0-1.7-.7-3.4-2.1-4.6 0 1.1-.6 2-1.2 2.4-.2.1-.4.1-.5 0 0 .1-.1-.1-.1-.3 0-.8-.1-1.9-.5-2.9-.3-.6-.7-1.2-1.2-1.7z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n})));","import { useMemo } from 'react';\nimport { useHistory } from 'react-router-dom';\nimport { useRouter } from 'next/router';\nimport { isNextJs } from 'tradera/utils/nextjs';\n\nexport const useNavigation = (isNextDataFetchingDisabled) => {\n const nextRouter = useRouter();\n const touchwebHistory = useHistory();\n\n return useMemo(\n () => ({\n push: (location) => {\n if (isNextJs) {\n const url = location.pathname\n ? `${location.pathname}${location.search}`\n : location;\n return nextRouter.push(url, undefined, {\n shallow: isNextDataFetchingDisabled\n });\n }\n return touchwebHistory.push(location);\n },\n refresh: () => {\n if (isNextJs) {\n // Trigger fetching data from getServerSideProps().\n return nextRouter.replace(window.location, undefined, {\n shallow: isNextDataFetchingDisabled\n });\n }\n throw new Error('This is only for NextWeb!');\n }\n }),\n [isNextDataFetchingDisabled, nextRouter, touchwebHistory]\n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M15.5 5.6c0-2.6-1.6-4.2-3.5-4.5-1.5-.3-3.1.2-4 1.4C7.1 1.2 5.4.8 4 1.1 2.1 1.5.5 3 .5 5.6c0 2.7 2 6 7.2 9.3.2.1.4.1.5 0 5.3-3.3 7.3-6.6 7.3-9.3z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M14.4 3.4c.2.2.2.5 0 .7l-8.2 8.4c-.1.1-.3.1-.4.1s-.3-.1-.4-.1L1.6 8.6c-.2-.2-.2-.5 0-.7s.5-.2.7 0l3.4 3.5 7.9-8c.2-.1.6-.1.8 0z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 1.6h.8c1 0 2.1.4 2.8 1.1l1.7 1.7c.4.4.4.9.1 1.3l-.1.1L14 7.1c-.2.2-.5.3-.8.3l-.8-.1v7.3H3.6V7.3l-.8.1c-.3 0-.6-.1-.8-.3L.7 5.8C.4 5.5.3 4.9.6 4.5l.1-.1 1.7-1.7c.8-.7 1.8-1.1 2.8-1.1H6c0 1.1.9 2 2 2s2-.9 2-2zm1 1h-.2c-.4 1.2-1.5 2-2.8 2-1.2 0-2.3-.7-2.8-1.8v-.2H5c-.6 0-1.2.3-1.7.7l-.2.2-1.7 1.6 1.3 1.2 1.9-.2v7.4h6.8V6.1l1.9.2L14.6 5l-1.7-1.7c-.5-.3-1.2-.6-1.9-.7z\",\n fill: \"#282828\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M6.6 2.5c-.3 0-.5.2-.5.5s.2.5.5.5h7.9c.3 0 .5-.2.5-.5s-.2-.5-.5-.5zm0 5c-.3 0-.5.2-.5.5s.2.5.5.5h7.9c.3 0 .5-.2.5-.5s-.2-.5-.5-.5zM6.1 13c0-.3.2-.5.5-.5h7.9c.3 0 .5.2.5.5s-.2.5-.5.5H6.6c-.3 0-.5-.2-.5-.5zM1.5 2.5c-.3 0-.5.2-.5.5s.2.5.5.5h2c.3 0 .5-.2.5-.5s-.2-.5-.5-.5zM1 8c0-.3.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5h-2c-.3 0-.5-.2-.5-.5zm.5 4.5c-.3 0-.5.2-.5.5s.2.5.5.5h2c.3 0 .5-.2.5-.5s-.2-.5-.5-.5z\",\n fillRule: \"evenodd\"\n})));","import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { memberIdentificationClient } from 'tradera/utils/http';\nimport { Trans, useTranslator } from 'tradera/lang/translate';\nimport { LocalLoader } from 'tradera/components/loader/loader';\nimport useIsDesktop from 'tradera/hooks/use-is-desktop';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { useAppSelector } from 'tradera/state/hooks';\nimport { selectPreferredLanguageCode } from 'tradera/state/language/selectors';\n\nconst sleep = (delay) => new Promise((resolve) => setTimeout(resolve, delay));\n\nconst STATE = {\n VERIFYING: 'VERIFYING',\n ERROR_UNAVAILABLE: 'ERROR_UNAVAILABLE',\n CONTACT_CUSTOMER_SUPPORT: 'CONTACT_CUSTOMER_SUPPORT'\n};\n\nexport const handleMitIdQueryParam = (\n identifiedQueryParam,\n publishAction,\n errorAction,\n t\n) => {\n if (identifiedQueryParam === '1') {\n memberIdentificationClient\n .command('MitIdSessionStatus', {})\n .then(({ errors, state }) => {\n if (state !== 'Finished' && errors.length > 0) {\n errors.forEach((error) =>\n GtmService.trackAction('MitId', 'Error', error)\n );\n errorAction(\n t(\n 'international_identification_contactCustomerSupportText'\n )\n );\n } else {\n GtmService.trackAction('MitId', 'Success', 'Mobile');\n publishAction(t);\n }\n return;\n })\n .catch(() => {\n GtmService.trackAction('MitId', 'Error', 'ErrorUnavailable');\n errorAction(t('international_identification_errorUnavailable'));\n });\n } else {\n GtmService.trackAction('MitId', 'Error', 'MitIdError');\n errorAction(\n t('international_identification_contactCustomerSupportText')\n );\n }\n};\n\nexport const MitId = ({\n onVerifyComplete: onVerifyCompleteIncoming,\n onVerifyCancel: onVerifyCancelIncoming,\n purpose\n}) => {\n const onVerifyComplete = useCallbackWrapper(onVerifyCompleteIncoming);\n const onVerifyCancel = useCallbackWrapper(onVerifyCancelIncoming);\n\n const isDesktop = useIsDesktop();\n return isDesktop ? (\n \n ) : (\n \n );\n};\n\nconst useCallbackWrapper = (callback) => {\n const callbackRef = useRef(callback);\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n return useCallback((...args) => callbackRef.current(...args), []);\n};\n\nconst MitIdMobile = ({ onVerifyCancel, purpose }) => {\n useEffect(() => {\n GtmService.trackAction('MitId', 'Start', 'Mobile');\n memberIdentificationClient\n .command('MitIdCreateSession', { purpose, isMobile: true })\n .then(({ redirectUrl }) => (window.location = redirectUrl))\n .catch(onVerifyCancel);\n }, [onVerifyCancel, purpose]);\n return null;\n};\n\nconst MitIdDesktop = ({ onVerifyComplete, onVerifyCancel, purpose }) => {\n const { t } = useTranslator();\n const [isLoading, setIsLoading] = useState(true);\n const abortControllerRef = useRef(new AbortController());\n const languageCodeIso2 = useAppSelector(selectPreferredLanguageCode);\n\n const [verifyingState, setVerifyingState] = useState(STATE.VERIFYING);\n useEffect(() => {\n const abortController = abortControllerRef.current;\n\n if (verifyingState !== STATE.VERIFYING) {\n return;\n }\n\n GtmService.trackAction('MitId', 'Start', 'Desktop');\n const poll = (mitIdWindow) =>\n new Promise((resolve, reject) => {\n const call = () => {\n if (mitIdWindow.closed) {\n return reject({ userClosedWindow: true });\n }\n\n // Result will appear when verification is completed.\n memberIdentificationClient\n .command(\n 'MitIdSessionStatus',\n {},\n { signal: abortController.signal }\n )\n .then(async (result) => {\n if (result && result.isCompleted) {\n mitIdWindow.close();\n return resolve(result);\n }\n\n await sleep(2000);\n return call(mitIdWindow);\n })\n .catch(() => {\n mitIdWindow.close();\n reject();\n });\n };\n call();\n });\n setIsLoading(true);\n memberIdentificationClient\n .command('MitIdCreateSession', {\n purpose,\n isMobile: false,\n languageCodeIso2\n })\n .then(({ redirectUrl }) => {\n const height = 645;\n const width = 450;\n const windowHeight = window.innerHeight;\n const windowWidth = window.innerWidth;\n const top = (window.screenY || 0) + (windowHeight - height) / 2;\n const left = (window.screenX || 0) + (windowWidth - width) / 2;\n const mitIdWindow = window.open(\n redirectUrl,\n '_blank',\n `fullscreen=no,height=${height},width=${width},menubar=no,left=${left},top=${top}`\n );\n return poll(mitIdWindow);\n })\n .then(({ errors }) => {\n setIsLoading(false);\n\n if (errors.length > 0) {\n errors.forEach((error) =>\n GtmService.trackAction('MitId', 'Error', error)\n );\n setVerifyingState(STATE.CONTACT_CUSTOMER_SUPPORT);\n } else {\n GtmService.trackAction('MitId', 'Success', 'Desktop');\n onVerifyComplete();\n }\n return;\n })\n .catch((error) => {\n setIsLoading(false);\n if (error && error.userClosedWindow) {\n GtmService.trackAction(\n 'MitId',\n 'Aborted',\n 'UserClosedWindow'\n );\n onVerifyCancel();\n } else {\n GtmService.trackAction(\n 'MitId',\n 'Error',\n 'ErrorUnavailable'\n );\n setVerifyingState(STATE.ERROR_UNAVAILABLE);\n }\n });\n return () => {\n abortController.abort();\n };\n }, [\n abortControllerRef,\n languageCodeIso2,\n verifyingState,\n setVerifyingState,\n setIsLoading,\n onVerifyComplete,\n onVerifyCancel,\n purpose\n ]);\n\n return (\n
\n {isLoading && }\n {verifyingState === STATE.ERROR_UNAVAILABLE && (\n
\n

\n {t('international_identification_errorUnavailable')}\n

\n onVerifyCancel()}>\n {t('international_identification_return')}\n \n
\n )}\n {verifyingState === STATE.CONTACT_CUSTOMER_SUPPORT && (\n
\n

\n {t(\n 'international_identification_contactCustomerSupportHeading'\n )}\n

\n

\n }}\n />\n

\n onVerifyCancel()}>\n {t('international_identification_return')}\n \n
\n )}\n
\n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8 9.2l4.9-5 1.4 1.4L8 12 1.7 5.6l1.4-1.4z\",\n fillRule: \"evenodd\"\n})));","import { useEffect, useRef } from 'react';\n\n/**\n * Determine the mounted state of the component it is used in\n * @param isMountedDirectly Set to `true` if only the unmount matters and the component is considered mounted before during first render. Set to `false` if component should not be considered mounted until the next render.\n * @returns {boolean} whether the component is mounted or not\n */\nexport const useIsMounted = (isMountedDirectly = false) => {\n const isMounted = useRef(isMountedDirectly);\n useEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted.current;\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M8.04 0c.25 0 .45.2.45.45V3.1a.45.45 0 01-.9 0V.45c0-.25.2-.45.45-.45zm5.31 1.47a.45.45 0 01.23.6l-.82 1.79a.45.45 0 01-.82-.38l.81-1.78a.45.45 0 01.6-.23zm-10.4.07a.45.45 0 01.57.27l.61 1.7a.45.45 0 11-.85.31l-.61-1.7a.45.45 0 01.27-.58zm.93 3.13a.45.45 0 01.34-.15h7.64c.13 0 .26.06.34.16l2.56 2.99a.45.45 0 010 .59l-6.41 7.58a.45.45 0 01-.7 0L1.24 8.26a.45.45 0 010-.6zm.17 1.18l.6 1.66H2.59zM2.56 8.41h2.41l1.76 4.94zm6.74 4.9l4.14-4.9h-2.35zm2.12-5.8h2.01l-1.41-1.65-.6 1.65zm-.2-2.08H9.06L10.6 7.1l.61-1.68zM9.73 7.5h-.33a.45.45 0 100 .9h.71L8 14.22l-2.07-5.8h.8a.45.45 0 000-.9h-.4l1.7-1.86L9.75 7.5zM7.01 5.43L5.46 7.1l-.6-1.67z\"\n})));","export const mapCurrencyCodeToCountryCode = (currencyCode) => {\n const countryCode = {\n sek: 'SE',\n usd: 'US',\n jpy: 'JP',\n gbp: 'GB',\n nok: 'NO',\n eur: 'EU',\n dkk: 'DK'\n }[currencyCode.toLowerCase()];\n if (!countryCode)\n throw `CurrencyCode ${currencyCode} has no mapping to country code`;\n return countryCode;\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 3c.6 0 1 .4 1 1v8c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V4c0-.6.4-1 1-1zM1 4v8h14V4zm7 1c1.7 0 3 1.3 3 3s-1.3 3-3 3-3-1.3-3-3 1.3-3 3-3zm0 1c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zM3.5 5c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm10 5c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm0-5c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm-10 5c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5z\"\n})));","/* eslint-disable better-mutation/no-mutation */\n\n/**\n * Inject a script in the head with given text content\n *\n * @param {string} text\n * @param {object} [attributes]\n * @returns {HTMLElement} - The injected script element\n */\nfunction injectScript(text, attributes) {\n const scriptElement = document.createElement('script');\n Array.from(Object.entries(attributes)).forEach(([name, value]) => {\n scriptElement.setAttribute(name, value);\n });\n scriptElement.appendChild(document.createTextNode(text));\n document.head.appendChild(scriptElement);\n return scriptElement;\n}\n\nfunction loadScript(src, options = {}) {\n const optionsWithDefaults = {\n timeout: options.timeout || 0,\n dataAttributes: options.dataAttributes || {}\n };\n return new Promise((resolve, reject) => {\n if (document.querySelector(`head > script[src=\"${src}\"]`) !== null) {\n resolve();\n return;\n }\n\n const script = document.createElement('script');\n\n let timeoutTimer;\n if (optionsWithDefaults.timeout > 0) {\n timeoutTimer = setTimeout(() => {\n script.onload = null;\n script.onerror = null;\n document.head.removeChild(script);\n reject(new Error('SCRIPT_LOAD_TIMEOUT'));\n }, optionsWithDefaults.timeout);\n }\n\n script.src = src;\n for (const attribute of Object.keys(\n optionsWithDefaults.dataAttributes\n )) {\n script.setAttribute(\n `data-${attribute}`,\n optionsWithDefaults.dataAttributes[attribute]\n );\n }\n script.async = true;\n script.onload = () => {\n if (timeoutTimer) clearTimeout(timeoutTimer);\n resolve();\n };\n script.onerror = (error) => {\n if (timeoutTimer) clearTimeout(timeoutTimer);\n reject(error);\n };\n document.head.appendChild(script);\n });\n}\n\nexport { injectScript, loadScript };\n","import { useSelector } from 'react-redux';\n\nconst useIsLoggedIn = () => useSelector((state) => state.member?.isLoggedIn);\n\nexport default useIsLoggedIn;\n","import { useCallback, useEffect } from 'react';\n\nconst intervals = {};\n\n/**\n * Set up an periodical call to a component callback.\n * Intervals with the same period time are reused.\n * The interval can be cancelled with the returned function. It also cancels itself when no component uses it.\n *\n * @param {function} callback\n * @param {int} period - Milliseconds\n * @returns {function}\n */\nexport function useTicker(callback, period) {\n // Remove callback from interval and cancel interval if no callbacks remain\n const cleanup = useCallback(() => {\n if (intervals[period]) {\n // eslint-disable-next-line better-mutation/no-mutation\n intervals[period].callbacks = intervals[period].callbacks.filter(\n (cb) => cb !== callback\n );\n if (intervals[period].callbacks.length === 0) {\n clearInterval(intervals[period].intervalId);\n // eslint-disable-next-line better-mutation/no-mutation\n intervals[period] = undefined;\n }\n }\n }, [callback, period]);\n\n useEffect(() => {\n if (period <= 0) {\n return;\n }\n // Reuse existing interval\n if (intervals[period]) {\n intervals[period].callbacks.push(callback);\n // Add callback to new interval and save interval id for cancellation\n } else {\n const intervalId = setInterval(() => {\n intervals[period].callbacks.forEach((cb) => cb());\n }, period);\n // eslint-disable-next-line better-mutation/no-mutation\n intervals[period] = { callbacks: [callback], intervalId };\n }\n\n // Return cancellation callback\n return cleanup;\n }, [callback, cleanup, period]);\n\n return cleanup;\n}\n","import { useCallback, useState, useEffect, useMemo, useRef } from 'react';\nimport { useSelector } from 'react-redux';\nimport { useTicker } from 'tradera/hooks/use-ticker';\nimport { syncServerTime } from 'tradera/utils/server-date';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { selectPreferredLanguageCode } from 'tradera/state/language/selectors';\nimport { useDayJs } from 'tradera/hooks/use-day-js';\nimport { useIsMounted } from 'tradera/hooks/use-is-mounted';\n\nconst COUNTDOWN_TICK_INTERVAL = 1000;\nconst COUNTDOWN_DEFAULT_WARNING_LIMIT = 12 * 60 * 60;\n\n/**\n *\n * @return {{timeLeftText: string, isCountdownEnabled: boolean, isCountdownDone: boolean, isTimeLeftBelowWarningLimit: boolean}}\n * isCountdownEnabled - True if client time is synched with server time.\n * isCountdownDone - True if there is no time left after counting down.\n * timeLeftText - The time left, formatted by the given formatter function.\n * isTimeLeftBelowWarningLimit - True if time is below the given warningLimit.\n */\nexport const useCountdown = (\n endDateStr,\n formatTimeLeft,\n warningLimit = COUNTDOWN_DEFAULT_WARNING_LIMIT\n) => {\n const { t } = useTranslator();\n const [isCountdownDone, setIsCountdownDone] = useState(false);\n const [timeLeftText, setTimeLeftText] = useState('');\n const [isCountdownEnabled, setIsCountdownEnabled] = useState(false);\n const [isTimeLeftBelowWarningLimit, setIsTimeLeftBelowWarningLimit] =\n useState(false);\n const previousAdjustment = useRef(0);\n const [synchronizedEndDateStr, setSynchronizedDateStr] =\n useState(endDateStr);\n const endDate = useMemo(() => new Date(endDateStr), [endDateStr]);\n const preferredLanguageCode = useSelector(selectPreferredLanguageCode);\n const isMounted = useIsMounted(true);\n const dayjs = useDayJs();\n\n const resetState = useCallback(() => {\n setIsCountdownEnabled(false);\n setIsCountdownDone(false);\n setTimeLeftText('');\n setIsTimeLeftBelowWarningLimit(false);\n }, []);\n\n useEffect(() => {\n setSynchronizedDateStr(endDateStr);\n resetState();\n }, [endDateStr, resetState]);\n\n const updateTimeLeft = useCallback(\n async (isInitialCall = false) => {\n const serverDate = await syncServerTime(preferredLanguageCode);\n if (!isMounted) {\n // Can't perform a React state update on an unmounted component.\n // This is a no-op, but it indicates a memory leak in your application.\n return;\n }\n if (!serverDate) {\n // In case server date is lost we need to\n // ensure everything looks OK.\n resetState();\n return;\n }\n setIsCountdownEnabled(true);\n\n const secondsLeftWithFractions = (endDate - serverDate) / 1000;\n const previousAdjustmentValue = isNaN(previousAdjustment.current)\n ? 0\n : previousAdjustment.current;\n const adjustedSecondsLeftWithFractions =\n secondsLeftWithFractions - previousAdjustmentValue;\n let secondsLeft = Math.round(adjustedSecondsLeftWithFractions);\n\n // The amount we adjusted the time at this tick.\n // We use this at the next tick to make adjustedSecondsLeftWithFractions\n // as close to whole seconds as possible.\n // In other words adjustedSecondsLeftWithFractions - secondsLeft should be as close to zero\n // as possible.\n let adjustment = secondsLeftWithFractions - secondsLeft;\n\n // Don't let the adjustment to drift over a second up or down.\n if (adjustment >= 1 || adjustment <= -1) {\n // Reset the adjustment\n secondsLeft = Math.round(secondsLeftWithFractions);\n adjustment = secondsLeftWithFractions - secondsLeft;\n }\n\n // The first time here we are not in a tick so\n // ignore adjustment.\n if (!isInitialCall) {\n previousAdjustment.current = adjustment;\n }\n\n const formattedTimeLeft =\n secondsLeft > 0\n ? formatTimeLeft(secondsLeft, t, endDate, serverDate, dayjs)\n : t('vip_ended');\n\n setTimeLeftText(formattedTimeLeft);\n setIsTimeLeftBelowWarningLimit(secondsLeft <= warningLimit);\n\n if (secondsLeft <= 0) {\n setIsCountdownDone(true);\n }\n },\n [\n preferredLanguageCode,\n endDate,\n formatTimeLeft,\n t,\n dayjs,\n warningLimit,\n resetState,\n isMounted\n ]\n );\n\n useEffect(() => {\n updateTimeLeft(true);\n }, [updateTimeLeft]);\n\n useTicker(\n updateTimeLeft,\n isCountdownDone || !isMounted ? 0 : COUNTDOWN_TICK_INTERVAL\n );\n\n // Ensure countdown is not for previous date.\n if (endDateStr !== synchronizedEndDateStr) {\n return {\n timeLeftText: '',\n isCountdownDone: false,\n isCountdownEnabled: false,\n isTimeLeftBelowWarningLimit: false\n };\n }\n\n return {\n timeLeftText,\n isCountdownDone,\n isCountdownEnabled,\n isTimeLeftBelowWarningLimit\n };\n};\n","import { PAGE_NAMES as MYT_PAGE_NAMES } from 'tradera/apps/my-tradera/app/constants/page';\n\nexport type Survey = {\n survey: string;\n supportURL?: string;\n textKey?: string;\n};\n\nexport const SURVEYS: Record = {\n general: {\n survey: 'tradera/hur-tycker-du-att-det-fungerar-att-anvanda-tradera',\n supportURL: 'https://info.tradera.com/'\n },\n language: {\n survey: 'tradera/english-translation---rate-your-experience'\n },\n paynova: {\n survey: 'tradera/hur-tycker-du-att-paynova-fungerar',\n textKey: 'surveys_text_paynova'\n },\n cardVerification: {\n survey: 'tradera/vad-fick-dig-att-avbryta-kortverifieringen'\n },\n bankId: {\n survey: 'tradera/bankid'\n },\n [MYT_PAGE_NAMES.BuyerActiveItems]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-aktiva-annonser'\n },\n [MYT_PAGE_NAMES.BuyerPurchases]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-mina-kop'\n },\n [MYT_PAGE_NAMES.BuyerItemsLost]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-mina-ej-vunna'\n },\n [MYT_PAGE_NAMES.SellerActive]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-aktiva-annonser-2'\n },\n [MYT_PAGE_NAMES.SellerSold]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-salda-annonser'\n },\n [MYT_PAGE_NAMES.SellerUnsold]: {\n survey: 'tradera/hur-tycker-du-det-fungerar-att-filtrera-soka-och-sortera-i-listan-for-osalda-annonser'\n },\n valuationPage: {\n survey: 'tradera/vad-ar-den-vard-hur-tycker-varderingen-funkar-'\n },\n syiDraftPage: {\n survey: 'tradera/hur-fungerar-det-att-skapa-en-annons'\n },\n combinedShipping: {\n survey: 'tradera/samfrakt---som-sljare-hur-fungerar-det-fr-dig'\n },\n payouts: {\n survey: 'tradera/utbetalningar-hur-fungerar-den-for-dig'\n },\n translationImprovements: {\n survey: 'tradera/versattningar-forbattringsforslag'\n },\n shipping: {\n survey: 'tradera/fraktbokning---hur-fungerar-det-fr-dig'\n },\n selectShipping: {\n survey: 'tradera/hur-fungerar-det-att-valja-och-boka-frakt'\n },\n invoice: {\n survey: 'tradera/fakturabetalning-hur-fungerar-den-for-dig'\n },\n syiDescreasePriceOnRestart: {\n survey: 'tradera/vad-tycker-du-om-funktionen-sanka-pris'\n },\n purchaseOffer: {\n survey: 'tradera/vad-tycker-du-om-funktionen-prisforslag'\n },\n picklist: {\n survey: 'tradera/plocklistan'\n }\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"iframeWrapper\":\"iframeWrapper--UVd6x\"};","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { memberIdentificationClient } from 'tradera/utils/http';\nimport { Trans, useTranslator } from 'tradera/lang/translate';\nimport { LocalLoader } from 'tradera/components/loader/loader';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\nimport classNames from 'classnames';\n\nimport styles from './document-scanning.module.scss';\n\nconst STATE = {\n VERIFYING: 'VERIFYING',\n ERROR_UNAVAILABLE: 'ERROR_UNAVAILABLE',\n CONTACT_CUSTOMER_SUPPORT: 'CONTACT_CUSTOMER_SUPPORT'\n};\n\nconst addScriptToDom = (webSdkUrl) => {\n return new Promise((resolve, reject) => {\n const dataAttributeName = 'data-zign-sec-web-sdk-url-script';\n if (document.querySelector(`[${dataAttributeName}]`)) {\n return resolve();\n }\n const js = document.createElement('script');\n js.setAttribute(dataAttributeName, '1');\n js.setAttribute('type', 'text/javascript');\n js.setAttribute('src', webSdkUrl);\n js.setAttribute('async', true);\n const onLoad = () => {\n js.removeEventListener('load', onLoad);\n return resolve();\n };\n js.addEventListener('load', onLoad);\n js.addEventListener('error', reject);\n document.body.appendChild(js);\n });\n};\n\nconst useCallbackWrapper = (callback) => {\n const callbackRef = useRef(callback);\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n return useCallback((...args) => callbackRef.current(...args), []);\n};\n\nexport const DocumentScanning = ({\n onVerifyComplete: onVerifyCompleteIncoming,\n purpose\n}) => {\n const { t } = useTranslator();\n const [isLoading, setIsLoading] = useState(true);\n\n const onVerifyComplete = useCallbackWrapper(onVerifyCompleteIncoming);\n const [verifyingState, setVerifyingState] = useState(STATE.VERIFYING);\n\n useEffect(() => {\n if (verifyingState !== STATE.VERIFYING) {\n return;\n }\n\n GtmService.trackAction('DocumentScanning', 'Start', null);\n let currentTimeoutId = null;\n const poll = (zs, sessionId) =>\n new Promise((resolve) => {\n const call = () => {\n // eslint-disable-next-line better-mutation/no-mutation\n currentTimeoutId = setTimeout(async () => {\n try {\n // Result will appear when verification is completed.\n const { result } = await zs.getSessionStatus(\n sessionId\n );\n\n if (result) {\n return resolve();\n }\n } catch (error) {\n console.error(error);\n } finally {\n if (currentTimeoutId) {\n call();\n }\n }\n }, 2000);\n };\n call();\n });\n setIsLoading(true);\n memberIdentificationClient\n .query(`ScanningsCreateWebToken?purpose=${purpose}`)\n .then(async ({ token, relayState, zignSecWebSdkUrl }) => {\n await addScriptToDom(zignSecWebSdkUrl);\n setIsLoading(false);\n const zs = new window.ZignSec(token, window.ZsProduct.Scanning);\n\n const r = await zs.openInIframe('zs-root', {\n relay_state: relayState,\n analysis_types: ['document', 'selfie', 'fraud']\n });\n await poll(zs, r.id);\n\n setIsLoading(true);\n return await memberIdentificationClient.command(\n 'ScanningResult',\n {\n sessionId: r.id,\n relayState: relayState\n }\n );\n })\n .then(({ isSuccessful, validationErrors, missingZignSecData }) => {\n setIsLoading(false);\n\n if (isSuccessful) {\n GtmService.trackAction('DocumentScanning', 'Success', null);\n onVerifyComplete();\n } else {\n if (validationErrors.length > 0) {\n validationErrors.forEach((error) =>\n GtmService.trackAction(\n 'DocumentScanning',\n 'ValidationError',\n error\n )\n );\n }\n\n if (missingZignSecData.length > 0) {\n missingZignSecData.forEach((error) =>\n GtmService.trackAction(\n 'DocumentScanning',\n 'MissingZignSecData',\n error\n )\n );\n }\n setVerifyingState(STATE.CONTACT_CUSTOMER_SUPPORT);\n }\n return;\n })\n .catch(() => {\n GtmService.trackAction(\n 'DocumentScanning',\n 'Error',\n 'ErrorUnavailable'\n );\n setIsLoading(false);\n setVerifyingState(STATE.ERROR_UNAVAILABLE);\n });\n return () => {\n currentTimeoutId && clearTimeout(currentTimeoutId);\n // eslint-disable-next-line better-mutation/no-mutation\n currentTimeoutId = null;\n };\n }, [\n verifyingState,\n setVerifyingState,\n setIsLoading,\n onVerifyComplete,\n purpose\n ]);\n\n return (\n
\n {isLoading && }\n {verifyingState === STATE.VERIFYING && !isLoading && (\n <>\n
\n
\n \n \n {t('international_identification_info_title')}\n \n
\n {t('international_identification_info_text')}\n
\n \n \n )}\n {verifyingState === STATE.ERROR_UNAVAILABLE && (\n \n {t('international_identification_errorUnavailable')}\n \n )}\n {verifyingState === STATE.CONTACT_CUSTOMER_SUPPORT && (\n
\n

\n {t(\n 'international_identification_contactCustomerSupportHeading'\n )}\n

\n

\n }}\n />\n

\n setVerifyingState(STATE.VERIFYING)}>\n {t('international_identification_buttonTryAgain')}\n \n
\n )}\n
\n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"international-identification-modal-delineator\":\"international-identification-modal-delineator--1VN4o\",\"internationalIdentificationModalDelineator\":\"international-identification-modal-delineator--1VN4o\",\"international-identification-modal-mit-id-button\":\"international-identification-modal-mit-id-button--q9SSh\",\"internationalIdentificationModalMitIdButton\":\"international-identification-modal-mit-id-button--q9SSh\"};","// extracted by mini-css-extract-plugin\nexport default {\"card-verification-container\":\"card-verification-container--imtoB\",\"cardVerificationContainer\":\"card-verification-container--imtoB\"};","import React, { useEffect, useRef, useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { webApiClient } from 'tradera/utils/http';\nimport { setIsInternationalWacko } from 'tradera/state/views/view-item/reducer';\nimport { LocalLoader } from 'tradera/components/loader/loader';\nimport { selectPreferredLanguage } from 'tradera/state/language/selectors';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport styles from './card-verification.module.scss';\nimport { Button } from '../atoms/button/button';\n\nconst states = {\n START: 'START',\n LOADING: 'LOADING',\n CARD_VERIFICATION_MODAL: 'CARD_VERIFICATION_MODAL',\n ERROR: 'ERROR',\n NOT_VERIFIED: 'NOT_VERIFIED'\n};\n\nexport const CardVerification = ({ onCardVerified, setIsHidden }) => {\n const preferredLanguage = useSelector(selectPreferredLanguage);\n const memberEmail = useSelector((state) => state.member.memberEmail);\n const [state, setState] = useState(states.START);\n const { t } = useTranslator();\n const submitButtonRef = useRef();\n const dispatch = useDispatch();\n\n useEffect(() => {\n if (state !== states.START) {\n return;\n }\n\n GtmService.trackAction('VIP', 'Card Verification', 'Start');\n\n const onSuccess = (nonce) => {\n setState(states.LOADING);\n webApiClient\n .post('/shopping/payment/verifybraintreecardnonce', { nonce })\n .then(({ data }) => {\n if (data.isVerified) {\n onCardVerified();\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n 'Verified'\n );\n dispatch(setIsInternationalWacko(false));\n return;\n }\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n 'NotVerified'\n );\n setIsHidden(false);\n setState(states.NOT_VERIFIED);\n return;\n })\n .catch(() => {\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n 'Server error'\n );\n setState(states.ERROR);\n });\n };\n\n webApiClient\n .get('/shopping/payment/braintreeclienttokenforverification')\n .then(async ({ data }) => {\n setState(states.CARD_VERIFICATION_MODAL);\n const options = {\n authorization: data.clientToken,\n container: '#dropin-container',\n locale: preferredLanguage.languageCodeIso2,\n threeDSecure: true\n };\n const dropin = await import(\n /* webpackChunkName: \"braintree-web-drop-in\" */ 'braintree-web-drop-in'\n );\n dropin.create(options, (createErrors, instance) => {\n submitButtonRef.current.addEventListener('click', () => {\n setIsHidden(true);\n try {\n instance.requestPaymentMethod(\n {\n threeDSecure: {\n amount: '1',\n email: memberEmail\n }\n },\n (requestPaymentMethodErr, payload) => {\n if (requestPaymentMethodErr) {\n setIsHidden(false);\n setState(states.NOT_VERIFIED);\n const error =\n requestPaymentMethodErr._braintreeWebError ||\n {};\n\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n `${error.type}:${error.code}`\n );\n\n return;\n }\n\n if (!payload || !payload.nonce) {\n setIsHidden(false);\n setState(states.NOT_VERIFIED);\n\n if (payload) {\n const threeDSecureValidationFailed =\n payload.liabilityShiftPossible &&\n !payload.liabilityShifted;\n\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n threeDSecureValidationFailed\n ? 'ThreeDSecure failed'\n : 'Card invalid'\n );\n }\n return;\n }\n\n onSuccess(payload.nonce);\n }\n );\n } catch (e) {\n setIsHidden(false);\n setState(states.NOT_VERIFIED);\n GtmService.trackAction(\n 'VIP',\n 'Card Verification',\n 'requestPaymentMethod failed'\n );\n throw e;\n }\n });\n });\n return;\n })\n .catch(() => setState(states.ERROR));\n setState(states.LOADING);\n }, [\n onCardVerified,\n dispatch,\n state,\n preferredLanguage,\n memberEmail,\n setIsHidden\n ]);\n\n const restart = () => {\n GtmService.trackAction('VIP', 'Card Verification', 'Restart');\n setState(states.START);\n };\n\n return (\n
\n {state === states.LOADING && }\n {state === states.CARD_VERIFICATION_MODAL && (\n <>\n
\n\n

\n {t(\n 'internationalwacko_cardverificationmodal_disclaimer'\n )}\n

\n\n \n {t(\n 'internationalwacko_cardverificationmodal_verifyCard'\n )}\n \n \n )}\n {state === states.ERROR && (\n

\n {t('internationalwacko_cardverificationmodal_unavailable')}\n

\n )}\n {state === states.NOT_VERIFIED && (\n
\n

\n {t(\n 'internationalwacko_cardverificationmodal_failedVerification'\n )}\n

\n

\n {t(\n 'internationalwacko_cardverificationmodal_failedVerification_info'\n )}\n

\n \n {t('internationalwacko_cardverificationmodal_tryAgain')}\n \n
\n )}\n
\n );\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { memberIdentificationClient } from 'tradera/utils/http';\nimport {\n Trans,\n useTranslator,\n useCurrentLanguage\n} from 'tradera/lang/translate';\nimport { LocalLoader } from 'tradera/components/loader/loader';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\n\nconst STATE = {\n VERIFYING: 'VERIFYING',\n ERROR_UNAVAILABLE: 'ERROR_UNAVAILABLE',\n CONTACT_CUSTOMER_SUPPORT: 'CONTACT_CUSTOMER_SUPPORT'\n};\n\nconst addScriptToDom = (webSdkUrl) => {\n return new Promise((resolve, reject) => {\n const dataAttributeName = 'data-signicat-web-sdk-url-script';\n if (document.querySelector(`[${dataAttributeName}]`)) {\n return resolve();\n }\n const js = document.createElement('script');\n js.setAttribute(dataAttributeName, '1');\n js.setAttribute('type', 'text/javascript');\n js.setAttribute('src', webSdkUrl);\n js.setAttribute('async', true);\n const onLoad = () => {\n js.removeEventListener('load', onLoad);\n return resolve();\n };\n js.addEventListener('load', onLoad);\n js.addEventListener('error', reject);\n document.body.appendChild(js);\n });\n};\n\nconst useCallbackWrapper = (callback) => {\n const callbackRef = useRef(callback);\n useEffect(() => {\n callbackRef.current = callback;\n }, [callback]);\n return useCallback((...args) => callbackRef.current(...args), []);\n};\n\nexport const SignicatScanning = ({\n onVerifyComplete: onVerifyCompleteIncoming,\n purpose\n}) => {\n const { t } = useTranslator();\n const [isLoading, setIsLoading] = useState(true);\n\n const onVerifyComplete = useCallbackWrapper(onVerifyCompleteIncoming);\n const [verifyingState, setVerifyingState] = useState(STATE.VERIFYING);\n const { language } = useCurrentLanguage();\n\n useEffect(() => {\n if (verifyingState !== STATE.VERIFYING) {\n return;\n }\n\n GtmService.trackAction('DocumentScanning', 'Start', null);\n let currentTimeoutId = null;\n const poll = (sessionId, dossierId) =>\n new Promise((resolve) => {\n const call = () => {\n // eslint-disable-next-line better-mutation/no-mutation\n currentTimeoutId = setTimeout(async () => {\n try {\n // Result will appear when verification is completed.\n const result =\n await memberIdentificationClient.command(\n 'SignicatSessionStatus',\n { purpose, sessionId, dossierId }\n );\n\n if (result.isComplete) {\n return resolve(result);\n }\n } catch (error) {\n console.error(error);\n } finally {\n if (currentTimeoutId) {\n call();\n }\n }\n }, 2000);\n };\n call();\n });\n\n setIsLoading(true);\n memberIdentificationClient\n .command('SignicatCreateSession', {})\n .then(async ({ token, onfidoWebSdkUrl, sessionId, dossierId }) => {\n await addScriptToDom(onfidoWebSdkUrl);\n setIsLoading(false);\n\n return new Promise((resolve) =>\n setTimeout(\n () => resolve({ token, sessionId, dossierId }),\n 0\n )\n );\n })\n .then(async ({ token, sessionId, dossierId }) => {\n return new Promise((resolve, reject) => {\n window.Onfido.init({\n token,\n containerId: 'onfido-mount',\n steps: [\n {\n type: 'document',\n options: {\n hideCountrySelection: true,\n documentTypes: {\n passport: true,\n national_identity_card: true,\n driving_licence: true\n }\n }\n },\n 'face'\n ],\n onError: reject,\n onComplete: () => {\n resolve({ sessionId, dossierId });\n },\n language\n });\n });\n })\n .then(async ({ sessionId, dossierId }) => {\n setIsLoading(true);\n const { isSuccessful, validationErrors } = await poll(\n sessionId,\n dossierId\n );\n setIsLoading(false);\n\n if (isSuccessful) {\n GtmService.trackAction('DocumentScanning', 'Success', null);\n onVerifyComplete();\n } else {\n if (validationErrors.length > 0) {\n validationErrors.forEach((error) =>\n GtmService.trackAction(\n 'DocumentScanning',\n 'ValidationError',\n error\n )\n );\n }\n setVerifyingState(STATE.CONTACT_CUSTOMER_SUPPORT);\n }\n return;\n })\n .catch((ex) => {\n console.log(ex);\n GtmService.trackAction(\n 'DocumentScanning',\n 'Error',\n 'ErrorUnavailable'\n );\n setIsLoading(false);\n setVerifyingState(STATE.ERROR_UNAVAILABLE);\n });\n return () => {\n currentTimeoutId && clearTimeout(currentTimeoutId);\n // eslint-disable-next-line better-mutation/no-mutation\n currentTimeoutId = null;\n };\n }, [\n verifyingState,\n setVerifyingState,\n setIsLoading,\n onVerifyComplete,\n purpose,\n language\n ]);\n\n return (\n
\n {isLoading && }\n {verifyingState === STATE.VERIFYING && !isLoading && (\n <>\n
\n
\n \n \n {t('international_identification_info_title')}\n \n
\n {t('international_identification_info_text')}\n
\n
\n \n
\n \n )}\n {verifyingState === STATE.ERROR_UNAVAILABLE && (\n \n {t('international_identification_errorUnavailable')}\n \n )}\n {verifyingState === STATE.CONTACT_CUSTOMER_SUPPORT && (\n
\n

\n {t(\n 'international_identification_contactCustomerSupportHeading'\n )}\n

\n

\n }}\n />\n

\n setVerifyingState(STATE.VERIFYING)}>\n {t('international_identification_buttonTryAgain')}\n \n
\n )}\n
\n );\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport { DocumentScanning } from 'tradera/components/international-identification-modal/document-scanning';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { memberIdentificationClient } from 'tradera/utils/http';\nimport { LocalLoader } from 'tradera/components/loader/loader';\nimport { MitId } from 'tradera/components/international-identification-modal/mit-id';\nimport { MitIdLogo } from './mit-id-logo';\nimport styles from './international-identification-modal.module.scss';\nimport { CardVerification } from './card-verification';\nimport { logger } from 'packages/logger';\nimport { Button } from '../atoms/button/button';\nimport { ScrollableModal } from '../scrollable-modal/scrollable-modal';\nimport { SignicatScanning } from 'tradera/components/international-identification-modal/signicat-scanning';\n\nconst IDENTIFICATION_TYPES = {\n MITID: 'MitId',\n CARD: 'Card',\n DOCUMENTSCANNING: 'DocumentScanning',\n SIGNICATSCANNING: 'SignicatScanning'\n};\n\nexport const InternationalIdentificationModal = ({\n heading,\n introText,\n onCloseModal,\n onVerifyComplete,\n purpose\n}) => {\n const { t } = useTranslator();\n\n const [validIdentifications, setValidIdentifications] = useState(null);\n const [error, setError] = useState(null);\n const [isHidden, setIsHidden] = useState(false);\n const [selectedIdentification, setSelectedIdentification] = useState(null);\n\n useEffect(() => {\n memberIdentificationClient\n .query(`getvalididentifications?purpose=${purpose}`)\n .then((data) => {\n setValidIdentifications(data.validIdentifications);\n return;\n })\n .catch(setError);\n }, [setValidIdentifications, purpose]);\n\n const onCancel = useCallback(() => setSelectedIdentification(null), []);\n\n const selectedIdentificationGui = {\n [IDENTIFICATION_TYPES.CARD]: () => (\n \n ),\n [IDENTIFICATION_TYPES.DOCUMENTSCANNING]: () => (\n \n ),\n [IDENTIFICATION_TYPES.SIGNICATSCANNING]: () => (\n \n ),\n [IDENTIFICATION_TYPES.MITID]: () => (\n \n )\n }[selectedIdentification];\n\n return (\n \n {!selectedIdentificationGui && validIdentifications && (\n
\n
{introText}
\n {validIdentifications.map((identification, index) => {\n let element = null;\n switch (identification) {\n case IDENTIFICATION_TYPES.MITID:\n element = (\n \n setSelectedIdentification(\n IDENTIFICATION_TYPES.MITID\n )\n }>\n \n {t(\n 'international_identification_mitid_button'\n )}\n \n );\n break;\n case IDENTIFICATION_TYPES.DOCUMENTSCANNING:\n element = (\n \n setSelectedIdentification(\n IDENTIFICATION_TYPES.DOCUMENTSCANNING\n )\n }>\n {t(\n 'international_identification_document_scanning_button'\n )}\n \n );\n break;\n case IDENTIFICATION_TYPES.SIGNICATSCANNING:\n element = (\n \n setSelectedIdentification(\n IDENTIFICATION_TYPES.SIGNICATSCANNING\n )\n }>\n {t(\n 'international_identification_signicat_scanning_button'\n )}\n \n );\n break;\n case IDENTIFICATION_TYPES.CARD:\n element = (\n \n setSelectedIdentification(\n IDENTIFICATION_TYPES.CARD\n )\n }>\n {t(\n 'international_identification_card_verification_button'\n )}\n \n );\n break;\n default:\n logger(\n `Invalid identification method: ${identification}`\n );\n }\n return (\n \n {index > 0 && (\n
\n \n {t(\n 'international_identification_or'\n )}\n \n
\n
\n )}\n {element}\n
\n );\n })}\n
\n )}\n {selectedIdentificationGui && selectedIdentificationGui()}\n {!validIdentifications && !error && }\n {error && (\n
\n {t('international_identification_errorUnavailable')}\n
\n )}\n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M2.5 2C1.7 2 1 2.7 1 3.5v9c0 .8.7 1.5 1.5 1.5h11c.8 0 1.5-.7 1.5-1.5v-9c0-.8-.7-1.5-1.5-1.5zM2 3.5c0-.3.2-.5.5-.5h11c.3 0 .5.2.5.5v9c0 .3-.2.5-.5.5h-11c-.3 0-.5-.2-.5-.5zm1.4.7c-.2-.2-.5-.2-.7 0-.1.2-.1.6.1.7l4.9 4c.2.1.4.1.6 0l4.9-4c.2-.2.2-.5.1-.7-.2-.2-.5-.2-.7-.1L8 7.9z\",\n fillRule: \"evenodd\"\n})));","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport { useUrlLocalizer, useTranslator } from 'tradera/lang/translate';\nimport CloseNarrowIcon from '@tradera/blueprint/theme/icons/close-narrow.svg?jsx';\nimport SearchIcon from '@tradera/blueprint/theme/icons2/search.svg?jsx';\nimport { Button } from 'tradera/components/atoms/button/button';\n\nconst SearchInput = ({\n categoriesElement,\n inputClassName,\n onBlur,\n onClearSearchInput,\n onFocus,\n onFormSubmit,\n onUserInputChange,\n onUserKeyUp,\n searchInputRef,\n searchTerm,\n selectedCategory,\n suggestionsElement,\n placeholderText,\n focusOverride\n}) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n const { t } = useTranslator();\n\n const placeHolderTranslation =\n selectedCategory && selectedCategory.id !== 0 && selectedCategory.name\n ? t('siteHeader_categorySearchPlaceholder', {\n categoryName: selectedCategory.name\n })\n : t('siteHeader_generalSearchPlaceholder');\n\n const showClearButton = searchTerm !== '';\n\n return (\n {\n if (focusOverride) {\n e.preventDefault();\n e.stopPropagation();\n focusOverride();\n }\n }}>\n
\n {categoriesElement}\n
\n \n \n {suggestionsElement}\n
\n {showClearButton ? (\n \n \n \n ) : (\n \n \n \n )}\n
\n
\n \n );\n};\n\nSearchInput.propTypes = {\n categoriesElement: PropTypes.element,\n inputClassName: PropTypes.string,\n onBlur: PropTypes.func,\n onClearSearchInput: PropTypes.func,\n onFocus: PropTypes.func,\n onFormSubmit: PropTypes.func.isRequired,\n onUserInputChange: PropTypes.func,\n onUserKeyUp: PropTypes.func,\n searchInputRef: PropTypes.object,\n searchTerm: PropTypes.string.isRequired,\n selectedCategory: PropTypes.object,\n suggestionsElement: PropTypes.element,\n placeholderText: PropTypes.string\n};\n\nSearchInput.defaultProps = {\n categoriesElement: null,\n inputClassName: '',\n onBlur: () => {},\n onFocus: () => {},\n onUserInputChange: () => {},\n onUserKeyUp: () => {},\n selectedCategory: null,\n suggestionsElement: null,\n placeholderText: null\n};\n\nexport default SearchInput;\n","import React from 'react';\nimport { useMediaQuery } from 'react-responsive';\nimport { BREAKPOINT_SIZES } from 'tradera/constants/breakpoints';\n\nconst useIsTablet = () =>\n useMediaQuery({\n minWidth: BREAKPOINT_SIZES.MD.min,\n maxWidth: BREAKPOINT_SIZES.MD.max\n });\n\nexport const withIsTablet = (WrappedComponent) => {\n const WithIsTablet = (props) => {\n const isTablet = useIsTablet();\n return ;\n };\n\n WithIsTablet.displayName = `withIsTablet(${\n WrappedComponent.displayName || WrappedComponent.name\n }`;\n\n return WithIsTablet;\n};\n\nexport { useIsTablet };\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M1.5 8c0-3.6 2.9-6.5 6.5-6.5s6.5 2.9 6.5 6.5-2.9 6.5-6.5 6.5S1.5 11.6 1.5 8zM8 .5a7.49 7.49 0 10-.02 14.98A7.49 7.49 0 008 .5zm0 4c0-.3-.2-.5-.5-.5s-.5.2-.5.5v4c0 .1.1.3.1.4s.3.1.4.1h3c.3 0 .5-.2.5-.5s-.2-.5-.5-.5H8z\",\n fillRule: \"evenodd\"\n})));","/**\n OBSOLETE - use google tag manager service instead:\n src\\frontend\\services\\google-tagmanager-service.js\n\n * Ported from Applications/TouchWeb/src/legacy/static/app/ui/layout/google-tagmanager.js\n * Best way to import this module is `import * as Analytics from 'analytics'`\n */\n\nimport * as Sentry from '@sentry/react';\n\ntype WindowWithDataLayer = Window & {\n dataLayer: Record[];\n ga?: (\n command: string,\n eventName: string,\n category: string,\n variable?: string,\n value?: string,\n label?: string\n ) => void;\n};\n\ndeclare const window: WindowWithDataLayer;\n\ntype AnalyticsData = {\n category?: string;\n action?: string;\n label?: string;\n value?: string;\n hitCallback?: unknown[];\n userTriggered?: boolean;\n};\n\nexport const pushToDataLayer = (payload: Record) => {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push(payload);\n};\nexport const trackPageView = () =>\n window.ga\n ? window.ga('send', 'pageview', location.pathname)\n : pushToDataLayer({ event: 'trackPageview' });\nexport const isNonInteractive = (analyticsData: AnalyticsData) =>\n analyticsData.userTriggered === undefined\n ? true\n : !analyticsData.userTriggered;\n/**\n * trackTiming\n * @param {*} category\n * @param {*} variable\n * @param {*} value\n * @param {*} label\n */\nexport const trackTiming = (\n category: string,\n variable: string,\n value: string,\n label = ''\n) =>\n window.ga\n ? window.ga('send', 'timing', category, variable, value, label)\n : false;\n\n/**\n * Track Analytics Event\n */\nexport const trackEvent = (analyticsData: AnalyticsData) => {\n if (!analyticsData) {\n return;\n }\n pushToDataLayer({\n event: 'trackEvent',\n eventCategory: analyticsData.category || '',\n eventAction: analyticsData.action || '',\n eventLabel: analyticsData.label || '',\n eventValue: analyticsData.value || '0',\n eventNonInteractive: isNonInteractive(analyticsData),\n hitCallback: analyticsData.hitCallback || []\n });\n\n Sentry.addBreadcrumb({\n type: 'default',\n level: 'info',\n category: isNonInteractive(analyticsData) ? 'tracking' : 'ui-action',\n message: 'Analytics Event',\n data: analyticsData\n });\n};\n\n// Export object for Sinon stubbing\nexport default {\n pushToDataLayer,\n trackEvent,\n trackPageView,\n trackTiming\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 14 14\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M7.03 7.89l3.71-3.72 1.06 1.07L7.03 10 2.26 5.24l1.06-1.07 3.7 3.72z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M1.5 8c0-3.6 2.9-6.5 6.5-6.5s6.5 2.9 6.5 6.5-2.9 6.5-6.5 6.5c-3.5 0-6.5-2.9-6.5-6.5zM8.1.5A7.49 7.49 0 1015.5 8C15.6 3.8 12.2.5 8.1.5zM5.4 8c.5 0 .9-.4.9-.9s-.4-.9-.9-.9-.9.4-.9.9c.1.5.5.9.9.9zM5 9.5c-.1-.2-.4-.3-.7-.2-.2.1-.3.4-.2.7l.4-.2-.4.2v.1l.2.2c.1.2.4.4.7.7.6.5 1.6 1 3.1 1 1.4 0 2.4-.5 3.1-1l.7-.7c.1-.1.1-.2.2-.2V10l-.4-.2.4.2c.1-.2 0-.5-.2-.7-.2-.1-.5 0-.7.2s-.1.1-.1.2l-.5.5c-.6.4-1.3.8-2.5.8s-2-.4-2.4-.8c-.3-.1-.5-.3-.6-.5 0 0 0-.1-.1-.2 0 .1 0 .1 0 0zM10.7 8c.5 0 .9-.4.9-.9s-.4-.9-.9-.9-.9.4-.9.9.4.9.9.9z\",\n fillRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 1401 1401\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M700 50A646 646 0 0050 701c0 173 68 337 191 459a646 646 0 00919 0 646 646 0 00191-459c0-174-68-338-191-460A646 646 0 00700 50zm1 1351c-188 0-364-73-496-205A696 696 0 010 701c0-188 73-364 205-496A696 696 0 01701 0c187 0 363 73 495 205a696 696 0 01205 496c0 187-73 363-205 495a696 696 0 01-495 205z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M379 979l-79 24-13-19 49-66 43 61zm-98 85l231-70-32-45-52 15-62-87 32-43-32-46-144 193 59 83zm466 131h-65c-27 0-41-10-41-33 0-21 13-32 41-32h65v65zm-161-33c0 48 32 84 96 84h120v-229h-55v67h-87c-11 0-17-5-17-12v-55h-54v56c0 15 12 27 28 29a70 70 0 00-31 60zm425-347L889 973l41 31 89-115 33 25-75 97 38 29 75-97 28 23-89 114 41 31 122-157-181-139m48-202l-8-39 124-26 9 40c11 53-4 81-46 90-43 8-68-12-79-65zm175-34l-19-94-225 45 19 93c18 85 72 122 141 108 74-15 102-66 84-152zM849 312l56-60 22 10-10 81-68-31zm43-123L727 364l51 24 37-39 96 45-6 54 50 23 28-239-91-43zM410 298l57-34c24-14 41-13 53 7 10 18 6 35-19 49l-57 34-34-56zm158-55c-24-41-71-56-127-23l-104 62 117 196 48-28-35-57 77-45c9-6 17-5 20 2l29 47 47-28-29-48c-8-13-24-17-39-11 10-22 9-46-4-67zM192 721l19-89 175 37 11-54-175-37 19-89-50-11-50 232 51 11m35 221l-4-5-17 12-5-8-5 4 14 20 5-3-6-8 18-12m-45-17l13-2-6 11 5 8 22-16-3-4-18 12 8-14-3-4-15 3h-1l18-12-3-5-22 15 5 8\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M2.5 3.4c.1-.3.4-.2.5 0l.9 5.2c.1.7.7 1.2 1.4 1.2h6.4c.6 0 1.2-.4 1.4-1L15 3.5c0-.2 0-.3-.1-.5-.1-.1-.2-.2-.4-.2H3.8C3.3 2 2 2 1.5 3L1 4.1c-.1.3 0 .5.3.7.3.1.5 0 .7-.3zm2.4 5l-.8-4.6h9.7l-1.6 4.7c-.1.2-.3.3-.5.3H5.3c-.2 0-.4-.1-.4-.4zm.6 4.4c.3 0 .5-.2.5-.5s-.2-.5-.5-.5-.5.3-.5.5c0 .3.2.5.5.5zm0 1c.8 0 1.5-.6 1.5-1.5 0-.8-.7-1.5-1.5-1.5S4 11.5 4 12.3c0 .9.7 1.5 1.5 1.5zm6-1c.3 0 .5-.2.5-.5s-.2-.5-.5-.5-.5.2-.5.5.2.5.5.5zm0 1c.8 0 1.5-.7 1.5-1.5s-.7-1.5-1.5-1.5-1.5.7-1.5 1.5c0 .9.7 1.5 1.5 1.5z\",\n fillRule: \"evenodd\"\n})));","import React from 'react';\nimport PropTypes from 'prop-types';\nimport CartIcon from '@tradera/blueprint/theme/icons2/cart.svg?jsx';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport LocalizedPrice from 'tradera/localization/localized-price';\n\nconst CartLink = ({ formattedCartItems, cartSum, transparentHeader }) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n const cartUrl = toLocalizedUrl('/shopping/cart');\n return (\n
\n \n \n {formattedCartItems}\n \n
\n \n
\n
\n \n \n \n
\n \n
\n );\n};\n\nCartLink.propTypes = {\n formattedCartItems: PropTypes.number,\n cartSum: PropTypes.number\n};\n\nexport default React.memo(CartLink);\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { Button } from 'tradera/components/atoms/button/button';\n\nconst DropDownMenuHamburger = ({\n active,\n className,\n onClick,\n tabIndex,\n transparentHeader\n}) => {\n const { t } = useTranslator();\n return (\n \n \n \n \n \n {t('siteHeader_dropDownMenuHamburger')}\n \n \n );\n};\n\nexport default DropDownMenuHamburger;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst MenuItemSeparator = ({ label, className, style }) => (\n \n {label}\n \n);\n\nMenuItemSeparator.defaultProps = {\n className: '',\n style: {}\n};\n\nMenuItemSeparator.propTypes = {\n label: PropTypes.node,\n className: PropTypes.string,\n style: PropTypes.object\n};\n\nexport default MenuItemSeparator;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ALink from 'tradera/components/alink/alink';\n\nconst MenuItemButton = ({\n className,\n containerClass,\n follow,\n gaAttributes,\n inSPA,\n label,\n link,\n onClick\n}) => {\n return (\n
  • \n \n \n {label}\n \n —>\n \n
  • \n );\n};\n\nMenuItemButton.defaultProps = {\n className: '',\n containerClass: 'site-dropdown__item-default',\n follow: true\n};\n\nMenuItemButton.propTypes = {\n notify: PropTypes.number,\n link: PropTypes.string,\n bold: PropTypes.bool,\n border: PropTypes.bool,\n label: PropTypes.node,\n gaAttributes: PropTypes.object\n};\n\nexport default MenuItemButton;\n","import React from 'react';\nimport type { ReactNode } from 'react';\nimport PropTypes from 'prop-types';\n\nimport ALink from 'tradera/components/alink/alink';\n\ntype MenuItemProps = {\n alerts?: ReactNode[];\n bold?: boolean;\n border?: boolean;\n className?: string;\n follow?: boolean;\n gaAttributes?: Record;\n highlight?: boolean;\n icon?: ReactNode;\n imageContainerClassName?: string;\n imageUrl?: string;\n inSPA?: boolean;\n label?: ReactNode;\n link?: string;\n notify?: number;\n notificationDot?: string;\n onClick?: () => void;\n};\n\nconst MenuItem = ({\n alerts,\n bold,\n border,\n className,\n follow,\n gaAttributes,\n highlight,\n icon,\n imageContainerClassName,\n imageUrl,\n inSPA,\n label,\n link,\n notify,\n notificationDot,\n onClick\n}: MenuItemProps) => {\n const containerClass = `site-dropdown__item d-flex flex-row align-items-center ${\n alerts?.length ? 'flex-wrap' : ''\n } ${className} `;\n\n return (\n
  • \n {link ? (\n \n \n \n ) : (\n
    \n \n
    \n )}\n
  • \n );\n};\n\ntype MenuItemContentProps = {\n icon?: ReactNode;\n imageContainerClassName?: string;\n bold?: boolean;\n highlight?: boolean;\n imageUrl?: string;\n label?: ReactNode;\n notify?: number;\n alerts?: ReactNode[];\n notificationDot?: string;\n};\n\nconst MenuItemContent = ({\n icon,\n imageContainerClassName,\n bold,\n highlight,\n imageUrl,\n label,\n notify,\n alerts,\n notificationDot\n}: MenuItemContentProps) => {\n return (\n <>\n {icon && (\n \n {highlight ? (\n \n {icon}\n \n ) : (\n icon\n )}\n \n )}\n \n {label}\n \n\n \n\n {alerts}\n \n );\n};\n\ntype NotificationDotProps = {\n notify?: number;\n notificationDot?: string;\n};\n\nconst NotificationDot = ({ notify, notificationDot }: NotificationDotProps) => {\n if (notify && notify > 0) {\n return (\n \n \n {notify}\n \n \n );\n }\n\n switch (notificationDot) {\n case 'info':\n case 'success':\n case 'warning':\n case 'danger':\n return (\n \n \n \n );\n default:\n return null;\n }\n};\n\nMenuItem.propTypes = {\n bold: PropTypes.bool,\n border: PropTypes.bool,\n gaAttributes: PropTypes.object,\n inSPA: PropTypes.bool,\n label: PropTypes.node,\n link: PropTypes.string,\n notify: PropTypes.number\n};\n\nMenuItem.defaultProps = {\n bold: false,\n border: false,\n className: 'site-dropdown__item-default',\n follow: true,\n inSPA: false,\n notify: 0\n};\n\nexport default MenuItem;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport ArrowUpIcon from '@tradera/blueprint/theme/icons2/arrow-up.svg?jsx';\nimport ArrowDownIcon from '@tradera/blueprint/theme/icons2/arrow-down.svg?jsx';\n\nclass ExpandableMenuItem extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n expanded: this.props.defaultExpanded\n };\n }\n\n toggleOpen = () => {\n this.setState(\n (prevState) => ({\n expanded: !prevState.expanded\n }),\n () => {\n const { onOpen = () => {}, onClose = () => {} } = this.props;\n if (this.state.expanded) {\n onOpen();\n } else {\n onClose();\n }\n }\n );\n };\n\n componentDidUpdate(prevProps) {\n if (prevProps.defaultExpanded !== this.props.defaultExpanded) {\n this.setState({ expanded: prevProps.defaultExpanded });\n }\n }\n\n render() {\n const {\n imageUrl,\n icon,\n label,\n className,\n imageContainerClassName,\n border,\n children,\n href\n } = this.props;\n const { expanded } = this.state;\n\n return (\n \n {\n if (children) {\n e.preventDefault();\n this.toggleOpen();\n }\n }}\n aria-expanded={expanded.toString()}\n className={`site-dropdown__transparent-a p-0 m-0 d-flex flex-row align-items-center site-dropdown__item ${\n className ? className : ''\n }`}>\n {icon && (\n \n {icon}\n \n )}\n {label}\n \n {expanded ? (\n \n ) : (\n \n )}\n \n \n {expanded &&
      {children}
    }\n \n );\n }\n}\n\nExpandableMenuItem.defaultProps = {\n defaultExpanded: false,\n border: true\n};\n\nExpandableMenuItem.propTypes = {\n imageUrl: PropTypes.string,\n icon: PropTypes.node,\n label: PropTypes.node,\n className: PropTypes.string,\n imageContainerClassName: PropTypes.string,\n border: PropTypes.bool,\n onOpen: PropTypes.func,\n onClose: PropTypes.func\n};\n\nexport default ExpandableMenuItem;\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.5.6c0-.3.3-.6.6-.6h5.1c.3 0 .6.3.6.6s-.3.6-.6.6h-2v1.4c1.6.1 3.1.8 4.1 1.9l1.8-1.8c.2-.2.6-.2.8 0 .2.2.2.6 0 .8l-1.8 1.8c.8 1.1 1.3 2.5 1.3 3.9 0 3.7-3 6.7-6.8 6.7S.8 12.9.8 9.2C.8 5.7 3.5 2.8 7 2.5V1.2H5c-.2 0-.5-.3-.5-.6zm3.1 3.1a5.6 5.6 0 100 11.2 5.6 5.6 0 100-11.2zm0 1c.4 0 .6.3.6.6v4c0 .3-.3.6-.6.6S7 9.6 7 9.3v-4c.1-.3.3-.6.6-.6z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.9 3.2c2.3 0 4 1.9 4 4.2 0 .4-.1.8-.2 1.2-.2.7-.6 1.4-.9 2.1-.1.1-.1.2-.2.4-.4.8-.7 1.5-.7 2.2v.7c0 1.1-.9 2.1-2.1 2.1-1.2 0-2.1-.9-2.1-2.1v-.7c-.1-.7-.4-1.4-.7-2.2 0-.2 0-.3-.1-.4-.3-.7-.6-1.4-.8-2.1-.1-.4-.2-.8-.2-1.2 0-2.3 1.8-4.2 4-4.2zm1 10.5H7v.1c0 .5.4 1 1 1s1-.4 1-1v-.1zm-1-9.4C6.4 4.3 5 5.7 5 7.4c0 .3 0 .6.1.9.2.6.5 1.2.8 1.8.1.2.1.3.2.4.3.6.6 1.3.8 2.1H9c.2-.7.5-1.4.8-2.1.1-.1.1-.3.2-.4.3-.6.6-1.2.8-1.8.1-.3.1-.6.1-.9 0-1.7-1.4-3.1-3-3.1zm7.2 2.6c.3 0 .6.2.6.6 0 .3-.2.6-.6.6h-1.4c-.3 0-.6-.2-.6-.6 0-.3.2-.6.6-.6h1.4zm-12.5 0c.3 0 .6.2.6.6-.1.3-.3.5-.6.5H1.2c-.3 0-.6-.2-.6-.5s.2-.6.6-.6h1.4zm10.8-4.7c.2.2.2.6 0 .8l-1 1c-.2.2-.6.2-.8 0a.6.6 0 010-.8l1-1c.2-.2.6-.2.8 0zM3.1 2.1l1 1c.2.2.2.6 0 .8-.2.2-.6.2-.8 0l-1-1c-.3-.2-.3-.6 0-.8.2-.2.5-.2.8 0zM7.9-.1c.3 0 .6.2.6.6v1.4c0 .3-.2.6-.6.6s-.6-.3-.6-.6V.5c0-.3.3-.6.6-.6z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.67.29a.56.56 0 01.4-.17H15.3c.31 0 .56.26.56.57v12.95c.01 1.2-.89 2.24-2.1 2.24H2.38c-.54 0-1.1-.18-1.53-.56a2.15 2.15 0 01-.71-1.66V6.31c0-.3.25-.56.56-.56h1.69v1.13H1.25v6.78c0 .39.14.65.33.81.2.18.49.28.8.28.3 0 .58-.1.79-.28.19-.17.33-.42.33-.8V.68c0-.15.06-.3.17-.4zm.96.96v12.41c0 .42-.1.78-.27 1.09h9.42c.5 0 .98-.46.97-1.1V1.25H4.62zm1.12 8.44c0-.31.25-.57.56-.57h4.5a.56.56 0 010 1.13h-4.5a.56.56 0 01-.56-.56zm.56 1.68a.56.56 0 000 1.13h4.5a.56.56 0 000-1.13h-4.5zM5.75 3.5c0-.62.5-1.13 1.13-1.13h5.62c.62 0 1.13.5 1.13 1.13v3.38c0 .62-.5 1.12-1.13 1.12H6.87a1.13 1.13 0 01-1.12-1.13V3.5zm1.13 0v3.38h5.62V3.5H6.87z\"\n})));","import { useEffect, useRef } from 'react';\nimport { useMediaQuery } from 'react-responsive';\nimport { BREAKPOINT_SIZES } from 'tradera/constants/breakpoints';\n\nexport const useMenuHeightFix = () => {\n const menuContentRef = useRef(null);\n const isExtraLargeDesktop = useMediaQuery({\n minWidth: BREAKPOINT_SIZES.XL.min\n });\n\n useEffect(() => {\n if (!menuContentRef.current) return;\n const element = menuContentRef.current.parentElement;\n if (!element) return;\n const marginBottom = isExtraLargeDesktop ? 7 : 0;\n const marginTop = element.getBoundingClientRect().top;\n const marginY = marginTop + marginBottom;\n // iOS viewport height bugfix for https://bugs.webkit.org/show_bug.cgi?id=141832#c5\n const menuHeight = window.innerHeight - marginY;\n // eslint-disable-next-line better-mutation/no-mutation\n element.style.maxHeight = `${menuHeight}px`;\n }, [isExtraLargeDesktop]);\n return menuContentRef;\n};\n","import React from 'react';\nimport { useCurrentLanguage, useTranslator } from 'tradera/lang/translate';\n\nconst TopLevelCategories = ({ topLevelCategories }) => {\n return topLevelCategories?.map((c) => (\n \n {c.title}\n \n ));\n};\n\nexport const inspirationLinks = {\n sv: '/inspiration',\n da: '/info/da/inspiration'\n};\n\nexport const SeoLinks = ({ isLoggedIn, topLevelCategories }) => {\n const { t } = useTranslator();\n const { language } = useCurrentLanguage();\n\n const inspirationLink = inspirationLinks[language];\n\n return (\n
    \n {topLevelCategories?.length >= 0 && (\n \n )}\n {!isLoggedIn && inspirationLink && (\n {t('siteHeader_inspiration')}\n )}\n
    \n );\n};\n","import React, { useState, useEffect } from 'react';\nimport MediaQuery from 'react-responsive';\n\nimport { BREAKPOINT_SIZES, BREAKPOINTS } from 'tradera/constants/breakpoints';\nimport {\n useTranslator,\n useUrlLocalizer,\n useCurrentLanguage\n} from 'tradera/lang/translate';\nimport { filterCategories } from 'tradera/helpers/filter-categories-helper';\nimport MenuItemSeparator from 'tradera/components/site-header/dropdown-menu-item-separator';\nimport MenuItemButton from 'tradera/components/site-header/dropdown-menu-item-button';\nimport MenuItem from 'tradera/components/site-header/dropdown-menu-item';\nimport ExpandableMenuItem from 'tradera/components/site-header/dropdown-menu-item-expandable';\nimport ALink from 'tradera/components/alink/alink';\nimport EndingSoonIcon from '@tradera/blueprint/theme/icons2/branded-ending.svg?jsx';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\nimport PenIcon from '@tradera/blueprint/theme/icons2/pen.svg?jsx';\nimport RecommendedIcon from '@tradera/blueprint/theme/icons2/branded-recommended.svg?jsx';\nimport BrandIcon from '@tradera/blueprint/theme/icons2/sale.svg?jsx';\nimport UserIcon from '@tradera/blueprint/theme/icons2/user.svg?jsx';\nimport CategoryCharityIcon from '@tradera/blueprint/theme/icons2/category-charity.svg?jsx';\nimport ValuationIcon from '@tradera/blueprint/theme/icons2/valuation.svg?jsx';\nimport InspirationIcon from '@tradera/blueprint/theme/icons2/inspiration.svg?jsx';\nimport { getCategoryIcon } from 'tradera/helpers/category-icon-helper';\nimport { useMenuHeightFix } from 'tradera/hooks/use-menu-height-fix';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport { isSwedishOrUndefined } from 'tradera/localization/languagecode';\nimport { inspirationLinks } from './seo-links';\nimport { SearchInput } from 'tradera/components/form-controls/search-input/search-input';\nimport type { Category } from 'tradera/features/category-list/category-list-page';\n\ntype GaAttributes = {\n 'data-ga-category': string;\n 'data-ga-action': string;\n 'data-ga-label': string;\n};\n\ntype DropdownMenuContentProps = {\n categories: { list: Category[]; topLevelCategories: Category[] };\n inSPA: boolean;\n isLoggedIn: boolean;\n onClick: () => void;\n};\n\ntype ExtendedCategory = Category & {\n open?: boolean;\n};\n\ntype CategoryMenuItemsProps = {\n inSPA: boolean;\n searchPlaceholder: string;\n onClick: () => void;\n categoryList: ExtendedCategory[];\n};\n\ntype CategoryMenuItemProps = {\n category: ExtendedCategory;\n inSPA?: boolean;\n onClick: () => void;\n};\n\nconst getGaAttributes = (label: string): GaAttributes => ({\n 'data-ga-category': 'Top navigation',\n 'data-ga-action': 'Category menu',\n 'data-ga-label': `Link - ${label}`\n});\n\nexport const DropdownMenuContent = ({\n categories,\n inSPA,\n isLoggedIn,\n onClick\n}: DropdownMenuContentProps) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const isPennybridgeCharitiesEnabled = useIsFeatureEnabled(\n 'pennybridge-charities'\n );\n\n const isValuationPageEnabled = useIsFeatureEnabled('valuation-page');\n const mediaProps = { maxWidth: BREAKPOINT_SIZES[BREAKPOINTS.MD].max };\n\n const sourceCategories =\n categories.list.length > 0\n ? categories.list\n : categories.topLevelCategories;\n // Only show rebate codes for non logged in users.\n const categoryList = sourceCategories\n .map((category) => ({ ...category, open: false }))\n .filter((category) => !isLoggedIn || (isLoggedIn && category.id !== 0));\n\n const menuContentRef = useMenuHeightFix();\n const { language } = useCurrentLanguage();\n\n const isSwedish = isSwedishOrUndefined(language);\n\n const inspirationLink =\n inspirationLinks[language as keyof typeof inspirationLinks] || '';\n\n return (\n
      \n {/* NOTE: Notifications are disabled for burger button for desktop due to hidden cart and messaging, see DropDownMenuHamburger */}\n \n {!isLoggedIn && (\n <>\n }\n border>\n \n \n {isSwedish && (\n \n )}\n \n }\n inSPA={false}\n label={t('siteHeader_register')}\n link=\"/register\"\n onClick={onClick}\n />\n }\n inSPA={false}\n label={t('siteHeader_createItem')}\n link={toLocalizedUrl('/selling')}\n onClick={onClick}\n />\n \n )}\n \n\n }\n inSPA={false}\n label={\n isLoggedIn\n ? t('siteHeader_recommendedForYou')\n : t('siteHeader_recommendedAnonymous')\n }\n link={toLocalizedUrl('/ma/endless-recommendation/selected')}\n onClick={onClick}\n />\n }\n inSPA={inSPA}\n label={t('siteHeader_lastChance')}\n link={toLocalizedUrl('/campaign/sista-chansen?sortBy=TimeLeft')}\n onClick={onClick}\n />\n }\n inSPA={false}\n label={t('siteHeader_brands')}\n link={toLocalizedUrl('/brands')}\n onClick={onClick}\n />\n {isPennybridgeCharitiesEnabled && (\n }\n inSPA={inSPA}\n label={t('siteHeader_donateWithTradera')}\n link={toLocalizedUrl('/causes')}\n onClick={onClick}\n />\n )}\n {isValuationPageEnabled && (\n }\n inSPA={inSPA}\n label={t('siteHeader_valuation')}\n link={toLocalizedUrl('/valuation')}\n onClick={onClick}\n />\n )}\n \n \n \n {t('siteHeader_categoriesAll')}\n \n \n }\n />\n \n {!isLoggedIn && inspirationLink && (\n }\n inSPA={false}\n label={t('siteHeader_inspiration')}\n link={inspirationLink}\n onClick={onClick}\n />\n )}\n {/* NOTE: Fix for iPhone menu making bottom element unclickable */}\n \n \n \n
    \n );\n};\n\nconst CategoryMenuItems = ({\n inSPA,\n searchPlaceholder,\n onClick,\n categoryList\n}: CategoryMenuItemsProps) => {\n const [filter, setFilter] = useState('');\n const [filteredCategories, setFilteredCategories] = useState(categoryList);\n\n const applyFilter = (newFilter: string) => {\n setFilter(newFilter);\n setFilteredCategories(filterCategories(categoryList, newFilter));\n };\n\n const handleFilterChange = (event: React.ChangeEvent) => {\n applyFilter(event.target.value.trim());\n };\n\n const handleFilterKey = (event: React.KeyboardEvent) => {\n const { key, target } = event;\n const inputElement = target as HTMLInputElement; // Cast event.target to HTMLInputElement\n switch (key) {\n case 'Escape':\n event.stopPropagation();\n if (filter === '') {\n inputElement.blur();\n }\n applyFilter('');\n break;\n case 'Enter':\n event.stopPropagation();\n inputElement.blur();\n break;\n }\n };\n\n useEffect(() => {\n if (\n categoryList[0]?.categoryNodes !==\n filteredCategories[0]?.categoryNodes\n ) {\n applyFilter(filter);\n }\n // We only want to run this when the categoryList changes\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [categoryList, filter]);\n\n return (\n <>\n \n \n \n }\n />\n {filteredCategories.map(\n (category) =>\n category && (\n \n )\n )}\n \n );\n};\n\nconst CategoryMenuItem = ({\n category: { id, title, categoryNodes, open, href },\n inSPA = false,\n onClick\n}: CategoryMenuItemProps) => {\n if (!categoryNodes) {\n return (\n \n );\n }\n return (\n \n {categoryNodes.map((categoryNode) => {\n if (categoryNode.isTopLevel) {\n return (\n ${categoryNode.title}`\n )}\n inSPA={inSPA}\n label={categoryNode.title}\n link={categoryNode.href}\n onClick={onClick}\n />\n );\n }\n\n return (\n ${categoryNode.title}`\n )}\n inSPA={inSPA}\n label={categoryNode.title}\n link={categoryNode.href}\n onClick={onClick}\n />\n );\n })}\n \n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { TransitionGroup } from 'react-transition-group';\nimport MediaQuery from 'react-responsive';\nimport { RemoveScroll } from 'react-remove-scroll';\n\nimport { fetchCategoryList } from 'tradera/state/categories/actions';\nimport {\n closeCategoryDropdownMenu,\n closeProfileMenu,\n openCategoryDropdownMenu\n} from 'tradera/state/ui/reducer';\nimport { BREAKPOINTS, BREAKPOINT_SIZES } from 'tradera/constants/breakpoints';\nimport { logger } from 'packages/logger';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport {\n EnterFade,\n EnterFrom\n} from 'tradera/components/transitions/transitions';\nimport ApplicationErrorBoundary from 'tradera/components/application-error-boundary/application-error-boundary';\nimport { Overlay } from 'tradera/components/scrollable-modal/overlay';\nimport DropDownMenuHamburger from './dropdown-menu-burger';\nimport { DropdownMenuContent } from './dropdown-menu-content';\nimport { SeoLinks } from './seo-links';\nimport { MODAL_STATE } from 'tradera/constants/ui';\n\nconst trackAnalytics = (label) => {\n try {\n GtmService.trackAction('Top navigation', 'Category menu', label);\n } catch (error) {\n logger(error);\n }\n};\n\nconst DropdownMenu = ({\n className,\n inSPA,\n isLoggedIn,\n transparentHeader,\n tabIndex\n}) => {\n const dropdownMenu = useSelector((state) => state.ui.categoryDropdownMenu);\n const categories = useSelector((state) => state.categories);\n const expanded = dropdownMenu.open === MODAL_STATE.OPEN;\n const dispatch = useDispatch();\n\n const onClick = () => {\n if (expanded) {\n dispatch(closeCategoryDropdownMenu());\n trackAnalytics('Menu close');\n } else {\n dispatch(closeProfileMenu());\n if (!categories.isFetching && categories.list.length === 0) {\n dispatch(fetchCategoryList());\n }\n dispatch(openCategoryDropdownMenu());\n\n trackAnalytics('Menu open');\n }\n };\n\n const onItemClick = () => {\n dispatch(closeCategoryDropdownMenu());\n };\n\n const sideMenuMediaProps = {\n maxWidth: BREAKPOINT_SIZES[BREAKPOINTS.LG].max\n };\n const dropdownMenuMediaProps = {\n minWidth: BREAKPOINT_SIZES[BREAKPOINTS.LG].max\n };\n\n const renderChild = () => (\n \n
    \n \n
    \n
    \n );\n\n return (\n \n \n {\n onClick();\n }}\n tabIndex={tabIndex}\n />\n \n \n {expanded && (\n \n \n {renderChild()}\n \n \n )}\n \n {expanded && (\n \n {renderChild()}\n \n )}\n \n \n {expanded && (\n \n {\n onClick();\n }}\n />\n \n )}\n \n \n );\n};\n\nDropdownMenu.propTypes = {\n className: PropTypes.string,\n isLoggedIn: PropTypes.bool,\n expanded: PropTypes.bool\n};\n\nDropdownMenu.defaultProps = {\n className: ''\n};\n\nexport default DropdownMenu;\n","import React from 'react';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { useSelector } from 'react-redux';\nimport { selectIsSwedishVisitor } from 'tradera/state/shipping-region/selectors';\nimport { selectIsForeignLanguageActivated } from 'tradera/state/language/selectors';\nimport { selectIsOutsideSweden } from 'tradera/state/member/selectors';\nimport cn from 'classnames';\n\nconst SignUpLink = ({\n clickAction,\n transparentHeader,\n signInButtonExperimentEnabled\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const register = t('siteHeader_register');\n const isForeignVisitor = useSelector(\n (state) =>\n (!selectIsSwedishVisitor(state) ||\n selectIsForeignLanguageActivated(state)) &&\n selectIsOutsideSweden(state)\n );\n const url = isForeignVisitor\n ? toLocalizedUrl('/register/foreign-private')\n : toLocalizedUrl('/register');\n\n const buttonClass = cn('align-items-center slim-header__link-spacing', {\n 'slim-header__button d-none d-lg-flex': signInButtonExperimentEnabled,\n 'd-flex btn btn-branded slim-header__sign-up-link px-lg-1 mr-lg-0':\n !signInButtonExperimentEnabled,\n 'font-weight-bold': transparentHeader,\n 'btn-transparent-header':\n transparentHeader && signInButtonExperimentEnabled\n });\n\n return (\n \n \n {register}\n \n \n );\n};\n\nexport default React.memo(SignUpLink);\n","/* eslint-disable react/no-danger */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport IconPushSplashDefault from './push-splash-icon.svg';\nimport IconWishlist from './push-wishlist-icon.svg';\nimport IconSelling from './push-selling-icon.svg';\nimport * as pushNotificationActions from 'tradera/state/push-notifications/push-notifications-slice';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { useDispatch } from 'react-redux';\nimport { useTranslator } from 'tradera/lang/translate';\nimport CheckIcon from '@tradera/blueprint/theme/icons2/check.svg?jsx';\nimport { Button } from '../atoms/button/button';\nimport { ScrollableModal } from '../scrollable-modal/scrollable-modal';\nimport { Space } from '../atoms/space/space';\n\nconst PushNotificationModal = ({\n modalType,\n gaLabel,\n title,\n description,\n tagGroups,\n closeModal\n}) => {\n const dispatch = useDispatch();\n const { t } = useTranslator();\n\n const trackGa = (gaLabel) => {\n GtmService.trackAction('Settings', 'Notifications', gaLabel);\n };\n\n const handleAccept = async () => {\n trackGa(gaLabel);\n closeModal();\n try {\n dispatch(pushNotificationActions.addTagGroups(tagGroups));\n dispatch(pushNotificationActions.setShownModalTrue(modalType));\n } catch (error) {\n // error, do not do anything\n }\n };\n\n const handleReject = async () => {\n closeModal();\n trackGa('Decline - Opt-in alert');\n dispatch(pushNotificationActions.setShownModalTrue(modalType));\n };\n\n let icon = IconPushSplashDefault;\n\n if (modalType === 'wishlistReminders') {\n icon = IconWishlist;\n } else if (modalType === 'selling') {\n icon = IconSelling;\n }\n\n return (\n \n \n {t('pushModal_btn_no')}\n \n \n \n }>\n
    \n \"\"\n

    {t(title)}

    \n \n
    \n \n );\n};\n\nPushNotificationModal.propTypes = {\n modalType: PropTypes.string.isRequired,\n gaLabel: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n tagGroups: PropTypes.array.isRequired,\n closeModal: PropTypes.func.isRequired\n};\n\nexport default PushNotificationModal;\n","export default \"//static.tradera.net/touchweb/static/output/images/push-splash-icon.4a7e4939.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/push-wishlist-icon.77df35d5.svg\";","export default \"//static.tradera.net/touchweb/static/output/images/push-selling-icon.f032a8b4.svg\";","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8 1a3 3 0 00-3 3v1H3.5c-.2 0-.5.2-.5.5l-1 9c0 .1 0 .3.1.4.1 0 .3.1.4.1h11c.1 0 .3-.1.4-.2s.1-.2.1-.4l-1.1-9c0-.3-.2-.4-.5-.4H11V4c0-1.7-1.3-3-3-3zm2 5v.9c0 .2.2.4.5.4.3.1.5-.1.5-.4V6h1l1 8H3l1-8h1v.9c0 .2.2.4.5.4.3.1.5-.1.5-.4V6zm0-1V4c0-1.1-.9-2-2-2s-2 .9-2 2v1z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"item\":\"item--7c8Ez\",\"link\":\"link--gyyWk\",\"icon\":\"icon--ceNel\"};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport styles from './hover-menu-item.module.scss';\nimport ALink from 'tradera/components/alink/alink';\n\nconst HoverMenuItem = ({\n icon,\n label,\n link,\n border,\n follow,\n onClick,\n gaAttributes\n}) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n
  • \n \n {icon && (\n \n {icon}\n \n )}\n {label}\n \n
  • \n );\n};\n\nHoverMenuItem.propTypes = {\n icon: PropTypes.node,\n label: PropTypes.node,\n link: PropTypes.string,\n border: PropTypes.bool,\n follow: PropTypes.bool,\n onClick: PropTypes.func,\n gaAttributes: PropTypes.object\n};\n\nexport default HoverMenuItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"separator\":\"separator--ch7gm\"};","import React from 'react';\nimport styles from './hover-menu-separator.module.scss';\n\nconst HoverMenuItemSeparator = () =>
  • ;\n\nexport default HoverMenuItemSeparator;\n","export const getMenuGaAttributes = (category, action, label) => ({\n 'data-ga-category': category,\n 'data-ga-action': action,\n 'data-ga-label': `Link - ${label}`\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport HoverMenu from './hover-menu/hover-menu';\nimport hoverMenuStyles from './hover-menu/hover-menu.module.scss';\nimport HoverMenuItem from './hover-menu/hover-menu-item';\nimport HoverMenuItemSeparator from './hover-menu/hover-menu-separator';\nimport { getMenuGaAttributes } from './site-header.analytics.js';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\n\nimport AuctionIcon from '@tradera/blueprint/theme/icons2/auction.svg?jsx';\nimport AuctionLostIcon from '@tradera/blueprint/theme/icons2/bid-lost.svg?jsx';\nimport WinningIcon from '@tradera/blueprint/theme/icons2/winning.svg?jsx';\nimport RatingPositiveIcon from '@tradera/blueprint/theme/icons2/rating-positive.svg?jsx';\n\nconst getGaAttributes = (label) =>\n getMenuGaAttributes('Top navigation', 'Buying menu', label);\n\nconst BuyMenu = ({ showMenu }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n return (\n \n }\n gaAttributes={getGaAttributes('Ongoing auctions')}\n />\n }\n gaAttributes={getGaAttributes('Won / Bought')}\n />\n }\n gaAttributes={getGaAttributes('Lost')}\n />\n \n }\n gaAttributes={getGaAttributes('Rate seller')}\n />\n \n );\n};\n\nBuyMenu.propTypes = {\n showMenu: PropTypes.bool\n};\n\nexport default BuyMenu;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport BuyIcon from '@tradera/blueprint/theme/icons2/buy.svg?jsx';\nimport BuyMenu from './buy-menu';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\n\nconst BuyingLink = ({\n onClick,\n mouseOver,\n mouseOut,\n transparentHeader,\n showMenu\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const buyingText = t('siteHeader_buying');\n return (\n mouseOver(HOVER_MENUS.BUY)}\n onMouseLeave={mouseOut}>\n {\n onClick(e, HOVER_MENUS.BUY);\n }}>\n \n \n {buyingText}\n \n \n \n \n );\n};\n\nBuyingLink.propTypes = {\n onClick: PropTypes.func,\n mouseOver: PropTypes.func,\n mouseOut: PropTypes.func,\n showMenu: PropTypes.bool\n};\n\nexport default React.memo(BuyingLink);\n","import React from 'react';\nimport {\n useTranslator,\n useUrlLocalizer,\n useCurrentLanguage\n} from 'tradera/lang/translate';\nimport { isSwedishOrUndefined } from 'tradera/localization/languagecode';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport HoverMenu from './hover-menu/hover-menu';\nimport HoverMenuItem from './hover-menu/hover-menu-item';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\n\nexport const HowTraderaWorks = ({\n mouseOut,\n mouseOver,\n transparentHeader,\n showMenu\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const { language } = useCurrentLanguage();\n\n const isSwedish = isSwedishOrUndefined(language);\n\n return (\n mouseOver(HOVER_MENUS.HOW_TRADERA_WORKS)}>\n \n \n \n {t('siteHeader_howTo_v2')}\n \n \n \n \n \n {isSwedish && (\n \n )}\n \n \n );\n};\n","import React from 'react';\nimport PenIcon from '@tradera/blueprint/theme/icons2/pen.svg?jsx';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\n\nconst NewListingLink = ({ transparentHeader, isLoggedIn, isDesktop }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const newListingLink = t('siteHeader_newListing');\n\n return (\n \n \n\n \n {newListingLink}\n \n \n );\n};\n\nexport default NewListingLink;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { connect } from 'react-redux';\nimport ExpandableMenuItem from 'tradera/components/site-header/dropdown-menu-item-expandable';\nimport { selectPreferredLanguage } from 'tradera/state/language/selectors';\n\nimport { LanguageSelect } from 'tradera/legacy/static/components/localization/language-select';\nimport TranslateIcon from '@tradera/blueprint/theme/icons2/translate.svg?jsx';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { mapLanguageCodeToLanguageKey } from 'tradera/localization/map-language-code-to-language-key';\n\nexport const PlainLocalizationMenuItem = ({ onToggle, preferredLanguage }) => {\n const { t } = useTranslator();\n\n return (\n }\n onOpen={onToggle}\n onClose={onToggle}>\n \n \n );\n};\n\nPlainLocalizationMenuItem.propTypes = {\n onToggle: PropTypes.func.isRequired,\n preferredLanguage: PropTypes.object\n};\n\nconst mapStateToProps = (state) => ({\n preferredLanguage: selectPreferredLanguage(state)\n});\n\nexport const LocalizationMenuItem = connect(mapStateToProps)(\n PlainLocalizationMenuItem\n);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport ExpandableMenuItem from 'tradera/components/site-header/dropdown-menu-item-expandable';\nimport { CurrencySelect } from 'tradera/legacy/static/components/localization/currency-select';\nimport CurrencyIcon from '@tradera/blueprint/theme/icons2/currency.svg?jsx';\nimport { useTranslator } from 'tradera/lang/translate';\nimport {\n selectShowCurrencySelection,\n selectPreferredCurrency\n} from 'tradera/state/multi-currency/selectors';\n\nexport const PlainCurrencyMenuItem = ({\n onToggle,\n showCurrencySelection,\n preferredCurrency\n}) => {\n const { t } = useTranslator();\n\n return showCurrencySelection ? (\n }\n onOpen={onToggle}\n onClose={onToggle}>\n \n \n ) : null;\n};\n\nconst mapStateToProps = (state) => ({\n showCurrencySelection: selectShowCurrencySelection(state),\n preferredCurrency: selectPreferredCurrency(state)\n});\n\nexport const CurrencyMenuItem = connect(mapStateToProps)(PlainCurrencyMenuItem);\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\nimport WarningIcon from '@tradera/blueprint/theme/icons/warning.svg?jsx';\nimport { Button } from '../atoms/button/button';\n\nconst trackPaymentOnboarding = (action, label) => {\n GtmService.trackAction('Tradera Payment Onboarding', action, label);\n};\n\nconst InvoiceUnpaidAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n {t('siteheader_invoiceUnpaidDescription')}\n
    \n );\n};\n\nconst InvoiceOverdueAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n \n \n {t('siteheader_invoiceOverdueTitle')}\n
    \n {t('siteheader_invoiceOverdueDescription')}\n
    \n
    \n );\n};\n\nconst BankAccountMissingAlert = () => {\n const { t } = useTranslator();\n trackPaymentOnboarding(\n 'Bank account Onboarding Alert',\n 'Will add from - Account menu alert'\n );\n return (\n
    \n \n \n {t('siteheader_bankAccountMissingTitle')}\n
    \n {t('siteheader_bankAccountMissingDescription')}\n
    \n
    \n );\n};\n\nconst PayoutFailedAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n \n \n {t('siteheader_payoutFailedTitle')}\n
    \n {t('siteheader_payoutFailedDescription')}\n
    \n
    \n );\n};\n\nconst PayoutReadyBankAccountMissingAlert = () => {\n const { t } = useTranslator();\n trackPaymentOnboarding(\n 'Bank account Onboarding Alert',\n 'Will add from - Account menu alert - Failed payment'\n );\n return (\n
    \n
    \n \n \n \n {t('siteheader_paymentReadBankAccountMissingTitle')}\n \n
    \n {t('siteheader_paymentReadBankAccountMissingDescription')}\n
    \n
    \n
    \n );\n};\n\nconst HyperwalletPayeeVerificationAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n
    \n \n \n \n {t('siteheader_hyperwalletPayeeVerificationTitle')}\n \n
    \n {t('siteheader_hyperwalletPayeeVerificationDescription')}\n
    \n
    \n {\n e.preventDefault();\n window.location.href = '/my/PayeeVerification';\n }}>\n {t('siteheader_hyperwalletPayeeVerificationMoreInfo')}\n \n
    \n );\n};\n\nconst HyperwalletPayeeVerificationReviewAlert = () => {\n const { t } = useTranslator();\n return (\n {\n e.preventDefault();\n window.location.href = '/my/PayeeVerificationCompleted';\n }}>\n \n \n \n {t('siteheader_hyperwalletPayeeVerificationReviewTitle')}\n \n
    \n {t('siteheader_hyperwalletPayeeVerificationReviewDescription')}\n
    \n \n );\n};\n\nconst KycQuestionnaireAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n
    \n \n \n {t('siteheader_kycQuestionnaireTitle')}\n
    \n {t('siteheader_kycQuestionnaireDescription')}\n
    \n
    \n {\n e.preventDefault();\n window.location.href = '/verify/kyc-questionnaire';\n }}>\n {t('siteheader_kycQuestionnaireMoreInfo')}\n \n
    \n );\n};\n\nconst PayoutReadyVerificationRequiredAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n
    \n \n \n \n {t('siteheader_payoutReadyVerificationRequiredTitle')}\n \n
    \n {t('siteheader_payoutReadyVerificationRequiredDescription')}\n
    \n
    \n
    \n );\n};\n\nconst OutstandingTraderaPayLicenseAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n
    \n \n \n \n {t('siteheader_outstandingTraderaPayLicenseTitle')}\n \n
    \n {t('siteheader_outstandingTraderaPayLicenseDescription')}\n
    \n
    \n {\n e.preventDefault();\n window.location.href = '/my/settings/payouts';\n }}>\n {t('siteheader_outstandingTraderaPayLicenseContinue')}\n \n
    \n );\n};\n\nconst PayoutReadyOutstandingTraderaPayLicenseAlert = () => {\n const { t } = useTranslator();\n return (\n
    \n
    \n \n \n \n {t(\n 'siteheader_payoutReadyOutstandingTraderaPayLicenseTitle'\n )}\n \n
    \n {t(\n 'siteheader_payoutReadyOutstandingTraderaPayLicenseDescription'\n )}\n
    \n
    \n {\n e.preventDefault();\n window.location.href = '/my/settings/payouts';\n }}>\n {t(\n 'siteheader_payoutReadyOutstandingTraderaPayLicenseContinue'\n )}\n \n
    \n );\n};\n\nexport {\n InvoiceUnpaidAlert,\n InvoiceOverdueAlert,\n BankAccountMissingAlert,\n PayoutFailedAlert,\n PayoutReadyBankAccountMissingAlert,\n HyperwalletPayeeVerificationAlert,\n HyperwalletPayeeVerificationReviewAlert,\n KycQuestionnaireAlert,\n PayoutReadyVerificationRequiredAlert,\n OutstandingTraderaPayLicenseAlert,\n PayoutReadyOutstandingTraderaPayLicenseAlert\n};\n","import React, { useState } from 'react';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport RatingStars from 'tradera/components/rating-stars/rating-stars';\nimport ALink from 'tradera/components/alink/alink';\nimport { useAppDispatch, useAppSelector } from 'tradera/state/hooks';\nimport { closeProfileMenu } from 'tradera/state/ui/reducer';\nimport { Button } from '../atoms/button/button';\n\nconst getGaLinkAttributes = (label) => ({\n 'data-ga-category': 'Top navigation',\n 'data-ga-action': 'Account menu',\n 'data-ga-label': `Link - ${label}`\n});\n\nconst getGaButtonAttributes = (label) => ({\n 'data-ga-category': 'Top navigation',\n 'data-ga-action': 'Account menu',\n 'data-ga-label': `Button - ${label}`\n});\n\nexport const ProfileCard = () => {\n const [imageAvailable, setImageAvailable] = useState(true);\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const dispatch = useAppDispatch();\n const handleCloseProfileMenu = () => dispatch(closeProfileMenu());\n const {\n memberAlias,\n cleanedMemberAlias,\n memberDetailedSellerRatingAverage: rating,\n memberHeroImage,\n memberId\n } = useAppSelector((state) => state.member);\n\n const imageUrl = memberHeroImage?.min;\n\n return (\n
    \n {imageUrl && imageAvailable && (\n {\n setImageAvailable(false);\n }}\n />\n )}\n
    \n \n {imageUrl\n ? t('siteHeader_changeCoverImage')\n : t('siteHeader_addCoverImage')}\n \n \n {memberAlias}\n \n {rating && (\n
    \n \n
    \n )}\n
    \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M4.5 1c.3 0 .5.2.5.5V2h6v-.5c0-.3.2-.5.5-.5s.5.2.5.5V2h.5C13.9 2 15 3.1 15 4.5v8c0 1.4-1.1 2.5-2.5 2.5h-9C2.1 15 1 13.9 1 12.5v-8C1 3.1 2.1 2 3.5 2H4v-.5c0-.3.2-.5.5-.5zM4 3h-.5C2.7 3 2 3.7 2 4.5V6h12V4.5c0-.8-.6-1.5-1.4-1.5H12v1.1c0 .3-.2.5-.5.5s-.5-.2-.5-.5V3H5v1.1c0 .3-.2.5-.5.5S4 4.3 4 4.1zm10 4H2v5.5c0 .8.7 1.5 1.5 1.5h9.1c.8 0 1.4-.7 1.4-1.5z\",\n fillRule: \"evenodd\"\n})));","import React from 'react';\nimport PropTypes from 'prop-types';\nimport MediaQuery from 'react-responsive';\nimport { useDispatch } from 'react-redux';\n\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { BREAKPOINT_SIZES, BREAKPOINTS } from 'tradera/constants/breakpoints';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { getMenuGaAttributes } from 'tradera/components/site-header/site-header.analytics';\n\nimport { useQualtive } from 'tradera/hooks/use-qualtive';\nimport { SURVEYS } from 'tradera/constants/surveys';\nimport { closeProfileMenu } from 'tradera/state/ui/reducer';\nimport MenuItemSeparator from 'tradera/components/site-header/dropdown-menu-item-separator';\nimport MenuItem from 'tradera/components/site-header/dropdown-menu-item';\nimport ExpandableMenuItem from 'tradera/components/site-header/dropdown-menu-item-expandable';\nimport { LocalizationMenuItem } from './expandable-localization-menu-item';\nimport { CurrencyMenuItem } from './expandable-currency-menu-item';\nimport {\n InvoiceUnpaidAlert,\n InvoiceOverdueAlert,\n BankAccountMissingAlert,\n PayoutFailedAlert,\n PayoutReadyBankAccountMissingAlert,\n HyperwalletPayeeVerificationAlert,\n HyperwalletPayeeVerificationReviewAlert,\n KycQuestionnaireAlert,\n PayoutReadyVerificationRequiredAlert,\n OutstandingTraderaPayLicenseAlert,\n PayoutReadyOutstandingTraderaPayLicenseAlert\n} from './profile-menu-alerts';\nimport { ProfileCard } from '../profile/profile-card';\nimport AuctionIcon from '@tradera/blueprint/theme/icons2/auction.svg?jsx';\nimport AuctionLostIcon from '@tradera/blueprint/theme/icons2/bid-lost.svg?jsx';\nimport BookmarkIcon from '@tradera/blueprint/theme/icons2/bookmark.svg?jsx';\nimport BuyIcon from '@tradera/blueprint/theme/icons2/buy.svg?jsx';\nimport ChatIcon from '@tradera/blueprint/theme/icons2/chat.svg?jsx';\nimport DateIcon from '@tradera/blueprint/theme/icons2/date.svg?jsx';\nimport DocumentIcon from '@tradera/blueprint/theme/icons2/document.svg?jsx';\nimport HeartIcon from '@tradera/blueprint/theme/icons2/heart.svg?jsx';\nimport HomeIcon from '@tradera/blueprint/theme/icons2/home.svg?jsx';\nimport ListIcon from '@tradera/blueprint/theme/icons2/list.svg?jsx';\nimport LogoutIcon from '@tradera/blueprint/theme/icons2/logout.svg?jsx';\nimport PackageIcon from '@tradera/blueprint/theme/icons2/package.svg?jsx';\nimport PenIcon from '@tradera/blueprint/theme/icons2/pen.svg?jsx';\nimport RatingPositiveIcon from '@tradera/blueprint/theme/icons2/rating-positive.svg?jsx';\nimport SaleIcon from '@tradera/blueprint/theme/icons2/sale.svg?jsx';\nimport SettingsIcon from '@tradera/blueprint/theme/icons2/settings.svg?jsx';\nimport SoldIcon from '@tradera/blueprint/theme/icons2/sold.svg?jsx';\nimport StarIcon from '@tradera/blueprint/theme/icons2/star.svg?jsx';\nimport UnsoldIcon from '@tradera/blueprint/theme/icons2/unsold.svg?jsx';\nimport UserIcon from '@tradera/blueprint/theme/icons2/user.svg?jsx';\nimport WalletIcon from '@tradera/blueprint/theme/icons2/wallet.svg?jsx';\nimport WinningIcon from '@tradera/blueprint/theme/icons2/winning.svg?jsx';\nimport WriteIcon from '@tradera/blueprint/theme/icons2/write.svg?jsx';\nimport PenWriteIcon from '@tradera/blueprint/theme/icons2/pen-write.svg?jsx';\nimport PlusOutlineIcon from 'tradera/blueprint/theme/icons2/plus-outline.svg?jsx';\nimport { useMenuHeightFix } from 'tradera/hooks/use-menu-height-fix';\nimport uiActions from 'tradera/state/ui/actions';\nimport { useAppSelector } from 'tradera/state/hooks';\nimport { useFeatureValue } from '@growthbook/growthbook-react';\n\nconst mediaBelowLarge = { maxWidth: BREAKPOINT_SIZES[BREAKPOINTS.MD].max };\n\nconst getGaAttributes = (label) =>\n getMenuGaAttributes('Top navigation', 'Account menu', label);\n\nconst trackOnClick = (label) => {\n GtmService.trackAction('Top navigation', 'Account menu', `Link - ${label}`);\n};\n\nconst trackExpandItemClick = (label) => {\n GtmService.trackAction('Top navigation', 'Account menu', label);\n};\n\nexport const ProfileMenuContent = () => {\n const { t } = useTranslator();\n const dispatch = useDispatch();\n const { cleanedMemberAlias, memberId, hasTraderaPay } = useAppSelector(\n (state) => state.member\n );\n const { threadsUnread } = useAppSelector(\n (state) => state.ui.badges.messaging\n );\n const showMessagingLink = useIsFeatureEnabled('messaging');\n\n const { systemMessages } = useAppSelector((state) => state.ui);\n const { toLocalizedUrl } = useUrlLocalizer();\n const isTraderaShopEnabled = useIsFeatureEnabled('tradera-shop');\n const menuContentRef = useMenuHeightFix();\n const { isQualtiveEnabled, openQualtiveModal } = useQualtive();\n\n return (\n <>\n
    \n \n
    \n
      \n \n \n \n }\n border\n gaAttributes={getGaAttributes('My Tradera Overview')}\n />\n {showMessagingLink && (\n <>\n }\n border\n notify={threadsUnread}\n follow={false}\n gaAttributes={getGaAttributes('Messages')}\n />\n \n )}\n \n \n \n }\n border>\n }\n border\n gaAttributes={getGaAttributes('Wishlist')}\n />\n }\n border\n gaAttributes={getGaAttributes('Saved searches')}\n />\n }\n gaAttributes={getGaAttributes('Seller list')}\n />\n \n }\n border>\n }\n border\n gaAttributes={getGaAttributes('Ongoing auctions')}\n />\n }\n border\n gaAttributes={getGaAttributes('Won / Bought')}\n />\n }\n border\n gaAttributes={getGaAttributes('Lost')}\n />\n }\n gaAttributes={getGaAttributes('Rate seller')}\n />\n \n }\n border>\n }\n border\n gaAttributes={getGaAttributes('Active listings')}\n />\n }\n border\n gaAttributes={getGaAttributes('Sold listings')}\n />\n }\n border\n gaAttributes={getGaAttributes('Unsold listings')}\n />\n }\n border\n gaAttributes={getGaAttributes('Picklist')}\n />\n }\n border\n gaAttributes={getGaAttributes('Create new listing')}\n />\n }\n border\n gaAttributes={getGaAttributes('Listing templates')}\n />\n }\n border\n gaAttributes={getGaAttributes('Rate buyer')}\n />\n {isTraderaShopEnabled && (\n }\n gaAttributes={getGaAttributes(\n 'To Tradera Shop'\n )}\n />\n )}\n \n \n \n }\n inSPA={true}\n onClick={closeProfileMenu}\n border\n gaAttributes={getGaAttributes('My profile')}\n />\n }\n inSPA={true}\n onClick={closeProfileMenu}\n border\n gaAttributes={getGaAttributes('Ratings')}\n />\n }\n border\n gaAttributes={getGaAttributes('Notifications')}\n />\n \n }\n notificationDot={systemMessages.InvoiceUnpaid && 'warning'}\n alerts={[\n systemMessages.InvoiceUnpaid && (\n \n ),\n systemMessages.InvoiceOverdue && (\n \n )\n ]}\n border\n gaAttributes={getGaAttributes('Invoices')}\n />\n {hasTraderaPay && (\n }\n alerts={[\n systemMessages.BankAccountMissing && (\n \n ),\n systemMessages.PayoutReadyBankAccountMissing && (\n \n ),\n systemMessages.PayoutFailed && (\n \n ),\n systemMessages.HyperwalletPayeeVerificationRequired && (\n \n ),\n systemMessages.HyperwalletPayeeVerificationUnderReview && (\n \n ),\n systemMessages.PayoutReadyVerificationRequired && (\n \n ),\n systemMessages.OutstandingTraderaPayLicense && (\n \n ),\n systemMessages.PayoutReadyOutstandingTraderaPayLicense && (\n \n )\n ]}\n notify={systemMessages.UnreadPayouts}\n border\n gaAttributes={getGaAttributes('Payouts')}\n />\n )}\n }\n alerts={[\n systemMessages.KycQuestionnaire && (\n \n )\n ]}\n border\n gaAttributes={getGaAttributes('Settings')}\n />\n \n \n \n {isQualtiveEnabled && (\n }\n onClick={() => {\n openQualtiveModal(SURVEYS.general, t);\n trackOnClick('Leave feedback Qualtive');\n }}\n />\n )}\n }\n border\n gaAttributes={getGaAttributes('Customer service')}\n />\n \n dispatch(uiActions.logOutAction())}\n link={toLocalizedUrl('/login/logout')}\n className=\"site-dropdown__item-with-icon\"\n icon={}\n gaAttributes={getGaAttributes('Logout')}\n />\n {/* NOTE: Fix for iPhone menu making bottom element unclickable */}\n \n
    \n \n );\n};\n\nconst ExperimentMenuItem = ({ originalPlacement = false }) => {\n const { toLocalizedUrl } = useUrlLocalizer();\n const { t } = useTranslator();\n\n const experimentVariant = useFeatureValue('tgl-404-new-listing-fab', 0);\n\n if (experimentVariant === 0 && originalPlacement) {\n return (\n }\n border\n gaAttributes={getGaAttributes('Create new listing - from top')}\n />\n );\n } else if (experimentVariant === 1 && !originalPlacement) {\n return (\n }\n border\n highlight\n gaAttributes={getGaAttributes('Create new listing - from top')}\n />\n );\n } else if (experimentVariant === 2 && !originalPlacement) {\n return (\n }\n border\n highlight\n gaAttributes={getGaAttributes('Create new listing - from top')}\n />\n );\n } else if (experimentVariant === 3 && !originalPlacement) {\n return (\n }\n border\n highlight\n gaAttributes={getGaAttributes('Create new listing - from top')}\n />\n );\n } else {\n return null;\n }\n};\n\nProfileMenuContent.propTypes = {\n showMessagingLink: PropTypes.bool,\n hasTraderaPay: PropTypes.bool\n};\n","import { isServer } from 'tradera/utils/nextjs';\n\nexport const openChatBot = () => {\n if (isServer) return;\n\n const protocol =\n document.location.protocol === 'https:' ? 'https://' : 'http://';\n\n const id = '62132ec40d7b5b0007d222c5';\n const src = `${protocol}cdn.chatbot.com/widget/plugin.js`;\n\n window.__be = window.__be || {};\n window.__be.id = id;\n window.BE_API = window.BE_API || {};\n\n if (window.BE_API.openChatWindow) {\n if (\n window.BE_API.isChatWindowOpened &&\n !window.BE_API.isChatWindowOpened()\n ) {\n window.BE_API.openChatWindow();\n }\n return;\n }\n\n window.BE_API.onLoad = () => {\n window.BE_API.openChatWindow();\n };\n\n if (!isExisting(src)) {\n const scriptEl = document.createElement('script');\n scriptEl.setAttribute('type', 'text/javascript');\n scriptEl.setAttribute('async', true);\n scriptEl.setAttribute('src', src);\n\n document.body.appendChild(scriptEl);\n }\n};\n\nconst isExisting = (src) => {\n return !!document.querySelector(`script[src=\"${src}\"]`);\n};\n","import React from 'react';\nimport MenuItemSeparator from 'tradera/components/site-header/dropdown-menu-item-separator';\nimport MenuItem from 'tradera/components/site-header/dropdown-menu-item';\nimport ExpandableMenuItem from 'tradera/components/site-header/dropdown-menu-item-expandable';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { getMenuGaAttributes } from 'tradera/components/site-header/site-header.analytics';\nimport { getReturnUrl } from 'tradera/utils/login';\nimport { logger } from 'packages/logger';\nimport {\n useTranslator,\n useUrlLocalizer,\n useCurrentLanguage\n} from 'tradera/lang/translate';\nimport { useQualtive } from 'tradera/hooks/use-qualtive';\nimport { SURVEYS } from 'tradera/constants/surveys';\nimport ChatIcon from '@tradera/blueprint/theme/icons2/chat.svg?jsx';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\nimport { useMenuHeightFix } from 'tradera/hooks/use-menu-height-fix';\nimport { openChatBot } from './chat-bot-loader';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport { useAppSelector } from 'tradera/state/hooks';\n\nconst onIframeLoad = (e, closeMenu) => {\n const iframe = e.target;\n if (iframe) {\n const iframeDocument =\n iframe.contentDocument || iframe.contentWindow.document;\n if (iframeDocument) {\n iframeDocument.body.addEventListener('keydown', (e) => {\n if (e.keyCode === 27) {\n closeMenu();\n }\n });\n }\n }\n};\n\nconst getGaAttributes = (label) =>\n getMenuGaAttributes('Top navigation', 'Login menu', label);\n\nconst trackOnClick = (label) => {\n GtmService.trackAction('Top navigation', 'Login menu', `Link - ${label}`);\n};\n\nexport const SignInMenuContent = ({ closeMenu }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const { language } = useCurrentLanguage();\n const menuContentRef = useMenuHeightFix();\n const { isQualtiveEnabled, openQualtiveModal } = useQualtive();\n const { redirectUrl } = useAppSelector((state) => state.ui.profileMenu);\n\n const isChatBotEnabled = language === 'sv';\n\n const iframeClass = useIsFeatureEnabled('recaptcha-v3')\n ? 'iframe-with-recaptcha'\n : 'iframe-without-recaptcha';\n\n return (\n <>\n onIframeLoad(e, closeMenu)}>\n

    Din browser saknar stöd för iframes

    \n \n }\n border={false}>\n }\n gaAttributes={getGaAttributes('Forgot')}\n />\n }\n gaAttributes={getGaAttributes('Help pages')}\n />\n }\n gaAttributes={getGaAttributes('Customer service')}\n />\n\n {isChatBotEnabled && (\n }\n onClick={async () => {\n try {\n openChatBot();\n closeMenu();\n } catch (e) {\n logger(e);\n }\n\n trackOnClick('Chat with JUNO');\n }}\n />\n )}\n {isQualtiveEnabled && (\n }\n onClick={() => {\n openQualtiveModal(SURVEYS.general);\n trackOnClick('Leave feedback Qualtive');\n }}\n />\n )}\n {/* NOTE: Fix for iPhone menu making bottom element unclickable */}\n \n \n \n );\n};\n","import React from 'react';\nimport { TransitionGroup } from 'react-transition-group';\nimport { RemoveScroll } from 'react-remove-scroll';\n\nimport {\n Breakpoint,\n BREAKPOINTS\n} from 'tradera/components/breakpoint/breakpoint';\nimport {\n EnterFrom,\n EnterFade\n} from 'tradera/components/transitions/transitions';\nimport ApplicationErrorBoundary from 'tradera/components/application-error-boundary/application-error-boundary';\nimport { Overlay } from 'tradera/components/scrollable-modal/overlay';\nimport { ProfileMenuContent } from './profile-menu-content';\nimport { SignInMenuContent } from './sign-in-menu-content';\nimport { useAppSelector } from 'tradera/state/hooks';\n\ntype ProfileMenuProps = {\n expanded: boolean;\n handleExpand: () => void;\n transparentHeader: boolean;\n};\n\nexport const ProfileMenu = ({\n expanded,\n handleExpand,\n transparentHeader\n}: ProfileMenuProps) => {\n const { isLoggedIn } = useAppSelector((state) => state.member);\n\n const renderChild = () => (\n \n
    \n {isLoggedIn ? (\n \n ) : (\n \n )}\n
    \n
    \n );\n\n return (\n \n \n \n );\n};\n","import React from 'react';\nimport UserIcon from '@tradera/blueprint/theme/icons2/user-fill.svg?jsx';\n\ntype ProfileProps = {\n isLoggedIn: boolean;\n facebookId: string;\n};\n\nexport const Profile = ({ isLoggedIn, facebookId }: ProfileProps) =>\n isLoggedIn && facebookId ? (\n \n ) : (\n <>\n \n \n );\n","import React from 'react';\nimport DropdownIcon from '@tradera/blueprint/theme/icons2/dropdown.svg?jsx';\nimport { useTranslator } from 'tradera/lang/translate';\nimport MessageIcon from '@tradera/blueprint/theme/icons2/message.svg?jsx';\nimport { Profile } from 'tradera/components/site-header/profile';\nimport { useAppSelector } from 'tradera/state/hooks';\nimport cn from 'classnames';\n\ntype ProfileLinkProps = {\n handleProfileClick: () => void;\n menuExpanded: boolean;\n transparentHeader: boolean;\n signInButtonExperimentEnabled: boolean;\n};\n\nexport const ProfileLink = ({\n handleProfileClick,\n menuExpanded,\n transparentHeader,\n signInButtonExperimentEnabled\n}: ProfileLinkProps) => {\n const { badges } = useAppSelector((state) => state.ui);\n const { memberAlias, isLoggedIn, facebookId } = useAppSelector(\n (state) => state.member\n );\n\n const {\n system: systemMessageCount,\n messaging: { threadsUnread }\n } = badges;\n\n const { t } = useTranslator();\n const logInText = t('siteHeader_logIn');\n const tooltip = isLoggedIn ? t('siteHeader_myTradera') : logInText;\n const text = isLoggedIn ? memberAlias : logInText;\n\n let badgeType = 'primary';\n if (systemMessageCount > 0) {\n badgeType = 'danger';\n }\n const multipleBadges = threadsUnread > 0 && systemMessageCount > 0;\n\n const buttonClasses = cn(\n 'd-flex z-modal align-items-center slim-header__link-spacing',\n {\n 'slim-header__button': !signInButtonExperimentEnabled || isLoggedIn,\n 'btn btn-branded slim-header__sign-up-link px-lg-1 mr-lg-0 text-dark':\n signInButtonExperimentEnabled && !isLoggedIn,\n active: menuExpanded,\n 'btn-transparent-header': transparentHeader\n }\n );\n\n const textClass = cn(\n 'slim-header__link-text slim-header__link-text--user col-auto pl-2 pl-lg-1',\n {\n 'd-none d-lg-inline': !signInButtonExperimentEnabled || isLoggedIn\n }\n );\n\n return (\n \n \n {!signInButtonExperimentEnabled && (\n \n )}\n {(threadsUnread > 0 || systemMessageCount > 0) && (\n \n {threadsUnread > 0 && (\n \n \n {threadsUnread < 100 ? threadsUnread : '99+'}\n \n )}\n {systemMessageCount > 0 && (\n 0\n ? 'border-left border-white system-count--messaging'\n : 'system-count'\n }`}>\n {systemMessageCount}\n \n )}\n \n )}\n {text}\n {isLoggedIn && (\n \n )}\n \n \n );\n};\n","import React from 'react';\nimport uiActions from 'tradera/state/ui/actions';\nimport {\n closeCategoryDropdownMenu,\n closeProfileMenu,\n openProfileMenu\n} from 'tradera/state/ui/reducer';\nimport { ProfileMenu } from '../profile-menu/profile-menu';\nimport { ProfileLink } from './profile-link';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport { MODAL_STATE } from 'tradera/constants/ui';\nimport { useAppDispatch, useAppSelector } from 'tradera/state/hooks';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\n\nexport const ProfileMenuLink = ({\n transparentHeader,\n signInButtonExperimentEnabled\n}) => {\n const { isLoggedIn } = useAppSelector((state) => state.member);\n const { type: pageName } = useAppSelector((state) => state.page);\n const { profileMenu } = useAppSelector((state) => state.ui);\n const dispatch = useAppDispatch();\n\n const { toLocalizedUrl } = useUrlLocalizer();\n const handleLoginClick = (redirectUrl = false) =>\n dispatch(\n uiActions.signIn({ redirectUrl: toLocalizedUrl(redirectUrl) })\n );\n\n // Prevent Default and show login, if not logged in\n const preventNavigationAndShowLogin = (event, redirect) => {\n if (!isLoggedIn) {\n event.preventDefault();\n GtmService.trackAction('Top navigation', 'Login', 'Click');\n handleLoginClick(redirect);\n }\n };\n\n const handleProfileClick = (evt) => {\n if (profileMenu.open === MODAL_STATE.OPEN) {\n dispatch(closeProfileMenu());\n } else {\n dispatch(closeCategoryDropdownMenu());\n\n // not logged in\n if (!isLoggedIn) {\n preventNavigationAndShowLogin(evt, false);\n return;\n } else {\n dispatch(openProfileMenu());\n }\n }\n\n if (pageName.includes('MyTradera')) {\n window.scrollTo(0, 0);\n }\n };\n\n const { open: profileMenuOpen = false } = profileMenu;\n\n return (\n <>\n \n \n \n );\n};\n","import React from 'react';\nimport { useTranslator } from 'tradera/lang/translate';\nimport SearchIcon from '@tradera/blueprint/theme/icons2/search.svg?jsx';\n\nexport const SearchButton = ({ showSearch, onClick }) => {\n const { t } = useTranslator();\n\n return (\n \n \n \n );\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport HoverMenu from './hover-menu/hover-menu';\nimport HoverMenuItem from './hover-menu/hover-menu-item';\nimport { getMenuGaAttributes } from './site-header.analytics.js';\nimport { useTranslator } from 'tradera/lang/translate';\n\nimport HeartIcon from '@tradera/blueprint/theme/icons2/heart.svg?jsx';\nimport BookmarkIcon from '@tradera/blueprint/theme/icons2/bookmark.svg?jsx';\nimport StarIcon from '@tradera/blueprint/theme/icons2/star.svg?jsx';\n\nconst getGaAttributes = (label) =>\n getMenuGaAttributes('Top navigation', 'Watchlist menu', label);\n\nconst WatchListMenu = ({ showMenu }) => {\n const { t } = useTranslator();\n\n return (\n \n }\n gaAttributes={getGaAttributes('Wishlist')}\n />\n }\n gaAttributes={getGaAttributes('Saved searches')}\n />\n }\n gaAttributes={getGaAttributes('Seller list')}\n />\n \n );\n};\n\nWatchListMenu.propTypes = {\n showMenu: PropTypes.bool\n};\n\nexport default WatchListMenu;\n","import React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport HeartIcon from '@tradera/blueprint/theme/icons2/heart.svg?jsx';\nimport WatchlistMenu from './watch-list-menu';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport { useSelector, useDispatch } from 'react-redux';\nimport HeartFilledIcon from '@tradera/blueprint/theme/icons2/heart-fill.svg?jsx';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport {\n closeCategoryDropdownMenu,\n closeProfileMenu,\n closeWishListSideSheet,\n openWishListSideSheet\n} from 'tradera/state/ui/reducer';\n\nconst WishlistLink = ({\n onClick,\n mouseOver,\n mouseOut,\n transparentHeader,\n showMenu\n}) => {\n const { t } = useTranslator();\n const dispatch = useDispatch();\n\n const { isOpen } = useSelector((state) => state.ui.wishListSideSheet);\n const isWishListSideSheetEnabled = useIsFeatureEnabled(\n 'wish-list-side-sheet'\n );\n\n const { toLocalizedUrl } = useUrlLocalizer();\n\n const wishListItemIds = useSelector((state) => state.items.wishListItemIds);\n\n const [prevNumWishListItemIds, setPrevNumWishListItemIds] = useState(null);\n const [heartBlink, setHeartBlink] = useState(false);\n\n useEffect(() => {\n if (!isWishListSideSheetEnabled) return;\n\n if (\n prevNumWishListItemIds !== null &&\n prevNumWishListItemIds < wishListItemIds.length\n ) {\n setHeartBlink(true);\n setTimeout(() => setHeartBlink(false), 600);\n }\n\n setPrevNumWishListItemIds(wishListItemIds.length);\n }, [wishListItemIds, isWishListSideSheetEnabled, prevNumWishListItemIds]);\n\n const handleOnClick = (e) => {\n if (isWishListSideSheetEnabled) {\n if (isOpen) {\n dispatch(closeWishListSideSheet());\n } else {\n dispatch(closeCategoryDropdownMenu());\n dispatch(closeProfileMenu());\n\n dispatch(openWishListSideSheet());\n }\n }\n\n onClick(e, HOVER_MENUS.WISHLIST);\n };\n\n return (\n mouseOver(HOVER_MENUS.WISHLIST)}\n onMouseLeave={mouseOut}>\n \n
    \n \n {heartBlink && (\n \n )}\n
    \n\n \n {t('siteHeader_wishlist')}\n \n \n \n
    \n );\n};\n\nWishlistLink.propTypes = {\n onClick: PropTypes.func,\n mouseOver: PropTypes.func,\n mouseOut: PropTypes.func,\n showMenu: PropTypes.bool\n};\n\nexport default React.memo(WishlistLink);\n","import React from 'react';\nimport AuctionIcon from '@tradera/blueprint/theme/icons2/auction.svg?jsx';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\n\nconst OngoingAuctionsLink = ({ transparentHeader }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n\n return (\n \n \n \n );\n};\n\nexport default OngoingAuctionsLink;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport HoverMenu from './hover-menu/hover-menu';\nimport hoverMenuStyles from './hover-menu/hover-menu.module.scss';\nimport HoverMenuItem from './hover-menu/hover-menu-item';\nimport HoverMenuItemSeparator from './hover-menu/hover-menu-separator';\nimport { getMenuGaAttributes } from './site-header.analytics.js';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport PenIcon from '@tradera/blueprint/theme/icons2/pen.svg?jsx';\nimport WriteIcon from '@tradera/blueprint/theme/icons2/write.svg?jsx';\nimport SaleIcon from '@tradera/blueprint/theme/icons2/sale.svg?jsx';\nimport ListIcon from '@tradera/blueprint/theme/icons2/list.svg?jsx';\nimport PackageIcon from '@tradera/blueprint/theme/icons2/package.svg?jsx';\nimport RatingPositiveIcon from '@tradera/blueprint/theme/icons2/rating-positive.svg?jsx';\nimport SoldIcon from '@tradera/blueprint/theme/icons2/sold.svg?jsx';\nimport UnsoldIcon from '@tradera/blueprint/theme/icons2/unsold.svg?jsx';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\n\nconst getGaAttributes = (label) =>\n getMenuGaAttributes('Top navigation', 'Selling menu', label);\n\nconst SellMenu = ({ showMenu }) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const isTraderaShopEnabled = useIsFeatureEnabled('tradera-shop');\n return (\n \n }\n gaAttributes={getGaAttributes('Create new listing')}\n />\n }\n gaAttributes={getGaAttributes('Listing templates')}\n />\n \n }\n gaAttributes={getGaAttributes('Active listings')}\n />\n }\n gaAttributes={getGaAttributes('Sold listings')}\n />\n }\n gaAttributes={getGaAttributes('Unsold listings')}\n />\n }\n gaAttributes={getGaAttributes('Picklist')}\n />\n \n }\n gaAttributes={getGaAttributes('Rate buyer')}\n />\n {isTraderaShopEnabled && (\n <>\n \n }\n gaAttributes={getGaAttributes('To Tradera Shop')}\n />\n \n )}\n \n );\n};\n\nSellMenu.propTypes = {\n showMenu: PropTypes.bool\n};\n\nexport default SellMenu;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport SaleIcon from '@tradera/blueprint/theme/icons2/sale.svg?jsx';\nimport SellMenu from './sell-menu';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\n\nconst SellingLink = ({\n onClick,\n mouseOver,\n mouseOut,\n transparentHeader,\n showMenu\n}) => {\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const selling = t('siteHeader_selling');\n\n return (\n mouseOver(HOVER_MENUS.SELL)}\n onMouseLeave={mouseOut}>\n {\n onClick(e, HOVER_MENUS.SELL);\n }}>\n \n \n {selling}\n \n \n \n \n );\n};\n\nSellingLink.propTypes = {\n onClick: PropTypes.func,\n mouseOver: PropTypes.func,\n mouseOut: PropTypes.func,\n showMenu: PropTypes.bool\n};\n\nexport default React.memo(SellingLink);\n","import React from 'react';\nimport { cssTransition, ToastContainer } from 'react-toastify';\nimport AlertIcon from '@tradera/blueprint/theme/icons2/alert.svg?jsx';\nimport CheckIcon from '@tradera/blueprint/theme/icons2/check.svg?jsx';\nimport InfoIcon from '@tradera/blueprint/theme/icons2/info.svg?jsx';\nimport HotIcon from '@tradera/blueprint/theme/icons2/hot.svg?jsx';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\n\nimport 'react-toastify/dist/ReactToastify.css';\n\nvar SlideFade = /*#__PURE__*/ cssTransition({\n enter: 'Toastify--animate Toastify__slideFade-enter',\n exit: 'Toastify--animate Toastify__slideFade-exit'\n});\n\nconst options = {\n className: 'bp',\n transition: SlideFade,\n hideProgressBar: true,\n theme: 'colored',\n closeOnClick: false,\n draggablePercent: 40,\n autoClose: 5000,\n pauseOnFocusLoss: false,\n icon: ({ type }) =>\n ({\n // default, - no icon.\n info: ,\n success: ,\n hot: ,\n warning: ,\n error: \n }[type]),\n closeButton({ closeToast }) {\n return (\n
    \n \n
    \n );\n }\n};\n\nexport const TraderaToastContainer = () => {\n return ;\n};\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport HoverMenu from './hover-menu/hover-menu';\nimport hoverMenuStyles from './hover-menu/hover-menu.module.scss';\nimport { CurrencySelect } from 'tradera/legacy/static/components/localization/currency-select';\nimport { selectPreferredCurrency } from 'tradera/state/multi-currency/selectors';\nimport { useTranslator } from 'tradera/lang/translate';\n\nconst PlainCurrencyLink = ({\n onClick,\n onClickMenuOption,\n mouseOver,\n mouseOut,\n showMenu,\n transparentHeader,\n preferredCurrency\n}) => {\n const { t } = useTranslator();\n return (\n mouseOver(HOVER_MENUS.CURRENCY)}\n onMouseLeave={mouseOut}>\n {\n GtmService.trackAction(\n 'Top navigation',\n 'Currency menu',\n 'Open/Close'\n );\n onClick(e, HOVER_MENUS.CURRENCY);\n }}>\n {preferredCurrency.shortName}\n \n \n
    \n {\n onClickMenuOption(e, HOVER_MENUS.CURRENCY);\n }}\n inProfileMenu={false}\n title={t('siteHeader_currency')}\n />\n
    \n \n \n );\n};\n\nconst mapStateToProps = (state) => ({\n preferredCurrency: selectPreferredCurrency(state)\n});\n\nconst mapDispatchToProps = {};\n\nexport const CurrencyLink = connect(\n mapStateToProps,\n mapDispatchToProps\n)(PlainCurrencyLink);\n","// extracted by mini-css-extract-plugin\nexport default {\"heart\":\"heart--OvcKy\"};","import React from 'react';\n\nexport const WishListEmpty = ({ opacity, width, className }) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n","import React, { useEffect, useMemo } from 'react';\nimport { useFetchWishList } from './use-fetch-wish-list';\nimport Fuse from 'fuse.js';\nimport { useSelector } from 'react-redux';\nimport { WishListItem } from 'tradera/components/wish-list-item/wish-list-item';\nimport { useInView } from 'react-intersection-observer';\nimport LoadingIcon from '@tradera/blueprint/theme/icons2/loading.svg?jsx';\nimport HeartFilledIcon from '@tradera/blueprint/theme/icons2/heart-fill.svg?jsx';\nimport styles from './wish-list-side-sheet.module.scss';\nimport { Trans, useTranslator } from 'tradera/lang/translate';\nimport { WishListEmpty } from './../start-page/wish-list/wish-list-empty';\n\nexport const WishListItems = ({\n filter,\n searchTerm,\n setShowMayBeMoreResultsText\n}) => {\n const { t } = useTranslator();\n\n const { fetchNextPage, page, isFetching, wishListItems, totalCount } =\n useFetchWishList(filter);\n\n const wishListItemIds = useSelector((state) => state.items.wishListItemIds);\n\n const { ref: loadingMoreRef, inView } = useInView();\n\n const hasSearchTerm = searchTerm.trim() !== '';\n const isAllItemsFetched = wishListItems.length === totalCount;\n\n useEffect(() => {\n if (hasSearchTerm || isFetching || !inView || isAllItemsFetched) return;\n\n fetchNextPage();\n }, [fetchNextPage, inView, isFetching, hasSearchTerm, isAllItemsFetched]);\n\n useEffect(() => {\n if (!hasSearchTerm || isAllItemsFetched)\n setShowMayBeMoreResultsText(false);\n\n const timeoutCheck = setTimeout(() => {\n if (!hasSearchTerm || isAllItemsFetched)\n setShowMayBeMoreResultsText(false);\n else if (!isAllItemsFetched) setShowMayBeMoreResultsText(true);\n }, 1000);\n\n return () => clearTimeout(timeoutCheck);\n }, [hasSearchTerm, setShowMayBeMoreResultsText, isAllItemsFetched]);\n\n const visibleWishListItems = useMemo(() => {\n if (!hasSearchTerm) return wishListItems;\n\n const fuseOptions = {\n ignoreLocation: true,\n threshold: 0.4,\n keys: ['shortDescription', 'sellerAlias']\n };\n const fuse = new Fuse(wishListItems, fuseOptions);\n\n return fuse.search(searchTerm).map((results) => results.item);\n }, [hasSearchTerm, searchTerm, wishListItems]);\n\n return (\n <>\n {!isFetching && wishListItems.length === 0 && (\n
    \n {filter === 'all' ? (\n <>\n \n

    \n {t('wishlist_sidesheet_empty_title')}\n

    \n

    \n \n )\n }}\n />\n

    \n \n ) : (\n

    \n {t('wishlist_sidesheet_no_items_with_filter')}\n

    \n )}\n
    \n )}\n {isFetching && page === 1 ? (\n \n ) : (\n
      \n {visibleWishListItems?.map((item) => {\n const existsInState = wishListItemIds.includes(\n item.itemId\n );\n\n return (\n
    • \n \n
    • \n );\n })}\n {isFetching && page > 1 && (\n
      \n \n
      \n )}\n {!isFetching &&
      }\n
    \n )}\n \n );\n};\n","import { useState, useEffect, useCallback } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { touchWebClient } from 'tradera/utils/http';\nimport * as itemActions from 'tradera/state/items/actions';\nimport { logger } from 'packages/logger';\n\nconst MAX_FETCH_NUM_ITEMS = 50;\n\nexport const useFetchWishList = (filter) => {\n const dispatch = useDispatch();\n\n const [wishListItemsData, setWishListItemsData] = useState({\n items: [],\n totalCount: 0\n });\n const [query, setQuery] = useState({\n filter: null,\n page: 1,\n itemsPerPage: MAX_FETCH_NUM_ITEMS\n });\n const [isFetching, setIsFetching] = useState(false);\n\n const fetchNextPage = useCallback(() => {\n setQuery((state) => ({ ...state, page: state.page + 1 }));\n }, []);\n\n useEffect(() => {\n setQuery({\n filter,\n page: 1,\n itemsPerPage: MAX_FETCH_NUM_ITEMS\n });\n }, [filter]);\n\n useEffect(() => {\n const { filter, page, itemsPerPage } = query;\n if (!filter) return;\n\n setIsFetching(true);\n\n const getWishListItems = async () => {\n try {\n const { data } = await touchWebClient.get(\n `/my/api/wish-list?page=${page}&filter=${filter}&itemsPerPage=${itemsPerPage}`\n );\n\n const itemIds = data.items.map((item) => item.itemId);\n dispatch(itemActions.addItemsToWishList(itemIds));\n\n if (page > 1) {\n setWishListItemsData((state) => ({\n items: [...state.items, ...data.items],\n totalCount: data.totalCount\n }));\n } else {\n setWishListItemsData({\n items: data.items,\n totalCount: data.totalCount\n });\n }\n } catch (error) {\n logger(`Fetch wish list failed ${error}`);\n } finally {\n setIsFetching(false);\n }\n };\n\n getWishListItems();\n }, [dispatch, query]);\n\n return {\n wishListItems: wishListItemsData.items,\n totalCount: wishListItemsData.totalCount,\n isFetching,\n page: query.page,\n fetchNextPage\n };\n};\n","import React, { useEffect, useState } from 'react';\nimport { Button } from 'tradera/components/atoms/button/button';\nimport SideMenu from 'tradera/components/side-menu/side-menu';\nimport { ScrollableModalContent } from 'tradera/components/scrollable-modal/scrollable-modal-content';\nimport { RadioSwitch } from 'tradera/components/form-controls/radio-switch';\nimport { WishListItems } from './wish-list-items';\nimport { useTranslator } from 'tradera/lang/translate';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { closeWishListSideSheet } from 'tradera/state/ui/reducer';\nimport { HeaderWithCloseButton } from 'tradera/components/scrollable-modal/header-with-close-button';\nimport { SearchInput } from 'tradera/components/form-controls/search-input/search-input';\n\nexport const WishListSideSheet = () => {\n const { t } = useTranslator();\n\n const dispatch = useDispatch();\n const { isOpen } = useSelector((state) => state.ui.wishListSideSheet);\n\n const [showMayBeMoreResultsText, setShowMayBeMoreResultsText] =\n useState(false);\n\n const [searchTerm, setSearchTerm] = useState('');\n\n const filterOptions = [\n { value: 'all', name: t('wishlist_sidesheet_filter_all') },\n {\n value: 'active',\n name: t('wishlist_side_sheet_filter_ongoing')\n },\n {\n value: 'ended',\n name: t('wishlist_sidesheet_filter_ended')\n }\n ];\n\n const [selectedFilter, setSelectedFilter] = useState('all');\n\n const handleFilterChange = (filter) => setSelectedFilter(filter);\n\n const handleSearch = ({ target }) => setSearchTerm(target.value);\n\n const handleSearchClear = () => setSearchTerm('');\n\n const handleDismiss = () => dispatch(closeWishListSideSheet());\n\n useEffect(() => {\n if (isOpen) return;\n\n handleSearchClear();\n setSelectedFilter('all');\n }, [isOpen]);\n\n return (\n \n \n \n
    \n \n \n
    \n \n }\n className=\"bg-white\"\n innerClassName=\"flex-grow-1\"\n footer={\n <>\n {showMayBeMoreResultsText && (\n \n {t('wishlist_sidesheet_may_be_more_resulsts')}\n \n )}\n \n \n }>\n \n \n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 98 116\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: \"48\",\n cy: \"112.5\",\n rx: \"48\",\n ry: \"3.5\",\n fill: \"#E6E6E6\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55.42 47.13l19.24.93c.16.01.3.1.39.24l19.98 33.83c.19.3-.02.7-.38.72L72 84.25 58.83 99.42a.48.48 0 01-.38.17l-22.16-1.12-16.72 12.23a.48.48 0 01-.73-.21L2.23 69.54a.48.48 0 01.2-.6L20.68 57.8l22.1 2.47 12.63-13.14z\",\n fill: \"#FEF880\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M55.03 46.15l19.67.96c.49.02.93.29 1.17.7l19.99 33.83c.54.92-.08 2.1-1.15 2.16L72.46 85.2l-12.9 14.86c-.3.34-.72.52-1.16.5l-21.82-1.1-16.45 12.02c-.75.55-1.82.25-2.18-.62L1.34 69.9c-.27-.66-.02-1.4.58-1.77L20.47 56.8l21.96 2.46 12.6-13.12zm.78 1.96L43.16 61.27 20.9 58.8 3.27 69.55l16.23 40.01L36 97.5l22.26 1.12 13.28-15.3 22.27-1.38-19.46-32.93-18.54-.9z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M72.35 84.73a.96.96 0 01-1.28-.46L59.65 60.06a.96.96 0 111.73-.82l11.43 24.21a.96.96 0 01-.46 1.28zm-49.47-17.4a.96.96 0 011.25.5l12.6 29.54a.96.96 0 01-1.77.75L22.37 68.58a.96.96 0 01.5-1.26z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M43.67 37.96l5.27 1.32-8.63 28.5-5.38 6.83v-8.98l8.74-27.67z\",\n fill: \"#C4C4C4\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M44.95 40.26l-8.1 25.66v3.17l1.74-2.21 7.93-26.23-1.57-.4zm-1.28-2.3l-8.74 27.67v8.98l5.38-6.83 8.63-28.5-5.27-1.32z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M32.1 36.9l.76-4.04 27.96 6.52a1 1 0 01.76 1.14l-.52 2.98a3.03 3.03 0 01-2.14 2.4c-2.9.84-6.3 1.54-14.11-.05a24.32 24.32 0 01-12.13-6.72 2.55 2.55 0 01-.58-2.23z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M32.07 31.65l28.98 6.76a2 2 0 011.51 2.28l-.51 2.98a4.03 4.03 0 01-2.85 3.19c-1.5.43-3.16.83-5.46.92-2.29.09-5.28-.47-9.24-1.28-5.79-1.18-10.8-5.15-13-7.5-.81-.87-.33-2.6-.13-3.65l.7-3.7zm1.58 2.42l-.57 3.01c-.1.56.03 1.05.33 1.37A23.33 23.33 0 0045 44.88c3.85.78 6.57.99 8.66.91a19.5 19.5 0 004.98-.85c.74-.21 1.3-.84 1.43-1.6l.52-2.99-26.95-6.28z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M62.54 40.69c-1.02 3.53-8.92 5.43-18.4 2.69-9.48-2.75-12.95-8.69-11.92-12.22 1.02-3.53 9.15-5.22 18.64-2.48 9.48 2.75 12.7 8.48 11.68 12z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M59.57 41.35c.78-.48 1.05-.92 1.13-1.2.28-.97.06-2.64-1.53-4.53-1.56-1.86-4.38-3.8-8.84-5.1-4.52-1.3-8.64-1.53-11.67-1.06-1.52.24-2.68.64-3.47 1.1-.8.46-1.06.88-1.13 1.13-.28.94-.03 2.66 1.64 4.63 1.63 1.93 4.52 3.93 8.97 5.22 4.51 1.3 8.56 1.47 11.51.96a9.82 9.82 0 003.39-1.15zm-15.43 2.03c9.48 2.74 17.38.84 18.4-2.7 1.02-3.52-2.2-9.25-11.68-12-9.49-2.74-17.62-1.05-18.64 2.48-1.03 3.53 2.44 9.47 11.92 12.22z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M48.58 5.75l13.89 5.03-6.16 22.77a4.71 4.71 0 01-2.34 3.08c-1.87.94-4.93 1.99-7.78.85-2.39-.95-4.16-3.3-5.19-5.04a4.93 4.93 0 01-.3-4.17l7.88-22.52z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M48.58 5.75L40.7 28.27a4.93 4.93 0 00.3 4.17c1.02 1.73 2.8 4.09 5.18 5.04 2.85 1.14 5.9.09 7.78-.85a4.71 4.71 0 002.34-3.08l6.16-22.77-13.9-5.03zm1.17 2.46L42.52 28.9c-.34.97-.27 1.89.13 2.56.99 1.66 2.48 3.53 4.25 4.24 2.05.82 4.45.1 6.21-.78.6-.3 1.1-.94 1.35-1.87l5.7-21.07-10.41-3.77z\",\n fill: \"#000\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n opacity: \".5\",\n d: \"M50.08 11.71l1.68.71-5.45 17.04a1.23 1.23 0 11-2.33-.8l6.1-16.95z\",\n fill: \"#fff\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M66.31 9.98c-.67 2.34-5.67 2.95-11.15 1.36-5.49-1.59-9.39-4.77-8.7-7.1.67-2.35 5.66-2.95 11.15-1.37 5.48 1.6 9.38 4.77 8.7 7.11z\",\n fill: \"#003B29\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M64.47 9.45v-.06a1.2 1.2 0 00-.14-.36c-.2-.37-.6-.85-1.27-1.4a17.38 17.38 0 00-5.99-2.91 17.38 17.38 0 00-6.61-.74c-.86.1-1.46.3-1.82.5a1.2 1.2 0 00-.35.28V4.83c.02.06.05.18.15.36.2.36.6.85 1.27 1.4a17.38 17.38 0 005.98 2.9c2.56.75 4.91.95 6.62.74.85-.1 1.45-.3 1.82-.5a1.2 1.2 0 00.34-.28zm-9.31 1.89c5.48 1.59 10.48.98 11.15-1.36.68-2.34-3.22-5.52-8.7-7.1-5.49-1.6-10.48-.99-11.16 1.35-.68 2.34 3.22 5.52 8.7 7.1zM36.4 73.4l-.95-.16.94.17v.02a9.72 9.72 0 00-.06.37l-.14 1.11a.96.96 0 11-1.9-.19 26.27 26.27 0 01.21-1.62v-.03l.95.17m-.36 3.8c.53 0 .96.42.97.95.02.97.09 2 .26 3.04a.96.96 0 01-1.9.3 22.92 22.92 0 01-.28-3.31c0-.53.42-.97.95-.97zm.75 6.33a.96.96 0 011.25.53c.18.46.4.9.64 1.3.2.33.56.87 1.05 1.57a.96.96 0 01-1.57 1.1c-.5-.7-.89-1.3-1.12-1.69-.3-.5-.56-1.02-.78-1.56a.96.96 0 01.53-1.25zm3.88 6.36a.96.96 0 011.34.21l2.32 3.16a.96.96 0 01-1.54 1.14l-2.33-3.17a.96.96 0 01.2-1.34zm4.66 6.32a.96.96 0 011.34.2l.86 1.13.23.32.08.1a.96.96 0 11-1.53 1.16l-.08-.1a771.64 771.64 0 01-1.1-1.47.96.96 0 01.2-1.34z\",\n fill: \"#000\"\n})));","export const mapCountryCodeToCurrencyCode = (countryCode) => {\n switch (countryCode.toLowerCase()) {\n // Euro countries\n case 'at':\n case 'ax':\n case 'be':\n case 'cy':\n case 'de':\n case 'es':\n case 'fi':\n case 'fr':\n case 'gr':\n case 'ie':\n case 'it':\n case 'lt':\n case 'lu':\n case 'lv':\n case 'mt':\n case 'nl':\n case 'pt':\n case 'si':\n case 'sk':\n return 'EUR';\n\n // Other selected countries\n case 'dk':\n return 'DKK';\n case 'gb':\n return 'GBP';\n case 'jp':\n return 'JPY';\n case 'no':\n return 'NOK';\n case 'se':\n return 'SEK';\n case 'us':\n return 'USD';\n\n // Default currency is SEK\n default:\n return 'SEK';\n }\n};\n","import React, { useEffect, useMemo, useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport {\n selectAvailableShippingCountries,\n selectShowLocalizationRegionPicker\n} from 'tradera/state/shipping-region/selectors';\nimport { selectGeolocation } from 'tradera/state/member/selectors';\nimport { dismissLocalizationRegionPicker } from 'tradera/state/shipping-region/reducer';\nimport {\n getAvailableShippingCountries,\n onLocalizationShippingRegionSelected\n} from 'tradera/state/shipping-region/actions';\nimport ApplicationErrorBoundary from 'tradera/components/application-error-boundary/application-error-boundary';\nimport { isPrerender } from 'tradera/utils/is-prerender';\nimport { useUserAgent } from 'tradera/hooks/use-user-agent';\nimport { ShippingCountrySelectDropdown } from 'tradera/legacy/static/components/localization/shipping-country-select-dropdown';\nimport LocalizationImage from './localization-region-picker-image.svg?jsx';\nimport useIsMobile from 'tradera/hooks/use-is-mobile';\nimport { mapCountryCodeToCurrencyCode } from 'tradera/localization/map-country-code-to-currency-code';\nimport { Button } from '../atoms/button/button';\nimport { isCrawlerBot } from 'tradera/utils/is-crawler-bot';\nimport GdprSettings from 'tradera/utils/gdpr-settings';\nimport { ScrollableModal } from '../scrollable-modal/scrollable-modal';\nimport { HeaderWithCloseButton } from '../scrollable-modal/header-with-close-button';\n\nexport const LocalizationRegionPicker = () => {\n const showLocalizationRegionPicker =\n useSelector(selectShowLocalizationRegionPicker) &&\n GdprSettings.isFunctionalEnabled();\n const geolocation = useSelector(selectGeolocation);\n const { toLocalizedUrl } = useUrlLocalizer();\n const userAgent = useUserAgent();\n\n const isCrawler = isPrerender(userAgent) || isCrawlerBot(userAgent);\n\n const onCloseModal = () => dispatch(dismissLocalizationRegionPicker());\n\n const shippingCountriesTmp = useSelector(selectAvailableShippingCountries);\n const shippingCountries = useMemo(\n () =>\n shippingCountriesTmp.map(({ countryCodeIso2, countryNameEng }) => ({\n countryCodeIso2,\n name: countryNameEng\n })),\n [shippingCountriesTmp]\n );\n const [shippingCountryCodeIso2, setShippingCountryCodeIso2] = useState(\n geolocation?.isoCode || 'se'\n );\n useEffect(() => {\n setShippingCountryCodeIso2(geolocation?.isoCode || 'se');\n }, [geolocation?.isoCode]);\n const dispatch = useDispatch();\n useEffect(() => {\n dispatch(getAvailableShippingCountries());\n }, [dispatch]);\n\n const isMobile = useIsMobile();\n\n const body = (\n <>\n
    \n \n

    \n We are happy that you found Tradera\n

    \n

    \n Choose the country where you live, to get the best\n experience browsing items on Tradera.\n

    \n
    \n \n setShippingCountryCodeIso2(countryCodeIso2)\n }\n itemsBeforeScrollCount={isMobile ? 3 : 5}\n shippingCountryPlaceholder=\"Search country\"\n englishCountryNames\n style={{\n left: '1.5rem',\n right: '1.5rem',\n width: 'auto'\n }}\n />\n \n );\n\n return showLocalizationRegionPicker && !isCrawler ? (\n \n }\n footer={\n {\n dispatch(\n onLocalizationShippingRegionSelected({\n countryCodeIso2: shippingCountryCodeIso2,\n currencyCode: mapCountryCodeToCurrencyCode(\n shippingCountryCodeIso2\n ),\n toLocalizedUrl\n })\n );\n onCloseModal();\n }}>\n Done\n \n }>\n {body}\n \n \n ) : null;\n};\n","import { useSelector } from 'react-redux';\nimport { isServer } from 'tradera/utils/nextjs';\n\nexport const useUserAgent = () => {\n const request = useSelector((state) => state.request);\n return isServer ? request.userAgent : navigator.userAgent;\n};\n","export const isCrawlerBot = (userAgent) => {\n if (!userAgent) {\n return true;\n }\n\n const userAgentLowerCase = userAgent.toLowerCase();\n\n return (\n userAgentLowerCase.includes('bot') ||\n userAgentLowerCase === 'a10hm/1.0' ||\n userAgentLowerCase.includes('crawler') ||\n userAgentLowerCase.includes('sello') ||\n userAgentLowerCase === 'teracent-feed-processing' ||\n userAgentLowerCase === 'mediapartners-google' ||\n userAgentLowerCase.includes('spider')\n );\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"line\":\"line--P4CWu\",\"active\":\"active--dNw-i\",\"animation\":\"animation--OfEvv\",\"lineAnim\":\"lineAnim--y+gOO\"};","import React from 'react';\nimport classNames from 'classnames';\nimport styles from './loader-line.module.scss';\n\nexport const LoaderLine = ({ isActive }) => (\n \n);\n","import { useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { debounce } from 'packages/debounce';\nimport cookieUtil from 'tradera/utils/cookie';\nimport { useOnMount } from 'tradera/hooks/use-on-mount';\nimport { VIEWPORT_WIDTH } from 'tradera/constants/cookies';\nimport { isServer } from 'tradera/utils/nextjs';\nimport { getBreakpointFromWidth } from 'tradera/utils/breakpoint';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { setHasReportedViewportDiff } from 'tradera/state/status/reducer';\n\nconst setViewportCookie = (viewportWidth) => {\n const expires = new Date();\n expires.setMonth(expires.getMonth() + 12);\n cookieUtil.createCookie(VIEWPORT_WIDTH, viewportWidth, expires);\n};\n\nconst viewportChangeCallback = debounce(() => {\n if (document.visibilityState === 'visible') {\n const viewportWidth = String(isServer ? 0 : window.innerWidth);\n const viewportWidthCookie = cookieUtil.readCookie(VIEWPORT_WIDTH);\n\n const shouldUpdateCookie = viewportWidth !== viewportWidthCookie;\n if (shouldUpdateCookie) {\n setViewportCookie(viewportWidth);\n }\n }\n}, 300);\n\nexport const useViewportWidthCookie = () =>\n useOnMount(() => {\n viewportChangeCallback();\n window.addEventListener('resize', viewportChangeCallback);\n document.addEventListener('visibilitychange', viewportChangeCallback);\n return () => {\n window.removeEventListener('resize', viewportChangeCallback);\n document.removeEventListener(\n 'visibilitychange',\n viewportChangeCallback\n );\n };\n });\n\nexport const useResponsiveDevice = (ssrViewportWidth) => {\n const [responsiveDevice, setResponsiveDevice] = useState({\n // Render with same viewport during hydration as on server\n // Prevents \"Warning: Expected server HTML to contain a matching...\"\n width: ssrViewportWidth\n });\n const dispatch = useDispatch();\n const hasReportedViewportDiff = useSelector(\n (state) => state.status.hasReportedViewportDiff\n );\n\n useOnMount(() => {\n const ssrBreakpoint = getBreakpointFromWidth(ssrViewportWidth);\n const clientBreakpoint = getBreakpointFromWidth(window.innerWidth);\n\n if (ssrBreakpoint !== clientBreakpoint && !hasReportedViewportDiff) {\n GtmService.trackAction(\n 'Viewport breakpoint',\n 'SSR and CSR diff',\n `${ssrBreakpoint} -> ${clientBreakpoint}`\n );\n }\n dispatch(setHasReportedViewportDiff(true));\n // Enables react-responsive to use window.mediaQuery after hydration\n setResponsiveDevice(undefined);\n });\n return responsiveDevice;\n};\n","import React, { useCallback } from 'react';\nimport Sticky from 'react-stickynode';\nimport { selectShowCurrencySelection } from 'tradera/state/multi-currency/selectors';\nimport { HOVER_MENUS } from './hover-menu/constants';\nimport { onWindowLoad } from 'utils/on-ready';\nimport { getGeolocation } from 'tradera/state/member/actions';\nimport uiActions from 'tradera/state/ui/actions';\nimport {\n closeMessagingModal,\n closeNotificationOptinModal,\n closeSearchForm,\n openSearchForm\n} from 'tradera/state/ui/reducer';\nimport TraderaLogo from '@tradera/blueprint/theme/logos/tradera_new.svg?jsx';\nimport TraderaAppLogo from '@tradera/blueprint/theme/logos/tradera-app-logo.svg?jsx';\nimport CartLink from 'tradera/components/site-header/cart-link';\nimport DropdownMenu from 'tradera/components/site-header/dropdown-menu';\nimport SignUpLink from 'tradera/components/site-header/sign-up-link';\nimport ALink from 'tradera/components/alink/alink';\nimport { Search } from 'tradera/legacy/static/components/search/search';\nimport PushNotificationModal from 'tradera/components/push-notification-modal/push-notification-modal';\nimport { LocalizationLink } from './localization-link';\nimport BuyingLink from './buying-link';\nimport { HowTraderaWorks } from './how-tradera-works';\nimport NewListingLink from './new-listing-link';\nimport { ProfileMenuLink } from './profile-menu-link';\nimport { SearchButton } from './search-button';\n\nimport { MessagingModal } from 'tradera/components/messaging/messaging-modal';\nimport WishlistLink from 'tradera/components/site-header/wishlist-link';\nimport OngoingAuctionsLink from 'tradera/components/site-header/ongoing-auctions-link';\nimport SellingLink from 'tradera/components/site-header/selling-link';\nimport { TraderaToastContainer } from 'tradera/components/toasts/tradera-toast-container';\nimport { showSuccessToast } from 'tradera/services/toasts';\nimport { CurrencyLink } from 'tradera/components/site-header/currency-link';\nimport { WishListSideSheet } from 'tradera/apps/tradera/components/wish-list-side-sheet/wish-list-side-sheet';\nimport { LocalizationRegionPicker } from './localization-region-picker';\nimport { LoaderLine } from 'tradera/components/loader/loader-line';\nimport { VerticalSeparator } from 'tradera/components/separator/separator';\nimport { SaveSearchButton } from 'tradera/apps/tradera/components/discover/components/search-results/save-search/save-search-button';\nimport { localStore } from 'tradera/utils/storage';\nimport { STORAGE_KEYS } from 'tradera/constants/storage';\nimport { useAppDispatch, useAppSelector } from 'tradera/state/hooks';\nimport { useIsFeatureEnabled } from 'tradera/hooks/use-is-feature-enabled';\nimport { useIsTablet } from 'tradera/hooks/use-is-tablet';\nimport useIsDesktop from 'tradera/hooks/use-is-desktop';\nimport { useUrlLocalizer } from 'tradera/lang/translate';\nimport useIsMobile from 'tradera/hooks/use-is-mobile';\nimport {\n getCartSummaryParams,\n useGetCartSummaryQuery\n} from 'tradera/state/services/cart-api';\nimport { useCookieUtil } from 'tradera/hooks/use-cookie-util';\nimport { CART_ID } from 'tradera/constants/cookies';\nimport { MODAL_STATE } from 'tradera/constants/ui';\nimport { useViewportWidthCookie } from 'tradera/apps/nextweb/hooks/use-viewport-width';\nimport cn from 'classnames';\nimport { useGrowthBook } from '@growthbook/growthbook-react';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { AppDownloadModal } from 'tradera/apps/tradera/components/app-download-modal/app-download-modal';\n\nexport const SiteHeader = ({ isPageLoading, inSPA }) => {\n useViewportWidthCookie();\n\n const dispatch = useAppDispatch();\n\n const uiSlice = useAppSelector((state) => state.ui);\n const {\n showSearchForm,\n showHeaderSearch,\n messagingModal,\n notificationOptinModal\n } = uiSlice;\n const isLoggedIn = useAppSelector((state) => state.member.isLoggedIn);\n const hasLoggedIn = useAppSelector((state) => state.member.hasLoggedIn);\n const showCurrencySelection = useAppSelector((state) =>\n selectShowCurrencySelection(state)\n );\n const pageName = useAppSelector((state) => state.page.type);\n\n const isMessagingEnabled = useIsFeatureEnabled('messaging');\n\n const isTablet = useIsTablet();\n const isDesktop = useIsDesktop();\n const isMobile = useIsMobile();\n const { toLocalizedUrl } = useUrlLocalizer();\n\n const [isSticky, setIsSticky] = React.useState(false);\n const [activeHoverMenu, setActiveHoverMenu] = React.useState(null);\n\n const cookieUtil = useCookieUtil();\n const cartIdCookieValue = cookieUtil.readCookie(CART_ID);\n\n const { data } = useGetCartSummaryQuery(\n getCartSummaryParams(cartIdCookieValue),\n { skip: !cartIdCookieValue }\n );\n\n const { totalCount: cartItemCount, items: cartItems } = data || {};\n const cartSum = cartItems?.reduce(\n (acc, item) => acc + item.price * item.quantity,\n 0\n );\n\n const showMfaVerifiedMessage = useCallback(() => {\n if (!isLoggedIn) {\n return;\n }\n\n if (\n !document.referrer ||\n !document.referrer.includes(\n '/login/multifactorauthentication/enterverificationcode'\n )\n ) {\n return;\n }\n\n if (!localStore || !localStore.enabledByGdprSettings()) {\n return;\n }\n\n if (\n localStore.hasValueForKey(\n STORAGE_KEYS.HAS_SHOWED_MFA_VERIFICATION_MESSAGE\n )\n ) {\n return;\n }\n\n showSuccessToast('mfa_verify_success');\n localStore.setItem(\n STORAGE_KEYS.HAS_SHOWED_MFA_VERIFICATION_MESSAGE,\n true\n );\n }, [isLoggedIn]);\n\n React.useEffect(() => {\n dispatch(getGeolocation());\n if (isMessagingEnabled && isLoggedIn) {\n dispatch(uiActions.fetchMessagingNotifications());\n }\n showMfaVerifiedMessage();\n // Scroll up one pixel to show fixed header on mobile\n onWindowLoad(() => {\n // Toggle on sticky behavior on window load to force reflow and show sticky header on mobile & Firefox\n setIsSticky(true);\n });\n }, [dispatch, isLoggedIn, isMessagingEnabled, showMfaVerifiedMessage]);\n\n const handleClickSearch = () => {\n if (showSearchForm) {\n dispatch(closeSearchForm());\n } else {\n dispatch(openSearchForm());\n }\n };\n\n const handleMouseOverMenu = (menu) => {\n setActiveHoverMenu(menu);\n };\n\n const handleMouseOutMenu = () => {\n setActiveHoverMenu(null);\n };\n\n // Event handler for menu button:\n // Mobile: link, no menu open\n // Tablet: not a link, menu open\n // Desktop: link, menu open\n const handleMenuClick = (event, menu) => {\n if (\n isMobile &&\n menu !== HOVER_MENUS.LOCALIZATION &&\n menu !== HOVER_MENUS.CURRENCY\n ) {\n return;\n }\n\n // Prevent click for tablet to allow tap to open\n if (isTablet) {\n event.preventDefault();\n }\n // Force focus so touch devices can get a blur event\n event.target.focus();\n\n setActiveHoverMenu((current) => (current === menu ? false : menu));\n };\n\n const closeHoverMenu = () => {\n setActiveHoverMenu(null);\n };\n\n const handleRegisterClick = () => {\n if (!isLoggedIn) {\n GtmService.trackAction('Top navigation', 'Sign up', 'Click');\n const cookieName = 'signup_referral_path';\n const expireDate = new Date();\n const value = window.location.href;\n expireDate.setTime(expireDate.getTime() + 10 * 60 * 1000);\n cookieUtil.createCookie(cookieName, value, expireDate);\n }\n };\n\n const hasCartItems = cartItemCount > 0;\n const stickyEnabledOnPage = !pageName?.includes('MyTradera');\n\n const hideElements = !showHeaderSearch && pageName?.includes('StartPage');\n const transparentHeader = hideElements;\n\n const showAppLogoOnTinyScreen =\n (!isLoggedIn && hasCartItems) || !isLoggedIn;\n\n const showSaveSearch =\n (pageName?.includes('SearchResults') ||\n pageName?.includes('Category')) &&\n !isDesktop &&\n !isTablet;\n\n const growthbook = useGrowthBook();\n let signInButtonExperimentEnabled;\n\n if (!isLoggedIn && growthbook && hasLoggedIn) {\n const featureValue = growthbook.getFeatureValue(\n 'tgl-369-sign-in-primary-if-login-history',\n 'default'\n );\n signInButtonExperimentEnabled = featureValue === 'enabled';\n }\n\n return (\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n {showSaveSearch && (\n \n )}\n \n \n
      \n {!isLoggedIn && (\n
    • \n \n
    • \n )}\n {!isLoggedIn && showCurrencySelection && (\n <>\n
    • \n \n
    • \n
    • \n \n
    • \n \n )}\n \n \n \n {isLoggedIn && (\n \n \n \n )}\n {!hideElements && (\n
    • \n \n
    • \n )}\n
    • \n {isLoggedIn ? (\n \n ) : (\n \n )}\n
    • \n {isLoggedIn && (\n
    • \n \n
    • \n )}\n {isLoggedIn && (\n
    • \n \n
    • \n )}\n\n {hasCartItems && (\n
    • \n \n
    • \n )}\n
        \n \n \n \n {!isLoggedIn && (\n
      • \n \n
      • \n )}\n
      \n
    \n \n \n \n {messagingModal.open === MODAL_STATE.OPEN && (\n dispatch(closeMessagingModal())}\n {...messagingModal}\n />\n )}\n {notificationOptinModal.open === MODAL_STATE.OPEN && (\n \n dispatch(closeNotificationOptinModal())\n }\n modalType={notificationOptinModal.modalType}\n gaLabel={notificationOptinModal.gaLabel}\n title={notificationOptinModal.title}\n description={notificationOptinModal.description}\n tagGroups={notificationOptinModal.tagGroups}\n />\n )}\n \n \n \n \n \n \n \n );\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 3.5c4 0 5 3.2 5 6 0 1.6-.8 3.1-2 4H5c-1.2-.9-2-2.4-2-4 0-2.8 1-6 5-6zm0 1c-2.8 0-4 1.9-4 5 0 1.1.5 2.2 1.2 2.9l.1.1h5.3l.1-.1c.7-.7 1.2-1.6 1.2-2.7v-.2c.1-3.1-1.1-5-3.9-5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 5.5h6l.8 1H4.3zm9.1.1H16v.5c-.2 3.4-1.5 5.3-3.7 5.4h-.2v-1c1.6 0 2.5-1.1 2.9-3.6v-.3h-.2l-.1.1C14 8.3 13.1 9.1 12.2 9H12l.2-1c.5.1 1.1-.5 1.7-1.9l.1-.2zM3.8 11.5h-.2c-.8 0-2.8-.2-3.3-1.7C-.4 8.2.4 6.5 2 6.5 3.5 6.5 4 8 4 9v.1c0 1 .3 2.4-.2 2.4zM3 10.4l.1-.6v-.7c0-.9-.4-1.6-1-1.6-.7 0-1.2.9-.8 1.9.1.4.5.6 1.2.8.1.1.3.2.5.2z\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"8\",\n cy: \"3.5\",\n r: \"1\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.5 1.4C8.4 1.1 8.2 1 8 1s-.4.1-.5.4L6.1 6H1.5c-.2 0-.4.1-.5.3 0 .2 0 .5.2.7l3.7 2.7-1.4 4.7c-.1.2 0 .5.2.6s.4.1.6 0L8 12l3.7 2.9c.2.1.4.1.6 0s.3-.4.2-.6l-1.4-4.7L14.8 7c.2-.2.2-.4.2-.6-.1-.2-.3-.4-.5-.4H9.9zM8 3L6.9 6.6c0 .2-.2.4-.5.4H3l2.8 2c.2.1.2.3.2.6L4.9 13l2.8-2.1c.2-.1.4-.1.6 0l2.8 2.1L10 9.5c0-.2 0-.4.2-.6L13 7H9.6c-.3 0-.5-.2-.5-.4z\",\n fillRule: \"evenodd\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"hover-menu-container-no-positioning\":\"hover-menu-container-no-positioning--nT5WE\",\"hoverMenuContainerNoPositioning\":\"hover-menu-container-no-positioning--nT5WE\",\"hover-menu-container\":\"hover-menu-container--3ugJR\",\"hoverMenuContainer\":\"hover-menu-container--3ugJR\",\"hover-menu-area-content\":\"hover-menu-area-content--XBOMO\",\"hoverMenuAreaContent\":\"hover-menu-area-content--XBOMO\",\"hover-menu-area\":\"hover-menu-area--kuzXK\",\"hoverMenuArea\":\"hover-menu-area--kuzXK\",\"align-right\":\"align-right--yfeVH\",\"alignRight\":\"align-right--yfeVH\",\"align-sm25-lg50\":\"align-sm25-lg50--x+pPO\",\"alignSm25Lg50\":\"align-sm25-lg50--x+pPO\",\"align-sm43-lg50\":\"align-sm43-lg50--weRKL\",\"alignSm43Lg50\":\"align-sm43-lg50--weRKL\"};","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M1.5 8c0-3.6 2.9-6.5 6.5-6.5s6.5 2.9 6.5 6.5-2.9 6.5-6.5 6.5S1.5 11.6 1.5 8zM8 .5C3.9.5.5 3.9.5 8s3.4 7.5 7.5 7.5 7.5-3.4 7.5-7.5S12.1.5 8 .5zm.6 11.2c0 .3-.2.5-.6.5s-.5-.2-.6-.5V6.6c0-.3.2-.5.6-.5.3 0 .5.2.6.5zm.1-7.2c0 .4-.3.7-.7.7s-.7-.3-.7-.7.3-.7.7-.7.7.3.7.7z\",\n fillRule: \"evenodd\"\n})));","import ENDPOINTS from 'tradera/constants/endpoints';\nimport qs from 'qs';\n\nconst specialSearchTerms = {\n stammisglaset: '/campaign/stammisglaset'\n};\n\n/**\n *\n * @param {string} searchTerm search term\n * @param {object} queryParams query paramters of the current page\n * @param {int} currentCategoryId id of the current selected category\n * @param {array} allCategories array with all the categories\n */\nexport const getNewSearchUrl = (\n searchTerm,\n queryParams,\n currentCategoryId,\n allCategories\n) => {\n // Search with search term\n if (searchTerm) {\n // ----------------------------------\n // Special case redirects\n const specialTermUrl = specialSearchTerms[searchTerm.toLowerCase()];\n if (specialTermUrl) {\n return specialTermUrl;\n }\n\n // Filter out params not to pass on in query reformulation\n const { q, categoryId, paging, spage, ...filteredQueryParams } =\n queryParams;\n\n // Query reformulation = First \"Nike\" and then \"Nike air\" or the other way around\n const isQueryReformulation =\n searchTerm.includes(q) || (q && q.includes(searchTerm));\n\n return (\n ENDPOINTS.SEARCH +\n qs.stringify(\n {\n // Keep\n ...(isQueryReformulation ? filteredQueryParams : {}),\n q: searchTerm,\n categoryId: currentCategoryId\n ? currentCategoryId\n : undefined\n },\n {\n addQueryPrefix: true\n }\n )\n );\n }\n\n if (currentCategoryId > 0) {\n // Search without search term, just category\n const currentCategory = allCategories.find(\n (category) => category.id === currentCategoryId\n );\n\n if (currentCategory) {\n return currentCategory.href;\n }\n return;\n }\n // Fall back to category page for empty search\n return '/kategorier';\n};\n\n/**\n *\n * @param {function} t translator function\n * @param {array} allCategories all categories\n * @param {array} categoryPath path to the current category. it's in the reverse order\n * @param {int} currentCategoryId id of the current category\n */\nexport const getCategoryDropdownConfig = (\n t,\n allCategories,\n categoryPath,\n currentCategoryId\n) => {\n const allCategoriesOption = {\n id: 0,\n title: t('searchSelect_allCategories'),\n shortName: t('searchSelect_allCategoriesShortName')\n };\n\n const optionDivider = {\n id: -1,\n title: '——————————',\n disabled: true\n };\n\n /**\n * Strip \"all categories\" (may be multiple) from categorypath\n * Add rest of categorypath\n * Add \"all categories\"\n * Add all level1 categories\n */\n const optionsList = [\n ...categoryPath.filter((category) => category.id !== 0),\n allCategoriesOption,\n optionDivider,\n ...allCategories\n ];\n\n /**\n * Get selected category from list, fallback to \"all categories\"\n */\n const selectedOption =\n optionsList.find((category) => category.id === currentCategoryId) ||\n allCategoriesOption;\n\n return {\n selectedOption,\n optionsList\n };\n};\n\nexport const getNextIndex = (incrementBy, currentIndex, totalElements) => {\n if (currentIndex === null) {\n // eslint-disable-next-line better-mutation/no-mutation\n currentIndex = incrementBy > 0 ? -1 : 0;\n }\n\n const newIndex = currentIndex + incrementBy;\n if (newIndex < 0) {\n return totalElements - 1;\n }\n if (newIndex >= totalElements) {\n return 0;\n }\n return newIndex;\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"category-color\":\"category-color--MYaZ0\",\"categoryColor\":\"category-color--MYaZ0\",\"category-label\":\"category-label--v6WMF\",\"categoryLabel\":\"category-label--v6WMF\",\"category-name\":\"category-name--ZQfH4\",\"categoryName\":\"category-name--ZQfH4\",\"category-select\":\"category-select--ld9GU\",\"categorySelect\":\"category-select--ld9GU\",\"select-arrow\":\"select-arrow--EbWoH\",\"selectArrow\":\"select-arrow--EbWoH\",\"selected-category-label\":\"selected-category-label--8yeSc\",\"selectedCategoryLabel\":\"selected-category-label--8yeSc\",\"hide-real-select\":\"hide-real-select--bXl6W\",\"hideRealSelect\":\"hide-real-select--bXl6W\"};","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classNames from 'classnames';\nimport DropdownIcon from '@tradera/blueprint/theme/icons2/dropdown.svg?jsx';\nimport styles from './search-category.module.scss';\nimport { useIsMounted } from 'tradera/hooks/use-is-mounted';\nimport { isServer } from 'tradera/utils/nextjs';\n\nconst SearchCategory = ({\n handleCategoryChange,\n selectOptions,\n selectedCategoryId,\n chosenCategory,\n categorySelectRef\n}) => {\n const isMounted = useIsMounted();\n const showSsrCategorySelect = Boolean(!isServer && isMounted);\n\n if (!selectOptions) {\n return null;\n }\n\n const isCategorySelected = selectedCategoryId !== 0;\n\n return (\n \n \n \n {chosenCategory.shortName\n ? chosenCategory.shortName\n : chosenCategory.title}\n \n \n \n \n \n \n {selectOptions.map((option, index) => {\n return (\n option && (\n \n {option.title}\n \n )\n );\n })}\n \n {!showSsrCategorySelect && (\n \n \n \n )}\n \n );\n};\n\nSearchCategory.propTypes = {\n handleCategoryChange: PropTypes.func,\n selectOptions: PropTypes.array,\n selectedCategoryId: PropTypes.number,\n chosenCategory: PropTypes.object\n};\n\nexport default SearchCategory;\n","import React, { useState, useEffect, useCallback } from 'react';\nimport PropTypes from 'prop-types';\nimport { connect, useDispatch } from 'react-redux';\n\nimport PAGE_TYPES from 'tradera/constants/page-types';\nimport { setCurrentCategoryId as setCurrentCategoryIdAction } from 'tradera/state/discover/reducer';\nimport { debounce } from 'packages/debounce';\nimport { useTranslator, useUrlLocalizer } from 'tradera/lang/translate';\nimport {\n trackSearch,\n trackSearchCategoryChanges,\n trackResetButton\n} from './helpers/search.analytics';\nimport {\n getNewSearchUrl,\n getCategoryDropdownConfig,\n getNextIndex\n} from './helpers/helper';\n\nimport SearchCategory from 'tradera/legacy/static/components/search-category/search-category';\nimport SearchInput from './components/search-input';\nimport SearchSuggestion from './components/search-suggestion';\nimport { removeRecentSearches } from 'tradera/state/personalisation/actions';\nimport { useNavigation } from 'tradera/hooks/use-navigation';\nimport { isNextJs } from 'tradera/utils/nextjs';\nimport { useOnHydration } from 'tradera/hooks/use-on-mount';\nimport { useGetSuggestions } from 'tradera/legacy/static/components/search/helpers/suggestions-api';\n\nexport const KEYCODE = {\n ENTER: 13,\n ESC: 27,\n UP: 38,\n DOWN: 40\n};\n\nexport const MIN_CHARS_FOR_SUGGESTIONS = 2;\n\nconst PlainSearch = (props) => {\n const {\n inSPA,\n topLevelCategories = [],\n categoryPath = [],\n inputClassName = '',\n placeholderText = null,\n discoverCurrentCategoryId = 0,\n discoverSearchTerm = '',\n queryParams,\n recentSearches,\n focusOverride\n } = props;\n\n const dispatch = useDispatch();\n const navigation = useNavigation();\n const { t } = useTranslator();\n const { toLocalizedUrl } = useUrlLocalizer();\n const searchSuggestionsElementRef = React.createRef();\n const searchInputRef = React.createRef();\n const categorySelectRef = React.createRef();\n\n const [currentCategoryId, setCurrentCategoryId] = useState(\n discoverCurrentCategoryId\n );\n const [isSearchInputFocused, setIsSearchInputFocused] = useState(false);\n const [searchTerm, setSearchTerm] = useState(discoverSearchTerm || '');\n const [suggestions, setSuggestions] = useState([]);\n const [selectedSuggestionIndex, setSelectedSuggestionIndex] =\n useState(null);\n\n const getSuggestions = useGetSuggestions();\n\n useOnHydration(() => {\n if (searchInputRef.current?.value) {\n loadSearchSuggestions(searchInputRef.current?.value);\n }\n });\n\n useEffect(() => {\n setCurrentCategoryId(discoverCurrentCategoryId);\n }, [discoverCurrentCategoryId]);\n\n useEffect(() => {\n setSearchTerm(discoverSearchTerm);\n }, [discoverSearchTerm]);\n\n // Trigger an update to get the suggestions only when recentSearches changes\n useEffect(() => {\n (async () => {\n const suggestions = await getSuggestionsWrapper(searchTerm);\n setSuggestions(suggestions);\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [recentSearches]);\n\n const loadSuggestionsDebounce = debounce(async (searchTerm, callback) => {\n const suggestions = await getSuggestionsWrapper(searchTerm);\n if (suggestions) {\n callback(suggestions);\n }\n }, 200);\n\n /**\n * this function wraps the getSuggestions and makes sure the parameters to the getSuggestions are consistent\n * @param {string} searchTerm\n */\n const getSuggestionsWrapper = useCallback(\n async (searchTerm) => {\n const enableSuggestionsFromBackend =\n searchTerm.length >= MIN_CHARS_FOR_SUGGESTIONS;\n\n const suggestions = await getSuggestions({\n searchTerm,\n limitPrevious: enableSuggestionsFromBackend ? 3 : 7,\n enablePrevious: true,\n enableSuggestions: enableSuggestionsFromBackend,\n recentSearches\n });\n return suggestions;\n },\n [recentSearches, getSuggestions]\n );\n\n const handleUpDownArrowKeys = (keyCode) => {\n let incrementBy = null;\n if (keyCode === KEYCODE.DOWN) {\n incrementBy = 1;\n } else if (keyCode === KEYCODE.UP) {\n incrementBy = -1;\n }\n if (incrementBy !== null) {\n const newIndex = getNextIndex(\n incrementBy,\n selectedSuggestionIndex,\n suggestions.length\n );\n setSelectedSuggestionIndex(newIndex);\n }\n };\n\n const handleUserKeyUp = (evt) => {\n switch (evt.which) {\n case KEYCODE.ESC:\n evt.target.blur();\n return;\n\n case KEYCODE.ENTER:\n // eslint-disable-next-line no-case-declarations\n const suggestions =\n searchSuggestionsElementRef.current?.querySelectorAll(\n '[data-suggestion]'\n );\n\n if (suggestions && suggestions[selectedSuggestionIndex]) {\n evt.preventDefault();\n suggestions[selectedSuggestionIndex].click();\n }\n return;\n\n case KEYCODE.DOWN:\n case KEYCODE.UP:\n handleUpDownArrowKeys(evt.which);\n return;\n }\n };\n\n const loadSearchSuggestions = async (newSearchTerm) => {\n setSelectedSuggestionIndex(null);\n setSearchTerm(newSearchTerm);\n\n // Shows/hides search suggestions based on focused state during SSR hydration\n const searchIsFocused =\n searchInputRef.current === document.activeElement;\n setIsSearchInputFocused(searchIsFocused);\n\n if (typeof newSearchTerm !== 'string') return null;\n\n if (newSearchTerm.length >= MIN_CHARS_FOR_SUGGESTIONS) {\n loadSuggestionsDebounce(newSearchTerm, (suggestions) => {\n setSuggestions(suggestions);\n });\n return;\n }\n const suggestions = await getSuggestionsWrapper(newSearchTerm);\n\n setSuggestions(suggestions);\n };\n\n const handleUserInputChange = (evt) =>\n loadSearchSuggestions(evt.target.value);\n\n const handleBlur = (evt) => {\n const suggestionFocasable =\n evt?.relatedTarget?.dataset?.suggestionSectionButton ||\n evt?.relatedTarget?.dataset?.suggestionSectionButtonRemove;\n\n if (!suggestionFocasable) {\n setIsSearchInputFocused(false);\n }\n };\n\n const handleFocus = () => {\n loadSearchSuggestions(searchTerm);\n };\n\n const handlePreviousSearchRemoved = async (text) => {\n dispatch(removeRecentSearches(text));\n };\n\n const handleCategoryChange = (event) => {\n const currentCategoryId = parseInt(event.target.value, 10);\n setCurrentCategoryId(currentCategoryId);\n dispatch(setCurrentCategoryIdAction(currentCategoryId));\n trackSearchCategoryChanges(event);\n };\n\n const changeWindowLocation = (newQuery) => {\n // Trim search term to avoid empty searches\n const trimmedSearchTerm = newQuery.trim();\n const newSearchUrl = getNewSearchUrl(\n trimmedSearchTerm,\n queryParams,\n currentCategoryId,\n [...topLevelCategories, ...categoryPath]\n );\n\n // Search with search term\n if (trimmedSearchTerm) {\n trackSearch(trimmedSearchTerm);\n }\n\n if (!isNextJs) {\n window.location.href = toLocalizedUrl(newSearchUrl);\n } else {\n searchInputRef.current.blur();\n navigation.push(toLocalizedUrl(newSearchUrl));\n }\n\n setIsSearchInputFocused(false);\n };\n\n const handleFormSubmit = (event) => {\n event.preventDefault();\n changeWindowLocation(searchTerm);\n };\n\n const clearSearchInputAndGoToBrowse = (event) => {\n event.preventDefault();\n trackResetButton();\n setSearchTerm('');\n changeWindowLocation('');\n };\n\n const handleSuggestionsChangingSearchTerm = (newSearchTerm) => {\n // fixes case when user is on the same url as the current selected serach term. To reproduce:\n // 1. search tröja\n // 2. change the search term in the search box to \"tröj\" without hitting enter\n // 3. now you get previous searches \"tröja\", click on it\n // 4. without next line nothing will happen\n if (newSearchTerm !== searchTerm) {\n setSearchTerm(newSearchTerm);\n }\n setIsSearchInputFocused(false);\n searchInputRef.current.blur();\n };\n\n const {\n selectedOption: selectedCategory,\n optionsList: categorySelectOptions\n } = getCategoryDropdownConfig(\n t,\n topLevelCategories,\n categoryPath,\n currentCategoryId\n );\n\n return (\n \n }\n inputClassName={inputClassName}\n placeholderText={placeholderText}\n onBlur={handleBlur}\n onClearSearchInput={clearSearchInputAndGoToBrowse}\n onFocus={handleFocus}\n onFormSubmit={handleFormSubmit}\n onUserInputChange={handleUserInputChange}\n onUserKeyUp={handleUserKeyUp}\n searchInputRef={searchInputRef}\n searchTerm={searchTerm}\n selectedCategory={selectedCategory}\n focusOverride={focusOverride}\n suggestionsElement={\n \n }\n />\n );\n};\n\nconst mapStateToProps = (state) => {\n const pageType = state.page.type;\n let categoryPath = undefined;\n let discoverCurrentCategoryId = 0;\n let discoverSearchTerm = '';\n\n // Reflect search state on search & category pages\n if (\n [\n PAGE_TYPES.SEARCH_RESULT_PAGE,\n PAGE_TYPES.CATEGORY_RESULT_PAGE\n ].includes(pageType)\n ) {\n categoryPath = state.discover.categoryPath.map(\n ({ name, ...category }) => ({\n ...category,\n title: name\n })\n );\n discoverCurrentCategoryId = state.discover.currentCategoryId;\n discoverSearchTerm = state.discover.queryParams?.q || '';\n }\n\n return {\n topLevelCategories: state.categories.topLevelCategories,\n categoryPath,\n discoverCurrentCategoryId,\n queryParams: state.discover.queryParams,\n discoverSearchTerm,\n recentSearches: state.personalisation.recentSearches\n };\n};\n\nPlainSearch.propTypes = {\n inSPA: PropTypes.bool.isRequired,\n categoryPath: PropTypes.array,\n placeholderText: PropTypes.string,\n discoverCurrentCategoryId: PropTypes.number,\n queryParams: PropTypes.object,\n recentSearches: PropTypes.array,\n focusOverride: PropTypes.oneOfType([PropTypes.bool, PropTypes.func]),\n inputClassName: PropTypes.string\n};\n\nexport const Search = connect(mapStateToProps)(PlainSearch);\n","import Analytics from 'packages/analytics';\n\nexport const trackSearchCategoryChanges = (evt) => {\n const selectBox = evt.target;\n const selectedOption =\n selectBox &&\n selectBox.selectedOptions &&\n selectBox.selectedOptions.length > 0 &&\n selectBox.selectedOptions[0];\n if (!selectedOption) {\n return;\n }\n Analytics.trackEvent({\n category: 'User search',\n action: 'Top search box Category dropdown',\n label: selectedOption.text\n });\n};\n\nexport const trackSearch = (label) => {\n Analytics.trackEvent({\n category: 'User search',\n action: 'Search Query',\n label: label\n });\n};\n\nexport const trackResetButton = () => {\n Analytics.trackEvent({\n category: 'User search',\n action: ' Top search box Reset'\n });\n};\n","import React from 'react';\n\ntype FlagProps = {\n countryCodeIso2?: string;\n} & React.ImgHTMLAttributes;\n\nconst Flag = ({ countryCodeIso2, ...otherProps }: FlagProps) => {\n return countryCodeIso2 ? (\n \n ) : null;\n};\n\nexport default Flag;\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n fill: \"none\",\n viewBox: \"0 0 28 28\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n clipRule: \"evenodd\",\n fill: \"#000\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 2.93H8A5.07 5.07 0 002.93 8v12c0 2.8 2.27 5.07 5.07 5.07h12c2.8 0 5.07-2.27 5.07-5.07V8c0-2.8-2.27-5.07-5.07-5.07zM8 1.33A6.67 6.67 0 001.33 8v12A6.67 6.67 0 008 26.67h12A6.67 6.67 0 0026.67 20V8A6.67 6.67 0 0020 1.33z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 7.47a.8.8 0 00-1.6 0v5.93H7.47a.8.8 0 100 1.6h5.93v5.69a.8.8 0 001.6 0v-5.7h5.7a.8.8 0 000-1.6H15z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M14.4 3.6l-1.8-1.8-7.4 7.1-.4 2.4 2.3-.5zM13.1 1l1.8 1.8c.4.4.4 1 0 1.4l-7.2 7.2c-.1.1-.3.2-.5.3l-2.3.5c-.7.1-1.3-.5-1.2-1.2l.5-2.3c0-.2.1-.4.3-.5L11.8 1c.3-.4 1.1-.4 1.3 0zM2.3 4.3c-.3 0-.5.2-.5.5v9c0 .3.2.5.5.5h9c.3 0 .5-.2.5-.5v-3.3c0-.3.2-.5.5-.5s.5.2.5.5v3.3c0 .8-.7 1.5-1.5 1.5h-9c-.8 0-1.5-.7-1.5-1.5v-9c0-.8.7-1.5 1.5-1.5h2.5c.3 0 .5.2.5.5s-.2.5-.5.5z\",\n fillRule: \"evenodd\"\n})));","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport styles from './hover-menu.module.scss';\nimport classNames from 'classnames';\n\nclass HoverMenu extends Component {\n state = {\n show: false,\n hoverContainer: false\n };\n\n toggleShow = (show) => {\n window.clearTimeout(this.toggleShowTimeoutId);\n this.toggleShowTimeoutId = window.setTimeout(() => {\n if (this.state.show !== show) {\n this.setState({ show: show });\n }\n }, 10);\n };\n\n componentDidUpdate(prevProps) {\n if (this.props.showMenu !== prevProps.showMenu) {\n this.toggleShow(this.props.showMenu);\n }\n }\n\n render() {\n const {\n children,\n className = '',\n noContainerPositioningStyling\n } = this.props;\n\n return (\n this.state.show && (\n {})}>\n \n \n )\n );\n }\n}\n\nHoverMenu.propTypes = {\n showMenu: PropTypes.bool,\n className: PropTypes.string,\n noContainerPositioningStyling: PropTypes.bool\n};\n\nexport default HoverMenu;\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1 7.1c0 .1.1.3.1.3l7.4 7.4c.1.1.3.2.4.2.1 0 .3-.1.3-.1l5.6-5.6c.2-.3.2-.6.1-.8L7.5 1.1c-.1 0-.2-.1-.4-.1H1.5c-.2 0-.5.2-.5.5v5.6zM2 2v4.9l6.9 6.9 4.9-4.9L6.9 2H2zm1.6 1.5c.8-.8 2-.8 2.8 0s.8 2 0 2.8-2 .8-2.8 0c-.8-.7-.8-2 0-2.8zm2.1.7c-.4-.4-1-.4-1.4 0-.4.4-.4 1 0 1.4s1 .4 1.4 0c.3-.4.3-1 0-1.4z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 142 19\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M30.6 0c5.2 0 7.8 3 7.8 7 0 2.1-.9 3.8-2.5 5 1.3.2 2.3 1.1 2.3 2.4V19h-4.4v-4.6c0-.6-.5-1-1.3-1H25.3V19h-4.4V0zm81.8 0c5.2 0 7.8 3 7.8 7 0 2.1-.9 3.8-2.5 5 1.3.2 2.3 1.1 2.3 2.4V19h-4.4v-4.6c0-.6-.5-1-1.3-1H107.1V19h-4.4V0zM18.9 0v4.3h-7.2V19H7.2V4.3H0V0zm80.6 0v4.3H87.8v3h9.8v4h-9.8v3.5h11.7V19H83.4V0zM70.2 0c7.1 0 10.7 3.1 10.7 9.4 0 5.9-3.8 9.6-10.8 9.6h-7.6V0zm65.7 0l6.1 19h-4.5l-1.4-4.3h-8.6l-1.4 4.3h-4.5l6.1-19zM54.4 0l6.1 19H56l-1.4-4.3H46L44.6 19h-4.5l6.1-19zm15.7 4.3h-3.2v10.5h3.2c4.4 0 6.4-1.6 6.4-5.3 0-3.6-2-5.2-6.4-5.2zm62.7 0h-1.9l-2.1 6.5h6zm-81.6 0h-1.9l-2.1 6.5h6zm-20.6 0h-5.3v5.4h5.3c2.3 0 3.3-1 3.3-2.7 0-2-1.1-2.7-3.3-2.7zm81.8 0h-5.3v5.4h5.3c2.3 0 3.3-1 3.3-2.7 0-2-1.1-2.7-3.3-2.7zm28-4.3l.4 1 .4-1h.7v2.2h-.5V.5l-.4 1.1h-.4l-.5-1.2v1.7h-.4V0zm-1 0v.4h-.7v1.7h-.5V.4h-.7V0z\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"wrapper\":\"wrapper--nAEc0\",\"reset\":\"reset--XXq4X\"};","import classNames from 'classnames';\nimport React, { forwardRef } from 'react';\nimport type { PolyRefFunction, OnlyAs } from 'react-polymorphed';\n\nimport css from './text.module.scss';\n\nconst polyRef = forwardRef as PolyRefFunction;\n\nexport type FontWeight = 'light' | 'medium' | 'heavy';\n\n// This can probably be used by more components\nexport type FontColor =\n | 'branded'\n | 'danger'\n | 'dark'\n | 'function'\n | 'info'\n | 'light'\n | 'primary'\n | 'secondary'\n | 'success'\n | 'warning'\n | 'white'\n | 'gray-100'\n | 'gray-200'\n | 'gray-300'\n | 'gray-400'\n | 'gray-500'\n | 'gray-600'\n | 'gray-700'\n | 'gray-800'\n | 'gray-900';\n\nexport type FontFamily = 'inter' | 'hansen';\n\nexport type TextProps = {\n /**\n * Default is \"paris\"\n * - london: 16px\n * - amsterdam: small screen: 14px, large screen: 16\n * - paris: small screen: 14px, large screen: 14px\n * - dublin: small screen: 12px, large screen: 14px\n * - oslo: small screen: 12px, large screen: 12px;\n */\n size?: 'london' | 'amsterdam' | 'paris' | 'dublin' | 'oslo';\n className?: string;\n align?: 'left' | 'center' | 'right';\n color?: FontColor;\n children?: React.ReactNode;\n fontWeight?: FontWeight;\n fontStyle?: 'italic';\n font?: FontFamily;\n nowrap?: boolean;\n};\n\n/**\n * Text component\n *\n * Defaults to paragraph, but can be used as \"span\", \"strong\", \"code\" or \"em\" also with `as=\"span\"` etc.\n *\n * @example\n * Some text\n *\n * @example\n * Some text\n *\n * @example\n * Some text\n */\nexport const Text = polyRef<\n 'p',\n TextProps,\n OnlyAs<'p' | 'span' | 'strong' | 'em' | 'code' | 'b' | 'label'>\n>(\n (\n {\n as: Component = 'p',\n size = 'paris',\n children,\n align,\n className,\n color,\n fontWeight,\n fontStyle,\n font,\n nowrap,\n ...props\n },\n ref\n ) => {\n return (\n \n {children}\n \n );\n }\n);\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 1c.1 0 .3.1.4.2l2.5 3c.1.1.1.2.1.3v10c0 .1-.1.3-.1.4-.1.1-.2.1-.4.1h-13c-.3 0-.5-.2-.5-.5v-10c0-.1 0-.2.1-.3l2.5-3c.1-.1.3-.2.4-.2h8zm2 4H9v2H7V5H2v9h12V5zM7 2H4.2L2.6 4H7V2zm4.8 0H9v2h4.4l-1.6-2z\",\n fill: \"#282828\"\n})));","// extracted by mini-css-extract-plugin\nexport default {\"save-search-modal-close\":\"save-search-modal-close--xtqbp\",\"saveSearchModalClose\":\"save-search-modal-close--xtqbp\",\"save-search-modal-toggle-input\":\"save-search-modal-toggle-input--em4sB\",\"saveSearchModalToggleInput\":\"save-search-modal-toggle-input--em4sB\",\"save-search-image\":\"save-search-image--YV5Fv\",\"saveSearchImage\":\"save-search-image--YV5Fv\"};","import React, { useState } from 'react';\nimport { useDispatch } from 'react-redux';\nimport dayjs from 'dayjs';\nimport { ScrollableModal } from 'tradera/components/scrollable-modal/scrollable-modal';\nimport { Trans, useTranslator } from 'tradera/lang/translate';\nimport { closeModal } from 'tradera/state/ui/reducer';\nimport CloseIcon from '@tradera/blueprint/theme/icons2/close.svg?jsx';\nimport BookmarkIcon from '@tradera/blueprint/theme/icons2/bookmark.svg?jsx';\nimport SaveSearchImage from './save-search.png';\nimport { SAVE_SEARCH_MODAL_DISMISSED } from 'tradera/constants/cookies';\nimport cookieUtil from 'tradera/utils/cookie';\nimport { SaveSearchButton } from './save-search/save-search-button';\nimport * as searchGtm from 'tradera/apps/tradera/components/discover/helpers/search-gtm';\n\nimport styles from './save-search-modal.module.scss';\n\nconst saveModalDismissed = () => {\n const count =\n parseInt(cookieUtil.readCookie(SAVE_SEARCH_MODAL_DISMISSED)) || 0;\n const expiresSixMonths = dayjs().add(6, 'months').toDate();\n cookieUtil.createCookie(\n SAVE_SEARCH_MODAL_DISMISSED,\n count + 1,\n expiresSixMonths\n );\n};\n\nexport const SAVE_SEARCH_MODAL_ID = 'saveSearchModalId';\n\nexport const SaveSearchModal = ({ queryParams = {} }) => {\n const { t } = useTranslator();\n const dispatch = useDispatch();\n\n const [emailToggleEnabled, setEmailToggleEnabled] = useState(true);\n\n const { q } = queryParams;\n\n const handleCloseModal = () => {\n searchGtm.trackAction(searchGtm.GA_EVENT_SAVE_SEARCH_MODAL, 'Dismiss');\n saveModalDismissed();\n dispatch(closeModal());\n };\n\n const handleSaveClick = () => {\n dispatch(closeModal());\n };\n\n return (\n \n \n \n }>\n
    \n \n \n \n \n

    \n {t('searchResults_saveSearchModal_headline')}{' '}\n

    \n

    \n }}\n values={{ searchName: q }}\n />\n \n

    \n
    \n
    \n \n
    \n
    \n
    \n \n );\n};\n","export default \"//static.tradera.net/touchweb/static/output/images/save-search.57e36711.png\";","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M4.5 2c-.3 0-.5.2-.5.5v11c0 .3.2.5.5.5h7c.3 0 .5-.2.5-.5V7H9.5C8.7 7 8 6.3 8 5.5V2zm4.5.8L11.5 6h-2c-.3 0-.5-.2-.5-.5zm-6-.3C3 1.7 3.7 1 4.5 1h4.1c.2 0 .3.1.4.2l3.9 5c.1.1.1.2.1.3v7c0 .8-.7 1.5-1.5 1.5h-7c-.8 0-1.5-.7-1.5-1.5z\",\n fillRule: \"evenodd\"\n})));","import { useRef } from 'react';\nimport { isDev } from 'tradera/legacy/static/utils/environment';\nimport { GrowthBook, configureCache } from '@growthbook/growthbook-react';\nimport { GtmService } from 'tradera/services/google-tagmanager-service';\nimport { useOnMount } from './use-on-mount';\nimport { type InitData } from 'tradera/state/init-data/types';\n\nconst getGrowthBookConfig = (initData: InitData) => ({\n apiHost: 'https://growthbook-proxy.tradera.cloud',\n clientKey: initData.growthBookClientKey,\n enableDevMode: isDev()\n});\n\nexport const useTWGrowthBook = (initData: InitData) => {\n const { featureSwitches, memberId } = initData;\n\n const growthBookRef = useRef> | null>(\n null\n );\n\n const growthBookConfig = getGrowthBookConfig(initData);\n\n // Force enable GrowthBook feature with query param ?force-gb\n const urlSearchParams = new URLSearchParams(window.location.search);\n const params = Object.fromEntries(urlSearchParams.entries());\n const forceEnable = params.hasOwnProperty('force-gb');\n\n const isGrowthBookEnabled = featureSwitches?.['growth-book'];\n\n // https://docs.growthbook.io/guide/GA4-google-analytics#using-gas-client-id\n const gaId = isGrowthBookEnabled\n ? document?.cookie?.match(/_ga=(.+?);/)\n : null;\n\n let clientId: string | null = null;\n\n if (gaId !== null && gaId.length > 1) {\n const idParts = gaId[1].split('.');\n if (idParts.length >= 2) {\n clientId = idParts.slice(-2).join('.');\n }\n }\n\n // Conditionally create a GrowthBook instance\n if (isGrowthBookEnabled && growthBookRef.current === null) {\n growthBookRef.current = new GrowthBook({\n ...growthBookConfig,\n trackingCallback: (experiment, result) => {\n GtmService.trackGtmEvent('experiment_viewed', {\n event_category: 'experiment',\n experiment_id: experiment.key,\n variation_id: result.variationId\n });\n }\n });\n growthBookRef.current?.setAttributes({\n clientId: clientId ?? null,\n memberId: memberId ?? null,\n loggedIn: !!memberId,\n forceEnable\n });\n configureCache({\n backgroundSync: false\n });\n }\n\n //Setup Growthbook\n useOnMount(() => {\n // Load features from the GrowthBook API\n if (isGrowthBookEnabled) {\n growthBookRef.current?.loadFeatures({\n timeout: 2000\n });\n }\n });\n\n return isGrowthBookEnabled ? growthBookRef.current : null;\n};\n","import { GrowthBookProvider } from '@growthbook/growthbook-react';\nimport { useTWGrowthBook } from 'tradera/hooks/use-tw-growth-book';\nimport type { InitData } from 'tradera/state/init-data/types';\n\ntype WithGrowthBookProps = {\n initData: InitData;\n children: React.ReactNode;\n};\n\nexport const WithGrowthBook = ({ initData, children }: WithGrowthBookProps) => {\n const growthbook = useTWGrowthBook(initData);\n return growthbook ? (\n \n {children}\n \n ) : (\n children\n );\n};\n","import React from 'react';\nimport { useMediaQuery } from 'react-responsive';\n\nimport { BREAKPOINT_SIZES, BREAKPOINTS } from 'tradera/constants/breakpoints';\n\ntype BreakpointProps = {\n /**\n * LG and above\n */\n desktop?: boolean;\n /**\n * MD\n */\n tablet?: boolean;\n /**\n * SM and below\n */\n mobile?: boolean;\n /**\n * Exact breakpoint match\n */\n is?: keyof typeof BREAKPOINTS;\n /**\n * Up to (inclusive) breakpoint match\n */\n upTo?: keyof typeof BREAKPOINTS;\n /**\n * Down to (inclusive) breakpoint match\n */\n downTo?: keyof typeof BREAKPOINTS;\n children: React.ReactNode;\n};\n\ntype MediaQuery = {\n minWidth?: number;\n maxWidth?: number;\n};\n\n/**\n * Conditionally render children depending on matching breakpoint\n *\n * \"is\" prop has precedence over \"upTo\" and \"downTo\", which can be used together to define a range\n */\nexport const Breakpoint = ({\n desktop,\n tablet,\n mobile,\n is: isProp,\n upTo: upToProp,\n downTo: downToProp,\n children\n}: BreakpointProps) => {\n const mediaQuery: MediaQuery = {};\n let is = isProp;\n let upTo = upToProp;\n let downTo = downToProp;\n if (desktop || tablet || mobile) {\n if (desktop) downTo = BREAKPOINTS.LG;\n else if (tablet) is = BREAKPOINTS.MD;\n else if (mobile) upTo = BREAKPOINTS.SM;\n }\n if (is) {\n mediaQuery.minWidth = BREAKPOINT_SIZES[is].min;\n mediaQuery.maxWidth = BREAKPOINT_SIZES[is].max;\n } else {\n if (upTo) {\n mediaQuery.maxWidth = BREAKPOINT_SIZES[upTo].max;\n } else if (downTo) {\n mediaQuery.minWidth = BREAKPOINT_SIZES[downTo].min;\n }\n }\n const isActive = useMediaQuery(mediaQuery);\n return isActive ? <>{children} : null;\n};\n\nexport { BREAKPOINTS };\n","import { toLocalizedUrl } from 'tradera/utils/url';\n\n/**\n * Hide location.reload to be able to stub it with sinon\n * see https://developer.mozilla.org/en-US/docs/Web/API/Location/reload\n */\nexport const reload = (force = false) => location.reload(force);\n\nexport const reloadLocalized = (code) =>\n (window.location.href = toLocalizedUrl(window.location.href, code));\n\n// Export object for Sinon stubbing\nexport default {\n reload,\n reloadLocalized\n};\n","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 .1c.6 0 1.2.3 1.6.8L11 3.1H5L6.4.9C6.8.4 7.4.1 8 .1zm0 1c-.3 0-.5.1-.7.3l-.4.7h2.3l-.5-.7c-.1-.2-.3-.3-.6-.3zM3.4 11.2c.3.1.4.4.3.6l-1.4 3.8c-.1.3-.4.4-.6.3-.3-.1-.4-.4-.3-.6l1.4-3.8c0-.2.3-.4.6-.3zm9.2 0c-.3.1-.4.4-.3.6l1.4 3.8c.1.3.4.4.6.3.3-.1.4-.4.3-.6l-1.4-3.8c0-.2-.3-.4-.6-.3z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14 2.1c.6 0 1 .4 1 1v8c0 .6-.4 1-1 1H2c-.6 0-1-.4-1-1v-8c0-.6.4-1 1-1zm0 1H2v8h12z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 6.8l-2 2-1-1-1.8 1.8h7.6z\",\n stroke: \"#282828\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"12\",\n cy: \"5.1\",\n r: \"1\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.5 13.1h13c.3 0 .5.2.5.5s-.2.5-.5.5h-13c-.3 0-.5-.2-.5-.5s.2-.5.5-.5z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.9 3c.6 0 1 .4 1 1v.1l-.8 7.1c-.1.4-.5.8-1 .8H2.9c-.5 0-.9-.4-1-.9l-.8-7c0-.5.4-1 .9-1.1h.1zM2.1 4l.8 7h2.2l.8-7z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 11v2c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1v-2zm-1 1H3v1h2zm6.8-6c.6 0 1.2.4 1.4.9l.2.6c.1.3.1.6 0 .8 1 .5 1.6 1.5 1.6 2.7 0 1.7-1.3 3-3 3h-1c-1.7 0-3-1.3-3-3 0-1.2.7-2.2 1.6-2.7 0-.1-.1-.2-.1-.4 0-.1 0-.3.1-.4l.2-.6c.3-.5.8-.9 1.4-.9zm0 1h-.5c-.2 0-.3.1-.4.2v.1l-.2.6.4.9-.8.4c-.9.4-1.3 1-1.3 1.8 0 1.1.8 1.9 1.9 2H12a2 2 0 002-2c0-.7-.4-1.3-.9-1.7l-.1-.1-.8-.4.4-.9-.2-.6c-.3-.2-.4-.3-.6-.3zM11 4h1c.6 0 1 .4 1 1s-.4 1-1 1h-1c-.6 0-1-.4-1-1s.4-1 1-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 1v14H4c-.6 0-1-.4-1-1V2c0-.6.4-1 1-1zm-1 13V2H4v12z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 12v3H4.5c-.8 0-1.5-.7-1.5-1.5S3.7 12 4.5 12zm-1 2v-1H4.5c-.2 0-.4.2-.5.4v.1c0 .2.2.4.4.5h.1zM5.5 4h5c.3 0 .5.2.5.5s-.2.5-.5.5h-5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm0 2h3c.3 0 .5.2.5.5s-.2.5-.5.5h-3c-.3 0-.5-.2-.5-.5s.2-.5.5-.5z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 0c0 1.1.9 2 2 2s2-.9 2-2h.3c1.1 0 2.1.4 2.8 1.2l2.4 2.4c.4.4.4 1 0 1.4l-.7.7c-.4.4-1 .4-1.4 0L12 4.2v10.3c0 .8-.6 1.4-1.4 1.5h-.1c-.8 0-1.5-.7-1.5-1.5V11c0-.6-.4-1-1-1-.5 0-.9.4-1 .9v3.6c0 .8-.6 1.4-1.4 1.5h-.1c-.8 0-1.5-.7-1.5-1.5V4.2L2.6 5.7c-.4.3-.9.3-1.3 0h-.1l-.7-.8c-.4-.4-.4-1 0-1.4l2.4-2.4C3.6.4 4.6 0 5.7 0zM1.9 4.9l1.4-1.4c.6-.6 1.6-.2 1.7.6v10.4c0 .2.2.4.4.5h.1c.2 0 .4-.2.5-.4v-3.9C6.1 9.8 7 9 8 9c1.1 0 1.9.8 2 1.9v3.6c0 .3.2.5.5.5.2 0 .4-.2.5-.4V4.2c0-.9 1-1.3 1.6-.8l.1.1 1.4 1.4.7-.7-2.4-2.4c-.4-.4-1-.7-1.5-.8h-.1v.1c-.4 1-1.4 1.8-2.6 1.8L8 3c-1.2 0-2.3-.8-2.8-1.8V1h-.1c-.5.1-1 .3-1.4.7l-.2.2-2.3 2.3z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.8 13h2v1h-2zm5.2 0h2v1h-2z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"#282828\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n d: \"M3.5 13.5c0-.28.22-.5.5-.5h2a.5.5 0 010 1H4a.5.5 0 01-.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.5 11.5c0-.28.22-.5.5-.5h3a.5.5 0 010 1H4a.5.5 0 01-.5-.5zM3.5 9.5c0-.28.22-.5.5-.5h2a.5.5 0 010 1H4a.5.5 0 01-.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.5 8.5A2.5 2.5 0 016 6h4a2.5 2.5 0 012.5 2.5v5A2.5 2.5 0 0110 16H6a2.5 2.5 0 01-2.5-2.5zM6 7c-.83 0-1.5.67-1.5 1.5v5c0 .83.67 1.5 1.5 1.5h4c.83 0 1.5-.67 1.5-1.5v-5c0-.83-.67-1.5-1.5-1.5zM8 1a.57.57 0 00-.57.57V3.1l-.35.1v.01a1.04 1.04 0 00-.16.07 2.1 2.1 0 00-.4.24c-.28.22-.52.53-.52.99H5c0-.87.47-1.45.9-1.78.2-.15.38-.26.53-.33v-.82a1.57 1.57 0 013.14 0v.82c.15.07.34.18.52.33.44.33.91.9.91 1.78h-1c0-.46-.24-.77-.52-1a2.1 2.1 0 00-.55-.3l-.36-.11V1.57A.57.57 0 008 1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 5.5C4 4.67 4.67 4 5.5 4h5a1.5 1.5 0 110 3h-5A1.5 1.5 0 014 5.5zM5.5 5a.5.5 0 000 1h5a.5.5 0 000-1z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 15 13\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.5 0C8.3 0 9 .7 9 1.5S8.3 3 7.5 3c-.2 0-.3 0-.5-.1V4h.5c2.8 0 4.1 3.7 5.1 3.7 2.5 0 3.1 4.3 1.6 4.3H13c-.2.6-.8 1-1.4 1s-1.2-.4-1.4-1H4.9c-.2.6-.8 1-1.4 1s-1.2-.4-1.4-1H.8c-1.5 0-.6-4.3 1.6-4.3.8 0 1.8-2.5 3.7-3.4V2.9c-.3.1-.4.1-.6.1C4.7 3 4 2.3 4 1.5S4.7 0 5.5 0c.4 0 .7.1 1 .4.3-.3.6-.4 1-.4zm-4 11c-.3 0-.5.2-.5.5 0 .2.2.4.4.5h.1c.3 0 .5-.2.5-.5 0-.2-.2-.4-.5-.5zm8 0c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm1.8-2H1.8c-.3.2-.5.6-.6 1.1-.2.3-.2.6-.2.8v.1h1.1c.2-.6.8-1 1.4-1s1.2.4 1.4 1h5.2c.2-.6.8-1 1.4-1s1.2.4 1.4 1H14v-1c-.2-.4-.4-.8-.7-1zM5 6.5l-.9 1.1-.2.2-.2.2H6V5.5c-.3.3-.7.6-1 1zM7.5 5H7v3h4.2l-.2-.2-.2-.3c-.3-.3-.7-.8-.8-1C9.1 5.5 8.3 5 7.5 5zm-2-4c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm2 0c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5z\",\n fill: \"#282828\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 2c.6 0 1 .4 1 1v7c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1V3c0-.6.4-1 1-1zm0 1H3v7h10z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.4 10c.4 0 .7.2.9.6l1 2c.2.5 0 1.1-.4 1.3-.2.1-.4.1-.5.1H1.6c-.6 0-1-.4-1-1 0-.2 0-.3.1-.4l1-2c.2-.4.5-.6.9-.6zm0 1H2.6l-1 2h12.8z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 12c.5 0 .9.4 1 .9v.1H5c0-.6.4-1 1-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 1.5l4 1v3l-4 1H5.9l-1.1 4H6c.6 0 1 .4 1 1v2c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1v-2c0-.6.4-1 1-1h.7l1.1-4h-.3C1.1 6.5 0 5.4 0 4s1.1-2.5 2.5-2.5zm-.1 1H2.5C1.7 2.5 1 3.2 1 4s.6 1.4 1.4 1.5h1.7l-1.6 6H1.1v2h5v-2H3.6l1.6-6H9l3-.8V3.3z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.5 3.5c.3 0 .5.2.5.5s-.2.5-.5.5H12v-1zM8 5.5v2c0 .6-.4 1-1 1H5v-3zm-1 1H6v1h1zM3 2v4H2V2zm3 1.5v1H4v-1zm5-1v3h-1v-3zM9 2v4H8V2zm-4 8.5v1H2v-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 0a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2c0-1.1.9-2 2-2zm0 1H4c-.5 0-.9.4-1 .9V14c0 .5.4.9.9 1H12c.5 0 .9-.4 1-.9V2c0-.5-.4-.9-.9-1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 6.5c2.2 0 4 1.8 4 4s-1.8 4-4 4-4-1.8-4-4 1.8-4 4-4zm0 1c-1.7 0-3 1.3-3 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 8.5c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0 1c-.6 0-1 .4-1 1s.4 1 1 1 1-.4 1-1-.4-1-1-1zM8 2c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm0 1c-.6 0-1 .4-1 1s.4 1 1 1 1-.4 1-1-.4-1-1-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.5.5c.6 0 1 .4 1 1v13c0 .6-.4 1-1 1h-12a2 2 0 01-2-2v-11c0-1.1.9-2 2-2zm0 1h-12c-.5 0-.9.4-1 .9v11.1c0 .5.4.9.9 1h12.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.5 1.5h1v13h-1zm6.5 2c2.5 0 4.5 2 4.5 4.5s-2 4.5-4.5 4.5-4.5-2-4.5-4.5 2-4.5 4.5-4.5zm0 1C7.1 4.5 5.5 6.1 5.5 8s1.6 3.5 3.5 3.5 3.5-1.6 3.5-3.5S10.9 4.5 9 4.5zm-4 7c.3 0 .5.2.5.5v.5H6c.3 0 .5.2.5.5s-.2.5-.5.5H4.5V12c0-.3.2-.5.5-.5zm8 0c.3 0 .5.2.5.5v1.5H12c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h.5V12c0-.3.2-.5.5-.5zm-7-9c.3 0 .5.2.5.5s-.2.5-.5.5h-.5V4c0 .3-.2.5-.5.5s-.5-.2-.5-.5V2.5zm6 1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h1.5V4c0 .3-.2.5-.5.5s-.5-.2-.5-.5v-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 6.5c.8 0 1.5.7 1.5 1.5S9.8 9.5 9 9.5 7.5 8.8 7.5 8 8.2 6.5 9 6.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 16 16\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 5V2.5c0-.3-.2-.5-.5-.5H11V.5c0-.3-.2-.5-.5-.5-.7 0-1.8-.1-3.1.7C6.6.5 6.1.5 5.5.5 5.2.5 5 .7 5 1v1h-.5c-.3 0-.5.2-.5.5V5c0 2 1.5 3.7 3.5 4v6.5c0 .3.2.5.5.5s.5-.2.5-.5v-1.7h.8c1.5 0 2.8-1.2 2.8-2.7v-.8c0-.3-.2-.5-.5-.5h-1.2c-.8 0-1.4.2-1.9.6V9c2-.3 3.5-2 3.5-4zm-1 0c0 .9-.4 1.7-1 2.2V7c0-1.3-.5-2.4-1.3-3.3.7-.5 1.5-.7 2.3-.7v2zm-1-4v1.1c-.1 0-.2 0-.3.1-.3-.4-.7-.7-1.1-1 .5-.1.9-.2 1.4-.2zm-4 .5c1 0 2 .4 2.7 1.1-.2.1-.5.2-.7.4-.6-.4-1.3-.7-2-.9v-.6zM5 5V3c2.2 0 4 1.8 4 4 0 .6-.5 1-1 1-1.8 0-3-1.4-3-3zm5.2 5.8h.8v.2c0 1-.8 1.7-1.8 1.7h-.7v-.2c0-1 .8-1.7 1.7-1.7z\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.5 1.5c.6 0 1 .4 1 1v2h2c1.3 0 2.4 1 2.5 2.3v.7c0 .6-.4 1-1 1H8c-.6 0-1-.4-1-1v-5c0-.6.4-1 1-1zm0 1H8v5h7v-.6c0-.7-.6-1.3-1.4-1.4h-3.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.5 7.5c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5S7 9.8 7 9s.7-1.5 1.5-1.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm3-1c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5S10 9.8 10 9s.7-1.5 1.5-1.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm-10-1C2.3 7.5 3 8.2 3 9s-.7 1.5-1.5 1.5S0 9.8 0 9s.7-1.5 1.5-1.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm13-1c.8 0 1.5.7 1.5 1.5s-.7 1.5-1.5 1.5S13 9.8 13 9s.7-1.5 1.5-1.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5zm-10-1C5.3 7.5 6 8.2 6 9s-.7 1.5-1.5 1.5S3 9.8 3 9s.7-1.5 1.5-1.5zm0 1c-.3 0-.5.2-.5.5s.2.5.5.5.5-.2.5-.5-.2-.5-.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5 1.5c.6 0 1 .4 1 1v5c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1v-5c0-.6.4-1 1-1zm0 1H1v5h4z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6 6.5h1v1H6zm-6-1h6v1H0zm9.5-1H11v1H9.5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm3.5-2h1v3h-1zm-12.5 9h15c.3 0 .5.2.5.5s-.2.5-.5.5H.5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm1.5 1h1v2H2zm4 0h1v2H6zm4 0h1v2h-1zm4 0h1v2h-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 5c3 0 5.5 2.5 5.5 5.5S11 16 8 16s-5.5-2.5-5.5-5.5S5 5 8 5zm0 1c-2.5 0-4.5 2-4.5 4.5S5.5 15 8 15s4.5-2 4.5-4.5S10.5 6 8 6z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.8 0l1.8 1.9-2.9 3.3H7.3L4.5 1.9 6.2 0zm-.5 1H6.7l-.9.9 1.9 2.3h.5l1.9-2.3zM8 7c1.9 0 3.5 1.6 3.5 3.5S9.9 14 8 14s-3.5-1.6-3.5-3.5S6.1 7 8 7zm0 1c-1.4 0-2.5 1.1-2.5 2.5S6.6 13 8 13s2.5-1.1 2.5-2.5S9.4 8 8 8z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.5 2h5v1h-5zM7 4h2v2H7z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.5 14h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2c.3 0 .5.2.5.5s-.2.5-.5.5zM7 7v8c0 .6-.4 1-1 1H1c-.6 0-1-.4-1-1V6c0-.6.4-1 1-1h5c.6 0 1 .4 1 1zm-1 .4V6H1v9h5v-2.4z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15 1c.6 0 1 .4 1 1v10c0 .6-.4 1-1 1H8v-1h7V2H3v2H2V2c0-.6.4-1 1-1zm-1.5 9c.3 0 .5.2.5.5s-.2.5-.5.5H8v-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 13 13\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11 0a2 2 0 012 2v9c0 1.1-1.1 2-2.5 2S8 12.1 8 11s1.1-2 2.5-2c.6 0 1.1.1 1.5.4V4H5v7c0 1.1-1.1 2-2.5 2S0 12.1 0 11s1.1-2 2.5-2c.6 0 1.1.1 1.5.4V2c0-1.1.9-2 2-2zM2.5 10c-.9 0-1.5.5-1.5 1s.6 1 1.5 1S4 11.5 4 11s-.6-1-1.5-1zm8 0c-.9 0-1.5.5-1.5 1s.6 1 1.5 1 1.5-.5 1.5-1-.6-1-1.5-1zm.5-9H6c-.5 0-.9.4-1 .9V3h7V2c0-.5-.4-.9-.9-1z\",\n fill: \"#282828\"\n})));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.5 2.5C7.3 2.5 8 3.2 8 4v.5c0 .6.4 1 1 1h5c.6 0 1 .4 1 1v6c0 .6-.4 1-1 1H2c-.6 0-1-.4-1-1v-9c0-.6.4-1 1-1zm0 1H2v9h12v-6H9c-1.1 0-1.9-.8-2-1.9V4c0-.3-.2-.5-.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.5 4.5c.3 0 .5.2.5.5s-.2.5-.5.5h-2c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm8-1c.8 0 1.4.6 1.5 1.4v1.6h-1V5c0-.2-.2-.4-.4-.5H7v-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10 2.5l2 2h2c.6 0 1 .4 1 1v7c0 .6-.4 1-1 1h-3v-1h3v-7h-2.4l-2-2H6.4l-2 2H2v7h3v1H2c-.6 0-1-.4-1-1v-7c0-.6.4-1 1-1h2l2-2z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 5.5c2.2 0 4 1.8 4 4s-1.8 4-4 4-4-1.8-4-4 1.8-4 4-4zm0 1c-1.7 0-3 1.3-3 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3zm-5.5-4h1c.3 0 .5.2.5.5s-.2.5-.5.5h-1c-.3 0-.5-.2-.5-.5s.2-.5.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 7.5a2 2 0 012 2H9c0-.6-.4-1-1-1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.3 2.5c.9 0 1.7.8 1.7 1.7v7.6c0 .9-.8 1.7-1.7 1.7H1.7c-.9 0-1.7-.8-1.7-1.7V4.2c0-.9.8-1.7 1.7-1.7zm0 .9H1.7c-.4 0-.8.3-.8.7v7.7c0 .4.3.8.7.8h12.7c.4 0 .8-.3.8-.7V4.2c.1-.4-.3-.8-.8-.8z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.4 4.2h.8v7.6h-.8z\",\n fillRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.3 5v.8c0 .5-.4.8-.8.8h-.8c-.5 0-.8-.4-.8-.8v-.7c0-.5.4-.8.8-.8h.8s.8.1.8.7zm-.8.1h-.8v.8h.8zm-10.6.8h3.4c.2 0 .4.2.4.4s-.2.4-.4.4H2.9c-.2 0-.4-.2-.4-.4s.2-.4.4-.4zm0 1.7h1.7c.2 0 .4.2.4.4s-.2.4-.4.4H2.9c-.2 0-.4-.2-.4-.4s.2-.4.4-.4zm0 1.7h3.4c.2 0 .4.2.4.4s-.2.4-.4.4H2.9c-.2 0-.4-.2-.4-.4s.2-.4.4-.4z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.3 8.8c1 1 1 2.6 0 3.5s-2.6 1-3.5 0-1-2.6 0-3.5c.9-1 2.5-1 3.5 0zm-.7.7c-.6-.6-1.6-.6-2.2 0s-.6 1.5 0 2.1 1.5.6 2.1 0 .6-1.5.1-2.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M6.75 10.47l.71-.7L11 13.3l-.71.7z\",\n fillRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M8.89 14.13l2.12-2.12.7.71-2.11 2.12z\",\n fillRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.9.3c.2.2.2.5 0 .7l-11 11-.7-.7 11-11c.2-.2.5-.2.7 0z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.7 11.2c.4.4.4 1 0 1.4l-2.8 2.8c-.4.4-1 .4-1.4 0s-.4-1 0-1.4l2.8-2.8c.3-.3 1-.3 1.4 0z\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"13.2\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"11.4\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"7.9\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"4.3\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"9.6\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"6.1\",\n r: \".5\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"14.6\",\n cy: \"2.5\",\n r: \".5\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.4 1c-.6.1-1 .4-1.3.9V2h-.2v-.1c-.2-.5-.8-.9-1.4-.9h-.1c-.6.1-1 .4-1.3.9V2h-.2v-.1c-.2-.5-.8-.9-1.4-.9h-.1c-.6.1-1 .4-1.3.9V2h-.2v-.1c-.2-.5-.8-.9-1.4-.9h-.1c-.6.1-1.1.5-1.3 1H2c-.6.3-1 .9-1 1.5v.1c.1.6.4 1 .9 1.3H2v.2h-.1c-.5.2-.9.8-.9 1.4v.1c.1.6.4 1 .9 1.3H2v.2h-.1c-.5.2-.9.8-.9 1.4v.1c.1.6.4 1 .9 1.3H2v.2h-.1c-.5.2-.9.8-.9 1.4v.1c.1.6.5 1.1 1 1.3v.1c.3.6.9 1 1.5 1h.1c.6-.1 1-.4 1.3-.9V14h.2v.1c.2.5.8.9 1.4.9h.1c.6-.1 1-.4 1.3-.9V14h.2v.1c.2.5.8.9 1.4.9h.1c.6-.1 1-.4 1.3-.9V14h.2v.1c.2.6.8.9 1.4.9h.1c.6-.1 1-.4 1.3-.9V14h.1c.6-.2.9-.8.9-1.4v-.1c-.1-.6-.4-1-.9-1.3h-.1V11h.1c.6-.2.9-.8.9-1.4v-.1c-.1-.6-.4-1-.9-1.3h-.1v-.3h.1c.6-.2 1-.8 1-1.4v-.1c-.1-.6-.4-1-.9-1.3H14v-.2h.1c.5-.2.9-.8.9-1.4v-.1c-.1-.6-.4-1-.9-1.3H14V2c-.3-.6-.9-1-1.5-1zm.1 1c.3 0 .5.2.5.5V3h.5c.3 0 .5.2.5.5s-.2.5-.4.5H13v2h.5c.3 0 .5.2.5.5s-.2.5-.4.5H13v2h.5c.3 0 .5.2.5.5s-.2.5-.4.5H13v2h.5c.3 0 .5.2.5.5s-.2.5-.5.5H13v.5c0 .3-.2.5-.5.5s-.5-.2-.5-.4V13h-2v.5c0 .3-.2.5-.5.5s-.5-.2-.5-.4V13H7v.5c0 .3-.2.5-.5.5s-.5-.2-.5-.4V13H4v.5c0 .3-.2.5-.5.5s-.5-.2-.5-.4V13h-.6c-.2 0-.4-.2-.4-.5s.2-.5.4-.5H3v-2h-.5c-.3 0-.5-.2-.5-.5s.2-.5.4-.5H3V7h-.5c-.3 0-.5-.2-.5-.5s.2-.5.4-.5H3V4h-.5c-.3 0-.5-.2-.5-.5s.2-.5.4-.5H3v-.6c0-.2.2-.4.5-.4s.5.2.5.4V3h2v-.5c0-.3.2-.5.5-.5s.5.2.5.4V3h2v-.5c0-.3.2-.5.5-.5s.5.2.5.4V3h2v-.5c0-.3.2-.5.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 4v8H4V7.4c0-.3.2-.5.5-.5.2 0 .4.2.5.4V11h6V5H4.5c-.2 0-.4-.2-.5-.4v-.1c0-.2.2-.4.4-.5h.1z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.9 2.5l1.8 1 1.8-1H15c.6 0 1 .4 1 1v9c0 .6-.4 1-1 1H8.4l-1.8-1-1.8 1H1c-.6 0-1-.4-1-1v-9c0-.6.4-1 1-1zm3.8 1l-2 1.1-2-1.1H1v9h3.6l2-1.1 2 1.1H15v-9z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.5 5.5c.3 0 .5.2.5.5s-.2.5-.5.5S6 6.3 6 6s.2-.5.5-.5zm0 2c.3 0 .5.2.5.5s-.2.5-.5.5S6 8.3 6 8s.2-.5.5-.5zm0 2c.3 0 .5.2.5.5s-.2.5-.5.5-.5-.2-.5-.5.2-.5.5-.5zm3-4h4c.3 0 .5.2.5.5s-.2.5-.5.5h-4c-.3 0-.5-.2-.5-.5s.2-.5.5-.5zm0 3h3c.3 0 .5-.2.5-.5s-.2-.5-.5-.5h-3c-.3 0-.5.2-.5.5s.2.5.5.5z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.8 14.5c-3.1 0-5.9-1.6-7.4-4.2-.1-.2-.1-.5.2-.7.2-.1.5-.1.7.2a7.6 7.6 0 006.6 3.7c2.7 0 5.2-1.4 6.6-3.8 0-.2.3-.3.6-.1s.3.4.2.7a8.77 8.77 0 01-7.5 4.2z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.8 5.6c-.7 0-1.2-.5-1.2-1.1 0-.3-.2-.5-.5-.5-.8 0-1.4.6-1.5 1.4v1.4c0 1.5.4 2.9 1.2 4.2l.2.2.5.7c.2.2.5.3.7.1.2-.1.3-.4.2-.6v-.1l-.5-.7A7.7 7.7 0 0111.7 7V5.5c0-.1 0-.2.1-.3v-.1c.2.8.9 1.4 1.8 1.4h.7c.2 0 .4-.2.5-.4V2.4h.4c.5-.1.5-.9 0-1h-3.5C9.6 1.4 7.9 3 7.8 5.1v.1H1.5c-.6 0-.7.9-.1 1h1.3c.4 0 .7.3.8.6v.1l.1.5c.1.9 0 1.8-.4 2.6l-.2.3-.6 1.1c-.1.2 0 .5.2.7.2.1.5 0 .6-.1v-.1l.6-1.1c.5-1 .7-2 .6-3.1v-.3l-.1-.5c0-.2-.1-.4-.2-.6h4.1c.2 0 .5-.2.5-.4v-.5c0-1.6 1.2-2.8 2.7-2.9h2.3z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.3 13.1c-.2-1.9-2-3.3-3.9-3.1a3.5 3.5 0 00-3 2.9v.2c0 .3.2.5.4.6.2 0 .5-.1.5-.3v-.1c.1-1.1 1-2 2.2-2.2 1.4-.2 2.6.8 2.8 2.2 0 .3.3.5.6.4s.5-.3.4-.6z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 3.5c2.5 0 4.5 2 4.5 4.5s-2 4.5-4.5 4.5-4.5-2-4.5-4.5 2-4.5 4.5-4.5zm0 1C6.1 4.5 4.5 6.1 4.5 8s1.6 3.5 3.5 3.5S11.5 10 11.5 8 9.9 4.5 8 4.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M7.5 5h1v4h-1z\",\n fillRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n clipRule: \"evenodd\",\n d: \"M7.5 8h3v1h-3z\",\n fillRule: \"evenodd\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.8 2.8c0-1.3-1-2.4-2.3-2.5H7.3c-1.3 0-2.4 1-2.5 2.3v3.1l1-.8V2.8c0-.8.6-1.4 1.4-1.5h2.1c.8 0 1.4.6 1.5 1.4v3h1zm-.1 10.5c0 1.3-1 2.4-2.3 2.5H7.2c-1.3 0-2.4-1-2.5-2.3v-3.3l1 1v2.1c0 .8.6 1.4 1.4 1.5h2.1c.8 0 1.4-.6 1.5-1.4v-2.5l1-.7z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.3 8.8c.3-.1.5 0 .7.2.1.2 0 .5-.2.6h-.1l-4.6 2.1H.5c-.3 0-.5-.2-.5-.5 0-.2.2-.4.4-.5h10.4z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 3.1c.2 0 .4.2.5.4v1.8l-4 6.2c-.1.1-.2.2-.3.2H6.8c-.2 0-.4-.2-.5-.4V7.7H4.6c-2 0-3.5 1.4-3.6 3.3v.2c0 .3-.2.5-.5.5s-.5-.3-.5-.5c0-2 1.3-3.7 3.1-4.3h.1l-2-.5c-.5-.1-.5-.9 0-1h3.5c1.3 0 2.4 1 2.5 2.3v3h.5l3.7-5.8V3.7c.1-.4.2-.6.6-.6z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.9 3c.9-.9 2.2-.9 3.1-.1l.1.1 1.3-.3c.3-.1.6.1.6.4v2.4c0 .3-.2.5-.5.5h-.1l-.8-.2.5 2.2c0 .2-.1.5-.3.6h-.1c-.2 0-.5-.1-.6-.3v-.1l-.6-3c-.1-.3.2-.6.5-.6h.1l1 .2v-1l-.9.3c-.2 0-.3 0-.5-.1l-.1-.1-.1-.1c-.5-.5-1.3-.6-1.8-.1h-.1l-.2.2c-.2.2-.5.2-.7 0-.2-.1-.2-.4-.1-.6l.1-.1zm7 9.5c-.5 1.3-1.9 2-3.2 1.5-1.2-.5-1.9-1.8-1.5-3l.1-.2.9.3c-.3.8.1 1.6.9 1.9s1.6-.1 1.9-.9c.3-.7-.1-1.5-.8-1.9H14l.3-.9c1.4.5 2 1.9 1.6 3.2zm-9.6-.8a2.5 2.5 0 01-5 .2v-.2h1c0 .8.7 1.5 1.5 1.5s1.4-.6 1.5-1.4v-.1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.8 9c1-1.4 2.9-1.7 4.3-.8l.2.1.5.4c.2.2.3.5.1.7-.1.2-.4.3-.6.2h-.1l-.5-.4c-1-.7-2.3-.5-3 .5 0 .1-.1.1-.1.2-.1.2-.4.3-.7.2-.2-.1-.3-.4-.2-.7 0-.2 0-.3.1-.4z\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#282828\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 0c0 1 .8 1.8 1.8 1.9h.1c1.6 0 2.9 1.2 3 2.8V6H8V4.9c0-1-.8-1.9-1.8-2H6c-1.6 0-2.9-1.2-3-2.8V0m11 7a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V9c0-1.1.9-2 2-2zm0 1H2c-.5 0-.9.4-1 .9V14c0 .5.4.9.9 1H14c.5 0 .9-.4 1-.9V9c0-.5-.4-.9-.9-1z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.5 9c.3 0 .5.2.5.5v4c0 .3-.2.5-.5.5s-.5-.2-.5-.5v-4c0-.3.2-.5.5-.5z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 11.5c0 .3-.2.5-.5.5h-4c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h4c.3 0 .5.2.5.5z\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"10\",\n cy: \"11\",\n r: \"1\"\n}), /*#__PURE__*/React.createElement(\"circle\", {\n cx: \"13\",\n cy: \"11\",\n r: \"1\"\n}))));","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nimport React from \"react\";\nexport default (({\n styles = {},\n ...props\n}) => /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\"\n}, props), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.8.4c.2-.2.5-.2.7 0s.2.5 0 .7l-.4.3L4.7 4c1-.6 2.1-1 3.3-1s2.3.4 3.3 1l2.6-2.6-.4-.4c-.2-.2-.2-.5 0-.7s.5-.2.7 0l1.4 1.4c.2.2.2.5 0 .7s-.5.2-.7 0l-.4-.4L12 4.5A6.02 6.02 0 018 15H.5c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h4.2A6.07 6.07 0 012 9c0-1.7.7-3.3 1.9-4.4L1.4 2.1l-.3.4c-.2.1-.5.2-.7 0-.2-.2-.2-.5 0-.7zM8 4C5.2 4 3 6.2 3 9a5 5 0 004.9 5H8c2.8 0 5-2.2 5-5s-2.2-5-5-5zm1.5 8.3l-.6.6c-.3.1-.6.1-.9.1s-.6 0-.8-.1c.4-.2.9-.6 1.3-1-.5-.2-1-.5-1.5-.8-.1.2-.3.3-.5.5-.3.2-.6.4-1 .5-.3-.2-.5-.5-.7-.8.5-.1.9-.3 1.2-.5.1-.1.2-.2.3-.2-.8-.7-1.6-1.4-2.2-2.3.1-.4.2-.8.4-1.1 1.9 2.5 4.1 4 6.6 4.4-.3.3-.6.6-1 .8-.2 0-.4-.1-.6-.1zM8 5c.2 0 .5 0 .7.1.4 1.2.4 2.3 0 3.2.4.2.8.5 1.2.6.3-1.3.4-2.4.1-3.4.5.3.9.6 1.2 1 .1.9-.1 1.8-.3 2.7l1.1.3c0 .3-.1.7-.3 1-2.8-.6-5-2-6.5-4.4.3-.2.5-.4.8-.6h.1c.5.8 1.1 1.6 1.8 2.2.2-.8.2-1.7-.3-2.7h.2z\",\n fill: \"#282828\"\n})));","import React from 'react';\nimport AccessoriesIcon from '@tradera/blueprint/theme/icons2/category-accessories.svg?jsx';\nimport AntiquesDesignIcon from '@tradera/blueprint/theme/icons2/category-antiques-design.svg?jsx';\nimport ArtIcon from '@tradera/blueprint/theme/icons2/category-art.svg?jsx';\nimport BeautyCareIcon from '@tradera/blueprint/theme/icons2/category-beauty-care.svg?jsx';\nimport BooksMagazinesIcon from '@tradera/blueprint/theme/icons2/category-books-magazines.svg?jsx';\nimport CharityIcon from '@tradera/blueprint/theme/icons2/category-charity.svg?jsx';\nimport ChildrensClothingShoesIcon from '@tradera/blueprint/theme/icons2/category-childrens-clothing-shoes.svg?jsx';\nimport ChildrensItemsIcon from '@tradera/blueprint/theme/icons2/category-childrens-items.svg?jsx';\nimport ClothesIcon from '@tradera/blueprint/theme/icons2/category-clothes.svg?jsx';\nimport CollectiblesIcon from '@tradera/blueprint/theme/icons2/category-collectibles.svg?jsx';\nimport ComputersAccessoriesIcon from '@tradera/blueprint/theme/icons2/category-computers-accessories.svg?jsx';\nimport ConstructionToolsIcon from '@tradera/blueprint/theme/icons2/category-construction-tools.svg?jsx';\nimport ConsumerElectronicsIcon from '@tradera/blueprint/theme/icons2/category-consumer-electronics.svg?jsx';\nimport CurrencyIcon from '@tradera/blueprint/theme/icons2/category-currency.svg?jsx';\nimport DvdVideosIcon from '@tradera/blueprint/theme/icons2/category-dvd-videos.svg?jsx';\nimport GardenPlantsIcon from '@tradera/blueprint/theme/icons2/category-garden-plants.svg?jsx';\nimport HobbyIcon from '@tradera/blueprint/theme/icons2/category-hobby.svg?jsx';\nimport HomeHouseholdIcon from '@tradera/blueprint/theme/icons2/category-home-household.svg?jsx';\nimport JewlryGemstonesIcon from '@tradera/blueprint/theme/icons2/category-jewlry-gemstones.svg?jsx';\nimport MobilePhoneTelecommunicationsIcon from '@tradera/blueprint/theme/icons2/category-mobile-phone-telecommunications.svg?jsx';\nimport MusicIcon from '@tradera/blueprint/theme/icons2/category-music.svg?jsx';\nimport OtherIcon from '@tradera/blueprint/theme/icons2/category-other.svg?jsx';\nimport PhotoCamerasOpticsIcon from '@tradera/blueprint/theme/icons2/category-photo-cameras-optics.svg?jsx';\nimport PostcardsPicturesIcon from '@tradera/blueprint/theme/icons2/category-postcards-pictures.svg?jsx';\nimport ShoesIcon from '@tradera/blueprint/theme/icons2/category-shoes.svg?jsx';\nimport SportsLeisureIcon from '@tradera/blueprint/theme/icons2/category-sports-leisure.svg?jsx';\nimport StampIcon from '@tradera/blueprint/theme/icons2/category-stamp.svg?jsx';\nimport TicketsTravelIcon from '@tradera/blueprint/theme/icons2/category-tickets-travel.svg?jsx';\nimport ToysChildrensItemsIcon from '@tradera/blueprint/theme/icons2/category-toys-childrens-items.svg?jsx';\nimport WatchesIcon from '@tradera/blueprint/theme/icons2/category-watches.svg?jsx';\nimport VehiclesBoatsPartsIcon from '@tradera/blueprint/theme/icons2/category-vehicles-boats-parts.svg?jsx';\nimport VideoComputerGamesIcon from '@tradera/blueprint/theme/icons2/category-video-computer-games.svg?jsx';\nimport HandmadeAppliedArtsIcon from '@tradera/blueprint/theme/icons2/category-handmade-applied-arts.svg?jsx';\n\nconst categoryIcons = {\n 10: VehiclesBoatsPartsIcon,\n 11: BooksMagazinesIcon,\n 12: ComputersAccessoriesIcon,\n 13: DvdVideosIcon,\n 14: PhotoCamerasOpticsIcon,\n 15: StampIcon,\n 16: ClothesIcon,\n 17: ConsumerElectronicsIcon,\n 18: HobbyIcon,\n 19: WatchesIcon,\n 20: AntiquesDesignIcon,\n 21: MusicIcon,\n 22: CurrencyIcon,\n 23: ArtIcon,\n 24: JewlryGemstonesIcon,\n 25: SportsLeisureIcon,\n 26: MobilePhoneTelecommunicationsIcon,\n 27: PostcardsPicturesIcon,\n 28: OtherIcon,\n 29: CollectiblesIcon,\n 30: VideoComputerGamesIcon,\n 31: HomeHouseholdIcon,\n 32: ConstructionToolsIcon,\n 33: ChildrensClothingShoesIcon,\n 34: TicketsTravelIcon,\n 35: CharityIcon,\n 36: HandmadeAppliedArtsIcon,\n 1605: GardenPlantsIcon,\n 1611: ChildrensItemsIcon,\n 1612: AccessoriesIcon,\n 1623: ShoesIcon,\n 340736: BeautyCareIcon,\n 302571: ToysChildrensItemsIcon,\n 343319: ToysChildrensItemsIcon\n};\n\nexport const getCategoryIcon = (\n categoryId,\n label,\n iconSizeClass = 'icon-md'\n) => {\n const IconComponent = categoryIcons[categoryId];\n if (!IconComponent) {\n console.error(\n `IconComponent missing for id: ${categoryId} label: ${label}`\n );\n return null;\n }\n return ;\n};\n"],"sourceRoot":""}