{"version":3,"sources":["helpers/anchorWithId.helper.ts","components/AccordionList/index.tsx","components/AccordionMultiplePDF/index.tsx","react-only-components/LazySection/index.tsx","components/Advisor/index.tsx","components/BrandPortfolio/index.tsx","components/Breadcrumb/index.tsx","utils/window.utils.js","lib/custom-hooks/useMediaQuery.ts","react-only-components/CarouselArrow/index.tsx","react-only-components/CustomCarouselDots/index.tsx","react-only-components/CustomCarouselDots/appendDots.tsx","utils/linkUtils.ts","react-only-components/RoutableSitecoreLink/index.tsx","components/ContactCards/types/ContactCards.types.ts","constants/breakpoints.constants.ts","components/CardCarousel/components/carouselSlide/index.tsx","components/CardCarousel/models/cardCarousel.model.ts","react-only-components/CarouselDots/index.tsx","components/CardCarousel/index.tsx","lib/shared-models/card.model.ts","react-only-components/CardGridCard/index.tsx","components/CardGrid/index.tsx","components/CardGridContacts/index.tsx","components/CardLink/models/CardLink.model.ts","components/CardLink/index.tsx","components/CardList/index.tsx","components/CardListExtra/index.tsx","components/CardModuleFull/models/CardModuleFull.model.ts","react-only-components/RoutableNotEditableLink/index.tsx","react-only-components/CTAWithArrow/index.tsx","components/CardModuleFull/index.tsx","components/CarouselCardHighlights/models/CarouselCardHighlights.model.ts","components/CarouselCardHighlights/index.tsx","components/CollapsibleTextModule/models/CollapsibleTextModule.model.ts","components/CollapsibleTextModule/index.tsx","components/ColumnCard/index.tsx","components/ContactCards/models/ContactCards.model.ts","components/ContentHubSeriesDetails/types/ContentHubSeriesDetails.type.ts","components/ContactCards/models/ContactCard.model.ts","react-only-components/ModalDialog/ModalDialog.tsx","components/ContactCards/fullcard.tsx","hooks/useMediaQuery.ts","components/ContactCards/index.tsx","react-only-components/ExperienceEditorComponentPlaceholder/index.tsx","components/HeroCarousel/HeroCarouselIndicator.tsx","components/ContentHubSeriesDetails/components/ComponentDetails/Gallery.tsx","react-only-components/VideoPlayer/index.tsx","components/ContentHubSeriesDetails/components/ComponentDetails/Banner.tsx","components/ContentHubSeriesDetails/components/InnerSplitModules/InnerSplitModule.tsx","components/ContentHubSeriesDetails/components/InnerSplitModules/index.tsx","components/ContentHubSeriesDetails/components/InnerCards/InnerCard.tsx","components/ContentHubSeriesDetails/components/InnerCards/index.tsx","components/ContentHubSeriesDetails/components/ComponentDetails/index.tsx","components/ContentHubSeriesDetails/models/ContentHubSeriesDetails.model.ts","components/ContentHubSeriesDetails/components/MobileSeriesDetails.tsx","components/ContentHubSeriesDetails/components/DesktopSeriesDetails.tsx","components/ContentHubSeriesDetails/index.tsx","components/ContentHubSeriesOverview/models/OverviewText.model.ts","components/ContentHubSeriesOverview/components/OverviewText/index.tsx","components/ContentHubSeriesOverview/models/OverviewCarousel.model.ts","components/ContentHubSeriesOverview/components/OverviewCarousel/OverviewCarouselArrow.tsx","components/ContentHubSeriesOverview/components/OverviewCarousel/OverviewCarouselIndicators.tsx","components/ContentHubSeriesOverview/models/ExpandableOverlay.model.ts","components/ContentHubSeriesOverview/components/ExpandableOverlay/OverlayCarouselArrow.tsx","components/ContentHubSeriesOverview/components/ExpandableOverlay/gallery.tsx","components/ContentHubSeriesOverview/components/ExpandableOverlay/index.tsx","components/ContentHubSeriesOverview/components/OverviewCarousel/carousel.tsx","components/ContentHubSeriesOverview/components/OverviewCarousel/index.tsx","components/ContentHubSeriesOverview/index.tsx","components/ContentHubSpecialOffers/CarouselSlide.tsx","components/ContentHubSpecialOffers/models/fields.model.ts","components/ContentHubSpecialOffers/index.tsx","components/CookiePolicyBanner/fields.model.ts","components/CookiePolicyBanner/index.tsx","mocks/CustomHtmlComponent.mock.ts","components/CustomHtmlComponent/models/CustomHtmlComponentModel.model.ts","components/CustomHtmlComponent/index.tsx","components/DataTableCNHComponent/index.tsx","components/Disclaimer/models/Disclaimer.model.ts","components/Disclaimer/index.tsx","components/DownloadList/index.tsx","components/DropDown/index.tsx","components/Events/models/Events.model.ts","components/Events/index.tsx","components/ExploreEquipment/components/lineItem.tsx","mocks/ExploreEquipment.mock.ts","components/ExploreEquipment/model/ExploreEquipment.model.ts","components/ExploreEquipment/index.tsx","components/ExternalComponent/models/IFrame.model.ts","components/ExternalComponent/index.tsx","components/FindADealer/fields.model.ts","components/FindADealer/index.tsx","mocks/Footer/FooterLink.mock.ts","lib/shared-models/FooterLink.model.ts","components/Footer/components/LinksAccordion/index.tsx","mocks/Footer/Footer.mock.ts","components/Footer/types/Footer.model.ts","components/Footer/components/Navigation/index.tsx","components/Footer/components/SocialMedia/index.tsx","components/Footer/components/BackToTop/index.tsx","components/Footer/index.tsx","components/GenericCTAList/models/GenericCTAList.model.ts","components/GenericCTAList/index.tsx","components/Header/components/HeaderLogo/HeaderLogo.tsx","components/Header/components/LanguageSwitch/LanguageSwitch.tsx","hooks/useMemorySafeTimeout.ts","components/Header/components/HamburgerButton/HamburgerButton.tsx","hooks/useStockPriceFeed.ts","components/Header/components/StockTicker/StockTicker.tsx","components/Header/components/Search/Search.tsx","components/Header/components/MobileMenu/MobileMenu.tsx","components/Header/components/HeaderLinks/HeaderLinks.tsx","components/Header/hooks/useCompareRoute.ts","components/Header/index.tsx","hooks/use-scroll-offset.ts","components/Header_old/MenuContext/index.tsx","components/Header_old/NavigationItem.model.ts","components/Header_old/NotEditableMock.ts","components/Header_old/Header.model.ts","components/Header_old/Logo.tsx","components/Header_old/MenuLink/PrimaryLink.tsx","components/Header_old/MenuLink/MenuLink.tsx","components/Header_old/NavigationItemMenuStructure.tsx","components/Header_old/NavigationItemMenu.tsx","components/Header_old/NavigationAccordionItem.tsx","components/Header_old/NavigationAccordionLinkItem.tsx","components/Header_old/MobileMenu.tsx","components/Header_old/LogoList.tsx","components/Header_old/MenuTriggerContentWithIcon.tsx","constants/query-params.constants.ts","hooks/use-query-params.effect.ts","components/Search/components/Suggestions/index.tsx","components/Header_old/Search.tsx","components/Header_old/MenuOverlay.tsx","components/Header_old/NavigationItemLink.tsx","components/Header_old/NavigationItem.tsx","components/Header_old/index.tsx","components/HeroBanner/models/HeroBanner.model.ts","components/HeroBanner/index.tsx","components/HeroCarousel/HeroCarouselSlide.tsx","components/HeroCarousel/HeroCarouselArrow.tsx","components/HeroCarousel/HeroCarouselScrollSymbol.tsx","utils/network.utils.ts","components/HeroCarousel/HeroCarouselDesktop.tsx","components/HeroCarousel/NotEditableFieldsMock.ts","components/HeroCarousel/index.tsx","components/Highlights/models/Highlights.model.ts","components/Highlights/index.tsx","components/HistoryModule/HistoryTabs/HistoryTabs.tsx","components/HistoryModule/HistoryBlock/HistoryBlock.tsx","components/HistoryModule/index.tsx","components/HistoryModule/hooks/useHistoryScroll.tsx","components/IconButton/models/IconButton.model.ts","components/IconButton/index.tsx","mocks/IFrame/IFrame.mock.ts","components/IFrame/models/IFrame.model.ts","components/IFrame/index.tsx","components/KeepInTouch/fields.model.ts","components/KeepInTouch/index.tsx","components/LanguageDropdown/models/LanguageDropdown.model.ts","components/LanguageDropdown/index.tsx","components/LanguageSelector/models/Lang.model.ts","components/LanguageSelector/index.tsx","components/LightWeightHeader/index.tsx","components/LinkList/index.tsx","mocks/ModelsListing.mock.ts","components/ModelsListing/models/ModelsListing.model.ts","components/ModelsListing/components/ModelsListingItem.tsx","components/ModelsListing/index.tsx","components/NavigationFilterCardList/index.tsx","components/NavigationLinkList/models/NavigationLinkList.model.ts","components/NavigationLinkList/index.tsx","components/NewsletterConfirmation/models/NewsletterConfirmation.model.ts","components/NewsletterConfirmation/index.tsx","components/PageTitle/models/PageTitle.model.ts","components/PageTitle/index.tsx","components/PrivacyBanner/models/PrivacyBanner.model.ts","components/PrivacyBanner/index.tsx","components/PrivacyBottomBanner/models/PrivacyBottomBanner.model.ts","components/PrivacyBottomBanner/index.tsx","components/PrivacyFilter/models/PrivacyFilter.model.ts","components/PrivacyFilter/index.tsx","components/ReduxImpl/reducers/conditionsAggregator.ts","components/ReduxImpl/reducers/index.ts","components/ReduxImpl/contants/action-types.ts","components/ReduxImpl/store/index.ts","components/ReduxImpl/actions/index.ts","components/SitecoreJssForm/components/baseTextField/index.tsx","components/SitecoreJssForm/components/textField/index.tsx","components/SitecoreJssForm/components/fileUpload/index.tsx","components/SitecoreJssForm/components/emailField/index.tsx","components/SitecoreJssForm/components/numberField/index.tsx","components/SitecoreJssForm/components/telephoneField/index.tsx","components/SitecoreJssForm/components/passwordField/index.tsx","components/SitecoreJssForm/components/multipleLineTextField/index.tsx","components/SitecoreJssForm/components/checkboxField/index.tsx","components/SitecoreJssForm/components/dropdownfield/index.tsx","components/SitecoreJssForm/ConditionalRendering/ConditionalRenderingContants.ts","components/SitecoreJssForm/ConditionalRendering/index.ts","components/SitecoreJssForm/components/sectionField/index.tsx","components/SitecoreJssForm/components/checkBoxListField/index.tsx","components/SitecoreJssForm/components/radioButtonListField/index.tsx","components/SitecoreJssForm/components/textViewField/index.tsx","components/SitecoreJssForm/components/recaptcha/index.tsx","components/SitecoreJssForm/components/richText/RichText.tsx","components/SitecoreJssForm/fieldFactory.ts","components/PrivacyStatement/types/PrivacyStatement.types.ts","components/SitecoreJssForm/components/fieldValidationError/index.tsx","components/SitecoreJssForm/components/fieldWrapper/index.tsx","components/SitecoreJssForm/components/JssForm/JssForm.tsx","react-only-components/Spinner/Spinner.tsx","components/SitecoreJssForm/index.tsx","components/PrivacyForm/jssStatefullform.tsx","components/PrivacyForm/index.tsx","components/PrivacyStatement/models/PrivacyStatement.model.ts","components/PrivacyStatement/components/Accordion/index.tsx","components/PrivacyStatement/components/SectionContent/index.tsx","components/PrivacyStatement/components/Dropdown/index.tsx","components/PrivacyStatement/components/DesktopPrivacyStatement/SectionTabs/index.tsx","utils/debounceHandler.utils.ts","components/PrivacyStatement/components/DesktopPrivacyStatement/index.tsx","utils/detectScrollDirectionForNavigationBar.utils.ts","hooks/useStickyWrapper.tsx","components/PrivacyStatement/components/MobilePrivacyStatement/NavigationBar/index.tsx","components/PrivacyStatement/components/MobilePrivacyStatement/index.tsx","components/PrivacyStatement/index.tsx","mocks/ProductIntro.mock.ts","components/ProductIntro/models/ProductIntro.model.ts","components/ProductIntro/index.tsx","components/Redirectww1Component/index.tsx","components/RelatedLinks/models/RelatedLinks.model.ts","components/RelatedLinks/index.tsx","components/RTE/models/RTE.model.ts","components/RTE/index.tsx","components/Search/components/Pagination/index.tsx","components/Search/components/SearchFilterDropdown/index.tsx","components/Search/models/SearchApiModel.ts","components/Search/index.tsx","components/SearchBox/index.tsx","components/SearchModule/components/Pagination/index.tsx","components/SearchModule/components/SearchFilterDropdown/index.tsx","components/SearchModule/index.tsx","components/SectionList/models/SectionList.model.ts","components/SectionList/index.tsx","components/SeriesListing/components/ProductCard/SummarySpecs.tsx","components/SeriesListing/components/ProductCard/index.tsx","mocks/ContentHubSeriesListing.mock.ts","components/SeriesListing/models/SeriesListing.model.ts","components/SeriesListing/index.tsx","components/SimpleCardList/index.tsx","components/Spacer/index.tsx","components/SpecialOffers/CarouselSlide.tsx","components/SpecialOffers/NotEditableFieldsMock.ts","components/SpecialOffers/fields.model.ts","components/SpecialOffers/index.tsx","components/SplitGallery/index.tsx","components/SplitGalleryContainer/index.tsx","mocks/SplitModule.mock.ts","components/SplitModule/models/SplitModule.model.ts","components/SplitModule/index.tsx","components/StockFeed/index.tsx","components/Stories/mockCardList.ts","components/Stories/fields.model.ts","react-only-components/StoriesCard/index.tsx","components/Stories/index.tsx","components/SubscribeForm/index.tsx","components/TabList/index.tsx","components/TestNoParams/PrintProps.tsx","components/TestNoParams/index.tsx","components/TestWithParams/index.tsx","components/TextDropdown/models/TextDropdown.model.ts","components/TextDropdown/index.tsx","mocks/TextModule.mock.ts","components/TextModule/models/TextModule.model.ts","components/TextModule/index.tsx","components/TimerBanner/models/TimerBanner.model.ts","components/TimerBanner/index.tsx","components/TwoColumn/index.tsx","components/VerticalNavBar/index.tsx","components/VideoPlayer/models/VideoPlayer.model.ts","components/VideoPlayer/Preview/index.tsx","components/VideoPlayer/Youtube/index.tsx","components/VideoPlayer/Vimeo/index.tsx","components/VideoPlayer/Custom/index.tsx","components/VideoPlayer/Modal/index.tsx","components/VideoPlayer/index.tsx","temp/componentFactory.tsx","dataFetcher.js","components/@shared/StickyTopWrapper/index.tsx","Layout.js","NotFound.js","RouteHandler.js","AppRoot.tsx","main.js","i18n.js","lib/GraphQLClientFactory.js","temp/config.js"],"names":["anchorWithId","href","anchor","length","convertFileSize","sizeInBytes","fielSize","toFixed","parseInt","withSitecoreContext","memo","props","downloadListItems","fields","Attachments","downloadListTitle","Title","loadMoreText","numberOfDoc","NumberOfAttachments","value","useState","currentDocToShow","setloadMore","useEffect","ItemAccordion","useMemo","item","isOpen","setIsOpen","handleAccordionClick","useCallback","prevValue","accordionRef","useRef","console","log","current","scrollHeight","LinkButton","attachmentLinkField","className","displayName","src","isExperienceEditorActive","field","size","tag","target","linktarget","extension","icon","color","Component","id","rendering","uid","onClick","ref","style","maxHeight","overflow","transition","slice","map","index","key","List","sitecoreContext","isExperienceEditor","shouldOpenAll","pageEditing","title","name","transitionTimingFunction","height","offset","children","undefined","padding","once","Advisor","sitecoreFields","featuredImage","proceedButtonText","scriptUrl","selectors","currentSlide","loadScript","Promise","resolve","reject","document","createElement","async","onload","onerror","getElementsByTagName","appendChild","updateSlideAfterClick","a","waitSliderToUpdate","updateSlide","loadAdvisor","observer","MutationObserver","querySelector","disconnect","observe","getElementById","attributes","childList","subtree","appendPagination","bindBackButton","getCurrentSlideNumber","number","slides","querySelectorAll","forEach","slide","classList","contains","getCurrentSlide","lastSlide","parentElement","nextButtonClick","click","addEventListener","bindClickOnPowerRangeRadioButtons","button","firstChild","pagination","innerHTML","updatePagination","toString","image","alt","currentSlideContainer","insertBefore","appendImage","proceedButton","lastChild","appendProceedButton","remove","removePagination","restartButtonCopy","restartButton","addResetButton","LoadAdvisor","emptyElement","Image","Link","BrandPortfolio","eyebrow","Subtitle","link","Cards","IsTwoColumns","CardsWithImprovedLayout","idx","rel","_className","params","Position","Color","aria-label","BreadCrumbDetailList","i","hideinBreadCrumb","LinkUrl","disableNavigation","windowService","window","documentService","getExpiryDate","day","d","Date","setTime","getTime","toUTCString","getCookieValue","result","cookie","match","pop","useMediaQuery","query","initialState","callbackOnChange","matches","setMatches","media","matchMedia","listener","addListener","removeListener","CustomArrow","direction","isDisabled","handleClick","type","class","Dots","CustomCarouselDots","dotsArray","min","updateMin","max","updateMax","changes","updateChanges","initialMax","initialMin","activeCard","cardsCount","push","hasAnimation","isDarkMode","appendDots","dots","activeCardIndex","showCustomDots","isInternalUrl","url","startsWith","appendToUrlPath","add","appendSlash","endsWith","appendString","includes","urlArray","split","CardsLayout","RoutableSitecoreLink","editable","hasValidHref","isEditing","to","text","Breakpoints","BreakpointsInPx","xs","sm","md","lg","xl","xxl","CarouselSlide","model","isEE","isDesktop","badgeLink","isWideCard","loading","mobileImage","subtitle","buttonPrimary","buttonSecondary","SpecialOffersSlideModel","_id","this","dataSource","cardType","Key","label","SpecialOffersModel","items","Card","isComponentUnreleased","CarouselDots","screenWidth","setScreenWidth","updateActiveIndex","isClickedOnArrow","setIsClickedOnArrow","largeImageWidth","smallImageWidth","shouldInstanceCarousel","reduce","sumWidths","curr","arrowButtonClick","settings","infinite","arrows","variableWidth","speed","slidesToScroll","nextArrow","prevArrow","customPaging","afterChange","Math","innerWidth","CardModel","imageMobile","FormatDate","CardType","Category","category","AllowFallbackForMobile","allowFallbackForMobile","width","CardGridCard","GridCard","pfe-priority","cardGridMockData","CardGrid","cards","generateCards","slidesToShow","_","responsive","breakpoint","cardGridWrapperRef","isLastDecimalSlide","slideTotal","beforeChange","prevSlide","nextSlide","lastPaginationEl","CardGridContacts","cardList","CarouselCardHighlightsLists","cardsMatrix","m","l","e","row","card","CardLinkModel","getCardHeight","summarycards","cardheight","horizontalLineCount","count","linkgroups","noofcolumns","toLowerCase","displayhoizontalseperation","finalCardHeight","finalCardWrapperHeight","linkItem","j","join","links","linklabel","linkicontype","Icon","download","displayverticalseperation","dateFormat","date","dateString","getDate","getMonth","getFullYear","dateval","monthval","yearval","cardListArray","ImageMobile","Object","keys","Content","SubContent","display","alignItems","DownloadText","paddingTop","CardListExtraArray","fontWeight","fontSize","CardModuleFullModel","ImageTitle","link1","link2","bodyText","Variant","RoutableNotEditableLink","otherProps","CTAWithArrow","CardModuleFull","objImageTitle","imageTitle","isEmptyImageTitle","bodyTextNotEmpty","variant","primaryLink","secondaryLink","CarouselCardHighlightsModel","Eyebrow","cardGenerator","CarouselCardList","Autoscroll","scrollingspeed","sliderRef","setSliderRef","spp","showRightArrow","setshowRightArrow","showLefttArrow","setshowLefttArrow","handleWidth","c","getElementsByClassName","setAttribute","slideToShow","autoplay","autoplaySpeed","slickNext","slickPrev","leftArrowVisible","rightArrowVisible","handleChangeSlide","touchMove","groupArray","cardGroup","cardgroup","cardMapper","CollapsibleTextModuleModel","AnchorID","PrimaryText","SecondaryText","LearnMoreLabel","React","setOpen","isExtendedText","setCollapsedText","URLSearchParams","location","search","get","hash","anchorID","primaryText","secondaryText","learnMoreLabel","ColumnCardList","isThreeColumns","marginLeft","InnerComponentTypes","ContactCardsModel","ColumnLayout","ContactCardModel","CTA","country","curriculum","curriculumTextModal","CardImageDesktop","designation","SecondaryDownloadLink","SecondaryDownloadlinkText","description","email","emailText","mobile1","mobile2","fullname","primarylinktarget","secondarylinktarget","TitleButtons","ModalDialog","close","shouldCloseOnOverlayClick","hasMaxHeightRestricted","overlayDiv","setOverlayDiv","closeModal","CloseButton","parentSelector","overlayClassName","appElement","overlayRef","ReactDOM","createPortal","FullCard","contactCardList","onReadMoreHandler","cardImageDesktop","preventDefault","mediaMatches","ContactCards","contactCards","ContactCardsLists","contactCardTitle","ContactCardTitle","modalIsOpen","modalData","setModalData","data","titleButtons","secondaryTarget","columnLayout","Variations","ExperienceEditorComponentPlaceholder","HeroCarouselIndicator","isSelected","baseClassName","Gallery","assets","hasFixedAspectRatio","setCurrentSlide","isMobile","infiniteLoop","onChange","slideIndex","selectedItem","showThumbs","showArrows","showIndicators","showStatus","full","VideoPlayer","playCallback","pauseCallback","youtubeVideoID","setYoutubeVideoID","VideoTagRef","playEventHandler","event","pauseEventHandler","removeEventListener","video_id","ampPos","indexOf","substring","quesPos","frameBorder","allow","allowFullScreen","controls","Banner","component","bannerType","videoUrl","videoDescription","InnerSplitModule","dangerouslySetInnerHTML","__html","button1","button2","InnerSplitModules","components","InnerCard","asset","srcSet","bigthumbnail","thumbnail","InnerCards","ContentHubSeriesDetails","setModalIsOpen","hasInnerComponents","innerComponents","layoutType","Split","SeriesDetailsModel","apiData","isEEActive","isPreview","pageState","isPlaceholderShown","collapsedTabs","setCollapsedTabs","isCollapsed","tabId","filter","tab","ComponentDetails","selectedComponent","setSelectedComponent","MobileSeriesDetails","DesktopSeriesDetails","OverviewTextModel","OverviewText","OverviewCarouselModel","OverviewCarouselArrow","OverviewCarouselIndicators","numOfSlides","currentSlideIndex","Array","fill","ExpandableOverlayModel","OverlayCarouselArrow","ExpandableOverlayGallery","currentCardIndex","setCurrentCardIndex","SlideSectionRef","isWide","resizeHandler","getBoundingClientRect","justifyContent","slideSectionDim","maxNoofCards","floor","moveBy","setProperty","arr","zIndex","goToCard","ExpandableOverlay","OverviewCarousel","_setCurrentSlide","showOverlay","setShowOverlay","hasMultipleSlides","autoPlay","video","options","year","month","disclaimer","badge","pfe-color","slot","pfe-overflow","discount","expirationLabel","expiration","render","toLocaleDateString","ContentHubSpecialOffersModel","defaultValue","ContentHubSpecialOffersSlideModel","itemIndex","todayDate","validSpecialOffers","offer","setHours","CookiePolicyBannerModel","Cbid","Culture","Src","CookiePolicyBanner","domainGroupId","CBID","language","culture","CustomHtmlComponentModel","mock","CustomHtmlComponent","getInnerHtml","DataTableCNHComponent","hasImages","updateHasImages","colItemsList","updateColItemsList","colItems","Lists","colItem","every","RowComponent","isContrast","isHeader","ColumnComponent","isImage","list","Header","columnsList","colFields","DisclaimerModel","option","setOption","disagreeButton","setDisAgreeButton","history","useHistory","disclaimerdisagreenote","onSubmit","scroll","currentPath","pathname","currentPathURL","URL","searchParams","cookiename","cookievalue","open","protocol","host","forceReload","handleSubmit","disclaimernote","optionsnamevaluelist","checked","for","ctalabel","toUpperCase","OptionalCTA","linktype","DropDown","x","EventsModel","eventListItems","EventGroups","EventsTitle","TwoColumns","numberOfDocMinusOne","slicedArr1Length","firstArr","secondArr","PDFIcon","IMGIcon","ZIPIcon","gridTemplateRows","EventTitle","EventPage","DocumentLink","Events","Name","ReadMoreLink","WebCastLink","LineItem","lineItem","bigthumbnailAlt","ExploreEquipmentModel","itemData","contextItemUrl","ExploreEquipment","lineItems","productListData","titleUrl","IFrameModel","_height","Number","Height","isNaN","ExternalComponent","IframeRef","RedirectionUrl","margin","FindADealerModel","fieldName","getterFn","inputPlaceholder","searchButton","FindADealer","backgroundImage","content","Type","Phrase","FooterLinkModel","displayField","linkUrl","linkText","setIsCollapsed","arrayCollapsed","setArrayCollapsed","onAccordionClick","isCollapsable","accordions","splice","onSecondLevelClick","val","footerSections","sectionName","sectionType","footerLinks","copyrightText","backToTopText","FooterModel","filterSectionByType","logoLink","slogan","Navigation","IsCookiePolicyLink","SocialMedia","socialLinks","BackToTop","scrollTo","top","behavior","Footer","navigationSection","socialMediaLinks","GenericCTAListModel","GenericCTAList","array","numberOfRows","ceil","elementRows","innerElem","ind","HeaderLogo","logoBlack","logoWhite","isDark","visibility","position","LanguageSwitch","languages","lang","selected","useMemorySafeTimeout","timeoutId","clearTimeout","cb","ms","setTimeout","HamburgerButton","clickHandler","isReversing","setIsReversing","useStockPriceFeed","NYSE","change","uptrend","BI","priceFeed","setPriceFeed","getPriceFeed","Axios","newPriceFeed","closePrice","change_relative","parseFloat","Milan","then","hideMILabel","stockPriceFeed","setDisplay","Search","urlParams","pageID","searchPage","hideSearch","searchLabel","hide","labelSearch","qT","setValue","origin","searchSitecoreHeader","valSearch","redirectUrl","onKeyUp","keyCode","xmlns","viewBox","stroke","strokeWidth","strokeLinecap","strokeLinejoin","MobileMenu","stockTickerLink","useWindowSize","safeTimeout","activeLevel","setActiveLevel","showSecondLevel","setShowSecondLevel","handleLevelClick","level","handleSecondLevelClose","isLink","NavigationLevel","isFirst","isVisible","primaryData","secondaryData","onLevelClick","onSecondLevelClose","transform","navItem","menuButton","hideFirstLevelAnimation","setHideFirstLevelAnimation","tid","find","section1","HeaderLinks","isHover","primaryHeaderMenuLinks","onDrawerStateChange","setSafeTimeout","compare","loc","useLocation","formatString","s","replace","useCompareRoute","prevLevel","setPrevLevel","isTransitioning","setIsTransitioning","handleActiveLevelChange","navLinks","levelName","opacity","_window","Window","element","offsetPosition","scrollY","useScrollWithOffset","y","useWindowScroll","mobileBP","useMedia","setIsMobile","isRoot","setIsDark","desktopDrawerState","setDesktopDrawerState","handleMouseEnter","handleMouseLeave","isMobileMenuOpen","setIsMobileMenuOpen","useLockBodyScroll","handleMobileMenuToggle","handleDesktopDrawerStateChange","state","onMouseEnter","onMouseLeave","logo","logolink","StockTickerLink","languagessite","MenuContext","createContext","useMenuContext","useContext","useMenuDispatcher","useMenuThirdItemWithContext","menuState","menuDispatcher","elementRef","isThirdOpen","initialIsOpen","initialIsThirdOpen","newIsThirdOpen","useMenuThirdItem","useMenuItemWithContext","theight","newIsOpen","useMenuItem","useMenuHeightWithContext","useSubMenuHeight","useMenuThirdHeightWithContext","useSubMenuThirdHeight","menuReducer","action","useMenuReducer","useReducer","MenuProvider","menuDispatch","Provider","BaseNavigationItemModel","menuTitle","dictionaryFieldMapper","linkType","NavigationItemTypeMapper","NavigationItemLinkModel","NavigationItemMenuModel","columns","isLastColumnGray","NavigationItemColumnModel","section2","section3","section4","section5","section6","section7","section8","section9","section10","isSection4Gray","sitecoreElements","elements","isArray","newSubMenuElement","PrimaryLinkModel","Menu","MenuLinkTypeMapper","BaseMenuLinkModel","_fields","groupLinkFields","secondaryLinks","hasSecondaryLinks","viewAll","viewAllText","SecondaryLinkModel","ImageLinkModel","SecondaryLinkWithBoldModel","divider","boldText","boldSecondaryText","elementFields","HeaderMock","querystring","mobiletitle","login","register","username","password","removetray","placeholder","finddealer","mockLinkMapper","mockLinkTypeMapper","HeaderModel","navigationItemModelsArr","mobileTitle","mobileTitleOpen","navigationItemData","newNavigationItemModel","Logo","context","dispatch","LogoTag","route","templateId","mobileLogo","isHamburgerMenu","tel","zoomLevel","setThirdOpen","setThirdHeight","dimensions","setDimensions","useLayoutEffect","boundingRect","round","useRefDimensions","breakpointXL","checkActive","path","isThirdlevel","historyPath","MenuLink","NavigationItemMenuStructure","triggerContent","setHeight","setZoomLevel","searchID","setSearchID","setOverflow","el","resizeListener","browserZoomLevel","devicePixelRatio","scrollListener","body","scrollTop","documentElement","textValue","inputElement","inputValue","elementClassName","primaryMenuItem","NavigationItemTray","closeMainNavigation","handleLinkClick","columnModel","isColumnGray","elementModel","NavigationItemMenu","NavigationAccordionItem","NavigationAccordionLinkItem","breakpointLg","handleBodyScroll","elementClassList","baseElementClassName","navigationItemModel","LogoList","isAnyOpen","some","isAnyThirdOpen","height1","height2","MenuTriggerContentWithIcon","iconValue","QueryParamsConst","getQuery","useQueryParams","defaultVal","getQueryStringVal","setQuery","newVal","trim","set","delete","Suggestions","suggestionQuery","contextId","minimalLength","onUpdateQuery","suggestions","setSuggestions","suggestionApiUrl","fetch","res","ok","json","Error","status","catch","updateSuggestions","suggestion","SearchMenu","submitUrl","page","setPage","perPage","queryKey","pfeInputRef","formRef","inputVal","setInputVal","setSuggestionQuery","isSuggestionsComponentVisible","setIsSuggestionsComponentVisible","warn","updateSuggestionsQuery","handleClickOutside","has","append","dispatchEvent","Event","disabled","itemId","q","SearchLink","dispatchToProvider","MenuOverlay","hidden","NavigationItemLink","linkField","textField","isActive","NavigationItem","isSticky","navigationVisibility","setNavigationVisibility","loadingDiv","rootElement","removeProperty","breakpointMd","wrapperClassName","HeroBannerModel","HeroBanner","variation","Variation","getVariation","HeightSize","getHeight","slideInfo","carousalType","mediaVisible","setMediaVisible","textColor","useVideo","prevState","showEyeBrowText","data-text-color","networkSpeed","poster","preload","muted","playsInline","loop","encode","HeroCarouselArrow","HeroCarouselScrollSymbol","testNetworkSpeed","NetworkSpeed","checkDownloadSpeed","mbps","getNetworkDownloadSpeed","showCarouselOverlay","goNext","goPrevious","setNetworkSpeed","videoIsPresent","response","carousel","itemFields","interval","stopOnHover","fieldsMock","colorMapper","sitecoreColor","HeroCarousel","mappedFields","sitecoreItems","Video","fieldMapper","CarouselType","HighlightsModel","HighlightsCardList","highlights","dynamicHeight","setDynamicHeight","widthRef","setWidth","handleFirstComponentMargin","getCurrentWidthAndHeight","forceVisible","handleDynamicHeight","section","setMargin","getDynamicHeight","getElementsByName","offsetHeight","currentWidth","clientWidth","topValue","targetlink","HistoryTabs","tabs","borderTop","setIndex","setTab","onScroll","scrollRef","suggestScroll","setSuggestScroll","updateSuggestedScroll","scrollWidth","borderBottom","HistoryBlock","isScrolling","enteredWaypoint","setEnteredWaypoint","onEnter","bottomOffset","textAlign","History","cluster","scrollIntoView","block","CustomScrollMarker","topOffset","innerRef","historyIndex","setHistoryIndex","selectedTab","setSelectedTab","setTabs","setIsScrolling","formattedTabs","selfIndex","entries","entry","IconButtonModel","Label","getPrvacyPage","downloadLink","buttonPdf","currentTarget","print","IFrameMock","componentName","IFrame","KeepInTouchModel","SocialLink","KeepInTouchForm","KeepInTouch","socialText","showForm","socialMediaTitle","LanguageDropdownModel","getDropdownList","Languages","undifinedServer","langValue","localStorage","getItem","select","elementValue","selectedLangValue","setItem","redirectFromSelect","LangModel","withRouter","langs","setLangs","langChange","setLangChange","tooltipRef","tooltipShown","langRef","elementInViewport","bounding","left","right","bottom","innerHeight","clientHeight","showLang","allLangs","langSelector","currentLang","prevLang","changeLang","timerHide","timerShow","Tooltip","role","aria-hidden","data-is-active","data-is-focus","headerlinks","imageurl","filterLabels","currentUrl","setCurrentUrl","ModelsListingModel","ModelsListItem","ModelsListing","modelsItems","modelsListData","modelsItem","cardData","setCardData","selectedLabel","setSelectedLabel","reSelect","setReSelect","isReadMoreLink","FilterNavData","FilterFieldType","FilterType","searchProps","Value","MappingName","filteredData","filteredDateData","getActiveCls","NavbarLabel","filterLabel","TitleIcon","TitleLink","NavigationLinkListModel","getNavigationList","Links","scrollToTop","getElement","offsetTop","scrollInit","hashTag","getHashId","getAnchorHashItem","SecondaryLinks","secondItems","IsInternalAnchor","NewsletterConfirmationModel","Description","NewsletterConfirmation","PageTitleModel","Sections","PrivacyBannerModel","SubTitle","PrivacyBottomBannerModel","PrivacyFilterModel","LeftFilterLabel","RightFilterLabel","LeftFilterValues","RightFilterValues","SubmitButtonLink","Placeholder","selectBrand","selectLocal","filterBtn","filterButtonSubmit","defdaultHref","submitButtonLink","setNewUrl","leftFilterLabel","leftFilterUrl","rightFilterLabel","rightFilterUrl","conditionsAggregator","conditionFields","conditions","fieldValues","buildConditions","fieldConditions","fieldItem","conditionItem","fieldId","actions","actionItem","matchTypeId","actionTypeId","aggrigate","conditionSettings","fieldKey","originalFields","hideButton","JssFormKey","captcha","loader","showsection","removeError","customError","disableButton","rootReducer","ActionPayload","payload","aggregator","assign","cloneDeep","random","MutatedFieldCollection","originalFieldsCollection1","findSectionField","hasOwnProperty","innerField","mutatedSection","IsVisible","store","createStore","composeWithDevTools","applyMiddleware","thunk","updateFields","updateCustomError","updateHideButton","UpdateConditionalFieldValue","UpdateShowSectionStatus","UpdateDisableButtonState","BaseTextField","tracker","_value","errors","fieldValidationErrorsComponent","isValid","useDispatch","useSelector","hasFocus","setHasFocus","FieldValidationErrors","hasValueOrFocus","hasAnyError","valueField","emailRegex","hasCustomError","htmlFor","onFocus","onFocusField","onBlur","onBlurField","TextField","FileUpload","t","useTranslation","fileName","setFileName","accept","allowedContentTypes","multiple","isMultiple","files","filePath","fileExtension","EmailField","NumberField","TelephoneField","PasswordField","hasVisiblePassword","setHasVisiblePassword","MultipleLineTextField","rows","maxLength","CheckboxField","IsChecked","ChangedChecked","Dropdownfield","setDdlValue","showEmptyItem","unshift","expires","reload","ACTION_CONTANTS","MATCH_TYPE_CONTANTS","OPERATOR_CONSTANTS","validate","operator","valueAgainst","operators","matchingTypes","shouldHide","operatorId","actionType","handleActionType","SectionFeild","fieldFactory","stateFieldValues","stateConditions","IsSectionHide","checkConditions","cssClass","checkBoxListField","columnNumber","marginBottom","marginTop","paddingRight","Checkboxitems","columnCount","chkbxTds","v","originalFieldValue","changedElement","callback","handleOnChange","checkBoxtds","generateCheckBoxes","RadioButtonListField","newValue","valid","errorMessages","required","TextViewField","ReCaptcha","expired","setExpired","publicKey","defer","sitekey","RichText","richTextField","FieldTypesC","FieldTypes","Captcha","defaultFieldFactory","createDefaultFieldFactory","setComponent","SingleLineText","Email","Telephone","Password","MultipleLineText","Checkbox","DropdownList","Section","CheckboxList","RadioButtonList","Recaptcha","InnerContentTypes","FieldValidationError","error","FieldWrapper","hasRadioBtn","fieldTypeItemId","JssForm","time","jssForm","setLoader","rError","updateRemoveError","cError","form","nextForm","collectCurrentFieldValues","formData","serializeForm","submitButtonName","submitButton","languageSelected","elementWithCSSClass","findElementWithCSSClass","obj","foundElement","mergeOverwritingExisting","submitForm","fetcher","formFetcher","ErrorElToBeFocused","success","onRedirect","validationErrors","stateUpdate","setState","fieldEl","focus","resetFieldsState","message","Form","connect","Spinner","isContact","formItemId","sitecoreApiHost","sitecoreApiKey","errorComponent","fieldWrapperComponent","fieldWrapper","JssFormDisplay","fieldsData","PrivacyForm","contactForm","metadata","PrivacyStatementModel","privacyContent","privacyStatementTitle","languageCollection","changeLanguageTitle","languageTitle","Accordion","accordionContentTitle","accordionContentDetail","SectionContent","ItemContent","contentDetail","anchorContentTitle","Dropdown","queries","go","updateUrlQueryStringParams","values","SectionTabs","contentWrapperRef","privacyContentItems","activeItem","setActiveItem","timmerRef","isFromClick","setIsFromClick","isFromClickRef","handleScroll","delay","debounceHandler","contentTabs","tabsCount","contentWrapperTop","ele","scrollItem","DesktopPrivacyStatement","defaultLanguageTitle","detectScrollDirectionForNavigationBar","stickyWrapperEle","scrollPosition","header","bodyScrollPosition","elementDim","elementSticky","stickyWrapperHeight","handleScrollUp","elementStickyVisible","thresholdTop","handleScrollDown","useStickyWrapper","setStickyWrapperEle","NavigationBar","scrollEventListner","sectionHighlightTabHeight","_activeTab","detectActiveTab","NavigationTabs","sticky","MobilePrivacyStatement","PrivacyStatement","ProductIntroModel","fullAlt","ProductIntro","imageAlt","Redirectww1Component","newPath","hostname","RelatedLinksModel","RelatedLinksList","RTEModel","RTE","RTEMobile","desktopRef","mobileRef","hydrate","islangSelector","hrefun","from","getAttribute","bind","IslangSelector","html","mobileHtml","Pagination","currentPage","goToPage","pages","pagesArr","pageToCheck","acc","lastEl","handlePageClick","SearchFilterDropdown","dataVal","labelVal","setUpdateVal","reusultVal","SearchApiModel","totalSearchResults","highlight","PDFLink","PDFSize","AttachmentName","PDFanchor","Sort","ReadMoreText","Pdflabel","PdfIcon","Filterlabel","Sortlabel","filters","setFilters","sort","setSort","counter","goToNewSearch","backgroundColor","results","selectedPage","bottomPadding","upperPadding","num","pageSelected","setPageSelected","stroke-width","stroke-linecap","stroke-linejoin","p","itemID","queryText","itemPerPage","isPressRelease","setsearchFilter","concat","apidata","numberOfResults","hasSearched","searchSitecore","r","SectionListModel","Layout","getSectionsList","layout","BodyText","SummarySpecs","summarySpecs","ProductCard","thumbnailAlt","baseUrl","encodeURI","SeriesListingModel","total","SeriesListing","productCard","SimpleCardList","GeneralLink","Spacer","heightPX","HeightInPixels","SpecialOffersSlideTypeModel","isExpEditorEnabled","SampleNextArrow","SamplePrevArrow","swipe","dotsClass","Caption","SplitModuleMock","SplitModuleModel","AlignToTextModule","videoHeading","videoSubHeading","imagePosition","videoid","hasVideo","useMeasure","containerRef","minHeight","videoId","opts","playerVars","mute","StockFeed","MILabel","NYLabel","Comment","HideMILabel","MarketFeed","market","getBaseImgSrc","mockCardList","mockTitle","mockContent","mockLink","mockEyebrow","StoriesModel","all","redbutton","Categories","dayjs","extend","utc","StoriesCard","locale","dateFormatByLocale","format","defaultFormat","formatted","imageSrc","imageWidth","imageHeight","slidesAmount","isSliderNeeded","setCurrentPage","getProgress","onAfterChange","newIndex","getIsDisabled","initialSlide","storiesMapper","flex","SubscribeForm","shouldRenderAll","activeYear","setActiveYear","handleYearClick","newActiveYearIndex","placeholderName","PrintProps","componentProps","JSON","stringify","TestNoParams","FieldsPart","heading","routableSitecoreLink","border","TestWithParams","ParamsPart","testParam","TextDropdownModuleModel","textValueList","LearnMoreAbout","placeholderLabel","contentRef","showRef","selectedOption","ID","TextModuleMock","textPosition","PrimaryLink","SecondaryLink","Alignment","TextModuleModel","AlignToAccordion","Abstract","Larger","maxWidth","abstract","textSize","TimerBannerModel","Timer","timer","redirectlink","backgroundimage","informationtext","showcookielink","footerlinks","cookiepolicytext","columnDirection","colDefinition","VerticalNavBar","setCurrent","allSection","setAllSection","isManualScroll","check","isInViewport","tempArr","placeholders","tooltip","rect","lazyArr","div","setLazyflag","timmimg","inline","Fragment","VideoPlayerModel","VidoeUrl","Preview","playVedio","Youtube","previewUrl","rawUrl","showPreview","setshowPreview","iframeRef","loadOnce","data-ot-ignore","onLoad","Vimeo","Custom","vedioRef","Modal","show","setShow","onClose","getYoutubeUrl","getRawYoutubeUrl","getYimeoUrl","getRawYimeoUrl","getCustomeUrl","getPreviewUrl","splashImage","getMediaPreviewUrl","setVisibility","provider","cta","Map","componentFactory","AccordionList","AccordionMultiplePDF","Breadcrumb","CardCarousel","CardLink","CardList","CardListExtra","CarouselCardHighlights","CollapsibleTextModule","ColumnCard","ContentHubSeriesOverview","ContentHubSpecialOffers","Disclaimer","DownloadList","Header_old","Highlights","HistoryModule","IconButton","LanguageDropdown","LanguageSelector","LightWeightHeader","LinkList","NavigationFilterCardList","NavigationLinkList","PageTitle","PrivacyBanner","PrivacyBottomBanner","PrivacyFilter","RelatedLinks","SearchBox","SearchModule","SectionList","SitecoreJssForm","SpecialOffers","SplitGallery","SplitGalleryContainer","SplitModule","Stories","TabList","TextDropdown","TextModule","TimerBanner","TwoColumn","dataFetcher","axios","method","withCredentials","StickyTopWrapper","matomoId","matomoTagManagerContainer","scriptURL","ContextExtensions","onetrustcookie","mounted","forceRender","setForceRender","g","favicon","_mtm","parentNode","_paq","u","customElements","whenDefined","PfeIcon","newResolveNameFn","iconName","setName","addIconSet","defaultThemeSetInfo","resolveIconName","setLoading","LoadingOverlay","version","cx","cy","attributeName","calcMode","dur","repeatCount","bodyscript","MetaTitle","ExtendedMetaData","BrandName","property","OfficialLogo","sameAs","SocialMediaLinks","charset","data-document-language","data-domain-script","CanonicalLink","AlternateLinks","hreflang","firstItem","cloneElement","vbar","NotFound","site","RouteHandler","extractRouteData","sitecore","notFound","defaultLanguage","config","routeData","componentIsMounted","languageIsChanging","updateLanguage","ssrRenderComplete","updateRouteData","setSsrRenderComplete","sitecoreRoutePath","sitecoreRoute","siteName","jssAppName","showLoader","extLanguage","getLangFromCookie","privacyFormLanguage","fetchOptions","layoutServiceConfig","querystringParams","sc_lang","sc_apikey","sc_site","dataApi","fetchRouteData","getRouteData","updateSitecoreContext","hideLoader","newLanguage","i18n","changeLanguage","forceUpdate","previousProps","existingRoute","newRoute","hasLangChanged","updatable","routePatterns","AppRoot","contextFactory","SitecoreContextFactory","ssrState","setSitecoreContext","Router","graphQLClient","routeRenderFunction","client","routePattern","renderFunction","initLanguage","__JSS_STATE__","ssrRawJson","parse","dictionary","initialGraphQLState","APOLLO_STATE","endpoint","ssr","initialCacheState","createPersistedQueryLink","BatchHttpLink","uri","credentials","cache","InMemoryCache","fragmentMatcher","IntrospectionFragmentMatcher","introspectionQueryResultData","ApolloClient","ssrMode","ssrForceFetchDelay","restore","GraphQLClientFactory","graphQLEndpoint","debug","lng","fallbackLng","load","useCookie","interpolation","escapeValue","isInitialized","addResourceBundle","use","initReactI18next","init","dictionaryServicePath","backend","loadPath","parsedData","phrases","fetchBackend","BrowserRouter","module","exports"],"mappings":"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","file":"static/js/3.2cbf6b5d.chunk.js","sourcesContent":["export const anchorWithId: (href: string, anchor?: string) => string = (\r\n href,\r\n anchor\r\n) => {\r\n return anchor?.length > 0 ? `${href}#${anchor}` : href\r\n}\r\n","import React, {\r\n FC,\r\n memo,\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from 'react'\r\nimport {\r\n Text,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n Link\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport {\r\n AttachmentFields,\r\n AccordionListProps,\r\n} from './types/AccordionList.types'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\nimport './index.scss'\r\n\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport { AttachmentLinkField } from '../../types/types'\r\n\r\nconst convertFileSize = (sizeInBytes) => {\r\n if (sizeInBytes) {\r\n const fielSize = (sizeInBytes / (1024 * 1024)).toFixed(2)\r\n const fielSizeNumber = parseInt(fielSize)\r\n if (fielSizeNumber < 1) {\r\n return (sizeInBytes / 1024).toFixed(2) + ' ' + ' KB'\r\n } else return (sizeInBytes / (1024 * 1024)).toFixed(2) + ' ' + 'MB'\r\n }\r\n}\r\n\r\nconst AccordionList: FC = (props) => {\r\n const downloadListItems = props.fields?.Attachments\r\n const downloadListTitle = props.fields?.Title\r\n const loadMoreText = props.fields?.['Load More Text']\r\n const numberOfDoc = parseInt(props.fields?.NumberOfAttachments?.value)\r\n\r\n const [currentDocToShow, setloadMore] = useState(null)\r\n\r\n useEffect(() => {\r\n setloadMore(numberOfDoc)\r\n }, [])\r\n\r\n const ItemAccordion: FC<{ item: AttachmentFields }> = useMemo(() => {\r\n return function Component({ item }) {\r\n const [isOpen, setIsOpen] = useState(false)\r\n\r\n const handleAccordionClick = useCallback(() => {\r\n setIsOpen((prevValue) => !prevValue)\r\n }, [])\r\n\r\n const accordionRef = useRef()\r\n\r\n useEffect(() => {\r\n console.log(accordionRef.current.scrollHeight)\r\n }, [])\r\n\r\n const LinkButton: FC<{ attachmentLinkField: AttachmentLinkField }> =\r\n useMemo(() => {\r\n return function Component({ attachmentLinkField }) {\r\n return (\r\n
\r\n
\r\n
{attachmentLinkField?.value?.displayName}
\r\n {attachmentLinkField?.value?.src && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n <>\r\n \r\n

\r\n \r\n \r\n \r\n \r\n

\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n )\r\n }\r\n }, [])\r\n\r\n const Component: FC = useMemo(() => {\r\n return function Component() {\r\n return (\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n

\r\n \r\n

\r\n\r\n {item.fields?.['Attachment Link'].value && (\r\n \r\n )}\r\n\r\n {item.fields?.['Attachment Link Second']?.value && (\r\n \r\n )}\r\n\r\n {item.fields?.['Attachment Link Third']?.value && (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n )\r\n }\r\n }, [item, isOpen, handleAccordionClick])\r\n\r\n return (\r\n \r\n \r\n \r\n )\r\n }\r\n }, [])\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n
\r\n \r\n\r\n {downloadListItems\r\n .slice(0, currentDocToShow)\r\n .map((item, index: number) => (\r\n \r\n \r\n
\r\n ))}\r\n\r\n {currentDocToShow < downloadListItems.length ? (\r\n setloadMore(currentDocToShow + numberOfDoc)}\r\n >\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n ) : null}\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(memo(AccordionList))\r\n","import React, { FC, useCallback, useMemo, useRef, useState } from 'react'\r\nimport {\r\n isExperienceEditorActive,\r\n Placeholder,\r\n RichText,\r\n withSitecoreContext,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { AccordionMultiplePDFProps } from './types/AccordionMultiplePDF.types'\r\nimport '../AccordionList/index.scss'\r\n\r\nconst AccordionMultiplePDF: FC = ({\r\n fields: { List } = { List: [] },\r\n rendering,\r\n sitecoreContext,\r\n}) => {\r\n const isExperienceEditor = isExperienceEditorActive()\r\n\r\n const shouldOpenAll: boolean = useMemo(\r\n () => isExperienceEditor || sitecoreContext?.pageEditing,\r\n [sitecoreContext]\r\n )\r\n\r\n const ItemAccordion: FC<{ index: number; title: string }> = useMemo(() => {\r\n return function Component({ index, title }) {\r\n const [isOpen, setIsOpen] = useState(shouldOpenAll)\r\n\r\n const handleAccordionClick = useCallback(() => {\r\n setIsOpen((prevValue) => !prevValue)\r\n }, [])\r\n\r\n const accordionRef = useRef()\r\n\r\n const Component: FC = useMemo(() => {\r\n return function Component() {\r\n return (\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n 0 ? title : '! please add title !',\r\n }}\r\n className=\"download__accordion__accordion_title\"\r\n />\r\n\r\n \r\n
\r\n
\r\n \r\n \r\n )\r\n }\r\n }, [isOpen, handleAccordionClick])\r\n\r\n return (\r\n \r\n \r\n \r\n )\r\n }\r\n }, [rendering, shouldOpenAll])\r\n\r\n return (\r\n
\r\n
\r\n {List.map(({ fields: { Title } }, index: number) => (\r\n \r\n \r\n
\r\n ))}\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(AccordionMultiplePDF)\r\n","import React from 'react'\r\nimport LazyLoad from 'react-lazyload'\r\nimport { withSitecoreContext } from '@sitecore-jss/sitecore-jss-react'\r\nimport '../../styles/@shared/lazy-section.scss'\r\n\r\nconst LazySection = ({\r\n height = 300,\r\n offset = -100,\r\n children,\r\n sitecoreContext,\r\n id = undefined,\r\n}) => {\r\n return (\r\n \r\n {sitecoreContext?.pageEditing ? (\r\n children\r\n ) : (\r\n \r\n {children}\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(LazySection)\r\n","import React, { useEffect } from 'react';\r\nimport { AdvisorFields } from './types';\r\nimport LazySection from '../../react-only-components/LazySection';\r\nimport './styles.scss';\r\n\r\nconst Advisor = (sitecoreFields: AdvisorFields): JSX.Element => {\r\n const featuredImage = sitecoreFields.fields['Advisor Image']?.value ?? { src: '//localhost:8085/images/Advisor.jpg' };\r\n const proceedButtonText = sitecoreFields.fields['Proceed Button Text']?.value || 'Proceed';\r\n const scriptUrl = sitecoreFields.fields['Script Url']?.value || '//stage.excentos.com/Corporate_agriculture/DE/app_corporate-Tractor-Guide/en_GB/loadadvisor?theme=default';\r\n\r\n const selectors = {\r\n advisorId: 'xc_application',\r\n advisorScriptId: 'advisor-sript',\r\n paginationBarId: 'advisor-pagination-bar',\r\n paginationCurrentSlideId: 'advisor-pagination-counter',\r\n paginationBackButtonId: 'advisor-pagination-back-button',\r\n loadingCircle: '#xc_application .sk-fading-circle',\r\n radioButtons: '#xc_wizard_container_1 .xc_tile__footer-wrapper',\r\n whatAreYouLookingForRadio: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.lmyPrR.xc_wizard-body > section.xc_slide-container.xc_slide-container--current > div > div.xc_stage-wrapper__body > div.xc_stage-wrapper__children > div.xc_question-wrapper > div.xc_question-body-wrapper > div > div',\r\n wrapper: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper',\r\n slides: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > .xc_wizard-body .xc_slide-container',\r\n backButton: '#xc_wizard_container_1 .xc_nav-button.xc_previous-button',\r\n nextButton: '#xc_wizard_container_1 .xc_nav-button.xc_next-button',\r\n powerRangeYesButton: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.lmyPrR.xc_wizard-body > section.xc_slide-container.xc_slide-container--current > div > div.xc_stage-wrapper__body > div.xc_stage-wrapper__children > div:nth-child(1) > div.xc_question-body-wrapper > div:nth-child(1) > div',\r\n powerRangeNewOptionsButton: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.lmyPrR.xc_wizard-body > section.xc_slide-container.xc_slide-container--current > div > div.xc_stage-wrapper__body > div.xc_stage-wrapper__children > div.xc_question-wrapper > div.xc_question-body-wrapper > div:nth-child(2) > div',\r\n powerRangeRadioButtons: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.lmyPrR.xc_wizard-body > section.xc_slide-container.xc_slide-container--current > div > div.xc_stage-wrapper__body > div.xc_stage-wrapper__children > div:nth-child(2) > div.xc_question-body-wrapper > div',\r\n powerRangeRadioButtonsWrapper: `#xc_wizard_container_1 [data-id='xcAjaxClient.wizard.power_range.facet_51.pwr_range']`,\r\n restartButton: '#xc_wizard-header > div > div.gjo8co-0.d2goba-0.igaRF.xc_header-button.xc_restart-button',\r\n restartButtonId: 'advisor-restart',\r\n lastSlide: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.RInbK.xc_wizard-body > div.xc_stage-wrapper.xc_endgame-flex-container__wrapper.xc_stage-wrapper--no-padding > div',\r\n sliderWrapper: '#xc_wizard_container_1 > div.ycc1e3-0.hdbgso.xc_sized-wrapper > div.sc-13bvdeq-0.RInbK.xc_wizard-body'\r\n }\r\n\r\n\r\n let currentSlide = 0;\r\n const slideCount = 5;\r\n let radioButtons: NodeList = undefined;\r\n\r\n const loadScript = (src: string) =>\r\n new Promise((resolve, reject) => {\r\n let tag = document.createElement('script');\r\n tag.async = false;\r\n tag.id = selectors.advisorScriptId;\r\n tag.src = src;\r\n tag.onload = resolve;\r\n tag.onerror = reject;\r\n document.getElementsByTagName('body')[0].appendChild(tag);\r\n });\r\n\r\n const waitAdvisorToLoad = (): Promise =>\r\n new Promise((resolve) => {\r\n const observer = new MutationObserver(() => {\r\n if (document.querySelector(selectors.loadingCircle) === null) {\r\n observer.disconnect();\r\n resolve(true);\r\n }\r\n });\r\n const config = { attributes: true, childList: true, subtree: true };\r\n observer.observe(document.getElementById(selectors.advisorId), config);\r\n });\r\n\r\n const updateSlideAfterClick = async () => {\r\n await waitSliderToUpdate();\r\n updateSlide();\r\n }\r\n\r\n const initializeSlide = () => {\r\n if (currentSlide < 6) {\r\n appendPagination();\r\n bindBackButton();\r\n }\r\n else {\r\n bindBackButton();\r\n }\r\n updateSlide();\r\n }\r\n\r\n const loadAdvisor = async () => {\r\n await loadScript(scriptUrl);\r\n await waitAdvisorToLoad();\r\n initializeSlide();\r\n }\r\n\r\n const getCurrentSlideNumber = () => {\r\n let number = 0; //last slide is not in slider\r\n const slides = document.querySelectorAll(selectors.slides)\r\n slides.forEach((slide, index) => {\r\n if (slide.classList.contains('xc_slide-container--current')) {\r\n number = index + 1;\r\n }\r\n });\r\n return slides.length > 0 ? number : 6;\r\n }\r\n\r\n const getCurrentSlide = (): HTMLElement => {\r\n let currentSlide;\r\n const slides = document.querySelectorAll(selectors.slides)\r\n slides.forEach((slide, index) => {\r\n if (slide.classList.contains('xc_slide-container--current')) {\r\n currentSlide = slide;\r\n }\r\n });\r\n return slides.length > 0 ? currentSlide : document.querySelector(selectors.lastSlide);\r\n }\r\n\r\n const waitSliderToUpdate = (): Promise =>\r\n new Promise((resolve) => {\r\n const lastSlide = getCurrentSlide();\r\n const slidesObserver = new MutationObserver(() => {\r\n if (getCurrentSlide() !== lastSlide)\r\n resolve();\r\n if (document.querySelectorAll(selectors.slides).length < 1)\r\n resolve();\r\n });\r\n const config = { attributes: true, childList: true, subtree: true };\r\n slidesObserver.observe(document.querySelector(selectors.slides).parentElement, config);\r\n });\r\n\r\n const waitPowerRangeSlideToUpdate = (): Promise =>\r\n new Promise((resolve) => {\r\n const slideObserver = new MutationObserver(() => {\r\n if (document.querySelector(selectors.powerRangeRadioButtonsWrapper))\r\n resolve();\r\n });\r\n const config = { attributes: true, childList: true, subtree: true };\r\n slideObserver.observe(getCurrentSlide(), config);\r\n });\r\n\r\n const nextButtonClick = () => {\r\n let nextButton: HTMLElement = document.querySelector(selectors.nextButton);\r\n nextButton.click();\r\n updateSlideAfterClick();\r\n }\r\n\r\n const backButtonClick = () => {\r\n const backButton: HTMLElement = document.querySelector(selectors.backButton);\r\n backButton.click();\r\n updateSlideAfterClick();\r\n }\r\n\r\n const bindBackButton = () => {\r\n document.getElementById(selectors.paginationBackButtonId).addEventListener(\"click\", async () => {\r\n backButtonClick();\r\n });\r\n }\r\n\r\n const bindClickOnRadioButtons = () => {\r\n radioButtons = document.querySelectorAll(selectors.radioButtons);\r\n radioButtons.forEach(button => {\r\n button.addEventListener('click', () => {\r\n nextButtonClick();\r\n });\r\n })\r\n }\r\n\r\n const bindClickOnWhatAreYouLookingRadioButtons = () => {\r\n radioButtons = document.querySelectorAll(selectors.whatAreYouLookingForRadio);\r\n radioButtons.forEach(button => {\r\n button.addEventListener('click', () => {\r\n nextButtonClick();\r\n });\r\n })\r\n }\r\n\r\n const bindClickOnPowerRangeRadioButtons = () => {\r\n radioButtons = document.querySelectorAll(selectors.powerRangeRadioButtons);\r\n radioButtons.forEach(button => {\r\n button.firstChild.addEventListener('click', () => {\r\n nextButtonClick();\r\n });\r\n })\r\n }\r\n\r\n const appendImage = (): void => {\r\n let image: HTMLElement = document.createElement('div');\r\n image.className = 'xc_featured-image-wrapper';\r\n image.innerHTML = `\"${featuredImage`;\r\n let currentSlideContainer = getCurrentSlide().firstChild.firstChild;\r\n currentSlideContainer.insertBefore(image, currentSlideContainer.firstChild);\r\n }\r\n\r\n const appendProceedButton = () => {\r\n let proceedButton: HTMLElement = document.createElement('button');\r\n proceedButton.className = 'xc_proceed-button';\r\n proceedButton.innerHTML = `${proceedButtonText}`;\r\n let currentSlideContainer = getCurrentSlide().firstChild.firstChild.lastChild;\r\n currentSlideContainer.appendChild(proceedButton);\r\n proceedButton.addEventListener('click', () => {\r\n nextButtonClick();\r\n })\r\n }\r\n\r\n const bindYesButton = () => {\r\n const yesButton = document.querySelector(selectors.powerRangeYesButton);\r\n yesButton.addEventListener('click', async () => {\r\n await waitPowerRangeSlideToUpdate();\r\n bindClickOnPowerRangeRadioButtons();\r\n })\r\n }\r\n\r\n const bindNewOptionsButton = () => {\r\n document.querySelector(selectors.powerRangeNewOptionsButton).addEventListener('click', () => {\r\n nextButtonClick();\r\n })\r\n }\r\n\r\n const appendPagination = () => {\r\n currentSlide = getCurrentSlideNumber();\r\n let pagination: HTMLElement = document.createElement('div');\r\n pagination.className = 'xc_pagination';\r\n pagination.innerHTML = `\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ${currentSlide}/${slideCount}\r\n
\r\n `;\r\n const wrapper: HTMLElement = document.querySelector(selectors.wrapper);\r\n wrapper.appendChild(pagination);\r\n }\r\n\r\n const removePagination = () => {\r\n document.getElementById(selectors.paginationBarId)?.parentElement?.parentElement?.remove();\r\n }\r\n\r\n const addResetButton = () => {\r\n if (!document.getElementById(selectors.restartButtonId)) {\r\n const restartButtonCopy: HTMLElement = document.querySelector(selectors.restartButton);\r\n let restartButton: HTMLElement = document.createElement('button');\r\n restartButton.className = 'xc_restart-button';\r\n restartButton.innerHTML = ` Restart`;\r\n let currentSlideContainer = document.querySelector(selectors.sliderWrapper);\r\n currentSlideContainer && currentSlideContainer.appendChild(restartButton);\r\n restartButton.addEventListener('click', () => {\r\n restartButtonCopy.click();\r\n })\r\n }\r\n }\r\n\r\n const updatePagination = () => {\r\n currentSlide = getCurrentSlideNumber();\r\n document.getElementById(selectors.paginationBackButtonId).className = `xc_pagination-back-button ${currentSlide < 2 ? \"xc_pagination-back-button--hidden\" : \"\"}`;\r\n document.getElementById(selectors.paginationBarId).className = `xc_pagination-bar-line xc_pagination-bar-line-${currentSlide}`;\r\n document.getElementById(selectors.paginationCurrentSlideId).innerHTML = currentSlide.toString();\r\n }\r\n\r\n const updateSlide = () => {\r\n const currentSlide = getCurrentSlideNumber();\r\n if (currentSlide < 6) {\r\n updatePagination();\r\n appendImage();\r\n }\r\n if (currentSlide == 1 || currentSlide == 2) {\r\n bindClickOnRadioButtons();\r\n }\r\n if (currentSlide == 3) {\r\n appendProceedButton();\r\n }\r\n if (currentSlide == 4) {\r\n bindYesButton();\r\n bindNewOptionsButton();\r\n if (document.querySelector(selectors.powerRangeRadioButtonsWrapper)) {\r\n bindClickOnPowerRangeRadioButtons();\r\n }\r\n }\r\n if (currentSlide == 5) {\r\n bindClickOnWhatAreYouLookingRadioButtons();\r\n }\r\n if (currentSlide == 6) {\r\n removePagination();\r\n addResetButton();\r\n }\r\n }\r\n\r\n function LoadAdvisor() {\r\n loadAdvisor();\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n return (\r\n \r\n
\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default Advisor;\r\n","import React, { FunctionComponent, useMemo } from 'react'\r\nimport { Text, Link } from '@sitecore-jss/sitecore-jss-react'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\nimport {\r\n BrandPortfolioProps,\r\n BrandPortfolioCard,\r\n} from './types/BrandPortfolio.types'\r\nimport './BrandPortfolio.scss'\r\n\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\n\r\nconst emptyElement: BrandPortfolioCard = {\r\n id: null,\r\n fields: {\r\n Image: { value: {} },\r\n Link: { value: {} },\r\n },\r\n}\r\n\r\nconst BrandPortfolio: FunctionComponent = ({\r\n fields: { eyebrow, Title, Subtitle, link, Cards, IsTwoColumns },\r\n}) => {\r\n const CardsWithImprovedLayout = useMemo(\r\n () =>\r\n Cards.length === 4 && IsTwoColumns.value\r\n ? [...Cards.slice(0, 2), emptyElement, ...Cards.slice(2)]\r\n : Cards,\r\n [Cards]\r\n )\r\n\r\n console.log('check istowowoow ',IsTwoColumns);\r\n console.log('check eyebrow ' + eyebrow);\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n {CardsWithImprovedLayout.map(\r\n (\r\n {\r\n id,\r\n fields: {\r\n Image: { value },\r\n Link: {\r\n value: { href, anchor },\r\n },\r\n },\r\n },\r\n idx\r\n ) => (\r\n <>\r\n {/* && !IsTwoColumns.value */}\r\n
\r\n {id && (\r\n \r\n {value.alt}\r\n \r\n )}\r\n
\r\n \r\n )\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default BrandPortfolio\r\n","import React, { useMemo } from 'react'\r\nimport { withSitecoreContext } from '@sitecore-jss/sitecore-jss-react'\r\n\r\nimport './index.scss'\r\n\r\nimport { BreadcrumbProps } from './types/Breadcrumb.types'\r\nimport LazySection from '../../react-only-components/LazySection'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\nconst Breadcrumb = (props: BreadcrumbProps) => {\r\n const _className = useMemo(\r\n () =>\r\n `breadcrumb ${\r\n props.params?.Position?.length > 0\r\n ? `breadcrumb--${props.params?.Position} breadcrumb--${props.params.Color}`\r\n : ''\r\n }`,\r\n []\r\n )\r\n\r\n return (\r\n \r\n {props?.fields && (\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(Breadcrumb)\r\n","export const localstorageService = () =>\r\n typeof localStorage !== 'undefined'\r\n ? localStorage\r\n : {\r\n clear: () => undefined,\r\n getItem: () => undefined,\r\n key: () => null,\r\n removeItem: () => undefined,\r\n setItem: () => undefined,\r\n }\r\nexport const windowService = () => (typeof window !== 'undefined' ? window : {})\r\nexport const documentService = () =>\r\n typeof document !== 'undefined' ? document : {}\r\n\r\nexport const getExpiryDate = (day) => {\r\n var d = new Date()\r\n d.setTime(d.getTime() + day * 24 * 60 * 60 * 1000)\r\n var expires = 'expires=' + d.toUTCString()\r\n return expires\r\n}\r\n\r\nexport const getCookieValue = (name) => {\r\n let result = document.cookie.match(\r\n '(^|[^;]+)\\\\s*' + name + '\\\\s*=\\\\s*([^;]+)'\r\n )\r\n return result ? result.pop() : ''\r\n}\r\n","import { useState, useEffect } from 'react';\r\nimport { windowService } from '../../utils/window.utils';\r\n\r\nconst useMediaQuery = (query: string, initialState = false, callbackOnChange = (matches: boolean)=>{}) => {\r\n const [matches, setMatches] = useState(initialState);\r\n\r\n useEffect(() => {\r\n const media = windowService().matchMedia(query);\r\n if (media.matches !== matches) {\r\n setMatches(media.matches);\r\n callbackOnChange(media.matches);\r\n }\r\n const listener = () => setMatches(media.matches);\r\n media.addListener(listener);\r\n return () => media.removeListener(listener);\r\n }, [matches, query]);\r\n\r\n return matches;\r\n};\r\n\r\nexport default useMediaQuery;\r\n","import React, { useCallback } from \"react\";\r\nimport \"./index.scss\";\r\n\r\nexport interface CustomArrowProps {\r\n direction: \"previous\" | \"next\";\r\n onClick?: () => void;\r\n className?: string;\r\n isDisabled?: boolean;\r\n}\r\n\r\nconst CustomArrow = ({\r\n direction,\r\n onClick,\r\n className,\r\n isDisabled = false,\r\n}: CustomArrowProps) => {\r\n const icon = `cnh-chevron-${direction === \"previous\" ? \"left\" : \"right\"}`;\r\n\r\n const handleClick = useCallback(() => {\r\n if (isDisabled) return;\r\n onClick();\r\n }, [isDisabled]);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default CustomArrow;\r\n","import React, { useEffect, useState } from 'react';\r\nimport './styles.scss';\r\n\r\nconst Dots = (props: { class: string }): JSX.Element => {\r\n return ;\r\n};\r\n\r\nconst CustomCarouselDots = (props: {\r\n cardsCount: number;\r\n activeCard: number;\r\n hasAnimation?: boolean;\r\n isDarkMode?: boolean;\r\n}): JSX.Element => {\r\n const dotsArray: JSX.Element[] = [];\r\n const [min, updateMin] = useState(0);\r\n const [max, updateMax] = useState(5); // min 5 cards to be shown\r\n const [changes, updateChanges] = useState(0);\r\n\r\n useEffect(() => {\r\n let initialMax = max;\r\n let initialMin = min;\r\n\r\n if (props.activeCard < initialMin) {\r\n initialMin = props.activeCard;\r\n initialMax = initialMin + 4;\r\n if (initialMax > changes + 1) {\r\n initialMax = changes + 1;\r\n }\r\n }\r\n if (props.activeCard > initialMax) {\r\n initialMax = props.activeCard;\r\n initialMin = initialMax - 4;\r\n if (initialMin < 0) {\r\n initialMin = 0;\r\n }\r\n }\r\n updateMax(initialMax);\r\n updateMin(initialMin);\r\n updateChanges(changes + 1);\r\n }, [props.activeCard, max, min]); // eslint-disable-line\r\n\r\n const getIndicatorClass = (ref: number): string => {\r\n if (ref === props.activeCard) {\r\n return 'active';\r\n }\r\n if (ref >= min && ref <= max) {\r\n return 'std';\r\n }\r\n if (ref === min - 1 || ref === max + 1) {\r\n return 'small';\r\n }\r\n return 'hidden';\r\n };\r\n\r\n for (let i = 1; i <= props.cardsCount; i++) {\r\n dotsArray.push();\r\n }\r\n return (\r\n \r\n {dotsArray}\r\n \r\n );\r\n};\r\n\r\nexport default CustomCarouselDots;\r\n","import React from 'react';\r\nimport CustomCarouselDots from './index';\r\n\r\nconst appendDots = (props: { dots: JSX.Element[]; cardsCount: number; activeCardIndex: number; showCustomDots: boolean }): JSX.Element => {\r\n const { dots, cardsCount, activeCardIndex, showCustomDots } = props;\r\n if (showCustomDots) {\r\n return ;\r\n }\r\n return
    {dots}
;\r\n};\r\n\r\nexport default appendDots;\r\n","/**\r\n *\r\n * @param {String} url\r\n * @return {boolean}\r\n */\r\nfunction isInternalUrl(url: string | undefined): boolean {\r\n if (url) return url.startsWith('/') || url.startsWith('#');\r\n return false;\r\n}\r\n\r\nfunction appendToUrlPath(url: string, add: string): string{\r\n const appendSlash = url => url.endsWith('/') ? url : `${url}/`;\r\n const appendString = add || '';\r\n\r\n if(!url){\r\n return '';\r\n }else if(url.includes('?')){\r\n const urlArray = url.split('?');\r\n\r\n return `${appendSlash(urlArray[0])}${appendString}?${urlArray[1]}`\r\n }else if(url.includes('#')){\r\n const urlArray = url.split('#');\r\n \r\n return `${appendSlash(urlArray[0])}${appendString}#${urlArray[1]}`\r\n }else{\r\n return `${appendSlash(url)}${appendString}`;\r\n }\r\n}\r\n\r\nexport {isInternalUrl, appendToUrlPath};\r\n","import React from 'react';\r\nimport { Link as SitecoreLink } from '@sitecore-jss/sitecore-jss-react';\r\nimport { Link as RouterLink } from 'react-router-dom';\r\nimport {isInternalUrl} from \"../../utils\";\r\n\r\n/** React component that turns Sitecore link values that start are internal into react-router route links */\r\nconst RoutableSitecoreLink = (props: {field: any | undefined, editable?: boolean, [key: string]: any}) => {\r\n const {field, editable, children} = props;\r\n const hasValidHref = field && field.value && field.value.href;\r\n const isEditing = editable && field.editable;\r\n\r\n // only want to apply the routing link if not editing (if editing, need to render editable link value)\r\n if(hasValidHref && !isEditing) {\r\n const value = field.value;\r\n\r\n // determine if a link is a route or not. This logic may not be appropriate for all usages.\r\n if(isInternalUrl(value.href)) {\r\n return (\r\n \r\n {children || value.text || value.href}\r\n \r\n );\r\n }\r\n }\r\n\r\n return ;\r\n};\r\n\r\nexport default RoutableSitecoreLink;\r\n","import {\r\n ImageField,\r\n LinkField,\r\n StringField,\r\n ComponentProps,\r\n AttachmentLinkField,\r\n CheckboxField,\r\n} from '../../../types/types'\r\n\r\nexport type ContactCardsField = {\r\n image?: ImageField\r\n CardImageDesktop?: ImageField \r\n CTA?: LinkField\r\n description: StringField\r\n curriculum?: StringField\r\n curriculumTextModal?: StringField\r\n country?: StringField\r\n designation?: StringField\r\n download?: AttachmentLinkField\r\n SecondaryDownloadLink?: AttachmentLinkField\r\n SecondaryDownloadlinkText: StringField\r\n email?: LinkField\r\n emailText?: StringField\r\n fullname?: StringField\r\n mobile1?: StringField\r\n mobile2?: StringField\r\n ImageMobile?: ImageField\r\n primarylinktarget?: StringField\r\n secondarylinktarget?: StringField\r\n AllowFallbackForMobile?: CheckboxField\r\n TitleButtons?: StringField\r\n Variant?: StringField\r\n ColumnLayout?: ColumnLayout;\r\n}\r\n\r\nexport type ColumnLayout = {\r\n fields: {\r\n Key: StringField;\r\n }\r\n}\r\n\r\nexport interface ContactCardsFields {\r\n id?: string\r\n fields?: ContactCardsField\r\n}\r\n\r\nexport type ContactCards = {\r\n ContactCardTitle: StringField\r\n ContactCardsLists: ContactCardsFields[]\r\n params: {}\r\n Variant?: StringField;\r\n ColumnLayout?: ColumnLayout;\r\n}\r\n\r\nexport enum CardsLayout {\r\n '3ColumnLayout' = \"3-columnLayout\",\r\n '2ColumnLayout' = \"2-columnLayout\",\r\n '1ColumnLayout' = \"1-columnLayout\"\r\n}\r\n\r\n// export interface ContactCardTitle{\r\n// id?: string,\r\n// fields?:ContactCardTitle\r\n// }\r\n\r\nexport interface ContactCardsProps extends ComponentProps {}\r\n","export const Breakpoints: { [key: string]: number } = {\r\n xs: 0,\r\n sm: 576,\r\n md: 768,\r\n lg: 992,\r\n xl: 1200,\r\n xxl: 1600,\r\n};\r\n\r\nexport const BreakpointsInPx: { [key: string]: string } = {\r\n xs: `${Breakpoints.xs}px`,\r\n sm: `${Breakpoints.sm}px`,\r\n md: `${Breakpoints.md}px`,\r\n lg: `${Breakpoints.lg}px`,\r\n xl: `${Breakpoints.xl}px`,\r\n xxl: `${Breakpoints.xxl}px`,\r\n};\r\n","import React, { FunctionComponent } from 'react';\r\nimport { RichText, Link, Image } from '@sitecore-jss/sitecore-jss-react';\r\nimport RoutableSitecoreLink from '../../../../react-only-components/RoutableSitecoreLink';\r\nimport { SpecialOffersSlideModel } from '../../models/cardCarousel.model';\r\nimport useMediaQuery from '../../../../lib/custom-hooks/useMediaQuery';\r\nimport { BreakpointsInPx } from '../../../.././constants/breakpoints.constants';\r\nimport { StringField } from '../../../../types/types';\r\nimport './styles.scss'\r\n\r\nconst CarouselSlide: FunctionComponent<{\r\n model: SpecialOffersSlideModel;\r\n isEE: boolean;\r\n}> = ({ model, isEE }) => {\r\n const isDesktop = useMediaQuery(`(min-width: ${BreakpointsInPx['md']})`);\r\n return (\r\n <>\r\n {model?.badgeLink?.value?.href && model?.badgeLink?.value?.text && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n {isDesktop ?\r\n 0) ? model.image : model.mobileImage}\r\n className={'slide-card__image special-offer-homepage-card__image'}\r\n /> :\r\n 0) ? model.mobileImage : model.image}\r\n className={'slide-card__image special-offer-homepage-card__image'}\r\n />\r\n }\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {(isEE || (model?.buttonPrimary?.value?.text && model?.buttonPrimary?.value?.href)) && (\r\n
\r\n \r\n
\r\n )}\r\n {((model?.type?.value !== 'offerCardWide' && !(model?.buttonPrimary?.value?.text && model?.buttonPrimary?.value?.href)) ||\r\n model?.type?.value === 'offerCardWide') &&\r\n (isEE || (model?.buttonSecondary?.value?.text && model?.buttonSecondary?.value?.href)) && (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default CarouselSlide;\r\n","import { ImageField, LinkField, StringField } from '../../../types/types';\r\nimport {\r\n TSpecialOffersFields,\r\n TSpecialOffersProps,\r\n TSpecialOffersSlideFields,\r\n TSpecialOffersSlideProps,\r\n} from '../types/cardCarousel.types';\r\n\r\nexport class SpecialOffersSlideModel {\r\n private readonly fields: null | TSpecialOffersSlideFields;\r\n private readonly _id?: string;\r\n\r\n constructor(props: TSpecialOffersSlideProps) {\r\n this.fields = props?.fields || null;\r\n this._id = props.id ?? props.dataSource;\r\n }\r\n\r\n get id(): string {\r\n return this._id as string;\r\n }\r\n\r\n get type(): StringField | null {\r\n return this.fields?.cardType?.fields?.Key || null;\r\n }\r\n\r\n get title(): StringField | null {\r\n return this.fields?.title || null;\r\n }\r\n\r\n get subtitle(): StringField | null {\r\n return this.fields?.subtitle || null;\r\n }\r\n\r\n get label(): StringField | null {\r\n return this.fields?.label || null;\r\n }\r\n\r\n get badgeLink(): LinkField | null {\r\n return this.fields?.badgeLink || null;\r\n }\r\n\r\n get image(): ImageField | undefined {\r\n return this.fields?.image;\r\n }\r\n\r\n get mobileImage(): ImageField | undefined {\r\n return this.fields?.mobileImage;\r\n }\r\n\r\n get buttonPrimary(): LinkField | undefined {\r\n return this.fields?.buttonPrimary;\r\n }\r\n\r\n get buttonSecondary(): LinkField | undefined {\r\n return this.fields?.buttonSecondary;\r\n }\r\n\r\n get isWideCard(): boolean {\r\n return this.type?.value === 'offerCardWide';\r\n }\r\n}\r\n\r\nexport class SpecialOffersModel {\r\n private readonly fields: null | TSpecialOffersFields;\r\n\r\n constructor(props: TSpecialOffersProps) {\r\n this.fields = props?.fields || null;\r\n }\r\n\r\n get eyebrow(): StringField | undefined {\r\n return this.fields?.eyebrow;\r\n }\r\n\r\n get link(): LinkField | undefined {\r\n return this.fields?.link;\r\n }\r\n\r\n get title(): StringField | undefined {\r\n return this.fields?.title;\r\n }\r\n\r\n get subtitle(): StringField | undefined {\r\n return this.fields?.subtitle;\r\n }\r\n\r\n get items(): SpecialOffersSlideModel[] {\r\n if (this.fields && this.fields?.items) {\r\n return this.fields?.items.map((Card: TSpecialOffersSlideProps) => {\r\n return new SpecialOffersSlideModel(Card);\r\n });\r\n } else {\r\n return [];\r\n }\r\n }\r\n\r\n get isUnreleased(): boolean {\r\n return !!this.fields?.isComponentUnreleased;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport \"./index.scss\";\r\n\r\nconst CarouselDots = () =>
;\r\n\r\nexport default CarouselDots;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Link, RichText, Text, withSitecoreContext } from '@sitecore-jss/sitecore-jss-react';\r\nimport Slider from 'react-slick';\r\nimport useMediaQuery from '../../lib/custom-hooks/useMediaQuery';\r\nimport CustomArrow from \"../../react-only-components/CarouselArrow\";\r\nimport { windowService } from '../../utils/window.utils';\r\nimport appendDots from '../../react-only-components/CustomCarouselDots/appendDots';\r\nimport CarouselSlide from './components/carouselSlide';\r\nimport { SpecialOffersModel, SpecialOffersSlideModel } from './models/cardCarousel.model';\r\nimport { TSpecialOffersProps } from './types/cardCarousel.types';\r\nimport CarouselDots from \"../../react-only-components/CarouselDots\";\r\nimport './styles.scss'\r\n\r\nconst CardCarousel = (props: TSpecialOffersProps): JSX.Element => {\r\n const isEE = props?.sitecoreContext?.pageEditing;\r\n const model = new SpecialOffersModel(props);\r\n const cardsCount = (model?.items || []).length;\r\n const isDesktop = useMediaQuery('(min-width: 768px)');\r\n const [screenWidth, setScreenWidth] = useState(1680);\r\n const [activeCardIndex, updateActiveIndex] = useState(0);\r\n const [isClickedOnArrow, setIsClickedOnArrow] = useState(false);\r\n const containerPaddingLeft = 32;\r\n const largeImageWidth = isDesktop ? 664 : 300;\r\n const smallImageWidth = isDesktop ? 392 : 300;\r\n\r\n const totalElementsWidth =\r\n model?.items?.reduce((sumWidths: number, curr: SpecialOffersSlideModel) => {\r\n if (curr?.type?.value === 'offerCardWide') {\r\n sumWidths += largeImageWidth;\r\n } else {\r\n sumWidths += smallImageWidth;\r\n }\r\n\r\n return sumWidths;\r\n }, 0) + containerPaddingLeft;\r\n const shouldInstanceCarousel = totalElementsWidth > screenWidth;\r\n\r\n const arrowButtonClick = (): void => {\r\n setIsClickedOnArrow(true);\r\n };\r\n\r\n const settings = {\r\n infinite: shouldInstanceCarousel,\r\n dots: shouldInstanceCarousel,\r\n arrows: !isEE && shouldInstanceCarousel,\r\n variableWidth: true,\r\n speed: 500,\r\n slidesToScroll: 1,\r\n nextArrow: ,\r\n prevArrow: ,\r\n customPaging: () => ,\r\n afterChange: (index): void => {\r\n updateActiveIndex(index);\r\n },\r\n appendDots: (dots) => appendDots({ dots, cardsCount, activeCardIndex, showCustomDots: true }),\r\n };\r\n\r\n useEffect(() => {\r\n setScreenWidth(Math.min(windowService()?.innerWidth, 1680));\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (!isClickedOnArrow) {\r\n return;\r\n }\r\n\r\n setIsClickedOnArrow(false);\r\n }, [activeCardIndex]);\r\n\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {(isEE || (model.link?.value?.text && model.link?.value?.href)) && (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n \r\n {model?.items?.map((item, index) => (\r\n
\r\n \r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(CardCarousel);\r\n","import {\r\n ImageField,\r\n imageMobileField,\r\n LinkField,\r\n StringField,\r\n CardFields,\r\n CardProps,\r\n CategoryField,\r\n CategoryFields,\r\n CheckboxField,\r\n DropdownSelect,\r\n} from \"../../types/types\";\r\n\r\nexport class CardModel {\r\n private readonly fields?: CardFields;\r\n constructor(props: CardProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get all(): CardProps {\r\n return {\r\n fields: {\r\n Title: this.title,\r\n Subtitle: this.subtitle,\r\n Image: this.image,\r\n imageMobile: this.imageMobile,\r\n Link: this.link,\r\n Date: this.Date,\r\n FormatDate: this.FormatDate,\r\n \"Card Type\": this.CardType,\r\n Category: this.category,\r\n AllowFallbackForMobile: this.allowFallbackForMobile,\r\n },\r\n };\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title ?? { value: \"Lorem ipsum dolor sit\" };\r\n }\r\n\r\n get subtitle(): StringField {\r\n return (\r\n this.fields?.Subtitle ?? {\r\n value: `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin finibus ultrices arcu at efficitur.\r\n Curabitur vehicula elit quis semper venenatis. `,\r\n }\r\n );\r\n }\r\n\r\n get image(): ImageField {\r\n return (\r\n this.fields?.Image ?? { value: { src: \"https://picsum.photos/500\" } }\r\n );\r\n }\r\n\r\n get imageMobile(): imageMobileField {\r\n return (\r\n this.fields?.imageMobile ?? {\r\n value: { src: \"https://picsum.photos/500\" },\r\n }\r\n );\r\n }\r\n\r\n get imageSrc(): string {\r\n return this.fields?.Image?.value?.src ?? \"https://picsum.photos/500\";\r\n }\r\n\r\n get imageAlt(): string {\r\n return this.fields?.Image?.value?.alt;\r\n }\r\n\r\n get imageWidth(): string {\r\n return this.fields?.Image?.value?.width;\r\n }\r\n\r\n get imageHeight(): string {\r\n return this.fields?.Image?.value?.height;\r\n }\r\n\r\n get link(): LinkField {\r\n return this.fields?.Link ?? { value: { href: \"#\", text: \"Click here\" } };\r\n }\r\n\r\n get Date(): StringField {\r\n return this.fields?.Date;\r\n }\r\n\r\n get FormatDate(): StringField {\r\n return this.fields?.FormatDate;\r\n }\r\n\r\n get CardType(): DropdownSelect {\r\n return this.fields?.[\"Card Type\"];\r\n }\r\n\r\n get category(): CategoryField {\r\n return this.fields?.Category;\r\n }\r\n\r\n get allowFallbackForMobile(): CheckboxField {\r\n return this.fields?.AllowFallbackForMobile;\r\n }\r\n}\r\n","import React, { Fragment } from \"react\";\r\nimport { Link, Image, Text, isExperienceEditorActive } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { CardProps } from \"../../types/types\";\r\nimport { CardModel } from \"../../lib/shared-models/card.model\";\r\nimport \"./index.scss\";\r\nimport RoutableSitecoreLink from \"../RoutableSitecoreLink\";\r\n\r\nconst CardGridCard = (props: CardProps) => {\r\n const model = new CardModel(props);\r\n\r\n const GridCard = () => (\r\n \r\n { isExperienceEditorActive()\r\n ? \r\n :
\r\n \r\n
\r\n
\r\n }\r\n \r\n \r\n
\r\n \r\n { isExperienceEditorActive()\r\n ? \r\n : {model.link?.value?.text}\r\n }\r\n \r\n
\r\n
\r\n );\r\n\r\n return (\r\n \r\n {isExperienceEditorActive()\r\n ?
\r\n \r\n
\r\n : \r\n \r\n \r\n }\r\n
\r\n );\r\n};\r\n\r\nexport default CardGridCard;\r\n","import React, { useRef } from \"react\";\r\nimport { Text } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport Slider from \"react-slick\";\r\nimport CarouselDots from \"../../react-only-components/CarouselDots\";\r\nimport CustomArrow from \"../../react-only-components/CarouselArrow\";\r\nimport { StringField } from \"../../types/types\";\r\nimport CardGridCard from \"../../react-only-components/CardGridCard\";\r\nimport { CardProps } from \"../../types/types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { windowService } from \"../../utils/window.utils\";\r\nimport \"./index.scss\";\r\n\r\nconst cardGridMockData: CardGridProps = {\r\n fields: {\r\n Title: { value: \"Experience Case\" },\r\n Subtitle: {\r\n value: \"Find Everything you're looking for with our tools and resources\",\r\n },\r\n Cards: [\r\n {\r\n fields: {\r\n Image: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_0.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n imageMobile: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_0.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n Title: { value: \"Build & Price\" },\r\n Subtitle: { value: \"Customize the perfect machine for your needs\" },\r\n Link: { value: { href: \"\", text: \"Build & Price\" } },\r\n Date: { value: \"2021-11-01T18:30:00Z\" },\r\n },\r\n },\r\n {\r\n fields: {\r\n Image: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_1.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n imageMobile: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_1.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n Title: { value: \"Compare Machines\" },\r\n Subtitle: {\r\n value: \"View machine specifications and compare multiple machines\",\r\n },\r\n Link: { value: { href: \"\", text: \"Compare machines\" } },\r\n Date: { value: \"2021-11-01T18:30:00Z\" },\r\n },\r\n },\r\n {\r\n fields: {\r\n Image: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_2.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n imageMobile: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_2.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n Title: { value: \"Service & Support\" },\r\n Subtitle: {\r\n value:\r\n \"Find the answers you need with troubleshooting support, operator's manuals, and how-to tutorials. We work hard to provide our customers an excellent after-sales service\",\r\n },\r\n Link: { value: { href: \"\", text: \"Explore support\" } },\r\n Date: { value: \"2021-11-01T18:30:00Z\" },\r\n },\r\n },\r\n {\r\n fields: {\r\n Image: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_3.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n imageMobile: {\r\n value: {\r\n src: \"//localhost:8085/images/CardGrid_3.jpg\",\r\n alt: \"image description\",\r\n width: 720,\r\n height: 448,\r\n },\r\n },\r\n Title: { value: \"Spare parts\" },\r\n Subtitle: {\r\n value:\r\n \"Shop genuine parts made for your machine and designed for peak performance\",\r\n },\r\n Link: { value: { href: \"\", text: \"Shop parts\" } },\r\n Date: { value: \"2021-11-01T18:30:00Z\" },\r\n },\r\n },\r\n ],\r\n },\r\n};\r\n\r\ntype CardGridProps = {\r\n fields?: {\r\n Title?: StringField;\r\n Subtitle?: StringField;\r\n Cards?: CardProps[];\r\n };\r\n};\r\n\r\n// use only in useEffect / functions that runs only client-side\r\nconst getSlidesToShow = () => {\r\n const breakpointMd = windowService().matchMedia(\"(min-width: 450px)\").matches;\r\n if (breakpointMd) {\r\n const breakpointLg = windowService().matchMedia(\r\n \"(min-width: 1000px)\"\r\n ).matches;\r\n if (breakpointLg) {\r\n return 4;\r\n }\r\n return 2;\r\n }\r\n return 1.2;\r\n};\r\n\r\nconst CardGrid = ({ fields }: CardGridProps) => {\r\n const dataSource =\r\n fields?.Title && fields?.Subtitle ? fields : cardGridMockData.fields;\r\n const { Title: title, Subtitle: subtitle, Cards: cards } = dataSource;\r\n const generateCards = cards.map((item, i) => (\r\n \r\n ));\r\n const settings = {\r\n arrows: true,\r\n dots: true,\r\n slidesToScroll: 1,\r\n slidesToShow: 4,\r\n nextArrow: ,\r\n prevArrow: ,\r\n customPaging: (_) => ,\r\n infinite: false,\r\n responsive: [\r\n { breakpoint: 1000, settings: { slidesToShow: 2 } },\r\n { breakpoint: 450, settings: { slidesToShow: 1.2 } },\r\n ],\r\n };\r\n\r\n const cardGridWrapperRef = useRef();\r\n\r\n const activeClass = \"slick-active\";\r\n\r\n const isLastDecimalSlide = (currentSlide) => {\r\n const slidesToShow = getSlidesToShow();\r\n const slideTotal = cards.length;\r\n return +currentSlide.toFixed(2) === +(slideTotal - slidesToShow).toFixed(2);\r\n };\r\n\r\n const beforeChange = function (prevSlide, nextSlide): void {\r\n if (cardGridWrapperRef.current) {\r\n const lastPaginationEl = (\r\n cardGridWrapperRef.current as HTMLElement\r\n ).querySelector(`.slick-dots li:last-child`);\r\n if (lastPaginationEl && isLastDecimalSlide(nextSlide)) {\r\n lastPaginationEl?.classList.add(activeClass);\r\n } else {\r\n lastPaginationEl?.classList.remove(activeClass);\r\n }\r\n }\r\n };\r\n\r\n const afterChange = function (currentSlide: number): void {\r\n if (cardGridWrapperRef.current) {\r\n const lastPaginationEl = (\r\n cardGridWrapperRef.current as HTMLElement\r\n ).querySelector(`.slick-dots li:last-child`);\r\n if (lastPaginationEl && isLastDecimalSlide(currentSlide)) {\r\n lastPaginationEl?.classList.add(activeClass);\r\n } else {\r\n lastPaginationEl?.classList.remove(activeClass);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {generateCards}\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default CardGrid;\r\n","import React, { FC, useMemo } from 'react'\r\nimport { RichText, Text } from '@sitecore-jss/sitecore-jss-react'\r\nimport {\r\n CardGridContactsProps,\r\n ContactCard,\r\n} from './types/CardGridContacts.types'\r\nimport './CardGridContacts.scss'\r\n\r\nconst CardGridContacts: FC = ({\r\n fields: { CarouselCardHighlightsLists: cardList, Title: title },\r\n}) => {\r\n const cardsMatrix: ContactCard[][] = useMemo(() => {\r\n let m = []\r\n let l = []\r\n cardList.forEach((e, i) => {\r\n if (l.length < 3) l.push(e)\r\n else {\r\n m.push(l)\r\n l = [e]\r\n }\r\n if (i === cardList.length - 1 && l.length > 0) m.push(l)\r\n })\r\n return m\r\n }, [cardList])\r\n\r\n return (\r\n
\r\n {title?.value?.length > 0 && }\r\n\r\n {cardsMatrix.map((row, idx) => (\r\n 2\r\n ? 'CardGridContacts__row_mt2'\r\n : 'CardGridContacts__row_lt3'\r\n }`}\r\n >\r\n {row.map(({ fields: card }, i) => (\r\n
\r\n \r\n \r\n
\r\n ))}\r\n
\r\n ))}\r\n \r\n )\r\n}\r\n\r\nexport default CardGridContacts\r\n","import { CardLinksFields, CardLinkProps } from \"../types/CardLink.types\";\r\n\r\nexport class CardLinkModel {\r\n public readonly fields: CardLinksFields;\r\n\r\n constructor(props: CardLinkProps) {\r\n this.fields = props.fields;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n Link,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { CardLinkModel } from \"./models/CardLink.model\";\r\nimport { CardLinkProps } from \"./types/CardLink.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst CardLink = (props: CardLinkProps) => {\r\n const model = new CardLinkModel(props);\r\n\r\n const getCardHeight = () => {\r\n return props?.fields?.summarycards.map(\r\n (item, i) => +item?.fields?.cardheight?.value\r\n );\r\n };\r\n\r\n const horizontalLineCount = (index) => {\r\n let count = 0;\r\n let row = 0;\r\n let cardheight = getCardHeight()[index];\r\n let HorizontalLine = props?.fields?.summarycards[\r\n index\r\n ]?.fields?.linkgroups.forEach((item, i) => {\r\n if (row <= cardheight) {\r\n if (item?.fields?.title?.value) {\r\n row = row + 1;\r\n }\r\n if (\r\n (item?.fields?.noofcolumns?.value.toLowerCase() !== \"one\" ||\r\n item?.fields?.noofcolumns?.value.toLowerCase() !== \"\") &&\r\n row <= cardheight\r\n ) {\r\n row = row + 1;\r\n if (\r\n item?.fields?.displayhoizontalseperation?.value === true &&\r\n row <= cardheight\r\n ) {\r\n count = count + 1;\r\n }\r\n }\r\n if (\r\n (item?.fields?.noofcolumns?.value.toLowerCase() === \"one\" ||\r\n item?.fields?.noofcolumns?.value.toLowerCase() === \"\") &&\r\n row <= cardheight\r\n ) {\r\n if (\r\n item?.fields?.displayhoizontalseperation?.value === true &&\r\n row <= cardheight\r\n ) {\r\n count = count + 1;\r\n }\r\n }\r\n }\r\n });\r\n return count;\r\n };\r\n\r\n const finalCardHeight = (index) => {\r\n let cardHeight =\r\n 14.5 * horizontalLineCount(index) +\r\n 24 * getCardHeight()[index] +\r\n 14 * getCardHeight()[index];\r\n return cardHeight;\r\n };\r\n const finalCardWrapperHeight = (index) => {\r\n let cardFinalHeight =\r\n 47 +\r\n 14.5 * horizontalLineCount(index) +\r\n 24 * getCardHeight()[index] +\r\n 14 * getCardHeight()[index];\r\n return cardFinalHeight;\r\n };\r\n\r\n const wrapperHeight = (index) => {\r\n return { height: finalCardWrapperHeight(index) };\r\n };\r\n const height = (index) => {\r\n return { height: finalCardHeight(index) };\r\n };\r\n\r\n return (\r\n \r\n {props?.fields && (\r\n
\r\n \r\n\r\n
\r\n {model?.fields?.summarycards?.map((item, i) => (\r\n \r\n
\r\n {item?.fields?.linkgroups?.map((linkItem, j) => (\r\n <>\r\n \r\n\r\n \r\n {linkItem?.fields?.links?.map((item, i) => (\r\n <>\r\n {item?.fields?.link?.value?.href && (\r\n \r\n {item?.fields?.link?.value?.href && (\r\n <>\r\n {isExperienceEditorActive() ? (\r\n \r\n \r\n {\r\n \r\n }\r\n \r\n ) : (\r\n \r\n \r\n {\r\n \r\n }\r\n \r\n )}\r\n \r\n )}\r\n\r\n
\r\n \r\n )}\r\n \r\n ))}\r\n \r\n \r\n ))}\r\n
\r\n
\r\n ))}\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(CardLink);\r\n","import React from 'react'\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\n\r\nimport './index.scss'\r\nimport { CardListModel } from './models/CardList.model'\r\nimport { CardListProps } from './types/CardList.types'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\nconst dateFormat = (date) => {\r\n if (date) {\r\n const dateString = new Date(date)\r\n\r\n const dateFormat =\r\n ('0' + dateString.getDate()).slice(-2) +\r\n '/' +\r\n ('0' + (dateString.getMonth() + 1)).slice(-2) +\r\n '/' +\r\n dateString.getFullYear()\r\n let dateval = ('0' + dateString.getDate()).slice(-2)\r\n let monthval = ('0' + (dateString.getMonth() + 1)).slice(-2)\r\n let yearval = dateString.getFullYear()\r\n if (dateval == '01' && monthval == '01' && yearval == 1) {\r\n return ''\r\n } else {\r\n return dateFormat\r\n }\r\n }\r\n}\r\n\r\nconst CardList = (props: CardListProps) => {\r\n const cardListArray = props.fields?.['Cards list']\r\n const isReadMoreLink = props.params['Variation']\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n \r\n {cardListArray.map((item, i) => (\r\n
\r\n
\r\n \r\n 0\r\n ? item?.fields?.ImageMobile\r\n : item?.fields?.AllowFallbackForMobile?.value &&\r\n item?.fields?.Image\r\n }\r\n className={'image--mobile'}\r\n />\r\n\r\n {item?.fields?.Category.value ? (\r\n \r\n ) : null}\r\n
\r\n
\r\n
\r\n {item.fields?.Date?.value &&\r\n !item.fields['Hide Date']?.value && (\r\n <>\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n\r\n \r\n \r\n
\r\n\r\n
\r\n {item?.fields?.['Primary Link'].value.href ? (\r\n
\r\n {isExperienceEditorActive() ? (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ) : (\r\n \r\n {item.fields?.['Primary Link']?.value?.text}\r\n\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n ) : null}\r\n {item.fields?.['Download Link']?.value?.src ? (\r\n \r\n \r\n \r\n \r\n ) : null}\r\n
\r\n\r\n {item?.fields?.['Secondary Link']?.value?.href ? (\r\n \r\n
\r\n {isExperienceEditorActive() ? (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ) : (\r\n \r\n {item.fields?.['Secondary Link']?.value?.text}\r\n\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n ) : null}\r\n
\r\n \r\n ))}\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(CardList)\r\n","import React from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { CardListExtraProps } from \"./types/CardListExtra.types\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst CardListExtra = (props: CardListExtraProps) => {\r\n const CardListExtraArray = props.fields?.List;\r\n\r\n return (\r\n <>\r\n {CardListExtraArray && (\r\n \r\n {CardListExtraArray.map((item, i) => (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {item.fields?.Title?.value && (\r\n <>\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n\r\n \r\n
\r\n
\r\n {item?.fields?.[\"Primary Link\"].value.href ? (\r\n
\r\n {isExperienceEditorActive() ? (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ) : (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n ) : null}\r\n
\r\n
\r\n \r\n ))}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(CardListExtra);\r\n","import { LinkFieldValue } from \"@sitecore-jss/sitecore-jss-react/types/components/Link\";\r\nimport { ImageField, StringField } from \"../../../types/types\";\r\nimport {\r\n CardModuleFullFields,\r\n CardModuleFullProps,\r\n} from \"../types/CardModuleFull.types\";\r\n\r\nexport class CardModuleFullModel {\r\n private readonly fields?: CardModuleFullFields;\r\n constructor(props: CardModuleFullProps) {\r\n this.fields = props.fields || null;\r\n }\r\n get title(): StringField {\r\n return this.fields?.title;\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.image;\r\n }\r\n\r\n get imageMobile(): ImageField {\r\n return this.fields?.ImageMobile;\r\n }\r\n\r\n get imageTitle(): ImageField {\r\n return this.fields?.ImageTitle;\r\n }\r\n\r\n get AllowFallbackForMobile(): boolean {\r\n return this.fields?.AllowFallbackForMobile.value;\r\n }\r\n get primaryLink(): LinkFieldValue {\r\n return this.fields?.link1?.value;\r\n }\r\n\r\n get secondaryLink(): LinkFieldValue {\r\n return this.fields?.link2.value;\r\n }\r\n\r\n get bodyText(): StringField {\r\n return this.fields?.bodyText;\r\n }\r\n\r\n get variant(): StringField {\r\n return this.fields?.Variant;\r\n }\r\n}\r\n","import React from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport {Link} from \"react-router-dom\";\r\nimport {isInternalUrl} from \"../../utils\";\r\n\r\n//@ts-ignore\r\nconst RoutableNotEditableLink = ({href, ...otherProps}) => {\r\n if (href && isInternalUrl(href)) {\r\n return \r\n }\r\n return \r\n};\r\n\r\nRoutableNotEditableLink.propTypes = {\r\n href: PropTypes.string.isRequired,\r\n}\r\n\r\nexport default RoutableNotEditableLink;\r\n\r\n","import React, { useState, VFC } from 'react'\r\nimport RoutableNotEditableLink from '../RoutableNotEditableLink'\r\nimport { TCTAWithArrow } from './index.types'\r\nimport './styles.scss'\r\n\r\nconst CTAWithArrow: VFC = ({ href, text, color }) => (\r\n
\r\n {color && (\r\n \r\n {text}\r\n \r\n \r\n \r\n \r\n )}\r\n {!color && (\r\n \r\n {text}\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n)\r\n\r\nexport default CTAWithArrow\r\n","import React from 'react'\r\nimport { CardModuleFullModel } from './models/CardModuleFull.model'\r\nimport CTAWithArrow from '../../react-only-components/CTAWithArrow'\r\nimport {\r\n Image,\r\n isExperienceEditorActive,\r\n Link,\r\n RichText,\r\n Text,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport './style.scss'\r\n\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\ninterface CardModuleProps extends ComponentProps {}\r\nconst CardModuleFull = (props: CardModuleProps) => {\r\n const model = new CardModuleFullModel(props)\r\n const objImageTitle = model?.imageTitle?.value\r\n const isEmptyImageTitle = Object.keys(objImageTitle).length === 0\r\n const bodyTextNotEmpty = model?.bodyText?.value.length !== 0\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n
\r\n \r\n 0\r\n ? model?.imageMobile\r\n : model?.AllowFallbackForMobile && model?.image\r\n }\r\n className=\"card-module__image mobileImage\"\r\n />\r\n\r\n
\r\n {model.variant?.value === 'v1' ? (\r\n 0\r\n ? 'card-module__cntntB--diffLayout'\r\n : 'card-module__cntntB--diffLayoutNoBT'\r\n }\r\n `}\r\n >\r\n {!isEmptyImageTitle && (\r\n \r\n )}\r\n {isEmptyImageTitle && (\r\n \r\n )}\r\n {bodyTextNotEmpty && (\r\n \r\n )}\r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : model.variant?.value === 'v2' ? (\r\n
\r\n \r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : model.variant?.value === 'v3' ? (\r\n
\r\n \r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : model.variant?.value === 'v4' ? (\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n <>\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n\r\n {(model.secondaryLink?.text ||\r\n model.secondaryLink?.href) && (\r\n <>\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n ) : (\r\n <>\r\n )}\r\n
\r\n\r\n {model.variant.value === 'v1' ? (\r\n 0\r\n ? 'card-module__cntntB--diffLayout'\r\n : 'card-module__cntntB--diffLayoutNoBT'\r\n }\r\n `}\r\n >\r\n {!isEmptyImageTitle && (\r\n \r\n )}\r\n {isEmptyImageTitle && (\r\n \r\n )}\r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n \r\n ) : model.variant.value === 'v2' ? (\r\n
\r\n \r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : model.variant.value === 'v3' ? (\r\n
\r\n \r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : model.variant.value === 'v4' ? (\r\n
\r\n \r\n \r\n {(model.primaryLink?.text || model.primaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n {(model.secondaryLink?.text || model.secondaryLink?.href) && (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n ) : (\r\n <>\r\n )}\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default CardModuleFull\r\n","import { StringField, LinkField } from \"../../../types/types\";\r\nimport { CarouselCardHighlightsFields, CarouselCardHighlightsProps, CardHighlightsProps } from '../types/CarouselCardHighlights.types';\r\n\r\n\r\nexport class CarouselCardHighlightsModel {\r\n private readonly fields?: CarouselCardHighlightsFields;\r\n constructor(props: CarouselCardHighlightsProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n // ?? mockTitle;\r\n }\r\n\r\n \r\n get eyebrow(): StringField {\r\n return this.fields?.Eyebrow \r\n //?? mockEyebrow;\r\n }\r\n\r\n \r\n\r\n}\r\n\r\n","import React, { useRef, useState, useEffect } from \"react\";\r\nimport {\r\n Text,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"./index.scss\";\r\nimport Slider from \"react-slick\";\r\nimport CarouselDots from \"../../react-only-components/CarouselDots\";\r\nimport CustomArrow from \"../../react-only-components/CarouselArrow\";\r\nimport { CarouselCardHighlightsModel } from \"./models/CarouselCardHighlights.model\";\r\nimport {\r\n CardHighlightsProps,\r\n CarouselCardHighlightsProps,\r\n} from \"./types/CarouselCardHighlights.types\";\r\nimport { windowService } from \"../../utils/window.utils\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport useMediaQuery from \"../../lib/custom-hooks/useMediaQuery\";\r\n\r\nconst cardGenerator = (item: CardHighlightsProps, index: number) => {\r\n return (\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nconst cardMapper = (props: CarouselCardHighlightsProps) => {\r\n const CarouselCardList = props?.fields?.[\"CarouselCardHighlightsLists\"];\r\n const groupArray = [];\r\n // if(isTabpoint){\r\n // let j =0;\r\n // for(let i = 1; i < CarouselCardList.length; i++) {\r\n // let cardGroup = [];\r\n // cardGroup.push(\r\n // cardGenerator(CarouselCardList[i-1], i-1)\r\n // );\r\n // //cardGroup.push(cardGenerator(CarouselCardList[i-1], i-1));\r\n // cardGroup.push(cardGenerator(CarouselCardList[i], i));\r\n // groupArray.push(cardGroup);\r\n // }\r\n // }\r\n\r\n let j = 0;\r\n for (let i = 2; i < CarouselCardList?.length; i++) {\r\n let cardGroup = [];\r\n cardGroup.push(cardGenerator(CarouselCardList[i - 2], i - 2));\r\n cardGroup.push(cardGenerator(CarouselCardList[i - 1], i - 1));\r\n cardGroup.push(cardGenerator(CarouselCardList[i], i));\r\n groupArray.push(cardGroup);\r\n }\r\n return groupArray.map((cardgroup, index) => {\r\n return (\r\n
\r\n {cardgroup}\r\n
\r\n );\r\n });\r\n};\r\n\r\nconst CarouselCardHighlights = (props: CarouselCardHighlightsProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n const model = new CarouselCardHighlightsModel(props);\r\n const CarouselCardList = props?.fields?.[\"CarouselCardHighlightsLists\"];\r\n const Autoscroll = props?.params[\"Autoscroll-Flag-Variations\"];\r\n\r\n const scrollingspeed = props?.params[\"Number of seconds before scrolling\"];\r\n const slidesAmount = CarouselCardList?.length;\r\n const isDesktop = useMediaQuery(\"(min-width: 900px)\");\r\n const isTabpoint = useMediaQuery(\"(min-width: 430px)\");\r\n const [sliderRef, setSliderRef] = useState(null);\r\n //const slider = useRef(null);\r\n const hasMultipleSlides = CarouselCardList?.length > 1;\r\n const spp = scrollingspeed * 1000;\r\n const [currentPage, setCurrentPage] = useState(1);\r\n const [currentCardIndex, setCurrentCardIndex] = useState(0);\r\n const onAfterChange = (newIndex) => {\r\n setCurrentPage(newIndex + 1);\r\n };\r\n const moveLeft = () => {\r\n setCurrentCardIndex((index) => (index > 0 ? index - 1 : index));\r\n };\r\n\r\n const moveRight = () => {\r\n setCurrentCardIndex((index) =>\r\n index + 1 < CarouselCardList.length\r\n ? index + 1\r\n : index == CarouselCardList.length\r\n ? 1\r\n : index\r\n );\r\n };\r\n\r\n const [showRightArrow, setshowRightArrow] = useState(true);\r\n const [showLefttArrow, setshowLefttArrow] = useState(false);\r\n const isSliderNeeded = CarouselCardList?.length > 3;\r\n const [maxNumberOfCardsToShow, setmaxNumberOfCardsToShow] = useState(0);\r\n\r\n const handleChangeSlide = (currentSlide: Number) => {\r\n const leftArrowVisible = currentSlide != 0;\r\n // const rightArrowVisible = currentSlide <= CarouselCardList.length - maxNumberOfCardsToShow;\r\n const rightArrowVisible =\r\n currentSlide < CarouselCardList?.length - slideToShow;\r\n setshowLefttArrow(leftArrowVisible);\r\n setshowRightArrow(rightArrowVisible);\r\n };\r\n\r\n useEffect(() => {\r\n handleWidth();\r\n }, []);\r\n const handleWidth = () => {\r\n if (isEE || isExperienceEditorActive()) {\r\n let c = document.getElementsByClassName(\"slick-list\");\r\n if (c && c.length > 0) {\r\n c[0].setAttribute(\"style\", \"width: auto !important\");\r\n }\r\n }\r\n };\r\n\r\n const slideToShow = 3;\r\n const settings = {\r\n arrows: true,\r\n dots: true,\r\n infinite: true,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n variableWidth: isExperienceEditorActive() || isEE ? true : false,\r\n autoplay: Autoscroll == \"True\" ? true : false,\r\n // speed: 300,\r\n autoplaySpeed: spp,\r\n // cssEase: \"linear\",\r\n nextArrow: showRightArrow && (\r\n {\r\n sliderRef.current.slickNext();\r\n }}\r\n />\r\n ),\r\n prevArrow: showLefttArrow && (\r\n {\r\n sliderRef.current.slickPrev();\r\n }}\r\n />\r\n ),\r\n\r\n afterChange: (currentSlide: number) => handleChangeSlide(currentSlide),\r\n customPaging: (_) => ,\r\n\r\n responsive: [\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n arrows: false,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n dots: true,\r\n },\r\n },\r\n {\r\n breakpoint: 900,\r\n settings: {\r\n arrows: false,\r\n slidesToShow: CarouselCardList?.length < 3 ? 1 : 2,\r\n slidesToScroll: 1,\r\n touchMove: true,\r\n },\r\n },\r\n // {\r\n // breakpoint: 768,\r\n // settings: {\r\n // arrows: false,\r\n // slidesToShow: 1,\r\n // slidesToScroll: 1,\r\n // }\r\n // },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n arrows: false,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n // swipeToSlide: true,\r\n // swipe:true,\r\n touchMove: true,\r\n },\r\n },\r\n {\r\n breakpoint: 1680,\r\n settings: {\r\n arrows: true,\r\n dots: true,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 1440,\r\n settings: {\r\n arrows: true,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n },\r\n },\r\n ],\r\n };\r\n\r\n // use only in useEffect / functions that runs only client-side\r\n const getSlidesToShow = () => {\r\n const breakpointMd =\r\n windowService().matchMedia(\"(min-width: 450px)\").matches;\r\n if (breakpointMd) {\r\n const breakpointLg = windowService().matchMedia(\r\n \"(min-width: 1000px)\"\r\n ).matches;\r\n if (breakpointLg) {\r\n return 4;\r\n }\r\n return 2;\r\n }\r\n return 1.2;\r\n };\r\n const cardGridWrapperRef = useRef();\r\n\r\n const activeClass = \"slick-active\";\r\n\r\n return (\r\n \r\n {props.fields && CarouselCardList && (\r\n \r\n \r\n \r\n\r\n {CarouselCardList.length < 3 && isDesktop ? (\r\n
\r\n {CarouselCardList.map((item, i) => (\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n ) : (\r\n \r\n {isDesktop\r\n ? cardMapper(props)\r\n : CarouselCardList.map((item, i) => (\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n )}\r\n \r\n )}\r\n
\r\n );\r\n};\r\nexport default withSitecoreContext()(CarouselCardHighlights);\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n CollapsibleTextModuleFields,\r\n CollapsibleTextModuleProps,\r\n CollapsibleTextModule,\r\n} from \"../types/CollapsibleTextModule.types\";\r\n\r\nexport class CollapsibleTextModuleModel {\r\n private readonly fields: CollapsibleTextModuleFields;\r\n\r\n constructor(props: CollapsibleTextModuleProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get anchorID(): StringField {\r\n return this.fields?.AnchorID\r\n }\r\n\r\n get primaryText(): StringField {\r\n return this.fields?.PrimaryText\r\n }\r\n\r\n get secondaryText(): StringField {\r\n return this.fields?.SecondaryText\r\n }\r\n\r\n get learnMoreLabel(): StringField {\r\n return this.fields?.LearnMoreLabel\r\n }\r\n}\r\n","import React, { useState, useRef, useEffect } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Placeholder,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { CollapsibleTextModuleModel } from \"./models/CollapsibleTextModule.model\";\r\nimport { CollapsibleTextModuleProps } from \"./types/CollapsibleTextModule.types\";\r\n\r\nconst CollapsibleTextModule = (props: CollapsibleTextModuleProps) => {\r\n const model = new CollapsibleTextModuleModel(props);\r\n const [isOpen, setOpen] = React.useState(false);\r\n const [isExtendedText, setCollapsedText] = React.useState(false);\r\n \r\n if(typeof window !== \"undefined\" && typeof document !== \"undefined\") {\r\n const queryParameters = new URLSearchParams(window.location.search)\r\n const type = queryParameters.get(\"open\");\r\n \r\n useEffect(() => {\r\n // const getHashId = document.querySelector(`${window.location.hash} .privacy-collapsible-title`) as HTMLElement;\r\n console.log(\"collapsible text\", props, window.location.hash);\r\n \r\n if(type === \"all\") {\r\n setOpen(!isOpen);\r\n } else if (type === \"first\") {\r\n const firstElement = document.querySelector(\".privacy-collapsible-title\") as HTMLElement;\r\n firstElement.click();\r\n }\r\n\r\n // getHashId.click();\r\n }, [])\r\n }\r\n \r\n return (\r\n props?.fields && (\r\n
\r\n
setOpen(!isOpen)}>\r\n {model?.title?.value}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
setCollapsedText(!isExtendedText)}>\r\n {model?.learnMoreLabel?.value}\r\n
\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(CollapsibleTextModule);\r\n","import React from 'react'\r\nimport {\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\n\r\nimport './index.scss'\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport { ColumnCardProps } from './types/ColumnCard.types'\r\nimport LazySection from '../../react-only-components/LazySection'\r\n\r\nconst ColumnCard = (props: ColumnCardProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing\r\n const ColumnCardList = props?.fields?.['Column Cards']\r\n const isThreeColumns = props?.fields?.['Three Columns']?.value\r\n\r\n return (\r\n \r\n {props?.fields && (\r\n \r\n {ColumnCardList.map((item, i) => (\r\n
\r\n
\r\n {isEE ? null :
}\r\n\r\n {/* {item?.fields?.Image?.value?.alt} */}\r\n \r\n {/* */}\r\n 0\r\n ? item?.fields?.imageMobile\r\n : item?.fields?.Image\r\n }\r\n className={'image--mobile'}\r\n />\r\n
\r\n
\r\n \r\n \r\n {/*

{item?.fields?.Eyebrow?.value}

*/}\r\n {/*

{item?.fields?.Title?.value}

*/}\r\n
\r\n \r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n
\r\n {item?.fields?.['Secondary Link']?.value.href ? (\r\n
\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n ) : null}\r\n
\r\n \r\n \r\n ))}\r\n \r\n )}\r\n
\r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(ColumnCard)\r\n","import { StringField } from \"../../../types/types\";\r\nimport { CardsLayout, ContactCards, ContactCardsProps } from \"../types/ContactCards.types\";\r\n\r\nexport class ContactCardsModel {\r\n private readonly fields?: ContactCards;\r\n constructor(props: ContactCardsProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get contactCards(): ContactCards {\r\n return this.fields;\r\n }\r\n\r\n get variant(): StringField {\r\n return this.fields?.Variant;\r\n }\r\n\r\n get columnLayout(): string {\r\n return CardsLayout[this.fields?.ColumnLayout?.fields?.Key?.value || '3ColumnLayout'];\r\n }\r\n}\r\n","import { TContentHubButton } from \"../../../types/types\";\r\nimport { WithSitecoreContextProps } from \"@sitecore-jss/sitecore-jss-react/types/enhancers/withSitecoreContext\";\r\n\r\nexport type TContentHubSeriesDetailsProps = WithSitecoreContextProps & {\r\n fields: TContentHubSeriesDetailsFields;\r\n};\r\n\r\nexport enum InnerComponentTypes {\r\n Split = \"split\",\r\n Card = \"card\",\r\n}\r\n\r\nexport type TContentHubSeriesDetailsFields = {\r\n apiData: TSeriesDetailsData;\r\n};\r\n\r\nexport type TBreadcrumb = {\r\n titleUrl: string;\r\n title: string;\r\n};\r\nexport type TButton = {\r\n label: string;\r\n url: string;\r\n};\r\n\r\nexport type TSummarySpec = {\r\n key: string;\r\n value: string;\r\n active?: string;\r\n position?: string;\r\n status?: string;\r\n};\r\n\r\nexport type TComponentTab = {\r\n key: string;\r\n value: string;\r\n};\r\n\r\nexport type TAsset = {\r\n role: string;\r\n position: number;\r\n alt: string;\r\n bigthumbnail: string;\r\n thumbnail: string;\r\n full: string;\r\n};\r\n\r\nexport type TSeo = {\r\n title: string;\r\n description: string;\r\n keywords: string;\r\n ogTitle: string;\r\n ogType: string;\r\n ogImage: string;\r\n ogUrl: string;\r\n ogDescription: string;\r\n ogSiteName: string;\r\n jsonLdSchema: string;\r\n canonicalUrl: string;\r\n};\r\n\r\nexport type TImage = {\r\n image?: string;\r\n imageAlt?: string;\r\n imageMobile?: string;\r\n imageAltMobile?: string;\r\n};\r\n\r\nexport type TSeriesDetailsData = {\r\n id: number;\r\n titleUrl?: string;\r\n title?: string;\r\n formattedTitle?: string;\r\n eyebrow?: string;\r\n innerComponents?: TComponentDetails[];\r\n description?: string;\r\n msrp?: string;\r\n optionalLabel1?: string;\r\n optionalLabel2?: string;\r\n breadcrumb?: TBreadcrumb[];\r\n button1?: TButton;\r\n button2?: TButton;\r\n button3?: TButton;\r\n summarySpecs?: TSummarySpec[];\r\n components?: TComponentTab[];\r\n active?: boolean;\r\n showInNavigation?: boolean;\r\n assets?: TAsset[];\r\n videoUrl?: string;\r\n seo?: TSeo;\r\n};\r\n\r\nexport type TComponentDetails = {\r\n id: number;\r\n componentType?: InnerComponentTypes;\r\n title?: string;\r\n layoutType?: string;\r\n eyebrow?: string;\r\n description?: string;\r\n button1?: TButton;\r\n button2?: TButton;\r\n image?: string;\r\n imageAlt?: string;\r\n assets?: TAsset[];\r\n videoUrl?: string;\r\n videoDescription?: string;\r\n innerComponents?: TComponentDetails[];\r\n};\r\n\r\nexport type TComponentDetailsProps = {\r\n className?: string;\r\n component: TComponentDetails;\r\n};\r\n\r\nexport type TBannerProps = {\r\n className?: string;\r\n component: TComponentDetails;\r\n hasFixedAspectRatio?: boolean;\r\n};\r\n\r\nexport type TGalleryProps = {\r\n assets?: TAsset[];\r\n hasFixedAspectRatio?: boolean;\r\n};\r\n\r\nexport type TModalComponentsListProps = {\r\n components: Array;\r\n};\r\n\r\nexport type TModalComponentsItemProps = {\r\n component: TComponentDetails;\r\n};\r\n","import { LinkFieldValue } from \"@sitecore-jss/sitecore-jss-react/types/components/Link\";\r\nimport {\r\n AttachmentLinkField,\r\n ImageField,\r\n LinkField,\r\n StringField,\r\n} from \"../../../types/types\";\r\nimport {\r\n ContactCardsField,\r\n ContactCardsFields,\r\n} from \"../types/ContactCards.types\";\r\n\r\nexport class ContactCardModel {\r\n private readonly fields?: ContactCardsField;\r\n constructor(props: ContactCardsFields) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get CTA(): LinkFieldValue {\r\n return this.fields?.CTA;\r\n }\r\n\r\n get country(): StringField {\r\n return this.fields?.country;\r\n }\r\n\r\n get curriculum(): StringField {\r\n return this.fields?.curriculum;\r\n }\r\n\r\n get curriculumTextModal(): StringField {\r\n return this.fields?.curriculumTextModal;\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.image;\r\n }\r\n get imageMobile(): ImageField {\r\n return this.fields?.ImageMobile;\r\n }\r\n\r\n get cardImageDesktop() : ImageField {\r\n return this.fields?.CardImageDesktop;\r\n }\r\n\r\n get designation(): StringField {\r\n return this.fields?.designation;\r\n }\r\n\r\n get download(): AttachmentLinkField {\r\n return this.fields?.download;\r\n }\r\n get SecondaryDownloadLink(): AttachmentLinkField {\r\n return this.fields?.SecondaryDownloadLink;\r\n }\r\n get SecondaryDownloadlinkText(): StringField {\r\n return this.fields?.SecondaryDownloadlinkText;\r\n }\r\n get description(): StringField {\r\n return this.fields?.description;\r\n }\r\n\r\n get email(): LinkField {\r\n return this.fields?.email;\r\n }\r\n\r\n get emailText(): StringField {\r\n return this.fields?.emailText;\r\n }\r\n get mobile1(): StringField {\r\n return this.fields?.mobile1;\r\n }\r\n get mobile2(): StringField {\r\n return this.fields?.mobile2;\r\n }\r\n\r\n get fullname(): StringField {\r\n return this.fields?.fullname;\r\n }\r\n\r\n get primaryTarget(): StringField {\r\n return this.fields?.primarylinktarget;\r\n }\r\n get secondaryTarget(): StringField {\r\n return this.fields?.secondarylinktarget;\r\n }\r\n get allowFallbackForMobile(): boolean {\r\n return this.fields?.AllowFallbackForMobile?.value;\r\n }\r\n\r\n get titleButtons(): StringField {\r\n return this.fields?.TitleButtons;\r\n }\r\n}\r\n","import React, { useState } from 'react'\r\nimport ReactDOM from 'react-dom'\r\nimport { Text } from '@sitecore-jss/sitecore-jss-react'\r\nimport Modal from 'react-modal'\r\nimport { ModalProps } from '../../types/types'\r\nimport './styles.scss'\r\n\r\nconst ModalDialog = ({\r\n isOpen = false,\r\n close,\r\n children,\r\n shouldCloseOnOverlayClick = true,\r\n title,\r\n className,\r\n hasMaxHeightRestricted = false,\r\n}: ModalProps) => {\r\n const [overlayDiv, setOverlayDiv] = useState(null)\r\n const closeModal = () => {\r\n close && close(false)\r\n }\r\n\r\n const CloseButton = () => (\r\n \r\n )\r\n\r\n return (\r\n document.querySelector('#root')}\r\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\r\n className={`my-modal-dialog ${className} ${\r\n hasMaxHeightRestricted ? 'my-modal-dialog--has-max-height' : ''\r\n }`}\r\n overlayClassName={`my-modal-dialog__overlay ${className} ${\r\n hasMaxHeightRestricted ? 'my-modal-dialog__overlay--has-max-height' : ''\r\n }`}\r\n appElement={\r\n typeof document !== 'undefined' ? document.querySelector('#root') : null\r\n }\r\n overlayRef={setOverlayDiv}\r\n >\r\n {overlayDiv && ReactDOM.createPortal(, overlayDiv)}\r\n {title && (\r\n \r\n )}\r\n {children}\r\n \r\n )\r\n}\r\nexport default ModalDialog\r\n","import React, { useState } from \"react\";\r\nimport { CardsLayout } from \"./types/ContactCards.types\";\r\nimport { ContactCardModel } from \"./models/ContactCard.model\";\r\nimport {\r\n Image,\r\n Link,\r\n RichText,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nconst FullCard = (props) => {\r\n const { contactCardList, onReadMoreHandler } = props\r\n return (\r\n
\r\n {\r\n contactCardList.map((item, index) => {\r\n const card = new ContactCardModel(item);\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {(card?.CTA?.value?.text || card?.CTA?.value?.href) && (\r\n
\r\n {isExperienceEditorActive() && (\r\n {\r\n e.preventDefault();\r\n onReadMoreHandler(card);\r\n }}\r\n />\r\n )}\r\n\r\n {card.description.value && card.CTA ? (\r\n {\r\n e.preventDefault();\r\n onReadMoreHandler(card);\r\n }}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n )\r\n })\r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default FullCard;","import { useState, useEffect } from 'react';\r\nimport { windowService } from '../utils/window.utils';\r\n\r\nconst useMediaQuery = (\r\n query: string,\r\n initialState = false,\r\n //eslint-disable-next-line\r\n callbackOnChange = (mediaMatches: boolean) => {\r\n // This is intentional\r\n }\r\n) => {\r\n const [matches, setMatches] = useState(initialState);\r\n\r\n useEffect(() => {\r\n const media = windowService().matchMedia(query);\r\n if (media.matches !== matches) {\r\n setMatches(media.matches);\r\n callbackOnChange(media.matches);\r\n }\r\n const listener = () => setMatches(media.matches);\r\n media.addListener(listener);\r\n return () => media.removeListener(listener);\r\n }, [matches, query]); //eslint-disable-line\r\n\r\n return matches;\r\n};\r\n\r\nexport default useMediaQuery;\r\n","import React, { useState } from \"react\";\r\nimport { ContactCardsModel } from \"./models/ContactCards.model\";\r\nimport {\r\n Image,\r\n Link,\r\n RichText,\r\n Text,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport \"./style.scss\";\r\nimport { ContactCardModel } from \"./models/ContactCard.model\";\r\nimport ModalDialog from \"../../react-only-components/ModalDialog/ModalDialog\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\nimport FullCard from \"./fullcard\";\r\nimport useMediaQuery from \"../../hooks/useMediaQuery\";\r\n\r\nconst ContactCards = (props) => {\r\n const model = new ContactCardsModel(props);\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n const isDesktop = useMediaQuery('(min-width: 768px)');\r\n const contactCardList = model?.contactCards?.ContactCardsLists;\r\n const contactCardTitle = model?.contactCards?.ContactCardTitle;\r\n\r\n const variation = () => {\r\n return props.params.Variations;\r\n };\r\n const [modalIsOpen, setIsOpen] = useState(false);\r\n const [modalData, setModalData] = useState();\r\n const openModal = () => {\r\n setIsOpen(true);\r\n };\r\n\r\n const closeModal = () => {\r\n setIsOpen(false);\r\n };\r\n const onReadMoreHandler = (data: ContactCardModel) => {\r\n //e.preventDefault();\r\n setModalData(data);\r\n // setModalData({fullname:data.fullname ,\r\n // designation:data.designation,\r\n // description:data.description});\r\n //data.CTA.href = \"javascript:void(0)\";\r\n openModal();\r\n };\r\n\r\n return (\r\n <>\r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n {props.fields && contactCardList && (\r\n \r\n {contactCardTitle.value !== \"Meet our Portfolio Companies\" &&\r\n contactCardTitle.value !== \"Our Strategic Partners\" && (\r\n \r\n )}\r\n {\r\n (model.columnLayout === '1-columnLayout' && isDesktop) ?\r\n :\r\n
\r\n {contactCardList.map((item, index) => {\r\n const card = new ContactCardModel(item);\r\n return variation() !== \"withemailandmobile\" ? (\r\n
\r\n
\r\n \r\n 0\r\n ? card?.imageMobile\r\n : card?.allowFallbackForMobile && card?.image\r\n }\r\n className=\"contact-card__image--mobile\"\r\n />\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {(card?.CTA?.value?.text || card?.CTA?.value?.href) && (\r\n
\r\n {isExperienceEditorActive() && (\r\n {\r\n e.preventDefault();\r\n onReadMoreHandler(card);\r\n }}\r\n />\r\n )}\r\n\r\n {card.description.value && card.CTA ? (\r\n {\r\n e.preventDefault();\r\n onReadMoreHandler(card);\r\n }}\r\n />\r\n ) : (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n ) : (\r\n
\r\n
\r\n \r\n 0\r\n ? card?.imageMobile\r\n : card?.allowFallbackForMobile && card?.image\r\n }\r\n className=\"contact-card-full__image--mobile\"\r\n />\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n {card?.mobile1?.value ? (\r\n
\r\n {/* \r\n Mobile\r\n */}\r\n\r\n \r\n {card?.mobile1?.value}\r\n \r\n
\r\n ) : null}\r\n\r\n {card?.mobile2?.value ? (\r\n
\r\n {/* \r\n Mobile\r\n */}\r\n \r\n {card?.mobile2?.value}\r\n \r\n
\r\n ) : null}\r\n {card?.email?.value?.href ? (\r\n
\r\n \r\n {card?.email?.value?.text}\r\n \r\n \r\n \r\n \r\n
\r\n ) : null}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n }\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default ContactCards;\r\n","import React from \"react\";\r\n\r\nimport \"./style.scss\";\r\n\r\nconst ExperienceEditorComponentPlaceholder = ({ text }) => (\r\n
{text}
\r\n);\r\n\r\nexport default ExperienceEditorComponentPlaceholder;\r\n","import React, { FunctionComponent, useEffect, useState } from \"react\";\r\n\r\n\r\ninterface HeroCarouselIndicatorProps {\r\n clickHandler?: (e: (React.MouseEvent | React.KeyboardEvent)) => void;\r\n isSelected?: boolean;\r\n index: number;\r\n baseClassName?: string;\r\n}\r\n\r\nconst HeroCarouselIndicator: FunctionComponent = ({ isSelected = false, index, baseClassName = 'controls__dots__item' }) => {\r\n const className = isSelected ? baseClassName + ' ' + baseClassName + '--selected' : baseClassName;\r\n\r\n return (\r\n
  • \r\n );\r\n}\r\n\r\nexport default HeroCarouselIndicator;\r\n","import React, { VFC, useState } from \"react\";\r\nimport { TGalleryProps } from \"../../types/ContentHubSeriesDetails.type\";\r\nimport { Carousel as ReactResponsiveCarousel } from \"react-responsive-carousel\";\r\nimport useMediaQuery from \"../../../../lib/custom-hooks/useMediaQuery\";\r\nimport CustomArrow from \"../../../../react-only-components/CarouselArrow\";\r\nimport HeroCarouselIndicator from \"../../../HeroCarousel/HeroCarouselIndicator\";\r\n\r\nconst Gallery: VFC = ({ assets, hasFixedAspectRatio }) => {\r\n const [currentSlide, setCurrentSlide] = useState(0);\r\n\r\n const goToPreviousSlide = () => setCurrentSlide(currentSlide - 1);\r\n const goToNextSlide = () => setCurrentSlide(currentSlide + 1);\r\n const isMobile = useMediaQuery(\"(max-width: 768px)\");\r\n\r\n return (\r\n <>\r\n setCurrentSlide(slideIndex)}\r\n selectedItem={currentSlide}\r\n showThumbs={false}\r\n showArrows={false}\r\n showIndicators={false}\r\n showStatus={false}\r\n >\r\n {assets.map((image, index) => {\r\n const src = isMobile ? image.full : image.full;\r\n const alt = isMobile ? image.alt : image.alt;\r\n return (\r\n \r\n {alt}\r\n \r\n );\r\n })}\r\n \r\n {!isMobile ? (\r\n <>\r\n \r\n \r\n \r\n ) : (\r\n
      \r\n {assets.map((_, index) => (\r\n \r\n ))}\r\n
    \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default Gallery;\r\n","import React, { VFC, useState, useEffect, useRef } from 'react';\r\nimport { VideoPlayerProps } from './index.types';\r\n\r\nconst VideoPlayer: VFC = ({ link, width, height, title = \"\", className = \"\", playCallback, pauseCallback }) => {\r\n const [youtubeVideoID, setYoutubeVideoID] = useState(\"\");\r\n const VideoTagRef = useRef();\r\n\r\n useEffect(() => {\r\n function playEventHandler(event) {\r\n if (playCallback) {\r\n playCallback(event);\r\n }\r\n }\r\n function pauseEventHandler(event) {\r\n if (pauseCallback) {\r\n pauseCallback(event);\r\n }\r\n }\r\n if (VideoTagRef && VideoTagRef.current) {\r\n (VideoTagRef.current as HTMLElement).addEventListener(\"playing\", playEventHandler);\r\n (VideoTagRef.current as HTMLElement).addEventListener(\"pause\", pauseEventHandler);\r\n }\r\n return () => {\r\n if (VideoTagRef && VideoTagRef.current) {\r\n (VideoTagRef.current as HTMLElement).removeEventListener(\"playing\", playEventHandler);\r\n (VideoTagRef.current as HTMLElement).removeEventListener(\"pause\", pauseEventHandler);\r\n }\r\n }\r\n }, [VideoTagRef, playCallback, pauseCallback]);\r\n\r\n useEffect(() => {\r\n if (!link) return;\r\n let video_id = \"\";\r\n if (link.includes(\"youtube\")) {\r\n if (link.includes('watch')) {\r\n video_id = link.split('v=')[1];\r\n let ampPos = video_id.indexOf('&');\r\n if (ampPos != -1) {\r\n video_id = video_id.substring(0, ampPos);\r\n }\r\n } else if (link.includes('embed')) {\r\n video_id = link.split(\"embed/\")[1];\r\n let quesPos = video_id.indexOf('?');\r\n if (quesPos != -1) {\r\n video_id = video_id.substring(0, quesPos);\r\n }\r\n }\r\n } else if (link.includes(\"youtu.be\")) {\r\n video_id = link.split(\"youtu.be/\")[1];\r\n }\r\n if (video_id) {\r\n setYoutubeVideoID(video_id);\r\n }\r\n }, [link])\r\n\r\n return (\r\n < >\r\n {youtubeVideoID ?\r\n :\r\n
  • \r\n ) : (\r\n
  • \r\n \r\n
  • \r\n )}\r\n \r\n ));\r\n\r\n return (\r\n
    \r\n \r\n {links.length > 0 && (\r\n \r\n )}\r\n
    \r\n {isEEActive || links.length == 0 ? (\r\n window.scroll(0, 0)}\r\n >\r\n {model.linkText}\r\n \r\n ) : (\r\n {model.title?.value}\r\n )}\r\n
    \r\n \r\n
      {links}
    \r\n
    \r\n );\r\n });\r\n\r\n return
    {accordions}
    ;\r\n};\r\n\r\nexport default withSitecoreContext()(LinksAccordion);\r\n","export default {\r\n fields: {\r\n footerSections: [\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 1\"},\r\n sectionType: { fields: { Key: { value: \"actionSectionType\" }, Phrase: { value: \"Action Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: { value: \"MARKET SELECTOR\" },\r\n Type: { fields: { Key: { value: \"MarketSelectorType\" }, Phrase: { value: \"Market Selector\" } } },\r\n Link: { value: { href: \"http://\", text: \"MARKET SELECTOR\" } },\r\n List: [\r\n {\r\n fields: {\r\n Title: {value: \"LANGUAGE LINKS\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\"} } },\r\n Link: { value: { href: \"http://\", text: \"LANGUAGE LINKS\" } },\r\n List: [\r\n { fields: { Title: { value: \"English\"}, Link: { value: { href: \"\", text: \"English\" } } } },\r\n { fields: { Title: { value: \"Spanish\"}, Link: { value: { href: \"\", text: \"Spanish\" } } } },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n Title: { value: \"United States\" },\r\n Link: { value: { href: \"\", text: \"United States\" } },\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n Title: { value: \"ARE YOU A DEALER?\" },\r\n Type: { fields: { Key: { value: \"dealerLinkType\" }, Phrase: { value: \"Dealer Link\" } } },\r\n Link: { value: { href: \"#\" } },\r\n List: [\r\n {\r\n fields: {\r\n Title: { value: \"ARE YOU A DEALER?\" },\r\n Link: { value: { href: \"https://portal.Corporate.com/DPLogin/Login.do\", text: \"DEALER LOGIN\" } }\r\n }\r\n }\r\n ],\r\n }\r\n }\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 2\" },\r\n sectionType: { fields: { Key: { value: \"groupSectionType\" }, Phrase: { value: \"Group Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"PRODUCTS\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"/Pages/Products.aspx\", text: \"PRODUCTS\" } },\r\n List: [\r\n { fields: { Title: { value: \"Tractors\"}, Link: { value: { href: \"/products/tractors\", text: \"Tractors\" } } } },\r\n { fields: { Title: { value: \"Harvesting\"}, Link: { value: { href: \"/products/harvesting\", text: \"Harvesting\" } } } },\r\n { fields: { Title: { value: \"Advanced Farming Systems® (AFS)\"}, Link: { value: { href: \"/products/advanced-farming-systems\", text: \"Advanced Farming Systems™ (AFS)\" } } } },\r\n { fields: { Title: { value: \"Application Equipment\"}, Link: { value: { href: \"/products/application-equipment\", text: \"Application Equipment\" } } } },\r\n { fields: { Title: { value: \"Skid Steers & Track Loaders\" }, Link: { value: { href: \"/products/skid-steers-track-loaders\", text: \"Skid Steers & Track Loaders\" } } } },\r\n { fields: { Title: { value: \"Loaders & Attachments\" }, Link: { value: { href: \"/products/loaders-attachments\", text: \"Loaders & Attachments\" } } } },\r\n { fields: { Title: { value: \"Tillage\" }, Link: { value: { href: \"/products/tillage\", text: \"Tillage\" } } } },\r\n { fields: { Title: { value: \"Mowers & Conditioners\" }, Link: { value: { href: \"/products/mowers-conditioners\", text: \"Mowers & Conditioners\" } } } },\r\n { fields: { Title: { value: \"Windrowers\" }, Link: { value: { href: \"/products/windrowers\", text: \"Windrowers\" } } } },\r\n { fields: { Title: { value: \"Wheel Rakes\" }, Link: { value: { href: \"/products/wheel-rakes-mergers\", text: \"Wheel Rakes\" } } } },\r\n { fields: { Title: { value: \"Forage Harvesters & Blowers\" }, Link: { value: { href: \"/products/forage-harvesters-blowers\", text: \"Forage Harvesters & Blowers\" } } } },\r\n { fields: { Title: { value: \"Planting & Seeding\" }, Link: { value: { href: \"/products/planting-seeding\", text: \"Planting & Seeding\" } } } },\r\n { fields: { Title: { value: \"Balers\" }, Link: { value: { href: \"/products/balers\", text: \"Balers\" } } } },\r\n { fields: { Title: { value: \"Our Technology\" }, Link: { value: { href: \"/company/innovations\", text: \"Our Technology\" } } } },\r\n { fields: { Title: { value: \"Special Offers\" }, Link: { value: { href: \"/tools-resources/special-offers\", text: \"Special Offers\" } } } },\r\n { fields: { Title: { value: \"Auction\" }, Link: { value: { href: \"\", text: \"Auction\" } } } },\r\n { fields: { Title: { value: \"Used Equipment\" }, Link: { value: { href: \"\", text: \"Used Equipment\" } } } },\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 3\" },\r\n sectionType: { fields: { Key: { value: \"groupSectionType\" }, Phrase: { value: \"Group Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"PARTS & SERVICE\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"/service-support/parts-and-service\", text: \"PARTS & SERVICE\" } },\r\n List: [],\r\n },\r\n },\r\n {\r\n fields: {\r\n Title: { value: \"CONNECT WITH \" },\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"/service-support/parts-and-service\", text: \"CONNECT WITH \" } },\r\n List: [\r\n { fields: { Title: { value: \"Find a dealer\"}, Link: { value: { href: \"/dealer-locator\", text: \"Find a dealer\" } } } },\r\n { fields: { Title: { value: \"Schedule a demo\"}, Link: { value: { href: \"/connect-with-us/request-a-demo\", text: \"Schedule a demo\" } } } },\r\n { fields: { Title: { value: \"Contact us\"}, Link: { value: { href: \"/connect-with-us/contact-us\", text: \"Contact us\" } } } },\r\n { fields: { Title: { value: \"Email sign up\"}, Link: { value: { href: \"/connect-with-us/email-signup\", text: \"Email sign up\" } } } },\r\n { fields: { Title: { value: \"Blog\" }, Link: { value: { href: \"\", text: \"Blog\" } } } },\r\n { fields: { Title: { value: \"Events\" }, Link: { value: { href: \"/connect-with-us/events\", text: \"Events\" } } } },\r\n { fields: { Title: { value: \"Plant tours\" }, Link: { value: { href: \"/connect-with-us/plant-tours\", text: \"Plant tours\" } } } },\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 4\" },\r\n sectionType: { fields: { Key: { value: \"groupSectionType\" }, Phrase: { value: \"Group Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"TOOLS & RESOURCES\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"http://\", text: \"TOOLS & RESOURCES\" } },\r\n List: [\r\n { fields: { Title: { value: \"Red right tractor\"}, Link: { value: { href: \"/tools-resources/right-red-tractor\", text: \"Red right tractor\" } } } },\r\n { fields: { Title: { value: \"Compare specifications\"}, Link: { value: { href: \"/tools-resources/compare-specs\", text: \"Compare specifications\" } } } },\r\n { fields: { Title: { value: \"Build & price\"}, Link: { value: { href: \"/tools-resources/build-price\", text: \"Build & price\" } } } },\r\n { fields: { Title: { value: \"Weighting & ballasting\"}, Link: { value: { href: \"/tools-resources/weighting-ballasting\", text: \"Weighting & ballasting\" } } } },\r\n { fields: { Title: { value: \"Brochures\" }, Link: { value: { href: \"/tools-resources/brochures\", text: \"Brochures\" } } } },\r\n { fields: { Title: { value: \"FAQs\" }, Link: { value: { href: \"/connect-with-us/faqs\", text: \"FAQs\" } } } },\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 5\" },\r\n sectionType: { fields: { Key: { value: \"groupSectionType\" }, Phrase: { value: \"Group Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"SUPPORT\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"#\", text: \"SUPPORT\" } },\r\n List: [\r\n { fields: { Title: { value: \"AFS Troubleshooting & support\"}, Link: { value: { href: \"/service-support/afs-troubleshooting-support\", text: \"AFS Troubleshooting & support\" } } } },\r\n { fields: { Title: { value: \"Financing\"}, Link: { value: { href: \"/tools-resources/financing\", text: \"Financing\" } } } },\r\n { fields: { Title: { value: \"Operator’s manual\"}, Link: { value: { href: \"/service-support/operators-manuals\", text: \"Operator's manual\" } } } },\r\n { fields: { Title: { value: \"Mobile apps\"}, Link: { value: { href: \"/tools-resources/apps\", text: \"Mobile Apps\" } } } },\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 6\" },\r\n sectionType: { fields: { Key: { value: \"groupSectionType\" }, Phrase: { value: \"Group Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"COMPANY\"},\r\n Type: { fields: { Key: { value: \"groupLinkType\" }, Phrase: { value: \"Group Link\" } } },\r\n Link: { value: { href: \"\", text: \"COMPANY\" } },\r\n List: [\r\n { fields: { Title: { value: \"About \"}, Link: { value: { href: \"\", text: \"About \" } } } },\r\n { fields: { Title: { value: \"Careers\"}, Link: { value: { href: \"https://www.corporatendustrial.com/en-us/careers/overview/Pages/default.aspx\", text: \"Careers\" } } } },\r\n { fields: { Title: { value: \"Newsroom\"}, Link: { value: { href: \"/company/newsroom\", text: \"Newsroom\" } } } },\r\n { fields: { Title: { value: \"Investors\"}, Link: { value: { href: \"https://www.corporatendustrial.com/en-US/investor_relations/overview/Pages/default.aspx\", text: \"Investors\" } } } },\r\n { fields: { Title: { value: \"Toys & merchandise\"}, Link: { value: { href: \"\", text: \"Toys & merchandise\" } } } },\r\n { fields: { Title: { value: \"Take action with \"}, Link: { value: { href: \"\", text: \"Take action with \" } } } },\r\n\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n },\r\n {\r\n fields: {\r\n sectionName: { value: \"Section 7\" },\r\n sectionType: { fields: { Key: { value: \"navigationSectionType\" }, Phrase: { value: \"Navigation Section\" } } },\r\n footerLinks: [\r\n {\r\n fields: {\r\n Title: {value: \"NAVIGATION\"},\r\n Type: { fields: { Key: { value: \"navigationLinkType\" }, Phrase: { value: \"Navigation Link\" } } },\r\n Link: { value: { href: \"#\", text: \"NAVIGATION\" } },\r\n List: [\r\n { fields: { Title: { value: \"Site Map\"}, Link: { value: { href: \"/Pages/sitemap.aspx\", text: \"Site Map\" } } } },\r\n { fields: { Title: { value: \"Terms & Conditions\"}, Link: { value: { href: \"/Pages/legal-notice.aspx\", text: \"Terms & Conditions\" } } } },\r\n { fields: { Title: { value: \"Legal Notice\"}, Link: { value: { href: \"/company/Legal Notice\", text: \"Legal Notice\" } } } },\r\n { fields: { Title: { value: \"Privacy Policy\"}, Link: { value: { href: \"/Pages/privacy-policy.aspx\", text: \"Privacy Policy\" } } } },\r\n { fields: { Title: { value: \"CCPA Privacy Policy\"}, Link: { value: { href: \"/Pages/privacy-notice-for-california-residents.aspx\", text: \"CCPA Privacy Policy\" } } } },\r\n { fields: { Title: { value: \"Cookie Notice\"}, Link: { value: { href: \"\", text: \"Cookie Notice\" } } } },\r\n ],\r\n },\r\n },\r\n ],\r\n },\r\n }\r\n ],\r\n copyrightText : { value: \"© 2021 Corporate Industrial America LLC. All Rights Reserved. and Corporate Industrial Capital are registered trademarks of Corporate Industrial America LLC.\" },\r\n image: {\r\n value: {\r\n src: \"http://localhost:8085/images/Background-Footer-white_cut.jpg\",\r\n alt: \" Background\",\r\n width: \"1680\",\r\n height: \"460\",\r\n title: \" Footer Background white\"\r\n }\r\n },\r\n backToTopText: { value: 'Back To Top' },\r\n },\r\n};\r\n","import {\r\n ImageField,\r\n StringField,\r\n FooterSection,\r\n FooterSectionFields,\r\n FooterLinkFields,\r\n LinkField,\r\n} from '../../../types/types'\r\nimport { FooterFields, FooterProps } from '../types/Footer.types'\r\nimport mock from '../../../mocks/Footer/Footer.mock'\r\n\r\nexport class FooterModel {\r\n private readonly fields?: FooterFields\r\n constructor(props: FooterProps) {\r\n this.fields = props.fields || null\r\n }\r\n\r\n private filterSectionByType(list: FooterSection[], type: string) {\r\n return list.filter(\r\n (item) => item.fields?.sectionType?.fields?.Key?.value === type\r\n )\r\n }\r\n\r\n get footerSections(): FooterSection[] {\r\n return this.filterSectionByType(\r\n this.fields?.footerSections ?? mock.fields.footerSections,\r\n 'groupSectionType'\r\n )\r\n }\r\n\r\n get navigationSection(): FooterLinkFields {\r\n return this.filterSectionByType(\r\n this.fields?.footerSections ?? mock.fields.footerSections,\r\n 'navigationSectionType'\r\n )?.[0]?.fields?.footerLinks?.[0]?.fields\r\n }\r\n\r\n get actionSection(): FooterSectionFields {\r\n return this.filterSectionByType(\r\n this.fields?.footerSections ?? mock.fields.footerSections,\r\n 'actionSectionType'\r\n )?.[0]?.fields\r\n }\r\n\r\n get socialMediaLinks(): FooterLinkFields {\r\n return this.filterSectionByType(\r\n this.fields?.footerSections ?? mock.fields.footerSections,\r\n 'socialMediaSectionType'\r\n )?.[0]?.fields?.footerLinks?.[0]?.fields\r\n }\r\n\r\n get copyrightText(): StringField {\r\n return this.fields?.copyrightText ?? mock.fields.copyrightText\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.image ?? mock.fields.image\r\n }\r\n get mobileImage(): ImageField {\r\n return this.fields?.mobileImage ?? mock.fields.image\r\n }\r\n get allowFallbackForMobile(): boolean {\r\n return this.fields?.AllowFallbackForMobile.value\r\n }\r\n get backToTopText(): StringField {\r\n return this.fields?.backToTopText ?? mock.fields.backToTopText\r\n }\r\n get logoLink(): LinkField {\r\n return this.fields?.logoLink\r\n }\r\n get slogan(): StringField {\r\n return this.fields?.slogan\r\n }\r\n}\r\n","import React, { FC } from \"react\";\r\nimport { FooterLink } from \"../../../../types/types\";\r\nimport { FooterLinkModel } from \"../../../../lib/shared-models/FooterLink.model\";\r\nimport \"./styles.scss\";\r\nimport { Link, RichText, Text } from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nconst Navigation: FC = (props) => {\r\n const model = new FooterLinkModel(props);\r\n\r\n const items = model.list.map((item: FooterLink, index: number) =>\r\n item.fields?.Link?.value?.href &&\r\n !item.fields?.IsCookiePolicyLink?.value ? (\r\n
  • \r\n \r\n
  • \r\n ) : (\r\n
  • \r\n \r\n \r\n \r\n
  • \r\n )\r\n );\r\n return
      {items}
    ;\r\n};\r\n\r\nexport default Navigation;\r\n","import React, { FC } from \"react\";\r\nimport { Text, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { FooterLink } from \"../../../../types/types\";\r\nimport { FooterLinkModel } from \"../../../../lib/shared-models/FooterLink.model\";\r\n\r\nconst SocialMedia: FC = (props) => {\r\n const model = new FooterLinkModel(props);\r\n\r\n const socialLinks = model.list.map((item, i) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n });\r\n return
    {socialLinks}
    ;\r\n};\r\n\r\nexport default SocialMedia;\r\n","import React, { FC } from 'react'\r\nimport { Text } from '@sitecore-jss/sitecore-jss-react'\r\nimport { BackToTopProps } from './BackToTop.types'\r\nimport { windowService } from '../../../../utils/window.utils'\r\nimport './styles.scss'\r\n\r\nconst BackToTop: FC = ({ field }) => {\r\n const onClick = (): void =>\r\n windowService().scrollTo({ top: 0, behavior: 'smooth' })\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default BackToTop\r\n","import React, { FC } from \"react\";\r\nimport { Text, Image, RichText, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport LinksAccordion from \"./components/LinksAccordion\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { FooterModel } from \"./types/Footer.model\";\r\nimport { FooterProps } from \"./types/Footer.types\";\r\nimport ActionSection from \"./components/ActionSection\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport Navigation from \"./components/Navigation\";\r\nimport SocialMedia from \"./components/SocialMedia\";\r\nimport BackToTop from \"./components/BackToTop\";\r\n\r\nimport \"./styles.scss\";\r\n\r\nconst Footer: FC = (props) => {\r\n const model = new FooterModel(props);\r\n\r\n const handleClick = () => {\r\n window.location.href = model.logoLink?.value?.href;\r\n };\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n 0\r\n ? model.mobileImage\r\n : model.allowFallbackForMobile && model.image\r\n }\r\n className=\"footer__logo mobileImage\"\r\n />\r\n \r\n \r\n
    \r\n {model.footerSections.map((item, i) => (\r\n \r\n ))}\r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default Footer;\r\n","import {\r\n GenericCTAListFields,\r\n GenericCTAListProps,\r\n GenericCTAListParams,\r\n CardList,\r\n} from \"../types/GenericCTAList.types\";\r\n\r\nexport class GenericCTAListModel {\r\n private readonly fields: GenericCTAListFields;\r\n private readonly params: GenericCTAListParams;\r\n\r\n constructor(props: GenericCTAListProps) {\r\n this.fields = props.fields || null;\r\n this.params = props.params || null;\r\n }\r\n\r\n get list(): CardList[] {\r\n return this.fields?.List;\r\n }\r\n\r\n get variant(): string {\r\n return this.params?.Variant;\r\n }\r\n\r\n get title(): string {\r\n return this.fields?.Title?.value;\r\n }\r\n}\r\n","import React from 'react'\r\nimport { Link } from '@sitecore-jss/sitecore-jss-react'\r\nimport { GenericCTAListProps } from './types/GenericCTAList.types'\r\nimport { GenericCTAListModel } from './models/GenericCTAList.model'\r\nimport './index.scss'\r\nimport '../SplitModule/index.scss'\r\nimport '../TextModule/index.scss'\r\n\r\nconst GenericCTAList = (props: GenericCTAListProps) => {\r\n const model = new GenericCTAListModel(props)\r\n const array = model?.list\r\n\r\n const numberOfRows = Math.ceil(array.length / 4)\r\n const rows = [...Array(numberOfRows)]\r\n const elementRows = rows.map((row, idx) => array.slice(idx * 4, idx * 4 + 4))\r\n\r\n return (\r\n
    \r\n {model?.title && (\r\n \r\n {model?.title}\r\n \r\n )}\r\n
    \r\n {elementRows.map((row, i) => {\r\n return (\r\n \r\n {row.map((innerElem, ind) => (\r\n \r\n \r\n \r\n
    \r\n
    \r\n ))}\r\n \r\n )\r\n })}\r\n \r\n {!model?.title &&
    }\r\n \r\n )\r\n}\r\n\r\nexport default GenericCTAList\r\n","import React, { FC, memo, useEffect } from \"react\";\r\nimport { Image } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { ImageField } from \"@sitecore-jss/sitecore-jss-react/types/components/Image\";\r\nimport \"./HeaderLogo.scss\";\r\n\r\ninterface HeaderLogoProps {\r\n isDark: boolean;\r\n logoBlack: ImageField;\r\n logoWhite: ImageField;\r\n href: string;\r\n}\r\n\r\nconst HeaderLogo: FC = memo(\r\n ({ logoBlack, logoWhite, isDark, href }) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n);\r\n\r\nexport default memo(HeaderLogo);\r\n","import React, { FunctionComponent } from 'react'\r\nimport { Language } from '../../types/header.types'\r\nimport './LanguageSwitch.scss'\r\n\r\ninterface LanguageSwitchProps {\r\n languages: Language[]\r\n}\r\n\r\nconst LanguageSwitch: FunctionComponent = ({\r\n languages,\r\n}) => {\r\n return (\r\n
    \r\n {languages.map((lang, i) => (\r\n \r\n {lang.text.toUpperCase()}\r\n \r\n ))}\r\n
    \r\n )\r\n}\r\n\r\nexport default LanguageSwitch\r\n","import { useEffect, useRef } from 'react'\r\n\r\n// * useMemorySafeTimeout * //\r\n/**\r\n * ### useMemorySafeTimeout\r\n *\r\n * This hook returns a setTimout function that clears itself\r\n * when the component unmounts to avoid memory leaks\r\n */\r\nexport const useMemorySafeTimeout: () => (\r\n cb: () => void,\r\n ms: number\r\n) => NodeJS.Timeout = () => {\r\n const timeoutId = useRef()\r\n\r\n const setSafeTimeout: (cb: () => void, ms: number) => NodeJS.Timeout = (\r\n cb,\r\n ms\r\n ) => {\r\n const id = setTimeout(() => {\r\n cb()\r\n timeoutId.current = null\r\n }, ms)\r\n timeoutId.current = id\r\n return id\r\n }\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (!timeoutId) return\r\n clearTimeout(timeoutId.current)\r\n }\r\n }, [])\r\n\r\n return setSafeTimeout\r\n}\r\n","import React, { FunctionComponent, memo, useEffect, useState } from \"react\";\r\nimport \"./HamburgerButton.scss\";\r\n\r\nexport interface HamburgerButtonProps {\r\n isOpen: boolean;\r\n clickHandler: () => void;\r\n}\r\n\r\nconst HamburgerButton: FunctionComponent = memo(\r\n ({ isOpen, clickHandler }) => {\r\n const [isReversing, setIsReversing] = useState(false);\r\n\r\n useEffect(() => {\r\n if (isOpen) setIsReversing(true);\r\n else\r\n setTimeout(() => {\r\n setIsReversing(false);\r\n }, 300);\r\n }, [isOpen]);\r\n\r\n return (\r\n \r\n );\r\n }\r\n);\r\n\r\nexport default HamburgerButton;\r\n","import Axios from \"axios\";\r\nimport { useCallback, useEffect, useState } from \"react\";\r\n\r\nexport interface StockPriceFeed {\r\n value: string | null;\r\n change: string | null;\r\n uptrend: boolean;\r\n}\r\n\r\ninterface StockPriceFeeds {\r\n NYSE: StockPriceFeed;\r\n BI: StockPriceFeed;\r\n}\r\n\r\nexport const useStockPriceFeed: () => StockPriceFeeds = () => {\r\n const [priceFeed, setPriceFeed] = useState({\r\n NYSE: { value: null, change: null, uptrend: false },\r\n BI: { value: null, change: null, uptrend: false },\r\n });\r\n\r\n const getPriceFeed: () => Promise = useCallback(async () => {\r\n const { data } = await Axios.get(\r\n \"https://charts3.equitystory.com/api-web/cnhindustrial-v31/English\"\r\n );\r\n\r\n const newPriceFeed: StockPriceFeeds = {\r\n NYSE: {\r\n value: `${data?.NYSE?.closePrice} USD`,\r\n change: data?.NYSE?.change_relative,\r\n uptrend: parseFloat(data?.NYSE?.change) >= 0,\r\n },\r\n BI: {\r\n value: `${data?.Milan?.closePrice} EUR`,\r\n change: data?.Milan?.change_relative,\r\n uptrend: parseFloat(data?.Milan?.change) >= 0,\r\n },\r\n };\r\n\r\n return newPriceFeed;\r\n }, []);\r\n\r\n useEffect(() => {\r\n getPriceFeed().then((priceFeed) => setPriceFeed(priceFeed));\r\n }, []);\r\n\r\n return priceFeed;\r\n};\r\n","import React, { FunctionComponent, memo, useEffect, useState } from \"react\";\r\nimport { useStockPriceFeed } from \"../../../../hooks/useStockPriceFeed\";\r\nimport \"./StockTicker.scss\";\r\n\r\nconst StockTicker: FunctionComponent = ({hideMILabel}) => {\r\n const stockPriceFeed = useStockPriceFeed();\r\n\r\n const [display, setDisplay] = useState(false);\r\n useEffect(() => {\r\n if((stockPriceFeed && stockPriceFeed.NYSE && stockPriceFeed.NYSE.value && stockPriceFeed.BI && stockPriceFeed.BI.value\r\n && stockPriceFeed.NYSE.value.indexOf('undefined') == -1 && stockPriceFeed.BI.value.indexOf('undefined') == -1)) {\r\n setDisplay(true);\r\n }\r\n else {\r\n setDisplay(false);\r\n }\r\n }, [stockPriceFeed])\r\n\r\n return (\r\n
    \r\n
    CNH
    \r\n
    NYSE
    \r\n

    \r\n {stockPriceFeed.NYSE.value}\r\n

    \r\n
    BI
    \r\n

    \r\n {stockPriceFeed.BI.value}\r\n

    \r\n
    *
    \r\n
    \r\n );\r\n};\r\n\r\nexport default memo(StockTicker);\r\n","import React, {\r\n FC,\r\n memo,\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Placeholder,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"./Search.scss\";\r\nimport { StringField, CheckboxField } from \"../../../../types/types\";\r\n\r\nexport interface SearchProps {\r\n searchPage: StringField;\r\n hideSearch: CheckboxField;\r\n searchLabel: StringField;\r\n}\r\n\r\nconst Search: FC = memo(({ searchPage, hideSearch, searchLabel }) => {\r\n const link = searchPage?.value?.[\"href\"];\r\n const hide = hideSearch?.value;\r\n const labelSearch = searchLabel?.value;\r\n\r\n console.log('hiding search ' + hide);\r\n console.log('label search ' + labelSearch);\r\n\r\n let urlParams;\r\n if (typeof window !== \"undefined\") {\r\n urlParams = new URLSearchParams(window.location.search);\r\n }\r\n let queryText;\r\n if (urlParams != undefined) {\r\n queryText =\r\n urlParams.get(\"q\") != undefined && urlParams.get(\"q\") != \"\"\r\n ? urlParams.get(\"q\")\r\n : \"\";\r\n }\r\n let type;\r\n if (urlParams != undefined) {\r\n type =\r\n urlParams.get(\"type\") != undefined && urlParams.get(\"type\") != \"\"\r\n ? urlParams.get(\"type\")\r\n : \"\";\r\n }\r\n let pageID;\r\n if (urlParams != undefined) {\r\n pageID =\r\n urlParams.get(\"pageID\") != undefined && urlParams.get(\"pageID\") != \"\"\r\n ? urlParams.get(\"pageID\")\r\n : \"\";\r\n }\r\n\r\n const [qT, setValue] = useState(\"\");\r\n const handleChangeHeader = (e) => setValue(e.target.value);\r\n\r\n const hasSearched = queryText != undefined && queryText != \"\" ? true : false;\r\n let baseUrl = \"\";\r\n if (typeof window !== \"undefined\") {\r\n baseUrl = window.location.origin;\r\n }\r\n\r\n useEffect(() => {\r\n if (qT.length > 0) {\r\n document.getElementById(\"searchInputCrossSvgHeader\").style.display =\r\n \"block\";\r\n document.getElementById(\"search-value\").style.display = \"none\";\r\n } else {\r\n document.getElementById(\"searchInputCrossSvgHeader\").style.display =\r\n \"none\";\r\n document.getElementById(\"search-value\").style.display = \"block\";\r\n }\r\n }, [qT]);\r\n\r\n const onInputSearchKeyupHeader = (e) => {\r\n if (e.keyCode == \"13\") {\r\n searchSitecoreHeader();\r\n setValue(\"\");\r\n }\r\n };\r\n\r\n const searchSitecoreHeader = () => {\r\n const currentPage = 1;\r\n const itemPerPage = 10;\r\n const valSearch = (\r\n document.getElementById(\"searchFieldsetInputHeader\") as HTMLInputElement\r\n ).value;\r\n if (valSearch && valSearch != \"\") {\r\n let redirectUrl = \"\";\r\n if (type && type != \"\" && pageID && pageID != \"\") {\r\n redirectUrl = `${link}?q=${valSearch}&type=${type}&pageID=${pageID}`;\r\n } else {\r\n redirectUrl = `${link}?q=${valSearch}&page=${currentPage}&take=${itemPerPage}`; //&filters=Vehicles\r\n }\r\n if (typeof window !== \"undefined\") {\r\n window.location.href = redirectUrl;\r\n }\r\n }\r\n };\r\n\r\n const clearInputSearchHeader = () => {\r\n setValue(\"\");\r\n };\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n});\r\n\r\nexport default Search;\r\n","import React, {\r\n FC,\r\n memo,\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n useState,\r\n} from \"react\";\r\nimport { Text, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { useWindowSize } from \"react-use\";\r\nimport { LinkField } from \"@sitecore-jss/sitecore-jss-react/types/components/Link\";\r\nimport {\r\n HeaderMenuSection,\r\n Language,\r\n PrimaryHeaderMenuLink,\r\n} from \"../../types/header.types\";\r\nimport { useMemorySafeTimeout } from \"../../../../hooks/useMemorySafeTimeout\";\r\nimport \"./MobileMenu.scss\";\r\n\r\nimport HamburgerButton, {\r\n HamburgerButtonProps,\r\n} from \"../HamburgerButton/HamburgerButton\";\r\nimport RoutableSitecoreLink from \"../../../../react-only-components/RoutableSitecoreLink\";\r\nimport StockTicker from \"../StockTicker/StockTicker\";\r\nimport LanguageSwitch from \"../LanguageSwitch/LanguageSwitch\";\r\nimport Search, { SearchProps } from \"../Search/Search\";\r\nimport { TLinkField } from \"../../../../types/sitecore.types\";\r\nimport RoutableNotEditableLink from \"../../../../react-only-components/RoutableNotEditableLink\";\r\n\r\ninterface MobileMenuProps extends HamburgerButtonProps, SearchProps {\r\n content: PrimaryHeaderMenuLink[];\r\n languages: Language[];\r\n hideMILabel: boolean;\r\n stockTickerLink: TLinkField;\r\n}\r\n\r\nconst MobileMenu: FC = memo(\r\n ({ isOpen, content, languages, searchPage, hideSearch, searchLabel, clickHandler, hideMILabel, stockTickerLink }) => {\r\n const { height, width } = useWindowSize();\r\n const safeTimeout = useMemorySafeTimeout();\r\n const getInputVal = useRef(null);\r\n\r\n const [activeLevel, setActiveLevel] = useState(\"\");\r\n const [showSecondLevel, setShowSecondLevel] = useState(false);\r\n\r\n const handleLevelClick: (level: string) => void = useCallback((level) => {\r\n setActiveLevel(level);\r\n if (level.length === 0) return;\r\n setShowSecondLevel(true);\r\n }, []);\r\n\r\n const handleSecondLevelClose = useCallback(() => {\r\n setShowSecondLevel(false);\r\n setTimeout(() => {\r\n setActiveLevel(\"\");\r\n }, 220);\r\n }, []);\r\n\r\n const isLink: (link: LinkField) => boolean = useCallback((link) => {\r\n return link.value.href.length > 0;\r\n }, []);\r\n\r\n const NavigationLevel: FC<{\r\n isFirst?: boolean;\r\n isVisible: boolean;\r\n primaryData?: PrimaryHeaderMenuLink[];\r\n secondaryData?: HeaderMenuSection[];\r\n onLevelClick?: (level: string) => void;\r\n onSecondLevelClose?: () => void;\r\n }> = useMemo(() => {\r\n return function component({\r\n isFirst = false,\r\n isVisible,\r\n primaryData = [],\r\n secondaryData = [],\r\n onLevelClick = () => {},\r\n onSecondLevelClose = () => {},\r\n }) {\r\n return (\r\n \r\n {isFirst ? (\r\n primaryData.map(({ fields: navItem }, i) =>\r\n isLink(navItem.link) ? (\r\n \r\n ) : (\r\n onLevelClick(navItem.menuButton.value)}\r\n key={i}\r\n >\r\n \r\n \r\n \r\n )\r\n )\r\n ) : (\r\n <>\r\n \r\n \r\n Back\r\n \r\n {secondaryData.map(({ fields: { link } }, i) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n );\r\n };\r\n }, [width]);\r\n\r\n // The following is to prevent the in-level animation\r\n // from occuring when closing the drawer\r\n\r\n const [hideFirstLevelAnimation, setHideFirstLevelAnimation] =\r\n useState(false);\r\n const tid = useRef();\r\n\r\n useEffect(() => {\r\n if (!isOpen && activeLevel !== \"\") {\r\n setHideFirstLevelAnimation(true);\r\n tid.current = safeTimeout(() => {\r\n setActiveLevel(\"\");\r\n setShowSecondLevel(false);\r\n setHideFirstLevelAnimation(false);\r\n }, 300);\r\n } else {\r\n if (activeLevel !== \"\") {\r\n setActiveLevel(\"\");\r\n setShowSecondLevel(false);\r\n setHideFirstLevelAnimation(false);\r\n }\r\n if (!tid.current) return;\r\n clearTimeout(tid.current);\r\n }\r\n }, [isOpen]);\r\n\r\n return (\r\n <>\r\n \r\n\r\n \r\n
    \r\n {!hideFirstLevelAnimation && (\r\n \r\n )}\r\n\r\n c === activeLevel\r\n )?.fields?.section1\r\n }\r\n />\r\n
    \r\n\r\n
    \r\n {stockTickerLink?.value?.href ? (\r\n \r\n \r\n \r\n ) : (\r\n
    \r\n \r\n
    \r\n )}\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n );\r\n }\r\n);\r\n\r\nexport default MobileMenu;\r\n","import React, { FC, memo, useCallback, useEffect, useState } from 'react'\r\nimport { Text, Link } from '@sitecore-jss/sitecore-jss-react'\r\nimport { PrimaryHeaderMenuLink } from '../../types/header.types'\r\nimport { useMemorySafeTimeout } from '../../../../hooks/useMemorySafeTimeout'\r\nimport { useCompareRoute } from '../../hooks/useCompareRoute'\r\nimport './HeaderLinks.scss'\r\n\r\nimport RoutableSitecoreLink from '../../../../react-only-components/RoutableSitecoreLink'\r\n\r\ninterface HeaderLinksProps {\r\n isHover: boolean\r\n primaryHeaderMenuLinks: PrimaryHeaderMenuLink[]\r\n onDrawerStateChange: (state: 'open' | 'closed') => void\r\n}\r\n\r\nconst HeaderLinks: FC = memo(\r\n ({ isHover, primaryHeaderMenuLinks, onDrawerStateChange }) => {\r\n const setSafeTimeout = useMemorySafeTimeout()\r\n const compare = useCompareRoute()\r\n\r\n const [activeLevel, setActiveLevel] = useState('')\r\n const [prevLevel, setPrevLevel] = useState('')\r\n\r\n const [isOpen, setIsOpen] = useState(false)\r\n const [isTransitioning, setIsTransitioning] = useState(false)\r\n\r\n const handleActiveLevelChange: (level: string) => void = useCallback(\r\n (level) => {\r\n if (level === activeLevel) {\r\n setIsOpen(false)\r\n setSafeTimeout(() => {\r\n setActiveLevel('')\r\n setPrevLevel('')\r\n }, 250)\r\n onDrawerStateChange('closed')\r\n setIsTransitioning(true)\r\n } else {\r\n setIsOpen(true)\r\n setPrevLevel(activeLevel)\r\n setActiveLevel(level)\r\n onDrawerStateChange('open')\r\n setIsTransitioning(true)\r\n }\r\n },\r\n [activeLevel]\r\n )\r\n\r\n // Keep drawer visible to end closing animation\r\n useEffect(() => {\r\n if (!isTransitioning) return\r\n setSafeTimeout(() => {\r\n setIsTransitioning(false)\r\n }, 250)\r\n }, [isTransitioning])\r\n\r\n // This sets the drawer visibility to hidden prematurely, should the mouse\r\n // leave the header (if the header is transparent) and make it transparent too.\r\n // -: add a \"should-drawer-even-care-about-being-transparent\" prop (e.g. page is not the root) - no longer needed\r\n useEffect(() => {\r\n if (!isHover && isTransitioning) setIsTransitioning(false)\r\n }, [isHover])\r\n\r\n return (\r\n <>\r\n
    \r\n {primaryHeaderMenuLinks.map(\r\n ({ fields: { link, menuButton, section1 } }, idx) => (\r\n
    \r\n {link.value.href.length > 0 ? (\r\n \r\n \r\n {compare(menuButton.value) && (\r\n
    \r\n )}\r\n \r\n ) : (\r\n <>\r\n {\r\n handleActiveLevelChange(menuButton.value)\r\n }}\r\n >\r\n \r\n \r\n {(compare(menuButton.value) ||\r\n section1\r\n .map((s) => s.fields.link.value.href)\r\n .includes(window.location.pathname)) && (\r\n
    \r\n )}\r\n \r\n )}\r\n
    \r\n )\r\n )}\r\n
    \r\n\r\n \r\n
    \r\n {primaryHeaderMenuLinks.map(\r\n (\r\n {\r\n fields: {\r\n section1: navLinks,\r\n menuButton: { value: levelName },\r\n },\r\n },\r\n idx\r\n ) => (\r\n 0\r\n ? 'Header__links_drawer_elements--animate'\r\n : ''\r\n }`}\r\n style={{\r\n opacity: levelName === activeLevel ? 1 : 0,\r\n zIndex: levelName === activeLevel ? 1 : 0,\r\n }}\r\n >\r\n {navLinks.map(({ fields: { link } }, i) => (\r\n \r\n ))}\r\n
    \r\n )\r\n )}\r\n
    \r\n
    \r\n \r\n )\r\n }\r\n)\r\n\r\nexport default HeaderLinks\r\n","import { useCallback } from 'react'\r\nimport { useLocation } from 'react-use'\r\n\r\nexport const useCompareRoute: () => (l: string) => boolean = () => {\r\n const loc = useLocation()\r\n\r\n const formatString: (s: string) => string = (s) =>\r\n s.replace(/-| |&/g, '').toLowerCase()\r\n\r\n const compare: (l: string) => boolean = useCallback(\r\n (l) =>\r\n loc\r\n ? loc.pathname\r\n ? formatString(loc.pathname.split('/').pop()) === formatString(l)\r\n : false\r\n : false,\r\n [loc]\r\n )\r\n\r\n return compare\r\n}\r\n","import React, {\r\n FunctionComponent,\r\n memo,\r\n useCallback,\r\n useEffect,\r\n useMemo,\r\n useState,\r\n useRef,\r\n} from \"react\";\r\nimport {\r\n useWindowScroll,\r\n useMedia,\r\n useLockBodyScroll,\r\n useWindowSize,\r\n} from \"react-use\";\r\nimport { HeaderProps } from \"./types/header.types\";\r\nimport { useScrollWithOffset } from \"../../hooks/use-scroll-offset\";\r\nimport \"./Header.scss\";\r\n\r\nimport HeaderLogo from \"./components/HeaderLogo/HeaderLogo\";\r\nimport LanguageSwitch from \"./components/LanguageSwitch/LanguageSwitch\";\r\nimport MobileMenu from \"./components/MobileMenu/MobileMenu\";\r\nimport HeaderLinks from \"./components/HeaderLinks/HeaderLinks\";\r\nimport StockTicker from \"./components/StockTicker/StockTicker\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\nimport Search from \"./components/Search/Search\";\r\nimport RoutableNotEditableLink from \"../../react-only-components/RoutableNotEditableLink\";\r\n\r\nconst index: FunctionComponent = ({ fields, params }) => {\r\n useScrollWithOffset();\r\n const { y } = useWindowScroll();\r\n const mobileBP = useMedia(\"(max-width: 1200px)\");\r\n const { width } = useWindowSize();\r\n\r\n const [isMobile, setIsMobile] = useState(null);\r\n\r\n useEffect(() => {\r\n if (mobileBP || width < 1200) setIsMobile(true);\r\n else setIsMobile(false);\r\n\r\n return () => {\r\n setIsMobile(null);\r\n };\r\n }, [mobileBP, width]);\r\n\r\n useEffect(() => {\r\n if (mobileBP || width < 1200) setIsMobile(true);\r\n else setIsMobile(false);\r\n\r\n return () => {\r\n setIsMobile(null);\r\n };\r\n }, []);\r\n\r\n const isRoot = useMemo(() => params?.Variant === \"v2\", [params]);\r\n const getInputVal = useRef(null);\r\n\r\n const [isDark, setIsDark] = useState(true);\r\n const [desktopDrawerState, setDesktopDrawerState] = useState<\r\n \"open\" | \"closed\"\r\n >(\"closed\");\r\n\r\n useEffect(() => {\r\n if (desktopDrawerState === \"open\") return;\r\n setIsDark(y < 10);\r\n }, [y]);\r\n\r\n const handleMouseEnter = useCallback(() => {\r\n if (y > 10 || isMobile || desktopDrawerState === \"open\") return;\r\n setIsDark(false);\r\n }, [y, isMobile, desktopDrawerState]);\r\n const handleMouseLeave = useCallback(() => {\r\n if (y > 10 || isMobile || desktopDrawerState === \"open\") return;\r\n setIsDark(true);\r\n }, [y, isMobile, desktopDrawerState]);\r\n\r\n const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false);\r\n // const [logoBlack, setLogoBlack] = useState<>\r\n useLockBodyScroll(isMobileMenuOpen);\r\n\r\n const handleMobileMenuToggle = useCallback(() => {\r\n setIsMobileMenuOpen((prevValue) => !prevValue);\r\n if (y > 10) return;\r\n setIsDark((prevValue) => !prevValue);\r\n }, [y]);\r\n\r\n const handleDesktopDrawerStateChange: (state: \"open\" | \"closed\") => void =\r\n useCallback((state) => {\r\n setDesktopDrawerState(state);\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (desktopDrawerState === \"open\") {\r\n setIsDark(false);\r\n }\r\n }, [desktopDrawerState]);\r\n\r\n useEffect(() => {\r\n if (!isMobileMenuOpen || isMobile) return;\r\n setIsMobileMenuOpen(false);\r\n setIsDark(!(y > 10));\r\n }, [isMobile]);\r\n\r\n return (\r\n <>\r\n {!isRoot && (\r\n \r\n )}\r\n\r\n \r\n
    \r\n \r\n\r\n {isMobile === false && (\r\n \r\n )}\r\n\r\n {isMobile === false && (\r\n
    \r\n {fields?.StockTickerLink?.value?.href ? (\r\n \r\n \r\n \r\n ) : (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n )}\r\n\r\n {isMobile && (\r\n \r\n )}\r\n
    \r\n \r\n \r\n );\r\n};\r\n\r\nexport default memo(index);\r\n","import { useCallback, useEffect } from 'react'\r\n\r\nconst HEADER_OFFSET = 99\r\n\r\nexport const useScrollWithOffset: () => void = () => {\r\n const windowService: () => Window | {} = useCallback(\r\n () => (typeof window !== 'undefined' ? window : {}),\r\n []\r\n )\r\n\r\n useEffect(() => {\r\n const _window = windowService()\r\n if (!(_window instanceof Window)) return\r\n\r\n const key = _window.location.href.split('#')[1]\r\n\r\n const element = document.getElementById(key)\r\n if (!element) return\r\n\r\n const elementPosition = element.getBoundingClientRect().top\r\n const offsetPosition = elementPosition + _window.scrollY - HEADER_OFFSET\r\n\r\n _window.scrollTo({\r\n top: offsetPosition,\r\n behavior: 'smooth',\r\n })\r\n }, [])\r\n}\r\n","import React, {\r\n createContext,\r\n Dispatch,\r\n MutableRefObject,\r\n Reducer,\r\n useContext,\r\n useEffect,\r\n useReducer,\r\n useRef,\r\n} from 'react'\r\n\r\nexport const MenuContext: React.Context<[TMenuState, Dispatch]> =\r\n createContext(null)\r\nMenuContext.displayName = 'MenuContext'\r\n\r\nconst initialIsOpen = false // needs to start as false to prevent multiple elements being opened at the same time\r\nconst initialIsThirdOpen = false\r\nconst initialHeight = 0\r\nconst initialThirdHeight = 0\r\nexport function useMenuContext() {\r\n return useContext(MenuContext)\r\n}\r\n\r\nexport function useMenuDispatcher() {\r\n return useMenuContext()[1]\r\n}\r\n\r\nexport function useMenuState() {\r\n return useMenuContext()[0]\r\n}\r\n\r\nexport function useMenuItem(\r\n menuState: TMenuState,\r\n menuDispatcher: Dispatch\r\n): [boolean, TSetOpen] {\r\n const elementRef = useRef(null) // value that never changes in different renderings\r\n const isOpen =\r\n menuState.find((element) => element.ref === elementRef)?.isOpen ??\r\n initialIsOpen\r\n\r\n const setOpen = (newIsOpen = true) => {\r\n menuDispatcher({\r\n type: newIsOpen ? 'openElement' : 'closeElement',\r\n ref: elementRef,\r\n })\r\n }\r\n\r\n useEffect(() => {\r\n menuDispatcher({\r\n type: 'addElement',\r\n ref: elementRef,\r\n initialIsOpen,\r\n height: initialHeight,\r\n initialIsThirdOpen,\r\n theight: initialThirdHeight,\r\n }) // , theight:initialThirdHeight, initialIsOpen,\r\n return () => {\r\n menuDispatcher({ type: 'removeElement', ref: elementRef })\r\n }\r\n }, [])\r\n\r\n return [isOpen, setOpen]\r\n}\r\n\r\nexport function useMenuThirdItem(\r\n menuState: TMenuState,\r\n menuDispatcher: Dispatch\r\n): [boolean, TSetThirdOpen] {\r\n const elementRef = useRef(null) // value that never changes in different renderings\r\n const isThirdOpen =\r\n menuState.find((element) => element.ref === elementRef)?.isThirdOpen ??\r\n initialIsThirdOpen\r\n\r\n const setThirdOpen = (newIsThirdOpen = true) => {\r\n menuDispatcher({\r\n type: newIsThirdOpen ? 'openThirdElement' : 'closeThirdElement',\r\n ref: elementRef,\r\n })\r\n }\r\n\r\n useEffect(() => {\r\n menuDispatcher({\r\n type: 'addThirdElement',\r\n ref: elementRef,\r\n initialIsOpen,\r\n initialIsThirdOpen,\r\n }) //, theight:initialThirdHeight initialIsOpen,\r\n return () => {\r\n menuDispatcher({ type: 'removeElement', ref: elementRef })\r\n }\r\n }, [])\r\n\r\n return [isThirdOpen, setThirdOpen]\r\n}\r\n\r\nexport function useSubMenuHeight(\r\n menuState: TMenuState,\r\n menuDispatcher: Dispatch\r\n): [number, TSetHeight] {\r\n const elementRef = useRef(null) // value that never changes in different renderings\r\n const height: number =\r\n menuState.find((element) => element.ref === elementRef)?.height ??\r\n initialHeight\r\n\r\n const setHeight = (height) => {\r\n menuDispatcher({\r\n type: 'updateMenuHeight',\r\n ref: elementRef,\r\n height: height,\r\n }) //, theight : height\r\n }\r\n\r\n return [height, setHeight]\r\n}\r\n\r\nexport function useSubMenuThirdHeight(\r\n menuState: TMenuState,\r\n menuDispatcher: Dispatch\r\n): [number, TSetThirdHeight] {\r\n const elementRef = useRef(null) // value that never changes in different renderings\r\n const theight: number =\r\n menuState.find((element) => element.ref === elementRef)?.height ??\r\n initialThirdHeight\r\n\r\n const setThirdHeight = (theight) => {\r\n menuDispatcher({\r\n type: 'updateThirdMenuHeight',\r\n ref: elementRef,\r\n theight: theight,\r\n })\r\n }\r\n\r\n return [theight, setThirdHeight]\r\n}\r\n\r\nexport type TSetHeight = (height: number) => void\r\nexport type TSetOpen = (newIsOpen: boolean) => void\r\nexport type TSetThirdOpen = (newisThirdOpen: boolean) => void\r\nexport type TSetThirdHeight = (theight: number) => void\r\n\r\nexport function useMenuThirdItemWithContext(): [boolean, TSetThirdOpen] {\r\n const [menuState, menuDispatcher] = useMenuContext()\r\n return useMenuThirdItem(menuState, menuDispatcher)\r\n}\r\n\r\nexport function useMenuItemWithContext(): [boolean, TSetOpen] {\r\n const [menuState, menuDispatcher] = useMenuContext()\r\n return useMenuItem(menuState, menuDispatcher)\r\n}\r\n\r\nexport function useMenuHeightWithContext(): [number, TSetHeight] {\r\n const [menuState, menuDispatcher] = useMenuContext()\r\n return useSubMenuHeight(menuState, menuDispatcher)\r\n}\r\n\r\nexport function useMenuThirdHeightWithContext(): [number, TSetThirdHeight] {\r\n const [menuState, menuDispatcher] = useMenuContext()\r\n return useSubMenuThirdHeight(menuState, menuDispatcher)\r\n}\r\n\r\nexport type TMenuState = {\r\n ref: MutableRefObject\r\n isOpen: boolean\r\n isThirdOpen: boolean\r\n height: number\r\n theight: number\r\n}[]\r\nexport type TMenuAction =\r\n | {\r\n type: 'addElement'\r\n initialIsOpen: boolean\r\n initialIsThirdOpen: boolean\r\n ref: MutableRefObject\r\n height: number\r\n theight: number\r\n }\r\n | {\r\n type: 'updateMenuHeight'\r\n ref: MutableRefObject\r\n height: number\r\n }\r\n | {\r\n type: 'updateThirdMenuHeight'\r\n ref: MutableRefObject\r\n theight: number\r\n }\r\n | {\r\n type: 'openElement' | 'removeElement' | 'closeElement'\r\n ref: MutableRefObject\r\n }\r\n | {\r\n type: 'addThirdElement'\r\n initialIsOpen: boolean\r\n initialIsThirdOpen: boolean\r\n ref: MutableRefObject\r\n }\r\n | {\r\n type: 'openThirdElement' | 'removeThirdElement' | 'closeThirdElement'\r\n ref: MutableRefObject\r\n }\r\n | {\r\n type: 'closeThirdAll'\r\n }\r\n | {\r\n type: 'closeAll'\r\n }\r\ntype TMenuReducer = Reducer\r\n\r\nconst initialState: TMenuState = []\r\n\r\nconst menuReducer: TMenuReducer = (state, action) => {\r\n switch (action.type) {\r\n case 'addElement':\r\n return [\r\n ...state,\r\n {\r\n ref: action.ref,\r\n isOpen: action.initialIsOpen,\r\n isThirdOpen: action.initialIsThirdOpen,\r\n height: 0,\r\n theight: 0,\r\n },\r\n ]\r\n break\r\n case 'updateMenuHeight':\r\n return state.map((element) => {\r\n element.isOpen ? (element.height = action.height) : (element.height = 0)\r\n return element\r\n })\r\n break\r\n case 'updateThirdMenuHeight':\r\n return state.map((element) => {\r\n element.theight = action.theight\r\n return element\r\n })\r\n break\r\n case 'openElement':\r\n return state.map((element) => {\r\n element.isOpen = element.ref === action.ref\r\n return element\r\n })\r\n break\r\n case 'removeElement':\r\n return state.filter((element) => element.ref !== action.ref)\r\n break\r\n case 'closeElement': // same as closeAll, there should never be more than one open\r\n case 'closeAll':\r\n return state.map((element) => {\r\n element.isOpen = false\r\n return element\r\n })\r\n break\r\n case 'addThirdElement':\r\n return [\r\n ...state,\r\n {\r\n ref: action.ref,\r\n isOpen: action.initialIsOpen,\r\n isThirdOpen: action.initialIsThirdOpen,\r\n height: 0,\r\n theight: 0,\r\n },\r\n ]\r\n break\r\n case 'openThirdElement':\r\n return state.map((element) => {\r\n element.isThirdOpen = element.ref === action.ref\r\n return element\r\n })\r\n break\r\n case 'removeThirdElement':\r\n return state.filter((element) => element.ref !== action.ref)\r\n break\r\n case 'closeThirdElement': // same as closeAll, there should never be more than one open\r\n case 'closeThirdAll':\r\n return state.map((element) => {\r\n element.isThirdOpen = false\r\n return element\r\n })\r\n break\r\n default:\r\n return state\r\n break\r\n }\r\n}\r\n\r\nexport function useMenuReducer() {\r\n return useReducer(menuReducer, initialState)\r\n}\r\n\r\nexport function MenuProvider(props: any) {\r\n const [menuState, menuDispatch] = useMenuReducer()\r\n\r\n return \r\n}\r\n","import {\r\n DictionaryField,\r\n ImageField,\r\n LinkField,\r\n StringField,\r\n TBaseObj,\r\n} from '../../types/types'\r\nimport {\r\n TNavigationItemElementFields,\r\n TNavigationItemFields,\r\n TNavigationItemColumnField,\r\n TMenuLinkTypeMapper,\r\n TSubMenuElementType,\r\n SecondaryLinkFields,\r\n TNavigationItemTypeMapper,\r\n TNavigationItemType,\r\n} from './types/NavigationItem.types'\r\n\r\nexport class BaseNavigationItemModel {\r\n public readonly fields: TNavigationItemFields\r\n\r\n public readonly type: TNavigationItemType\r\n public readonly menuTitle: StringField\r\n\r\n constructor(fields: TNavigationItemFields) {\r\n this.fields = fields\r\n this.type =\r\n dictionaryFieldMapper(fields?.linkType) || NavigationItemTypeMapper.Link\r\n this.menuTitle = fields?.menuButton || {\r\n value: 'Parts & Service',\r\n }\r\n }\r\n}\r\n\r\nexport class NavigationItemLinkModel extends BaseNavigationItemModel {\r\n readonly link: LinkField\r\n\r\n constructor(fields: TNavigationItemFields) {\r\n super(fields)\r\n this.link = fields?.link || { value: { href: '#', text: 'Link' } }\r\n }\r\n\r\n get linkUrl() {\r\n return this.link?.value?.href ?? '#'\r\n }\r\n}\r\n\r\nexport class NavigationItemMenuModel extends BaseNavigationItemModel {\r\n public readonly columns: [\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel,\r\n NavigationItemColumnModel\r\n ]\r\n public readonly isLastColumnGray: boolean\r\n public readonly type: TNavigationItemType\r\n //public readonly fields: TNavigationItemFields;\r\n constructor(fields: TNavigationItemFields) {\r\n super(fields)\r\n this.columns = [\r\n new NavigationItemColumnModel(fields?.section1),\r\n new NavigationItemColumnModel(fields?.section2),\r\n new NavigationItemColumnModel(fields?.section3),\r\n new NavigationItemColumnModel(fields?.section4),\r\n new NavigationItemColumnModel(fields?.section5),\r\n new NavigationItemColumnModel(fields?.section6),\r\n new NavigationItemColumnModel(fields?.section7),\r\n new NavigationItemColumnModel(fields?.section8),\r\n new NavigationItemColumnModel(fields?.section9),\r\n new NavigationItemColumnModel(fields?.section10),\r\n ]\r\n this.isLastColumnGray = fields?.isSection4Gray?.value ?? false\r\n }\r\n}\r\n\r\nexport type TNavigationItemModel =\r\n | NavigationItemLinkModel\r\n | NavigationItemMenuModel\r\n\r\nexport const newNavigationItemModel = (\r\n fields: TNavigationItemFields\r\n): TNavigationItemModel => {\r\n switch (dictionaryFieldMapper(fields?.linkType)) {\r\n case NavigationItemTypeMapper.Link:\r\n return new NavigationItemLinkModel(fields)\r\n case NavigationItemTypeMapper.Menu:\r\n return new NavigationItemMenuModel(fields)\r\n default:\r\n return new NavigationItemLinkModel(fields)\r\n }\r\n}\r\n\r\nexport class NavigationItemColumnModel {\r\n private readonly sitecoreElements: TNavigationItemColumnField | undefined\r\n public readonly elements: TMenuLinkModel[]\r\n constructor(sitecoreElements: TNavigationItemColumnField | undefined) {\r\n this.sitecoreElements = sitecoreElements\r\n\r\n if (this.sitecoreElements && Array.isArray(this.sitecoreElements)) {\r\n this.elements = this.sitecoreElements.map((element) =>\r\n newSubMenuElement(element.fields)\r\n )\r\n } else {\r\n this.elements = [new PrimaryLinkModel(undefined)]\r\n }\r\n }\r\n}\r\n\r\nexport const NavigationItemTypeMapper: TNavigationItemTypeMapper = {\r\n Menu: 'headerMenuDropdownLink',\r\n Link: 'headerMenuButtonLink',\r\n}\r\n\r\nexport const MenuLinkTypeMapper: TMenuLinkTypeMapper = {\r\n PrimaryLink: 'headerSubmenuPrimaryBoldLink',\r\n ImageLink: 'headerSubmenuPrimaryImageLink',\r\n SecondaryLink: 'headerSubmenuSecondarySimpleTextLink',\r\n SecondaryLinkWithBold: 'headerSubmenuSecondaryBoldTextLink',\r\n}\r\n\r\nexport class BaseMenuLinkModel {\r\n protected readonly _fields:\r\n | TNavigationItemElementFields\r\n | SecondaryLinkFields\r\n | undefined\r\n public readonly type: TSubMenuElementType\r\n public readonly link: LinkField\r\n constructor(\r\n type: TSubMenuElementType,\r\n fields: TNavigationItemElementFields | SecondaryLinkFields\r\n ) {\r\n this.type = type\r\n this._fields = fields\r\n this.link = fields?.link || { value: { href: '#' } }\r\n }\r\n\r\n get linkUrl(): string {\r\n return this.link.value?.href ?? '#'\r\n }\r\n get linkText(): string {\r\n return this.link.value?.text ?? 'Link'\r\n }\r\n\r\n get linkOtherProps(): TBaseObj {\r\n const otherProps: TBaseObj = {}\r\n if (this.link.value) {\r\n const value = this.link.value\r\n if (value.title) {\r\n otherProps.title = value.title\r\n }\r\n if (value.target) {\r\n otherProps.target = value.target\r\n }\r\n }\r\n return otherProps\r\n }\r\n}\r\n\r\nexport class PrimaryLinkModel extends BaseMenuLinkModel {\r\n public readonly secondaryLinks: (\r\n | SecondaryLinkModel\r\n | SecondaryLinkWithBoldModel\r\n )[]\r\n public readonly hasSecondaryLinks: boolean\r\n public readonly viewAll: StringField\r\n constructor(groupLinkFields: TNavigationItemElementFields) {\r\n super(MenuLinkTypeMapper.PrimaryLink, groupLinkFields)\r\n if (\r\n groupLinkFields?.secondaryLinks &&\r\n Array.isArray(groupLinkFields.secondaryLinks) &&\r\n groupLinkFields.secondaryLinks.length\r\n ) {\r\n this.hasSecondaryLinks = true\r\n this.secondaryLinks = groupLinkFields.secondaryLinks.map(\r\n (secondaryLink) => newSubMenuElement(secondaryLink.fields)\r\n )\r\n } else {\r\n this.secondaryLinks = []\r\n this.hasSecondaryLinks = false\r\n }\r\n this.viewAll = groupLinkFields?.viewAll || { value: 'View all' }\r\n }\r\n\r\n get viewAllText(): string {\r\n return this.viewAll.value ?? 'View all'\r\n }\r\n\r\n get hasViewAll(): boolean {\r\n return this.viewAllText !== ''\r\n }\r\n}\r\n\r\nexport class SecondaryLinkModel extends BaseMenuLinkModel {\r\n constructor(fields: SecondaryLinkFields) {\r\n super(MenuLinkTypeMapper.SecondaryLink, fields)\r\n }\r\n}\r\n\r\nexport class ImageLinkModel extends BaseMenuLinkModel {\r\n public readonly image: ImageField\r\n constructor(fields: TNavigationItemElementFields) {\r\n super(MenuLinkTypeMapper.ImageLink, fields)\r\n\r\n this.image = fields?.image || {\r\n value: { src: '//localhost:8085/images/NavigationImageLink.jpg' },\r\n }\r\n }\r\n}\r\n\r\nexport class SecondaryLinkWithBoldModel extends BaseMenuLinkModel {\r\n public readonly divider: StringField\r\n public readonly boldText: StringField\r\n constructor(fields: SecondaryLinkFields) {\r\n super(MenuLinkTypeMapper.SecondaryLinkWithBold, fields)\r\n\r\n this.divider = fields.divider\r\n this.boldText = fields.boldSecondaryText\r\n }\r\n}\r\n\r\nexport const newSubMenuElement = (\r\n elementFields: TNavigationItemElementFields | SecondaryLinkFields\r\n): TMenuLinkModel => {\r\n switch (dictionaryFieldMapper(elementFields?.linkType)) {\r\n case MenuLinkTypeMapper.PrimaryLink:\r\n return new PrimaryLinkModel(elementFields as TNavigationItemElementFields)\r\n case MenuLinkTypeMapper.SecondaryLink:\r\n return new SecondaryLinkModel(elementFields as SecondaryLinkFields)\r\n case MenuLinkTypeMapper.ImageLink:\r\n return new ImageLinkModel(elementFields as TNavigationItemElementFields)\r\n case MenuLinkTypeMapper.SecondaryLinkWithBold:\r\n return new SecondaryLinkWithBoldModel(\r\n elementFields as SecondaryLinkFields\r\n )\r\n default:\r\n return new PrimaryLinkModel(elementFields as TNavigationItemElementFields)\r\n }\r\n}\r\n\r\nexport type TMenuLinkModel =\r\n | PrimaryLinkModel\r\n | SecondaryLinkModel\r\n | SecondaryLinkWithBoldModel\r\n | ImageLinkModel\r\n\r\nexport const dictionaryFieldMapper: (\r\n field: DictionaryField | undefined\r\n) => T = (field) => field?.fields?.Phrase?.value\r\n","export const HeaderMock = {\r\n uid: '3a1a0281-cc1c-4f0e-b511-5e2050066e5b',\r\n componentName: 'Header',\r\n dataSource: '{8043073A-8BB7-44D5-83ED-599DE8DC8DC3}',\r\n params: {},\r\n fields: {\r\n logo: {\r\n value: {\r\n src: '',\r\n alt: 'Logo',\r\n width: '302',\r\n height: '86',\r\n // todo preload\r\n },\r\n },\r\n logolink: {\r\n value: {\r\n href: '',\r\n text: 'Home',\r\n anchor: '',\r\n linktype: 'internal',\r\n class: '',\r\n title: '',\r\n target: '',\r\n querystring: '',\r\n id: '{22A26E4B-AFC7-4BD7-BE7B-234EFAF27EE8}',\r\n },\r\n },\r\n mobiletitle: {\r\n value: 'More',\r\n },\r\n login: {\r\n register: {\r\n value: {\r\n href: '',\r\n text: 'CREATE NEW ACCOUNT',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n description: {\r\n value:\r\n '

    Not registered yet?
    \\nHere are a few reasons why you should be:

    \\n

    Browse Knowledgebase articles, manage support cases and subscriptions, download updates, and more from one place.\\n

    \\nView users in your organization, and edit their account information, preferences, and permissions.\\n

    \\nManage your Corporate certifications, view exam history, and download certification-related logos and documents.

    ',\r\n },\r\n username: {\r\n value: 'Username',\r\n },\r\n password: {\r\n value: 'Password',\r\n },\r\n title: {\r\n value: 'Login to your account',\r\n },\r\n login: {\r\n value: {\r\n href: '',\r\n text: 'LOGIN',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n text: {\r\n value:\r\n '

    Your Corporate account gives you access to your member profile and preferences, and the following services based on your customer status:

    ',\r\n },\r\n links: [\r\n {\r\n id: 'e9ddcb9c-a7f7-4482-bfae-f16159ca363d',\r\n fields: {\r\n title: {\r\n value: '',\r\n },\r\n link: {\r\n value: {\r\n href: '/#',\r\n text: 'Brand',\r\n linktype: 'external',\r\n url: '/#',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n },\r\n {\r\n id: 'e0200e97-dd43-4911-aa19-1994189cf673',\r\n fields: {\r\n title: {\r\n value: '',\r\n },\r\n link: {\r\n value: {\r\n href: '/#',\r\n text: 'Catalogue',\r\n linktype: 'external',\r\n url: '/#',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n },\r\n {\r\n id: '0cf6de4b-da34-4e53-a2a7-eb4083c7da52',\r\n fields: {\r\n title: {\r\n value: '',\r\n },\r\n link: {\r\n value: {\r\n href: '/#',\r\n text: 'Dealers',\r\n linktype: 'external',\r\n url: '/#',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n },\r\n {\r\n id: '22868ef3-a442-4251-a4d7-a5c60a2267b2',\r\n fields: {\r\n title: {\r\n value: '',\r\n },\r\n link: {\r\n value: {\r\n href: '/#',\r\n text: 'Portal',\r\n linktype: 'external',\r\n url: '/#',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n },\r\n ],\r\n icon: {\r\n value: 'cnh-person-line',\r\n },\r\n removetray: {\r\n value: true,\r\n },\r\n link: {\r\n value: {\r\n href: '',\r\n text: 'My',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n // mock for primaryHeaderMenuLinks is in Header.model.ts\r\n /*\"primaryHeaderMenuLinks\": [\r\n {\r\n \"id\": \"457a4fb4-2387-4c59-9f11-b029d6c313d7\",\r\n \"fields\": {\r\n \"section1\": [\r\n {\r\n \"id\": \"8491dda0-888c-44ba-8e09-12667ce13ef6\",\r\n \"fields\": {\r\n \"secondaryLinks\": [\r\n {\r\n \"id\": \"0c26fc7e-791a-4b5a-8f90-4093e83c2488\",\r\n \"fields\": {\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"Farmall® Series\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"Farmall Series\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": \"{FEC50AC4-1585-4B5B-81BF-2D0D132A35BB}\",\r\n \"divider\": {\r\n \"value\": \"/\"\r\n },\r\n \"boldSecondaryText\": {\r\n \"value\": \"370-682 HP\"\r\n }\r\n }\r\n },\r\n {\r\n \"id\": \"87472156-c960-44e2-9cb8-a5e9fc0ca9ac\",\r\n \"fields\": {\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"Steiger® Series\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"Steiger Series\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": \"{FEC50AC4-1585-4B5B-81BF-2D0D132A35BB}\",\r\n \"divider\": {\r\n \"value\": \"/\"\r\n },\r\n \"boldSecondaryText\": {\r\n \"value\": \"370-620 HP\"\r\n }\r\n }\r\n }\r\n ],\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"Tractors\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"Tractors\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": \"{23E24D56-5F8D-4161-9FCD-50EBA4618287}\"\r\n }\r\n },\r\n {\r\n \"id\": \"06dbb9f7-d64d-4139-85fa-ff0983fdba0f\",\r\n \"fields\": {\r\n \"secondaryLinks\": [\r\n {\r\n \"id\": \"5c799496-0b31-4471-aafb-a75a7632f87c\",\r\n \"fields\": {\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"AFS Connect\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"AFS Connect\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": \"{3051D5D2-195E-4B43-95C6-249D2130227D}\"\r\n }\r\n }\r\n ],\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"Advanced Farming Systems\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"Advanced farming systems\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": \"{23E24D56-5F8D-4161-9FCD-50EBA4618287}\"\r\n }\r\n }\r\n ],\r\n \"section2\": \"{83DF6119-B9AB-42FA-8561-3621D6B9777D}\",\r\n \"section3\": \"{76403D7B-B1CF-4712-BAA7-92A2EE15D64E}|{8F4FA233-046C-44FC-B993-60CC03D4A7B9}\",\r\n \"section4\": \"{490CEACD-DD7C-4BEC-ABD7-C1BE81009CBC}|{5BC7C813-D626-410F-95F6-55AB442F750E}|{0BEB56F1-AFD9-4246-816B-9EC69BC9A60B}\",\r\n \"isGray\": {\r\n \"value\": false\r\n },\r\n \"linkType\": \"{359F0B0C-5F21-4841-8D18-CB8C12BC3847}\"\r\n }\r\n },\r\n {\r\n \"id\": \"26033cae-d366-4311-b059-1ddd732f0a46\",\r\n \"fields\": {\r\n \"link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"Parts & Service\",\r\n \"linktype\": \"external\",\r\n \"url\": \"\",\r\n \"anchor\": \"\",\r\n \"title\": \"Parts and Service\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"linkType\": {\r\n \"id\": \"83fb9cac-1335-450e-a9ba-08b6ba1cced2\",\r\n \"url\": \"\",\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"headerMenuButtonLink\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"headerMenuButtonLink\"\r\n }\r\n }\r\n }\r\n }\r\n }\r\n ],*/\r\n search: {\r\n placeholder: {\r\n value: 'Search',\r\n },\r\n search: {\r\n value: {\r\n href: '',\r\n text: 'SEARCH',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n icon: {\r\n value: 'cnh-search',\r\n },\r\n removetray: {\r\n value: false,\r\n },\r\n title: {\r\n value: '',\r\n },\r\n link: {\r\n value: {\r\n href: '',\r\n text: 'Search',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n finddealer: {\r\n icon: {\r\n value: 'cnh-pin-line',\r\n },\r\n title: {\r\n value: 'Find a dealer',\r\n },\r\n link: {\r\n value: {\r\n href: '',\r\n text: 'Find a dealer',\r\n linktype: 'external',\r\n url: '',\r\n anchor: '',\r\n target: '',\r\n },\r\n },\r\n },\r\n },\r\n}\r\n","import {\r\n HeaderFields,\r\n HeaderProps,\r\n SecondaryLinkFields,\r\n TNavigationItemColumnField,\r\n TSubMenuElementType,\r\n} from './types/NavigationItem.types'\r\nimport {\r\n MenuLinkTypeMapper,\r\n NavigationItemLinkModel,\r\n NavigationItemMenuModel,\r\n NavigationItemTypeMapper,\r\n newNavigationItemModel,\r\n TNavigationItemModel,\r\n} from './NavigationItem.model'\r\nimport { HeaderMock } from './NotEditableMock'\r\nimport { StringField } from '../../types/types'\r\n\r\nconst mockLinkMapper = (text: string, type: TSubMenuElementType) => ({\r\n fields: {\r\n link: { value: { text, href: '#' } },\r\n linkType: mockLinkTypeMapper(type),\r\n },\r\n})\r\n\r\nconst mockLinkTypeMapper = (type) => ({\r\n fields: {\r\n Phrase: {\r\n value: type,\r\n },\r\n },\r\n})\r\n\r\nconst mockLinkWithBoldMapper = (\r\n text: string,\r\n divider: string,\r\n boldText: string\r\n): { fields: SecondaryLinkFields } => {\r\n const baseFields = mockLinkMapper(\r\n text,\r\n MenuLinkTypeMapper.SecondaryLinkWithBold\r\n ).fields\r\n return {\r\n fields: {\r\n ...baseFields,\r\n divider: { value: divider },\r\n boldSecondaryText: { value: boldText },\r\n },\r\n }\r\n}\r\n\r\nconst section3Mock: TNavigationItemColumnField = [\r\n 'Skid Steers & Track Loaders',\r\n 'Loaders & Attachments',\r\n 'Tillage',\r\n 'Mowers & Conditioners',\r\n 'Windrowers',\r\n 'Wheel Rakes',\r\n 'Forsage Haversters & Blowers',\r\n 'Planting & Seeding',\r\n 'Balers',\r\n 'See all products',\r\n].map((text) => mockLinkMapper(text, MenuLinkTypeMapper.PrimaryLink))\r\n\r\n// const mockNavigationItemModelsArr = [\r\n// new NavigationItemMenuModel({\r\n// linkType: mockLinkTypeMapper(NavigationItemTypeMapper.Menu),\r\n// menuButton: {value: 'Products'},\r\n// section1: [\r\n// {\r\n// fields: {\r\n// link: {value : {text: 'Tractors'}},\r\n// linkType: mockLinkTypeMapper(MenuLinkTypeMapper.PrimaryLink),\r\n// secondaryLinks: [\r\n// mockLinkWithBoldMapper('Farmall® Series', '/', '370-682 HP'),\r\n// mockLinkWithBoldMapper('Steiger® Series', '/', '370-620 HP'),\r\n// mockLinkWithBoldMapper('Mock AFS Connect™ Steiger® Series', '/', '180-396 HP'),\r\n// ]\r\n// }\r\n// },\r\n// {\r\n// fields: {\r\n// link: {value : {text: 'Advanced Farming Systems® (AFS)'}},\r\n// linkType: mockLinkTypeMapper(MenuLinkTypeMapper.PrimaryLink),\r\n// secondaryLinks: [\r\n// mockLinkMapper('AFS Connect™', MenuLinkTypeMapper.SecondaryLink),\r\n// mockLinkMapper('Displays', MenuLinkTypeMapper.SecondaryLink),\r\n// mockLinkMapper('Auto Guidance', MenuLinkTypeMapper.SecondaryLink),\r\n// ]\r\n// }\r\n// },\r\n// ],\r\n// section2: [\r\n// {\r\n// fields: {\r\n// link: {value : {text: 'Harvesting'}},\r\n// linkType: mockLinkTypeMapper(MenuLinkTypeMapper.PrimaryLink),\r\n// secondaryLinks: [\r\n// mockLinkWithBoldMapper('Axial-Flow® Combines', '/', '265-550 HP'),\r\n// mockLinkWithBoldMapper('Corn Heads', '/', '250-450 HP'),\r\n// mockLinkWithBoldMapper('Draper Heads', '/', '265-550 HP'),\r\n// ]\r\n// }\r\n// },\r\n// {\r\n// fields: {\r\n// link: {value : {text: 'Application Equipment'}},\r\n// linkType: mockLinkTypeMapper(MenuLinkTypeMapper.PrimaryLink),\r\n// secondaryLinks: [\r\n// mockLinkWithBoldMapper('Patriot® Series Sprayers', '/', '175-335 HP'),\r\n// mockLinkWithBoldMapper('Miller Nitro® Series Sprayers', '/', '285-382 HP'),\r\n// mockLinkWithBoldMapper('Titan™ Series Floaters', '/', '340-410 HP'),\r\n// ]\r\n// }\r\n// },\r\n// ],\r\n// section3: section3Mock,\r\n// section4: [\r\n// mockLinkMapper('Our Technology', MenuLinkTypeMapper.ImageLink),\r\n// mockLinkMapper('Special Offers', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Auction', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Used Equipment', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// isSection4Gray: {value: true},\r\n// }),\r\n// new NavigationItemLinkModel({linkType: mockLinkTypeMapper(\"link\")}),\r\n// new NavigationItemMenuModel({\r\n// linkType: mockLinkTypeMapper(NavigationItemTypeMapper.Menu),\r\n// menuButton: {value: 'Connect with '},\r\n// section1: [\r\n// mockLinkMapper('Find a dealer', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Schedule a demo', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section2: [\r\n// mockLinkMapper('Contact us', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Email signup', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section3: [\r\n// mockLinkMapper('Blog', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Events', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section4: [\r\n// mockLinkMapper('Plant tours', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// isSection4Gray: {value: false},\r\n// }),\r\n// new NavigationItemMenuModel({\r\n// linkType: mockLinkTypeMapper(NavigationItemTypeMapper.Menu),\r\n// menuButton: {value: 'Tools & Resources'},\r\n// section1: [\r\n// mockLinkMapper('Red right Tractor', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Compare specifications', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section2: [\r\n// mockLinkMapper('Build & Price', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Weighting & Ballasting', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section3: [\r\n// mockLinkMapper('Brochures', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('FAQs', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section4: [\r\n// ],\r\n// isSection4Gray: {value: false},\r\n// }),\r\n// new NavigationItemMenuModel({\r\n// linkType: mockLinkTypeMapper(NavigationItemTypeMapper.Menu),\r\n// menuButton: {value: 'Support'},\r\n// section1: [\r\n// {\r\n// fields: {\r\n// link: {value : {text: 'Financing'}},\r\n// linkType: mockLinkTypeMapper(MenuLinkTypeMapper.PrimaryLink),\r\n// secondaryLinks: [\r\n// mockLinkMapper('Lending', MenuLinkTypeMapper.SecondaryLink),\r\n// mockLinkMapper('Leasing', MenuLinkTypeMapper.SecondaryLink),\r\n// mockLinkMapper('Line of credit', MenuLinkTypeMapper.SecondaryLink),\r\n// mockLinkMapper('Insurance', MenuLinkTypeMapper.SecondaryLink),\r\n// ],\r\n// viewAll: {value: ''}\r\n// }\r\n// },\r\n// ],\r\n// section2: [\r\n// mockLinkMapper('AFS Troubleshooting & support', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Operator\\'s manual', MenuLinkTypeMapper.PrimaryLink),\r\n// mockLinkMapper('Mobile apps', MenuLinkTypeMapper.PrimaryLink),\r\n// ],\r\n// section3: [\r\n// ],\r\n// section4: [\r\n// ],\r\n// isSection4Gray: {value: false},\r\n// }),\r\n// ];\r\n\r\nexport class HeaderModel {\r\n public readonly fields: HeaderFields\r\n public readonly navigationItemModelsArr: TNavigationItemModel[]\r\n public readonly mobileTitle: StringField\r\n public readonly mobileTitleOpen: StringField\r\n constructor(props: HeaderProps) {\r\n if (!props.fields || !Object.keys(props.fields).length) {\r\n this.fields = HeaderMock.fields\r\n } else {\r\n this.fields = props.fields\r\n }\r\n if (\r\n this.fields?.primaryHeaderMenuLinks &&\r\n Array.isArray(this.fields.primaryHeaderMenuLinks)\r\n ) {\r\n this.navigationItemModelsArr = this.fields.primaryHeaderMenuLinks.map(\r\n (navigationItemData) =>\r\n newNavigationItemModel(navigationItemData.fields)\r\n )\r\n }\r\n this.mobileTitle = this.fields?.mobiletitle || { value: 'Menu' }\r\n this.mobileTitleOpen = this.fields?.mobileTitleOpen || { value: 'Close' }\r\n }\r\n}\r\n","import React from \"react\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport { Image, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { useMenuDispatcher } from \"./MenuContext\";\r\n\r\nconst Logo = ({ fields, context }) => {\r\n const APP_ROUTE_TEMPLATE_ID = \"0e34416d-6021-4c1a-bd17-a667cd3b0e6e\";\r\n const dispatch = useMenuDispatcher();\r\n // const handleClick = () => {\r\n // dispatch({ type: \"closeAll\" });\r\n // };\r\n const handleClick = () => {\r\n dispatch({ type: \"closeAll\" });\r\n //window.scroll(0, 0)\r\n };\r\n\r\n const isHomePage =\r\n context?.sitecoreContext?.route?.templateId === APP_ROUTE_TEMPLATE_ID;\r\n const LogoTag = isHomePage ? \"h1\" : \"span\";\r\n return (\r\n \r\n \r\n \r\n 0\r\n ? fields.mobileLogo\r\n : (fields.AllowFallbackForMobile?.value) &&\r\n fields?.logo\r\n }\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Logo;\r\n","import React, {\r\n FunctionComponent,\r\n useLayoutEffect,\r\n useState,\r\n useRef,\r\n useEffect,\r\n} from \"react\";\r\nimport { PrimaryLinkModel } from \"../NavigationItem.model\";\r\nimport RoutableSitecoreLink from \"../../../react-only-components/RoutableSitecoreLink\";\r\nimport MenuLink from \"./MenuLink\";\r\nimport { withSitecoreContext, Text, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { TSitecoreContext } from \"../../../types/sitecore.types\";\r\nimport {\r\n useMenuItemWithContext,\r\n useMenuHeightWithContext,\r\n useMenuContext,\r\n useMenuThirdItemWithContext,\r\n useMenuThirdHeightWithContext,\r\n} from \"../MenuContext\";\r\nimport useMediaQuery from \"../../../lib/custom-hooks/useMediaQuery\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\nconst PrimaryLink: FunctionComponent<{\r\n model: PrimaryLinkModel;\r\n onClick?: () => void;\r\n sitecoreContext: TSitecoreContext;\r\n isHamburgerMenu: boolean;\r\n}> = ({ model, onClick, sitecoreContext, isHamburgerMenu }) => {\r\n const isEEActive = sitecoreContext?.pageEditing;\r\n const history = useHistory();\r\n\r\n const tel = useRef();\r\n const [zoomLevel, setZoomLevel] = useState(0);\r\n const [isThirdOpen, setThirdOpen] = useMenuThirdItemWithContext();\r\n const [theight, setThirdHeight] = useMenuThirdHeightWithContext();\r\n const useRefDimensions = (ref, isThirdOpen, zoomLevel) => {\r\n const [dimensions, setDimensions] = useState({ width: 0, height: 0 });\r\n React.useLayoutEffect(() => {\r\n if (ref.current) {\r\n const { current } = ref;\r\n const boundingRect = current.getBoundingClientRect();\r\n const { width, height } = boundingRect;\r\n if (isThirdOpen) {\r\n setDimensions({\r\n width: Math.round(width),\r\n height: Math.round(height),\r\n });\r\n }\r\n }\r\n }, [ref, isThirdOpen, zoomLevel]);\r\n return dimensions;\r\n };\r\n const handleThirdClick = () => {\r\n setThirdOpen(!isThirdOpen);\r\n };\r\n\r\n const iconThird = isThirdOpen ? \"cnh-chevron-down\" : \"cnh-chevron-down\";\r\n\r\n const dimensions = useRefDimensions(tel, isThirdOpen, zoomLevel);\r\n\r\n useLayoutEffect(() => {\r\n if (isThirdOpen && theight != dimensions.height) {\r\n setThirdHeight(dimensions.height);\r\n }\r\n }, [dimensions.height]);\r\n\r\n const mobileBreakpoint = 768;\r\n const isDesktop = useMediaQuery(\"(min-width: 768px)\");\r\n const [state, dispatch] = useMenuContext();\r\n const toggle = () => setThirdOpen(!isThirdOpen);\r\n const hide = () => setThirdOpen(false);\r\n const show = () => setThirdOpen(true);\r\n const breakpointXL = useMediaQuery(\"(min-width: 1200px)\", false);\r\n\r\n const handleClick = () => {\r\n // dispatch({type: 'closeAll'})\r\n onClick();\r\n // window.scroll(0,0);\r\n };\r\n\r\n const checkActive = (path, isThirdlevel = false) => {\r\n const historyPath = (history?.location?.pathname).toLowerCase();\r\n if (isThirdlevel) {\r\n //const updatedPath = path?.split(' ').join('_');\r\n return historyPath.includes(path?.toLowerCase()) ? true : false;\r\n } else {\r\n return historyPath === path?.toLowerCase() ? true : false;\r\n }\r\n };\r\n\r\n const switchMenu = (condition) =>\r\n setThirdOpen(condition !== null ? condition : !isThirdOpen);\r\n if (model.hasSecondaryLinks) {\r\n return (\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n\r\n \r\n {isThirdOpen &&\r\n model.secondaryLinks.map((secondaryLink, index) => (\r\n \r\n ))}\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(PrimaryLink);\r\nfunction windowService() {\r\n throw new Error(\"Function not implemented.\");\r\n}\r\n","import React, {FunctionComponent} from 'react';\r\nimport {\r\n ImageLinkModel,\r\n PrimaryLinkModel,\r\n SecondaryLinkModel,\r\n SecondaryLinkWithBoldModel, TMenuLinkModel\r\n} from \"../NavigationItem.model\";\r\nimport PrimaryLink from \"./PrimaryLink\";\r\nimport SecondaryLink from \"./SecondaryLink\";\r\nimport SecondaryLinkWithBold from \"./SecondaryLinkWithBold\";\r\nimport ImageLink from \"./ImageLink\";\r\n\r\nconst MenuLink: FunctionComponent<{model: TMenuLinkModel, onClick: ()=>void, isHamburgerMenu}> = ({model, onClick, isHamburgerMenu}) => {\r\n if (model instanceof PrimaryLinkModel) {\r\n return ;\r\n }\r\n // else if (model instanceof SecondaryLinkModel) {\r\n // return \r\n // } else if (model instanceof SecondaryLinkWithBoldModel) {\r\n // return \r\n // } else if (model instanceof ImageLinkModel) {\r\n // return ;\r\n // }\r\n return null;\r\n}\r\n\r\nexport default MenuLink;\r\n","import React, { useEffect, useLayoutEffect, useRef, useState } from 'react'\r\nimport { useHistory } from 'react-router-dom'\r\nimport {\r\n useMenuItemWithContext,\r\n useMenuHeightWithContext,\r\n useMenuContext,\r\n} from './MenuContext'\r\n\r\nconst useRefDimensions = (ref, isOpen, zoomLevel) => {\r\n const [dimensions, setDimensions] = useState({ width: 0, height: 0 })\r\n React.useLayoutEffect(() => {\r\n if (ref.current) {\r\n const { current } = ref\r\n const boundingRect = current.getBoundingClientRect()\r\n const { width, height } = boundingRect\r\n setDimensions({ width: Math.round(width), height: Math.round(height) })\r\n }\r\n }, [ref, isOpen, zoomLevel])\r\n return dimensions\r\n}\r\n\r\nconst NavigationItemMenuStructure = ({\r\n triggerContent,\r\n children,\r\n model = null,\r\n}) => {\r\n const [isOpen, setOpen] = useMenuItemWithContext()\r\n const [height, setHeight] = useMenuHeightWithContext()\r\n const [zoomLevel, setZoomLevel] = useState(0)\r\n const [searchID, setSearchID] = useState(false)\r\n const [overflow, setOverflow] = useState(false)\r\n\r\n const el = useRef()\r\n const handleClick = (event) => {\r\n setOpen(!isOpen)\r\n if (event.target.id === 'searchIcon') {\r\n setSearchID(true)\r\n }\r\n }\r\n const checkActive = (primaryMenuItem) => {\r\n const historyPath = (history?.location?.pathname).toLowerCase()\r\n return historyPath.includes(primaryMenuItem?.toLowerCase()) ? true : false\r\n }\r\n\r\n const [state, dispatch] = useMenuContext()\r\n //const [headerHeight, setHeaderHeight] = useState(0);\r\n // useEffect(() => {\r\n // setHeaderHeight(parseInt(document.getElementById(\"navigation__container-id\")?.style.height));\r\n // }\r\n // , [document.getElementById(\"navigation__container-id\")?.style.height])\r\n\r\n const resizeListener = () => {\r\n const browserZoomLevel = Math.round(window.devicePixelRatio * 100)\r\n isOpen && setZoomLevel(browserZoomLevel)\r\n }\r\n\r\n const scrollListener = () => {\r\n if (\r\n document.body.scrollTop > 50 ||\r\n document.documentElement.scrollTop > 50\r\n ) {\r\n dispatch({ type: 'closeAll' })\r\n }\r\n }\r\n const dimensions = useRefDimensions(el, isOpen, zoomLevel)\r\n useLayoutEffect(() => {\r\n //set menu height while zoom in out\r\n window.addEventListener('resize', resizeListener)\r\n\r\n if (isOpen && height != dimensions.height) {\r\n setHeight(\r\n triggerContent.props.textValue === 'Search' ? -1 : dimensions.height\r\n )\r\n }\r\n\r\n return () => {\r\n window.removeEventListener('resize', resizeListener)\r\n }\r\n }, [dimensions.height])\r\n useLayoutEffect(() => {\r\n //set menu height while zoom in out\r\n window.addEventListener('scroll', scrollListener)\r\n\r\n return () => {\r\n window.removeEventListener('scroll', scrollListener)\r\n }\r\n }, [])\r\n\r\n useLayoutEffect(() => {\r\n if (isOpen) {\r\n const inputElement = (el?.current as HTMLElement).querySelector('input')\r\n const inputValue = inputElement && inputElement.value\r\n setOverflow(inputValue !== '')\r\n } else {\r\n setOverflow(false)\r\n }\r\n }, [children])\r\n\r\n const history = useHistory()\r\n\r\n const baseElementClassName = 'navigation__menu-item'\r\n const elementClassName =\r\n baseElementClassName + (isOpen ? ' ' + baseElementClassName + '--open' : '')\r\n return (\r\n
  • \r\n \r\n {triggerContent}\r\n \r\n \r\n {isOpen ? children : searchID && children}\r\n \r\n
  • \r\n )\r\n}\r\n\r\nexport default NavigationItemMenuStructure\r\n","import React, {\r\n useCallback,\r\n VFC,\r\n useState,\r\n useRef,\r\n useLayoutEffect,\r\n} from 'react'\r\nimport { RichText } from '@sitecore-jss/sitecore-jss-react'\r\nimport { NavigationItemMenuModel } from './NavigationItem.model'\r\nimport MenuLink from './MenuLink/MenuLink'\r\nimport NavigationItemMenuStructure from './NavigationItemMenuStructure'\r\nimport {\r\n useMenuDispatcher,\r\n useMenuThirdItemWithContext,\r\n useMenuItemWithContext,\r\n useMenuHeightWithContext,\r\n} from './MenuContext'\r\n\r\nexport const NavigationItemTray: VFC<{\r\n model: NavigationItemMenuModel\r\n closeMainNavigation?: () => void\r\n isHamburgerMenu: boolean\r\n}> = ({ model, closeMainNavigation, isHamburgerMenu }) => {\r\n const menuDispatcher = useMenuDispatcher()\r\n // close menu element for navigation, both main navigation and accordion in mobile\r\n const handleLinkClick = useCallback(() => {\r\n menuDispatcher({ type: 'closeAll' })\r\n if (closeMainNavigation) closeMainNavigation() // this is undefined in desktop\r\n }, [closeMainNavigation, menuDispatcher])\r\n\r\n const [isThirdOpen, setThirdOpen] = useMenuThirdItemWithContext()\r\n\r\n const baseElementClassName = 'pfe-navigation__custom-column'\r\n const elementClassName =\r\n baseElementClassName +\r\n (isThirdOpen ? ' ' + baseElementClassName + '--open' : '')\r\n return (\r\n
    \r\n {model.columns.map((columnModel, index) => {\r\n const isColumnGray = model.isLastColumnGray && index === 3\r\n return (\r\n \r\n {columnModel.elements.map((elementModel, j) => (\r\n \r\n ))}\r\n
    \r\n )\r\n })}\r\n \r\n )\r\n}\r\n\r\nconst NavigationItemMenu = ({\r\n model,\r\n isHamburgerMenu,\r\n}: {\r\n model: NavigationItemMenuModel\r\n isHamburgerMenu: boolean\r\n}) => {\r\n return (\r\n \r\n }\r\n model={model}\r\n >\r\n \r\n \r\n )\r\n}\r\n\r\nexport default NavigationItemMenu\r\n","import React from 'react'\r\nimport { NavigationItemMenuModel } from './NavigationItem.model'\r\nimport { RichText } from '@sitecore-jss/sitecore-jss-react'\r\nimport { useMenuItemWithContext } from './MenuContext'\r\nimport { NavigationItemTray } from './NavigationItemMenu'\r\nimport { useHistory } from 'react-router-dom'\r\n\r\nconst NavigationAccordionItem = (props: {\r\n model: NavigationItemMenuModel\r\n closeMainNavigation: () => void\r\n isHamburgerMenu: boolean\r\n}) => {\r\n const [isOpen, setOpen] = useMenuItemWithContext()\r\n const handleClick = () => {\r\n setOpen(!isOpen)\r\n }\r\n const { model, closeMainNavigation } = props\r\n const icon = isOpen ? 'cnh-chevron-up' : 'cnh-chevron-down'\r\n const history = useHistory()\r\n const checkActive = (primaryMenuItem) => {\r\n const historyPath = (history?.location?.pathname).toLowerCase()\r\n return historyPath.includes(primaryMenuItem?.toLowerCase()) ? true : false\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {isOpen && (\r\n \r\n )}\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default NavigationAccordionItem\r\n","import React from 'react';\r\nimport {RichText, Link} from '@sitecore-jss/sitecore-jss-react';\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink';\r\nimport {NavigationItemLinkModel} from \"./NavigationItem.model\";\r\nimport { useHistory } from 'react-router-dom';\r\n\r\n\r\nconst NavigationAccordionLinkItem = (props: { model: NavigationItemLinkModel, closeMainNavigation: ()=>void}) => {\r\n const { model, closeMainNavigation } = props;\r\n const history = useHistory();\r\n const checkActive =(primaryMenuItem)=>{ \r\n const historyPath =(history?.location?.pathname).toLowerCase(); \r\n return (historyPath.includes(primaryMenuItem?.toLowerCase())? true: false) \r\n \r\n }\r\n\r\n return (\r\n
  • \r\n {/* @todo check if this causes problems in EE*/}\r\n \r\n \r\n \r\n
  • \r\n );\r\n}\r\n\r\nexport default NavigationAccordionLinkItem;\r\n","import { RichText, Text, Link } from '@sitecore-jss/sitecore-jss-react'\r\nimport {\r\n MenuProvider,\r\n useMenuDispatcher,\r\n useMenuItemWithContext,\r\n} from './MenuContext'\r\nimport { NavigationItemMenuModel } from './NavigationItem.model'\r\nimport NavigationAccordionItem from './NavigationAccordionItem'\r\nimport NavigationAccordionLinkItem from './NavigationAccordionLinkItem'\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport React, { useCallback, useEffect } from 'react'\r\nimport { ComponentFieldsGeneral } from '../../types/types'\r\nimport { HeaderModel } from './Header.model'\r\n\r\nconst MobileMenu = ({\r\n model,\r\n fields,\r\n breakpointLg,\r\n isHamburgerMenu,\r\n}: {\r\n model: HeaderModel\r\n fields: ComponentFieldsGeneral\r\n breakpointLg: boolean\r\n isHamburgerMenu: boolean\r\n}) => {\r\n // this is a custom NavigationItemMenuStructure\r\n const [isOpen, setOpen] = useMenuItemWithContext()\r\n const handleClick = () => {\r\n setOpen(!isOpen)\r\n }\r\n\r\n let showSearchResult = false\r\n const handleSearchClick = () => {\r\n setOpen(!isOpen)\r\n showSearchResult = true\r\n }\r\n useEffect(() => {\r\n handleBodyScroll()\r\n }, [isOpen])\r\n\r\n const handleBodyScroll = () => {\r\n isOpen\r\n ? (document.querySelector('body').style.overflow = 'hidden')\r\n : (document.querySelector('body').style.overflow = 'auto')\r\n }\r\n const menuDispatcher = useMenuDispatcher()\r\n const closeMainNavigation = useCallback(\r\n () => menuDispatcher({ type: 'closeAll' }),\r\n [menuDispatcher]\r\n )\r\n const baseElementClassName = 'navigation__menu-item'\r\n const elementClassList = [\r\n baseElementClassName,\r\n baseElementClassName + '--mobile-menu',\r\n ]\r\n if (isOpen) {\r\n elementClassList.push(baseElementClassName + '--open')\r\n //document.querySelector(\"body\").style.overflow =\"hidden\";\r\n } else {\r\n //document.querySelector(\"body\").style.overflow =\"auto\";\r\n }\r\n const elementClassName = elementClassList.join(' ')\r\n const icon = isOpen ? 'cnh-close' : 'cnh-menu'\r\n\r\n return (\r\n \r\n \r\n \r\n {isOpen && (\r\n
    \r\n \r\n {/* menu provider for accordion, using related custom hooks in components inside here will relate to this */}\r\n
      \r\n {model.navigationItemModelsArr.map(\r\n (navigationItemModel, index: number) =>\r\n navigationItemModel instanceof NavigationItemMenuModel ? (\r\n \r\n ) : (\r\n \r\n )\r\n )}\r\n
    \r\n
    \r\n\r\n {(fields?.finddealer?.link ||\r\n fields?.search?.search ||\r\n fields?.login?.login) && (\r\n
      \r\n {/* findADealer mobile*/}\r\n {fields?.finddealer?.link && (\r\n
    • \r\n \r\n \r\n \r\n \r\n
    • \r\n )}\r\n {/* search mobile*/}\r\n {fields?.search?.search && (\r\n
    • \r\n \r\n \r\n \r\n {fields?.search?.search?.value?.text}\r\n \r\n \r\n
    • \r\n )}\r\n {/* login mobile*/}\r\n {fields?.login?.login && (\r\n
    • \r\n \r\n \r\n \r\n {fields?.login?.login?.value?.text}\r\n \r\n \r\n
    • \r\n )}\r\n
    \r\n )}\r\n
    \r\n )}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default MobileMenu\r\n","import React, { useEffect } from \"react\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport { Image } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport {useMenuContext, useMenuItemWithContext} from \"./MenuContext\";\r\nimport { Placeholder, withSitecoreContext } from \"@sitecore-jss/sitecore-jss-react\";\r\nconst LogoList = (props) => {\r\n \r\n const [state, dispatch] = useMenuContext();\r\n\r\n const isAnyOpen = state.some(({isOpen}) => isOpen);\r\n const isAnyThirdOpen = state.some(({isThirdOpen}) => isThirdOpen);\r\n const height1= isAnyOpen && state.find((element)=> element.isOpen)?.height;\r\n const height2 = isAnyThirdOpen && state.find((element)=> element.isThirdOpen)?.theight;\r\n\r\n const height = isAnyThirdOpen ? height1+height2 : height1 ;\r\n\r\n return (\r\n
    \r\n \t \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default LogoList;\r\n","import React from \"react\"\r\n\r\nconst MenuTriggerContentWithIcon = ({ iconValue, textValue }) => {\r\n return (\r\n \r\n \r\n {textValue}\r\n \r\n )\r\n}\r\n\r\nexport default MenuTriggerContentWithIcon\r\n","export const QueryParamsConst = {\r\n ORDER: \"order\",\r\n PAGE: \"page\",\r\n PER_PAGE: \"take\",\r\n QUERY: \"q\",\r\n FILTERS: \"filters\",\r\n SORT: \"sort\"\r\n};\r\n","import { useState } from 'react';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { windowService } from '../utils/window.utils';\r\n\r\nconst getQuery = () => new URLSearchParams(windowService().location?.search);\r\n\r\nconst getQueryStringVal = (key: string): string | null => getQuery().get(key);\r\n\r\nconst useQueryParams = (\r\n key: string,\r\n defaultVal: string\r\n): [string, (val: string) => void] => {\r\n const history = useHistory();\r\n const [query, setQuery] = useState(getQueryStringVal(key) || defaultVal);\r\n\r\n const updateUrl = (newVal: string) => {\r\n setQuery(newVal);\r\n\r\n const query = getQuery();\r\n\r\n if (newVal.trim() !== '') {\r\n query.set(key, newVal);\r\n } else {\r\n query.delete(key);\r\n }\r\n\r\n history.push(`?${query.toString()}`);\r\n };\r\n\r\n return [query, updateUrl];\r\n};\r\nexport default useQueryParams;\r\n","import React, { FC, useState, useEffect } from \"react\";\r\n\r\nimport { TSuggestionsProps } from \"../../types/Suggestions.type\";\r\nimport \"./styles.scss\";\r\n\r\nconst Suggestions: FC = ({\r\n suggestionQuery,\r\n contextId,\r\n language,\r\n minimalLength,\r\n onUpdateQuery,\r\n className,\r\n}) => {\r\n const [suggestions, setSuggestions] = useState([]);\r\n\r\n const updateSuggestions = () => {\r\n if (!suggestionQuery || suggestionQuery.length < minimalLength) {\r\n setSuggestions([]);\r\n return;\r\n }\r\n\r\n const suggestionApiUrl = `/search-suggestions/${suggestionQuery}?contextId=${contextId}&language=${language}`;\r\n fetch(suggestionApiUrl)\r\n .then((res) => {\r\n if (res.ok) {\r\n return res.json();\r\n } else {\r\n throw Error(`${res.status} : Failed to fetch search suggestions.`);\r\n }\r\n })\r\n .then((result) => {\r\n if (result?.length) {\r\n setSuggestions(result);\r\n } else {\r\n setSuggestions([]);\r\n }\r\n })\r\n .catch(() => {\r\n setSuggestions([]);\r\n });\r\n };\r\n\r\n useEffect(() => updateSuggestions(), [suggestionQuery]);\r\n\r\n if (!suggestions) {\r\n return null;\r\n }\r\n\r\n return (\r\n suggestions && (\r\n
      \r\n {suggestions.map((suggestion, i) => (\r\n
    • \r\n onUpdateQuery(suggestion)}\r\n >\r\n {suggestion}\r\n \r\n
    • \r\n ))}\r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default Suggestions;\r\n","import React, { FormEvent, useRef, useEffect, useState } from 'react'\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport NavigationItemMenuStructure from './NavigationItemMenuStructure'\r\nimport { useMenuDispatcher } from './MenuContext'\r\nimport { ComponentFieldsGeneral } from '../../types/types'\r\nimport MenuTriggerContentWithIcon from './MenuTriggerContentWithIcon'\r\nimport { windowService } from '../../utils/window.utils'\r\nimport { QueryParamsConst } from '../../constants/query-params.constants'\r\nimport useQueryParams from '../../hooks/use-query-params.effect'\r\nimport Suggestions from '../Search/components/Suggestions'\r\nimport { WithSitecoreContextProps } from '@sitecore-jss/sitecore-jss-react/types/enhancers/withSitecoreContext'\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n Link\r\n} from '@sitecore-jss/sitecore-jss-react'\r\n\r\nconst SearchMenu = ({\r\n fields,\r\n sitecoreContext,\r\n}: WithSitecoreContextProps & { fields: ComponentFieldsGeneral }) => {\r\n const [page, setPage] = useQueryParams(QueryParamsConst.PAGE, '1')\r\n const [perPage] = useQueryParams(QueryParamsConst.PER_PAGE, '10')\r\n const queryKey = QueryParamsConst.QUERY\r\n const pfeInputRef = useRef(null)\r\n const formRef = useRef(null)\r\n const [inputVal, setInputVal] = useState('')\r\n\r\n const [, setSuggestionQuery] = useState('')\r\n const [isSuggestionsComponentVisible, setIsSuggestionsComponentVisible] =\r\n useState(false)\r\n\r\n const SUGGESTIONS_DEBOUNCE_TIME_IN_MS = 300\r\n const SUGGESTIONS_MIN_CHAR_LIMIT = 3\r\n\r\n let submitUrl: URL\r\n try {\r\n const href = fields.search?.search?.value?.href\r\n const origin = windowService()?.location?.origin\r\n\r\n submitUrl = href?.startsWith('/') ? new URL(href, origin) : new URL(href)\r\n } catch (e) {\r\n console.warn(e)\r\n }\r\n\r\n const onSubmit: (e: FormEvent) => void = (e) => {\r\n e.preventDefault()\r\n setPage('1')\r\n\r\n if (\r\n submitUrl &&\r\n pfeInputRef.current &&\r\n !submitUrl.searchParams.has(queryKey)\r\n ) {\r\n submitUrl.searchParams.append(queryKey, pfeInputRef.current.value)\r\n submitUrl.searchParams.append(QueryParamsConst.PAGE, page)\r\n submitUrl.searchParams.append(QueryParamsConst.PER_PAGE, perPage)\r\n windowService().location.href = submitUrl.toString()\r\n }\r\n }\r\n\r\n const onKeyUp: (e: React.KeyboardEvent) => void = (e) => {\r\n if (inputVal) {\r\n if (e?.key === 'Enter') {\r\n formRef.current.dispatchEvent(new Event('submit'))\r\n return\r\n }\r\n }\r\n updateSuggestionsQuery(e) //debounce(updateSuggestionsQuery, SUGGESTIONS_DEBOUNCE_TIME_IN_MS)\r\n }\r\n\r\n const updateSuggestionsQuery = (event) => {\r\n setSuggestionQuery(event.target.value)\r\n setPage('1')\r\n //setIsSuggestionsComponentVisible(true);\r\n }\r\n\r\n const onUpdateQueryFromSuggestions = (q: string) => {\r\n pfeInputRef.current.value = q\r\n setIsSuggestionsComponentVisible(false)\r\n formRef.current.dispatchEvent(new Event('submit'))\r\n }\r\n\r\n const handleClickOutside = (event) => {\r\n if (formRef?.current?.contains(event.target)) {\r\n return\r\n }\r\n\r\n setIsSuggestionsComponentVisible(false)\r\n }\r\n\r\n useEffect(() => {\r\n document.addEventListener('mouseup', handleClickOutside)\r\n return () => {\r\n document.removeEventListener('mouseup', handleClickOutside)\r\n }\r\n }, [])\r\n\r\n return (\r\n \r\n }\r\n >\r\n \r\n \r\n \r\n {/* setIsSuggestionsComponentVisible(true)}\r\n > */}\r\n
    \r\n setIsSuggestionsComponentVisible(true)}\r\n onKeyUp={onKeyUp}\r\n value={inputVal}\r\n onChange={(e) => setInputVal(e.target.value)}\r\n />\r\n \r\n {/* */}\r\n
    \r\n \r\n {/* */}\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n {isSuggestionsComponentVisible && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nconst SearchLink = ({ fields }: { fields: ComponentFieldsGeneral }) => {\r\n const dispatchToProvider = useMenuDispatcher()\r\n const handleClick = () => {\r\n dispatchToProvider({ type: 'closeAll' })\r\n }\r\n return (\r\n
  • \r\n \r\n \r\n \r\n
  • \r\n )\r\n}\r\n\r\nconst Search = ({\r\n fields,\r\n sitecoreContext,\r\n}: WithSitecoreContextProps & ComponentProps) => {\r\n const removetray = fields.search?.removetray?.value\r\n return removetray ? (\r\n \r\n ) : (\r\n \r\n )\r\n}\r\n\r\nexport default Search\r\n","import React from 'react';\r\nimport { useMenuContext} from \"./MenuContext\";\r\n\r\nconst MenuOverlay = () => {\r\n const [state, dispatch] = useMenuContext();\r\n const isAnyOpen = state.some(({isOpen}) => isOpen);\r\n const handleClick = () => {\r\n dispatch({type: 'closeAll'})\r\n }\r\n return \r\n
    \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(Header)\r\n","import { ImageField, StringField, LinkField } from \"../../../types/types\";\r\nimport { HeroBannerFields, HeroBannerProps } from \"../types/HeroBanner.types\";\r\n\r\nexport class HeroBannerModel {\r\n private readonly fields?: HeroBannerFields;\r\n constructor(props: HeroBannerProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get description(): StringField {\r\n return this.fields?.description;\r\n }\r\n\r\n get eyebrow(): StringField {\r\n return this.fields?.eyebrow;\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.image;\r\n }\r\n\r\n get imageMobile(): ImageField {\r\n return this.fields?.imageMobile;\r\n }\r\n\r\n get primaryLink(): LinkField {\r\n return this.fields?.link1;\r\n }\r\n\r\n get secondaryLink(): LinkField {\r\n return this.fields?.link2;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.title;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { ComponentProps } from \"../../types/types\";\r\nimport { RichText, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"../../styles/@shared/hero-banner.scss\";\r\nimport { HeroBannerModel } from \"./models/HeroBanner.model\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\n\r\ninterface HeroBannerProps extends ComponentProps {}\r\n\r\nconst HeroBanner = (props: HeroBannerProps) => {\r\n const model = new HeroBannerModel(props);\r\n const getVariation = () => {\r\n return props?.params?.Variation?.toLowerCase();\r\n };\r\n const getHeight = () => {\r\n return props?.params?.HeightSize?.toLowerCase();\r\n };\r\n const variation = getVariation();\r\n const height = getHeight();\r\n\r\n return (\r\n \r\n {props.fields && (\r\n \r\n \r\n\r\n 0\r\n ? model?.imageMobile?.value?.src\r\n : model?.image?.value?.src\r\n })`,\r\n }}\r\n className=\"hero-banner__image hero-banner__image--mobile\"\r\n >\r\n \r\n
    \r\n \r\n \r\n \r\n {model?.primaryLink?.value?.href && (\r\n
    \r\n \r\n
    \r\n )}\r\n {model?.secondaryLink?.value?.href && (\r\n \r\n \r\n \r\n )}\r\n
    \r\n \r\n \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default HeroBanner;\r\n","import React, { FunctionComponent, memo, useEffect, useState } from \"react\";\r\nimport {\r\n Text,\r\n Link,\r\n withSitecoreContext,\r\n Image,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport {\r\n StringField,\r\n ImageField,\r\n LinkField,\r\n CheckboxField,\r\n VideoSitecoreField,\r\n} from \"../../types/types\";\r\nimport { TextColorField } from \"./types\";\r\nimport useMediaQuery from \"../../lib/custom-hooks/useMediaQuery\";\r\n\r\nexport interface HeroCarouselItemFields {\r\n image: ImageField;\r\n imageMobile: ImageField;\r\n title: StringField;\r\n eyebrow: StringField;\r\n content: StringField;\r\n link: LinkField;\r\n textColor: TextColorField;\r\n video: VideoSitecoreField;\r\n useVideo: CheckboxField;\r\n}\r\n\r\ninterface HeroCarouselItemProps {\r\n slideInfo?: {\r\n currentSlide: number;\r\n index: number;\r\n networkSpeed: number;\r\n };\r\n fields?: HeroCarouselItemFields;\r\n sitecoreContext: {\r\n pageEditing: boolean;\r\n };\r\n params: StringField;\r\n carousalType: StringField;\r\n}\r\n\r\nconst HeroCarouselSlide: FunctionComponent = ({\r\n slideInfo,\r\n fields,\r\n sitecoreContext,\r\n params,\r\n carousalType,\r\n}) => {\r\n const [mediaVisible, setMediaVisible] = useState({\r\n video: false,\r\n image: false,\r\n });\r\n\r\n const textColor = fields.textColor?.value || \"corporateBlack\";\r\n const variation: StringField = params;\r\n\r\n useEffect(() => {\r\n if (\r\n fields?.useVideo?.value &&\r\n slideInfo?.currentSlide === slideInfo?.index &&\r\n !mediaVisible.video\r\n ) {\r\n setMediaVisible((prevState) => ({ ...prevState, video: true }));\r\n }\r\n\r\n if (slideInfo?.currentSlide === slideInfo?.index && !mediaVisible.image) {\r\n setMediaVisible((prevState) => ({ ...prevState, image: true }));\r\n }\r\n });\r\n\r\n const isDesktop = useMediaQuery(\"(min-width: 768px)\");\r\n\r\n const showEyeBrowText = () => {\r\n switch (variation) {\r\n case \"WithEyebrowWithoutDescription\":\r\n return true;\r\n case \"WithEyebrow\":\r\n return true;\r\n case \"WithoutEyebrow\":\r\n return false;\r\n }\r\n };\r\n\r\n return (\r\n
    \r\n {fields.useVideo?.value &&\r\n (sitecoreContext.pageEditing || slideInfo.networkSpeed >= 15)\r\n ? mediaVisible.video && (\r\n \r\n \r\n \r\n )\r\n : mediaVisible.image && (\r\n \r\n \r\n\r\n 0\r\n ? fields.imageMobile?.value?.src\r\n : fields.image?.value?.src\r\n }\r\n style={{ zIndex: sitecoreContext.pageEditing ? 0 : -2 }}\r\n className={\"slide__image mobile\"}\r\n />\r\n\r\n \r\n \r\n )}\r\n {fields?.title?.value === \"Learn More\" ? (\r\n \r\n {sitecoreContext.pageEditing ? (\r\n <>\r\n \r\n {fields.content && (\r\n \r\n )}\r\n
    \r\n \r\n
    \r\n \r\n ) : (\r\n <>\r\n {fields.eyebrow && showEyeBrowText() && (\r\n \r\n )}\r\n\r\n {fields?.title?.value === \"Learn More\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {fields.content && (\r\n \r\n )}\r\n\r\n {fields?.link?.value?.href && (\r\n
    \r\n \r\n
    \r\n )}\r\n \r\n )}\r\n
    \r\n ) : (\r\n \r\n {sitecoreContext.pageEditing ? (\r\n <>\r\n \r\n\r\n {fields.content && (\r\n \r\n )}\r\n\r\n
    \r\n \r\n
    \r\n \r\n ) : (\r\n <>\r\n {fields.eyebrow && showEyeBrowText() && (\r\n \r\n )}\r\n\r\n {fields.title.value === \"Learn More\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {fields.content && (\r\n \r\n )}\r\n\r\n {fields?.link?.value?.href && (\r\n
    \r\n \r\n
    \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(memo(HeroCarouselSlide));\r\n","import React, { FunctionComponent } from 'react'\r\n\r\ninterface HeroCarouselArrowProps {\r\n direction: 'previous' | 'next'\r\n onClick: () => void\r\n}\r\n\r\nconst HeroCarouselArrow: FunctionComponent = ({\r\n direction,\r\n onClick,\r\n}) => {\r\n const icon = 'cnh-chevron-' + (direction === 'previous' ? 'left' : 'right')\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default HeroCarouselArrow\r\n","import React, {FunctionComponent} from \"react\";\r\nimport './HeroCarouselScrollSymbol.scss';\r\n\r\ninterface HeroCarouselScrollIconProps {\r\n}\r\n\r\nconst HeroCarouselScrollSymbol: FunctionComponent = () => {\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default HeroCarouselScrollSymbol;\r\n","import NetworkSpeed from 'network-speed' // ES5\r\n\r\nasync function getNetworkDownloadSpeed(): Promise {\r\n const testNetworkSpeed = new NetworkSpeed()\r\n const baseUrl = `/-/media/Default Website/1px.ashx`\r\n const fileSizeInBytes = 119719\r\n const speed = await testNetworkSpeed.checkDownloadSpeed(\r\n baseUrl,\r\n fileSizeInBytes\r\n )\r\n\r\n if (speed.mbps === 'Infinity') return '100'\r\n return speed.mbps\r\n}\r\n\r\nexport default getNetworkDownloadSpeed\r\n","import React, { Fragment, FunctionComponent, useEffect, useState } from \"react\";\r\nimport Slider from \"react-slick\";\r\nimport { withSitecoreContext } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { Carousel as ReactResponsiveCarousel } from \"react-responsive-carousel\";\r\nimport HeroCarouselSlide, { HeroCarouselItemFields } from \"./HeroCarouselSlide\";\r\nimport HeroCarouselIndicator from \"./HeroCarouselIndicator\";\r\nimport HeroCarouselArrow from \"./HeroCarouselArrow\";\r\nimport HeroCarouselScrollSymbol from \"./HeroCarouselScrollSymbol\";\r\nimport getNetworkDownloadSpeed from \"../../utils/network.utils\";\r\nimport { TSitecoreContext } from \"../../types/sitecore.types\";\r\nimport { CheckboxField, StringField } from \"../../types/types\";\r\nimport \"react-responsive-carousel/lib/styles/carousel.min.css\";\r\n\r\ninterface HeroCarouselDesktopProps {\r\n items: HeroCarouselItemFields[];\r\n showCarouselOverlay: CheckboxField;\r\n sitecoreContext: TSitecoreContext;\r\n params: StringField;\r\n carousalType: StringField;\r\n}\r\n\r\nconst HeroCarouselDesktop: FunctionComponent = ({\r\n items,\r\n params,\r\n showCarouselOverlay,\r\n sitecoreContext,\r\n carousalType,\r\n}) => {\r\n const interval: number = 10000; // when you change this change also the $interval variable in HeroCarousel > style.scss\r\n const hasMultipleSlides = items.length > 1;\r\n\r\n const [currentSlide, _setCurrentSlide] = useState(0);\r\n\r\n const isEEActive = sitecoreContext?.pageEditing;\r\n const isPreview = sitecoreContext?.pageState === \"preview\";\r\n\r\n const setCurrentSlide = hasMultipleSlides\r\n ? (index: number) => {\r\n if (currentSlide != index) {\r\n _setCurrentSlide(index);\r\n }\r\n }\r\n : () => {};\r\n\r\n const goNext = () => setCurrentSlide(currentSlide + 1);\r\n const goPrevious = () => setCurrentSlide(currentSlide - 1);\r\n\r\n const [networkSpeed, setNetworkSpeed] = useState(0);\r\n\r\n const videoIsPresent = items.some((item) => item.useVideo.value);\r\n useEffect(() => {\r\n if (videoIsPresent) {\r\n getNetworkDownloadSpeed().then((response) => {\r\n setNetworkSpeed(parseInt(response));\r\n });\r\n }\r\n }, []);\r\n\r\n const settings = {\r\n infinite: true,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n arrows: false,\r\n };\r\n\r\n function CarouselForEE() {\r\n return (\r\n \r\n {items.map((itemFields, index) => (\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n );\r\n }\r\n\r\n function Carousel() {\r\n return (\r\n \r\n \r\n 1 ? true : false}\r\n interval={interval}\r\n autoPlay={true}\r\n onChange={setCurrentSlide}\r\n selectedItem={currentSlide}\r\n showThumbs={false}\r\n showArrows={false}\r\n showIndicators={false}\r\n showStatus={false}\r\n stopOnHover={false}\r\n >\r\n {items.map((itemFields, index) => {\r\n const slideInfo = { currentSlide, index, networkSpeed };\r\n\r\n return (\r\n \r\n );\r\n })}\r\n \r\n {hasMultipleSlides ? (\r\n
    \r\n \r\n
      \r\n {items.map((_, index) => (\r\n \r\n ))}\r\n
    \r\n \r\n
    \r\n ) : null}\r\n {showCarouselOverlay?.value && }\r\n \r\n {/* { !isPreview && } */}\r\n
    \r\n );\r\n }\r\n\r\n const carousel = isEEActive ? CarouselForEE() : Carousel();\r\n\r\n return (\r\n
    {carousel}
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(HeroCarouselDesktop);\r\n","import {HeroCarouselFields} from \"./types\";\r\n\r\nconst fieldsMock: HeroCarouselFields = {\r\n \"Show Carousel Overlay\": { \"value\": true },\r\n \r\n \"Carousel Slides\": [\r\n {\r\n \"fields\": {\r\n \"Text Color\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"corporateBlack\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"THE FREEDOM TO FARM THE WAY YOU WANT.\"\r\n },\r\n \"Content\": {\r\n \"value\": \"Discover the new, powerful, and efficient AFS Connect™ Steiger Series\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/dsk/hero-carousel-d-1.jpg\",\r\n \"alt\": \"Tiger-Mate 200 Field Cultivator Tiller\",\r\n \"width\": \"1680\",\r\n \"height\": \"760\"\r\n }\r\n },\r\n \"imageMobile\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/mobile/hero-carousel-m-1.jpg\",\r\n \"alt\": \"Tiger-Mate 200 Field Cultivator Tiller\",\r\n \"width\": \"384\",\r\n \"height\": \"785\"\r\n }\r\n },\r\n \"Link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"EXPLORE\",\r\n \"url\": \"\",\r\n \"title\": \"Explore\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Video\": {\r\n value: {\r\n id: \"{06986645-a76f-4f83-9f52-fede5004a7d2}\",\r\n target: \"\",\r\n linktype: \"media\",\r\n href: \"//localhost:8085/videos/HeroCarousel_0.mp4\"\r\n }\r\n },\r\n \"Use Video\": {\r\n \"value\": false\r\n }\r\n }\r\n },\r\n {\r\n 'fields': {\r\n 'Text Color': {\r\n 'fields': {\r\n 'Key': {\r\n 'value': 'corporateBlack'\r\n }\r\n }\r\n },\r\n 'Title': {\r\n 'value': 'THE FREEDOM TO FARM THE WAY YOU WANT.'\r\n },\r\n 'Content': {\r\n 'value': 'Discover the new, powerful, and efficient AFS Connect™ Steiger Series'\r\n },\r\n 'Image': {\r\n 'value': {\r\n 'src': '',\r\n 'alt': 'AFS Connect Steiger 470 and Speed Tiller 475',\r\n 'width': '1680',\r\n 'height': '760'\r\n }\r\n },\r\n 'imageMobile': {\r\n 'value': {\r\n 'src': '',\r\n 'alt': 'AFS Connect Steiger 470 and Speed Tiller 475',\r\n \"width\": \"384\",\r\n \"height\": \"785\"\r\n }\r\n },\r\n 'Link': {\r\n 'value': {\r\n 'href': '',\r\n 'text': 'EXPLORE',\r\n 'url': '',\r\n 'title': 'Explore',\r\n 'target': ''\r\n }\r\n },\r\n 'Video': {\r\n value: {\r\n href: '//localhost:8085/videos/HeroCarousel_0.mp4',\r\n linktype: 'media',\r\n target: '',\r\n id: '{DBE29166-0309-4F12-BC5F-B84F3E68BEA0}'\r\n }\r\n },\r\n 'Use Video': {\r\n 'value': false\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Text Color\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"corporateBlack\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"THE FREEDOM TO FARM THE WAY YOU WANT.\"\r\n },\r\n \"Content\": {\r\n \"value\": \"Discover the new, powerful, and efficient AFS Connect™ Steiger Series\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/dsk/hero-carousel-d-3.jpg\",\r\n \"alt\": \"AFS Connect Steiger 470 and Speed Tiller 475\",\r\n \"width\": \"1680\",\r\n \"height\": \"760\"\r\n }\r\n },\r\n \"imageMobile\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/mobile/hero-carousel-m-3.jpg\",\r\n \"alt\": \"Vestrum Series 130\",\r\n \"width\": \"384\",\r\n \"height\": \"785\"\r\n }\r\n },\r\n \"Link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"EXPLORE\",\r\n \"url\": \"\",\r\n \"title\": \"Explore\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Video\": {\r\n value: {\r\n href: \"//localhost:8085/videos/HeroCarousel_0.mp4\",\r\n id: \"{06986645-a76f-4f83-9f52-fede5004a7d2}\",\r\n linktype: \"media\",\r\n target: \"\"\r\n }\r\n },\r\n \"Use Video\": {\r\n \"value\": false\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Text Color\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"corporateBlack\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"THE FREEDOM TO FARM THE WAY YOU WANT.\"\r\n },\r\n \"Content\": {\r\n \"value\": \"Discover the new, powerful, and efficient AFS Connect™ Steiger Series\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/dsk/hero-carousel-d-4.jpg\",\r\n \"alt\": \"AFS Connect Steiger 470 and Speed Tiller 475\",\r\n \"width\": \"1680\",\r\n \"height\": \"760\"\r\n }\r\n },\r\n \"imageMobile\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/hero-carousel/mobile/hero-carousel-m-4.jpg\",\r\n \"alt\": \"AFS Connect Steiger 470 and Speed Tiller 475\",\r\n \"width\": \"384\",\r\n \"height\": \"785\"\r\n }\r\n },\r\n \"Link\": {\r\n \"value\": {\r\n \"href\": \"\",\r\n \"text\": \"EXPLORE\",\r\n \"url\": \"\",\r\n \"title\": \"Explore\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Video\": {\r\n value: {\r\n href: \"//localhost:8085/videos/HeroCarousel_0.mp4\",\r\n id: \"{06986645-a76f-4f83-9f52-fede5004a7d2}\",\r\n linktype: \"media\",\r\n target: \"\"\r\n }\r\n },\r\n \"Use Video\": {\r\n \"value\": true\r\n }\r\n }\r\n }\r\n ],\r\n \"params\":{},\r\n}\r\n\r\nexport default fieldsMock;\r\n","import React from \"react\";\r\nimport HeroCarouselDesktop from \"./HeroCarouselDesktop\";\r\nimport { ComponentProps, CheckboxField } from \"../../types/types\";\r\nimport {\r\n HeroCarouselFields,\r\n TextColorField,\r\n TextColorSitecoreField,\r\n} from \"./types\";\r\nimport fieldsMock from \"./NotEditableFieldsMock\";\r\nimport \"./style.scss\";\r\nimport { StringField } from \"../../types/types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\n\r\ninterface HeroCarouselProps extends ComponentProps {}\r\n\r\nconst colorMapper: (sitecoreColor: TextColorSitecoreField) => TextColorField = (\r\n sitecoreColor\r\n) => sitecoreColor?.fields?.Key;\r\n\r\nconst fieldMapper: (sitecoreFields: HeroCarouselFields) => {\r\n items: any[];\r\n showCarouselOverlay: CheckboxField;\r\n} = (sitecoreFields) => {\r\n const sitecoreItems = sitecoreFields[\"Carousel Slides\"];\r\n const showCarouselOverlay = sitecoreFields[\"Show Carousel Overlay\"];\r\n const items = sitecoreItems.map(({ fields }) => {\r\n return {\r\n image: fields.Image,\r\n imageMobile: fields.imageMobile,\r\n title: fields.Title,\r\n content: fields.Content,\r\n link: fields.Link,\r\n textColor: colorMapper(fields[\"Text Color\"]),\r\n video: fields.Video,\r\n useVideo: fields[\"Use Video\"],\r\n eyebrow: fields[\"Eyebrow\"],\r\n };\r\n });\r\n\r\n return {\r\n items,\r\n showCarouselOverlay,\r\n };\r\n};\r\n\r\nconst HeroCarousel = (props: HeroCarouselProps) => {\r\n let fields: HeroCarouselFields;\r\n\r\n if (!props.fields || !Object.keys(props.fields).length) {\r\n fields = fieldsMock;\r\n } else {\r\n fields = props.fields;\r\n }\r\n\r\n const mappedFields = fieldMapper(fields);\r\n const { items, showCarouselOverlay } = mappedFields;\r\n const params: any = props.params;\r\n\r\n return (\r\n \r\n {props.fields && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default HeroCarousel;\r\n","import { StringField, LinkField } from \"../../../types/types\"\r\nimport { HighlightsFields, HighlightsProps } from \"../types/Highlights.types\"\r\n\r\nexport class HighlightsModel {\r\n private readonly fields?: HighlightsFields\r\n constructor(props: HighlightsProps) {\r\n this.fields = props.fields || null\r\n }\r\n}\r\n","import React, { useRef, useState, useEffect } from 'react'\r\nimport {\r\n Text,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n Link,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport Slider from 'react-slick'\r\nimport { HighlightsModel } from './models/Highlights.model'\r\nimport { HighlightsProps } from './types/Highlights.types'\r\nimport LazySection from '../../react-only-components/LazySection'\r\nimport { forceVisible } from 'react-lazyload'\r\nimport CarouselDots from '../../react-only-components/CarouselDots'\r\nimport './index.scss'\r\n\r\nconst Highlights = (props: HighlightsProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing\r\n const model = new HighlightsModel(props)\r\n const HighlightsCardList = props?.fields?.highlights\r\n const [dynamicHeight, setDynamicHeight] = useState(300)\r\n const widthRef = useRef()\r\n const [width, setWidth] = useState(0)\r\n\r\n useEffect(() => {\r\n handleFirstComponentMargin()\r\n getCurrentWidthAndHeight()\r\n forceVisible()\r\n }, [])\r\n\r\n useEffect(() => {\r\n handleDynamicHeight()\r\n // Update 'width' and 'height' when the window resizes\r\n window.addEventListener('resize', getCurrentWidthAndHeight)\r\n // return () => window.removeEventListener(\"resize\", getCurrentWidthAndHeight)\r\n })\r\n\r\n // Add Id to the first component\r\n const handleFirstComponentMargin = () => {\r\n let main = document.querySelector('main')\r\n let section = main.getElementsByTagName('section')\r\n if (section && section.length > 0) {\r\n let style = section[0].setAttribute('name', 'marginHighlights')\r\n }\r\n if (isExperienceEditorActive() || isEE) {\r\n let EEMargin = document\r\n .querySelector('main')\r\n .setAttribute('id', 'EEMargin')\r\n let setMargin = document.getElementById('EEMargin')\r\n if (setMargin) {\r\n let style = setMargin.setAttribute(\r\n 'style',\r\n 'margin-top: 0px !important'\r\n )\r\n }\r\n }\r\n }\r\n\r\n // calculate dynamic height\r\n const handleDynamicHeight = () => {\r\n let getDynamicHeight =\r\n document.getElementsByName('marginHighlights')[0]?.offsetHeight\r\n if (getDynamicHeight !== null) {\r\n setDynamicHeight(getDynamicHeight)\r\n }\r\n }\r\n\r\n const getCurrentWidthAndHeight = () => {\r\n let currentWidth = widthRef?.current?.clientWidth\r\n if (currentWidth !== null) {\r\n setWidth(currentWidth)\r\n }\r\n handleDynamicHeight()\r\n }\r\n\r\n let desktopPosition = 192\r\n let tabletPosition = dynamicHeight + 190 - 300\r\n let mobilePosition = dynamicHeight + 131 - 15\r\n let smallMobilePosition = -15\r\n let topValue =\r\n width >= 1025\r\n ? desktopPosition\r\n : width <= 1024 && width >= 768\r\n ? tabletPosition\r\n : width <= 767 && width >= 0\r\n ? smallMobilePosition\r\n : dynamicHeight\r\n\r\n const settings = {\r\n dots: true,\r\n infinite: true,\r\n speed: 500,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n autoplay: true,\r\n arrows: false,\r\n customPaging: (_) => (\r\n \r\n \r\n \r\n ),\r\n }\r\n return (\r\n \r\n {props.fields && HighlightsCardList && (\r\n \r\n \r\n
    \r\n \r\n \r\n {HighlightsCardList.map((item, index: number) => (\r\n
    \r\n \r\n \r\n
    \r\n \r\n {item?.fields?.title && (\r\n \r\n \r\n \r\n )}\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n
    \r\n \r\n
    \r\n )}\r\n \r\n )\r\n}\r\nexport default withSitecoreContext()(Highlights)\r\n","import React, { FC, useCallback, useEffect, useRef, useState } from 'react'\r\nimport { Text } from '@sitecore-jss/sitecore-jss-react'\r\nimport { HistoryTabsProps } from './types/HistoryTabs.types'\r\nimport './HistoryTabs.scss'\r\n\r\nconst HistoryTabs: FC = ({\r\n index,\r\n tabs,\r\n borderTop,\r\n setIndex,\r\n setTab,\r\n onScroll,\r\n}) => {\r\n const scrollRef = useRef()\r\n\r\n const [suggestScroll, setSuggestScroll] = useState(false)\r\n\r\n const updateSuggestedScroll = useCallback(() => {\r\n setSuggestScroll(\r\n scrollRef.current.scrollWidth - scrollRef.current.clientWidth > 100\r\n )\r\n }, [])\r\n\r\n useEffect(() => {\r\n updateSuggestedScroll()\r\n\r\n window.addEventListener('resize', updateSuggestedScroll)\r\n scrollRef.current.addEventListener('scroll', () => setSuggestScroll(false))\r\n return () => {\r\n window.removeEventListener('resize', updateSuggestedScroll)\r\n scrollRef.current.addEventListener('scroll', () =>\r\n setSuggestScroll(false)\r\n )\r\n }\r\n }, [tabs, updateSuggestedScroll])\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n {tabs.map((tab, idx) => {\r\n return (\r\n {\r\n setIndex(idx)\r\n setTab(tabs[idx])\r\n onScroll()\r\n }}\r\n field={{\r\n value: tab,\r\n }}\r\n />\r\n )\r\n })}\r\n
    \r\n\r\n {suggestScroll && (\r\n \r\n
    \r\n
    \r\n \r\n )}\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default HistoryTabs\r\n","import React, { FC, useState } from 'react'\r\nimport {\r\n Image,\r\n isExperienceEditorActive,\r\n Text,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { Waypoint } from 'react-waypoint'\r\nimport { HistoryBlockProps } from './types/HistoryBlock.types'\r\nimport './HistoryBlock.scss'\r\n\r\nconst HistoryBlock: FC = ({\r\n description,\r\n icon,\r\n image,\r\n index,\r\n title,\r\n year,\r\n isScrolling,\r\n}) => {\r\n const [enteredWaypoint, setEnteredWaypoint] = useState(\r\n isExperienceEditorActive() ? true : false\r\n )\r\n\r\n return (\r\n
    \r\n {!isScrolling && (\r\n {\r\n setEnteredWaypoint(true)\r\n }}\r\n bottomOffset={'10%'}\r\n />\r\n )}\r\n {\r\n <>\r\n \r\n \r\n
    \r\n \r\n {index % 2 === 0 ? (\r\n \r\n \r\n \r\n \r\n
    \r\n ) : (\r\n index % 2 > 0 && (\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n )\r\n )}\r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n {index % 2 === 0 ? (\r\n
    \r\n \r\n \r\n
    \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n }\r\n \r\n )\r\n}\r\n\r\nexport default HistoryBlock\r\n","import React, { FC, useEffect, useRef, useState } from 'react'\r\nimport { isExperienceEditorActive } from '@sitecore-jss/sitecore-jss-react'\r\nimport { HistoryProps } from './types/History.types'\r\nimport { useHistoryScroll } from './hooks/useHistoryScroll'\r\nimport './History.scss'\r\n\r\nimport HistoryTabs from './HistoryTabs/HistoryTabs'\r\nimport HistoryBlock from './HistoryBlock/HistoryBlock'\r\n\r\nconst History: FC = ({ fields: { cluster } }) => {\r\n const isExperienceEditor = isExperienceEditorActive()\r\n const { scroll, CustomScrollMarker } = useHistoryScroll()\r\n\r\n const [historyIndex, setHistoryIndex] = useState(0)\r\n const [selectedTab, setSelectedTab] = useState('')\r\n const [tabs, setTabs] = useState([])\r\n const [isScrolling, setIsScrolling] = useState(false)\r\n\r\n const ref = useRef(null)\r\n\r\n useEffect(() => {\r\n if (!cluster) return\r\n\r\n let formattedTabs: string[] = []\r\n cluster.map((cluster) => {\r\n formattedTabs.push(cluster.fields?.title?.value)\r\n })\r\n setTabs(formattedTabs)\r\n }, [cluster])\r\n\r\n useEffect(() => {\r\n if (tabs.length > 0) setSelectedTab(tabs[0])\r\n }, [tabs])\r\n\r\n return (\r\n
    \r\n \r\n\r\n
    \r\n {\r\n setIsScrolling(true)\r\n scroll(ref)\r\n setTimeout(() => {\r\n setIsScrolling(false)\r\n }, 500)\r\n }}\r\n />\r\n
    \r\n\r\n
    \r\n
    \r\n\r\n {cluster.map((item, selfIndex) => (\r\n
    \r\n {(isExperienceEditor || tabs[selfIndex] === selectedTab) &&\r\n item.fields.entries.map((entry, index) => {\r\n return (\r\n \r\n )\r\n })}\r\n
    \r\n ))}\r\n
    \r\n\r\n {\r\n setIsScrolling(true)\r\n scroll(ref)\r\n setTimeout(() => {\r\n setIsScrolling(false)\r\n }, 500)\r\n }}\r\n />\r\n
    \r\n )\r\n}\r\n\r\nexport default History\r\n","import React, { FunctionComponent, MutableRefObject } from 'react'\r\n\r\nexport const useHistoryScroll: () => {\r\n scroll: (element: MutableRefObject) => void\r\n CustomScrollMarker: FunctionComponent<{\r\n topOffset?: number\r\n innerRef: MutableRefObject\r\n }>\r\n} = () => {\r\n const scroll: (element: MutableRefObject) => void = (\r\n element\r\n ) => {\r\n element.current.scrollIntoView({ behavior: 'smooth', block: 'start' })\r\n }\r\n\r\n const CustomScrollMarker: FunctionComponent<{\r\n topOffset?: number\r\n innerRef: MutableRefObject\r\n }> = ({ topOffset, innerRef }) => {\r\n topOffset = topOffset ?? 0\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n )\r\n }\r\n\r\n return { scroll, CustomScrollMarker }\r\n}\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n IconButtonFields,\r\n IconButtonProps,\r\n IconButton,\r\n} from \"../types/IconButton.types\";\r\n\r\nexport class IconButtonModel {\r\n private readonly fields: IconButtonFields;\r\n\r\n constructor(props: IconButtonProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get icon(): StringField {\r\n return this.fields?.Icon\r\n }\r\n\r\n get label(): StringField {\r\n return this.fields?.Label\r\n }\r\n \r\n get downloadLink() {\r\n return this.fields?.Link\r\n }\r\n}\r\n","import React, { useState, useRef, useEffect } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { IconButtonModel } from \"./models/IconButton.model\";\r\nimport { IconButtonProps } from \"./types/IconButton.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\n\r\nconst IconButton = (props: IconButtonProps) => {\r\n const model = new IconButtonModel(props);\r\n const undifinedServer = typeof document !== 'undefined' && typeof window !== 'undefined';\r\n\r\n if (undifinedServer) {\r\n const getPrvacyPage = document.querySelector(\".column-view\") && document.querySelector(\".column-view\");\r\n console.log(\"icon btn\", model, getPrvacyPage, model?.downloadLink);\r\n\r\n useEffect(() => {\r\n const buttonPdf = document.querySelector(\".print-btn\");\r\n console.log(buttonPdf);\r\n buttonPdf?.addEventListener(\"click\", (event) => {\r\n const target = event.currentTarget;\r\n console.log(target);\r\n window.print();\r\n })\r\n }, []);\r\n }\r\n\r\n return (\r\n props?.fields && (\r\n
    \r\n {model?.downloadLink?.value?.href ? \r\n \r\n
    \r\n \r\n {model?.label?.value}\r\n
    \r\n \r\n :\r\n
    \r\n \r\n {model?.label?.value}\r\n
    \r\n }\r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(IconButton);\r\n","export const IFrameMock = {\r\n uid: \"4c0b4e2e-07d0-4924-b1d2-63da36ca246c\",\r\n componentName: \"iFrame\",\r\n dataSource: \"{33338258-3FA2-4B59-8224-DDB689AC5FBE}\",\r\n params: {\r\n },\r\n fields: {\r\n Link: {\r\n value: {\r\n href: \"\",\r\n linktype: \"external\",\r\n url: \"\"\r\n }\r\n }\r\n }\r\n}\r\n","import { TIFrameFields, TIFrameProps } from '../types/IFrame.types';\r\nimport { IFrameMock } from '../../../mocks/IFrame/IFrame.mock';\r\n\r\nexport class IFrameModel {\r\n private readonly fields: null | TIFrameFields;\r\n\r\n constructor(props: TIFrameProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get url(): string {\r\n return this.fields?.Link?.value?.url ?? IFrameMock?.fields?.Link?.value?.url;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { IFrameModel } from \"./models/IFrame.model\";\r\nimport { TIFrameProps } from \"./types/IFrame.types\";\r\nimport \"./index.scss\";\r\n\r\nconst IFrame = (props: TIFrameProps) => {\r\n const model = new IFrameModel(props);\r\n const { url } = model;\r\n\r\n return (\r\n \r\n {props.fields && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default IFrame;\r\n","import { KeepInTouchFields, KeepInTouchProps, SocialLink } from \"./fields.definitions\";\r\nimport { CheckboxField, LinkField, StringField } from \"../../types/types\";\r\n\r\nexport class KeepInTouchModel {\r\n private readonly fields: null | KeepInTouchFields;\r\n constructor(props: KeepInTouchProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title ?? { value: \"Keep in touch\" };\r\n }\r\n\r\n get content(): StringField {\r\n return (\r\n this.fields?.Content ?? {\r\n value: `\r\n

    Stay up to date with news, updates, offers and more.

    \r\n

    By submitting your e-mail address, you are accepting the Terms of Service and Privacy Policy.

    `,\r\n }\r\n );\r\n }\r\n\r\n get textboxPlaceholderText(): StringField {\r\n return this.fields?.[\"Textbox Placeholder Text\"] ?? { value: \"E-mail Address\" };\r\n }\r\n\r\n get showForm(): CheckboxField {\r\n return this.fields?.[\"Show Form\"] ?? { value: false };\r\n }\r\n\r\n get submitButtonLink(): LinkField {\r\n return this.fields?.[\"Submit Button Link\"] ?? null;\r\n }\r\n\r\n get socialMediaTitle(): StringField {\r\n return (\r\n this.fields?.[\"Social Media Title\"] ?? { value: \"Find us on social media\" }\r\n );\r\n }\r\n\r\n get socialMediaLinks(): SocialLink[] {\r\n return (\r\n this.fields?.[\"Social Media Links\"] ?? [\r\n {\r\n fields: {\r\n Link: { value: { href: \"https://facebook.com\" } },\r\n Icon: { value: \"dcx-facebook-fill\" },\r\n }\r\n },\r\n {\r\n fields: {\r\n Link: { value: { href: \"https://linkedin.com\" } },\r\n Icon: { value: \"dcx-linkedin-fill\" },\r\n }\r\n },\r\n {\r\n fields: {\r\n Link: { value: { href: \"https://twitter.com\" } },\r\n Icon: { value: \"dcx-twitter-fill\" },\r\n }\r\n },\r\n {\r\n fields: {\r\n Link: { value: { href: \"https://youtube.com\" } },\r\n Icon: { value: \"dcx-youtube-fill\" },\r\n }\r\n },\r\n ]\r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { RichText, Text, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport {\r\n KeepInTouchProps,\r\n SocialLink as SocialLinkType,\r\n} from \"./fields.definitions\";\r\nimport { KeepInTouchModel } from \"./fields.model\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport \"./index.scss\";\r\n\r\nconst KeepInTouch = (props: KeepInTouchProps) => {\r\n const model = new KeepInTouchModel(props);\r\n const socialText = model.showForm?.value\r\n ? \"social__text social__text--with-form\"\r\n : \"social__text\";\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n {model.showForm.value && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n {model.socialMediaLinks.map((item, i) => (\r\n \r\n ))}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nconst SocialLink = ({ fields }: SocialLinkType) => (\r\n \r\n \r\n \r\n);\r\n\r\nconst KeepInTouchForm = () => (\r\n
    \r\n \r\n \r\n \r\n);\r\n\r\nexport default KeepInTouch;\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n LanguageDropdownFields,\r\n LanguageDropdownProps,\r\n LanguageDropdown,\r\n} from \"../types/LanguageDropdown.types\";\r\n\r\nexport class LanguageDropdownModel {\r\n private readonly fields: LanguageDropdownFields;\r\n\r\n constructor(props: LanguageDropdownProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { LanguageDropdownModel } from \"./models/LanguageDropdown.model\";\r\nimport { LanguageDropdownProps } from \"./types/LanguageDropdown.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst LanguageDropdown = (props: LanguageDropdownProps) => {\r\n const model = new LanguageDropdownModel(props);\r\n const getDropdownList = props?.fields?.Languages;\r\n const undifinedServer =\r\n typeof document !== \"undefined\" && typeof window !== \"undefined\";\r\n\r\n if (typeof window !== 'undefined') {\r\n const langValue = localStorage.getItem('langValue');\r\n const select = document.querySelector(\".privacy-language-dropdown #language-select-dropdown\") as HTMLSelectElement;\r\n if (select && langValue) {\r\n select.value = langValue\r\n }\r\n }\r\n\r\n const redirectFromSelect = (elementValue) => {\r\n const selectedLangValue = elementValue;\r\n if (typeof window !== 'undefined') {\r\n localStorage.setItem('langValue', selectedLangValue);\r\n undifinedServer && (window.location = selectedLangValue);\r\n }\r\n };\r\n\r\n return (\r\n props?.fields && (\r\n
    \r\n {\r\n redirectFromSelect(element.target.value);\r\n }}\r\n >\r\n {getDropdownList.map((lang) => (\r\n \r\n {lang?.label}\r\n \r\n ))}\r\n \r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(LanguageDropdown);\r\n","import { LangFields, LangProps } from '../types/Lang.types'\r\n\r\nexport class LangModel {\r\n private readonly fields?: LangFields\r\n constructor(props: LangProps) {\r\n this.fields = props.fields || null\r\n }\r\n}\r\n","import React, { useEffect, useRef, useState } from 'react'\r\nimport { Image } from '@sitecore-jss/sitecore-jss-react'\r\nimport '../../styles/@shared/rte.scss'\r\nimport { withRouter, useHistory } from 'react-router-dom'\r\nimport { LangModel } from './models/Lang.model'\r\nimport { getCookieValue, getExpiryDate } from '../../utils/window.utils'\r\nimport '../../styles/@shared/rte.scss'\r\n\r\ninterface LangProps extends ComponentProps {}\r\n\r\nconst LanguageSelector = (props) => {\r\n const model = new LangModel(props)\r\n\r\n const [langs, setLangs] = useState([])\r\n const [langChange, setLangChange] = useState(false)\r\n\r\n const history = useHistory()\r\n\r\n const tooltipRef = useRef(null)\r\n const tooltipShown = useRef(false)\r\n const langRef = useRef(null)\r\n\r\n const changeLang = (currentLang) => {\r\n setLangChange(!langChange)\r\n const currentPath = history?.location?.pathname\r\n const prevLang = getCookieValue('cnhicorporate#lang2')\r\n\r\n if (currentLang) {\r\n document.cookie =\r\n 'cnhicorporate#lang2=' + currentLang + ';path=/;' + getExpiryDate(10)\r\n } else {\r\n document.cookie = 'cnhicorporate#lang2=en;path=/;' + getExpiryDate(10)\r\n }\r\n\r\n history.push(currentPath, {\r\n params: { forceReload: prevLang != currentLang ? true : false },\r\n })\r\n\r\n // to rerender the icons\r\n }\r\n\r\n const elementInViewport = () => {\r\n if (tooltipRef?.current && !tooltipShown.current) {\r\n var bounding = tooltipRef?.current?.getBoundingClientRect()\r\n\r\n if (\r\n bounding.top >= 0 &&\r\n bounding.left >= 0 &&\r\n bounding.right <=\r\n (window.innerWidth || document.documentElement.clientWidth) &&\r\n bounding.bottom <=\r\n (window.innerHeight || document.documentElement.clientHeight)\r\n ) {\r\n tooltipRef.current.style.display = 'block'\r\n var bounding = langRef?.current?.getBoundingClientRect()\r\n tooltipRef.current.style.left = '-' + bounding?.width * 5 + 'px'\r\n setTimeout(() => {\r\n if (tooltipRef?.current) {\r\n tooltipRef.current.style.display = 'none'\r\n tooltipShown.current = true\r\n }\r\n }, 2000)\r\n } else {\r\n console.log('Element is NOT in the viewport!')\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n window.addEventListener('scroll', elementInViewport)\r\n\r\n return () => {\r\n window.removeEventListener('scroll', elementInViewport)\r\n }\r\n })\r\n\r\n const showLang = (lang) => {\r\n if (!getCookieValue('cnhicorporate#lang2') && lang == 'en') {\r\n return true\r\n }\r\n if (lang == getCookieValue('cnhicorporate#lang2')) {\r\n return true\r\n }\r\n\r\n return false\r\n }\r\n useEffect(() => {\r\n const allLangs = props?.fields?.Languages\r\n const langSelector = allLangs?.map((langs) => {\r\n const image = langs?.fields['Image Icon']?.value?.src\r\n const lang = langs?.fields['Short Language']?.value\r\n\r\n return (\r\n {\r\n changeLang(lang)\r\n }}\r\n >\r\n )\r\n })\r\n\r\n setLangs(langSelector)\r\n }, [langChange])\r\n\r\n useEffect(() => {\r\n let timerHide, timerShow\r\n if (tooltipRef?.current) {\r\n timerHide = setTimeout(() => {\r\n tooltipRef.current.style.display = 'block'\r\n var bounding = langRef?.current?.getBoundingClientRect()\r\n tooltipRef.current.style.left = '-' + bounding?.width * 5 + 'px'\r\n }, 1000)\r\n timerShow = setTimeout(() => {\r\n tooltipRef.current.style.display = 'none'\r\n }, 4000)\r\n }\r\n\r\n return () => {\r\n clearTimeout(timerHide)\r\n clearTimeout(timerShow)\r\n }\r\n }, [props?.fields?.Tooltip?.value])\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n {props?.fields?.Tooltip?.value}\r\n
    \r\n
    \r\n {langs}\r\n
    \r\n
    \r\n
    \r\n )\r\n}\r\nexport default withRouter(LanguageSelector)\r\n","import React from \"react\";\r\nimport {\r\n Image,\r\n withSitecoreContext,\r\n Link,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { LightWeightHeaderProps } from \"./types/LightWeightHeader.types\";\r\nimport \"./index.scss\";\r\n\r\nconst LightWeightHeader = (props: LightWeightHeaderProps) => {\r\n const headerlinks = props.fields?.headerlinks;\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n
    \r\n
    \r\n {headerlinks.map((item, index: number) => (\r\n
    \r\n {item.fields?.imageurl?.value?.href ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n ))}\r\n
    \r\n
    \r\n )}\r\n \r\n );\r\n};\r\nexport default withSitecoreContext()(LightWeightHeader);\r\n","import React, { useEffect, useState } from 'react'\r\nimport { LinkListProps } from './types/LinkList.types'\r\nimport { Link, withSitecoreContext } from '@sitecore-jss/sitecore-jss-react'\r\nimport { windowService } from '../../utils/window.utils'\r\nimport './index.scss'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\nconst LinkList = (props: LinkListProps) => {\r\n const filterLabels = props.fields?.List\r\n const [currentUrl, setCurrentUrl] = useState(null)\r\n\r\n useEffect(() => {\r\n setCurrentUrl(\r\n '/' +\r\n props.sitecoreContext?.language +\r\n windowService().location.href.split(props.sitecoreContext?.language)[1]\r\n )\r\n }, [])\r\n\r\n return (\r\n <>\r\n
    \r\n {props.fields && (\r\n
    \r\n
    \r\n
    \r\n
    \r\n {filterLabels &&\r\n filterLabels.length > 0 &&\r\n filterLabels.map((navItem, index) => {\r\n const isActive =\r\n navItem.fields?.Link?.value?.linktype === 'internal' &&\r\n currentUrl === navItem.fields?.Link?.value?.href\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n )\r\n })}\r\n
    \r\n
    \r\n
    \r\n
    \r\n )}\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(LinkList)\r\n","export default {\r\n fields: {\r\n apiData: {\r\n \"items\": [\r\n {\r\n \"id\": 53603,\r\n \"titleUrl\": \"magnum220\",\r\n \"title\": \"Magnum™ 220\",\r\n \"formattedTitle\": null,\r\n \"description\": \"With the industry's largest cab featuring a choice of ergonomically designed packages and 360-degree visibility, long working days won't seem so long in the Magnum™ 220.\",\r\n \"icon\": null,\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 53601,\r\n \"titleUrl\": \"magnum180\",\r\n \"title\": \"Magnum™ 180\",\r\n \"formattedTitle\": null,\r\n \"description\": \"The 6.7L 180 hp Magnum™ 180 offers maximum versatility for your row-crop operations.  Available in CVXDrive or PowerDrive powershift transmission.\",\r\n \"icon\": null,\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 53609,\r\n \"titleUrl\": \"magnum380\",\r\n \"title\": \"Magnum™ 380\",\r\n \"formattedTitle\": null,\r\n \"description\": \"A state-of-the-art CVXDrive transmission is a standard feature on the Magnum™ 380.  Available with RowTrac™ and front duals for maximum weight distribution and traction in any condition.\",\r\n \"icon\": null,\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 53604,\r\n \"titleUrl\": \"magnum240\",\r\n \"title\": \"Magnum™ 240\",\r\n \"formattedTitle\": null,\r\n \"description\": \"The Magnum™ 240 comes standard with a easy-to-operate CVXDrive transmission, featuring a four-range design that increases efficiency and maximizes available power.\",\r\n \"icon\": null,\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"fullAlt\": null\r\n }\r\n ],\r\n \"total\": 4 \r\n },\r\n itemData:{\r\n \"contextItemUrl\": \"/products/tractors/magnumseries\"\r\n }\r\n }\r\n}","import {\r\n TModelsListingProps,\r\n TModelsListingFields,\r\n TModelsData,\r\n} from \"../types/ModelsListing.types\";\r\nimport mock from \"../../../mocks/ModelsListing.mock\";\r\n\r\nexport class ModelsListingModel {\r\n private readonly fields: null | TModelsListingFields;\r\n constructor(props: TModelsListingProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get modelsListData(): TModelsData {\r\n return this.fields?.apiData ?? mock.fields.apiData;\r\n }\r\n\r\n get url(): string {\r\n return (\r\n this.fields?.itemData?.contextItemUrl ??\r\n mock.fields.itemData.contextItemUrl\r\n );\r\n }\r\n}\r\n","import React, { FC } from \"react\";\r\n\r\nimport { RichText, Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport RoutableSitecoreLink from \"../../../react-only-components/RoutableSitecoreLink\";\r\nimport { TModelsListingItemProps } from \"../types/ModelsListing.types\";\r\n\r\nconst ModelsListItem: FC = ({ url, item }) => {\r\n return (\r\n // TO DO: Replace anchor tag with RoutableSitecoreLink when issue with Layout Service 404 error is fixed\r\n // \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n //
    = (props) => {\r\n const model = new ModelsListingModel(props);\r\n const modelsItems = model.modelsListData?.items || [];\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n {modelsItems.map((modelsItem, i) => (\r\n \r\n ))}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default ModelsListing;\r\n","import React, { useEffect, useState } from 'react'\r\nimport './styles.scss'\r\nimport { NavigationFilterCardListProps } from './types/NavigationFilterCardList.types'\r\nimport { NavigationFilterCardListModel } from './models/NavigationFilterCardList.model'\r\nimport {\r\n Image,\r\n isExperienceEditorActive,\r\n RichText,\r\n withSitecoreContext,\r\n Link,\r\n Text,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\nconst NavigationFilterCardList = (props: NavigationFilterCardListProps) => {\r\n const [cardData, setCardData] = useState([])\r\n const [selectedLabel, setSelectedLabel] = useState(null)\r\n const [reSelect, setReSelect] = useState(false)\r\n const cardListArray = props.fields?.['Cards list']\r\n const isReadMoreLink = props.params['Variation']\r\n const filterLabels =\r\n props.fields?.FilterNavData?.fields?.FilterFieldType[0]?.fields?.FilterType\r\n const searchProps = props.fields?.FilterNavData?.fields?.Value?.value\r\n\r\n useEffect(() => {\r\n setSelectedLabel(null)\r\n setReSelect(!reSelect)\r\n }, [cardListArray])\r\n\r\n useEffect(() => {\r\n if (filterLabels && filterLabels.length > 0) {\r\n setSelectedLabel(filterLabels[0].fields.MappingName.value)\r\n }\r\n }, [reSelect])\r\n\r\n useEffect(() => {\r\n if (searchProps == 'Category') {\r\n if (selectedLabel === '') {\r\n setCardData(cardListArray)\r\n } else {\r\n const filteredData = cardListArray.filter((card) => {\r\n return card.fields.Category.value === selectedLabel\r\n })\r\n\r\n setCardData(filteredData)\r\n }\r\n }\r\n\r\n if (searchProps == 'Date') {\r\n const filteredDateData = cardListArray.filter((card) => {\r\n const d = new Date(card.fields.Date.value)\r\n let year = d.getFullYear()\r\n return year.toString() === selectedLabel\r\n })\r\n\r\n setCardData(filteredDateData)\r\n }\r\n\r\n \r\n\r\n }, [selectedLabel])\r\n\r\n const onFilter = (filterLabel) => {\r\n setSelectedLabel(filterLabel)\r\n }\r\n\r\n const getActiveCls = (index, label) => {\r\n if (!selectedLabel && index === 0) {\r\n return 'active'\r\n }\r\n if (selectedLabel && selectedLabel === label) {\r\n return 'active'\r\n }\r\n\r\n return ''\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n {filterLabels &&\r\n filterLabels.length > 0 &&\r\n filterLabels.map((navItem, index) => {\r\n return (\r\n {\r\n onFilter(navItem.fields.MappingName.value)\r\n }}\r\n className={`filternav__bar__label ${getActiveCls(\r\n index,\r\n navItem.fields.MappingName.value\r\n )}`}\r\n >\r\n )\r\n })}\r\n
    \r\n\r\n {props.fields && (\r\n
    \r\n {cardData.map((item, i) => (\r\n <>\r\n
    \r\n \r\n 0\r\n ? item?.fields?.ImageMobile\r\n : item?.fields?.AllowFallbackForMobile?.value &&\r\n item?.fields?.Image\r\n }\r\n className=\"image--mobile--nav\"\r\n />\r\n
    \r\n
    \r\n
    \r\n {item?.fields?.TitleIcon && item?.fields?.TitleIcon?.value?.src?.length > 0 ? (\r\n \r\n \r\n \r\n\r\n ) : (\r\n item?.fields?.Category.value ? (\r\n \r\n ) : null)}\r\n {/* {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )} */}\r\n \r\n
    \r\n
    \r\n {item?.fields?.['Primary Link'].value.href ? (\r\n \r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n ) : null}\r\n {item.fields?.['Download Link']?.value?.src ? (\r\n \r\n \r\n \r\n \r\n ) : null}\r\n
    \r\n
    \r\n \r\n ))}\r\n
    \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(NavigationFilterCardList)\r\n","import {\r\n NavigationLinkListFields,\r\n NavigationLinkListProps,\r\n NavigationLinkList,\r\n} from \"../types/NavigationLinkList.types\";\r\n\r\nexport class NavigationLinkListModel {\r\n private readonly fields: NavigationLinkListFields;\r\n\r\n constructor(props: NavigationLinkListProps) {\r\n this.fields = props.fields;\r\n }\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { NavigationLinkListModel } from \"./models/NavigationLinkList.model\";\r\nimport { NavigationLinkListProps } from \"./types/NavigationLinkList.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst NavigationLinkList = (props: NavigationLinkListProps) => {\r\n const model = new NavigationLinkListModel(props);\r\n const getNavigationList = props?.fields?.Links;\r\n const [isOpen, setOpen] = React.useState(false);\r\n\r\n const scrollToTop = (element) => {\r\n const getElement = document?.getElementById(element).querySelector(\".privacy-collapsible-title\") as HTMLElement;\r\n window.scrollTo(\r\n {\r\n top: document?.getElementById(element)?.offsetTop - 99,\r\n behavior: 'smooth'\r\n }\r\n );\r\n if (!getElement?.classList?.contains(\"open\")) {\r\n getElement?.click();\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (typeof window !== \"undefined\" && typeof document !== \"undefined\") {\r\n const scrollInit = () => {\r\n let hashTag = window.location.hash as string;\r\n let getHashId = hashTag && document?.querySelector(`${hashTag}`) as HTMLElement;\r\n let getAnchorHashItem = hashTag && getHashId?.querySelector(\".privacy-collapsible-title\") as HTMLElement;\r\n\r\n setTimeout(() => {\r\n window.scrollTo(\r\n {\r\n top: getHashId?.offsetTop - 99,\r\n behavior: 'smooth'\r\n }\r\n );\r\n hashTag && !getAnchorHashItem?.classList?.contains(\"open\") && getAnchorHashItem?.click();\r\n }, 500);\r\n }\r\n\r\n scrollInit();\r\n\r\n window.addEventListener('hashchange', () => {\r\n scrollInit();\r\n });\r\n }\r\n }, [])\r\n\r\n console.log(\"navigation list\", props, getNavigationList);\r\n return (\r\n props?.fields && (\r\n
      \r\n {getNavigationList.map((item) => (\r\n item?.fields?.SecondaryLinks?.length > 0\r\n ?\r\n
    • \r\n
      setOpen(!isOpen)}>\r\n {item?.fields?.Link?.value?.text}\r\n
      \r\n
        \r\n {item?.fields?.SecondaryLinks?.map((secondItems) => (\r\n
      • \r\n {secondItems?.fields?.IsInternalAnchor\r\n ?\r\n
        {\r\n scrollToTop(secondItems?.fields?.Link?.value?.anchor)\r\n }}>\r\n {secondItems?.fields?.Link?.value?.text}\r\n
        \r\n :\r\n \r\n {secondItems?.fields?.Link?.value?.text}\r\n \r\n }\r\n
      • \r\n ))}\r\n
      \r\n
    • \r\n :\r\n
    • \r\n {item?.fields?.IsInternalAnchor\r\n ?\r\n
      {\r\n scrollToTop(item?.fields?.Link?.value?.anchor)\r\n }}>\r\n {item?.fields?.Link?.value?.text}\r\n
      \r\n :\r\n \r\n {item?.fields?.Link?.value?.text}\r\n \r\n }\r\n
    • \r\n ))}\r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(NavigationLinkList);\r\n","import {\r\n NewsletterConfirmationFields,\r\n NewsletterConfirmationProps,\r\n} from \"../types/NewsletterConfirmation.types\"\r\nimport { StringField } from \"../../../types/types\"\r\n\r\nexport class NewsletterConfirmationModel {\r\n private readonly fields: null | NewsletterConfirmationFields\r\n constructor(props: NewsletterConfirmationProps) {\r\n this.fields = props.fields || null\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n get description(): StringField {\r\n return this.fields?.Description\r\n }\r\n}\r\n","import React, { FC, useLayoutEffect } from \"react\";\r\nimport { NewsletterConfirmationModel } from \"./models/NewsletterConfirmation.model\";\r\nimport { NewsletterConfirmationProps } from \"./types/NewsletterConfirmation.types\";\r\nimport { RichText } from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./style.scss\";\r\n\r\nconst NewsletterConfirmation: FC = (props) => {\r\n const model = new NewsletterConfirmationModel(props);\r\n\r\n useLayoutEffect(() => {\r\n window.scroll(0, 0);\r\n }, []);\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default NewsletterConfirmation;\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n PageTitleFields,\r\n PageTitleProps,\r\n PageTitle,\r\n} from \"../types/PageTitle.types\";\r\n\r\nexport class PageTitleModel {\r\n private readonly fields: PageTitleFields;\r\n\r\n constructor(props: PageTitleProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n}\r\n","import React, { useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { PageTitleModel } from \"./models/PageTitle.model\";\r\nimport { PageTitleProps } from \"./types/PageTitle.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst PageTitle = (props: PageTitleProps) => {\r\n const model = new PageTitleModel(props);\r\n const getSectionsList = props?.fields?.Sections;\r\n console.log(\"page title\", model.title);\r\n return (\r\n \r\n {props?.fields && (\r\n
    \r\n \r\n {model?.title?.value}\r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(PageTitle);\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n PrivacyBannerFields,\r\n PrivacyBannerProps,\r\n} from \"../types/PrivacyBanner.types\";\r\n\r\nexport class PrivacyBannerModel {\r\n private readonly fields: PrivacyBannerFields;\r\n\r\n constructor(props: PrivacyBannerProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get subtitle(): StringField {\r\n return this.fields?.SubTitle\r\n }\r\n}\r\n","import React, { useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Link,\r\n isExperienceEditorActive,\r\n RichText,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { PrivacyBannerModel } from \"./models/PrivacyBanner.model\";\r\nimport { PrivacyBannerProps } from \"./types/PrivacyBanner.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst PrivacyBanner = (props: PrivacyBannerProps) => {\r\n const model = new PrivacyBannerModel(props);\r\n // console.log(\"privacy banner\", model, model.title);\r\n return (\r\n props?.fields && (\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(PrivacyBanner);\r\n","import {\r\n PrivacyBottomBannerFields,\r\n PrivacyBottomBannerProps,\r\n} from \"../types/PrivacyBottomBanner.types\";\r\nimport { StringField } from \"../../../types/types\";\r\n\r\nexport class PrivacyBottomBannerModel {\r\n private readonly fields: PrivacyBottomBannerFields;\r\n\r\n constructor(props: PrivacyBottomBannerProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get subtitle(): StringField {\r\n return this.fields?.SubTitle\r\n }\r\n}\r\n","import React from 'react'\r\nimport { withSitecoreContext, RichText } from '@sitecore-jss/sitecore-jss-react'\r\n\r\nimport './index.scss'\r\nimport { PrivacyBottomBannerModel } from './models/PrivacyBottomBanner.model'\r\nimport { PrivacyBottomBannerProps } from './types/PrivacyBottomBanner.types'\r\n\r\nconst PrivacyBottomBanner = (props: PrivacyBottomBannerProps) => {\r\n if(props?.fields){\r\n const model = new PrivacyBottomBannerModel(props)\r\n\r\n return (\r\n props?.fields && (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n )\r\n )\r\n }\r\n else{\r\n return (<>)\r\n }\r\n}\r\n\r\nexport default withSitecoreContext()(PrivacyBottomBanner)\r\n","import { StringField } from \"../../../types/types\";\r\nimport { SectionList } from \"../../SectionList/types/SectionList.types\";\r\nimport {\r\n PrivacyFilterFields,\r\n PrivacyFilterProps,\r\n PrivacyFilter,\r\n} from \"../types/PrivacyFilter.types\";\r\n\r\nexport class PrivacyFilterModel {\r\n private readonly fields: PrivacyFilterFields;\r\n\r\n constructor(props: PrivacyFilterProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get icon(): StringField {\r\n return this.fields?.Icon\r\n }\r\n\r\n get label(): StringField {\r\n return this.fields?.Label\r\n }\r\n\r\n get leftFilterLabel(): StringField {\r\n return this.fields?.LeftFilterLabel\r\n }\r\n\r\n get rightFilterLabel(): StringField {\r\n return this.fields?.RightFilterLabel\r\n }\r\n\r\n get leftFilterValues() {\r\n return this.fields?.LeftFilterValues\r\n }\r\n\r\n get rightFilterValues() {\r\n return this.fields?.RightFilterValues\r\n }\r\n\r\n get submitButtonLink() {\r\n return this.fields?.SubmitButtonLink\r\n }\r\n\r\n get placeholder() {\r\n return this.fields?.Placeholder\r\n }\r\n}\r\n","import React, { useState, useRef, useEffect } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { PrivacyFilterModel } from \"./models/PrivacyFilter.model\";\r\nimport { PrivacyFilterProps } from \"./types/PrivacyFilter.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst PrivacyFilter = (props: PrivacyFilterProps) => {\r\n const selectBrand = useRef(null)\r\n const selectLocal = useRef(null)\r\n const filterBtn = useRef(null)\r\n const model = new PrivacyFilterModel(props);\r\n let filterButtonSubmit = filterBtn?.current;\r\n console.log('privacy filter', props)\r\n\r\n let defdaultHref = model?.submitButtonLink?.value?.href\r\n const [newUrl, setNewUrl] = useState(\"\");\r\n const leftFilterChange = (event) => {\r\n let leftFilterUrl = `${defdaultHref}?brand=${event?.target?.value}&lang=${selectLocal?.current?.value}`\r\n setNewUrl(leftFilterUrl)\r\n filterButtonSubmit?.setAttribute(\"href\", `${leftFilterUrl}`)\r\n }\r\n\r\n const rightFilterChange = (event) => {\r\n let rightFilterUrl = `${defdaultHref}?brand=${selectBrand?.current?.value}&lang=${event?.target?.value}`\r\n setNewUrl(rightFilterUrl)\r\n filterButtonSubmit?.setAttribute(\"href\", `${rightFilterUrl}`)\r\n }\r\n\r\n return (\r\n \r\n {props?.fields && (\r\n
    \r\n
    \r\n
    \r\n {model?.leftFilterLabel?.value}:\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n {model?.rightFilterLabel?.value}:\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(PrivacyFilter);\r\n","\r\n\r\nexport default class conditionsAggregator {\r\n fields:any;\r\n conditionFields:Array\r\n conditions:Array;\r\n fieldValues:Array;\r\n constructor(fields:any)\r\n {\r\n this.fields = fields;\r\n this.fieldValues = [];\r\n this.conditionFields = [];\r\n this.conditions = [];\r\n this.aggrigate();\r\n }\r\n\r\n buildConditions = (fieldConditions):void => {\r\n\r\n fieldConditions.map((fieldItem) => {\r\n\r\n //if item is the part of condition\r\n fieldItem.conditions.map((conditionItem) => {\r\n if(this.conditionFields?.indexOf(conditionItem.fieldId) < 0)\r\n {\r\n this.conditionFields.push(conditionItem.fieldId);\r\n }\r\n }); \r\n \r\n //if item is part of action\r\n fieldItem.actions.map((actionItem) => {\r\n if(this.conditionFields?.indexOf(actionItem.fieldId) < 0)\r\n {\r\n this.conditionFields.push(actionItem.fieldId);\r\n }\r\n\r\n //add and arrange all conditions against a certain \"action\" item\r\n // check if that action has been defined first - then either create it or add the condition to it.\r\n if (typeof this.conditions[actionItem.fieldId] === 'undefined')\r\n {\r\n this.conditions[actionItem.fieldId] = [\r\n {\r\n matchTypeId: fieldItem.matchTypeId,\r\n conditions: fieldItem.conditions,\r\n actionTypeId: actionItem.actionTypeId\r\n } \r\n ]\r\n }\r\n else\r\n {\r\n this.conditions[actionItem.fieldId].push({\r\n matchTypeId: fieldItem.matchTypeId,\r\n conditions: fieldItem.conditions,\r\n actionTypeId: actionItem.actionTypeId\r\n } )\r\n }\r\n });\r\n });\r\n };\r\n\r\n aggrigate():void {\r\n this.fields.map((item) => {\r\n //add all items that are part of a condition or the target of an action\r\n if(item.model.conditionSettings.fieldConditions.length > 0)\r\n {\r\n this.buildConditions(item.model.conditionSettings.fieldConditions);\r\n this.fieldValues[item.model.conditionSettings.fieldKey] = item.model.value;\r\n }\r\n else\r\n {\r\n if(item?.fields !== undefined)\r\n {\r\n //item?.fields[0]\r\n for(let i=0;i < item.fields.length;i++)\r\n {\r\n this.buildConditions(item.fields[i].model.conditionSettings.fieldConditions);\r\n // if(item.fields[i].model.conditionSettings.fieldConditions.length > 0)\r\n // {\r\n this.fieldValues[item.fields[i].model.conditionSettings.fieldKey] = item.fields[i].model.value; \r\n //}\r\n }\r\n }\r\n }\r\n\r\n \r\n \r\n //add all field values to the form\r\n \r\n });\r\n\r\n }\r\n\r\n\r\n\r\n}","import {\r\n UPDATE_LANGUAGE,\r\n UPDATE_FORM,\r\n UPDATE_FIELD,\r\n UPDATE_SECTION,\r\n HIDE_BUTTON,\r\n UPDATE_CAPTCHA_STATUS,\r\n SET_LOADER,\r\n REMOVE_ERROR,\r\n CUSTOM_ERROR,\r\n UPDATE_SHOW_SECTION,\r\n DISABLE_SUBSCRIBE_BUTTON,\r\n} from '../contants/action-types'\r\nimport cloneDeep from 'lodash/cloneDeep'\r\nimport conditionsAggregator from './conditionsAggregator'\r\n\r\nexport interface KeyValuePair {\r\n key: string\r\n value: any\r\n}\r\n\r\nexport interface IReduxState {\r\n fields: any\r\n conditionFields: any\r\n conditions: any\r\n fieldValues: any\r\n hideButton: boolean\r\n JssFormKey: any\r\n captcha: boolean\r\n showsection: boolean\r\n removeError: boolean\r\n customError: string\r\n disableButton: boolean\r\n}\r\n\r\nexport interface IReduxAction {\r\n type: string\r\n payload: any\r\n}\r\n\r\nconst initialState = {\r\n originalFields: [],\r\n fields: [],\r\n conditionFields: [],\r\n conditions: [],\r\n fieldValues: [],\r\n hideButton: false,\r\n JssFormKey: null,\r\n captcha: false,\r\n loader: false,\r\n showsection: false,\r\n removeError: false,\r\n customError: '',\r\n disableButton: true\r\n}\r\n\r\nfunction rootReducer(state = initialState, action: IReduxAction) {\r\n switch (action.type) {\r\n case UPDATE_LANGUAGE: {\r\n let ActionPayload = action.payload\r\n let aggregator =\r\n ActionPayload?.fields[1]?.fields &&\r\n new conditionsAggregator(ActionPayload.fields[1].fields)\r\n\r\n return Object.assign({}, state, {\r\n originalFields: cloneDeep(action.payload), //Object.assign({},state.originalFields,JSON.parse(JSON.stringify(action.payload))),\r\n fields: cloneDeep(action.payload), //Object.assign({},state.fields,JSON.parse(JSON.stringify(action.payload))),\r\n conditionFields: Object.assign(\r\n {},\r\n state.conditionFields,\r\n aggregator?.conditionFields\r\n ),\r\n conditions: Object.assign({}, state.conditions, aggregator?.conditions),\r\n fieldValues: Object.assign(\r\n {},\r\n state.fieldValues,\r\n aggregator?.fieldValues\r\n ),\r\n JssFormKey: Object.assign(\r\n {},\r\n state.JssFormKey,\r\n Math.floor(Math.random() * 10000)\r\n ),\r\n })\r\n }\r\n case HIDE_BUTTON: {\r\n return { ...state, hideButton: !state.hideButton }\r\n }\r\n\r\n case SET_LOADER: {\r\n return { ...state, loader: action.payload }\r\n }\r\n case UPDATE_FORM: {\r\n return Object.assign({}, state, {\r\n conditionFields: action.payload.conditionFields,\r\n conditions: action.payload.conditions,\r\n fieldValues: action.payload.fieldValues,\r\n })\r\n }\r\n case UPDATE_FIELD: {\r\n return Object.assign({}, state, {\r\n fieldValues: action.payload,\r\n })\r\n }\r\n\r\n case REMOVE_ERROR: {\r\n return { ...state, removeError: action.payload }\r\n }\r\n\r\n case CUSTOM_ERROR: {\r\n return { ...state, customError: action.payload }\r\n }\r\n case UPDATE_SECTION: {\r\n let MutatedFieldCollection = state.fields['fields'][1]['fields']\r\n let originalFieldsCollection1 =\r\n state.originalFields['fields'][1]['fields']\r\n let matchedSection = undefined\r\n const findSectionField = (array, sectionName) => {\r\n for (let field of array) {\r\n if (field.model.name === sectionName) {\r\n return field\r\n }\r\n if (field.hasOwnProperty('fields') && field.fields.length > 0) {\r\n for (let innerField of field.fields) {\r\n if (innerField.model.name === sectionName) {\r\n return innerField\r\n }\r\n }\r\n }\r\n }\r\n\r\n return null\r\n }\r\n let mutatedSection = findSectionField(\r\n MutatedFieldCollection,\r\n action.payload.name\r\n )\r\n if (action.payload.IsVisible) {\r\n let section = findSectionField(\r\n originalFieldsCollection1,\r\n action.payload.name\r\n )\r\n if (mutatedSection) {\r\n mutatedSection['fields'] = cloneDeep(section['fields'])\r\n }\r\n } else {\r\n if (mutatedSection && mutatedSection['fields']) {\r\n mutatedSection['fields'].length = 0\r\n }\r\n }\r\n\r\n // let Newfields = state.fields;\r\n // let originalFieldsCollection = state.originalFields[\"fields\"][1][\"fields\"];\r\n // let fieldCollection = Newfields[\"fields\"][1][\"fields\"];\r\n // let oldsection = fieldCollection.find((field) => field.model.name === action.payload.name);\r\n // let index = fieldCollection.indexOf(oldsection);\r\n // if(action.payload.name == 'SectionCustomerBrands')\r\n // debugger;\r\n\r\n // if(action.payload.IsVisible)\r\n // {\r\n // let section = state.originalFields[\"fields\"][1][\"fields\"].find((field) => field.model.name === action.payload.name);\r\n // if (index !== -1) {\r\n // fieldCollection[index][\"fields\"] = [...section[\"fields\"]];\r\n // }\r\n\r\n // }\r\n // else\r\n // {\r\n // if (index !== -1) {\r\n // fieldCollection[index][\"fields\"].length = 0;\r\n // }\r\n // }\r\n\r\n state.fields['fields'][1]['fields'] = [...MutatedFieldCollection]\r\n\r\n return {\r\n ...state,\r\n fields: state.fields,\r\n }\r\n }\r\n\r\n case UPDATE_CAPTCHA_STATUS: {\r\n return { ...state, captcha: action.payload }\r\n }\r\n\r\n case UPDATE_SHOW_SECTION: {\r\n return { ...state, showsection: action.payload }\r\n }\r\n\r\n case DISABLE_SUBSCRIBE_BUTTON: {\r\n return { ...state, disableButton: action.payload }\r\n }\r\n\r\n default: {\r\n return state\r\n }\r\n }\r\n}\r\n\r\nexport default rootReducer\r\n","export const UPDATE_LANGUAGE = \"UPDATE_LANGUAGE\"\r\nexport const UPDATE_FORM = \"UPDATE_FORM\"\r\nexport const UPDATE_FIELD = \"UPDATE_FIELD\"\r\nexport const UPDATE_SECTION = \"UPDATE_SECTION\"\r\nexport const HIDE_BUTTON = \"HIDE_BUTTON\"\r\nexport const UPDATE_CAPTCHA_STATUS = \"UPDATE_CAPTCHA_STATUS\"\r\nexport const SET_LOADER = \"SET_LOADER\"\r\nexport const REMOVE_ERROR = \"REMOVE_ERROR\"\r\nexport const CUSTOM_ERROR = \"CUSTOM_ERROR\"\r\nexport const UPDATE_SHOW_SECTION = \"UPDATE_SHOW_SECTION\"\r\nexport const DISABLE_SUBSCRIBE_BUTTON = \"DISABLE_SUBSCRIBE_BUTTON\"\r\n","import { createStore, applyMiddleware } from 'redux'\r\nimport rootReducer from '../reducers/index'\r\nimport thunk from 'redux-thunk'\r\nimport { composeWithDevTools } from 'redux-devtools-extension'\r\n\r\nconst store = createStore(\r\n rootReducer,\r\n composeWithDevTools(applyMiddleware(thunk))\r\n)\r\n\r\nexport default store\r\n","import {\r\n UPDATE_LANGUAGE,\r\n UPDATE_FORM,\r\n UPDATE_FIELD,\r\n UPDATE_SECTION,\r\n HIDE_BUTTON,\r\n UPDATE_CAPTCHA_STATUS,\r\n SET_LOADER,\r\n REMOVE_ERROR,\r\n CUSTOM_ERROR,\r\n UPDATE_SHOW_SECTION,\r\n DISABLE_SUBSCRIBE_BUTTON,\r\n} from \"../contants/action-types\"\r\nimport axios from \"axios\"\r\nimport config from \"../../../../src/temp/config\"\r\n\r\nexport function updateFields(payload) {\r\n return { type: UPDATE_LANGUAGE, payload: payload }\r\n}\r\n\r\nexport function setLoader(payload) {\r\n return { type: SET_LOADER, payload: payload }\r\n}\r\nexport function updateRemoveError(payload) {\r\n return { type: REMOVE_ERROR, payload: payload }\r\n}\r\n\r\nexport function updateCustomError(payload){\r\n return {type: CUSTOM_ERROR, payload: payload}\r\n}\r\n\r\nexport function updateHideButton(payload) {\r\n return { type: HIDE_BUTTON, payload: payload }\r\n}\r\n\r\nexport function updateConditionalRederingData(payload) {\r\n return { type: UPDATE_FORM, payload: payload }\r\n}\r\n\r\nexport function UpdateConditionalFieldValue(payload) {\r\n return { type: UPDATE_FIELD, payload: payload }\r\n}\r\n\r\nexport function UpdateConditionalSectionControls(payload) {\r\n return { type: UPDATE_SECTION, payload: payload }\r\n}\r\n\r\nexport function getLayoutServiceData(dispatch, culture) {\r\n // let url = config.sitecoreApiHost + \"api/formdata/en/\" + culture + \"/\" + config.jssAppName + \"/Privacy%20Form?sc_apikey=\" + config.sitecoreApiKey;\r\n //let url = \"https://eucomcrg04-123710-cm.azurewebsites.net/api/formdata/en/\" + culture + \"/\" + config.jssAppName + \"/Privacy%20Form?sc_apikey=\" + config.sitecoreApiKey;\r\n\r\n let url =\r\n \"/api/formdata/en/\" +\r\n culture +\r\n \"/\" +\r\n config.jssAppName +\r\n \"/Privacy%20Form?sc_apikey=\" +\r\n config.sitecoreApiKey\r\n axios\r\n .get(url)\r\n .then((response) => {\r\n return response.data\r\n })\r\n .then((data) => {\r\n let newfeilds = data.fields\r\n dispatch(updateFields(newfeilds))\r\n })\r\n}\r\n\r\nexport function UpdateCaptchaStatus(payload) {\r\n return { type: UPDATE_CAPTCHA_STATUS, payload: payload }\r\n}\r\n\r\nexport function UpdateShowSectionStatus(payload) {\r\n return { type: UPDATE_SHOW_SECTION, payload: payload }\r\n}\r\n\r\nexport function UpdateDisableButtonState(payload) {\r\n return { type: DISABLE_SUBSCRIBE_BUTTON, payload: payload }\r\n}\r\n","import React, { useState, VFC, FocusEvent, ChangeEvent } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { TBaseTextField } from '../../types/BaseTextField.type'\r\nimport { IReduxState } from '../../../ReduxImpl/reducers/index'\r\nimport { updateCustomError } from '../../../ReduxImpl/actions/index'\r\n\r\nconst BaseTextField: VFC = (props) => {\r\n const {\r\n field,\r\n type,\r\n tracker,\r\n value: _value,\r\n errors,\r\n fieldValidationErrorsComponent,\r\n isValid,\r\n onChange,\r\n } = props\r\n\r\n const dispatch = useDispatch()\r\n\r\n const removeError = useSelector((state: IReduxState) => state.removeError)\r\n const customError = useSelector((state: IReduxState) => state.customError)\r\n\r\n const [hasFocus, setHasFocus] = useState(false)\r\n const [value, setValue] = useState(_value)\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n const hasValueOrFocus = hasFocus || value !== ''\r\n const hasAnyError = !!errors?.length\r\n const label = field.model.title\r\n const id = field.valueField.id\r\n const name = field.valueField.name\r\n const emailRegex = /^\\w+([\\+.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/\r\n const hasCustomError = !!customError\r\n\r\n const onFocus = (e: FocusEvent) => {\r\n tracker.onFocusField(field, e.target.value)\r\n setHasFocus(true)\r\n if (removeError) {\r\n dispatch(updateCustomError(''))\r\n }\r\n }\r\n\r\n const onBlur = (e: FocusEvent) => {\r\n tracker.onBlurField(field, e.target.value)\r\n setHasFocus(false)\r\n }\r\n\r\n const handleChange = (e: ChangeEvent) => {\r\n setValue(e.target.value)\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n if (e.target.type == 'email') {\r\n if (e.target.value.match(emailRegex) && e.target.value) {\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n } else {\r\n setHasFocus(true)\r\n\r\n onChange(field.valueField.name, e.target.value, isValid, [\r\n 'Invalid email address',\r\n ])\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n\r\n \r\n\r\n {field.model.name === 'EmailText' && removeError && hasCustomError ? (\r\n
    \r\n \r\n   {customError}\r\n
    \r\n ) : (\r\n ''\r\n )}\r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default BaseTextField\r\n","import React, { VFC } from 'react'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { StringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nimport BaseTextField from '../baseTextField'\r\n\r\nconst TextField: VFC> = (props) => (\r\n \r\n)\r\n\r\nexport default TextField\r\n","import React, { ChangeEvent, useState, VFC } from 'react'\r\nimport { FileInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst FileUpload: VFC> = (props) => {\r\n const { t } = useTranslation();\r\n const { field, isValid, fieldValidationErrorsComponent, onChange } = props\r\n\r\n const [fileName, setFileName] = useState([])\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n const id = field.valueField.id\r\n const name = field.valueField.name\r\n\r\n const handleChange = (e: ChangeEvent) => {\r\n const files = e.target.files\r\n let List = []\r\n for (let i = 0; i < files.length; i++) {\r\n List.push(files[i].name)\r\n }\r\n setFileName(List)\r\n if (files.length > 0 && files.length <= 2) {\r\n for (let i = 0; i < files.length; i++) {\r\n let filePath = files[i].name\r\n let fileExtension = filePath\r\n .split('.')\r\n [filePath.split('.').length - 1].toLowerCase()\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n if (\r\n !(\r\n fileExtension === 'pdf' ||\r\n fileExtension === 'png' ||\r\n fileExtension === 'jpeg' ||\r\n fileExtension === 'jpg' ||\r\n fileExtension === 'bmp'\r\n )\r\n ) {\r\n onChange(field.valueField.name, e.target.value, isValid, [\r\n 'You can only upload the following file types : png,jpg,bmp,jpeg,pdf',\r\n ])\r\n } else {\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n if (files[i].size > 5000000) {\r\n onChange(field.valueField.name, e.target.value, isValid, [\r\n 'You can only upload file size upto 5MB',\r\n ])\r\n } else {\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n }\r\n }\r\n }\r\n } else if (files.length === 0) {\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n } else {\r\n onChange(field.valueField.name, e.target.value, isValid, [\r\n 'You can only upload 2 files',\r\n ])\r\n }\r\n }\r\n return (<>\r\n
    \r\n {field.model.title} \r\n
    \r\n
    \r\n \r\n \r\n 1 ? 'multiple-files' : ''}\r\n accept={field.model.allowedContentTypes}\r\n multiple={field.model.isMultiple}\r\n onChange={handleChange}\r\n id={id}\r\n name={name}\r\n />\r\n
    \r\n
    \r\n {fileName.length > 0 &&\r\n fileName.map((item, index) => {\r\n return (\r\n

    \r\n {item}\r\n

    \r\n )\r\n })} \r\n {fileName.length == 0 && (\r\n

    \r\n {t(\"NoFileChosen\")}\r\n

    \r\n ) \r\n }\r\n
    \r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default FileUpload\r\n","import React, { VFC } from 'react'\r\nimport { StringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\n\r\nimport BaseTextField from '../baseTextField'\r\n\r\nconst EmailField: VFC> = (props) => (\r\n \r\n)\r\n\r\nexport default EmailField\r\n","import React, { VFC } from 'react'\r\nimport { NumberInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\n\r\nimport BaseTextField from '../baseTextField'\r\n\r\nconst NumberField: VFC> = (props) => (\r\n \r\n)\r\n\r\nexport default NumberField\r\n","import React, { VFC } from 'react'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { StringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nimport BaseTextField from '../baseTextField'\r\n\r\nconst TelephoneField: VFC> = (props) => (\r\n \r\n)\r\n\r\nexport default TelephoneField\r\n","import React, { useState, VFC, FocusEvent, ChangeEvent } from 'react'\r\n\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { StringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nconst PasswordField: VFC> = (props) => {\r\n const {\r\n field,\r\n value: _value,\r\n tracker,\r\n errors,\r\n isValid,\r\n fieldValidationErrorsComponent,\r\n onChange,\r\n } = props\r\n\r\n const [value, setValue] = useState(_value)\r\n const [hasFocus, setHasFocus] = useState(false)\r\n const [hasVisiblePassword, setHasVisiblePassword] = useState(false)\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n const hasValueOrFocus = hasFocus || value !== ''\r\n const hasAnyError = !!errors?.length\r\n const id = field.valueField.id\r\n const label = field.model.title\r\n const name = field.valueField.name\r\n\r\n const onFocus = (e: FocusEvent) => {\r\n tracker.onFocusField(field, e.target.value)\r\n setHasFocus(true)\r\n }\r\n\r\n const onBlur = (e: FocusEvent) => {\r\n tracker.onBlurField(field, e.target.value)\r\n setHasFocus(false)\r\n }\r\n\r\n const handleChange = (e: ChangeEvent) => {\r\n setValue(e.target.value)\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n\r\n setHasVisiblePassword(!hasVisiblePassword)}\r\n >\r\n {hasVisiblePassword ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default PasswordField\r\n","import React, { useState, VFC, FocusEvent, ChangeEvent } from 'react'\r\n\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { MultiLineStringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nconst MultipleLineTextField: VFC<\r\n ValueFieldProps\r\n> = (props) => {\r\n const {\r\n field,\r\n value,\r\n errors,\r\n tracker,\r\n isValid,\r\n fieldValidationErrorsComponent,\r\n onChange,\r\n } = props\r\n\r\n const [hasFocus, setHasFocus] = useState(false)\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n const hasValueOrFocus = hasFocus || value !== ''\r\n const hasAnyError = !!errors?.length\r\n const label = field.model.title\r\n const id = field.valueField.id\r\n const name = field.valueField.name\r\n const rows = field.model.rows\r\n const maxLength = field.model.maxLength ? field.model.maxLength : 255\r\n\r\n const onFocus = (e: FocusEvent) => {\r\n tracker.onFocusField(field, e.target.value)\r\n setHasFocus(true)\r\n }\r\n\r\n const onBlur = (e: FocusEvent) => {\r\n tracker.onBlurField(field, e.target.value)\r\n setHasFocus(false)\r\n }\r\n\r\n const handleChange = (e: ChangeEvent) => {\r\n onChange(field.valueField.name, e.target.value, isValid, [])\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n {value}\r\n \r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default MultipleLineTextField\r\n","import React, { VFC, FocusEvent, ChangeEvent, useState } from 'react'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\n\r\nconst CheckboxField: VFC = (props) => {\r\n const {\r\n field,\r\n tracker,\r\n errors,\r\n isValid,\r\n value,\r\n fieldValidationErrorsComponent,\r\n onChange,\r\n } = props\r\n\r\n const [IsChecked, ChangedChecked] = useState(value)\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n const hasAnyError = !!errors?.length\r\n const label = field.model.title\r\n const id = field.valueField.id\r\n const name = field.valueField.name\r\n\r\n const onFocus = (e: FocusEvent) => {\r\n tracker.onFocusField(field, e.target.value)\r\n }\r\n\r\n const onBlur = (e: FocusEvent) => {\r\n tracker.onBlurField(field, e.target.value)\r\n }\r\n\r\n const handleChange = (e: ChangeEvent) => {\r\n ChangedChecked(e.target.checked?.toString())\r\n onChange(field.valueField.name, e.target.checked?.toString(), isValid, [])\r\n }\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default CheckboxField\r\n","import React, { useState, VFC, FocusEvent } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { ListFieldProps } from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport {\r\n UpdateConditionalFieldValue,\r\n UpdateShowSectionStatus,\r\n} from '../../../ReduxImpl/actions/index'\r\nimport { DropdownListViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { IReduxState } from '../../../ReduxImpl/reducers/index'\r\n\r\nconst Dropdownfield: VFC> = (props) => {\r\n const { field, tracker } = props\r\n\r\n const dispatch = useDispatch()\r\n\r\n const [hasFocus, setHasFocus] = useState(false)\r\n const [value, setDdlValue] = useState(props.value)\r\n\r\n const hasAnyError = !!props.errors?.length\r\n const hasValueOrFocus = hasFocus || value?.length !== 0\r\n\r\n var options = props.field.model.items.map((x, i) => (\r\n \r\n {x.text}\r\n \r\n ))\r\n\r\n if (field.model.showEmptyItem) {\r\n options.unshift()\r\n }\r\n\r\n const label = field.model.title\r\n const id = field.valueField.id\r\n const name = field.valueField.name\r\n const FieldValidationErrors = props.fieldValidationErrorsComponent\r\n\r\n let fieldValues = useSelector((state: IReduxState) => state.fieldValues)\r\n\r\n const getCookieValue = (name) => {\r\n let result = document.cookie.match(\r\n '(^|[^;]+)\\\\s*' + name + '\\\\s*=\\\\s*([^;]+)'\r\n )\r\n return result ? result.pop() : ''\r\n }\r\n\r\n const onChange = (e: any): void => {\r\n const currentLang: string = e.target.value\r\n\r\n fieldValues[field.model['conditionSettings'].fieldKey] = e.target.value\r\n\r\nconsole.log(field.model.name);\r\n\r\n if (field.model.name === 'LanguageDropdownList') {\r\n var d = new Date()\r\n d.setTime(d.getTime() + 5 * 24 * 60 * 60 * 1000)\r\n var expires = 'expires=' + d.toUTCString()\r\n\r\n document.cookie =\r\n 'cnhicorporate#lang2=' + currentLang + ';path=/;' + expires\r\n\r\n window.location.reload()\r\n dispatch(UpdateShowSectionStatus(false))\r\n } else if (field.model['conditionSettings'].fieldKey in fieldValues) {\r\n if (field.model.name === 'LawUnderDropdownList' && e.target.value == '') {\r\n dispatch(UpdateShowSectionStatus(false))\r\n } else if (field.model.name !== 'CountryDropdownList') {\r\n dispatch(UpdateShowSectionStatus(true))\r\n }\r\n\r\n dispatch(UpdateConditionalFieldValue(fieldValues))\r\n }\r\n setDdlValue(e.target.value)\r\n\r\n props.onChange(field.valueField.name, e.target.value, props.isValid, [])\r\n }\r\n\r\n const onFocus = (e: FocusEvent) => {\r\n tracker.onFocusField(field, e.target.value)\r\n setHasFocus(true)\r\n }\r\n\r\n const onBlur = (e: FocusEvent) => {\r\n tracker.onBlurField(field, e.target.value)\r\n setHasFocus(false)\r\n }\r\n\r\n const getDropdownVal = () => {\r\n if (field.model.name === 'LanguageDropdownList') {\r\n return getCookieValue('cnhicorporate#lang2') || value\r\n }\r\n\r\n return value\r\n }\r\n\r\n return (\r\n \r\n {field.model.name === 'LanguageDropdownList' ? (\r\n
    {label}
    \r\n ) : (\r\n \r\n {label}\r\n \r\n )}\r\n\r\n \r\n {options}\r\n \r\n\r\n \r\n \r\n )\r\n}\r\n\r\nexport default Dropdownfield\r\n","export const ACTION_CONTANTS = {\r\n SHOW: \"{AAE07A52-46A4-49EF-98B0-C2595BAC2382}\",\r\n HIDE: \"{7F58C8DD-D7C0-4FB7-BB44-8EC6B5E1C3D9}\",\r\n ENABLE: \"{5744A87E-E32C-42CC-862F-96842A0202BB}\",\r\n DISABLE: \"{C698C993-549E-486A-A09C-BB8D830DA958}\"\r\n}\r\n\r\nexport const MATCH_TYPE_CONTANTS = {\r\n ANY: \"{365C94DA-C1CD-4783-A91D-0D17A16C7117}\",\r\n ALL: \"{4E50C172-7EA6-4989-82C3-75F24F80EF72}\"\r\n}\r\n\r\nexport const OPERATOR_CONSTANTS = {\r\n STARTS_WITH: \"{FD10F291-3C2E-4AE7-8A67-2F8271CB3DF2}\",\r\n IS_EQUAL_TO: \"{1D38B217-A2EE-4E7B-B6ED-13E751462FEB}\",\r\n IS_NOT_EQUAL_TO: \"{49F47E77-E8C5-46F9-BF39-78D6B0D40B48}\"\r\n}","import {\r\n OPERATOR_CONSTANTS,\r\n MATCH_TYPE_CONTANTS,\r\n ACTION_CONTANTS,\r\n} from './ConditionalRenderingContants'\r\n\r\nexport const checkConditions = (fieldValues: any, conditions: any) => {\r\n let shouldHide: boolean\r\n\r\n for (let i = 0; i < conditions.length; i += 1) {\r\n shouldHide = matchingTypes(fieldValues, conditions[i])\r\n\r\n if (shouldHide) {\r\n break\r\n }\r\n }\r\n\r\n return shouldHide\r\n}\r\n\r\nconst handleActionType = (actionType, value) => {\r\n const actions = {\r\n [ACTION_CONTANTS['SHOW']]: () => {\r\n return !value\r\n },\r\n [ACTION_CONTANTS['HIDE']]: () => {\r\n return value\r\n },\r\n }\r\n\r\n return actions[actionType]()\r\n}\r\n\r\nconst validate = (operator, value, valueAgainst) => {\r\n const operators = {\r\n [OPERATOR_CONSTANTS['IS_EQUAL_TO']]: () => {\r\n // valueAgainst string needs to be converted to boolean if it's coming from a checkbox\r\n const compareAgainst = valueAgainst === 'true' ? true : valueAgainst\r\n return value == compareAgainst\r\n },\r\n [OPERATOR_CONSTANTS['IS_NOT_EQUAL_TO']]: () => {\r\n if (!value) {\r\n return false\r\n }\r\n\r\n return value !== valueAgainst\r\n },\r\n }\r\n\r\n if (typeof operators[operator] === 'undefined') {\r\n return false\r\n }\r\n\r\n return operators[operator]()\r\n}\r\n\r\nconst matchingTypes = (fieldValues, item) => {\r\n const matches = {\r\n [MATCH_TYPE_CONTANTS['ANY']]: (fieldValues, item) => {\r\n let shouldHide\r\n\r\n for (let i = 0; i < item.conditions.length; i += 1) {\r\n const value = fieldValues[item.conditions[i].fieldId],\r\n operator = item.conditions[i].operatorId,\r\n valueAgainst = item.conditions[i].value\r\n\r\n shouldHide = validate(operator, value, valueAgainst)\r\n\r\n if (shouldHide) {\r\n break\r\n }\r\n }\r\n\r\n return shouldHide\r\n },\r\n [MATCH_TYPE_CONTANTS['ALL']]: (fieldValues, item) => {\r\n let shouldHide\r\n\r\n for (let i = 0; i < item.conditions.length; i += 1) {\r\n const value = fieldValues[item.conditions[i].fieldId],\r\n operator = item.conditions[i].operatorId,\r\n valueAgainst = item.conditions[i].value\r\n\r\n shouldHide = validate(operator, value, valueAgainst)\r\n\r\n if (!shouldHide) {\r\n break\r\n }\r\n }\r\n\r\n return shouldHide\r\n },\r\n },\r\n result = matches[item.matchTypeId](fieldValues, item)\r\n\r\n return handleActionType(item.actionTypeId, result)\r\n}\r\n","import React, { VFC } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { IReduxState } from '../../../ReduxImpl/reducers/index'\r\nimport { FieldProps } from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { FormFieldSection } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { checkConditions } from '../../ConditionalRendering/index'\r\nimport { UpdateConditionalSectionControls } from '../../../ReduxImpl/actions'\r\n\r\nconst SectionFeild: VFC> = ({\r\n field,\r\n fieldFactory,\r\n}) => {\r\n const dispatch = useDispatch()\r\n\r\n const stateFieldValues = useSelector(\r\n (state: IReduxState) => state.fieldValues\r\n )\r\n const stateConditions = useSelector((state: IReduxState) => {\r\n return state.conditions[field.model['conditionSettings'].fieldKey]\r\n })\r\n\r\n const showsection = useSelector((state: IReduxState) => state.showsection)\r\n\r\n const IsVisible = (fieldValues, conditions, field) => {\r\n if (!showsection && field.model.name === 'SectionAll') {\r\n return true\r\n } else if (conditions !== undefined && fieldValues !== undefined) {\r\n let IsSectionHide = checkConditions(fieldValues, conditions)\r\n dispatch(\r\n UpdateConditionalSectionControls({\r\n name: field.model.name,\r\n IsVisible: !IsSectionHide,\r\n })\r\n )\r\n return IsSectionHide\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n return (\r\n \r\n
    \r\n {!IsVisible(stateFieldValues, stateConditions, field)\r\n ? field.fields.map(fieldFactory)\r\n : null}\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default SectionFeild\r\n","import React from 'react'\r\nimport {\r\n Label,\r\n ListFieldProps,\r\n FieldChangeCallback,\r\n} from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { ValueFormField } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nconst checkBoxListField: React.FunctionComponent = (props) => {\r\n const {\r\n field,\r\n field: {\r\n model: { items },\r\n },\r\n value,\r\n onChange,\r\n errors,\r\n tracker,\r\n } = props\r\n\r\n const FieldValidationErrors = props.fieldValidationErrorsComponent\r\n\r\n const checkBoxtds = (Checkboxitems: any) => {\r\n return Checkboxitems.map((item: any, index: number) => (\r\n \r\n \r\n \r\n ))\r\n }\r\n\r\n const generateCheckBoxes = (\r\n Checkboxitems: Array,\r\n columnCount: number\r\n ): any => {\r\n let chkbxTds = checkBoxtds(Checkboxitems)\r\n let rows = []\r\n\r\n while (chkbxTds.length > 0) {\r\n let length = columnCount > chkbxTds.length ? chkbxTds.length : columnCount\r\n rows.push(\r\n \r\n {chkbxTds.splice(0, length)}\r\n \r\n )\r\n }\r\n return rows\r\n }\r\n\r\n let columnNumber = window.innerWidth <= 750 ? '1' : '2'\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n\r\n {generateCheckBoxes(items, +columnNumber)}\r\n\r\n
    \r\n \r\n
    \r\n \r\n )\r\n}\r\n\r\n/**\r\n * @param {ValueFormField} field\r\n * @param {string[]} originalFieldValue\r\n * @param {string} changedElement\r\n * @param {boolean} checked\r\n * @param {FieldChangeCallback} callback\r\n */\r\nfunction handleOnChange(\r\n field: ValueFormField,\r\n originalFieldValue: string[],\r\n changedElement: string,\r\n checked: boolean,\r\n callback: FieldChangeCallback\r\n) {\r\n // we can have multiple selected values. So we need to push ALL the selected\r\n // values back up to the root form. This is done using an array, which the form\r\n // serializer knows how to expand into multiple values on post\r\n\r\n let value = originalFieldValue\r\n\r\n if (checked) {\r\n value.push(changedElement)\r\n } else {\r\n value = value.filter((v) => v !== changedElement)\r\n }\r\n\r\n callback(field.valueField.name, value, true, [])\r\n}\r\n\r\nexport default checkBoxListField\r\n","import React, { Fragment } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport {\r\n UpdateConditionalFieldValue,\r\n UpdateDisableButtonState,\r\n updateHideButton,\r\n} from '../../../ReduxImpl/actions/index'\r\nimport { IReduxState } from '../../../ReduxImpl/reducers/index'\r\nimport {\r\n Label,\r\n ListFieldProps,\r\n FieldChangeCallback,\r\n} from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { ValueFormField } from '@sitecore-jss/sitecore-jss-forms'\r\n\r\nconst RadioButtonListField: React.FunctionComponent = (\r\n props\r\n) => {\r\n const {\r\n field,\r\n field: {\r\n model: { items },\r\n },\r\n value,\r\n onChange,\r\n tracker,\r\n errors,\r\n fieldValidationErrorsComponent,\r\n } = props\r\n\r\n const dispatch = useDispatch()\r\n\r\n const fieldValues = useSelector((state: IReduxState) => state.fieldValues)\r\n const hideButton = useSelector((state: IReduxState) => state.hideButton)\r\n\r\n const FieldValidationErrors = fieldValidationErrorsComponent\r\n\r\n return (\r\n \r\n \r\n )\r\n}\r\n\r\n/**\r\n * @param {ValueFormField} field\r\n * @param {string} newValue\r\n * @param {FieldChangeCallback} callback\r\n */\r\nfunction handleOnChange(\r\n field: ValueFormField,\r\n newValue: string,\r\n callback: FieldChangeCallback,\r\n fieldValues: any,\r\n hideButton: boolean,\r\n dispatch: any\r\n) {\r\n let valid = true\r\n const errorMessages = []\r\n\r\n fieldValues[field.model['conditionSettings'].fieldKey] = newValue\r\n dispatch(UpdateConditionalFieldValue(fieldValues))\r\n\r\n // custom client validation logic here\r\n if (field.model.required && !newValue) {\r\n valid = false\r\n errorMessages.push(`${field.model.title} is required`)\r\n }\r\n\r\n if (field.model.required && newValue === 'Non accetto') {\r\n dispatch(updateHideButton(hideButton))\r\n }\r\n if (field.model.required && newValue === 'Accetto') {\r\n dispatch(updateHideButton(hideButton))\r\n }\r\n\r\n if (field.model.required && newValue === 'I do not agree') {\r\n dispatch(UpdateDisableButtonState(true));\r\n }\r\n\r\n if (field.model.required && newValue === 'I agree') {\r\n dispatch(UpdateDisableButtonState(false));\r\n }\r\n\r\n callback(field.valueField.name, [newValue], valid, errorMessages)\r\n}\r\n\r\nexport default RadioButtonListField\r\n","import React from 'react'\r\nimport { TextViewModel, FormField } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { FieldWithValueProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\n\r\nconst TextViewField: React.FunctionComponent<\r\n FieldWithValueProps>\r\n> = ({ field }) => {\r\n let textField = field.model.text\r\n let name = field.model.name\r\n\r\n return (\r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default TextViewField\r\n","import React, { Fragment, VFC, useState, useEffect } from 'react'\r\nimport { useDispatch } from 'react-redux'\r\nimport ReCAPTCHA from 'react-google-recaptcha'\r\nimport { MultiLineStringInputViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\nimport { UpdateCaptchaStatus } from '../../../ReduxImpl/actions/index'\r\n\r\nexport interface MultiLineStringInputViewModelCaptcha\r\n extends MultiLineStringInputViewModel {\r\n publicKey?: string\r\n}\r\nconst ReCaptcha: VFC> = (\r\n props\r\n) => {\r\n const { field } = props\r\n\r\n const dispatch = useDispatch()\r\n\r\n const [expired, setExpired] = useState(true)\r\n\r\n const publicKey = field.model.publicKey\r\n\r\n const onChange = (value: any): void => {\r\n if (value) {\r\n setExpired(false)\r\n } else {\r\n setExpired(true)\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n dispatch(UpdateCaptchaStatus(expired))\r\n }, [expired])\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default ReCaptcha\r\n","import React from 'react'\r\nimport { RichText as SitecoreRichText } from '@sitecore-jss/sitecore-jss-react'\r\nimport { FormField, ViewModel } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { FieldProps } from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { FormFieldComponent } from '@sitecore-jss/sitecore-jss-react-forms/types/field-factory'\r\n\r\ninterface ViewModelWithProps extends ViewModel {\r\n richTextField: string\r\n}\r\n\r\nconst RichText: FormFieldComponent<\r\n FieldProps>\r\n> = ({\r\n field: {\r\n model: { richTextField },\r\n },\r\n}) => (\r\n
    \r\n \r\n
    \r\n)\r\n\r\nexport default RichText\r\n","import {\r\n createDefaultFieldFactory,\r\n FieldTypes,\r\n} from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport TextField from './components/textField'\r\nimport FileUpload from './components/fileUpload'\r\nimport EmailField from './components/emailField'\r\nimport NumberField from './components/numberField'\r\nimport TelephoneField from './components/telephoneField'\r\nimport PasswordField from './components/passwordField'\r\nimport MultipleLineTextField from './components/multipleLineTextField'\r\nimport CheckboxField from './components/checkboxField/index'\r\nimport Dropdownfield from './components/dropdownfield'\r\nimport SectionFeild from './components/sectionField'\r\nimport checkBoxListField from './components/checkBoxListField'\r\nimport RadioButtonListField from './components/radioButtonListField'\r\nimport TextViewField from './components/textViewField'\r\nimport Recaptcha from './components/recaptcha'\r\nimport RichText from './components/richText/RichText'\r\n\r\nconst FieldTypesC = {\r\n ...FieldTypes,\r\n Captcha: '{AF50468E-66DE-48B7-9FA5-A9066241892B}',\r\n 'Rich Text': '{976EC698-39C5-4522-A930-E3149267C863}',\r\n}\r\nconst defaultFieldFactory = createDefaultFieldFactory()\r\n\r\ndefaultFieldFactory.setComponent(FieldTypesC.SingleLineText, TextField)\r\n\r\ndefaultFieldFactory.setComponent(FieldTypesC.FileUpload, FileUpload)\r\ndefaultFieldFactory.setComponent(FieldTypesC.NumberField, NumberField)\r\ndefaultFieldFactory.setComponent(FieldTypesC.Email, EmailField)\r\ndefaultFieldFactory.setComponent(FieldTypesC.Telephone, TelephoneField)\r\ndefaultFieldFactory.setComponent(FieldTypesC.Password, PasswordField)\r\ndefaultFieldFactory.setComponent(\r\n FieldTypesC.MultipleLineText,\r\n MultipleLineTextField\r\n)\r\ndefaultFieldFactory.setComponent(FieldTypesC.Checkbox, CheckboxField)\r\ndefaultFieldFactory.setComponent(FieldTypesC.DropdownList, Dropdownfield)\r\ndefaultFieldFactory.setComponent(FieldTypesC.Section, SectionFeild)\r\ndefaultFieldFactory.setComponent(FieldTypesC.CheckboxList, checkBoxListField)\r\ndefaultFieldFactory.setComponent(\r\n FieldTypesC.RadioButtonList,\r\n RadioButtonListField\r\n)\r\ndefaultFieldFactory.setComponent(FieldTypesC.TextField, TextViewField)\r\ndefaultFieldFactory.setComponent(\r\n FieldTypesC['Captcha'] as FieldTypes,\r\n Recaptcha\r\n)\r\ndefaultFieldFactory.setComponent(\r\n FieldTypesC['Rich Text'] as FieldTypes,\r\n RichText\r\n)\r\n\r\nexport default defaultFieldFactory\r\n","import React from 'react';\r\nimport { StringField } from '../../../types/types';\r\n\r\nexport type TPrivacyContentFieldItem = {\r\n id: string;\r\n name: string;\r\n displayName: string;\r\n fields: {\r\n contentDetail?: StringField;\r\n accordionContentTitle?: StringField;\r\n accordionContentDetail?: StringField;\r\n templateId: string;\r\n }\r\n}\r\n\r\nexport type TPrivacyContentItems = {\r\n id: string;\r\n name: string;\r\n displayName: string;\r\n fields: {\r\n anchorContentTitle: StringField;\r\n templateId: string;\r\n items: TPrivacyContentFieldItem[];\r\n }\r\n};\r\n\r\nexport type TPrivacyContent = {\r\n privacyStatementTitle: StringField;\r\n languageTitle: StringField;\r\n changeLanguageTitle: StringField;\r\n templateId: string;\r\n items: TPrivacyContentItems[];\r\n};\r\n\r\nexport type TLanguageCollection = {\r\n [x: string]: string;\r\n}\r\n\r\nexport type TPrivacyStatementFields = {\r\n changeLanguageTitle: StringField;\r\n languageCollection: Array;\r\n privacyContent: TPrivacyContent;\r\n};\r\n\r\nexport type TPrivacyStatementProps = {\r\n componentName?: string;\r\n fields?: TPrivacyStatementFields;\r\n activeItem?: number;\r\n setActiveItem?: React.Dispatch>\r\n};\r\n\r\nexport enum InnerContentTypes {\r\n RichText = \"{7C968F99-5147-4541-8A46-09666FEDBD16}\",\r\n Accordion = \"{E78CD344-B1F8-4B4B-95E9-2C00DEEA10A4}\",\r\n}\r\n\r\nexport type TDropdownProps = {\r\n languageCollection: Array;\r\n changeLanguageTitle: string;\r\n languageTitle: string;\r\n}\r\n\r\nexport type TAccordionProps = {\r\n accordionContentTitle: StringField;\r\n accordionContentDetail: StringField;\r\n}\r\n\r\nexport type TSectionTabsProps = {\r\n contentWrapperRef: React.MutableRefObject;\r\n privacyContentItems: TPrivacyContentItems[];\r\n}\r\n\r\nexport type TMobileNavigationBarProps = {\r\n privacyContentItems: TPrivacyContentItems[];\r\n}\r\n","import React, { VFC } from 'react'\r\nimport { ValueFieldProps } from '@sitecore-jss/sitecore-jss-react-forms/types'\r\n\r\nconst FieldValidationError: VFC = (props) => {\r\n const hasAnyError = !!props.errors?.length\r\n\r\n return (\r\n <>\r\n {hasAnyError && (\r\n
    \r\n
    \r\n {props.errors.map((error, i) => (\r\n

    \r\n \r\n {error}\r\n

    \r\n ))}\r\n
    \r\n
    \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default FieldValidationError\r\n","import React, { FC } from 'react'\r\nimport { useSelector } from 'react-redux'\r\nimport {\r\n FieldTypes,\r\n FieldWithValueProps,\r\n} from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { BiInfoCircle } from 'react-icons/bi'\r\nimport { IReduxState } from '../../../ReduxImpl/reducers/index'\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nconst FieldWrapper: FC = (props) => {\r\n const { t } = useTranslation();\r\n const hasRadioBtn =\r\n props.field.model.fieldTypeItemId === FieldTypes.RadioButtonList\r\n\r\n const hideButton = useSelector((state: IReduxState) => state.hideButton)\r\n const name = props.field.model.name\r\n const captcha = useSelector((state: IReduxState) => state.captcha)\r\n const disableButton = useSelector((state: IReduxState) => state.disableButton); \r\n\r\n const cssClass = (props.field.model as { [key: string]: any })?.cssClass ?? ''\r\n\r\n return (\r\n \r\n {props.children}\r\n\r\n {name === 'IDDocument' ? (\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n ) : null}\r\n \r\n )\r\n}\r\n\r\nexport default FieldWrapper\r\n","import React, { FormEvent } from 'react'\r\nimport { serializeForm, submitForm } from '@sitecore-jss/sitecore-jss-forms'\r\nimport { Form } from '@sitecore-jss/sitecore-jss-react-forms'\r\nimport { connect } from 'react-redux'\r\nimport {\r\n updateFields,\r\n setLoader,\r\n updateRemoveError,\r\n updateCustomError,\r\n} from '../../../ReduxImpl/actions/index'\r\n\r\nexport interface FieldState {\r\n value?: string | string[] | File[] | boolean\r\n isValid: boolean\r\n errors: string[]\r\n}\r\n\r\nexport interface FieldStateCollection {\r\n [key: string]: FieldState\r\n}\r\n\r\nclass JssForm extends Form {\r\n delayScroll(time = 2000) {\r\n setTimeout(() => {\r\n window.scroll(0, 0)\r\n }, time)\r\n }\r\n\r\n getCookieValue(name) {\r\n let result = document.cookie.match(\r\n '(^|[^;]+)\\\\s*' + name + '\\\\s*=\\\\s*([^;]+)'\r\n )\r\n return result ? result.pop() : ''\r\n }\r\n\r\n /**\r\n * Handler triggered when the form is submitted. May transition its state between\r\n * steps in a multistep form or handle a final submit.\r\n * @param {FormEvent} e\r\n */\r\n onSubmit(e: FormEvent) {\r\n e.preventDefault()\r\n\r\n let jssForm: any = this.props\r\n jssForm.setLoader(true)\r\n\r\n let rError: any = this.props\r\n rError.updateRemoveError(true)\r\n\r\n let cError: any = this.props\r\n cError.updateCustomError('')\r\n\r\n const form = this.state.nextForm || this.props.form\r\n\r\n const fieldValues: { [key: string]: string | string[] | boolean | File[] } =\r\n {}\r\n\r\n const currentFieldValues = this.collectCurrentFieldValues()\r\n\r\n currentFieldValues.forEach((field) => {\r\n if (typeof field.state.value !== 'undefined') {\r\n fieldValues[field.fieldName] = field.state.value\r\n }\r\n })\r\n\r\n // NOTE: we're not pre-validating the submit on the client because\r\n // Sitecore won't be able to track validation errors in xConnect\r\n\r\n // serialize the form data that we got from the server\r\n // (hidden fields with constant values, unchanged default field values, etc)\r\n const formData = serializeForm(form, {\r\n submitButtonName: this.state.submitButton,\r\n })\r\n\r\n\r\n \r\n\r\n // add cookie language \r\n let languageSelected = this.getCookieValue(\"cnhicorporate#lang2\") ? this.getCookieValue(\"cnhicorporate#lang2\") : 'en-US';\r\n \r\n\r\n function findElementWithCSSClass(obj, name) { \r\n if (obj.model && obj.model.name === name) {\r\n return obj;\r\n }\r\n \r\n if (obj.fields && obj.fields.length > 0) {\r\n for (const field of obj.fields) {\r\n const foundElement = findElementWithCSSClass(field, name);\r\n if (foundElement) {\r\n return foundElement;\r\n }\r\n }\r\n }\r\n \r\n return null;\r\n }\r\n \r\n \r\n\r\n const elementWithCSSClass = findElementWithCSSClass(form, \"LanguageDropdownList\"); \r\n \r\n if(elementWithCSSClass){\r\n fieldValues[elementWithCSSClass.valueField.name] = languageSelected; \r\n } \r\n\r\n// end language selected add\r\n\r\n \r\n\r\n // merge in user-updated field values\r\n formData.mergeOverwritingExisting(fieldValues) \r\n\r\n const submitUrl =\r\n (e.target as HTMLFormElement).action +\r\n '&sc_lang=' +\r\n (this.getCookieValue('cnhicorporate#lang2') ? this.getCookieValue('cnhicorporate#lang2') : 'en-US')\r\n\r\n if (!submitUrl) {\r\n throw new Error(\r\n 'Submit URL was not defined. Ensure the form has an action attribute.'\r\n )\r\n }\r\n\r\n submitForm(formData, submitUrl, { fetcher: this.props.formFetcher })\r\n .then((result) => {\r\n if (result.success && result.redirectUrl) {\r\n // Process redirect-on-success action.\r\n if (this.props.onRedirect) {\r\n this.props.onRedirect(result.redirectUrl)\r\n } else {\r\n window.location.href = result.redirectUrl\r\n }\r\n }\r\n\r\n let ErrorElToBeFocused: string\r\n\r\n if (result.validationErrors) {\r\n if (Object.keys(result.validationErrors).length > 0) {\r\n const stateUpdate: FieldStateCollection = {}\r\n\r\n Object.keys(result.validationErrors).forEach((fieldKey) => {\r\n if (!ErrorElToBeFocused) ErrorElToBeFocused = fieldKey\r\n\r\n stateUpdate[fieldKey] = {\r\n value: (this.state[fieldKey] || {}).value,\r\n\r\n isValid: false,\r\n\r\n errors: result.validationErrors[fieldKey],\r\n }\r\n })\r\n // --- sets the Frist Error Element on form after submit ---\r\n\r\n this.setState(stateUpdate, () => {\r\n const fieldEl: HTMLElement = document.querySelector(\r\n \"*[name='\" + ErrorElToBeFocused + \"']\"\r\n )\r\n\r\n fieldEl?.focus()\r\n })\r\n }\r\n }\r\n\r\n if (result.nextForm) {\r\n let sampleProps: any = this.props\r\n sampleProps.updateFields(result.nextForm)\r\n }\r\n\r\n if (result.success) {\r\n this.resetFieldsState()\r\n }\r\n // --- checks for email address already exits -> subscribe form ---\r\n if (\r\n result.success &&\r\n result.redirectUrl === null &&\r\n result.validationErrors\r\n ) {\r\n rError.updateRemoveError(true)\r\n throw result.errors[0]\r\n }\r\n\r\n if (result.errors && result.errors.length > 0) {\r\n throw result.errors\r\n }\r\n\r\n jssForm.setLoader(false)\r\n this.setState({ errors: [] })\r\n })\r\n .catch((error: Error | string[] | string) => {\r\n if (Array.isArray(error)) {\r\n this.setState({ errors: error })\r\n } else if (typeof error === 'string') {\r\n cError.updateCustomError(error)\r\n\r\n this.setState({ errors: [error] })\r\n } else {\r\n this.setState({ errors: [error?.message] })\r\n }\r\n\r\n jssForm.setLoader(false)\r\n rError.updateRemoveError(true)\r\n })\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = (dispatch) => {\r\n return {\r\n updateFields: (fields) => dispatch(updateFields(fields)),\r\n setLoader: (val) => dispatch(setLoader(val)),\r\n updateRemoveError: (v) => dispatch(updateRemoveError(v)),\r\n updateCustomError: (c) => dispatch(updateCustomError(c)),\r\n }\r\n}\r\n\r\nexport default connect(null, mapDispatchToProps)(JssForm)\r\n","import React, { useState } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { Text } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport Modal from \"react-modal\";\r\nimport \"./styles.scss\";\r\n\r\nconst Spinner = (props) => {\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\nexport default Spinner;\r\n","import React, { VFC } from 'react'\r\nimport { useSelector } from 'react-redux'\r\nimport { TSitecoreJssFormProps } from './types/SitecoreJssForm.type'\r\nimport defaultFieldFactory from './fieldFactory'\r\nimport FieldValidationError from './components/fieldValidationError'\r\nimport fieldWrapper from './components/fieldWrapper'\r\nimport { withRouter } from 'react-router-dom'\r\nimport { sitecoreApiHost, sitecoreApiKey } from '../../temp/config'\r\nimport { isInternalUrl } from '../../utils/linkUtils'\r\nimport './styles.scss'\r\n\r\nimport JssForm from '../SitecoreJssForm/components/JssForm/JssForm'\r\nimport LazySection from '../../react-only-components/LazySection'\r\nimport Spinner from '../../react-only-components/Spinner/Spinner'\r\n\r\nconst SitecoreJssForm: VFC = ({\r\n fields,\r\n history,\r\n isContact = false,\r\n}) => {\r\n const loader = useSelector((state: any) => {\r\n return state.loader\r\n })\r\n\r\n return (\r\n \r\n {loader && }\r\n \r\n \r\n <>}\r\n fieldValidationErrorsComponent={FieldValidationError}\r\n fieldWrapperComponent={fieldWrapper}\r\n onRedirect={(url) => {\r\n if (isInternalUrl(url)) {\r\n history.push(url)\r\n } else {\r\n window.location.href = url\r\n }\r\n }}\r\n />\r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default withRouter(SitecoreJssForm)\r\n","import React, { useEffect } from 'react'\r\nimport { useDispatch, useSelector } from 'react-redux'\r\nimport { updateFields } from '../ReduxImpl/actions/index'\r\n\r\nimport SitecoreJssForm from '../SitecoreJssForm/index'\r\n\r\nconst JssFormDisplay = ({ fields, history: _, isContact }) => {\r\n const dispatch = useDispatch()\r\n\r\n const fieldsData = useSelector((state: any) => state.fields)\r\n\r\n const JssFormKey = useSelector((state: any) => state.JssFormKey)\r\n\r\n useEffect(() => {\r\n dispatch(updateFields(fields))\r\n }, [fields])\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default JssFormDisplay\r\n","import React, { FC, useEffect, useMemo, useState } from 'react'\r\nimport { Provider } from 'react-redux'\r\nimport store from '../ReduxImpl/store/index'\r\nimport JssFormDisplay from './jssStatefullform'\r\nimport { dataApi, withSitecoreContext } from '@sitecore-jss/sitecore-jss-react'\r\nimport { ComponentProps } from '../../types/types'\r\nimport { dataFetcher } from '../../dataFetcher.js'\r\nimport './index.scss'\r\n\r\ninterface PrivacyFormProps extends ComponentProps {\r\n fields?: any\r\n history?: any\r\n params?: any\r\n}\r\n\r\nconst PrivacyForm: FC = ({\r\n fields,\r\n history,\r\n params: { 'Contact Form': contactForm },\r\n}) => { \r\n const _className = useMemo(\r\n () =>\r\n `${\r\n fields.metadata.name.includes('PrivacyRequestForm')\r\n ? 'PrivacyForm PrivacyForm__white'\r\n : ''\r\n }`,\r\n [fields]\r\n )\r\n\r\n return (\r\n
    \r\n \r\n \r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default PrivacyForm\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n TLanguageCollection,\r\n TPrivacyContentItems,\r\n TPrivacyStatementFields,\r\n TPrivacyStatementProps,\r\n} from \"../types/PrivacyStatement.types\";\r\n\r\nexport class PrivacyStatementModel {\r\n private readonly fields: TPrivacyStatementFields;\r\n\r\n constructor(props: TPrivacyStatementProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.privacyContent?.privacyStatementTitle || {value: ''};\r\n }\r\n\r\n get items(): TPrivacyContentItems[] {\r\n return this.fields?.privacyContent?.items;\r\n }\r\n\r\n get itemIds(): string[] {\r\n return this.items?.map((item) => item.id);\r\n }\r\n\r\n get languageCollection(): TLanguageCollection[] {\r\n return this.fields?.languageCollection;\r\n }\r\n\r\n get changeLanguageTitle(): StringField {\r\n return this.fields?.changeLanguageTitle;\r\n }\r\n\r\n get defaultLanguageTitle(): StringField {\r\n return this.fields?.privacyContent?.languageTitle;\r\n }\r\n}\r\n","import React, { useState } from \"react\";\r\nimport { RichText } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { TAccordionProps } from \"../../types/PrivacyStatement.types\";\r\nimport \"./index.scss\";\r\n\r\n\r\nconst Accordion = (props: TAccordionProps) => {\r\n const [isOpen, setOpen] = useState(false);\r\n\r\n return (\r\n
    \r\n
    setOpen(!isOpen)}>\r\n \r\n {props.accordionContentTitle?.value}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Accordion;\r\n","import React from 'react';\r\nimport { InnerContentTypes, TPrivacyContentFieldItem, TPrivacyContentItems } from '../../types/PrivacyStatement.types';\r\nimport { RichText, Text } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport Accordion from '../Accordion';\r\n\r\nconst SectionContent = (props: TPrivacyContentItems) => {\r\n const { fields } = props;\r\n const items = fields.items;\r\n\r\n const ItemContent = (item: TPrivacyContentFieldItem) => {\r\n if (InnerContentTypes.RichText === item.fields.templateId) {\r\n return (\r\n \r\n );\r\n }\r\n return (\r\n \r\n )\r\n };\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n {\r\n items && items.map((item) => {\r\n return \r\n })\r\n }\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default SectionContent;","import React, { FC } from 'react';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { TDropdownProps } from '../../types/PrivacyStatement.types';\r\nimport {windowService} from '../../../../utils/window.utils';\r\n\r\nconst Dropdown: FC = (props: TDropdownProps) => {\r\n const { languageCollection, changeLanguageTitle, languageTitle } = props;\r\n const history = useHistory();\r\n\r\n const updateUrlQueryStringParams = (language: string): void => {\r\n const getQuery = () => new URLSearchParams(windowService().location?.search);\r\n const queries = getQuery();\r\n\r\n const updateUrlParams = (key, newVal: string) => {\r\n if (newVal.trim() !== '') {\r\n queries.set(key, newVal);\r\n } else {\r\n queries.delete(key);\r\n }\r\n };\r\n\r\n updateUrlParams('lng', language);\r\n\r\n history.push(`?${queries.toString()}`);\r\n history.go(0);\r\n };\r\n\r\n return (\r\n
    \r\n {changeLanguageTitle}\r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default Dropdown;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { TSectionTabsProps } from '../../../types/PrivacyStatement.types';\r\nimport { debounceHandler } from '../../../../../utils/debounceHandler.utils';\r\nimport { documentService, windowService } from '../../../../../utils/window.utils.js';\r\n\r\nconst SectionTabs = (props: TSectionTabsProps) => {\r\n const { contentWrapperRef, privacyContentItems } = props;\r\n const parentContainerTopPadding = 40;\r\n const headerHeight = 100;\r\n const breadcrumbHeight = 56;\r\n const [ activeItem, setActiveItem ] = useState(0);\r\n const timmerRef = useRef>();\r\n const [isFromClick, setIsFromClick] = useState(false);\r\n const isFromClickRef = useRef();\r\n isFromClickRef.current = isFromClick;\r\n\r\n const handleScroll = () => {\r\n debounceHandler(() => {\r\n\r\n if (isFromClickRef.current) {\r\n setIsFromClick(false);\r\n return;\r\n }\r\n\r\n const contentTabs = documentService()?.querySelectorAll('.privacy-statement__content-tab');\r\n const tabsCount = contentTabs.length;\r\n\r\n const contentWrapperTop = contentWrapperRef?.current?.getBoundingClientRect()?.top + 60;\r\n for (let i = (tabsCount - 1); i >=0; i--) {\r\n const tabTop = contentTabs[i]?.getBoundingClientRect()?.top;\r\n if (tabTop <= contentWrapperTop) {\r\n setActiveItem(i);\r\n break;\r\n }\r\n setActiveItem(0);\r\n }\r\n }, timmerRef, 100);\r\n };\r\n\r\n useEffect(() => {\r\n documentService()?.body.scrollIntoView();\r\n }, []);\r\n\r\n useEffect(() => {\r\n contentWrapperRef && contentWrapperRef?.current?.addEventListener('scroll', handleScroll);\r\n return () => {\r\n contentWrapperRef && contentWrapperRef?.current?.removeEventListener('scroll', handleScroll);\r\n }\r\n }, [contentWrapperRef]);\r\n\r\n const scrollItem = (id: string) => {\r\n const ele = documentService()?.getElementById(`${id}`);\r\n if (ele) {\r\n documentService()?.querySelector('.privacy-statement__content-wrapper')?.scrollTo(0, ele.offsetTop - parentContainerTopPadding - headerHeight - breadcrumbHeight);\r\n documentService()?.body.scrollIntoView();\r\n }\r\n };\r\n\r\n return (\r\n
      \r\n {\r\n privacyContentItems.map((item, index) => {\r\n return
    • {\r\n scrollItem(item.id);\r\n setIsFromClick(true);\r\n setActiveItem(index);\r\n }}>{item?.fields?.anchorContentTitle?.value}
    • \r\n })\r\n }\r\n
    \r\n )\r\n}\r\n\r\nexport default SectionTabs;\r\n","import { MutableRefObject } from 'react';\r\n\r\nexport const debounceHandler = (\r\n callback: () => void,\r\n timmerRef: MutableRefObject | undefined>,\r\n delay: number\r\n) => {\r\n clearTimeout(timmerRef.current);\r\n timmerRef.current = setTimeout(callback, delay);\r\n};\r\n","import React, { useEffect, useRef } from \"react\";\r\nimport { TPrivacyStatementProps } from \"../../types/PrivacyStatement.types\";\r\nimport { PrivacyStatementModel } from \"../../models/PrivacyStatement.model\";\r\nimport { windowService } from '../../../../utils/window.utils.js';\r\nimport SectionContent from \"../SectionContent\";\r\nimport Dropdown from \"../Dropdown\";\r\nimport SectionTabs from \"./SectionTabs\";\r\n\r\nconst DesktopPrivacyStatement = (props: TPrivacyStatementProps) => {\r\n const model = new PrivacyStatementModel(props);\r\n const contentWrapperRef = useRef(null);\r\n\r\n useEffect(() => {\r\n windowService()?.scrollTo(0, 0);\r\n }, []);\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    {model.title.value}
    \r\n
    \r\n {\r\n model?.items && model.items.map((item) => {\r\n return (\r\n
    \r\n \r\n
    \r\n )\r\n })\r\n }\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport default DesktopPrivacyStatement;","import { documentService, windowService } from './window.utils';\r\n\r\nconst handleScrollUp = (elementDim: DOMRect, elementSticky: HTMLElement, stickyWrapperHeight: number, header: HTMLElement) => {\r\n if (elementDim.top > elementDim.height) {\r\n elementSticky?.classList.add('sticky-element--hide');\r\n header?.classList.remove('sticky-element--hide');\r\n } else {\r\n if (documentService().querySelector('body').classList.contains('scrolling')) {\r\n header?.classList.add('sticky-element--hide');\r\n }\r\n elementSticky?.classList.remove('sticky-element--hide');\r\n }\r\n};\r\n\r\nconst handleScrollDown = (elementDim: DOMRect, elementSticky: HTMLElement, stickyWrapperHeight: number, header: HTMLElement) => {\r\n let elementStickyVisible = false;\r\n if (elementSticky) {\r\n elementStickyVisible = !elementSticky.classList.contains('sticky-element--hide');\r\n }\r\n let thresholdTop = stickyWrapperHeight;\r\n if (elementStickyVisible) {\r\n thresholdTop -= elementDim.height;\r\n }\r\n\r\n if (elementDim.top < 10) {\r\n elementSticky?.classList.remove('sticky-element--hide');\r\n return;\r\n }\r\n\r\n if (elementDim.top > thresholdTop) {\r\n elementSticky?.classList.add('sticky-element--hide');\r\n header?.classList.remove('sticky-element--hide');\r\n if (windowService().scrollY < 1) return;\r\n header?.classList.add('navigation--hide');\r\n } else {\r\n if (elementDim.bottom < thresholdTop) {\r\n header?.classList.add('sticky-element--hide');\r\n }\r\n if (elementDim.top <= thresholdTop) {\r\n elementSticky?.classList.remove('sticky-element--hide');\r\n } else {\r\n elementSticky?.classList.add('sticky-element--hide');\r\n }\r\n }\r\n};\r\n\r\nconst detectScrollDirectionForNavigationBar = (stickyWrapperEle: HTMLElement | null, scrollPosition: number) => {\r\n const header = documentService().querySelector('#root > header > #sticky-top-wrapper > .navigation') as HTMLElement;\r\n const bodyScrollPosition = documentService().body.getBoundingClientRect().top;\r\n const element =\r\n (documentService().querySelector('#root > main .privacy-statement-mobile__navbar') as HTMLElement);\r\n if (element) {\r\n const elementDim = element.getBoundingClientRect();\r\n const elementSticky =\r\n (documentService().querySelector('#root > header > #sticky-top-wrapper > .privacy-statement-mobile__navbar') as HTMLElement);\r\n const stickyWrapperHeight = stickyWrapperEle?.getBoundingClientRect().height || 0;\r\n\r\n // scrolling up\r\n if (bodyScrollPosition > scrollPosition) {\r\n handleScrollUp(elementDim, elementSticky, stickyWrapperHeight, header);\r\n } else {\r\n handleScrollDown(elementDim, elementSticky, stickyWrapperHeight, header);\r\n }\r\n }\r\n\r\n scrollPosition = bodyScrollPosition;\r\n return scrollPosition;\r\n};\r\n\r\nexport { detectScrollDirectionForNavigationBar };\r\n","import React, { useEffect, useState } from 'react'; // eslint-disable-line\r\nimport { documentService } from '../utils/window.utils.js';\r\n\r\nconst useStickyWrapper = () => {\r\n const [stickyWrapperEle, setStickyWrapperEle] = useState(null);\r\n\r\n useEffect(() => {\r\n setStickyWrapperEle(documentService()?.getElementById?.('sticky-top-wrapper'));\r\n }, []);\r\n\r\n return stickyWrapperEle;\r\n};\r\n\r\nexport default useStickyWrapper;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { TMobileNavigationBarProps } from '../../../types/PrivacyStatement.types';\r\nimport { documentService, windowService } from '../../../../../utils/window.utils.js';\r\nimport { detectScrollDirectionForNavigationBar } from '../../../../../utils/detectScrollDirectionForNavigationBar.utils';\r\nimport useStickyWrapper from '../../../../../hooks/useStickyWrapper';\r\nimport { createPortal } from 'react-dom';\r\n\r\nconst NavigationBar = (props: TMobileNavigationBarProps) => {\r\n const { privacyContentItems } = props;\r\n const navigationBarHeight = 60;\r\n const parentContainerTopPadding = 40;\r\n const [activeItem, setActiveItem] = useState(0);\r\n const stickyWrapperEle = useStickyWrapper();\r\n const [isFromClick, setIsFromClick] = useState(false);\r\n const isFromClickRef = useRef();\r\n isFromClickRef.current = isFromClick;\r\n let scrollPosition = 0;\r\n\r\n const detectActiveTab = () => {\r\n const contentTabs = documentService()?.querySelectorAll('.privacy-statement__content-tab');\r\n if (!contentTabs) return;\r\n const sectionHighlightTabHeight = windowService().innerHeight / 4;\r\n\r\n // if at least the first element is not in the highlighted section set the active tab to first\r\n if (contentTabs.item(0)?.getBoundingClientRect()?.top > sectionHighlightTabHeight) {\r\n setActiveItem(0);\r\n return;\r\n }\r\n\r\n let _activeTab = 0;\r\n for (let i = 0; i < contentTabs.length; i++) {\r\n if (contentTabs?.item(i)?.getBoundingClientRect().top < sectionHighlightTabHeight) {\r\n _activeTab = i;\r\n } else {\r\n break;\r\n }\r\n }\r\n setActiveItem(_activeTab);\r\n };\r\n\r\n const scrollEventListner = () => {\r\n scrollPosition = detectScrollDirectionForNavigationBar(stickyWrapperEle, scrollPosition);\r\n if (isFromClickRef.current) {\r\n setIsFromClick(false);\r\n return;\r\n }\r\n detectActiveTab();\r\n };\r\n\r\n useEffect(() => {\r\n scrollPosition = detectScrollDirectionForNavigationBar(stickyWrapperEle, scrollPosition);\r\n });\r\n\r\n useEffect(() => {\r\n documentService()?.querySelector('.sticky-top-wrapper .active')?.scrollIntoView();\r\n documentService()?.querySelector('.active')?.scrollIntoView();\r\n }, [isFromClick, activeItem]);\r\n\r\n useEffect(() => {\r\n windowService()?.addEventListener('scroll', scrollEventListner, false);\r\n return () => {\r\n windowService()?.removeEventListener('scroll', scrollEventListner);\r\n };\r\n }, [stickyWrapperEle]); // eslint-disable-line\r\n\r\n const scrollItem = (id: string) => {\r\n const ele = documentService()?.getElementById(`${id}`);\r\n if (ele) {\r\n windowService()?.scrollTo(0, ele.offsetTop - parentContainerTopPadding - navigationBarHeight);\r\n }\r\n };\r\n\r\n const NavigationTabs = ({sticky = false}) => {\r\n return (\r\n
    \r\n {privacyContentItems.map((item, index) => {\r\n return (\r\n {\r\n scrollItem(item.id);\r\n setIsFromClick(true);\r\n setActiveItem(index);\r\n }}\r\n >\r\n {item?.fields?.anchorContentTitle?.value}\r\n \r\n )\r\n })}\r\n
    \r\n )\r\n }\r\n\r\n\r\n return (\r\n <>\r\n \r\n {\r\n stickyWrapperEle &&\r\n createPortal(, stickyWrapperEle)\r\n }\r\n \r\n\r\n )\r\n}\r\n\r\nexport default NavigationBar;\r\n","import React, { FC, useEffect } from 'react';\r\nimport NavigationBar from './NavigationBar';\r\nimport { TPrivacyStatementProps } from '../../types/PrivacyStatement.types';\r\nimport { PrivacyStatementModel } from '../../models/PrivacyStatement.model';\r\nimport SectionContent from '../SectionContent';\r\nimport { documentService } from '../../../../utils/window.utils.js';\r\nimport Dropdown from '../Dropdown';\r\nimport './index.scss';\r\n\r\nconst MobilePrivacyStatement: FC = (props: TPrivacyStatementProps) => {\r\n const model = new PrivacyStatementModel(props);\r\n\r\n useEffect(() => {\r\n documentService()?.body.scrollIntoView();\r\n }, []);\r\n\r\n\r\n return (\r\n
    \r\n
    {model.title.value}
    \r\n \r\n \r\n
    \r\n {\r\n model?.items && model.items.map((item) => {\r\n return (\r\n
    \r\n \r\n
    \r\n )\r\n })\r\n }\r\n
    \r\n
    \r\n\r\n )\r\n};\r\n\r\nexport default MobilePrivacyStatement;\r\n","import React, { useState } from \"react\";\r\nimport DesktopPrivacyStatement from \"./components/DesktopPrivacyStatement\";\r\nimport { TPrivacyStatementProps } from \"./types/PrivacyStatement.types\";\r\nimport useMediaQuery from \"../../hooks/useMediaQuery\";\r\nimport { BreakpointsInPx } from \"../../constants/breakpoints.constants\";\r\nimport MobilePrivacyStatement from \"./components/MobilePrivacyStatement\";\r\nimport './index.scss';\r\n\r\nconst PrivacyStatement = (props: TPrivacyStatementProps) => {\r\n const isDesktop = useMediaQuery(`(min-width: ${BreakpointsInPx['md']})`);\r\n const [activeItem, setActiveItem] = useState(0);\r\n \r\n\r\n return (\r\n <>\r\n {(isDesktop) ?\r\n :\r\n \r\n }\r\n \r\n )\r\n}\r\n\r\nexport default PrivacyStatement;","export default {\r\n fields: {\r\n apiData: {\r\n \"id\": 53603,\r\n \"titleUrl\": \"magnum220\",\r\n \"title\": \"Magnum™ 220\",\r\n \"formattedTitle\": null,\r\n \"description\": \"With the industry's largest cab featuring a choice of ergonomically designed packages and 360-degree visibility, long working days won't seem so long in the Magnum™ 220.\",\r\n \"icon\": null,\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"fullAlt\": null\r\n }\r\n }\r\n}","import {\r\n TProductIntroProps,\r\n TProductIntroFields,\r\n} from \"../types/ProductIntro.types\";\r\nimport mock from \"../../../mocks/ProductIntro.mock\";\r\n\r\nexport class ProductIntroModel {\r\n private readonly fields: null | TProductIntroFields;\r\n\r\n constructor(props: TProductIntroProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get title(): string {\r\n return this.fields?.apiData?.title ?? mock.fields.apiData.title;\r\n }\r\n\r\n get description(): string {\r\n return this.fields?.apiData?.description ?? mock.fields.apiData.description;\r\n }\r\n\r\n get image(): string {\r\n return this.fields?.apiData?.full ?? mock.fields.apiData.full;\r\n }\r\n\r\n get imageAlt(): string {\r\n return this.fields?.apiData?.fullAlt ?? mock.fields.apiData.fullAlt;\r\n }\r\n}\r\n","import React, { FC } from \"react\";\r\n\r\nimport { RichText } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { TProductIntroProps } from \"./types/ProductIntro.types\";\r\nimport { ProductIntroModel } from \"./models/ProductIntro.model\";\r\n\r\nimport \"./style.scss\";\r\n\r\nconst ProductIntro: FC = (props) => {\r\n const model = new ProductIntroModel(props);\r\n\r\n return (\r\n \r\n
    \r\n \r\n
    \r\n
    EXPLORE THE MODEL
    \r\n

    {model.title}

    \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default ProductIntro;\r\n","import React from \"react\";\r\nimport { ComponentProps } from \"../../types/types\";\r\n\r\ninterface Redirectww1ComponentProps extends ComponentProps {}\r\n\r\nconst Redirectww1Component = (props: Redirectww1ComponentProps) => {\r\n React.useEffect(() => {\r\n const newPath = `https://www1.cnhindustrial.com${location.pathname.replace(\r\n \"cnhicorporate/\",\r\n \"\"\r\n )}${location.search}`;\r\n if (location.hostname !== \"localhost\") {\r\n location.href = newPath;\r\n }\r\n }, []);\r\n return <>;\r\n};\r\n\r\nexport default Redirectww1Component;\r\n","import {\r\n RelatedLinksFields,\r\n RelatedLinksProps,\r\n} from \"../types/RelatedLinks.types\";\r\n\r\nexport class RelatedLinksModel {\r\n private readonly fields: RelatedLinksFields;\r\n\r\n constructor(props: RelatedLinksProps) {\r\n this.fields = props.fields;\r\n }\r\n}\r\n","import React, { useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { RelatedLinksModel } from \"./models/RelatedLinks.model\";\r\nimport { RelatedLinksProps } from \"./types/RelatedLinks.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst RelatedLinks = (props: RelatedLinksProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n const model = new RelatedLinksModel(props);\r\n const RelatedLinksList = props?.fields?.[\"Related Links\"];\r\n const [isContinue, setContinue] = useState(true);\r\n\r\n return (\r\n \r\n {props?.fields && (\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(RelatedLinks);\r\n","import { CheckboxField, StringField } from \"../../../types/types\"\r\nimport { RTEFields, RTEProps } from \"../types/RTE.types\"\r\n\r\nexport class RTEModel {\r\n private readonly fields?: RTEFields\r\n constructor(props: RTEProps) {\r\n this.fields = props.fields || null\r\n }\r\n\r\n get html(): StringField {\r\n return this.fields?.RTE\r\n }\r\n get mobileHtml(): StringField {\r\n return this.fields?.RTEMobile\r\n }\r\n\r\n get allowFallbackForMobile(): CheckboxField {\r\n return this.fields?.AllowFallbackForMobile\r\n }\r\n}\r\n","import React, { useEffect, useRef } from 'react'\r\nimport { RTEModel } from './models/RTE.model'\r\nimport '../../styles/@shared/rte.scss'\r\nimport LazySection from '../../react-only-components/LazySection'\r\nimport { withRouter, useHistory } from 'react-router-dom'\r\n\r\ninterface RTEProps extends ComponentProps {}\r\n\r\nconst getCookieValue = (name) => {\r\n let result = document.cookie.match(\r\n '(^|[^;]+)\\\\s*' + name + '\\\\s*=\\\\s*([^;]+)'\r\n )\r\n return result ? result.pop() : ''\r\n}\r\nconst RTE = (props) => {\r\n const model = new RTEModel(props)\r\n const history = useHistory()\r\n const desktopRef = useRef(null)\r\n const mobileRef = useRef(null)\r\n\r\n const hydrate = (ref) => {\r\n if (islangSelector()) {\r\n setTimeout(() => {\r\n let el: HTMLCollection = ref?.current?.children[0].children\r\n\r\n var d = new Date()\r\n d.setTime(d.getTime() + 5 * 24 * 60 * 60 * 1000)\r\n var expires = 'expires=' + d.toUTCString()\r\n\r\n const hrefun = (currentLang) => {\r\n const currentPath = history?.location?.pathname\r\n const prevLang = getCookieValue('cnhicorporate#lang2')\r\n if (currentLang) {\r\n document.cookie =\r\n 'cnhicorporate#lang2=' + currentLang + ';path=/;' + expires\r\n } else {\r\n document.cookie = 'cnhicorporate#lang2=en;path=/;' + expires\r\n }\r\n\r\n history.push(currentPath, {\r\n params: { forceReload: prevLang != currentLang ? true : false },\r\n })\r\n }\r\n\r\n el &&\r\n Array.from(el).forEach(function (element) {\r\n const lang = element.getAttribute('datatype')\r\n element.addEventListener('click', hrefun.bind(element, lang))\r\n })\r\n }, 1)\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n hydrate(desktopRef)\r\n }, [desktopRef.current])\r\n\r\n useEffect(() => {\r\n hydrate(mobileRef)\r\n }, [mobileRef.current])\r\n\r\n const isSticky = () => {\r\n return false //props.params.IsSticky\r\n }\r\n\r\n const islangSelector = () => {\r\n return props.params.IslangSelector === 'true'\r\n }\r\n\r\n return (\r\n \r\n \r\n 0\r\n ? model.mobileHtml?.value\r\n : model?.allowFallbackForMobile?.value\r\n ? model.html?.value\r\n : null,\r\n }}\r\n >\r\n \r\n )\r\n}\r\nexport default withRouter(RTE)\r\n","import React, { useEffect } from 'react'\r\n\r\nimport './styles.scss'\r\nimport { TPaginationProps } from '../../types/Pagination.types'\r\n\r\nconst Pagination = ({\r\n currentPage,\r\n goToPage,\r\n pages,\r\n}: TPaginationProps): JSX.Element => {\r\n const emptyButtonLabel = '...'\r\n const firstPage = 1\r\n const pagesArr = new Array(pages).fill(null).map((_, i: number) => ++i)\r\n\r\n useEffect(() => {\r\n currentPage = firstPage\r\n }, [])\r\n\r\n const handlePageClick = (page: number) => {\r\n if (page === currentPage) {\r\n return\r\n }\r\n goToPage(page)\r\n window.location.reload()\r\n }\r\n const handlePrevClick = () => {\r\n if (currentPage - 1 < firstPage) {\r\n return\r\n }\r\n goToPage(currentPage - 1)\r\n window.location.reload()\r\n }\r\n const handleNextClick = () => {\r\n if (currentPage + 1 > pages) {\r\n return\r\n }\r\n goToPage(currentPage + 1)\r\n window.location.reload()\r\n }\r\n const filterInRangePage = (pageToCheck: number): boolean => {\r\n const adjacentPageToShow = 2\r\n if (pageToCheck === firstPage || pageToCheck === pages) return true\r\n\r\n if (currentPage === pageToCheck) return true\r\n\r\n if (\r\n currentPage < pageToCheck &&\r\n currentPage + adjacentPageToShow >= pageToCheck\r\n )\r\n return true\r\n\r\n if (\r\n currentPage > pageToCheck &&\r\n currentPage - adjacentPageToShow <= pageToCheck\r\n )\r\n return true\r\n\r\n return false\r\n }\r\n const addEmptyButton = (\r\n acc: (number | string)[],\r\n curr: number\r\n ): (number | string)[] => {\r\n if (curr === firstPage) {\r\n return [...acc, curr]\r\n }\r\n\r\n const lastEl = acc[acc.length - 1]\r\n if (lastEl === firstPage && curr - 1 > firstPage) {\r\n acc.push(emptyButtonLabel)\r\n }\r\n if (curr === pages && lastEl !== pages - 1) {\r\n acc.push(emptyButtonLabel)\r\n }\r\n return [...acc, curr]\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n handlePrevClick()}\r\n >\r\n \r\n \r\n {pagesArr\r\n .filter(filterInRangePage)\r\n .reduce(addEmptyButton, [])\r\n .map((page: number | string, i: number) =>\r\n typeof page === 'string' ? (\r\n \r\n \r\n \r\n ) : (\r\n handlePageClick(page)}\r\n >\r\n \r\n \r\n )\r\n )}\r\n handleNextClick()}\r\n >\r\n \r\n \r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default Pagination\r\n","import React, { useState } from 'react'\r\nimport './style.scss'\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport useQueryParams from '../../../../hooks/use-query-params.effect'\r\nimport { QueryParamsConst } from '../../../../constants/query-params.constants'\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst SearchFilterDropdown = ({\r\n dataVal,\r\n labelVal,\r\n defaultVal,\r\n setUpdateVal,\r\n reusultVal,\r\n}) => {\r\n const [page, setPage] = useQueryParams(QueryParamsConst.PAGE, '1')\r\n var options = dataVal?.map((x, index) => (\r\n \r\n ))\r\n const filterChange = (e) => {\r\n setUpdateVal(e.target.value)\r\n setPage('1')\r\n window.location.reload()\r\n }\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <>\r\n {\r\n <>\r\n \r\n {/* */}\r\n
    \r\n \r\n
    \r\n \r\n }\r\n \r\n )\r\n}\r\n\r\nexport default SearchFilterDropdown\r\n","import {\r\n TSearchPropsApiData,\r\n TSearchProps,\r\n TSearchItem,\r\n TSearchPropsItem,\r\n TSortPropsItem,\r\n TSort,\r\n TFFilterPropsItem,\r\n TFFilter,\r\n} from \"../types/Search.types\";\r\n\r\nexport class SearchApiModel {\r\n private readonly fields?: TSearchPropsApiData;\r\n\r\n constructor(props: TSearchProps) {\r\n this.fields = props?.fields?.apiData || null;\r\n }\r\n\r\n get counter(): number {\r\n return this.fields?.totalSearchResults || 0;\r\n }\r\n\r\n get results(): TSearchItem[] {\r\n return this.fields?.items?.map(\r\n ({\r\n title,\r\n description,\r\n link,\r\n highlight,\r\n PDFLink,\r\n PDFSize,\r\n AttachmentName,\r\n anchor,\r\n PDFanchor,\r\n }: TSearchPropsItem) => ({\r\n title,\r\n description,\r\n link,\r\n highlight,\r\n PDFLink,\r\n PDFSize,\r\n AttachmentName,\r\n anchor,\r\n PDFanchor,\r\n })\r\n );\r\n }\r\n\r\n get Sort(): TSort[] {\r\n return this.fields?.Sort?.map(({ Key, Value }: TSortPropsItem) => ({\r\n Key,\r\n Value,\r\n }));\r\n }\r\n\r\n get filter(): TFFilter[] {\r\n return this.fields?.filter?.map(({ Key, Value }: TFFilterPropsItem) => ({\r\n Key,\r\n Value,\r\n }));\r\n }\r\n\r\n get ReadMoreText(): string {\r\n return this.fields?.ReadMoreText;\r\n }\r\n get Pdflabel(): string {\r\n return this.fields?.Pdflabel;\r\n }\r\n get AttachmentName(): string {\r\n return this.fields?.AttachmentName;\r\n }\r\n get PdfIcon(): string {\r\n return this.fields?.PdfIcon;\r\n }\r\n get Filterlabel(): string {\r\n return this.fields?.Filterlabel;\r\n }\r\n get Sortlabel(): string {\r\n return this.fields?.Sortlabel;\r\n }\r\n}\r\n","import React, { FormEvent, useEffect, useRef, useState } from \"react\";\r\n\r\nimport \"./styles.scss\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport Pagination from \"./components/Pagination\";\r\nimport SearchFilterDropdown from \"./components/SearchFilterDropdown/index\";\r\nimport Suggestions from \"./components/Suggestions\";\r\nimport RoutableNotEditableLink from \"../../react-only-components/RoutableNotEditableLink\";\r\nimport useQueryParams from \"../../hooks/use-query-params.effect\";\r\nimport { QueryParamsConst } from \"../../constants/query-params.constants\";\r\nimport { SearchApiModel } from \"./models/SearchApiModel\";\r\nimport { TSearchItem, TSearchProps } from \"./types/Search.types\";\r\nimport { windowService } from \"../../utils/window.utils\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport {\r\n Text,\r\n withSitecoreContext,\r\n RichText,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\n\r\nconst Search = (props: TSearchProps) => {\r\n const { sitecoreContext } = props;\r\n const [page, setPage] = useQueryParams(QueryParamsConst.PAGE, \"1\");\r\n const [query, setQuery] = useQueryParams(QueryParamsConst.QUERY, \"\");\r\n const [perPage] = useQueryParams(QueryParamsConst.PER_PAGE, \"10\");\r\n const [filters, setFilters] = useQueryParams(QueryParamsConst.FILTERS, \"\");\r\n const [sort, setSort] = useQueryParams(QueryParamsConst.SORT, \"\");\r\n\r\n const [, setSuggestionQuery] = useState(\"\");\r\n const [isSuggestionsComponentVisible, setIsSuggestionsComponentVisible] =\r\n useState(false);\r\n\r\n const SUGGESTIONS_MIN_CHAR_LIMIT = 3;\r\n const SEPARATOR_CHAR = \",\";\r\n const model = new SearchApiModel(props);\r\n const pfeInputRef = useRef(null);\r\n const formRef = useRef(null);\r\n const pages = Math.ceil(model.counter / parseInt(perPage, 10));\r\n const activeFilters = filters.length ? filters.split(SEPARATOR_CHAR) : [];\r\n const { t } = useTranslation();\r\n\r\n const convertFileSize = (sizeInBytes) => {\r\n if (sizeInBytes) {\r\n const fielSize = (sizeInBytes / (1024 * 1024)).toFixed(2);\r\n const fielSizeNumber = parseInt(fielSize);\r\n if (fielSizeNumber < 1) {\r\n return (sizeInBytes / 1024).toFixed(2) + \" \" + \" KB\";\r\n } else return (sizeInBytes / (1024 * 1024)).toFixed(2) + \" \" + \"MB\";\r\n }\r\n };\r\n\r\n const goToNewSearch = () => {\r\n // debugger;\r\n const submitUrl = new URL(windowService().location.href.split(\"?\")[0]);\r\n if (submitUrl && pfeInputRef.current) {\r\n submitUrl.searchParams.append(\r\n QueryParamsConst.QUERY,\r\n pfeInputRef.current.value\r\n );\r\n submitUrl.searchParams.append(QueryParamsConst.PAGE, page);\r\n submitUrl.searchParams.append(QueryParamsConst.PER_PAGE, perPage);\r\n filters &&\r\n submitUrl.searchParams.append(QueryParamsConst.FILTERS, filters);\r\n sort && submitUrl.searchParams.append(QueryParamsConst.SORT, sort);\r\n\r\n windowService().location.href = submitUrl.toString();\r\n }\r\n };\r\n\r\n const onSubmit: (e: FormEvent) => void = (\r\n e: FormEvent\r\n ) => {\r\n e?.preventDefault();\r\n setQuery(pfeInputRef?.current?.value);\r\n setPage(\"1\");\r\n };\r\n\r\n const onPaginationChange = (selectedPage: number) =>\r\n setPage(selectedPage.toString());\r\n\r\n const onFiltersChange = (activeFilters: string[]) => {\r\n setFilters(activeFilters.join(SEPARATOR_CHAR));\r\n setPage(\"1\");\r\n };\r\n\r\n const onKeyUp: (e: React.KeyboardEvent) => void = (e) => {\r\n if (e?.key === \"Enter\") {\r\n formRef.current.dispatchEvent(new Event(\"submit\"));\r\n return;\r\n }\r\n\r\n updateSuggestionsQuery(e);\r\n };\r\n\r\n const updateSuggestionsQuery = (event) => {\r\n setSuggestionQuery(event.target.value);\r\n };\r\n\r\n const onUpdateQueryFromSuggestions = (q: string) => {\r\n pfeInputRef.current.value = q;\r\n setIsSuggestionsComponentVisible(false);\r\n setQuery(q);\r\n setPage(\"1\");\r\n };\r\n\r\n const handleClickOutside = (event) => {\r\n if (formRef?.current?.contains(event.target)) {\r\n return;\r\n }\r\n\r\n setIsSuggestionsComponentVisible(false);\r\n };\r\n\r\n useEffect(() => goToNewSearch(), [page, query]);\r\n\r\n useEffect(() => {\r\n document.querySelector(\"body\").style.backgroundColor = \"#fff\";\r\n document.addEventListener(\"mouseup\", handleClickOutside);\r\n return () => {\r\n document.removeEventListener(\"mouseup\", handleClickOutside);\r\n };\r\n }, []);\r\n\r\n return (\r\n \r\n {props.fields && (\r\n
    \r\n
    \r\n

    SEARCH

    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n {isSuggestionsComponentVisible && (\r\n \r\n )}\r\n
    \r\n
    \r\n\r\n
    \r\n {query !== \"\" && (\r\n

    \r\n {\" \"}\r\n {model?.counter} {t(\"CnhindustrialcomResults\")}{\" \"}\r\n {query && {query}}\r\n

    \r\n )}\r\n {\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n }\r\n
    \r\n\r\n {query !== \"\" && (\r\n
    \r\n {model?.results?.length ? (\r\n
    \r\n {model?.results?.map((result: TSearchItem, i) => (\r\n \r\n
    \r\n
    \r\n {result.PDFLink ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {result.PDFLink ? (\r\n
    \r\n \r\n

    \r\n \r\n \r\n \r\n \r\n

    \r\n
    \r\n ) : null}\r\n
    \r\n
    \r\n \r\n ))}\r\n
    \r\n ) : (\r\n

    \r\n {t(\"CnhindustrialcomNoResults\")}\r\n

    \r\n )}\r\n
    \r\n )}\r\n\r\n {model?.results?.length > 0 && model?.counter > 10 && (\r\n \r\n )}\r\n
    \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(Search);\r\n","import React, {\r\n FormEvent,\r\n useEffect,\r\n useRef,\r\n useState,\r\n FunctionComponent,\r\n} from \"react\";\r\nimport \"./style.scss\";\r\nimport { windowService } from \"../../utils/window.utils\";\r\nimport { QueryParamsConst } from \"../../constants/query-params.constants\";\r\nimport useQueryParams from \"../../hooks/use-query-params.effect\";\r\nimport Suggestions from \"../Search/components/Suggestions\";\r\nimport { StringField } from \"../../types/types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport {\r\n Text,\r\n withSitecoreContext,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nexport type SearchFieldValues = {\r\n value: {\r\n href: string;\r\n id: string;\r\n linktype: string;\r\n title: string;\r\n };\r\n};\r\nexport type SearchRootValues = {\r\n id: string;\r\n};\r\nexport interface SearchBoxFields {\r\n \"Bottom padding\"?: StringField;\r\n \"Button text\"?: StringField;\r\n Placeholder?: StringField;\r\n \"Box Title\"?: StringField;\r\n \"Upper padding\"?: StringField;\r\n \"Search Page\"?: SearchFieldValues;\r\n \"Search Root\"?: SearchRootValues;\r\n}\r\ninterface SearchBoxProps {\r\n fields?: SearchBoxFields;\r\n sitecoreContext: {\r\n pageEditing: boolean;\r\n language: string;\r\n itemId: string;\r\n };\r\n}\r\n\r\nconst SearchBox: FunctionComponent = ({\r\n fields,\r\n sitecoreContext,\r\n}) => {\r\n const isEE = sitecoreContext?.pageEditing;\r\n // const model = new SearchBoxModel(props)\r\n const bottomPadding = isExperienceEditorActive()\r\n ? null\r\n : +fields?.[\"Bottom padding\"]?.value;\r\n const upperPadding = isExperienceEditorActive()\r\n ? null\r\n : +fields?.[\"Upper padding\"]?.value;\r\n\r\n const [inputVal, setInputVal] = useState(\"\");\r\n\r\n const [page] = useQueryParams(QueryParamsConst.PAGE, \"1\");\r\n const [perPage] = useQueryParams(QueryParamsConst.PER_PAGE, \"10\");\r\n const queryKey = QueryParamsConst.QUERY;\r\n const pfeInputRef = useRef(null);\r\n const formRef = useRef(null);\r\n const [, setSuggestionQuery] = useState(\"\");\r\n const [isSuggestionsComponentVisible, setIsSuggestionsComponentVisible] =\r\n useState(false);\r\n\r\n const SUGGESTIONS_DEBOUNCE_TIME_IN_MS = 300;\r\n const SUGGESTIONS_MIN_CHAR_LIMIT = 3;\r\n\r\n let submitUrl: URL;\r\n try {\r\n const href = fields?.[\"Search Page\"].value?.href;\r\n const origin = windowService()?.location?.origin;\r\n\r\n submitUrl = href.startsWith(\"/\") ? new URL(href, origin) : new URL(href);\r\n } catch (e) {\r\n console.warn(e);\r\n }\r\n\r\n const onSubmit: (e: FormEvent) => void = (e) => {\r\n e.preventDefault();\r\n if (\r\n submitUrl &&\r\n pfeInputRef.current &&\r\n !submitUrl.searchParams.has(queryKey)\r\n ) {\r\n submitUrl.searchParams.append(queryKey, pfeInputRef.current.value);\r\n submitUrl.searchParams.append(QueryParamsConst.PAGE, page);\r\n submitUrl.searchParams.append(QueryParamsConst.PER_PAGE, perPage);\r\n windowService().location.href = submitUrl.toString();\r\n }\r\n };\r\n const onKeyUp: (e: React.KeyboardEvent) => void = (e) => {\r\n if (inputVal) {\r\n if (e?.key === \"Enter\") {\r\n formRef.current.dispatchEvent(new Event(\"submit\"));\r\n return;\r\n }\r\n }\r\n\r\n updateSuggestionsQuery(e); //debounce(updateSuggestionsQuery, SUGGESTIONS_DEBOUNCE_TIME_IN_MS)\r\n };\r\n\r\n const updateSuggestionsQuery = (event) => {\r\n setSuggestionQuery(event.target.value);\r\n //setIsSuggestionsComponentVisible(true);\r\n };\r\n\r\n const onUpdateQueryFromSuggestions = (q: string) => {\r\n pfeInputRef.current.value = q;\r\n setIsSuggestionsComponentVisible(false);\r\n formRef.current.dispatchEvent(new Event(\"submit\"));\r\n };\r\n\r\n const handleClickOutside = (event) => {\r\n if (formRef?.current?.contains(event.target)) {\r\n return;\r\n }\r\n\r\n setIsSuggestionsComponentVisible(false);\r\n };\r\n\r\n useEffect(() => {\r\n document.addEventListener(\"mouseup\", handleClickOutside);\r\n return () => {\r\n document.removeEventListener(\"mouseup\", handleClickOutside);\r\n };\r\n }, []);\r\n\r\n return (\r\n \r\n {fields ? (\r\n \r\n
    \r\n \r\n\r\n
    \r\n setInputVal(e.target.value)}\r\n />\r\n\r\n {/* */}\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n {isSuggestionsComponentVisible && (\r\n \r\n )}\r\n
    \r\n \r\n ) : (\r\n (isExperienceEditorActive() || isEE) && (\r\n
    \r\n
    \r\n \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n )\r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(SearchBox);\r\n","import React, { useEffect, useState } from \"react\";\r\nimport SearchModule from \"../..\";\r\nimport \"./index.scss\";\r\nexport const useOnHydrate = (fn) => {\r\n const [value, setValue] = React.useState();\r\n React.useEffect(() => setValue(fn()), []);\r\n return value;\r\n};\r\nconst Pagination = ({ page, setPage, pages }) => {\r\n let num = Number(page);\r\n const [pageSelected, setPageSelected] = useState(null);\r\n useEffect(() => {\r\n setPageSelected(num);\r\n }, []);\r\n const emptyButtonLabel = \"...\";\r\n const firstPage = 1;\r\n const pagesArr = new Array(pages).fill(null).map((_, i: number) => ++i);\r\n const filterInRangePage = (pageToCheck: number): boolean => {\r\n const adjacentPageToShow = 2;\r\n if (pageToCheck === 1 || pageToCheck === pages) return true;\r\n if (num == pageToCheck) return true;\r\n if (num < pageToCheck && num + adjacentPageToShow >= pageToCheck)\r\n return true;\r\n if (num > pageToCheck && num - adjacentPageToShow <= pageToCheck)\r\n return true;\r\n return false;\r\n };\r\n const handlePrevClick = () => {\r\n if (num - 1 < 1) {\r\n return;\r\n } else {\r\n setPage(`${num - 1}`);\r\n }\r\n window.location.reload();\r\n };\r\n const handleNextClick = () => {\r\n if (num + 1 > pages.length) {\r\n return;\r\n } else {\r\n setPage(`${num + 1}`);\r\n }\r\n window.location.reload();\r\n };\r\n const addEmptyButton = (\r\n acc: (number | string)[],\r\n curr: number\r\n ): (number | string)[] => {\r\n if (curr === firstPage) {\r\n return [...acc, curr];\r\n }\r\n const lastEl = acc[acc.length - 1];\r\n if (lastEl === firstPage && curr - 1 > firstPage) {\r\n acc.push(emptyButtonLabel);\r\n }\r\n if (curr === pages && lastEl !== pages - 1) {\r\n acc.push(emptyButtonLabel);\r\n }\r\n return [...acc, curr];\r\n };\r\n return (\r\n <>\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {pagesArr\r\n .filter(filterInRangePage)\r\n .reduce(addEmptyButton, [])\r\n .map((p: number | string, i: number) => {\r\n console.log(num, pageSelected, p);\r\n if (pageSelected == p) {\r\n return (\r\n {\r\n if (num == p) {\r\n return;\r\n }\r\n setPage(`${p}`);\r\n window.location.reload();\r\n }}\r\n className=\"SearchPagination__button active\"\r\n >\r\n {p}\r\n \r\n );\r\n } else {\r\n return (\r\n {\r\n if (\"...\" == p) {\r\n return;\r\n }\r\n setPage(`${p}`);\r\n window.location.reload();\r\n }}\r\n className=\"SearchPagination__button \"\r\n >\r\n {p}\r\n \r\n );\r\n }\r\n })}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default Pagination;\r\n","import React, { useState } from \"react\"\r\nimport \"./style.scss\"\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n} from \"@sitecore-jss/sitecore-jss-react\"\r\nimport useQueryParams from \"../../../../hooks/use-query-params.effect\"\r\nimport { QueryParamsConst } from \"../../../../constants/query-params.constants\"\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\n\r\nconst SearchFilterDropdown = ({ queryText, pageID, type, currentPage, itemPerPage, search, isPressRelease\r\n}) => {const { t } = useTranslation();\r\n const [searchFilter,setsearchFilter] = useState(\"\");\r\n\r\n const handleChange = (event) => {\r\n setsearchFilter(event.target.value);\r\n\r\n if (queryText && queryText != \"\") {\r\n let redirectUrl = \"\";\r\n if (type && type != \"\" && pageID && pageID != \"\") {\r\n redirectUrl = `${search}?q=${queryText}&page=1&take=${itemPerPage}&type=${type}&pageID=${pageID}`;\r\n } else {\r\n redirectUrl = `${search}?q=${queryText}&page=1&take=${itemPerPage}`; \r\n }\r\n if (event.target.value == \"true\") {\r\n redirectUrl = redirectUrl.concat(\"&ispr=true\");\r\n } else if (event.target.value == \"false\") {\r\n redirectUrl = redirectUrl.concat(\"&ispr=false\")\r\n }\r\n\r\n if (typeof window !== \"undefined\") {\r\n window.location.href = redirectUrl;\r\n }\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n <>\r\n \r\n
    \r\n \r\n
    \r\n \r\n }\r\n \r\n )\r\n}\r\n\r\nexport default SearchFilterDropdown\r\n","import React, { useEffect } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Placeholder,\r\n RichText,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"./index.scss\";\r\nimport { QueryParamsConst } from \"../../constants/query-params.constants\";\r\nimport useQueryParams from \"../../hooks/use-query-params.effect\";\r\nimport Pagination from \"./components/Pagination\";\r\nimport SearchFilterDropdown from \"./components/SearchFilterDropdown\";\r\nimport { useTranslation } from \"react-i18next\";\r\nconst { useState } = React;\r\n\r\n\r\nconst SearchModule = (props) => {\r\n const results = props?.fields?.apidata?.items;\r\n const search = props?.fields?.apidata?.searchPage;\r\n const numberOfResults = props?.fields?.apidata?.totalSearchResults;\r\n const [page, setPage] = useQueryParams(QueryParamsConst.PAGE, \"1\");\r\n const itemPerPage = 10;\r\n const pages: number = Math.ceil(numberOfResults / itemPerPage);\r\n const { t } = useTranslation();\r\n \r\n\r\n let urlParams;\r\n let currentPage: number;\r\n if (typeof window !== \"undefined\") {\r\n urlParams = new URLSearchParams(window.location.search);\r\n }\r\n if (urlParams != undefined) {\r\n currentPage =\r\n urlParams.get(\"page\") != undefined && urlParams.get(\"page\") != \"\"\r\n ? urlParams.get(\"page\")\r\n : 1;\r\n }\r\n\r\n let queryText;\r\n if (urlParams != undefined) {\r\n queryText =\r\n urlParams.get(\"q\") != undefined && urlParams.get(\"q\") != \"\"\r\n ? urlParams.get(\"q\")\r\n : \"\";\r\n }\r\n let type;\r\n if (urlParams != undefined) {\r\n type =\r\n urlParams.get(\"type\") != undefined && urlParams.get(\"type\") != \"\"\r\n ? urlParams.get(\"type\")\r\n : \"\";\r\n }\r\n let pageID;\r\n if (urlParams != undefined) {\r\n pageID =\r\n urlParams.get(\"pageID\") != undefined && urlParams.get(\"pageID\") != \"\"\r\n ? urlParams.get(\"pageID\")\r\n : \"\";\r\n }\r\n\r\n let isPressRelease;\r\n if (urlParams != undefined) {\r\n isPressRelease =\r\n urlParams.get(\"ispr\") != undefined && urlParams.get(\"ispr\") != \"\"\r\n ? urlParams.get(\"ispr\")\r\n : \"\";\r\n }\r\n\r\n const [qT, setValue] = useState(queryText);\r\n const handleChange = (e) => setValue(e.target.value);\r\n const hasSearched = queryText != undefined && queryText != \"\" ? true : false;\r\n let baseUrl = \"\";\r\n if (typeof window !== \"undefined\") {\r\n baseUrl = window.location.origin;\r\n }\r\n\r\n useEffect(() => {\r\n if (qT.length > 0) {\r\n document.getElementById(\"searchInputCrossSvg\").style.display = \"block\";\r\n } else {\r\n document.getElementById(\"searchInputCrossSvg\").style.display = \"none\";\r\n }\r\n }, [qT]);\r\n\r\n const activeFieldSet = () => {\r\n if (document) {\r\n document.getElementById(\"searchFieldset\").classList.add(\"active\");\r\n }\r\n };\r\n const removeActiveFieldSet = () => {\r\n if (document) {\r\n document.getElementById(\"searchFieldset\").classList.remove(\"active\");\r\n }\r\n };\r\n const onInputSearchKeyup = (e) => {\r\n if (e.keyCode == \"13\") {\r\n //enter\r\n searchSitecore();\r\n }\r\n };\r\n\r\n const searchSitecore = () => {\r\n const currentPage = 1;\r\n const valSearch = (\r\n document.getElementById(\"searchFieldsetInput\") as HTMLInputElement\r\n ).value;\r\n if (valSearch && valSearch != \"\") {\r\n let redirectUrl = \"\";\r\n if (type && type != \"\" && pageID && pageID != \"\") {\r\n redirectUrl = `${search}?q=${valSearch}&type=${type}&pageID=${pageID}`;\r\n } else {\r\n redirectUrl = `${search}?q=${valSearch}&page=${currentPage}&take=${itemPerPage}`; //&filters=Vehicles\r\n }\r\n if (typeof window !== \"undefined\") {\r\n window.location.href = redirectUrl;\r\n }\r\n }\r\n };\r\n\r\n const clearInputSearch = () => {\r\n setValue(\"\");\r\n };\r\n\r\n console.log(currentPage, \"dd\");\r\n\r\n return (\r\n <>\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {/* */}\r\n {numberOfResults > 0 ? (\r\n <>\r\n
    \r\n

    \r\n {\" \"}\r\n {numberOfResults} {t(\"CnhindustrialcomResults\")}{\" \"}\r\n {queryText}\r\n

    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n {results?.map((r, i) => {\r\n return (\r\n \r\n
    \r\n
    \r\n

    \r\n {r.Title}\r\n

    \r\n \r\n
    \r\n\r\n

    \r\n
    \r\n
    \r\n );\r\n })}\r\n {numberOfResults > itemPerPage ? (\r\n \r\n ) : (\r\n \"\"\r\n )}\r\n \r\n ) : (\r\n <>\r\n {hasSearched == true ? (\r\n
    \r\n

    \r\n {t(\"CnhindustrialcomNoResults\")}\r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n ) : (\r\n <>\r\n )}\r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(SearchModule);\r\n","import {\r\n SectionListFields,\r\n SectionListProps,\r\n SectionList,\r\n} from \"../types/SectionList.types\";\r\n\r\nexport class SectionListModel {\r\n private readonly fields: SectionListFields;\r\n\r\n constructor(props: SectionListProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get layout() {\r\n return this.fields?.Layout\r\n }\r\n}\r\n","import React, { useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { SectionListModel } from \"./models/SectionList.model\";\r\nimport { SectionListProps } from \"./types/SectionList.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst SectionList = (props: SectionListProps) => {\r\n const model = new SectionListModel(props);\r\n const getSectionsList = props?.fields?.Sections;\r\n console.log(\"sections list\", props, getSectionsList.length);\r\n return (\r\n props?.fields && (\r\n
    \r\n {getSectionsList.map((item, i) => (\r\n
    \r\n \r\n \r\n \r\n

    \r\n \r\n

    \r\n
    \r\n \r\n
    \r\n
    \r\n {item?.fields?.Link?.value?.anchor ?\r\n \r\n {item?.fields?.Link?.value?.text}\r\n \r\n :\r\n \r\n {item?.fields?.Link?.value?.text}\r\n \r\n }\r\n
    \r\n
    \r\n ))}\r\n
    \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(SectionList);\r\n","import React, { VFC } from 'react';\r\nimport { TSummarySpecsProps } from '../../types/SeriesListing.types';\r\n\r\nconst SummarySpecs: VFC = ({summarySpecs}) => {\r\n return (\r\n
      \r\n {summarySpecs.map(({key,value}, index) => (\r\n
    • \r\n

      \r\n {key}\r\n

      \r\n

      \r\n {value}\r\n

      \r\n
    • ))}\r\n
    \r\n );\r\n}\r\n\r\nexport default SummarySpecs;","import React, { VFC } from 'react';\r\nimport RoutableNotEditableLink from '../../../../react-only-components/RoutableNotEditableLink';\r\nimport { TProductCard } from '../../types/SeriesListing.types';\r\nimport SummarySpecs from './SummarySpecs';\r\nimport '../../../../styles/@shared/product-card.scss';\r\nimport { appendToUrlPath } from '../../../../utils/linkUtils';\r\nimport CTAWithArrow from '../../../../react-only-components/CTAWithArrow';\r\n\r\nconst ProductCard: VFC = (props) => {\r\n const {\r\n titleUrl,\r\n title,\r\n eyebrow,\r\n description,\r\n summarySpecs,\r\n button1,\r\n button2,\r\n thumbnail,\r\n thumbnailAlt,\r\n baseUrl\r\n } = props;\r\n \r\n\r\n return ( );\r\n};\r\n\r\nexport default ProductCard;\r\n","export default \r\n{\r\n \"items\": [\r\n {\r\n \"id\": 50990,\r\n \"titleUrl\": \"afs-connect-steiger-series\",\r\n \"title\": \"AFS Connect™ Steiger Series\",\r\n \"formattedTitle\": \"AFS Connect Steiger Series\",\r\n \"eyebrow\": \"4WD ROWTRAC\",\r\n \"description\": \"The most powerful 4WD tractor, record-setting fuel efficiency, industry-leading comfort, and the ability to remotely manage your farm, fleet and data with AFS Connect™. All new AFS Connect™ Steiger® tractors come with a five-year AFS Connect technology subscription.\",\r\n \"summarySpecs\": [\r\n {\r\n \"key\": \"Transmission\",\r\n \"value\": \"PowerDrive or CVXDrive\"\r\n },\r\n {\r\n \"key\": \"Horsepower\",\r\n \"value\": \"370 - 692 HP\"\r\n },\r\n {\r\n \"key\": \"FPT Engine\",\r\n \"value\": \"8.7 / 12.9 L\"\r\n },\r\n {\r\n \"key\": \"Hydraulic capacity\",\r\n \"value\": \"Up to 113 gpm\"\r\n }\r\n ],\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=202\"\r\n },\r\n \"button2\": {\r\n \"label\": \"Build & Price\",\r\n \"url\": \"/northamerica/en-us/Pages/Build-and-Price-Iframe.aspx?line=TRACTORS\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-avanade.stylelabs.io/api/public/content/0f933d17d71f4e8485c8c49ea040923c?v=3cac78e1\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/ebe2dac83cc94278921c9654fe6681ef?v=71ea6b8d\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/ebe2dac83cc94278921c9654fe6681ef?v=71ea6b8d\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 50991,\r\n \"titleUrl\": \"magnum-series\",\r\n \"title\": \"Magnum Series\",\r\n \"formattedTitle\": \"Magnum Series\",\r\n \"eyebrow\": \"4WD ROWTRAC\",\r\n \"description\": \"The ultimate mix of industry-leading horsepower and fuel efficiency and available in wheel or track configurations. All Model Year 2019 Magnum tractors will include a three-year, 2,000-hour factory warranty.\",\r\n \"summarySpecs\": [\r\n {\r\n \"key\": \"Horsepower\",\r\n \"value\": \"180 - 380 HP\"\r\n },\r\n {\r\n \"key\": \"Transmission\",\r\n \"value\": \"PowerDrive or CVXDrive\"\r\n },\r\n {\r\n \"key\": \"FPT Engine\",\r\n \"value\": \"6.7 / 8.7 L\"\r\n },\r\n {\r\n \"key\": \"Hydraulic capacity\",\r\n \"value\": \"Up to 75 gpm\"\r\n }\r\n ],\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=202\"\r\n },\r\n \"button2\": {\r\n \"label\": \"Build & Price\",\r\n \"url\": \"/northamerica/en-us/Pages/Build-and-Price-Iframe.aspx?line=TRACTORS\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 50992,\r\n \"titleUrl\": \"puma-series\",\r\n \"title\": \"Puma Series\",\r\n \"formattedTitle\": \"Puma Series\",\r\n \"eyebrow\": \"4WD ROWTRAC\",\r\n \"description\": \"An efficient, multipurpose tractor line designed with just the right size and power to handle a variety of tasks in your operation.\",\r\n \"summarySpecs\": [\r\n {\r\n \"key\": \"Horsepower\",\r\n \"value\": \"180 - 380 HP\"\r\n },\r\n {\r\n \"key\": \"Transmission\",\r\n \"value\": \"PowerDrive or CVXDrive\"\r\n },\r\n {\r\n \"key\": \"FPT Engine\",\r\n \"value\": \"6.7 / 8.7 L\"\r\n },\r\n {\r\n \"key\": \"Hydraulic capacity\",\r\n \"value\": \"Up to 75 gpm\"\r\n }\r\n ],\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=202\"\r\n },\r\n \"button2\": {\r\n \"label\": \"Build & Price\",\r\n \"url\": \"/northamerica/en-us/Pages/Build-and-Price-Iframe.aspx?line=TRACTORS\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 52272,\r\n \"titleUrl\": \"preownedtractors\",\r\n \"title\": \"Pre-Owned Tractors\",\r\n \"formattedTitle\": \"Pre-Owned Tractors\",\r\n \"eyebrow\": \"4WD, ROWTRAC & TRACK\",\r\n \"description\": null,\r\n \"summarySpecs\": [],\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=103\"\r\n },\r\n \"button2\": {\r\n \"label\": \"View Offers\",\r\n \"url\": \"/northamerica/en-us/special-offer-detail?seriesGuid=4ddabf3c-50fb-4447-9304-9ea82d8052f1\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a1d2f7060a4e446b88b614d3157dee7f?v=d6c998a5\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a1d2f7060a4e446b88b614d3157dee7f?v=d6c998a5\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a1d2f7060a4e446b88b614d3157dee7f?v=d6c998a5\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 52299,\r\n \"titleUrl\": \"magnumseries2014present\",\r\n \"title\": \"Magnum Series (2014-Present)\",\r\n \"formattedTitle\": \"Magnum Series (2014-Present)\",\r\n \"eyebrow\": \"4WD, ROWTRAC & TRACK\",\r\n \"description\": \"This model list for MyCIH use only.\",\r\n \"summarySpecs\": null,\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=202\"\r\n },\r\n \"button2\": {\r\n \"label\": \"Build & Price\",\r\n \"url\": \"/northamerica/en-us/Pages/Build-and-Price-Iframe.aspx?line=TRACTORS\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/4f51537def474d02ae25ce1c7e751a96?v=88811375\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 52302,\r\n \"titleUrl\": \"pumaseries2014present\",\r\n \"title\": \"Puma Series (2014-Present)\",\r\n \"formattedTitle\": \"Puma Series (2014-Present)\",\r\n \"eyebrow\": \"ALL PURPOSE\",\r\n \"description\": \"This model list for MyCIH use only.\\n\",\r\n \"summarySpecs\": [\r\n {\r\n \"key\": \"Transmission\",\r\n \"value\": \"PowerDrive or CVXDrive\"\r\n },\r\n {\r\n \"key\": \"Horsepower\",\r\n \"value\": \"370 - 692 HP\"\r\n },\r\n {\r\n \"key\": \"FPT engine\",\r\n \"value\": \"8.7 / 12.9 L\"\r\n },\r\n {\r\n \"key\": \"Hydraulic Capacity\",\r\n \"value\": \"Up to 113 gpm\"\r\n }\r\n ],\r\n \"button1\": {\r\n \"label\": \"Learn More\",\r\n \"url\": \"/northamerica/en-us/products/loaders-attachments/l10-series-loaders\"\r\n },\r\n \"button2\": null,\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/a4923af5444e45ae84731ff3cbdf41e4?v=c3c27678\",\r\n \"fullAlt\": null\r\n },\r\n {\r\n \"id\": 52314,\r\n \"titleUrl\": \"steigerseries20112013\",\r\n \"title\": \"Steiger Series (2011-2013)\",\r\n \"formattedTitle\": \"Steiger Series (2011-2013)\",\r\n \"eyebrow\": \"ALL PURPOSE\",\r\n \"description\": \"This model list for MyCIH use only.\",\r\n \"summarySpecs\": [\r\n {\r\n \"key\": \"Cutting Widths\",\r\n \"value\": \"25 - 45 ft.\"\r\n },\r\n {\r\n \"key\": \"Knife Width\",\r\n \"value\": \"3 in.\"\r\n },\r\n {\r\n \"key\": \"Reel Speed\",\r\n \"value\": \"0 - 60 RPM\"\r\n },\r\n {\r\n \"key\": \"Reel Diameter\",\r\n \"value\": \"42 in.\"\r\n }\r\n ],\r\n \"button1\": {\r\n \"label\": \"Compare Specs\",\r\n \"url\": \"/northamerica/en-us/Pages/Comparison.aspx?family=Tractors&series=103\"\r\n },\r\n \"button2\": {\r\n \"label\": \"View Offers\",\r\n \"url\": \"/northamerica/en-us/special-offer-detail?seriesGuid=4ddabf3c-50fb-4447-9304-9ea82d8052f1\"\r\n },\r\n \"bigthumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/cc439416dcdd4cb1a67217ca76aaa2e7?v=6332efd8\",\r\n \"bigthumbnailAlt\": null,\r\n \"thumbnail\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/cc439416dcdd4cb1a67217ca76aaa2e7?v=6332efd8\",\r\n \"thumbnailAlt\": null,\r\n \"full\": \"https://corporatei-p-001-delivery.sitecorecontenthub.cloud/api/public/content/cc439416dcdd4cb1a67217ca76aaa2e7?v=6332efd8\",\r\n \"fullAlt\": null\r\n }\r\n ],\r\n \"total\": 7\r\n}","import { TProductCard, TSeriesListing, TSeriesListingProps, TSeriesListingItemData } from '../types/SeriesListing.types';\r\nimport mock from '../../../mocks/ContentHubSeriesListing.mock';\r\nimport { StringValueNode } from 'graphql';\r\n\r\nexport class SeriesListingModel {\r\n private readonly data?: TSeriesListing;\r\n private readonly itemData?: TSeriesListingItemData;\r\n constructor(props: TSeriesListingProps) {\r\n this.data = props.fields.apiData || null;\r\n this.itemData = props.fields.itemData || null;\r\n }\r\n\r\n get items(): TProductCard[] {\r\n return this.data?.items ?? mock.items;\r\n }\r\n\r\n get total(): number {\r\n return this.data?.total ?? mock.total;\r\n }\r\n\r\n get baseUrl(): string {\r\n return this.itemData?.contextItemUrl || '';\r\n }\r\n}\r\n","import React, { VFC } from \"react\";\r\nimport { TSeriesListingProps } from \"./types/SeriesListing.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport ProductCard from \"./components/ProductCard\";\r\nimport { SeriesListingModel } from \"./models/SeriesListing.model\";\r\nimport \"../../styles/@shared/product-card-dashboard.scss\";\r\n\r\nconst SeriesListing: VFC = (props) => {\r\n const model = new SeriesListingModel(props);\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n
    \r\n {model.items.map((productCard) => (\r\n \r\n ))}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default SeriesListing;\r\n","import React from 'react'\r\n// import { SimpleCardListModel } from \"./models/SimpleCardList.model\"\r\nimport {\r\n Image,\r\n Link,\r\n RichText,\r\n isExperienceEditorActive,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { SimpleCardListProps } from './types/SimpleCardList.types'\r\nimport './index.scss'\r\n\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\nconst SimpleCardList = (props: SimpleCardListProps) => {\r\n const SimpleCardList = props.fields?.['Cards list']\r\n\r\n return (\r\n
    \r\n {props.fields && SimpleCardList && (\r\n
    \r\n {SimpleCardList.map((item, index) => {\r\n return (\r\n
    \r\n
    \r\n \r\n 0\r\n ? item?.fields?.ImageMobile\r\n : item?.fields?.AllowFallbackForMobile?.value &&\r\n item?.fields?.Image\r\n }\r\n className=\"simplecard-lists-full__image mobileImage\"\r\n />\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n {item.fields?.GeneralLink?.value?.text}\r\n \r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n
    \r\n )\r\n })}\r\n
    \r\n )}\r\n
    \r\n )\r\n}\r\n\r\nexport default SimpleCardList\r\n","import React from \"react\";\r\n\r\nconst Spacer = (props) => {\r\n const heightPX = props.params.HeightInPixels + \"px\";\r\n\r\n return
    ;\r\n};\r\nexport default Spacer;\r\n","import React, { FunctionComponent } from \"react\";\r\nimport { Link, Image, RichText, isExperienceEditorActive } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\nimport { SpecialOffersSlideModel } from \"./fields.model\";\r\n\r\nconst CarouselSlide: FunctionComponent<{ model: SpecialOffersSlideModel, isEE: boolean }> = ({ model, isEE }) => {\r\n return (\r\n <>\r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n { model.type.value === \"offerCardWide\" && (isEE || (model.buttonPrimary?.value?.text || model.buttonPrimary?.value?.href)) && (\r\n \r\n \r\n \r\n )}\r\n {\r\n (isEE || (model.buttonSecondary?.value?.text || model.buttonSecondary?.value?.href))\r\n && \r\n \r\n \r\n }\r\n \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default CarouselSlide;\r\n","import { SpecialOffersFields } from \"./fields.definitions\";\r\n\r\nconst fieldsMock: SpecialOffersFields = {\r\n \"Title\": {\r\n \"value\": \"Special offers\"\r\n },\r\n eyebrow: {\r\n value: 'OPTIONAL EYEBROW',\r\n },\r\n \"link\":{\r\n \"value\":{\r\n \"href\":\"\",\r\n \"text\":\"OPTIONAL CTA\",\r\n \"linktype\":\"external\",\r\n \"url\":\"\",\r\n \"anchor\":\"\",\r\n \"target\":\"\"\r\n },\r\n },\r\n \"Subtitle\": {\r\n \"value\": \" offers a wide variety of agricultural machinery products that are designed to improve productivity​​​​​​ for farmers and contractors. Explore our special offers!\"\r\n },\r\n \"Cards\": [\r\n {\r\n \"fields\": {\r\n \"Label\": {\r\n \"value\": \"TRACTORS\"\r\n },\r\n \"Badge Link\": {\r\n \"value\": {\r\n href: \"/products/tractors\",\r\n text: \"TRACTORS\"\r\n }\r\n },\r\n \"Button Primary\": {\r\n \"value\": {\r\n \"href\": \"/special-offer-detail?seriesGuid=bed8078b-804d-4409-9bbe-8c7094820f46\",\r\n \"text\": \"VIEW ALL\",\r\n \"url\": \"/special-offer-detail?seriesGuid=bed8078b-804d-4409-9bbe-8c7094820f46\",\r\n \"title\": \"View all\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Button Secondary\": {\r\n \"value\": {\r\n \"href\": \"/Pages/Build-and-Price-Iframe.aspx?series=STEIGER%20TRACTORS\",\r\n \"text\": \"BUILD & PRICE\",\r\n \"url\": \"/Pages/Build-and-Price-Iframe.aspx?series=STEIGER%20TRACTORS\",\r\n \"title\": \"Build & price\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Card Type\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"offerCardWide\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"Offer Card Wide\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"

    2.75%

    Mocked fixed rate for 60 months\"\r\n },\r\n \"Subtitle\": {\r\n \"value\": \"on a Steiger® tractor\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/Steiger 420 with Early Riser 1255_GPS-0331_07-14_mr 1.jpg\",\r\n \"alt\": \"\",\r\n \"width\": 664,\r\n \"height\": 240\r\n }\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Label\": {\r\n \"value\": \"TRACTORS\"\r\n },\r\n \"Badge Link\": {\r\n \"value\": {\r\n href: \"/products/tractors\",\r\n text: \"TRACTORS\"\r\n }\r\n },\r\n \"Button Primary\": {\r\n \"value\": {\r\n \"href\": \"\"\r\n }\r\n },\r\n \"Button Secondary\": {\r\n \"value\": {\r\n \"href\": \"/products/tractors/optum-series\",\r\n \"text\": \"EXPLORE OFFER\",\r\n \"url\": \"/products/tractors/optum-series\",\r\n \"title\": \"Explore Offer\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Card Type\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"offerCardNarrow\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"Offer Card Narrow\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"

    2.75%

    fixed rate for 60 months\"\r\n },\r\n \"Subtitle\": {\r\n \"value\": \"for Optum™ series\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/SpecialOffers_1.jpg\",\r\n \"alt\": \"\",\r\n \"width\": 664,\r\n \"height\": 240\r\n }\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Label\": {\r\n \"value\": \"BALERS\"\r\n },\r\n \"Badge Link\": {\r\n \"value\": {\r\n href: \"/products/tractors\",\r\n text: \"TRACTORS\"\r\n }\r\n },\r\n \"Button Primary\": {\r\n \"value\": {\r\n \"href\": \"\"\r\n }\r\n },\r\n \"Button Secondary\": {\r\n \"value\": {\r\n \"href\": \"/Pages/Build-and-Price-Iframe.aspx?series=SQUARE%20BALERS\",\r\n \"text\": \"BUILD & PRICE\",\r\n \"url\": \"/Pages/Build-and-Price-Iframe.aspx?series=SQUARE%20BALERS\",\r\n \"title\": \"Build & price\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Card Type\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"offerCardNarrow\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"Offer Card Narrow\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"

    0%

    for 48 months\"\r\n },\r\n \"Subtitle\": {\r\n \"value\": \"on Large Square Balers\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/SpecialOffers_2.jpg\",\r\n \"alt\": \"\",\r\n \"width\": 664,\r\n \"height\": 240\r\n }\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Label\": {\r\n \"value\": \"TRACTORS\"\r\n },\r\n \"Badge Link\": {\r\n \"value\": {\r\n href: \"/products/tractors\",\r\n text: \"TRACTORS\"\r\n }\r\n },\r\n \"Button Primary\": {\r\n \"value\": {\r\n \"href\": \"\"\r\n }\r\n },\r\n \"Button Secondary\": {\r\n \"value\": {\r\n \"href\": \"/products/tractors/vestrum-series\",\r\n \"text\": \"EXPLORE OFFER\",\r\n \"url\": \"/products/tractors/vestrum-series\",\r\n \"title\": \"Explore offer\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Card Type\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"offerCardNarrow\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"Offer Card Narrow\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"

    0%

    for 48 months\"\r\n },\r\n \"Subtitle\": {\r\n \"value\": \"on a Vestrum® series tractor\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/SpecialOffers_3.png\",\r\n \"alt\": \"\",\r\n \"width\": 664,\r\n \"height\": 240\r\n }\r\n }\r\n }\r\n },\r\n {\r\n \"fields\": {\r\n \"Label\": {\r\n \"value\": \"HARVESTING\"\r\n },\r\n \"Badge Link\": {\r\n \"value\": {\r\n href: \"/products/tractors\",\r\n text: \"TRACTORS\"\r\n }\r\n },\r\n \"Button Primary\": {\r\n \"value\": {\r\n \"href\": \"\"\r\n }\r\n },\r\n \"Button Secondary\": {\r\n \"value\": {\r\n \"href\": \"/tools-resources/build-price\",\r\n \"text\": \"BUILD & PRICE\",\r\n \"url\": \"/tools-resources/build-price\",\r\n \"anchor\": \"\",\r\n \"target\": \"\"\r\n }\r\n },\r\n \"Card Type\": {\r\n \"fields\": {\r\n \"Key\": {\r\n \"value\": \"offerCardNarrow\"\r\n },\r\n \"Phrase\": {\r\n \"value\": \"Offer Card Narrow\"\r\n }\r\n }\r\n },\r\n \"Title\": {\r\n \"value\": \"

    0%

    for 48 months\"\r\n },\r\n \"Subtitle\": {\r\n \"value\": \"on a new Draper Header\"\r\n },\r\n \"Image\": {\r\n \"value\": {\r\n \"src\": \"//localhost:8085/images/SpecialOffers_4.png\",\r\n \"alt\": \"Vestrum Series\",\r\n \"width\": 664,\r\n \"height\": 240\r\n }\r\n }\r\n }\r\n }\r\n ]\r\n};\r\n\r\nexport default fieldsMock;\r\n\r\n","import { ImageField, LinkField, StringField } from \"../../types/types\";\r\nimport fieldsMock from \"./NotEditableFieldsMock\";\r\nimport { SpecialOffersSlideFields, SpecialOffersSlideProps, SpecialOffersFields, SpecialOffersProps, SpecialOffersSlideTypeFields, SpecialOffersSlideTypeProps } from \"./fields.definitions\";\r\nimport { LinkFieldValue } from '@sitecore-jss/sitecore-jss-react/types/components/Link';\r\n\r\ntype ValueOf = T[keyof T];\r\ntype Omit = Pick>\r\ntype SpecialOffersGetterFields = Omit\r\ntype SpecialOffersSlideGetterFields = Omit\r\n\r\nexport class SpecialOffersModel {\r\n private readonly fields: null | SpecialOffersFields;\r\n constructor(props: SpecialOffersProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n private getterFn(fieldName: 'Title' | 'Subtitle' | 'eyebrow', defaultValue: string): StringField\r\n private getterFn(fieldName: 'link', defaultValue: LinkFieldValue): StringField\r\n private getterFn(fieldName: keyof SpecialOffersGetterFields, defaultValue: (ValueOf)['value'] = '') {\r\n if (this.fields && this.fields[fieldName]) {\r\n return this.fields[fieldName];\r\n }\r\n return { value: defaultValue };\r\n }\r\n\r\n get eyebrow(): StringField {\r\n const defaultValue = fieldsMock?.eyebrow?.value;\r\n return this.getterFn('eyebrow', defaultValue);\r\n }\r\n\r\n get link(): LinkFieldValue {\r\n const defaultValue = fieldsMock?.link?.value;\r\n return this.getterFn('link', defaultValue);\r\n }\r\n\r\n get title(): StringField {\r\n const defaultValue = fieldsMock?.Title?.value;\r\n return this.getterFn('Title', defaultValue);\r\n }\r\n\r\n get subtitle(): StringField {\r\n const defaultValue = fieldsMock?.Subtitle?.value;\r\n return this.getterFn('Subtitle', defaultValue);\r\n }\r\n\r\n get items() {\r\n const defaultValue = fieldsMock.Cards.map((Card) => {\r\n return new SpecialOffersSlideModel(Card);\r\n });\r\n if (this.fields && this.fields['Cards']) {\r\n return this.fields['Cards'].map((Card) => {\r\n return new SpecialOffersSlideModel(Card);\r\n });;\r\n }\r\n return defaultValue;\r\n }\r\n}\r\n\r\nexport class SpecialOffersSlideModel {\r\n private readonly fields: null | SpecialOffersSlideFields;\r\n constructor(props: SpecialOffersSlideProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n private getterFn(fieldName: 'Title' | 'Subtitle' | 'Label', defaultValue: string): StringField\r\n private getterFn(fieldName: 'Image', defaultValue: ImageField): ImageField\r\n private getterFn(fieldName: 'Button Primary' | 'Button Secondary' | 'Badge Link', defaultValue: LinkField): LinkField\r\n private getterFn(fieldName: keyof SpecialOffersSlideGetterFields, defaultValue: (ValueOf)['value'] = '') {\r\n if (this.fields && this.fields[fieldName]) {\r\n return this.fields[fieldName];\r\n }\r\n return { value: defaultValue };\r\n }\r\n\r\n get type(): StringField {\r\n const defaultValue = new SpecialOffersSlideTypeModel(fieldsMock.Cards[0].fields[\"Card Type\"]).key;\r\n if (this.fields && this.fields['Card Type']) {\r\n return this.fields['Card Type'].fields.Key;\r\n }\r\n return defaultValue;\r\n }\r\n\r\n get title(): StringField {\r\n const defaultValue = fieldsMock.Cards[0].fields.Title.value;\r\n return this.getterFn('Title', defaultValue);\r\n }\r\n\r\n get subtitle(): StringField {\r\n const defaultValue = fieldsMock.Cards[0].fields.Subtitle.value;\r\n return this.getterFn('Subtitle', defaultValue);\r\n }\r\n\r\n get label(): StringField {\r\n const defaultValue = fieldsMock.Cards[0].fields.Label.value;\r\n return this.getterFn('Label', defaultValue);\r\n }\r\n\r\n get badgeLink(): LinkField {\r\n const defaultValue = fieldsMock.Cards[0].fields[\"Badge Link\"];\r\n return this.getterFn('Badge Link', defaultValue);\r\n }\r\n\r\n get image(): ImageField {\r\n const defaultValue = fieldsMock.Cards[0].fields.Image;\r\n return this.getterFn('Image', defaultValue);\r\n }\r\n\r\n get buttonPrimary(): LinkField {\r\n const defaultValue = fieldsMock.Cards[0].fields[\"Button Primary\"];\r\n return this.getterFn('Button Primary', defaultValue);\r\n }\r\n\r\n get buttonSecondary(): LinkField {\r\n const defaultValue = fieldsMock.Cards[0].fields[\"Button Secondary\"];\r\n return this.getterFn('Button Secondary', defaultValue);\r\n }\r\n}\r\n\r\nclass SpecialOffersSlideTypeModel {\r\n private readonly fields: null | SpecialOffersSlideTypeFields;\r\n constructor(props: SpecialOffersSlideTypeProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n private getterFn(fieldName: 'Key' | 'Phrase', defaultValue: string): StringField\r\n private getterFn(fieldName: keyof SpecialOffersSlideTypeFields, defaultValue: (ValueOf)['value'] = '') {\r\n if (this.fields && this.fields[fieldName]) {\r\n return this.fields[fieldName];\r\n }\r\n return { value: defaultValue };\r\n }\r\n\r\n get key(): StringField {\r\n const defaultValue = fieldsMock.Cards[0].fields[\"Card Type\"].fields.Key.value;\r\n return this.getterFn('Key', defaultValue);\r\n }\r\n\r\n get phrase(): StringField {\r\n const defaultValue = fieldsMock.Cards[0].fields[\"Card Type\"].fields.Phrase.value;\r\n return this.getterFn('Phrase', defaultValue);\r\n }\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport Slider from \"react-slick\";\r\nimport {\r\n RichText,\r\n Text,\r\n withSitecoreContext,\r\n Link\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport CustomArrow from \"../../react-only-components/CarouselArrow\";\r\nimport CarouselSlide from \"./CarouselSlide\";\r\nimport CarouselDots from \"../../react-only-components/CarouselDots\";\r\nimport { ComponentProps } from \"../../types/types\";\r\nimport { SpecialOffersFields } from \"./fields.definitions\";\r\nimport { SpecialOffersModel, SpecialOffersSlideModel } from \"./fields.model\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport \"../../styles/@shared/special-offers.scss\";\r\nimport useMediaQuery from \"../../lib/custom-hooks/useMediaQuery\";\r\nimport { windowService } from \"../../utils/window.utils\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\n\r\ninterface SpecialOffersProps extends ComponentProps {}\r\n\r\nconst SpecialOffers = (props: SpecialOffersProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n const model = new SpecialOffersModel(props);\r\n const isDesktop = useMediaQuery(\"(min-width: 768px)\");\r\n const [screenWidth, setScreenWidth] = useState(1680);\r\n const containerPaddingLeft = 32;\r\n const largeImageWidth = isDesktop ? 664 : 300;\r\n const smallImageWidth = isDesktop ? 392 : 300;\r\n\r\n const totalElementsWidth =\r\n model.items.reduce((sumWidths: number, curr: SpecialOffersSlideModel) => {\r\n if (curr.type.value === \"offerCardWide\") {\r\n sumWidths += largeImageWidth;\r\n } else {\r\n sumWidths += smallImageWidth;\r\n }\r\n\r\n return sumWidths;\r\n }, 0) + containerPaddingLeft;\r\n const shouldInstanceCarousel = totalElementsWidth > screenWidth;\r\n\r\n const settings = {\r\n infinite: shouldInstanceCarousel,\r\n dots: shouldInstanceCarousel,\r\n arrows: !isEE && shouldInstanceCarousel,\r\n variableWidth: true,\r\n speed: 500,\r\n slidesToScroll: 1,\r\n nextArrow: ,\r\n prevArrow: ,\r\n customPaging: (i) => ,\r\n };\r\n\r\n useEffect(() => {\r\n setScreenWidth(Math.min(windowService()?.innerWidth, 1680));\r\n }, []);\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {(isEE || model.link?.value?.text || model.link?.value?.href) && (\r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n\r\n \r\n {model.items.map((item, index) => (\r\n
    \r\n \r\n
    \r\n ))}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(SpecialOffers);\r\n","import React from 'react'\r\nimport {\r\nwithSitecoreContext,\r\nImage\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport './index.scss'\r\nimport Slider from \"react-slick\";\r\nimport useMediaQuery from '../../lib/custom-hooks/useMediaQuery';\r\n\r\nconst SplitGallery = (props) => {\r\n const isMobile = useMediaQuery(\"(max-width: 768px)\");\r\n const isExpEditorEnabled = props?.sitecoreContext?.pageEditing;\r\n const SampleNextArrow = (props) => {\r\n if (isExpEditorEnabled == false) {\r\n const { className, style, onClick } = props;\r\n return (\r\n
    \r\n );\r\n } else {\r\n return
    ;\r\n }\r\n };\r\n const SamplePrevArrow = (props) => {\r\n if (isExpEditorEnabled == false) {\r\n const { className, style, onClick } = props;\r\n return (\r\n
    \r\n );\r\n } else {\r\n return
    ;\r\n }\r\n };\r\n const downloadImage = (href: string) => {\r\n\r\n }\r\n const settings = {\r\n arrows: true,\r\n dots: true,\r\n swipe: true,\r\n dotsClass: \"dots-button\",\r\n slidesToScroll: 1,\r\n slidesToShow: 1,\r\n nextArrow: ,\r\n prevArrow: ,\r\n infinite: true,\r\n autoplay: false,\r\n };\r\n\r\n return (\r\n
    \r\n \r\n {props?.fields?.List?.map((item, index) => (\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {item?.fields?.Caption?.value && item?.fields?.Caption?.value != '' ?\r\n

    {item?.fields?.Caption?.value}

    \r\n :\r\n <>\r\n }\r\n
    \r\n ))}\r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(SplitGallery)\r\n ","import React from 'react'\r\nimport {\r\n Placeholder,\r\nwithSitecoreContext\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport './index.scss'\r\n\r\nconst SplitGalleryContainer = (props) => {\r\nreturn (\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n);\r\n};\r\n\r\nexport default withSitecoreContext()(SplitGalleryContainer)\r\n ","export const SplitModuleMock =\r\n {\r\n \"uid\":\"59fe4667-40c5-4194-a989-13feda8fbf3b\",\r\n \"componentName\":\"SplitModule\",\r\n \"dataSource\":\"{DEEC6F37-FAAA-4B7D-B14A-35C42E163E5C}\",\r\n \"params\":{\r\n \"imagePosition\":\"left\"\r\n },\r\n \"fields\":{\r\n \"bodyText\":{\r\n \"value\":\"Sed ut perspiciatis, unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam.\"\r\n },\r\n \"eyebrow\":{\r\n \"value\":\"OPTIONAL EYEBROW\"\r\n },\r\n \"title\":{\r\n \"value\":\"Main title here\"\r\n },\r\n \"link1\":{\r\n \"value\":{\r\n \"href\":\"F\",\r\n \"text\":\"Optional Primary CTA\",\r\n \"linktype\":\"external\",\r\n \"url\":\"F\",\r\n \"anchor\":\"\",\r\n \"target\":\"\"\r\n }\r\n },\r\n \"link2\":{\r\n \"value\":{\r\n \"href\":\"F\",\r\n \"text\":\"Optional Secondary CTA\",\r\n \"linktype\":\"external\",\r\n \"url\":\"F\",\r\n \"anchor\":\"\",\r\n \"target\":\"\"\r\n }\r\n },\r\n \"image\":{\r\n \"value\":{\r\n \"src\":\"http://localhost:8085/images/split-module/pic-16-9-generic-image.png\",\r\n \"alt\":\"pic-16-9-generic-image\",\r\n \"width\":\"1029\",\r\n \"height\":\"579\"\r\n }\r\n },\r\n \"videoHeading\":{\r\n \"value\":\"Title Lorem Ipsum\"\r\n },\r\n \"videoSubHeading\":{\r\n \"value\":\"Sed ut perspiciatis, unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam eaque ipsa, quae ab illo inventore veritatis e\"\r\n },\r\n \"imageMobile\":{\r\n \"value\":{\r\n \"src\":\"http://localhost:8085/images/split-module/pic-16-9-generic-image-2.png\",\r\n \"alt\":\"pic-16-9-generic-image\",\r\n \"width\":\"832\",\r\n \"height\":\"468\"\r\n }\r\n },\r\n \"video\":{\r\n \"value\":{\r\n \"href\":\"//localhost:8085/videos/HeroCarousel_0.mp4\",\r\n linktype: '',\r\n target: '',\r\n id: ''\r\n }\r\n },\r\n \"useVideo\":{\r\n \"value\":false\r\n }\r\n }\r\n}\r\n","import { SplitModuleFields, SplitModuleProps } from '../types/SplitModule.types'\r\nimport { StringField, VideoSitecoreField } from '../../../types/types'\r\nimport { SplitModuleMock } from '../../../mocks/SplitModule.mock'\r\nimport { LinkFieldValue } from '@sitecore-jss/sitecore-jss-react/types/components/Link'\r\nimport {\r\n ImageField,\r\n ImageFieldValue,\r\n} from '@sitecore-jss/sitecore-jss-react/types/components/Image'\r\n\r\nexport class SplitModuleModel {\r\n private readonly fields: SplitModuleFields\r\n private readonly params: ComponentParamsGeneral\r\n\r\n constructor(props: SplitModuleProps) {\r\n this.fields = props.fields\r\n this.params = props.params\r\n }\r\n\r\n get AlignToTextModule(): StringField {\r\n return this.fields?.AlignToTextModule ?? { value: '' }\r\n }\r\n\r\n get bodyText(): StringField {\r\n return this.fields?.bodyText ?? SplitModuleMock?.fields?.bodyText\r\n }\r\n\r\n get eyebrow(): StringField {\r\n return this.fields?.eyebrow\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.title ?? SplitModuleMock?.fields?.title\r\n }\r\n\r\n get link1(): LinkFieldValue {\r\n return this.fields?.link1?.value ?? SplitModuleMock?.fields?.link1?.value\r\n }\r\n\r\n get link2(): LinkFieldValue {\r\n return this.fields?.link2?.value ?? SplitModuleMock?.fields?.link2?.value\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.image ?? SplitModuleMock?.fields?.image\r\n }\r\n\r\n get videoHeading(): StringField {\r\n return this.fields?.videoHeading ?? SplitModuleMock?.fields?.videoHeading\r\n }\r\n\r\n get videoSubHeading(): StringField {\r\n return this.fields?.videoSubHeading ?? SplitModuleMock?.fields?.bodyText\r\n }\r\n\r\n get imageMobile(): ImageField {\r\n return this.fields?.ImageMobile ?? SplitModuleMock?.fields?.imageMobile\r\n }\r\n\r\n get video(): VideoSitecoreField {\r\n return this.fields?.video ?? SplitModuleMock?.fields?.video\r\n }\r\n\r\n get useVideo(): boolean {\r\n return (\r\n this.fields?.useVideo?.value ?? SplitModuleMock?.fields?.useVideo?.value\r\n )\r\n }\r\n\r\n get AllowFallbackForMobile(): boolean {\r\n return this.fields?.AllowFallbackForMobile?.value\r\n }\r\n\r\n get imagePosition(): 'left' | 'right' {\r\n return this.params?.imagePosition ?? SplitModuleMock?.params?.imagePosition\r\n }\r\n\r\n get variant(): StringField {\r\n return this.fields?.Variant\r\n }\r\n\r\n get videoid(): StringField {\r\n return this.fields?.videoid\r\n }\r\n}\r\n","import React, { useEffect } from 'react'\r\nimport {\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { useMeasure } from 'react-use'\r\nimport Youtube from 'react-youtube'\r\nimport { SplitModuleModel } from './models/SplitModule.model'\r\nimport { SplitModuleProps } from './types/SplitModule.types'\r\nimport './index.scss'\r\n\r\nconst SplitModule = (props: SplitModuleProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing\r\n const model = new SplitModuleModel(props)\r\n const hasVideo =\r\n model.videoid && model.videoid?.value && model.videoid?.value?.length !== 0\r\n\r\n const [containerRef, { width }] = useMeasure()\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n \r\n \r\n {hasVideo ? (\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {(isEE || model.link1?.text || model.link1?.href) && (\r\n
    \r\n \r\n
    \r\n )}\r\n {(isEE || model.link2?.text || model.link2?.href) && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n ) : isExperienceEditorActive() ? (\r\n <>\r\n
    \r\n \r\n 0\r\n ? model?.imageMobile\r\n : !model?.AllowFallbackForMobile && model?.image\r\n }\r\n className={\r\n 'split-module__column split-module__image split-module__image--mobile'\r\n }\r\n />\r\n
    \r\n \r\n ) : (\r\n <>\r\n \r\n 0\r\n ? model?.imageMobile\r\n : model?.AllowFallbackForMobile && model?.image\r\n }\r\n className={\r\n 'split-module__column split-module__image split-module__image--mobile'\r\n }\r\n />\r\n\r\n
    \r\n {model?.eyebrow && (\r\n \r\n )}\r\n {model.variant?.value === 'v2' ? (\r\n \r\n ) : model.variant?.value === 'v1' ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {(isEE || model.link1?.text || model.link1?.href) && (\r\n
    \r\n \r\n
    \r\n )}\r\n {(isEE || model.link2?.text || model.link2?.href) && (\r\n \r\n \r\n
    \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(SplitModule)\r\n","import { Text } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport React, { FC, useEffect, useState } from \"react\";\r\nimport {\r\n StockPriceFeed,\r\n useStockPriceFeed,\r\n} from \"../../hooks/useStockPriceFeed\";\r\nimport { CheckboxField, ComponentProps, StringField } from \"../../types/types\";\r\nimport \"./StockFeed.scss\";\r\n\r\ninterface StockFeedProps extends ComponentProps {\r\n fields: {\r\n Comment: StringField;\r\n \"MI Label\": StringField;\r\n \"NY Label\": StringField;\r\n \"Hide MI Label\": CheckboxField;\r\n Title: StringField;\r\n };\r\n}\r\n\r\ninterface MarketFeed {\r\n market: [StringField, string];\r\n data: StockPriceFeed;\r\n hideMILabel: CheckboxField;\r\n}\r\n\r\nconst StockFeed: FC = ({\r\n fields: { Title, \"MI Label\": MILabel, \"NY Label\": NYLabel, Comment, \"Hide MI Label\": HideMILabel},\r\n}) => {\r\n const stockPriceFeed = useStockPriceFeed();\r\n\r\n const MarketFeed: FC = ({ market, data, hideMILabel }) => (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    {market[1]}
    \r\n

    {data.value}

    \r\n \r\n {data.change}\r\n \r\n
    \r\n
    \r\n );\r\n\r\n const [display, setDisplay] = useState(false);\r\n useEffect(() => {\r\n if(stockPriceFeed && stockPriceFeed.NYSE && stockPriceFeed.NYSE.value && stockPriceFeed.BI && stockPriceFeed.BI.value\r\n && stockPriceFeed.NYSE.value.indexOf('undefined') == -1 && stockPriceFeed.BI.value.indexOf('undefined') == -1) {\r\n setDisplay(true);\r\n }\r\n else {\r\n setDisplay(false);\r\n }\r\n }, [stockPriceFeed]);\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default StockFeed;\r\n","import { CardFields, CardProps, LinkField, StringField } from \"../../types/types\";\r\n\r\nfunction getBaseImgSrc(index: string | number): string {\r\n return `//localhost:8085/images/Stories/Stories_${index}.jpg`;\r\n}\r\n\r\nexport const mockCardList = [0, 1, 2, 3, 4, 5, 6, 7].map((index): {fields?: Partial} => {\r\n return {\r\n fields: {\r\n Image: {\r\n value: {\r\n src: getBaseImgSrc(index),\r\n }\r\n }\r\n }\r\n }\r\n}) as CardProps[];\r\n\r\nexport const mockTitle: StringField = { value: \"Explore the world of \" };\r\n\r\nexport const mockContent: StringField = {\r\n value: `\r\n From technological innovation to upcoming releases, from tutorials to brand communications.\r\n Discover our latest news and stay up to date!`,\r\n }\r\n\r\nexport const mockLink: LinkField = { value: { href:\"\", text:\"OPTIONAL CTA\" } }\r\n\r\nexport const mockEyebrow: StringField = { value: \"OPTIONAL EYEBROW\" }","import { StringField, LinkField } from \"../../types/types\";\r\nimport { CardProps } from \"../../types/types\";\r\nimport { CardModel } from \"../../lib/shared-models/card.model\";\r\nimport { TSitecoreContext } from \"../../types/sitecore.types\";\r\nimport {\r\n StoriesFields,\r\n StoriesProps,\r\n CategoryProps,\r\n} from \"./fields.definitions\";\r\nimport {\r\n mockCardList,\r\n mockTitle,\r\n mockContent,\r\n mockLink,\r\n mockEyebrow,\r\n} from \"./mockCardList\";\r\n\r\nexport class StoriesModel {\r\n private readonly fields?: StoriesFields;\r\n constructor(props: StoriesProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title ?? mockTitle;\r\n }\r\n\r\n get content(): StringField {\r\n return this.fields?.Subtitle ?? mockContent;\r\n }\r\n\r\n get cards(): CardProps[] {\r\n const cardList = this.fields?.Cards ?? mockCardList;\r\n return cardList.map((el) => new CardModel(el).all);\r\n }\r\n\r\n get eyebrow(): StringField {\r\n return this.fields?.eyebrow ?? mockEyebrow;\r\n }\r\n\r\n get link(): LinkField {\r\n return this.fields?.link ?? mockLink;\r\n }\r\n\r\n get redbutton(): Boolean {\r\n return this.fields?.redbutton;\r\n }\r\n\r\n get categories(): CategoryProps[] {\r\n return this.fields?.Categories;\r\n }\r\n}\r\n","import React, { Fragment, useCallback } from \"react\";\r\nimport {\r\n isExperienceEditorActive,\r\n Text,\r\n Image,\r\n Link\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { CardProps } from \"../../types/types\";\r\nimport { CardModel } from \"../../lib/shared-models/card.model\";\r\nimport \"./index.scss\";\r\nimport RoutableSitecoreLink from \"../RoutableSitecoreLink\";\r\n//dayjs\r\nimport dayjs from \"dayjs\";\r\nimport \"dayjs/locale/it\";\r\nimport \"dayjs/locale/en\";\r\nimport utc from \"dayjs/plugin/utc\";\r\n\r\ndayjs.extend(utc);\r\n\r\nconst StoriesCard = (props: CardProps) => {\r\n const model = new CardModel(props);\r\n const locale = props?.lang ? props.lang : \"en\";\r\n\r\n const defaultFormat: (Date: Date, Locale: string) => string = (\r\n date,\r\n locale\r\n ) => {\r\n return dayjs.utc(date).locale(locale).format(\"YYYY-MM-DD\"); //made into SC field \"default format\"\r\n };\r\n\r\n const formatted: (Date: Date, Locale: string, Format: string) => string = (\r\n date,\r\n locale,\r\n format\r\n ) => {\r\n return dayjs.utc(date).locale(locale).format(format);\r\n };\r\n\r\n const dateFormatByLocale: (\r\n Date: Date,\r\n Locale: string,\r\n Format?: string\r\n ) => string = useCallback(\r\n (date, locale, format) => {\r\n return date && locale && format?.length === 0\r\n ? defaultFormat(date, locale)\r\n : date && format && locale\r\n ? formatted(date, locale, format)\r\n : \"\";\r\n },\r\n\r\n []\r\n );\r\n\r\n return (\r\n \r\n
    \r\n \r\n
    \r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n <>\r\n \r\n 0\r\n ? props?.fields?.imageMobile\r\n : props?.fields?.AllowFallbackForMobile?.value &&\r\n props.fields?.Image\r\n }\r\n className=\"stories-card__bg-image mobileImage\"\r\n alt={model.imageAlt}\r\n width={model.imageWidth}\r\n height={model.imageHeight}\r\n />\r\n \r\n )}\r\n
    \r\n\r\n
    \r\n {model.Date && isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n model.Date &&\r\n model.Date.value !== \"0001-01-01T00:00:00Z\" && (\r\n \r\n )\r\n )}\r\n\r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {(model.link?.value?.href || model.link?.value?.text) && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default StoriesCard;\r\n","import React, { useCallback, useMemo, useState } from 'react'\r\nimport { Text, Link } from '@sitecore-jss/sitecore-jss-react'\r\nimport Slider, { Settings } from 'react-slick'\r\nimport { useWindowSize } from 'react-use'\r\nimport { withSitecoreContext } from '@sitecore-jss/sitecore-jss-react'\r\nimport { StoriesProps } from './fields.definitions'\r\nimport { StoriesModel } from './fields.model'\r\nimport './index.scss'\r\n\r\nimport CustomArrow from '../../react-only-components/CarouselArrow'\r\nimport StoriesCard from '../../react-only-components/StoriesCard'\r\nimport LazySection from '../../react-only-components/LazySection'\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\n\r\nconst Stories = (props: StoriesProps) => {\r\n const { width } = useWindowSize()\r\n\r\n const isEE = props.sitecoreContext?.pageEditing\r\n const model = new StoriesModel(props)\r\n const lang = props.sitecoreContext?.language?.slice(0, 2)\r\n\r\n const slidesAmount = model.cards.length\r\n const isSliderNeeded =\r\n width > 1350\r\n ? slidesAmount > 3\r\n : width > 768\r\n ? slidesAmount > 2\r\n : slidesAmount > 1\r\n\r\n const [currentPage, setCurrentPage] = useState(1)\r\n\r\n const getProgress: () => { width: string } = useCallback(\r\n () => ({\r\n width:\r\n (currentPage / (slidesAmount - (width > 1350 ? 2 : 1))) * 100 + '%',\r\n }),\r\n [currentPage, slidesAmount, props, width]\r\n )\r\n const onAfterChange: (newIndex: number) => void = useCallback(\r\n (newIndex) => setCurrentPage(newIndex + 1),\r\n [props]\r\n )\r\n const getIsDisabled: (direction: 'next' | 'prev') => boolean = useCallback(\r\n (direction) =>\r\n direction === 'next'\r\n ? currentPage > slidesAmount - (width > 1350 ? 3 : 2)\r\n : currentPage === 1,\r\n [currentPage, width]\r\n )\r\n\r\n const settings: Settings = {\r\n variableWidth: true,\r\n slidesToScroll: 1,\r\n slidesToShow: 3,\r\n initialSlide: 0,\r\n dots: false,\r\n infinite: false,\r\n responsive: [\r\n {\r\n breakpoint: 768,\r\n settings: {\r\n arrows: false,\r\n slidesToShow: 1,\r\n },\r\n },\r\n {\r\n breakpoint: 1350,\r\n settings: {\r\n slidesToShow: 2,\r\n },\r\n },\r\n ],\r\n afterChange: onAfterChange,\r\n nextArrow: isSliderNeeded && (\r\n \r\n ),\r\n prevArrow: isSliderNeeded && (\r\n \r\n ),\r\n }\r\n\r\n const storiesMapper: (model: StoriesModel) => JSX.Element[] = useMemo(() => {\r\n return function Component(model: StoriesModel) {\r\n return model.cards.map((item, i) => {\r\n return (\r\n
    \r\n \r\n
    \r\n )\r\n })\r\n }\r\n }, [])\r\n\r\n return (\r\n \r\n {props.fields && (\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {model.content && (\r\n \r\n )}\r\n {(isEE || model.link?.value?.text || model.link?.value?.href) &&\r\n !model.redbutton && (\r\n
    \r\n \r\n
    \r\n )}\r\n {model.redbutton && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n\r\n {isSliderNeeded ? (\r\n \r\n {storiesMapper(model)}\r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n ) : (\r\n
    \r\n {storiesMapper(model)}\r\n
    \r\n )}\r\n
    \r\n \r\n )}\r\n
    \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(Stories)\r\n","import { Form } from \"@sitecore-jss/sitecore-jss-react-forms\";\r\nimport React from \"react\";\r\nimport { sitecoreApiHost, sitecoreApiKey } from \"../../temp/config\";\r\nconst SubscribeForm = ({ fields, history }) => (\r\n history.push(url)}\r\n />\r\n);\r\nexport default SubscribeForm;\r\n","import React, { FC, useCallback, useMemo, useState } from 'react'\r\nimport { TabListProps } from './types/TabList.types'\r\nimport './TabList.scss'\r\nimport {\r\n isExperienceEditorActive,\r\n Placeholder,\r\n Text,\r\n withSitecoreContext,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\n\r\nconst TabList: FC = ({\r\n fields: { List } = { List: [] },\r\n rendering,\r\n sitecoreContext,\r\n}) => {\r\n const isExperienceEditor = isExperienceEditorActive()\r\n\r\n const shouldRenderAll = useMemo(\r\n () => isExperienceEditor || sitecoreContext?.pageEditing,\r\n [sitecoreContext]\r\n )\r\n\r\n const [activeYear, setActiveYear] = useState(0)\r\n\r\n const handleYearClick: (newActiveYearIndex: number) => void = useCallback(\r\n (newActiveYearIndex) => setActiveYear(newActiveYearIndex),\r\n []\r\n )\r\n\r\n return (\r\n
    \r\n
    \r\n
    \r\n
    \r\n {List?.map(({ fields: { Title } }, idx) => (\r\n handleYearClick(idx)}\r\n >\r\n {activeYear === idx &&
    }\r\n {}\r\n \r\n ))}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n {shouldRenderAll\r\n ? List?.map(({ fields: { Title } }, idx) => {\r\n const placeholderName = `jss-list${idx}`\r\n return (\r\n
    \r\n {`${idx} - ${Title?.value}`}\r\n \r\n
    \r\n )\r\n })\r\n : List?.map((_, idx) => {\r\n const placeholderName = `jss-list${idx}`\r\n return (\r\n \r\n \r\n
    \r\n )\r\n })}\r\n
    \r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(TabList)\r\n","import React from 'react'\r\n\r\nconst PrintProps = (componentProps: ComponentProps) => {\r\n try {\r\n return {JSON.stringify(componentProps)}\r\n } catch (e) {\r\n console.error(e)\r\n return {e}\r\n }\r\n}\r\n\r\nexport default PrintProps\r\n","import React from 'react'\r\nimport {Image, Link, Text} from '@sitecore-jss/sitecore-jss-react';\r\nimport PrintProps from \"./PrintProps\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\n\r\nconst TestNoParams = (props: ComponentProps) => {\r\n const FieldsPart = props.fields? (() => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n )) : (()=>

    Missing \"fields\" prop

    );\r\n\r\n return
    \r\n

    TestNoParams Component

    \r\n \r\n \r\n
    ;\r\n};\r\n\r\nexport default TestNoParams;\r\n","import React from 'react';\r\nimport {Image, Link, Text} from '@sitecore-jss/sitecore-jss-react';\r\nimport PrintProps from \"../TestNoParams/PrintProps\";\r\nimport RoutableSitecoreLink from \"../../react-only-components/RoutableSitecoreLink\";\r\n\r\nconst TestWithParams = (props: ComponentProps) => {\r\n const FieldsPart = props.fields? (() => (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n )) : (()=>

    Missing \"fields\" prop

    );\r\n const ParamsPart = props.params ? (()=>(

    {props.params.testParam}

    )) : (()=>

    Missing \"params\" prop

    )\r\n\r\n return
    \r\n

    TestWithParams Component

    \r\n \r\n \r\n \r\n
    ;\r\n};\r\n\r\nexport default TestWithParams;\r\n","import { StringField } from \"../../../types/types\";\r\nimport {\r\n TextDropdownModuleFields,\r\n TextDropdownModuleProps,\r\n TextDropdownModule,\r\n} from \"../types/TextDropdown.types\";\r\n\r\nexport class TextDropdownModuleModel {\r\n private readonly fields: TextDropdownModuleFields;\r\n\r\n constructor(props: TextDropdownModuleProps) {\r\n this.fields = props.fields;\r\n }\r\n\r\n get textValueList(): StringField {\r\n return this.fields?.textValueList\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title\r\n }\r\n\r\n get anchorID(): StringField {\r\n return this.fields?.AnchorID\r\n }\r\n\r\n get primaryText(): StringField {\r\n return this.fields?.PrimaryText\r\n }\r\n\r\n get secondaryText(): StringField {\r\n return this.fields?.SecondaryText\r\n }\r\n\r\n get learnMoreAbout(): StringField {\r\n return this.fields?.LearnMoreAbout\r\n }\r\n\r\n get placeholderLabel(): StringField {\r\n return this.fields?.placeholderLabel\r\n }\r\n}\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n Placeholder,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { TextDropdownModuleModel } from \"./models/TextDropdown.model\";\r\nimport { TextDropdownModuleProps } from \"./types/TextDropdown.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst TextDropdownModule = (props: TextDropdownModuleProps) => {\r\n const model = new TextDropdownModuleModel(props);\r\n const getDropdownList = props?.fields?.textValueList;\r\n const [isOpen, setOpen] = useState(false);\r\n const [isExtendedText, setCollapsedText] = useState(false);\r\n\r\n const contentRef = useRef(null);\r\n const showRef = useRef(null);\r\n console.log(props, \"text dropdown\");\r\n\r\n function handleSelectChange(event) {\r\n const selectElement = event.target.value;\r\n const value = selectElement;\r\n const selectedOption = document.getElementById(`${value}`);\r\n\r\n document\r\n .querySelectorAll(\".privacy-dropdown-content.show\")\r\n .forEach(function (element) {\r\n element.classList.remove(\"show\");\r\n });\r\n\r\n document\r\n .querySelectorAll(\".privacy-dropdown-secondary\")\r\n .forEach(function (element) {\r\n element?.classList?.remove(\"extended\");\r\n });\r\n\r\n selectedOption && selectedOption.classList.add(\"show\");\r\n }\r\n\r\n return (\r\n props?.fields && (\r\n
    \r\n \r\n \r\n {getDropdownList.map((item, id) => (\r\n \r\n ))}\r\n \r\n {getDropdownList.map((item, id) => (\r\n
    \r\n
    {item?.Title.value}
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n setCollapsedText(!isExtendedText)}\r\n >\r\n {item?.LearnMoreLabel.value}\r\n
    \r\n \r\n ))}\r\n \r\n )\r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(TextDropdownModule);\r\n","export const TextModuleMock = {\r\n uid: \"59fe4667-40c5-4194-a989-13feda8fbf3b\",\r\n componentName: \"TextModule\",\r\n dataSource: \"{DEEC6F37-FAAA-4B7D-B14A-35C42E163E5C}\",\r\n params: {\r\n textPosition: \"center\",\r\n backgroundColor: \"grey\",\r\n },\r\n fields: {\r\n BodyText: {\r\n value:\r\n \"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum., totam rem aperiam:\",\r\n },\r\n Eyebrow: {\r\n value: \"OPTIONAL EYEBROW\",\r\n },\r\n Title: {\r\n value: \"Main title here\",\r\n },\r\n Subtitle: {\r\n value:\r\n \"Find loader attachments that are compatible with your high horsepower , all-purpose or compact tractors for a variety of material handling chores.\",\r\n },\r\n PrimaryLink: {\r\n value: {\r\n href: \"\",\r\n text: \"Optional Primary CTA\",\r\n linktype: \"external\",\r\n url: \"\",\r\n anchor: \"\",\r\n target: \"\",\r\n },\r\n },\r\n SecondaryLink: {\r\n value: {\r\n href: \"\",\r\n text: \"Optional Secondary CTA\",\r\n linktype: \"external\",\r\n url: \"\",\r\n anchor: \"\",\r\n target: \"\",\r\n },\r\n },\r\n Image: {\r\n value: {\r\n src: \"http://localhost:8085/images/split-module/pic-16-9-generic-image.png\",\r\n alt: \"icon\",\r\n width: \"32\",\r\n height: \"32\",\r\n },\r\n },\r\n \"Background Color\": {\r\n fields: {\r\n Key: {\r\n value: \"grey\",\r\n },\r\n Phrase: {\r\n value: \"\",\r\n },\r\n },\r\n },\r\n Alignment: {\r\n id: \"2f1265bd-c7c3-4fe2-9b46-5d580fadb2aa\",\r\n url: \"/sitecore/system/Settings/Project/corporateI/Settings/Alignment/Center\",\r\n fields: {\r\n Key: {\r\n value: \"left\",\r\n },\r\n Phrase: {\r\n value: \"\",\r\n },\r\n },\r\n },\r\n },\r\n}\r\n","import { TextModuleFields, TextModuleProps } from '../types/TextModule.types'\r\nimport { StringField, ImageField } from '../../../types/types'\r\nimport { TextModuleMock } from '../../../mocks/TextModule.mock'\r\nimport { LinkFieldValue } from '@sitecore-jss/sitecore-jss-react/types/components/Link'\r\n\r\nexport class TextModuleModel {\r\n private readonly fields: TextModuleFields\r\n\r\n constructor(props: TextModuleProps) {\r\n this.fields = props.fields\r\n }\r\n\r\n get AlignToAccordion(): StringField {\r\n return this.fields?.AlignToAccordion ?? { value: '' }\r\n }\r\n\r\n get bodyText(): StringField {\r\n return this.fields?.BodyText ?? TextModuleMock?.fields?.BodyText\r\n }\r\n\r\n get eyebrow(): StringField {\r\n return this.fields?.Eyebrow ?? TextModuleMock?.fields?.Eyebrow\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title ?? TextModuleMock?.fields?.Title\r\n }\r\n\r\n get subtitle(): StringField {\r\n return this.fields?.Subtitle ?? TextModuleMock?.fields?.Subtitle\r\n }\r\n\r\n get link1(): LinkFieldValue {\r\n return (\r\n this.fields?.PrimaryLink?.value ??\r\n TextModuleMock?.fields?.PrimaryLink?.value\r\n )\r\n }\r\n\r\n get link2(): LinkFieldValue {\r\n return (\r\n this.fields?.SecondaryLink?.value ??\r\n TextModuleMock?.fields?.SecondaryLink?.value\r\n )\r\n }\r\n\r\n get image(): ImageField {\r\n return this.fields?.Image ?? TextModuleMock?.fields?.Image\r\n }\r\n\r\n get imageMobile(): ImageField {\r\n return this.fields?.ImageMobile ?? TextModuleMock?.fields?.Image\r\n }\r\n get AllowFallbackForMobile(): boolean {\r\n return this.fields?.AllowFallbackForMobile.value\r\n }\r\n\r\n get textPosition(): StringField {\r\n return (\r\n this.fields?.Alignment?.fields?.Key ??\r\n TextModuleMock?.fields?.Alignment?.fields?.Key\r\n )\r\n }\r\n\r\n get abstract(): StringField {\r\n return this.fields?.Abstract\r\n }\r\n\r\n get variant(): StringField {\r\n return this.fields?.Variant\r\n }\r\n}\r\n","import React from 'react'\r\nimport {\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n Link,\r\n isExperienceEditorActive,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { ComponentProps } from '../../types/types'\r\n\r\nimport './index.scss'\r\nimport RoutableSitecoreLink from '../../react-only-components/RoutableSitecoreLink'\r\nimport { TextModuleModel } from './models/TextModule.model'\r\nimport { anchorWithId } from '../../helpers/anchorWithId.helper'\r\n\r\ninterface TextModuleProps extends ComponentProps {}\r\n\r\nconst TextModule = (props: TextModuleProps) => {\r\n const model = new TextModuleModel(props)\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n\r\n return (\r\n <>\r\n {props.fields && (\r\n \r\n \r\n \r\n {model.eyebrow?.value?.length > 0 && (\r\n \r\n )}\r\n\r\n {model.image?.value?.src?.length > 0 && (\r\n \r\n )}\r\n\r\n {model.imageMobile?.value?.src?.length > 0 && (\r\n 0\r\n ? model.imageMobile\r\n : model?.AllowFallbackForMobile && model.image\r\n }\r\n className={\r\n (isExperienceEditorActive() || isEE) &&\r\n model.image?.value?.src.indexOf(\r\n 'shell/Themes/Standard/Images'\r\n )\r\n ? 'text-module__icon--mobile imageEE'\r\n : 'text-module__icon--mobile'\r\n }\r\n alt=\"Mobile\"\r\n />\r\n )}\r\n\r\n {model.title?.value?.length > 0 &&\r\n (model.variant?.value === 'v1' ? (\r\n \r\n ) : model.variant?.value === 'v2' ? (\r\n \r\n ) : model.variant?.value === 'v3' ? (\r\n \r\n ) : model.variant?.value === 'v4' ? (\r\n \r\n ) : (\r\n <>\r\n ))}\r\n\r\n {model.abstract?.value?.length > 0 && (\r\n \r\n )}\r\n\r\n {model.subtitle?.value?.length > 0 &&\r\n (model.variant?.value === 'v2' ? (\r\n \r\n ) : (\r\n \r\n ))}\r\n\r\n {model.bodyText?.value?.length > 0 && (\r\n \r\n )}\r\n\r\n {(model.link1?.href || model.link2?.href) && (\r\n
    \r\n {(isEE || model.link1?.text || model.link1?.href) && (\r\n
    \r\n {isEE ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
    \r\n )}\r\n {(isEE || model.link2?.text || model.link2?.href) && (\r\n \r\n \r\n {model.link2?.text}\r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withSitecoreContext()(TextModule)\r\n","import { StringField, LinkField } from \"../../../types/types\"\r\nimport { TimerBannerFields, TimerBannerProps } from \"../types/TimerBanner.types\"\r\n\r\nexport class TimerBannerModel {\r\n private readonly fields?: TimerBannerFields\r\n constructor(props: TimerBannerProps) {\r\n this.fields = props.fields || null\r\n }\r\n}\r\n","import React, { useEffect } from \"react\";\r\nimport {\r\n Text,\r\n Image,\r\n withSitecoreContext,\r\n RichText,\r\n isExperienceEditorActive,\r\n Link,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport { TimerBannerModel } from \"./models/TimerBanner.model\";\r\nimport { TimerBannerProps } from \"./types/TimerBanner.types\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\nimport \"./index.scss\";\r\nimport { anchorWithId } from \"../../helpers/anchorWithId.helper\";\r\n\r\nconst TimerBanner = (props: TimerBannerProps) => {\r\n const isEE = props.sitecoreContext?.pageEditing;\r\n const model = new TimerBannerModel(props);\r\n const Timer = +props?.fields?.timer?.value * 1000;\r\n\r\n useEffect(() => {\r\n if (props?.fields?.redirectlink?.value.href) {\r\n setTimeout(() => {\r\n window.location.href = props?.fields?.redirectlink?.value.href;\r\n }, Timer);\r\n }\r\n }, []);\r\n\r\n return (\r\n \r\n {props.fields && (\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n {isExperienceEditorActive() ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n {props?.fields?.showcookielink?.value && (\r\n 0\r\n ? \"FooterPadding\"\r\n : null\r\n } `}\r\n >\r\n \r\n \r\n \r\n
    \r\n )}\r\n {props.fields?.footerlinks.map((item, index: number) => (\r\n \r\n \r\n
    \r\n ))}\r\n
    \r\n \r\n \r\n )}\r\n
    \r\n );\r\n};\r\nexport default withSitecoreContext()(TimerBanner);\r\n","import React from \"react\";\r\nimport {\r\n withSitecoreContext,\r\n Placeholder,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport \"./index.scss\";\r\nimport { TwoColumnProps } from \"./types/TwoColumn.types\";\r\n\r\nconst TwoColumn = (props: TwoColumnProps) => {\r\n const columnDirection = props?.rendering?.params?.['Column Direction'];\r\n const colDefinition = props?.rendering?.params?.['Left Percentage'];\r\n console.log(\"props params\", columnDirection, props)\r\n return (\r\n <>\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default withSitecoreContext()(TwoColumn);\r\n","import React, { useEffect, useLayoutEffect, useRef, useState } from \"react\";\r\nimport \"./styles.scss\";\r\n\r\nconst VerticalNavBar = (props) => {\r\n const [current, setCurrent] = useState(0);\r\n const [allSection, setAllSection] = useState([]);\r\n let isManualScroll = useRef(true);\r\n\r\n const check = () => {\r\n if (isManualScroll.current) {\r\n allSection.forEach((item, index) => {\r\n const el = document.getElementById(item.uid);\r\n if (el) {\r\n if (isInViewport(el)) {\r\n setCurrent(index);\r\n }\r\n }\r\n });\r\n }\r\n };\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", check);\r\n\r\n return () => {\r\n window.removeEventListener(\"scroll\", check);\r\n };\r\n });\r\n\r\n useLayoutEffect(() => {\r\n const allSectionData = props.data.placeholders[\"jss-main\"];\r\n const allSectionArr = allSectionData.map((section) => {\r\n return {\r\n uid: section.uid,\r\n tooltip: section?.fields?.Tooltip?.value,\r\n name: section.componentName,\r\n };\r\n });\r\n\r\n const tempArr = allSectionArr.filter((item) => {\r\n return item.tooltip && item.tooltip != \"\";\r\n });\r\n\r\n setAllSection(tempArr);\r\n }, []);\r\n\r\n // let timeOut;\r\n // useEffect(()=>{\r\n // if(!timeOut){\r\n // timeOut = setTimeout(() => {\r\n // isManualScroll.current = true;\r\n\r\n // }, 1000);\r\n // }else{\r\n // clearTimeout(timeOut);\r\n // }\r\n\r\n // },[current])\r\n\r\n const isInViewport = (element) => {\r\n const rect = element?.getBoundingClientRect();\r\n\r\n const notvisible =\r\n rect?.bottom -\r\n (window.innerHeight || document.documentElement.clientHeight);\r\n const percentvisible = 100 - (notvisible * 100) / rect.height;\r\n\r\n return (\r\n (window.innerHeight || document.documentElement.clientHeight) - rect.top >\r\n 200\r\n );\r\n\r\n //return percentvisible > 30\r\n };\r\n\r\n const delay = (div, timmimg) => {\r\n setTimeout(() => {\r\n const rect = div?.getBoundingClientRect();\r\n if (\r\n rect?.height >\r\n (window.innerHeight || document.documentElement.clientHeight)\r\n ) {\r\n div?.scrollIntoView({\r\n behavior: \"smooth\",\r\n block: \"start\",\r\n inline: \"nearest\",\r\n });\r\n } else {\r\n div?.scrollIntoView({\r\n behavior: \"smooth\",\r\n block: \"center\",\r\n inline: \"nearest\",\r\n });\r\n }\r\n }, timmimg);\r\n };\r\n\r\n const lazyArr = useRef({});\r\n const setLazyflag = (id) => {\r\n if (!lazyArr.current[id]) {\r\n lazyArr.current[id] = true;\r\n }\r\n };\r\n const getLazyFlag = (id) => {\r\n if (!lazyArr.current[id]) {\r\n lazyArr.current[id] = true;\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n\r\n const scrollTo = (item, index) => {\r\n window.removeEventListener(\"scroll\", check);\r\n isManualScroll.current = false;\r\n\r\n const tempArr = allSection.filter((item) => {\r\n return item.tooltip && item.tooltip != \"\";\r\n });\r\n\r\n if (index > current && getLazyFlag(item.uid)) {\r\n tempArr.forEach((item, i) => {\r\n if (i >= current && i <= index) {\r\n const div = document.getElementById(item.uid);\r\n setLazyflag(item.uid);\r\n delay(div, 50 * i);\r\n }\r\n });\r\n setCurrent(index);\r\n } else {\r\n setCurrent(index);\r\n const div = document.getElementById(item.uid);\r\n const rect = div?.getBoundingClientRect();\r\n if (\r\n rect?.height >\r\n (window.innerHeight || document.documentElement.clientHeight)\r\n ) {\r\n div?.scrollIntoView({\r\n behavior: \"auto\",\r\n block: \"start\",\r\n inline: \"nearest\",\r\n });\r\n } else {\r\n div?.scrollIntoView({\r\n behavior: \"auto\",\r\n block: \"end\",\r\n inline: \"nearest\",\r\n });\r\n }\r\n }\r\n\r\n isManualScroll.current = true;\r\n };\r\n\r\n return (\r\n
    \r\n {allSection &&\r\n allSection.map((item, index) => {\r\n return (\r\n \r\n {item.tooltip != \"\" && item.name != \"VerticalNavBar\" && (\r\n {\r\n scrollTo(item, index);\r\n }}\r\n >\r\n \r\n {item.tooltip}\r\n
    \r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nexport default VerticalNavBar;\r\n","import { ImageField, StringField, LinkField } from \"../../../types/types\";\r\nimport {\r\n VideoPlayerFields,\r\n VideoPlayerProps,\r\n} from \"../../VideoPlayer/types/VideoPlayer.types\";\r\n\r\nexport class VideoPlayerModel {\r\n private readonly fields?: VideoPlayerFields;\r\n constructor(props: VideoPlayerProps) {\r\n this.fields = props.fields || null;\r\n }\r\n\r\n get autoPlay(): StringField {\r\n return this.fields?.[\"Auto Play\"];\r\n }\r\n\r\n get title(): StringField {\r\n return this.fields?.Title;\r\n }\r\n\r\n get description(): StringField {\r\n return this.fields?.Description;\r\n }\r\n\r\n get cta(): StringField {\r\n return this.fields?.[\"Play CTA\"];\r\n }\r\n\r\n get splashImage(): ImageField {\r\n return this.fields?.[\"Splash Image\"];\r\n }\r\n\r\n get url(): LinkField {\r\n return this.fields?.VidoeUrl;\r\n }\r\n\r\n get provider(): StringField {\r\n return this.fields?.Provider;\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Image } from \"@sitecore-jss/sitecore-jss-react\";\r\nconst Preview = ({ url, playVedio }) => {\r\n return (\r\n {\r\n playVedio();\r\n }}\r\n className=\"overlay-image-wrapper\"\r\n >\r\n {/* */}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Preview;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport Preview from \"../Preview\";\r\nconst Youtube = ({ url, autoplay, previewUrl, rawUrl }) => {\r\n const [showPreview, setshowPreview] = useState(true);\r\n const iframeRef = useRef(null);\r\n const loadOnce = useRef(false);\r\n\r\n useEffect(() => {\r\n setshowPreview(!autoplay);\r\n }, []);\r\n\r\n const callPlayer = (func, args) => {\r\n var iframes = document.getElementsByTagName(\"iframe\");\r\n for (var i = 0; i < iframes.length; ++i) {\r\n if (iframes[i]) {\r\n var src = iframes[i].getAttribute(\"src\");\r\n if (src) {\r\n if (src.indexOf(url) != -1) {\r\n iframes[i].contentWindow.postMessage(\r\n JSON.stringify({\r\n event: \"command\",\r\n func: func,\r\n args: args || [],\r\n }),\r\n \"*\"\r\n );\r\n }\r\n }\r\n }\r\n }\r\n };\r\n\r\n const playVideo = () => {\r\n callPlayer(\"playVideo\", []);\r\n };\r\n\r\n const stopVideo = () => {\r\n callPlayer(\"pauseVideo\", []);\r\n };\r\n\r\n const playVedio = () => {\r\n setshowPreview(false);\r\n iframeRef.current.src = rawUrl + \"&autoplay=1&mute=0\";\r\n };\r\n return (\r\n
    \r\n \r\n \r\n
    \r\n\r\n {\r\n if (autoplay && !loadOnce.current) {\r\n loadOnce.current = true;\r\n }\r\n }}\r\n src={autoplay ? url : \"\"}\r\n className=\"optanon-category-VID1 full-width\"\r\n >\r\n \r\n );\r\n};\r\n\r\nexport default Youtube;\r\n","import React, { useEffect, useRef, useState } from \"react\";\r\nimport Preview from \"../Preview\";\r\n\r\nconst Vimeo = ({ url, autoplay, previewUrl, rawUrl }) => {\r\n const [showPreview, setshowPreview] = useState(true);\r\n const iframeRef = useRef(null);\r\n const loadOnce = useRef(false);\r\n\r\n useEffect(() => {\r\n setshowPreview(!autoplay);\r\n }, []);\r\n\r\n const playVedio = () => {\r\n setshowPreview(false);\r\n iframeRef.current.src = rawUrl + \"&autoplay=1&mute=0\";\r\n };\r\n\r\n return (\r\n
    \r\n \r\n \r\n
    \r\n\r\n {\r\n if (autoplay && !loadOnce.current) {\r\n loadOnce.current = true;\r\n }\r\n }}\r\n allowFullScreen\r\n allow=\"autoplay\"\r\n src={autoplay ? url : \"\"}\r\n className=\"optanon-category-VID1 full-width black-background\"\r\n >\r\n \r\n );\r\n};\r\n\r\nexport default Vimeo;\r\n","import React, { useRef } from \"react\";\r\n\r\nconst Custom = ({ url, autoplay, previewUrl, visibility = false }) => {\r\n const vedioRef = useRef(null);\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n );\r\n};\r\n\r\nexport default Custom;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport \"../styles.scss\";\r\nconst Modal = (props) => {\r\n const [show, setShow] = useState(false);\r\n\r\n const closeHandler = (e) => {\r\n setShow(false);\r\n props.onClose(false);\r\n };\r\n\r\n useEffect(() => {\r\n setShow(props.show);\r\n }, [props.show]);\r\n\r\n return (\r\n \r\n
    \r\n

    {props.title}

    \r\n \r\n ×\r\n \r\n
    {props.children}
    \r\n
    \r\n \r\n );\r\n};\r\n\r\nexport default Modal;\r\n","import React, { useState } from \"react\";\r\nimport { VideoPlayerModel } from \"./models/VideoPlayer.model\";\r\nimport { VideoPlayerProps } from \"./types/VideoPlayer.types\";\r\nimport Youtube from \"./Youtube\";\r\nimport Vimeo from \"./Vimeo\";\r\nimport Custom from \"./Custom\";\r\n\r\nimport \"./styles.scss\";\r\nimport { Image, RichText, Text } from \"@sitecore-jss/sitecore-jss-react\";\r\n\r\nimport Modal from \"./Modal\";\r\nimport LazySection from \"../../react-only-components/LazySection\";\r\n\r\nconst VideoPlayer = (props: VideoPlayerProps) => {\r\n const model = new VideoPlayerModel(props);\r\n const [modalIsOpen, setIsOpen] = useState(false);\r\n\r\n const getYoutubeUrl = () => {\r\n return (\r\n model.url?.value?.href +\r\n `?controls=1&enablejsapi=1&autoplay=${\r\n model.autoPlay?.value ? 1 : 0\r\n }&mute=${model.autoPlay?.value ? (visibility ? 0 : 1) : 0}`\r\n );\r\n };\r\n\r\n const getRawYoutubeUrl = () => {\r\n return model.url?.value?.href + `?controls=1&enablejsapi=1`;\r\n };\r\n\r\n const getYimeoUrl = () => {\r\n return (\r\n model.url?.value?.href +\r\n `?&dnt=1&autoplay=${model.autoPlay?.value ? 1 : 0}&muted=${\r\n model.autoPlay?.value ? (visibility ? 0 : 1) : 0\r\n }`\r\n );\r\n };\r\n const getRawYimeoUrl = () => {\r\n return model.url?.value?.href + `?&dnt=1`;\r\n };\r\n\r\n const getCustomeUrl = () => {\r\n return model.url?.value?.href;\r\n //return window.location?.protocol + `//` + window.location?.host + \"/\" + model.url.value.href;\r\n };\r\n\r\n const getPreviewUrl = () => {\r\n //return window.location?.protocol + `//` + window.location?.host + \"/\" + model.splashImage.value.src;\r\n //return model.splashImage.value.src;\r\n return model.splashImage;\r\n };\r\n\r\n const getMediaPreviewUrl = () => {\r\n //return window.location?.protocol + `//` + window.location?.host + \"/\" + model.splashImage.value.src;\r\n return model.splashImage?.value?.src;\r\n };\r\n\r\n const openModal = () => {\r\n setVisibility(true);\r\n };\r\n\r\n const closeModal = () => {\r\n setIsOpen(false);\r\n };\r\n\r\n const [visibility, setVisibility] = useState(false);\r\n\r\n const popupCloseHandler = (e) => {\r\n setVisibility(e);\r\n };\r\n\r\n return (\r\n \r\n {visibility && (\r\n \r\n <>\r\n {model?.provider?.value === \"Youtube\" ? (\r\n \r\n ) : model?.provider?.value === \"Vimeo\" ? (\r\n \r\n ) : model?.provider?.value === \"Media\" ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n\r\n {props?.params[\"Playing Target\"] === \"Overlay\" ? (\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n {\r\n e.preventDefault();\r\n openModal();\r\n }}\r\n >\r\n \r\n
    \r\n
    \r\n \r\n ) : (\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {model?.provider?.value === \"Youtube\" ? (\r\n \r\n ) : model?.provider?.value === \"Vimeo\" ? (\r\n \r\n ) : model?.provider?.value === \"Media\" ? (\r\n \r\n ) : null}\r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport default VideoPlayer;\r\n","/* eslint-disable */\n// Do not edit this file, it is auto-generated at build time!\n// See scripts/generate-component-factory.js to modify the generation of this file.\nimport AccordionList from '../components/AccordionList';\nimport AccordionMultiplePDF from '../components/AccordionMultiplePDF';\nimport Advisor from '../components/Advisor';\nimport BrandPortfolio from '../components/BrandPortfolio';\nimport Breadcrumb from '../components/Breadcrumb';\nimport CardCarousel from '../components/CardCarousel';\nimport CardGrid from '../components/CardGrid';\nimport CardGridContacts from '../components/CardGridContacts';\nimport CardLink from '../components/CardLink';\nimport CardList from '../components/CardList';\nimport CardListExtra from '../components/CardListExtra';\nimport CardModuleFull from '../components/CardModuleFull';\nimport CarouselCardHighlights from '../components/CarouselCardHighlights';\nimport CollapsibleTextModule from '../components/CollapsibleTextModule';\nimport ColumnCard from '../components/ColumnCard';\nimport ContactCards from '../components/ContactCards';\nimport ContentHubSeriesDetails from '../components/ContentHubSeriesDetails';\nimport ContentHubSeriesOverview from '../components/ContentHubSeriesOverview';\nimport ContentHubSpecialOffers from '../components/ContentHubSpecialOffers';\nimport CookiePolicyBanner from '../components/CookiePolicyBanner';\nimport CustomHtmlComponent from '../components/CustomHtmlComponent';\nimport DataTableCNHComponent from '../components/DataTableCNHComponent';\nimport Disclaimer from '../components/Disclaimer';\nimport DownloadList from '../components/DownloadList';\nimport DropDown from '../components/DropDown';\nimport Events from '../components/Events';\nimport ExploreEquipment from '../components/ExploreEquipment';\nimport ExternalComponent from '../components/ExternalComponent';\nimport FindADealer from '../components/FindADealer';\nimport Footer from '../components/Footer';\nimport GenericCTAList from '../components/GenericCTAList';\nimport Header from '../components/Header';\nimport Header_old from '../components/Header_old';\nimport HeroBanner from '../components/HeroBanner';\nimport HeroCarousel from '../components/HeroCarousel';\nimport Highlights from '../components/Highlights';\nimport HistoryModule from '../components/HistoryModule';\nimport IconButton from '../components/IconButton';\nimport IFrame from '../components/IFrame';\nimport KeepInTouch from '../components/KeepInTouch';\nimport LanguageDropdown from '../components/LanguageDropdown';\nimport LanguageSelector from '../components/LanguageSelector';\nimport LightWeightHeader from '../components/LightWeightHeader';\nimport LinkList from '../components/LinkList';\nimport ModelsListing from '../components/ModelsListing';\nimport NavigationFilterCardList from '../components/NavigationFilterCardList';\nimport NavigationLinkList from '../components/NavigationLinkList';\nimport NewsletterConfirmation from '../components/NewsletterConfirmation';\nimport PageTitle from '../components/PageTitle';\nimport PrivacyBanner from '../components/PrivacyBanner';\nimport PrivacyBottomBanner from '../components/PrivacyBottomBanner';\nimport PrivacyFilter from '../components/PrivacyFilter';\nimport PrivacyForm from '../components/PrivacyForm';\nimport PrivacyStatement from '../components/PrivacyStatement';\nimport ProductIntro from '../components/ProductIntro';\nimport Redirectww1Component from '../components/Redirectww1Component';\nimport RelatedLinks from '../components/RelatedLinks';\nimport RTE from '../components/RTE';\nimport Search from '../components/Search';\nimport SearchBox from '../components/SearchBox';\nimport SearchModule from '../components/SearchModule';\nimport SectionList from '../components/SectionList';\nimport SeriesListing from '../components/SeriesListing';\nimport SimpleCardList from '../components/SimpleCardList';\nimport SitecoreJssForm from '../components/SitecoreJssForm';\nimport Spacer from '../components/Spacer';\nimport SpecialOffers from '../components/SpecialOffers';\nimport SplitGallery from '../components/SplitGallery';\nimport SplitGalleryContainer from '../components/SplitGalleryContainer';\nimport SplitModule from '../components/SplitModule';\nimport StockFeed from '../components/StockFeed';\nimport Stories from '../components/Stories';\nimport SubscribeForm from '../components/SubscribeForm';\nimport TabList from '../components/TabList';\nimport TestNoParams from '../components/TestNoParams';\nimport TestWithParams from '../components/TestWithParams';\nimport TextDropdown from '../components/TextDropdown';\nimport TextModule from '../components/TextModule';\nimport TimerBanner from '../components/TimerBanner';\nimport TwoColumn from '../components/TwoColumn';\nimport VerticalNavBar from '../components/VerticalNavBar';\nimport VideoPlayer from '../components/VideoPlayer';\n\nconst components = new Map();\ncomponents.set('AccordionList', AccordionList);\ncomponents.set('AccordionMultiplePDF', AccordionMultiplePDF);\ncomponents.set('Advisor', Advisor);\ncomponents.set('BrandPortfolio', BrandPortfolio);\ncomponents.set('Breadcrumb', Breadcrumb);\ncomponents.set('CardCarousel', CardCarousel);\ncomponents.set('CardGrid', CardGrid);\ncomponents.set('CardGridContacts', CardGridContacts);\ncomponents.set('CardLink', CardLink);\ncomponents.set('CardList', CardList);\ncomponents.set('CardListExtra', CardListExtra);\ncomponents.set('CardModuleFull', CardModuleFull);\ncomponents.set('CarouselCardHighlights', CarouselCardHighlights);\ncomponents.set('CollapsibleTextModule', CollapsibleTextModule);\ncomponents.set('ColumnCard', ColumnCard);\ncomponents.set('ContactCards', ContactCards);\ncomponents.set('ContentHubSeriesDetails', ContentHubSeriesDetails);\ncomponents.set('ContentHubSeriesOverview', ContentHubSeriesOverview);\ncomponents.set('ContentHubSpecialOffers', ContentHubSpecialOffers);\ncomponents.set('CookiePolicyBanner', CookiePolicyBanner);\ncomponents.set('CustomHtmlComponent', CustomHtmlComponent);\ncomponents.set('DataTableCNHComponent', DataTableCNHComponent);\ncomponents.set('Disclaimer', Disclaimer);\ncomponents.set('DownloadList', DownloadList);\ncomponents.set('DropDown', DropDown);\ncomponents.set('Events', Events);\ncomponents.set('ExploreEquipment', ExploreEquipment);\ncomponents.set('ExternalComponent', ExternalComponent);\ncomponents.set('FindADealer', FindADealer);\ncomponents.set('Footer', Footer);\ncomponents.set('GenericCTAList', GenericCTAList);\ncomponents.set('Header', Header);\ncomponents.set('Header_old', Header_old);\ncomponents.set('HeroBanner', HeroBanner);\ncomponents.set('HeroCarousel', HeroCarousel);\ncomponents.set('Highlights', Highlights);\ncomponents.set('HistoryModule', HistoryModule);\ncomponents.set('IconButton', IconButton);\ncomponents.set('IFrame', IFrame);\ncomponents.set('KeepInTouch', KeepInTouch);\ncomponents.set('LanguageDropdown', LanguageDropdown);\ncomponents.set('LanguageSelector', LanguageSelector);\ncomponents.set('LightWeightHeader', LightWeightHeader);\ncomponents.set('LinkList', LinkList);\ncomponents.set('ModelsListing', ModelsListing);\ncomponents.set('NavigationFilterCardList', NavigationFilterCardList);\ncomponents.set('NavigationLinkList', NavigationLinkList);\ncomponents.set('NewsletterConfirmation', NewsletterConfirmation);\ncomponents.set('PageTitle', PageTitle);\ncomponents.set('PrivacyBanner', PrivacyBanner);\ncomponents.set('PrivacyBottomBanner', PrivacyBottomBanner);\ncomponents.set('PrivacyFilter', PrivacyFilter);\ncomponents.set('PrivacyForm', PrivacyForm);\ncomponents.set('PrivacyStatement', PrivacyStatement);\ncomponents.set('ProductIntro', ProductIntro);\ncomponents.set('Redirectww1Component', Redirectww1Component);\ncomponents.set('RelatedLinks', RelatedLinks);\ncomponents.set('RTE', RTE);\ncomponents.set('Search', Search);\ncomponents.set('SearchBox', SearchBox);\ncomponents.set('SearchModule', SearchModule);\ncomponents.set('SectionList', SectionList);\ncomponents.set('SeriesListing', SeriesListing);\ncomponents.set('SimpleCardList', SimpleCardList);\ncomponents.set('SitecoreJssForm', SitecoreJssForm);\ncomponents.set('Spacer', Spacer);\ncomponents.set('SpecialOffers', SpecialOffers);\ncomponents.set('SplitGallery', SplitGallery);\ncomponents.set('SplitGalleryContainer', SplitGalleryContainer);\ncomponents.set('SplitModule', SplitModule);\ncomponents.set('StockFeed', StockFeed);\ncomponents.set('Stories', Stories);\ncomponents.set('SubscribeForm', SubscribeForm);\ncomponents.set('TabList', TabList);\ncomponents.set('TestNoParams', TestNoParams);\ncomponents.set('TestWithParams', TestWithParams);\ncomponents.set('TextDropdown', TextDropdown);\ncomponents.set('TextModule', TextModule);\ncomponents.set('TimerBanner', TimerBanner);\ncomponents.set('TwoColumn', TwoColumn);\ncomponents.set('VerticalNavBar', VerticalNavBar);\ncomponents.set('VideoPlayer', VideoPlayer);\n\nexport default function componentFactory(componentName) {\n return components.get(componentName);\n};\n","import axios from 'axios';\r\n\r\n/**\r\n * Implements a data fetcher using Axios - replace with your favorite\r\n * SSR-capable HTTP or fetch library if you like. See HttpJsonFetcher type\r\n * in sitecore-jss library for implementation details/notes.\r\n * @param {string} url The URL to request; may include query string\r\n * @param {any} data Optional data to POST with the request.\r\n */\r\nexport function dataFetcher(url, data) {\r\n return axios({\r\n url,\r\n method: data ? 'POST' : 'GET',\r\n data,\r\n // note: axios needs to use `withCredentials: true` in order for Sitecore cookies to be included in CORS requests\r\n // which is necessary for analytics and such\r\n withCredentials: true,\r\n });\r\n}\r\n","import React from 'react';\r\nimport './index.scss';\r\n\r\nconst StickyTopWrapper = () => {\r\n return
    ;\r\n};\r\n\r\nexport default StickyTopWrapper;\r\n","import React, { useEffect, useMemo, useRef, useState } from 'react';\r\nimport { Placeholder, RichText } from '@sitecore-jss/sitecore-jss-react';\r\nimport StickyTopWrapper from './components/@shared/StickyTopWrapper';\r\nimport Helmet from 'react-helmet';\r\n//import { SEOMock } from \"./mocks/SEO.mock\";\r\n\r\nconst Layout = ({ route, context }) => {\r\n const matomoId = route?.fields['MatomoId']?.value\r\n const matomoTagManagerContainer =\r\n route?.fields['MatomoTagManagerContainer']?.value\r\n\r\n const scriptURL = `https://cdn.cookielaw.org/consent/${context?.ContextExtensions?.onetrustcookie?.value}/OtAutoBlock.js`\r\n const mounted = useRef(true)\r\n const [forceRender, setForceRender] = useState(false)\r\n\r\n //useEffect(()=>{\r\n\r\n // var observer = new MutationObserver(function(mutations) {\r\n // mutations.forEach(function(mutationRecord) {\r\n // if (document.getElementsByClassName('header__loader')[0].style.display=='none'){\r\n // setTimeout(myFunction, 500);\r\n // }\r\n // });\r\n // });\r\n\r\n // var target = document.getElementsByClassName('header__loader')[0];\r\n // observer.observe(target, { attributes : true, attributeFilter : ['style'] });\r\n\r\n // function myFunction() {\r\n // document.getElementsByTagName('MAIN')[0].style.visibility='visible';\r\n // document.getElementsByTagName('FOOTER')[0].style.visibility='visible';\r\n // }\r\n\r\n // window.addEventListener(\"click\", function(event){\r\n\r\n // var element = event.target;\r\n // var tag = element.tagName;\r\n // var classe = element.className;\r\n // console.log(tag,classe)\r\n // if (((tag == 'A') &&\r\n // (classe.indexOf('footer-navigation__item')>=0\r\n // || classe.indexOf(' navigation__logo__link')>=0\r\n // || classe.indexOf('footer-accordion__link')>=0\r\n // || classe.indexOf('navigation-link')>=0\r\n // || classe.indexOf('navigation__menu-item__trigger')>=0))\r\n // || ((tag == 'SPAN')\r\n // && classe.indexOf('navigation__menu-item__trigger__content')>=0)\r\n // && element.parentElement.tagName=='A'){\r\n // event.preventDefault();\r\n // document.getElementsByTagName('MAIN')[0].style.visibility='hidden';\r\n // document.getElementsByTagName('FOOTER')[0].style.visibility='hidden';\r\n // }\r\n // });\r\n\r\n //},[route])\r\n\r\n useEffect(() => {\r\n var d = document,\r\n g = d.createElement('link'),\r\n s = d.getElementsByTagName('head')[0]\r\n g.rel = 'icon'\r\n g.type = 'image/JPG'\r\n g.href =\r\n window.location?.protocol +\r\n `//` +\r\n window.location?.host +\r\n '/' +\r\n context?.ContextExtensions?.favicon?.value\r\n s.appendChild(g)\r\n }, [])\r\n\r\n useEffect(() => {\r\n if (!matomoId || !matomoTagManagerContainer) {\r\n return\r\n }\r\n\r\n var _mtm = (window._mtm = window._mtm || [])\r\n _mtm.push({ 'mtm.startTime': new Date().getTime(), event: 'mtm.Start' })\r\n var d = document,\r\n g = d.createElement('script'),\r\n s = d.getElementsByTagName('script')[0]\r\n g.type = 'text/javascript'\r\n g.async = true\r\n g.src =\r\n 'https://matomo.cnhind.com/agce/js/container_' +\r\n matomoTagManagerContainer +\r\n '.js'\r\n s.parentNode.insertBefore(g, s)\r\n\r\n var _paq = (window._paq = window._paq || [])\r\n /* tracker methods like \"setCustomDimension\" should be called before \"trackPageView\" */\r\n _paq.push(['trackPageView'])\r\n _paq.push(['enableLinkTracking'])\r\n ;(function () {\r\n var u = 'https://matomo.cnhind.com/agce/'\r\n _paq.push(['setTrackerUrl', u + 'matomo.php'])\r\n _paq.push(['setSiteId', matomoId])\r\n var d = document,\r\n g = d.createElement('script'),\r\n s = d.getElementsByTagName('script')[0]\r\n g.type = 'text/javascript'\r\n g.async = true\r\n g.src = u + 'matomo.js'\r\n s.parentNode.insertBefore(g, s)\r\n })()\r\n }, [])\r\n\r\n useEffect(() => {\r\n //let customElements = window.customElements;\r\n customElements.whenDefined('pfe-icon').then(function () {\r\n const PfeIcon = customElements.get('pfe-icon')\r\n const setName = 'cnh'\r\n //const newSetPath = \"https://eucomcrg04-123710-cd.azurewebsites.net/corporate/sitecore/media library/Onhighwayicons/cnh-icons\";\r\n\r\n // let newSetPath = //localhost abilitare per vedere le icone / non committare\r\n // 'http://cnhi001.westeurope.cloudapp.azure.com/cnhicorporate/-/media/cnh-icons' //localhost abilitare per vedere le icone / non committare\r\n let newSetPath = '/-/media/cnh-icons' //production\r\n\r\n // let newSetPath = \"/-/media/Onhighwayicons/cnh-icons\"\r\n\r\n // function to return the complete path of the icon\r\n function newResolveNameFn(iconName, setName, path) {\r\n return `${path}/${iconName}.svg`\r\n }\r\n PfeIcon.addIconSet(setName, newSetPath, newResolveNameFn)\r\n\r\n PfeIcon.defaultThemeSetInfo = {\r\n path: newSetPath,\r\n resolveIconName: newResolveNameFn,\r\n }\r\n\r\n // do what you need with the class here\r\n })\r\n }, [])\r\n\r\n const [loading, setLoading] = useState(false)\r\n\r\n if (typeof window !== 'undefined') {\r\n const element = document.querySelector('.spinner-page')\r\n useEffect(() => {\r\n setLoading(true)\r\n setTimeout(() => {\r\n mounted.current = true\r\n setForceRender(!forceRender)\r\n {\r\n element ? element.remove() : ''\r\n }\r\n setLoading(false)\r\n }, 1)\r\n\r\n return () => {\r\n mounted.current = false\r\n }\r\n }, [route])\r\n }\r\n\r\n const LoadingOverlay = useMemo(() => {\r\n return () => (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )\r\n }, [])\r\n\r\n useEffect(() => {\r\n document.documentElement.setAttribute(\r\n 'lang',\r\n context?.language?.split('-')?.[0]\r\n )\r\n }, [])\r\n\r\n return (\r\n \r\n {loading ? (\r\n \r\n ) : (\r\n context?.ContextExtensions?.bodyscript && (\r\n \r\n )\r\n )}\r\n \r\n \r\n {`${route?.fields?.MetaTitle?.value} | ${route?.fields?.ExtendedMetaData?.fields?.BrandName?.value}`}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n\r\n {/*\r\n VisitorIdentification is necessary for Sitecore Analytics to determine if the visitor is a robot.\r\n If Sitecore XP (with xConnect/xDB) is used, this is required or else analytics will not be collected for the JSS app.\r\n For XM (CMS-only) apps, this should be removed.\r\n\r\n VI detection only runs once for a given analytics ID, so this is not a recurring operation once cookies are established.\r\n */}\r\n {/* */}\r\n\r\n {/*
    \r\n */}\r\n {mounted.current && (\r\n
    \r\n \r\n \r\n
    \r\n )}\r\n {mounted.current && (\r\n
    \r\n {/* */}\r\n\r\n {\r\n // console.log(items.props.rendering.componentName)\r\n\r\n if (items[0]) {\r\n const firstItem = items[0]\r\n items[0] = React.cloneElement(firstItem, { isFirst: true })\r\n }\r\n\r\n items.forEach((item, index) => {\r\n if (\r\n item?.props?.rendering?.componentName === 'VerticalNavBar'\r\n ) {\r\n const vbar = items[index]\r\n items[index] = React.cloneElement(vbar, { data: route })\r\n }\r\n })\r\n\r\n return items\r\n }}\r\n />\r\n {/* */}\r\n {/* */}\r\n
    \r\n )}\r\n {mounted.current && (\r\n
    \r\n \r\n \r\n
    \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default Layout\r\n","import React, { useEffect } from 'react'\r\n\r\n// Renders a route-not-found message when no route is available from Sitecore\r\n// The JSS equivalent of a 404 Not Found page.\r\n\r\n// This is invoked from RouteHandler when Sitecore returns no valid route data.\r\n// The NotFound component receives the Layout Service Context data, but no route data.\r\n// This can be used to power parts of your site, such as navigation, from LS context additions\r\n// without losing the ability to render them on your 404 pages :)\r\n\r\nconst NotFound = ({ context = { site: { name: '' }, language: '' } }) => {\r\n useEffect(() => {\r\n const lang = context.language\r\n window.location.pathname = lang.length > 0 ? `/${lang}` : '/en-US'\r\n }, [])\r\n\r\n return <>\r\n}\r\n\r\nexport default NotFound\r\n","import React from 'react'\r\nimport i18n from 'i18next'\r\nimport Helmet from 'react-helmet'\r\nimport {\r\n isExperienceEditorActive,\r\n dataApi,\r\n withSitecoreContext,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { dataFetcher } from './dataFetcher'\r\nimport config from './temp/config'\r\nimport Layout from './Layout'\r\nimport NotFound from './NotFound'\r\n\r\n// Dynamic route handler for Sitecore items.\r\n// Because JSS app routes are defined in Sitecore, traditional static React routing isn't enough -\r\n// we need to be able to load dynamic route data from Sitecore after the client side route changes.\r\n// So react-router delegates all route rendering to this handler, which attempts to get the right\r\n// route data from Sitecore - and if none exists, renders the not found component.\r\n\r\nclass RouteHandler extends React.Component {\r\n constructor(props) {\r\n super(props)\r\n\r\n this.state = {\r\n notFound: false,\r\n defaultLanguage: config.defaultLanguage,\r\n }\r\n\r\n const routeData = this.extractRouteData()\r\n\r\n // console.log(routeData, 'routeData')\r\n\r\n // route data from react-router - if route was resolved, it's not a 404\r\n if (routeData !== null) {\r\n this.setState({ notFound: false })\r\n }\r\n\r\n // if we have an initial SSR state, and that state doesn't have a valid route data,\r\n // then this is a 404 route.\r\n if (routeData && (!routeData.sitecore || !routeData.sitecore.route)) {\r\n this.setState({ notFound: true })\r\n }\r\n\r\n // if we have an SSR state, and that state has language data, set the current language\r\n // (this makes the language of content follow the Sitecore context language cookie)\r\n // note that a route-based language (i.e. /de-DE) will override this default; this is for home.\r\n if (routeData?.context?.language) {\r\n this.setState({ defaultLanguage: routeData.context.language })\r\n }\r\n\r\n this.componentIsMounted = false\r\n this.languageIsChanging = false\r\n\r\n // let _sitecoreRoutePath = this.props.route.match.params.sitecoreRoute || '/'\r\n // if (!_sitecoreRoutePath.startsWith('/')) {\r\n // _sitecoreRoutePath = `/${_sitecoreRoutePath}`\r\n // }\r\n\r\n // this.props.updateSitecoreContext({\r\n // refetchData: {\r\n // sitecoreRoutePath: _sitecoreRoutePath,\r\n // language:\r\n // this.props.route.match.params.lang || this.state.defaultLanguage,\r\n // siteName: this.props.sitecoreContext?.site?.name || config.jssAppName,\r\n // getRouteData,\r\n // },\r\n // })\r\n\r\n // tell i18next to sync its current language with the route language\r\n this.updateLanguage()\r\n }\r\n\r\n componentDidMount() {\r\n const routeData = this.extractRouteData()\r\n\r\n // if no existing routeData is present (from SSR), get Layout Service fetching the route data or SSR render is complete\r\n if (!routeData || this.props.ssrRenderComplete) {\r\n this.updateRouteData()\r\n }\r\n\r\n // once we initialize the route handler, we've \"used up\" the SSR data,\r\n // if it existed, so we want to clear it now that it's in react state.\r\n // future route changes that might destroy/remount this component should ignore any SSR data.\r\n // EXCEPTION: Unless we are still SSR-ing. Because SSR can re-render the component twice\r\n // (once to find GraphQL queries that need to run, the second time to refresh the view with\r\n // GraphQL query results)\r\n // We test for SSR by checking for Node-specific process.env variable.\r\n if (\r\n typeof window !== 'undefined' &&\r\n !this.props.ssrRenderComplete &&\r\n this.props.setSsrRenderComplete\r\n ) {\r\n this.props.setSsrRenderComplete(true)\r\n }\r\n\r\n this.componentIsMounted = true\r\n }\r\n\r\n componentWillUnmount() {\r\n this.componentIsMounted = false\r\n }\r\n\r\n extractRouteData = () => {\r\n if (!this.props.sitecoreContext) return null\r\n\r\n // console.log(this.props.sitecoreContext, 'this.props.sitecoreContext')\r\n\r\n const { route, ...context } = this.props.sitecoreContext\r\n\r\n return {\r\n sitecore: {\r\n route,\r\n context,\r\n },\r\n }\r\n }\r\n\r\n showLoader() {\r\n const el = document.getElementsByClassName('header__loader')\r\n if (el && el.length > 0) el[0].style.display = 'block'\r\n }\r\n\r\n hideLoader() {\r\n const el = document.getElementsByClassName('header__loader')\r\n if (el && el.length > 0) el[0].style.display = 'none'\r\n }\r\n /**\r\n * Loads route data from Sitecore Layout Service into state.routeData\r\n */\r\n updateRouteData() {\r\n let sitecoreRoutePath = this.props.route.match.params.sitecoreRoute || '/'\r\n if (!sitecoreRoutePath.startsWith('/')) {\r\n sitecoreRoutePath = `/${sitecoreRoutePath}`\r\n }\r\n\r\n const language =\r\n this.props.route.match.params.lang || this.state.defaultLanguage\r\n const siteName = this.props.sitecoreContext?.site?.name || config.jssAppName\r\n //this.dispatch(setLoader(true));\r\n this.showLoader()\r\n // get the route data for the new route\r\n getRouteData(sitecoreRoutePath, language, siteName).then((routeData) => {\r\n if (routeData && routeData.sitecore && routeData.sitecore.route) {\r\n // set the sitecore context data and push the new route\r\n this.props.updateSitecoreContext({\r\n route: routeData.sitecore.route,\r\n itemId: routeData.sitecore.route.itemId,\r\n ...routeData.sitecore.context,\r\n ...this.props?.sitecoreContext,\r\n })\r\n this.setState({ notFound: false })\r\n } else {\r\n this.setState({ notFound: true }, () =>\r\n this.props.updateSitecoreContext(\r\n routeData?.sitecore?.context,\r\n ...this.props?.sitecoreContext\r\n )\r\n )\r\n }\r\n\r\n this.hideLoader()\r\n })\r\n }\r\n\r\n /**\r\n * Updates the current app language to match the route data.\r\n */\r\n updateLanguage() {\r\n const newLanguage =\r\n this.props.route.match.params.lang || this.state.defaultLanguage\r\n\r\n if (i18n.language !== newLanguage) {\r\n this.languageIsChanging = true\r\n\r\n i18n.changeLanguage(newLanguage, () => {\r\n this.languageIsChanging = false\r\n\r\n // if the component is not mounted, we don't care\r\n // (next time it mounts, it will render with the right language context)\r\n if (this.componentIsMounted) {\r\n // after we change the i18n language, we need to force-update React,\r\n // since otherwise React won't know that the dictionary has changed\r\n // because it is stored in i18next state not React state\r\n this.forceUpdate()\r\n }\r\n })\r\n }\r\n }\r\n\r\n hasLangChanged() {\r\n //force relaod of same route\r\n const reloadSamePage =\r\n this.props.route?.location?.state?.params?.forceReload\r\n\r\n if (reloadSamePage) {\r\n this.props.route.location.state.params.forceReload = false\r\n return true\r\n }\r\n\r\n return false\r\n }\r\n\r\n componentDidUpdate(previousProps) {\r\n const existingRoute = previousProps.route.match.url\r\n const newRoute = this.props.route.match.url\r\n\r\n // don't change state (refetch route data) if the route has not changed\r\n if (existingRoute === newRoute && !this.hasLangChanged()) {\r\n return\r\n }\r\n\r\n // if in experience editor - force reload instead of route data update\r\n // avoids confusing Sitecore's editing JS\r\n if (isExperienceEditorActive()) {\r\n window.location.assign(newRoute)\r\n return\r\n }\r\n\r\n this.updateLanguage()\r\n this.updateRouteData()\r\n }\r\n\r\n render() {\r\n const { notFound } = this.state\r\n const routeData = this.extractRouteData()\r\n\r\n // no route data for the current route in Sitecore - show not found component.\r\n // Note: this is client-side only 404 handling. Server-side 404 handling is the responsibility\r\n // of the server being used (i.e. node-headless-ssr-proxy and Sitecore intergrated rendering know how to send 404 status codes).\r\n if (notFound && routeData) {\r\n return (\r\n
    \r\n \r\n {i18n.t('Page not found')}\r\n \r\n \r\n
    \r\n )\r\n }\r\n\r\n // Don't render anything if the route data or dictionary data is not fully loaded yet.\r\n // This is a good place for a \"Loading\" component, if one is needed.\r\n if (!routeData || this.languageIsChanging) {\r\n return null\r\n }\r\n\r\n // Render the app's root structural layout\r\n return (\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default withSitecoreContext({ updatable: true })(RouteHandler)\r\n\r\nconst getCookieValue = (name) => {\r\n let result = document.cookie.match(\r\n '(^|[^;]+)\\\\s*' + name + '\\\\s*=\\\\s*([^;]+)'\r\n )\r\n return result ? result.pop() : ''\r\n}\r\n\r\nconst getLangFromCookie = (cookie) => {\r\n if (getCookieValue(cookie) && getCookieValue(cookie) != 'null') {\r\n return getCookieValue(cookie)\r\n }\r\n\r\n return false\r\n}\r\n\r\n/**\r\n * Gets route data from Sitecore. This data is used to construct the component layout for a JSS route.\r\n * @param {string} route Route path to get data for (e.g. /about)\r\n * @param {string} language Language to get route data in (content language, e.g. 'en')\r\n */\r\nfunction getRouteData(route, language, siteName, extLanguage) {\r\n //let lang = localStorage.getItem(\"lang\") || language;\r\n\r\n let lang = extLanguage || getLangFromCookie('cnhicorporate#lang') || language\r\n\r\n let privacyFormLanguage = getLangFromCookie('cnhicorporate#lang2') || lang\r\n\r\n //console.log('calling setrvice with lang',lang)\r\n const fetchOptions = {\r\n layoutServiceConfig: { host: config.sitecoreApiHost },\r\n querystringParams: {\r\n sc_lang: lang,\r\n sc_apikey: config.sitecoreApiKey,\r\n sc_site: siteName,\r\n lang: privacyFormLanguage,\r\n },\r\n fetcher: dataFetcher,\r\n }\r\n\r\n return dataApi.fetchRouteData(route, fetchOptions).catch((error) => {\r\n if (\r\n error.response &&\r\n error.response.status === 404 &&\r\n error.response.data\r\n ) {\r\n return error.response.data\r\n }\r\n\r\n console.error('Route data fetch error', error, error.response)\r\n\r\n return null\r\n })\r\n}\r\n","import React from 'react'\r\nimport {\r\n SitecoreContext,\r\n SitecoreContextFactory,\r\n} from '@sitecore-jss/sitecore-jss-react'\r\nimport { Route, Switch } from 'react-router-dom'\r\nimport { ApolloProvider } from 'react-apollo'\r\nimport componentFactory from './temp/componentFactory'\r\nimport RouteHandler from './RouteHandler'\r\n//import PfeIcon from '@patternfly/pfe-icon-iveco';\r\n\r\n// This is the main JSX entry point of the app invoked by the renderer (server or client rendering).\r\n// By default the app's normal rendering is delegated to that handles the loading of JSS route data.\r\n\r\n// support languages in the URL prefix\r\n// e.g. /da-DK/path, or /en/path, or /path\r\nexport const routePatterns = [\r\n '/:lang([a-z]{2}-[A-Z]{2})/:sitecoreRoute*',\r\n '/:lang([a-z]{2})/:sitecoreRoute*',\r\n '/:sitecoreRoute*',\r\n]\r\n\r\n// wrap the app with:\r\n// ApolloProvider: provides an instance of Apollo GraphQL client to the app to make Connected GraphQL queries.\r\n// Not needed if not using connected GraphQL.\r\n// SitecoreContext: provides component resolution and context services via withSitecoreContext\r\n// Router: provides a basic routing setup that will resolve Sitecore item routes and allow for language URL prefixes.\r\nclass AppRoot extends React.Component {\r\n constructor(props) {\r\n super(props)\r\n //debugger;\r\n // let customElements = window.customElements;\r\n // customElements.whenDefined(\"pfe-icon\").then( function() {\r\n // const PfeIcon = customElements.get(\"pfe-icon\");\r\n // const setName = \"ivg\";\r\n // //const newSetPath = \"https://eucomcrg04-123710-cd.azurewebsites.net/corporate/sitecore/media library/Onhighwayicons/cnh-icons\";\r\n\r\n // // let newSetPath =\"https://eucomcrg04-123710-cd.azurewebsites.net/corporate/-/media/Onhighwayicons/cnh-icons\";\r\n // let newSetPath =\r\n // \"/-/media/Onhighwayicons/cnh-icons\"\r\n\r\n // // function to return the complete path of the icon\r\n // function newResolveNameFn(iconName, setName, path) {\r\n // return `${path}/${iconName}.svg`;\r\n // }\r\n // PfeIcon.addIconSet(setName, newSetPath, newResolveNameFn);\r\n\r\n // PfeIcon.defaultThemeSetInfo = {path: newSetPath, resolveIconName: newResolveNameFn};\r\n\r\n // // do what you need with the class here\r\n // });\r\n\r\n this.state = {\r\n ssrRenderComplete: false,\r\n contextFactory: new SitecoreContextFactory(),\r\n }\r\n\r\n if (\r\n props.ssrState &&\r\n props.ssrState.sitecore &&\r\n props.ssrState.sitecore.route\r\n ) {\r\n // set the initial sitecore context data if we got SSR initial state\r\n this.state.contextFactory.setSitecoreContext({\r\n route: props.ssrState.sitecore.route,\r\n itemId: props.ssrState.sitecore.route.itemId,\r\n ...props.ssrState.sitecore.context,\r\n })\r\n } else if (props.ssrState) {\r\n this.state.contextFactory.setSitecoreContext(\r\n props.ssrState.sitecore.context\r\n )\r\n } else {\r\n this.state.contextFactory.setSitecoreContext(null)\r\n }\r\n }\r\n\r\n setSsrRenderComplete = (ssrRenderComplete) =>\r\n this.setState({\r\n ssrRenderComplete,\r\n })\r\n\r\n render() {\r\n const { path, Router, graphQLClient } = this.props\r\n\r\n const routeRenderFunction = (props) => (\r\n \r\n )\r\n return (\r\n \r\n \r\n \r\n {/* */}\r\n \r\n {routePatterns.map((routePattern) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n )\r\n }\r\n}\r\n\r\nexport default AppRoot\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { BrowserRouter } from 'react-router-dom';\r\nimport AppRoot from './AppRoot';\r\nimport GraphQLClientFactory from './lib/GraphQLClientFactory';\r\nimport config from './temp/config';\r\nimport i18ninit from './i18n';\r\nimport { windowService } from './utils/window.utils';\r\n\r\nlet renderFunction = ReactDOM.render;\r\n \r\nlet initLanguage = config.defaultLanguage;\r\n \r\n /*\r\n SSR Data\r\n --Temp Change\r\n If we're running in a server-side rendering scenario,\r\n the server will provide JSON in the #__JSS_STATE__ element\r\n for us to acquire the initial state to run with on the client.\r\n \r\n This enables us to skip a network request to load up the layout data.\r\n We are emitting a quiescent script with JSON so that we can take advantage\r\n of JSON.parse()'s speed advantage over parsing full JS, and enable\r\n working without needing `unsafe-inline` in Content Security Policies.\r\n \r\n SSR is initiated from /server/server.js.\r\n */\r\n let __JSS_STATE__ = null;\r\n const ssrRawJson = document.getElementById('__JSS_STATE__');\r\n if (ssrRawJson) {\r\n __JSS_STATE__ = JSON.parse(ssrRawJson.innerHTML);\r\n }\r\n if (__JSS_STATE__) {\r\n // when React initializes from a SSR-based initial state, you need to render with `hydrate` instead of `render`\r\n renderFunction = ReactDOM.hydrate;\r\n \r\n // set i18n language SSR state language instead of static config default language\r\n initLanguage = __JSS_STATE__.sitecore.context.language;\r\n }\r\n \r\n /*\r\n GraphQL Data\r\n The Apollo Client needs to be initialized to make GraphQL available to the JSS app.\r\n Not using GraphQL? Remove this, and the ApolloContext from `AppRoot`.\r\n */\r\n // Apollo supports SSR of GraphQL queries, so like JSS SSR, it has an object we can pre-hydrate the client cache from\r\n // to avoid needing to re-run GraphQL queries after the SSR page loads\r\n const initialGraphQLState =\r\n __JSS_STATE__ && __JSS_STATE__.APOLLO_STATE ? __JSS_STATE__.APOLLO_STATE : null;\r\n \r\n const graphQLClient = GraphQLClientFactory(config.graphQLEndpoint, false, initialGraphQLState);\r\n \r\n /*\r\n App Rendering\r\n */\r\n // initialize the dictionary, then render the app\r\n // note: if not making a multlingual app, the dictionary init can be removed.\r\n i18ninit(initLanguage).then(() => {\r\n // HTML element to place the app into\r\n const rootElement = document.getElementById('root');\r\n\r\n \r\n renderFunction(\r\n ,\r\n rootElement\r\n );\r\n });\r\n","import i18n from 'i18next';\r\nimport fetchBackend from 'i18next-fetch-backend';\r\nimport { initReactI18next } from 'react-i18next';\r\nimport config from './temp/config';\r\nimport { getCookieValue } from './utils/window.utils';\r\n\r\n/**\r\n * Initializes the i18next library to provide a translation dictionary to the app.\r\n * If your app is not multilingual, this file and references to it can be removed.\r\n * Elsewhere in the app to use the dictionary `import { t } from 'i18next'; ... t('key')`\r\n * @param {string} language Optional, the initial language. Only used for SSR; otherwise language set in RouteHandler.\r\n * @param {*} dictionary Optional, the dictionary to load. Only used for SSR; otherwise, the dictionary is loaded via JSS dictionary service.\r\n */\r\nexport default function i18nInit(language, dictionary) {\r\n return new Promise((resolve, reject) => {\r\n const options = {\r\n debug: false,\r\n lng: language,\r\n fallbackLng: false, // fallback to keys\r\n load: 'currentOnly', // e.g. don't load 'es' when requesting 'es-MX' -- Sitecore config should handle this\r\n useCookie: false, // using URLs and Sitecore to store language context, don't need a cookie\r\n\r\n interpolation: {\r\n escapeValue: false, // not needed for react\r\n },\r\n };\r\n\r\n //dictionary = {\"lang\":\"en\",\"app\":\"corporate\",\"phrases\":{}};\r\n\r\n if (dictionary) {\r\n // if we got dictionary passed, that means we're in a SSR context with a server-provided dictionary\r\n // so we do not want a backend, because we already know all possible keys\r\n \r\n if (!i18n.isInitialized) {\r\n i18n.use(initReactI18next).init(options, (error) => {\r\n if (error) reject(error);\r\n\r\n i18n.addResourceBundle(language, 'translation', dictionary, true, true)\r\n\r\n resolve();\r\n });\r\n } else {\r\n i18n.changeLanguage(language).then(() => {\r\n i18n.addResourceBundle(language, 'translation', dictionary, true, true)\r\n \r\n resolve()\r\n })\r\n }\r\n } else {\r\n // We're running client-side, so we get translation data from the Sitecore dictionary API using fetch backend\r\n // For higher performance (but less simplicity), consider adding the i18n chained backend to a local cache option like the local storage backend.\r\n let languageSelected = getCookieValue(\"cnhicorporate#lang2\") ? getCookieValue(\"cnhicorporate#lang2\") : '{{lng}}';\r\n \r\n // eslint-disable-next-line\r\n const dictionaryServicePath = `${config.sitecoreApiHost}/sitecore/api/jss/dictionary/${config.jssAppName}/${languageSelected}?sc_apikey=${config.sitecoreApiKey}`;\r\n\r\n options.backend = {\r\n loadPath: dictionaryServicePath,\r\n parse: (data) => {\r\n const parsedData = JSON.parse(data);\r\n if (parsedData.phrases) {\r\n return parsedData.phrases;\r\n }\r\n return parsedData;\r\n },\r\n };\r\n\r\n i18n\r\n .use(fetchBackend)\r\n .use(initReactI18next)\r\n .init(options, (error) => {\r\n if (error) reject(error);\r\n\r\n resolve();\r\n });\r\n }\r\n });\r\n}\r\n","/* eslint-disable import/first */\r\n\r\nimport 'isomorphic-fetch';\r\nimport { ApolloClient } from 'apollo-client';\r\nimport { InMemoryCache, IntrospectionFragmentMatcher } from 'apollo-cache-inmemory';\r\n\r\n/*\r\n INTROSPECTION DATA\r\n See https://www.apollographql.com/docs/react/recipes/fragment-matching.html\r\n This enables the Apollo cache to process fragments on interface types correctly.\r\n If this file does not exist, you may need to run the `jss graphql:update` script.\r\n*/\r\nimport introspectionQueryResultData from '../temp/GraphQLFragmentTypes.json';\r\n\r\n/*\r\n QUERY LINK SELECTION\r\n A link is transport which GraphQL queries are pushed across.\r\n You have many choices.\r\n See the apollo-link documentation for more details.\r\n\r\n NOTE: to use Sitecore Experience Editor it is essential that your\r\n link passes cookies along with requests (credentials: 'include').\r\n*/\r\n\r\n// choose between a basic HTTP link to run queries...\r\n// import { createHttpLink } from 'apollo-link-http';\r\n// const link = createHttpLink({ uri: endpoint, credentials: 'include' });\r\n\r\n// ...or a batched link (multiple queries within 10ms all go in one HTTP request)\r\nimport { BatchHttpLink } from 'apollo-link-batch-http';\r\n\r\n// ...and an automatic persisted query link, which reduces bandwidth by using query hashes to alias content\r\n// the APQ link is _chained_ behind another link that performs the actual HTTP calls, so you can choose\r\n// APQ + batched, or APQ + http links for example.\r\nimport { createPersistedQueryLink } from 'apollo-link-persisted-queries';\r\n\r\nexport default function(endpoint, ssr, initialCacheState) {\r\n /* HTTP link selection: default to batched + APQ */\r\n const link = createPersistedQueryLink().concat(\r\n new BatchHttpLink({ uri: endpoint, credentials: 'include' })\r\n );\r\n\r\n const cache = new InMemoryCache({\r\n fragmentMatcher: new IntrospectionFragmentMatcher({\r\n introspectionQueryResultData,\r\n }),\r\n });\r\n\r\n return new ApolloClient({\r\n ssrMode: ssr,\r\n ssrForceFetchDelay: 100,\r\n link,\r\n cache: cache.restore(initialCacheState),\r\n });\r\n}\r\n","/* eslint-disable */\n// Do not edit this file, it is auto-generated at build time!\n// See scripts/bootstrap.js to modify the generation of this file.\nmodule.exports = {\n \"sitecoreApiKey\": \"BE376E4C-F913-4149-BD0A-9EAEF3C91630\",\n \"sitecoreApiHost\": \"\",\n \"jssAppName\": \"cnhicorporate\",\n \"defaultLanguage\": \"en\",\n \"graphQLEndpointPath\": \"/api/cnhicorporate\",\n \"graphQLEndpoint\": \"/api/cnhicorporate?sc_apikey=BE376E4C-F913-4149-BD0A-9EAEF3C91630\"\n};"],"sourceRoot":""}