{"version":3,"sources":["webpack:///src/modules/checkout-shipping-address/checkout-shipping-address.view.tsx?e155","webpack:///src/modules/breadcrumb/breadcrumb.view.tsx?58b4","webpack:///src/modules/image-list/image-list.tsx?18cb","webpack:///src/modules/checkout-payment-instrument/checkout-payment-instrument.view.tsx?9afd","webpack:///src/modules/fabrikam/views/buybox.view.tsx?68a7","webpack:///src/modules/sign-in/sign-in.view.tsx?a753","webpack:///./src/modules/brand-hero/brand-hero.view.tsx?b49c","webpack:///src/modules/checkout-terms-and-conditions/checkout-terms-and-conditions.view.tsx?0931","webpack:///src/modules/interactive-feature-item/interactive-feature-item.view.tsx?d4e3","webpack:///src/modules/image-list/image-list.view.tsx?cab9","webpack:///src/modules/footer-category/footer-category.tsx?b7b8","webpack:///src/modules/breadcrumb/components/link.tsx?b7b8","webpack:///src/modules/breadcrumb/components/separator.tsx?7c35","webpack:///src/modules/breadcrumb/breadcrumb.tsx?3387","webpack:///src/modules/accordion-item/accordion-item.view.tsx?b04f","webpack:///src/modules/checkout-pickup/checkout-pickup.view.tsx?9210","webpack:///src/modules/accordion-item/accordion-item.tsx?fc54","webpack:///./src/modules/brand-hero/svgs/logos.tsx?7b07","webpack:///./src/modules/brand-hero/brand-hero.tsx?bba3","webpack:///src/modules/accordion/accordion.view.tsx?8c70","webpack:///src/modules/business-sign-up/business-sign-up.view.tsx?578b","webpack:///./src/themes/connselmer2/views/breadcrumb.view.tsx?cbf1","webpack:///src/modules/footer-category/footer-category.view.tsx?26a5","webpack:///src/modules/interactive-feature-collection/interactive-feature-collection.view.tsx?5927","webpack:///src/modules/business-account-address/business-account-address.view.tsx?dcd1","webpack:///src/modules/checkout-guest-profile/checkout-guest-profile.view.tsx?c89a","webpack:///src/modules/account-order-templates-tile/account-order-templates-tile.view.tsx?90af","webpack:///src/modules/cart-icon/cart-icon.view.tsx?d63a","webpack:///./src/themes/connselmer2/views/search.view.tsx?cedd","webpack:///src/modules/interactive-feature-item/components/links.tsx?8ab2","webpack:///src/modules/interactive-feature-item/interactive-feature-item.tsx?340f","webpack:///src/modules/interactive-feature-collection/interactive-feature-collection.tsx?2538","webpack:///./src/themes/connselmer2/views/media-gallery.view.tsx?c025","webpack:///./src/themes/connselmer/views/breadcrumb.view.tsx?339c","webpack:///./src/themes/connselmer/views/media-gallery.view.tsx?05f9","webpack:///./src/themes/leblanc/views/search.view.tsx?64ff","webpack:///src/modules/wishlist-items/wishlist-items.view.tsx?caf1","webpack:///src/modules/checkout-gift-card/checkout-gift-card.view.tsx?3424","webpack:///src/modules/accordion/accordion.tsx?45c1","webpack:///src/modules/check-in-for-pickup/check-in-for-pickup.view.tsx?26b3","webpack:///./src/themes/leblanc/views/breadcrumb.view.tsx?02d3","webpack:///./src/themes/leblanc/views/search-result-container.view.tsx?1e7e","webpack:///src/modules/quick-order-grid/quick-order-grid.view.tsx?2f4c","webpack:///src/modules/product-comparison-button/product-comparison-button.view.tsx?68cc","webpack:///src/index.ts?c6ae","webpack:///./src/themes/connselmer/views/search.view.tsx?7316","webpack:///src/modules/account-loyalty/account-loyalty.view.tsx?06f4","webpack:///src/modules/password-reset-verification/password-reset-verification.view.tsx?9e1f","webpack:///src/modules/order-template-list/order-template-list.view.tsx?20f7","webpack:///./src/themes/connselmer2/views/search-result-container.view.tsx?ec53","webpack:///./src/themes/connselmer/views/search-result-container.view.tsx?9850","webpack:///src/modules/adventureworks/views/order-template-list.view.tsx?86a3","webpack:///./src/themes/leblanc/views/media-gallery.view.tsx?6808"],"names":["AddressShow","_ref","AddressDetail","items","React","Node","Object","assign","map","item","description","AddressSelect","_ref2","SelectAddress","addButton","isShowSaveButton","saveButton","isShowCancelButton","cancelButton","SelectItem","key","input","showItems","AddressAddUpdate","_ref3","AddressForm","heading","hasError","error","AddressItem","label","alert","AddressError","title","message","CheckoutShippingAddressView","props","CheckoutShippingAddress","checkoutErrorRef","viewState","showAddress","showAddressSelect","showAddOrUpdateAddress","cartLineImages","Module","ref","isShowAddress","isShowAddresList","isShowAddOrUpdateAddress","BreadCrumbView","root","links","backButton","BreadcrumbContainer","BreadcrumbList","BreadcrumbListItem","separator","link","index","className","classnames","length","context","telemetry","ImageList","constructor","handleParagraphChange","event","this","config","images","paragraph","target","value","_renderImageListItems","imageList","defaultImageSettings","viewports","xs","q","w","h","lg","xl","lazyload","disableLazyLoad","_image$imageSettings","_link$linkText","image","imageProps","gridSettings","request","imageSettings","imageLink","linkUrl","destinationUrl","imageLinkText","linkText","ariaLabel","imageLinkAriaLabel","imageLinkOpenInNewTab","openInNewTab","Msdyn365","loadFailureBehavior","requestContext","text","editProps","onEdit","linkAltText","linkAriaLabel","linkOpenInNewTab","render","_heading$tag","imageListTitle","tag","viewProps","_objectSpread","moduleProps","imageListHeading","imageListContainer","role","imageListItem","imageListItemAnchorTag","imageListItems","renderView","OverlayModal","modal","CheckoutPaymentInstrumentView","checkoutPaymentInstrument","id","waiting","paymentInformation","addPaymentForm","overlayModal","_objectWithoutProperties","_excluded","_renderTextBlock","textBlocks","_renderSocialShare","socialShare","_renderCartAndActions","addToCart","addToOrderTemplate","addToWishlist","errorBlock","button","_renderConfigure","configure","ContainerProps","dropdowns","_renderConfigureDropdown","dropdown","LabelContainerProps","errors","select","_renderFindInStore","findInStore","storeSelector","productPickupOptionList","onChangeHandler","callbacks","newValue","updateQuantity","_renderQuantity","quantityComponent","state","extentionResources","quantityLimitsMessages","max","telemetryContent","resources","quantity","IncrementalQuantity","currentCount","onChange","inputQuantityAriaLabel","decrementButtonAriaLabel","incrementButtonAriaLabel","minQuantityText","maxQuantityText","_renderKeyInPrice","keyInPrice","_renderShopSimilarItem","shopSimilarItem","BuyboxView","ModuleProps","MediaGalleryContainerProps","ProductInfoContainerProps","price","rating","inventoryLabel","shopSimilarLook","shopSimilarDescription","unitOfMeasure","mediaGallery","bulkPurchaseLink","slots","SignInLoading","_ref4","modalBody","icon","SignInView","signIn","loading","defaultAADConainer","aadConainer","signInSection","signUpSection","signInSectionHeading","signInLocalAccount","signInSocialAccount","signUpSectionHeading","signInB2BAccount","signUpDescription","signUpLink","isShowLoading","localAccount","forgetPassword","disclaimer","signInButton","wrapper","LocalAccount","socialAccounts","SocialAccount","B2BAccount","BrandHeroView","brandHeroContainer","imageContainer","detailsContainer","brandLogo","TermsAndCondition","termsAndConditionAcceptance","checkBox","ErrorMessage","CheckoutTermsAndConditionsView","checkoutTermsAndConditions","termsAndConditionsContent","errorMessage","editButton","isError","isShowEditButton","MagicNumber","FeatureItemViewComponent","isMosaic","featureItem","indexItem","itemCounter","renderMosaic","thisProps","interactiveFeatureCollectionMosaicContainer","interactiveFeatureCollectionMosaicImage","interactiveFeatureCollectionMosaicDetails","indexAux","caseNumberOne","itemCounterAux","caseNumberZero","modularAux","modularDivisor","firstRow","caseNumberTwo","lastRow","onCornerRight","onCornerLeft","containerClasses","interactiveFeatureCollectionCarouselContainer","interactiveFeatureCollectionCarouselImage","interactiveFeatureCollectionCarouselContent","renderCarousel","imageListView","indexKey","src","href","altText","undefined","FooterCategory","content","viewprops","categories","FooterList","FooterListItem","Link","noclick","payLoad","getPayloadObject","contentAction","etext","attribute","getTelemetryAttributes","onClick","onTelemetryClick","itemProp","Separator","Breadcrumb","_pageType","urlTokens","pageType","getTelemetryObject","telemetryPageName","friendlyName","_getRootLink","_getCustomBreadcrumbLinks","itemPosition","keyIndex","toString","_getCategoryHierarchy","data","categoryHierarchy","result","_getFriendlyName","locale","NameTranslations","Url","nameTranslations","_nameTranslation","nameTranslation","ArrayExtensions","hasElements","find","Language","toLowerCase","Text","_getPDPLinks","categoryPaths","product","url","requestUrl","push","Name","hideProductName","_goBack","window","history","back","_getPDPBackButton","query","MsDyn365","isBrowser","document","referrer","backToResultsText","rootLink","breadcrumbLinks","backButtonComponent","breaCrumbType","app","breadcrumbType","linkSeparator","breadcrumbViewProps","_renderAccordionItemContent","AccordionItemView","drawer","accordionSlots","AccordionItemContainer","AccordionItemContent","accordionItemContent","CheckoutPickupView","checkoutPickup","headerError","pickupGroups","isLoading","isHeaderError","pickupGroupViewProps","pickupGroupContainer","dateTimeslotContainer","groupDivider","groupHeader","groupErrorMessage","pickupDateDropdown","pickupTimeslotDropdown","selectedDateTimeslot","pickupAddress","isShowDropdown","isShowSelected","AccordionItem","super","moduleClassName","handleHeadingChange","accordionItemTitle","_onToggle","bind","shouldComponentUpdate","nextProps","accordionExpandedStateResult","accordionExpandedState","expanded","isAllExpanded","isExpandedOnInitialLoad","ControlledDrawer","toggleButtonText","collapseProps","isOpen","onToggle","onTextChange","interactionStyle","accordionState","actionContext","update","createAccordionStateInput","__decorate","observer","armstrong","createElement","xmlns","viewBox","fill","d","bach","conn","holton","king","leblanc","ludwig","musser","scherl","stroke","strokeWidth","strokeMiterlimit","selmer","yanagisawa","BrandHero","_this$props$context$r","_this$props$config$im","h1Text","contentBlockTitle","brandHeroImage","preserveImageSpace","moduleType","typeName","imagePropertyName","moduleId","layout","msdyn365__moduleLayout","shouldSkipToMainImage","logos","brandHeroBlockProps","moduleClass","accordionView","AccordionContainer","accordionItems","accordionButtons","HeaderSection","HeadingWrapper","accordianButtonsContainer","accordionItemContainer","BusinessSignUpItem","isAddressInput","BusinesSignUpView","businessSignUp","ContainerWrapper","businessSignUpForm","FormWrapper","buttons","substring","split","slice","join","FooterCategoryView","category","interactiveFeatureCollectionView","interactiveFeatureCollectionHeading","interactiveFeatureCollectionContainer","interactiveFeatureCollectionDesktopContainer","interactiveFeatureCollectionDesktopItems","interactiveFeatureCollectionMobileItems","interactiveFeatureCollectionMobileContainer","singleSlideCarouselComponentProps","singleSlideCarouselItemContainer","tileItem","BusinessAccountAddressView","BusinessAccountAddress","ShowContactInfo","showInfoProps","email","AddContactInfo","addFormProps","submitButton","inputGroupProps","CheckoutGuestProfileView","showContactInfo","addContactInfo","AccountOrderTemplatesTileView","AccountOrderTemplatesTile","CartIconView","miniCartWrapper","renderModuleAttributes","cartIcon","FlyoutContainer","flyoutTitle","checkoutBlockedDueToUnavailableFunds","CartlinesWrapper","_renderCartlines","cartLines","cartLine","miniCartItemWrapper","cartline","storeLocation","remove","cartlines","totalPrice","checkoutAsSignInUserButton","checkoutAsGuestButton","goToCartButton","_renderForm","form","SearchForm","cancelBtn","submitBtn","_renderKeywordSuggestions","KeywordSuggest","UlKeyword","keywordSuggestions","isLoadingAutoSuggest","isLoadingNode","_renderProductSuggestions","ProductSuggest","UlProduct","productSuggestions","LiProduct","AProduct","thumbnail","_renderCategorySuggestions","CategorySuggest","UlCategory","categorySuggestions","tp","children","dangerouslySetInnerHTML","__html","SearchView","Search","AutoSuggestAriaLabel","AutoSuggestAriaLabelText","searchText","AutoSuggest","autosuggestCategory","autosuggestKeyword","autosuggestProduct","InteractiveFeatureCollectionLinks","_mapEditableLinks","linkdata","editableLinks","attributes","editableLink","additionalProperties","InteractiveFeatureItem","_telemetryContent","handleLinkTextChange","linkIndex","_this$props$config$li","Number","featureItemLinks","_createHeading","_createParagraph","_renderImage","tabindex","StringExtensions","isNullOrWhitespace","isAriaHiddenAttribute","_item$imageSettings","verifiedImageSettings","sm","md","InteractiveFeatureCollection","handleTextChange","itemsCounter","_this$props$config$cl","_title$tag","interactiveItems","interactiveFeatureItems","itemsFeatureCounter","SingleSlideCarousel","flipperPrevLabel","flipperPrevious","flipperNextLabel","flipperNext","parentId","vertical","createHeading","_getFeatureItem","_renderThumbnails","thumbnails","ThumbnailsContainerProps","SingleSlideCarouselComponentProps","_renderThumbnailItem","ThumbnailItemContainerProps","Picture","MediaGalleryView","CarouselProps","Thumbnails","MediaGallery","Modal","_renderItem","Product","ProductDimensions","ProductDetails","productImage","productLink","productPrice","productDimensions","addToCartButton","removeButton","productStatusMessage","entireProductLink","productName","productAriaLabel","inventoryInformation","productUnitOfMeasure","productAttributes","dimension","WishlistItemsView","WishlistItems","status","statusMessage","Products","products","statusNotExistsMessage","From","formProps","inputPinLabel","inputExpLabel","inputProps","inputNumProps","inputPinProps","inputExpProps","inputNumber","inputPin","inputExp","applyButton","supportExternalGiftCard","showGiftCardPinInput","showGiftCardExpInput","alertFieldLabel","SelectedGiftCard","itemProps","selectedGiftCard","GiftCardList","listProps","list","AddResource","_ref5","ShowResource","_ref6","CheckoutGiftCardView","checkoutGiftCardProps","showGiftCard","addGiftCard","Accordion","expandAllButtonRef","collapseAllButtonRef","_onExpandAll","_onCollapseAll","isDisabled","headingComponent","accordionViewProps","_renderAccordionButton","_getAccordionItem","TelemetryConstant","ExpandAll","attributeExpandAll","CollapseAll","attributeCollapseAll","showToggleAll","disabled","expandAllText","toggleAllSeparator","collapseAllText","setState","setTimeout","_this$collapseAllButt","current","focus","_this$expandAllButton","CheckInViewComponent","_props$config$additio","checkInForOrderPickup","confirmationComponent","additionalInformationKeys","FormBuilder","additionalInformationHeading","additionalInformationDefaultHeading","submitButtonText","additionalInformationSubmitButtonText","keys","requiredValueMissingErrorMessage","onSubmit","isCheckedIn","createSearchResultModal","modalProps","refineMenu","sortByDropDown","isRecoSearchPage","modalHeader","createModalBody","modalFooter","renderSort","renderRefiner","refiners","RefineMenuContainer","RefinerSectionContainer","submenu","SortingContainer","renderCategoryHierarchy","categoryHierarchyList","categoryHierarchySeparator","renderTitle","TitleContainer","titleText","renderTitleCount","titleCount","SearchResultContainerView","_props$context$action","SearchResultContainer","pagination","ProductSectionContainer","choiceSummary","isMobile","modalToggle","searchResultModal","TitleViewProps","sortByOptions","CategoryNavContainer","RefineAndProductSectionContainer","FeatureSearchContainer","similarLookProduct","recommendation","renderConfigureDropdown","containerProps","labelContainerProps","renderConfigure","quickOrderGridView","quickOrderGridProps","contentProps","quickOrderGridForm","quickOrderGridFormProductContent","quickOrderGridFormMsgContent","isMobileView","header","container","actions","orderActions","addProductListToBag","removeProductList","renderForm","quickOrderForm","quickOrderProductContent","quickOrderMessageContent","userMessage","addToListBtn","bulkPurchase","ProductComparisonButtonViewFunctionalComponent","productComparisonButton","productComparisonPreview","AccountLoyaltyView","AccountLoyalty","Info","Points","Breakdown","RewardPoints","PointsBreakdown","Button","infoLabel","cardNumber","joinDate","pointsLabel","points","rewardPoints","homeButton","pointsModal","ModalBodyTop","ModalBodyHeaders","activity","availableModalLabel","availableModalTrigger","expiringModalLabel","expiringModalTrigger","returnFocusRef","autoFocus","fade","horizontalPosition","verticalPosition","modalClassName","zIndex","onClosed","onClose","onOpened","toggle","ModalHeader","modalHeaderClassName","ModalBody","modalBodyClassName","pointsDescription","totalPoints","date","balanceLabel","rewardPointsActivity","Activity","activityType","activityDate","activityPoints","PasswordResetVerificationItem","PasswordResetVerificationLoading","PasswordResetVerificationView","passwordResetVerification","passwordResetVerificationLocalAccount","verificationControlWrapper","successMessage","verificationButtonsWrapper","verificationButtons","buttonsWrapper","verificationSuccessModal","verificationSuccessModalMessage","OrderTemplateListView","OrderTemplateList","OrderTemplates","orderTemplates","OrderTemplate","createOrderTemplateButton","templateHeaderStatusMessage","orderTemplate","_renderOrderTemplate","orderTemplateImage","orderTemplateStatusMessage","orderTemplateName","OrderTemplateListViewComponent","headingForEmptyOrderTemplateList","textForEmptyOrderTemplateList","renderOrderTemplate","orderTemplateNodeProps","orderTemplateImageElement","currentImageListLength"],"mappings":"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","file":"static/js/4.9e0fc8419f5fc4e45019.chunk.js","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAddressAddItem, IAddressAddUpdateProps } from '../../common/components/address-add';\nimport { IAddressSelectItem, IAddressSelectProps } from '../../common/components/address-select';\nimport { IAddressShowItem, IAddressShowProps } from '../../common/components/address-show';\nimport { ICheckoutShippingAddressViewProps } from './checkout-shipping-address';\n\n/**\n * Address show component.\n * @param param0 - Root param.\n * @param param0.AddressDetail - Address detail.\n * @param param0.items - IAddressShowItem[].\n * @returns - Address Node.\n */\nconst AddressShow: React.FC = ({ AddressDetail, items }) => {\n return (\n \n {items.map((item: IAddressShowItem) => {\n return <>{item.description};\n })}\n \n );\n};\n\n/**\n * Address Select Component.\n * @param param0 - Root param.\n * @param param0.SelectAddress - Select address.\n * @param param0.addButton - Add button.\n * @param param0.items - IAddressSelectItem[].\n * @param param0.isShowSaveButton - Boolean.\n * @param param0.saveButton - Save button.\n * @param param0.isShowCancelButton - Boolean.\n * @param param0.cancelButton - Cancel button.\n * @returns - SelectAddress Node.\n */\nconst AddressSelect: React.FC = ({\n SelectAddress,\n addButton,\n items,\n isShowSaveButton,\n saveButton,\n isShowCancelButton,\n cancelButton\n}) => {\n return (\n \n {addButton}\n {items.map((item: IAddressSelectItem) => {\n const SelectItem = item.SelectItem;\n return (\n \n {item.input}\n \n \n );\n })}\n {isShowSaveButton && saveButton}\n {isShowCancelButton && cancelButton}\n \n );\n};\n\n/**\n * Address Add Update Component.\n * @param param0 - Root param.\n * @param param0.AddressForm - Address form.\n * @param param0.heading - Address heading.\n * @param param0.items - IAddressAddItem[].\n * @param param0.hasError - Boolean.\n * @param param0.error - Error message.\n * @param param0.isShowSaveButton - Boolean.\n * @param param0.saveButton - Save button.\n * @param param0.isShowCancelButton - Boolean.\n * @param param0.cancelButton - Cancel button.\n * @returns Address add update component node.\n */\nconst AddressAddUpdate: React.FC = ({\n AddressForm,\n heading,\n items,\n hasError,\n error,\n isShowSaveButton,\n saveButton,\n isShowCancelButton,\n cancelButton\n}) => {\n return (\n \n {heading}\n {items.map((item: IAddressAddItem) => {\n const { AddressItem, key, label, alert, input } = item;\n return (\n \n {label}\n {alert}\n {input}\n \n );\n })}\n {hasError && (\n \n {error.title}\n {error.message}\n \n )}\n {isShowSaveButton && saveButton}\n {isShowCancelButton && cancelButton}\n \n );\n};\n\n/**\n * Checkout Shipping Address View Component.\n * @param props - Props.\n * @returns - CheckoutShippingAddress Module.\n */\nconst CheckoutShippingAddressView: React.FC = props => {\n const {\n CheckoutShippingAddress,\n checkoutErrorRef,\n alert,\n viewState,\n showAddress,\n showAddressSelect,\n showAddOrUpdateAddress,\n cartLineImages\n } = props;\n\n return (\n \n {alert}\n {cartLineImages}\n {viewState.isShowAddress && }\n {viewState.isShowAddresList && }\n {viewState.isShowAddOrUpdateAddress && }\n \n );\n};\n\nexport default CheckoutShippingAddressView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBreadcrumbViewProps } from './breadcrumb';\n\nconst BreadCrumbView: React.FC = props => {\n const { root, links, backButton, BreadcrumbContainer, BreadcrumbList, BreadcrumbListItem, separator } = props;\n if (!root && !links && !backButton) {\n props.context.telemetry.error('BreadCrumb content is empty, module wont render');\n return null;\n }\n return (\n \n \n {root && (\n \n {root}\n {links && separator}\n \n )}\n {backButton && {backButton}}\n {links &&\n links.map((link, index) => (\n \n \n {link}\n {links[index + 1] && separator}\n \n \n ))}\n \n \n );\n};\n\nexport default BreadCrumbView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IImageListConfig, IImageListProps, IImagesData } from './image-list.props.autogenerated';\n\n/**\n * The interface for IImageListViewProps.\n */\nexport interface IImageListViewProps extends IImageListProps {\n imageList: IModuleProps;\n imageListHeading?: React.ReactNode;\n imageListContainer: INodeProps;\n imageListItem: INodeProps;\n imageListItemAnchorTag: INodeProps;\n imageListItems: IImageListItem[] | undefined;\n}\n\n/**\n * The interface for IImageListItem.\n */\nexport interface IImageListItem {\n image: JSX.Element | undefined;\n text: JSX.Element | undefined;\n link: string | undefined;\n linkAltText: string | undefined;\n linkAriaLabel: string | undefined;\n linkOpenInNewTab?: boolean;\n}\n\n/**\n *\n * ImageList component.\n * @extends {React.PureComponent>}\n */\nclass ImageList extends React.PureComponent> {\n public render(): JSX.Element | null {\n const { heading } = this.props.config;\n const imageListTitle = heading && ;\n const viewProps: IImageListViewProps = {\n ...this.props,\n imageList: {\n moduleProps: this.props,\n className: classnames('ms-image-list', this.props.config.className),\n tag: 'div'\n },\n imageListHeading: imageListTitle,\n imageListContainer: {\n className: 'ms-image-list__list',\n role: 'list',\n tag: 'ul'\n },\n imageListItem: {\n className: 'ms-image-list__list-item',\n role: 'listitem',\n tag: 'li'\n },\n imageListItemAnchorTag: {\n tag: 'a',\n className: 'ms-image-list__link',\n role: 'link'\n },\n imageListItems: this._renderImageListItems()\n };\n return this.props.renderView(viewProps);\n }\n\n /**\n * Handle paragraph change.\n * @param index - Index of image item in array of image items.\n * @returns Void.\n */\n public handleParagraphChange = (index: number) => (event: Msdyn365.ContentEditableEvent): void => {\n if (this.props.config.images![index]) {\n this.props.config.images![index].paragraph = event.target.value;\n }\n };\n\n /**\n * Render list of images.\n * @returns List of images with text and redirection link.\n */\n private readonly _renderImageListItems = (): IImageListItem[] | undefined => {\n const imageList: IImagesData[] | undefined = this.props.config.images;\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 },\n lg: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 },\n xl: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 }\n },\n lazyload: false,\n disableLazyLoad: true\n };\n return imageList?.map((item, index) => {\n const { image, link, paragraph } = item;\n\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings!,\n imageSettings: (image?.imageSettings ?? defaultImageSettings) as Msdyn365.IImageSettings | undefined\n };\n\n const imageLink: string | undefined = link?.linkUrl.destinationUrl;\n const imageLinkText: string | undefined = link?.linkText ?? link?.ariaLabel;\n const imageLinkAriaLabel: string | undefined = link?.ariaLabel;\n const imageLinkOpenInNewTab = link?.openInNewTab;\n\n // If image is null, we want to render the placeholder SVG - by passing image data with empty src\n const imageImage = (\n \n );\n\n const imageText = paragraph && (\n \n );\n const imageListItem: IImageListItem = {\n image: imageImage,\n text: imageText,\n link: imageLink,\n linkAltText: imageLinkText,\n linkAriaLabel: imageLinkAriaLabel,\n linkOpenInNewTab: imageLinkOpenInNewTab\n };\n return imageListItem;\n });\n };\n}\n\nexport default ImageList;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutPaymentInstrumentViewProps, ICheckoutPaymentOverlayModal } from './checkout-payment-instrument';\n\nconst OverlayModal: React.FC = ({ modal }) => {\n return ;\n};\n\nconst CheckoutPaymentInstrumentView: React.FC = ({\n checkoutPaymentInstrument,\n checkoutErrorRef,\n className,\n id,\n waiting,\n alert,\n paymentInformation,\n addPaymentForm,\n overlayModal,\n ...restProps\n}) => (\n \n {waiting}\n {alert}\n {paymentInformation}\n {addPaymentForm}\n {overlayModal && }\n \n);\n\nexport default CheckoutPaymentInstrumentView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n IBuyboxAddToCartViewProps,\n IBuyboxAddToOrderTemplateViewProps,\n IBuyboxAddToWishlistViewProps,\n IBuyboxCallbacks,\n IBuyboxData,\n IBuyboxFindInStoreViewProps,\n IBuyboxKeyInPriceViewProps,\n IBuyboxProductConfigureDropdownViewProps,\n IBuyboxProductConfigureViewProps,\n IBuyboxProductQuantityViewProps,\n IBuyboxProps,\n IBuyboxShopSimilarLookViewProps,\n IBuyboxState,\n IBuyboxViewProps\n} from '@msdyn365-commerce-modules/buybox';\nimport { IncrementalQuantity, ITelemetryContent, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n IBuyboxProps as IBuyboxExtentionProps,\n IBuyboxResources as IBuyboxExtentionResources\n} from '../definition-extensions/buybox.ext.props.autogenerated';\n\nconst BuyboxView: React.FC> = props => {\n const {\n ModuleProps,\n MediaGalleryContainerProps,\n ProductInfoContainerProps,\n addToCart,\n addToOrderTemplate,\n addToWishlist,\n telemetryContent,\n configure,\n description,\n findInStore,\n quantity,\n price,\n title,\n rating,\n callbacks,\n state,\n resources,\n inventoryLabel,\n shopSimilarLook,\n keyInPrice,\n quantityLimitsMessages,\n max,\n shopSimilarDescription,\n unitOfMeasure\n } = props;\n\n return (\n \n {props.mediaGallery}\n \n {title}\n {price}\n {unitOfMeasure}\n {props.bulkPurchaseLink}\n {description}\n {_renderTextBlock(props.slots.textBlocks)}\n {rating}\n {configure && _renderConfigure(configure)}\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\n {quantity && _renderQuantity(quantity, callbacks, props, state, resources, quantityLimitsMessages, max, telemetryContent)}\n {inventoryLabel}\n {_renderCartAndActions(addToCart, addToOrderTemplate, addToWishlist)}\n {findInStore && _renderFindInStore(findInStore)}\n {_renderSocialShare(props.slots && props.slots.socialShare)}\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\n \n \n );\n};\n\nconst _renderTextBlock = (textBlocks: React.ReactNode[]): JSX.Element | undefined => {\n if (!textBlocks || textBlocks.length === 0) {\n return undefined;\n }\n\n return <>{textBlocks[0]};\n};\n\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\n if (!socialShare || socialShare.length === 0) {\n return undefined;\n }\n\n return <>{socialShare[0]};\n};\n\nconst _renderCartAndActions = (\n addToCart?: IBuyboxAddToCartViewProps,\n addToOrderTemplate?: IBuyboxAddToOrderTemplateViewProps,\n addToWishlist?: IBuyboxAddToWishlistViewProps\n): JSX.Element | undefined => {\n if (!addToCart && !addToWishlist) {\n return undefined;\n }\n\n return (\n
\n {addToCart && addToCart.errorBlock}\n {addToOrderTemplate && addToOrderTemplate.errorBlock}\n {addToWishlist && addToWishlist.errorBlock}\n
\n {addToCart && addToCart.button}\n {addToOrderTemplate && addToOrderTemplate.button}\n {addToWishlist && addToWishlist.button}\n
\n
\n );\n};\n\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\n const { ContainerProps, dropdowns } = configure;\n\n return {dropdowns.map(_renderConfigureDropdown)};\n};\n\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\n\n return (\n \n \n {heading}\n {errors}\n \n {select}\n \n );\n};\n\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\n const { ContainerProps, storeSelector, heading, description, errors, button, modal, productPickupOptionList } = findInStore;\n\n return (\n \n {storeSelector}\n {heading}\n {productPickupOptionList}\n {description}\n {errors}\n {button}\n {modal}\n \n );\n};\n\n/**\n * On Change function.\n * @param callbacks -Callbacks.\n * @returns Update quantity.\n */\nconst onChangeHandler = (callbacks: IBuyboxCallbacks) => (newValue: number): boolean => {\n if (callbacks.updateQuantity) {\n return callbacks.updateQuantity(newValue);\n }\n return true;\n};\n\nconst _renderQuantity = (\n quantityComponent: IBuyboxProductQuantityViewProps,\n callbacks: IBuyboxCallbacks,\n props: IBuyboxProps,\n state: IBuyboxState,\n extentionResources: IBuyboxExtentionResources,\n quantityLimitsMessages: React.ReactNode,\n max: number | undefined,\n telemetryContent?: ITelemetryContent\n): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\n\n const { resources } = props;\n\n const { quantity } = state;\n\n return (\n \n \n {heading}\n {errors}\n \n\n \n {quantityLimitsMessages}\n \n );\n};\n\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\n\n return (\n \n {heading}\n {input}\n \n );\n};\n\nconst _renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\n const { ContainerProps, errors, input } = shopSimilarItem;\n\n return (\n \n {errors}\n {input}\n \n );\n};\n\nexport default BuyboxView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n ISignInItem,\n ISignInLoading,\n ISignInLocalAccount,\n ISignInSocialAccount,\n ISignInSocialItem,\n ISignInB2BAccount,\n ISignInB2BItem,\n ISignInViewProps\n} from './sign-in';\n\nconst LocalAccount: React.FC = ({ localAccount, items, forgetPassword, disclaimer, error, signInButton }) => {\n return (\n \n {items &&\n items.map((item: ISignInItem) => {\n return (\n \n {item.label}\n {item.error}\n {item.input}\n \n );\n })}\n {forgetPassword}\n {disclaimer}\n {error}\n {signInButton}\n \n );\n};\n\nconst SocialAccount: React.FC = ({ socialAccounts, items }) => {\n return (\n \n {items &&\n items.map((item: ISignInSocialItem) => {\n return (\n \n {item.image}\n {item.text}\n \n );\n })}\n \n );\n};\n\nconst B2BAccount: React.FC = ({ socialAccounts, items }) => {\n return (\n \n {items &&\n items.map((item: ISignInB2BItem) => {\n return (\n item && (\n \n {item.text}\n \n )\n );\n })}\n \n );\n};\n\nconst SignInLoading: React.FC = ({ modal, modalBody, icon, message }) => {\n return (\n \n \n {icon}\n {message}\n \n \n );\n};\n\nconst SignInView: React.FC = props => {\n const {\n signIn,\n viewState,\n loading,\n defaultAADConainer,\n aadConainer,\n signInSection,\n signUpSection,\n signInSectionHeading,\n signInLocalAccount,\n signInSocialAccount,\n signUpSectionHeading,\n signInB2BAccount,\n signUpDescription,\n signUpLink\n } = props;\n\n return (\n \n {viewState.isShowLoading && }\n {viewState.isShowLoading && }\n \n \n {signInSectionHeading}\n {LocalAccount(signInLocalAccount)}\n {SocialAccount(signInSocialAccount)}\n {B2BAccount(signInB2BAccount)}\n \n \n {signUpSectionHeading}\n {signUpDescription}\n {signUpLink}\n \n \n \n );\n};\n\nexport default SignInView;\n","import * as React from 'react';\r\nimport {IBrandHeroViewProps} from './brand-hero';\r\nimport {Module, Node} from \"@msdyn365-commerce-modules/utilities\";\r\n\r\nconst BrandHeroView: React.FC = props => {\r\n\tconst {\r\n\t\tbrandHeroContainer,\r\n\t\timageContainer,\r\n\t\tdetailsContainer,\r\n\t\ttitle,\r\n\t\tbrandLogo,\r\n\t\timage\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{image}\r\n\t\t\t\r\n\t\t\t\t{brandLogo}\r\n\t\t\t\t{title}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\nexport default BrandHeroView;","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n ICheckoutTermsAndConditions,\n ICheckoutTermsAndConditionsError,\n ICheckoutTermsAndConditionsViewProps\n} from './checkout-terms-and-conditions';\n\nconst TermsAndCondition: React.FC = ({ termsAndConditionAcceptance, checkBox, description }) => {\n return (\n \n {checkBox}\n {description}\n \n );\n};\n\nconst ErrorMessage: React.FC = ({ error, title, message }) => {\n return (\n \n {title}\n {message}\n \n );\n};\n\nconst CheckoutTermsAndConditionsView: React.FC = props => {\n const {\n checkoutTermsAndConditions,\n checkoutErrorRef,\n viewState,\n termsAndConditionsContent,\n errorMessage,\n saveButton,\n editButton,\n cancelButton\n } = props;\n\n return (\n // TODO: All wrapper div should be provided by viewProps. Once SDK provide the sln, update markup.\n \n {viewState.isError && errorMessage && }\n \n {viewState.isShowSaveButton && saveButton}\n {viewState.isShowEditButton && editButton}\n {viewState.isShowCancelButton && cancelButton}\n \n );\n};\n\nexport default CheckoutTermsAndConditionsView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IInteractiveFeatureItemViewProps } from './interactive-feature-item';\n\n/**\n * Enumerator used to make some calculations to set the proper classnames\n * using modular calculations to see if they are in a right or left column or on first or last row.\n */\nenum MagicNumber {\n modularDivisor = 4,\n caseNumberZero = 0,\n caseNumberOne = 1,\n caseNumberTwo = 2\n}\n\n/**\n * Feature Item View.\n * @param thisProps - Feature Item view props.\n * @param indexItem - Feature Item view props.\n * @param itemCounter - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */\nconst renderMosaic = (thisProps: IInteractiveFeatureItemViewProps, indexItem?: number, itemCounter?: number): JSX.Element | null => {\n const {\n title,\n paragraph,\n image,\n links,\n interactiveFeatureCollectionMosaicContainer,\n interactiveFeatureCollectionMosaicImage,\n interactiveFeatureCollectionMosaicDetails\n } = thisProps;\n const indexAux = indexItem ? indexItem + MagicNumber.caseNumberOne : MagicNumber.caseNumberOne;\n const itemCounterAux = itemCounter ? itemCounter : MagicNumber.caseNumberZero;\n const modularAux = indexAux % MagicNumber.modularDivisor;\n const firstRow = indexAux <= MagicNumber.caseNumberTwo ? 'firstRow' : '';\n const lastRow =\n itemCounterAux && (indexAux === itemCounterAux || indexAux === itemCounterAux - MagicNumber.caseNumberOne) ? 'lastRow' : '';\n const onCornerRight = modularAux === MagicNumber.caseNumberZero ? 'item-corner-right' : '';\n const onCornerLeft = modularAux === MagicNumber.caseNumberOne ? 'item-corner-left' : '';\n const containerClasses = classnames('ms-interactive-feature-collection-mosaic', onCornerLeft, onCornerRight, firstRow, lastRow);\n\n return (\n \n {image}\n \n {title}\n {paragraph}\n {links}\n \n \n );\n};\n\n/**\n * Feature Item View.\n * @param thisProps - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */ const renderCarousel = (thisProps: IInteractiveFeatureItemViewProps): JSX.Element | null => {\n const {\n title,\n paragraph,\n image,\n links,\n interactiveFeatureCollectionCarouselContainer,\n interactiveFeatureCollectionCarouselImage,\n interactiveFeatureCollectionCarouselContent\n } = thisProps;\n return (\n \n {image}\n \n {title}\n {paragraph}\n {links}\n \n \n );\n};\n\n/**\n * Feature Item View.\n * @param props - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */\nexport const FeatureItemViewComponent: React.FC = props => {\n const { isMosaic, featureItem, indexItem, itemCounter } = props;\n if (isMosaic) {\n return <>{renderMosaic(props, indexItem, itemCounter)};\n }\n return {renderCarousel(props)};\n};\n\nexport default FeatureItemViewComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IImageListViewProps } from './image-list';\n\n/**\n * Render the thumbnail item images.\n * @param props - The image list view props.\n * @returns Return HTML having IImageListViewProps props with image List.\n */\nexport const imageListView = (props: IImageListViewProps): JSX.Element => {\n const { imageList, imageListContainer, imageListHeading, imageListItem, imageListItems, imageListItemAnchorTag } = props;\n return (\n \n {imageListHeading}\n \n {imageListItems?.map(item => {\n let indexKey: string;\n\n if (item.image) {\n const image = (item.image as unknown) as Msdyn365.Image;\n indexKey = image.props.src as string;\n } else {\n const text = (item.text as unknown) as Msdyn365.RichTextComponent;\n indexKey = text.props.text as string;\n }\n return (\n \n {item.image && (\n \n {item.image}\n \n )}\n {item.text}\n \n );\n })}\n
\n \n );\n};\n\nexport default imageListView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IFooterCategoryConfig, IFooterCategoryProps } from './footer-category.props.autogenerated';\n\nexport interface IFooterCategoryViewProps extends IFooterCategoryProps {\n categories: React.ReactNode[];\n FooterList: IModuleProps;\n FooterListItem: INodeProps;\n}\n\n/**\n *\n * FooterCategory component.\n * @extends {React.PureComponent>}\n */\nclass FooterCategory extends React.PureComponent> {\n public render(): JSX.Element | null {\n if (!this.props.slots || !this.props.slots.content || this.props.slots.content.length === 0) {\n this.props.context.telemetry.error('footer slots content is empty, module wont render');\n return null;\n }\n const viewprops = {\n ...this.props,\n categories: this.props.slots.content,\n FooterList: {\n moduleProps: this.props,\n className: classnames('ms-footer__list', this.props.config.className),\n tag: 'ul'\n },\n FooterListItem: {\n className: classnames('ms-footer__list-item', this.props.config.className),\n tag: 'li'\n }\n };\n\n return this.props.renderView(viewprops) as React.ReactElement;\n }\n}\n\nexport default FooterCategory;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\ninterface ILink {\n className?: string;\n text?: string;\n href?: string;\n ariaLabel?: string;\n index: string;\n noclick?: boolean;\n telemetryContent: ITelemetryContent;\n}\n\nexport const Link: React.FC = ({ text, className, href, ariaLabel, index, noclick, telemetryContent }) => {\n const payLoad = getPayloadObject('click', telemetryContent, '', '');\n\n const linkText = text !== undefined ? text : '';\n payLoad.contentAction.etext = linkText;\n\n // Construct telemetry attribute to render\n const attribute = getTelemetryAttributes(telemetryContent, payLoad);\n\n return (\n \n {linkText}\n \n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface ISeparator {\n separator: string;\n}\n\nexport const Separator: React.FC = ({ separator }) => (\n \n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { CategoryHierarchy } from '@msdyn365-commerce/commerce-entities';\nimport MsDyn365 from '@msdyn365-commerce/core';\nimport { ICategoryUrl } from '@msdyn365-commerce/core-internal/dist/types/interfaces/ICategoryPathInterfaces';\nimport { TextValueTranslation } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBreadcrumbData } from './breadcrumb.data';\nimport { IBreadcrumbProps, ILinksData } from './breadcrumb.props.autogenerated';\nimport { Link } from './components/link';\nimport { Separator } from './components/separator';\n\nexport interface IBreadcrumbViewProps extends IBreadcrumbProps {\n root?: React.ReactNode;\n links?: React.ReactNode[];\n backButton?: React.ReactNode;\n separator?: React.ReactNode;\n BreadcrumbContainer: IModuleProps;\n BreadcrumbList: INodeProps;\n BreadcrumbListItem: INodeProps;\n}\n\n/**\n *\n * Breadcrumb component.\n * @extends {React.PureComponent>}\n */\nclass Breadcrumb extends React.PureComponent> {\n private readonly _pageType: string | undefined = this.props.context.request.urlTokens.pageType;\n\n private readonly telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public render(): JSX.Element | null {\n const { className } = this.props.config;\n let rootLink = null;\n let breadcrumbLinks = null;\n let backButtonComponent = null;\n rootLink = this._getRootLink();\n const itemPosition = rootLink ? 1 : 0;\n if (this._pageType === 'Category') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n breadcrumbLinks = this._getCategoryHierarchy(itemPosition);\n }\n } else if (this._pageType === 'Product') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n const breaCrumbType = this.props.context.app.config.breadcrumbType;\n if (breaCrumbType === 'category') {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'categoryAndBack') {\n backButtonComponent = this._getPDPBackButton();\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'back') {\n backButtonComponent = this._getPDPBackButton();\n if (backButtonComponent === null) {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n }\n }\n } else {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n }\n const linkSeparator = ;\n\n const breadcrumbViewProps = {\n ...this.props,\n BreadcrumbContainer: {\n moduleProps: this.props,\n className: classnames('ms-breadcrumb', className),\n tag: 'nav',\n role: 'navigation'\n },\n BreadcrumbList: {\n tag: 'ol' as NodeTag,\n className: 'ms-breadcrumb_list'\n },\n BreadcrumbListItem: {\n tag: 'li',\n className: 'ms-breadcrumb_item'\n },\n root: rootLink,\n links: breadcrumbLinks,\n backButton: backButtonComponent,\n separator: linkSeparator\n };\n return this.props.renderView(breadcrumbViewProps) as React.ReactElement;\n }\n\n private readonly _getRootLink = (): JSX.Element | null => {\n const { root } = this.props.config;\n if (!root || !root.linkUrl || !root.linkUrl.destinationUrl) {\n this.props.context.telemetry.error('BreadCrumb link url content is empty, link wont render');\n return null;\n }\n return (\n \n );\n };\n\n private readonly _getCustomBreadcrumbLinks = (itemPosition: number): JSX.Element[] | null => {\n const { links } = this.props.config;\n\n if (!links || links.length === 0) {\n this.props.context.telemetry.error('BreadCrumb links content is empty, links wont render');\n return null;\n }\n const defaultValueToSubtract = 1;\n return links.map((value: ILinksData, index: number) => {\n itemPosition++;\n const keyIndex = index;\n return index !== links.length - defaultValueToSubtract ? (\n \n ) : (\n
\n {value.linkText}\n
\n );\n });\n };\n\n private readonly _getCategoryHierarchy = (itemPosition: number): JSX.Element[] | null => {\n const { data } = this.props;\n const categoryHierarchy = data.categoryHierarchy.result;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category Hierarchy content is empty, module wont render');\n return null;\n }\n return categoryHierarchy.map((value: CategoryHierarchy, index: number) => {\n itemPosition++;\n\n const friendlyName = this._getFriendlyName(this.props.context.request.locale, value.NameTranslations);\n\n return (\n \n );\n });\n };\n\n /**\n * The function to get translation name for the locale.\n * @param locale - The locale information.\n * @param nameTranslations - The name translations names.\n * @returns - The translation name for the locale.\n */\n private readonly _getFriendlyName = (locale: string, nameTranslations?: TextValueTranslation[]): string | undefined => {\n let nameTranslation: TextValueTranslation | undefined;\n if (locale && nameTranslations && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations.find(item => item.Language!.toLowerCase() === locale.toLowerCase());\n }\n\n // If friendly name for current locale is null, should use default locale.\n if (nameTranslation === undefined && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations[0];\n }\n\n return nameTranslation?.Text;\n };\n\n private readonly _getPDPLinks = (itemPosition: number): JSX.Element[] | null => {\n const { data, config } = this.props;\n const categoryHierarchy = data.categoryPaths.result;\n const product = data.product.result;\n const url = this.props.context.request.url.requestUrl.href;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category path content is empty for the product');\n return null;\n }\n const links: JSX.Element[] = [];\n\n categoryHierarchy.map((value: ICategoryUrl, index: number) => {\n itemPosition++;\n links.push(\n \n );\n });\n if (product && !config.hideProductName) {\n itemPosition++;\n links.push(\n \n );\n }\n return links;\n };\n\n private readonly _goBack = (): void => {\n window.history.back();\n };\n\n private readonly _getPDPBackButton = (): JSX.Element | null => {\n const isBackAllowed =\n this.props.context && this.props.context.request && this.props.context.request.query && this.props.context.request.query.back;\n if (!isBackAllowed) {\n return null;\n }\n if (MsDyn365.isBrowser && (document.referrer === '' || window.history.length < 2)) {\n return null;\n }\n return (\n \n {this.props.resources.backToResultsText}\n \n );\n };\n}\n\nexport default Breadcrumb;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionItemViewProps } from './accordion-item';\n\nconst AccordionItemView: React.FC = props => {\n const { drawer, accordionSlots, AccordionItemContainer, AccordionItemContent } = props;\n return (\n \n \n \n {accordionSlots &&\n accordionSlots.accordionItemContent &&\n accordionSlots.accordionItemContent.length &&\n _renderAccordionItemContent(accordionSlots.accordionItemContent)}\n \n \n \n );\n};\n\nconst _renderAccordionItemContent = (items: React.ReactNode[]): JSX.Element | null => {\n return (\n <>\n {items && items.length > 0\n ? items.map((item: React.ReactNode, index: number) => {\n return {item};\n })\n : null}\n \n );\n};\nexport default AccordionItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutPickupViewProps } from './checkout-pickup';\nimport { ICheckoutPickupGroupViewProps } from './components/checkout-pickup-group';\n\nconst CheckoutPickupView: React.FC = props => {\n const { checkoutPickup, checkoutErrorRef, viewState, headerError, waiting, pickupGroups } = props;\n\n return (\n \n {viewState.isLoading && waiting}\n {viewState.isHeaderError && headerError}\n {pickupGroups.map(\n (pickupGroupViewProps: ICheckoutPickupGroupViewProps, index: number): React.ReactElement => {\n const {\n pickupGroupContainer,\n dateTimeslotContainer,\n groupDivider,\n groupHeader,\n groupErrorMessage,\n cartLineImages,\n pickupDateDropdown,\n pickupTimeslotDropdown,\n selectedDateTimeslot,\n pickupAddress\n } = pickupGroupViewProps;\n\n return (\n \n {groupDivider}\n {groupHeader}\n {groupErrorMessage}\n {cartLineImages}\n {viewState.isShowDropdown && (\n \n {pickupDateDropdown}\n {pickupTimeslotDropdown}\n \n )}\n {viewState.isShowSelected && pickupAddress}\n {viewState.isShowSelected && selectedDateTimeslot}\n \n );\n }\n )}\n \n );\n};\n\nexport default CheckoutPickupView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ControlledDrawer, getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { IDrawerState } from '@msdyn365-commerce-modules/utilities/dist/types/drawer/Drawer';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput, interactionStyle } from '../..';\nimport { IAccordionItemData } from './accordion-item.data';\nimport { IAccordionItemProps } from './accordion-item.props.autogenerated';\n\nexport interface IAccordionItemViewProps {\n AccordionItemContainer: IModuleProps;\n drawer: INodeProps;\n accordionSlots: INodeProps;\n AccordionItemContent: INodeProps;\n className: string;\n}\n\nexport interface IAccordionItemExtentedProps extends IAccordionItemProps {\n interactionStyle?: interactionStyle;\n}\n\n/**\n *\n * AccordionItem component.\n * @extends {React.Component}\n */\n@observer\nclass AccordionItem extends React.Component {\n private readonly moduleClassName: string = 'ms-accordion-item';\n\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IAccordionItemProps) {\n super(props);\n this._onToggle = this._onToggle.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public shouldComponentUpdate(nextProps: IAccordionItemProps): boolean {\n if (this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { slots, renderView, config, data } = this.props;\n const accordionExpandedStateResult = data && data.accordionExpandedState && data.accordionExpandedState.result;\n const expanded =\n accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded === undefined\n ? data && config.isExpandedOnInitialLoad\n : accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded;\n const viewProps = {\n ...this.props,\n AccordionItemContainer: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n AccordionItemContent: {\n className: 'ms-accordion-item-content'\n },\n drawer: {\n tag: ControlledDrawer,\n className: `${this.moduleClassName}__drawer`,\n toggleButtonText: (config.accordionItemTitle && config.accordionItemTitle) || '',\n collapseProps: { isOpen: expanded },\n onToggle: this._onToggle,\n onTextChange: this.handleHeadingChange,\n requestContext: this.props.context.request,\n telemetryContent: this.telemetryContent\n },\n accordionSlots: slots\n };\n return renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.accordionItemTitle = event.target.value);\n\n private _onToggle(state: IDrawerState): void {\n if (!state.isOpen && this.props.interactionStyle === interactionStyle.ExpandOneItemOnly) {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n }\n }\n}\nexport default AccordionItem;\n","import React from \"react\";\r\n\r\nexport function armstrong():JSX.Element{\r\n\treturn (\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function bach(): JSX.Element {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function conn(): JSX.Element {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function holton(): JSX.Element {\r\n\treturn (\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function king(): JSX.Element {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function leblanc(): JSX.Element {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function ludwig(): JSX.Element {\r\n\treturn (\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function musser(): JSX.Element {\r\n\treturn (\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function scherl(): JSX.Element {\r\n\treturn (\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function selmer(): JSX.Element {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}\r\nexport function yanagisawa(): JSX.Element {\r\n\treturn (\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t)\r\n}","import * as React from 'react';\r\nimport {IBrandHeroData} from './brand-hero.data';\r\nimport {IBrandHeroProps} from './brand-hero.props.autogenerated';\r\nimport {IModuleProps, INodeProps} from \"@msdyn365-commerce-modules/utilities\";\r\nimport * as Msdyn365 from \"@msdyn365-commerce/core\";\r\nimport classnames from 'classnames';\r\nimport {IContentBlockFullConfig} from \"@msdyn365-commerce-modules/content-block/src/modules/content-block/content-block\";\r\nimport {armstrong, bach, conn, king, holton, leblanc, ludwig, musser, scherl, selmer, yanagisawa} from './svgs/logos';\r\n\r\nexport interface IBrandHeroViewProps extends IBrandHeroProps {\r\n\th1Text?: string;\r\n\tbrandLogo: string;\r\n\tclassName?: string;\r\n\timage?: React.ReactNode;\r\n\ttitle?: React.ReactNode;\r\n\tbrandHeroContainer: IModuleProps;\r\n\timageContainer: INodeProps;\r\n\tdetailsContainer: INodeProps;\r\n}\r\n\r\n/**\r\n *\r\n * BrandHero component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass BrandHero extends React.PureComponent> {\r\n\r\n\tpublic render(): JSX.Element | null {\r\n\t\tconst { h1Text, brandLogo, image, className } = this.props.config;\r\n\t\tconst contentBlockTitle = h1Text && (\r\n\t\t\t\r\n\t\t);\r\n\t\tconst imageProps = {\r\n\t\t\tgridSettings: this.props.context.request.gridSettings ?? {},\r\n\t\t\timageSettings: image?.imageSettings\r\n\t\t\t//lazyload: false ??\r\n\t\t};\r\n\t\t//Get the CTA Link builders from content-block.tsx if we need this later. Same for text\r\n\r\n\t\tconst brandHeroImage = (\r\n\t\t\t\r\n\t\t);\r\n\t\t//Setup the array of logos to grab (this is TERRIBLE CODE)\r\n\t\tconst logos = {\r\n\t\t\tarmstrong, bach, conn, king, holton, leblanc, ludwig, musser, scherl, selmer, yanagisawa\r\n\t\t}\r\n\r\n\t\tif (!contentBlockTitle){\r\n\t\t\tthis.props.context.telemetry.error('Brand Hero H1 is empty, module wont render.');\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\tconst brandHeroBlockProps = {\r\n\t\t\t...this.props,\r\n\t\t\ttitle: contentBlockTitle,\r\n\t\t\timage: brandHeroImage,\r\n\t\t\tmoduleClass: this.props.config.className,\r\n\t\t\tbrandHeroContainer: {\r\n\t\t\t\tmoduleProps: this.props,\r\n\t\t\t\tclassName: classnames('brand-hero', className)\r\n\t\t\t},\r\n\t\t\timageContainer: { className: 'brand-hero__image' },\r\n\t\t\tdetailsContainer: { className: 'brand-hero__details' },\r\n\t\t\tbrandLogo: logos[`${brandLogo}`]()\r\n\t\t};\r\n\r\n\t\treturn this.props.renderView(brandHeroBlockProps) as React.ReactElement;\r\n\t}\r\n}\r\nexport default BrandHero;","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionViewProps } from './accordion';\n\nconst accordionView: React.FC = props => {\n const { heading, AccordionContainer, accordionItems } = props;\n if (!props.heading && !props.accordionButtons && !props.accordionItems) {\n props.context.telemetry.error('Accordion content is empty, module wont render');\n return null;\n }\n return (\n \n \n {heading}\n {props.accordionButtons && {props.accordionButtons}}\n \n {accordionItems}\n \n );\n};\n\nexport default accordionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IBusinessSignUpItem, IBusinessSignUpViewProps } from './business-sign-up';\n\nconst BusinessSignUpItem: React.FC = ({ wrapper, label, errorMessage, input, isAddressInput }) => {\n // Hide label and error message if rendering address section\n return (\n \n {!isAddressInput && label}\n {!isAddressInput && errorMessage}\n {input}\n \n );\n};\n\nconst BusinesSignUpView: React.FC = props => {\n const { businessSignUp, ContainerWrapper, heading, businessSignUpForm } = props;\n\n const { FormWrapper, buttons, items, errorMessage, disclaimer } = businessSignUpForm;\n\n return (\n \n \n {heading}\n \n {items &&\n items.map((item: IBusinessSignUpItem) => {\n return ;\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n {disclaimer}\n \n \n \n );\n};\n\nexport default BusinesSignUpView;\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { IBreadcrumbViewProps } from '@msdyn365-commerce-modules/breadcrumb/src/modules/breadcrumb/./breadcrumb';\r\n\r\nconst BreadCrumbView: React.FC = props => {\r\n\tconst { root, links, backButton, BreadcrumbContainer, BreadcrumbList, BreadcrumbListItem, separator } = props;\r\n\tif (!root && !links && !backButton) {\r\n\t\tprops.context.telemetry.error('BreadCrumb content is empty, module wont render');\r\n\t\treturn null;\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{root && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{root}\r\n\t\t\t\t\t\t{links && separator}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{backButton && {backButton}}\r\n\t\t\t\t{links && links.map((link, index) => {\r\n\t\t\t\t\tif(link && typeof link === \"object\" && ('props' in link)){\r\n\t\t\t\t\t\treturn \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{(link && link.props.text)}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{links[index + 2] && separator}\t {/*THIS IS TERRIBLE!!, should be +1*/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default BreadCrumbView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { IFooterCategoryViewProps } from './footer-category';\n\nexport const FooterCategoryView: React.FC = props => {\n const { categories, FooterList, FooterListItem } = props;\n if (!categories || categories.length === 0) {\n props.context.telemetry.error('Footer content is empty, module wont render');\n return null;\n }\n return (\n \n {categories.map((category: ReactNode, index: number) => {\n return (\n \n {category}\n \n );\n })}\n \n );\n};\n\nexport default FooterCategoryView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { IInteractiveFeatureCollectionViewProps } from './interactive-feature-collection';\n\n/**\n * Feature Collection View.\n * @param props - Feature Collection view props.\n * @returns Feature Collection View.\n */\nexport const interactiveFeatureCollectionView: React.FC = props => {\n const {\n title,\n interactiveFeatureCollectionHeading,\n interactiveFeatureCollectionContainer,\n interactiveFeatureCollectionDesktopContainer,\n interactiveFeatureCollectionDesktopItems,\n interactiveFeatureCollectionMobileItems,\n interactiveFeatureCollectionMobileContainer,\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer\n } = props;\n return (\n \n {title}\n {interactiveFeatureCollectionDesktopItems}\n \n \n {interactiveFeatureCollectionMobileItems &&\n interactiveFeatureCollectionMobileItems.map((tileItem: ReactNode, index: number) => {\n const keyIndex = `interactive-feature-carousel-item__${index}`;\n return (\n \n {tileItem}\n \n );\n })}\n \n \n \n );\n};\n\nexport default interactiveFeatureCollectionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAddressAddItem, IAddressAddUpdateProps } from '../../common/components/address-add';\nimport { IBusinessAccountAddressViewProps } from './business-account-address';\n\n/**\n * Address Add Update Component.\n * @param param0 - Root param.\n * @param param0.AddressForm - Address form.\n * @param param0.heading - Address Heading.\n * @param param0.items - IAddressAddItem[].\n * @param param0.hasError - Boolean.\n * @param param0.error - IAddressError.\n * @param param0.isShowSaveButton - Boolean.\n * @param param0.saveButton - Save button.\n * @param param0.isShowCancelButton - Boolean.\n * @param param0.cancelButton - Cancel button.\n * @returns - AddressForm Node.\n */\nconst AddressAddUpdate: React.FC = ({\n AddressForm,\n heading,\n items,\n hasError,\n error,\n isShowSaveButton,\n saveButton,\n isShowCancelButton,\n cancelButton\n}) => {\n return (\n \n {heading}\n {items.map((item: IAddressAddItem) => {\n const { AddressItem, key, label, alert, input } = item;\n return (\n \n {label}\n {hasError && alert}\n {input}\n \n );\n })}\n {hasError && (\n \n {error.title}\n {error.message}\n \n )}\n {isShowSaveButton && saveButton}\n {isShowCancelButton && cancelButton}\n \n );\n};\n\n/**\n * Business Account Address View Component.\n * @param props - Props.\n * @returns - BusinessAccountAddress Module.\n */\nconst BusinessAccountAddressView: React.FC = props => {\n const { BusinessAccountAddress, showAddOrUpdateAddress } = props;\n\n return (\n \n \n \n );\n};\n\nexport default BusinessAccountAddressView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAddContactInfo, ICheckoutGuestProfileViewProps, IShowContactInfo } from './checkout-guest-profile';\n\nexport const ShowContactInfo: React.FC = ({ showInfoProps, email, editButton }) => (\n \n {email}\n {editButton}\n \n);\n\nexport const AddContactInfo: React.FC = ({\n addFormProps,\n submitButton,\n cancelButton,\n inputGroupProps,\n label,\n error,\n input\n}) => (\n \n \n {label}\n {error}\n {input}\n \n {submitButton}\n {cancelButton}\n \n);\n\nconst CheckoutGuestProfileView: React.FC = ({\n moduleProps,\n checkoutErrorRef,\n alert,\n showContactInfo,\n addContactInfo\n}) => {\n return (\n \n {alert}\n {showContactInfo && }\n {addContactInfo && }\n \n );\n};\n\nexport default CheckoutGuestProfileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountOrderTemplatesTileViewProps } from './account-order-templates-tile';\n\nconst AccountOrderTemplatesTileView: React.FC = props => {\n const { AccountOrderTemplatesTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountOrderTemplatesTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICartIconViewProps } from './cart-icon';\nimport { IFlyoutCartLineItemViewProps } from './components/flyout-cart-line-items';\n\nconst _renderCartlines = (cartLines: IFlyoutCartLineItemViewProps[] | undefined, props: ICartIconViewProps): JSX.Element[] | null => {\n if (!cartLines) {\n props.context.telemetry.error('Cartlines content is empty, module wont render');\n return null;\n }\n return cartLines.map((cartLine, index) => {\n return (\n \n {cartLine.cartline}\n {cartLine.storeLocation}\n {cartLine.remove}\n \n );\n });\n};\n\nconst CartIconView: React.FC = (props: ICartIconViewProps) => (\n \n {props.cartIcon}\n {props.FlyoutContainer ? (\n \n {props.flyoutTitle}\n {props.checkoutBlockedDueToUnavailableFunds}\n {_renderCartlines(props.cartlines, props)}\n {props.totalPrice}\n {props.checkoutAsSignInUserButton}\n {props.checkoutAsGuestButton}\n {props.goToCartButton}\n \n ) : (\n false\n )}\n \n);\n\nexport default CartIconView;\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\n\r\nconst SearchView: React.FC = props => {\r\n\tconst {\r\n\t\tSearch,\r\n\t\tAutoSuggestAriaLabel,\r\n\t\tAutoSuggestAriaLabelText,\r\n\t\tsearchText,\r\n\t\tAutoSuggest,\r\n\t\tKeywordSuggest,\r\n\t\tProductSuggest,\r\n\t\tCategorySuggest,\r\n\t\tUlKeyword,\r\n\t\tUlProduct,\r\n\t\tUlCategory,\r\n\t\tform,\r\n\t\tautosuggestCategory,\r\n\t\tautosuggestKeyword,\r\n\t\tautosuggestProduct,\r\n\t\tSearchForm,\r\n\t\tFormWrapper,\r\n\t\tlabel,\r\n\t\tisLoadingAutoSuggest,\r\n\t\tisLoadingNode\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{label}\r\n\t\t\t{_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n\t\t\t\r\n\t\t\t\t{searchText && searchText.length > 0 ? {AutoSuggestAriaLabelText} : ''}\r\n\t\t\t\t{_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{form.input}\r\n\t\t\t\t{form.cancelBtn}\r\n\t\t\t\t{form.submitBtn}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n\tKeywordSuggest: INodeProps,\r\n\tUlKeyword: INodeProps,\r\n\tkeywordSuggestions?: ISearchKeywordViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tkeywordSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tkeywordSuggestions.text.map(text => {\r\n\t\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n\tProductSuggest: INodeProps,\r\n\tUlProduct: INodeProps,\r\n\tproductSuggestions?: ISearchProductViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tproductSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{/*{productSuggestions.title}*/}\r\n\t\t\t\t\t
  • Go to results
  • \r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tproductSuggestions.items.map((item, index) => {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{item.thumbnail}\r\n\t\t\t\t\t\t\t\t\t\t{item.text}\r\n\t\t\t\t\t\t\t\t\t\t{item.price}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n\tCategorySuggest: INodeProps,\r\n\tUlCategory: INodeProps,\r\n\tcategorySuggestions?: ISearchCategoryViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tcategorySuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{categorySuggestions.title}\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest && categorySuggestions.text.map(text => {\r\n\t\t\t\t\t\tlet tp: any;\r\n\t\t\t\t\t\tif(text && typeof text === \"object\" && \"props\" in text){\r\n\t\t\t\t\t\t\ttp = text ? text.props.children.props : undefined;\r\n\t\t\t\t\t\t\ttp['aria-label'] = tp['aria-label'].split('|').slice(1).join(', ');\r\n\t\t\t\t\t\t\ttp.children.props.dangerouslySetInnerHTML.__html = tp.children.props.dangerouslySetInnerHTML.__html.split('|').slice(1).join(' | ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nexport default SearchView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../interactive-feature-item.props.autogenerated';\n\n/**\n * Interactive Feature links.\n */\nexport interface IInteractiveFeatureLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n telemetryContent: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\n/**\n *\n * IInteractiveFeatureLinks component.\n * @extends {React.PureComponent}\n */\nexport class InteractiveFeatureCollectionLinks extends React.PureComponent {\n public render(): JSX.Element {\n const editableLinks = this._mapEditableLinks(this.props.links);\n return (\n
    \n {editableLinks && ArrayExtensions.hasElements(editableLinks) ? (\n \n ) : null}\n
    \n );\n }\n\n /**\n * IInteractiveFeatureLinks component.\n * @param linkdata - Link data.\n * @returns Editable links.\n */\n private readonly _mapEditableLinks = (linkdata?: ILinksData[]): Msdyn365.ILinksData[] | null => {\n if (!linkdata || !ArrayExtensions.hasElements(linkdata)) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n for (const link of linkdata) {\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', this.props.telemetryContent, '', '');\n const linkText = link.linkText ? link.linkText : '';\n payLoad.contentAction.etext = linkText;\n const attributes = getTelemetryAttributes(this.props.telemetryContent, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-interactive-feature-collection__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'button',\n additionalProperties: attributes,\n onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)\n };\n editableLinks.push(editableLink);\n }\n\n return editableLinks;\n };\n}\nexport default InteractiveFeatureCollectionLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { InteractiveFeatureCollectionLinks } from './components';\nimport { IHeadingData, IInteractiveFeatureItemProps } from './interactive-feature-item.props.autogenerated';\n\n/**\n * Interactive Feature Item view props.\n */\nexport interface IInteractiveFeatureItemViewProps extends IInteractiveFeatureItemProps<{}> {\n title: React.ReactNode;\n paragraph: React.ReactNode;\n image: React.ReactNode;\n links: React.ReactNode;\n featureItem: IModuleProps;\n isMosaic: boolean;\n indexItem?: number;\n itemCounter?: number;\n\n interactiveFeatureCollectionCarouselContainer: INodeProps;\n interactiveFeatureCollectionCarouselImage: INodeProps;\n interactiveFeatureCollectionCarouselContent: INodeProps;\n\n interactiveFeatureCollectionMosaicContainer: INodeProps;\n interactiveFeatureCollectionMosaicImage: INodeProps;\n interactiveFeatureCollectionMosaicDetails: INodeProps;\n}\n\n/**\n * Interactive Feature Item Extented props.\n */\nexport interface IInteractiveFeatureItemExtentedProps extends IInteractiveFeatureItemProps<{}> {\n isMosaic?: boolean;\n indexItem?: number;\n itemCounter?: number;\n}\n\n/**\n *\n * InteractiveFeatureItem component.\n * @extends {React.PureComponent}\n */\nexport class InteractiveFeatureItem extends React.PureComponent {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public constructor(props: IInteractiveFeatureItemProps<{}>) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { indexItem, itemCounter, isMosaic } = this.props;\n const { heading, paragraph, image, links } = this.props.config;\n const featureItemLinks = links && ArrayExtensions.hasElements(links) && (\n \n );\n\n const viewProps = {\n ...this.props,\n indexItem,\n itemCounter,\n isMosaic: isMosaic ? isMosaic : false,\n title: this._createHeading(heading),\n paragraph: this._createParagraph(paragraph),\n image: this._renderImage(image),\n links: featureItemLinks,\n featureItem: {\n moduleProps: this.props,\n className: ''\n },\n interactiveFeatureCollectionCarouselContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__container'\n },\n interactiveFeatureCollectionCarouselImage: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__image'\n },\n interactiveFeatureCollectionCarouselContent: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__heading'\n },\n interactiveFeatureCollectionMosaicContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-mosaic',\n 'aria-label': heading?.text,\n tabindex: '0',\n role: 'group'\n },\n interactiveFeatureCollectionMosaicImage: {\n className: 'ms-interactive-feature-collection-mosaic__image'\n },\n interactiveFeatureCollectionMosaicDetails: {\n className: 'ms-interactive-feature-collection-mosaic__details'\n }\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Handles heading content change event.\n * @param event - Content editable event.\n */\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n /**\n * Handles paragraph content change event.\n * @param event - Content editable event.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.paragraph = event.target.value;\n };\n\n /**\n * Handles paragraph content change event.\n * @param linkIndex - Index of link in linkarray.\n * @returns Void.\n */\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent): void => {\n if (this.props.config.links?.[Number(linkIndex)]) {\n this.props.config.links[Number(linkIndex)].linkText = event.target.value;\n }\n };\n\n private _createParagraph(text?: Msdyn365.RichText): React.ReactNode | null {\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n private _createHeading(heading?: IHeadingData): React.ReactNode | null {\n if (!heading) {\n return null;\n }\n if (StringExtensions.isNullOrWhitespace(heading.text)) {\n return null;\n }\n\n return (\n \n );\n }\n\n private _renderImage(item?: Msdyn365.IImageData, isAriaHiddenAttribute?: boolean): React.ReactNode | null {\n // Even if image.src is null, we render the Image component to render the fallback SVG\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=328&h=459&m=6', w: 328, h: 459 },\n sm: { q: 'w=348&h=487&m=6', w: 348, h: 487 },\n md: { q: 'w=650&h=366&m=6', w: 650, h: 366 },\n lg: { q: 'w=650&h=366&m=6', w: 650, h: 366 },\n xl: { q: 'w=650&h=366&m=6', w: 650, h: 366 }\n },\n lazyload: true\n };\n const verifiedImageSettings = item?.imageSettings?.viewports ? item.imageSettings : defaultImageSettings;\n return (\n \n );\n }\n}\n\nexport default InteractiveFeatureItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n getTelemetryObject,\n IComponentNodeProps,\n IModuleProps,\n INodeProps,\n ISingleSlideCarouselProps,\n ITelemetryContent,\n NodeTag,\n SingleSlideCarousel\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { IInteractiveFeatureCollectionProps } from './interactive-feature-collection.props.autogenerated';\n\n/**\n * Interactive Feature Collection view props.\n */\nexport interface IInteractiveFeatureCollectionViewProps extends IInteractiveFeatureCollectionProps<{}> {\n title: React.ReactNode;\n interactiveFeatureCollectionHeading: INodeProps;\n interactiveFeatureCollectionContainer: IModuleProps;\n interactiveFeatureCollectionDesktopContainer: INodeProps;\n interactiveFeatureCollectionDesktopItems: React.ReactNode[];\n interactiveFeatureCollectionMobileContainer: INodeProps;\n interactiveFeatureCollectionMobileItems: React.ReactNode[];\n singleSlideCarouselComponentProps: INodeProps;\n singleSlideCarouselItemContainer: INodeProps;\n}\n\n/**\n *\n * InteractiveFeatureCollection component.\n * @extends {React.PureComponent>}\n */\nexport class InteractiveFeatureCollection extends React.PureComponent> {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n private static _getFeatureItem(item: React.ReactNode, index: number, itemsCounter: number): React.ReactNode {\n const keyIndex = `interactive-feature-mosaic-item__${index}`;\n return (\n \n {React.cloneElement(item as React.ReactElement, { indexItem: index, itemCounter: itemsCounter, isMosaic: true })}\n \n );\n }\n\n public constructor(props: IInteractiveFeatureCollectionProps) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { resources } = this.props;\n const { title, className } = this.props.config;\n const interactiveItems = this.props.slots && this.props.slots.interactiveFeatureItems;\n const itemsFeatureCounter = interactiveItems && interactiveItems.length;\n const singleSlideCarouselComponentProps: IComponentNodeProps = {\n tag: SingleSlideCarousel,\n className: this.props.config.className ?? '',\n flipperPrevLabel: resources.flipperPrevious,\n flipperNextLabel: resources.flipperNext,\n parentId: this.props.id,\n telemetryContent: this._telemetryContent,\n vertical: false\n };\n const initItemsFeatureCounter = 0;\n const createHeading = title && (\n \n );\n const viewProps = {\n ...this.props,\n title: createHeading,\n interactiveFeatureCollectionHeading: {\n className: 'ms-interactive-feature-collection__heading'\n },\n interactiveFeatureCollectionContainer: {\n moduleProps: this.props,\n className: classnames('ms-interactive-feature-collection', className)\n },\n interactiveFeatureCollectionDesktopContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-desktop'\n },\n interactiveFeatureCollectionMobileContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-mobile'\n },\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer: {\n tag: 'li' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel',\n role: 'listitem'\n },\n interactiveFeatureCollectionMobileItems: this.props.slots.interactiveFeatureItems,\n interactiveFeatureCollectionDesktopItems:\n itemsFeatureCounter > initItemsFeatureCounter &&\n interactiveItems.map((item: React.ReactNode, index: number) =>\n InteractiveFeatureCollection._getFeatureItem(item, index, itemsFeatureCounter)\n )\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * To handle text change.\n * @param event - To handle text change event.\n * @name - HandleTextChange\n * @public\n * @returns - The Text value.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.title!.text = event.target.value);\n}\n\nexport default InteractiveFeatureCollection;\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IMediaGalleryThumbnailItemViewProps, IMediaGalleryThumbnailsViewProps, IMediaGalleryViewProps } from '@msdyn365-commerce-modules/media-gallery/src/modules/media-gallery/../..';\r\n\r\nconst MediaGalleryView: React.FC = props => {\r\n\tconst { CarouselProps, Thumbnails, MediaGallery, Modal } = props;\r\n\tlet items = Thumbnails ? Thumbnails.items : null;\r\n\tif(items && items.length <= 2){\r\n\t\tMediaGallery.className += ' no-thumbs';\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t{Modal}\r\n\t\t\t{_renderThumbnails(Thumbnails)}\r\n\t\t\r\n\t);\r\n};\r\n\r\n//Added length >= 2 to prevent only single thumbnails from rendering\r\nconst _renderThumbnails = (thumbnails: IMediaGalleryThumbnailsViewProps): JSX.Element => {\r\n\tconst { ThumbnailsContainerProps, SingleSlideCarouselComponentProps, items } = thumbnails;\r\n\tif(items && items.length >= 2){\r\n\t\treturn (\r\n\t\t\t
    \r\n\t\t\t\t{items && items.map(_renderThumbnailItem)}\r\n\t\t\t
    \r\n\t\t);\r\n\t} else {\r\n\t\treturn \r\n\t}\r\n};\r\n\r\nconst _renderThumbnailItem = (thumbnail: IMediaGalleryThumbnailItemViewProps): JSX.Element => {\r\n\tconst { ThumbnailItemContainerProps, Picture } = thumbnail;\r\n\r\n\treturn {Picture};\r\n};\r\n\r\nexport default MediaGalleryView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { IBreadcrumbViewProps } from '@msdyn365-commerce-modules/breadcrumb/src/modules/breadcrumb/./breadcrumb';\r\n\r\n\r\nconst BreadCrumbView: React.FC = props => {\r\n\tconst { root, links, backButton, BreadcrumbContainer, BreadcrumbList, BreadcrumbListItem, separator } = props;\r\n\tif (!root && !links && !backButton) {\r\n\t\tprops.context.telemetry.error('BreadCrumb content is empty, module wont render');\r\n\t\treturn null;\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{root && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{root}\r\n\t\t\t\t\t\t{links && separator}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{backButton && {backButton}}\r\n\t\t\t\t{links && links.map((link, index) => {\r\n\t\t\t\t\tif(link && typeof link === \"object\" && ('props' in link)){\r\n\t\t\t\t\t\treturn \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{(link && link.props.text)}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{links[index + 2] && separator}\t {/*THIS IS TERRIBLE!!, should be +1*/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default BreadCrumbView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IMediaGalleryThumbnailItemViewProps, IMediaGalleryThumbnailsViewProps, IMediaGalleryViewProps } from '@msdyn365-commerce-modules/media-gallery/src/modules/media-gallery/../..';\r\n\r\nconst MediaGalleryView: React.FC = props => {\r\n\tconst { CarouselProps, Thumbnails, MediaGallery, Modal } = props;\r\n\tlet items = Thumbnails ? Thumbnails.items : null;\r\n\tif(items && items.length <= 2){\r\n\t\tMediaGallery.className += ' no-thumbs';\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t{Modal}\r\n\t\t\t{_renderThumbnails(Thumbnails)}\r\n\t\t\r\n\t);\r\n};\r\n\r\n//Added length >= 2 to prevent only single thumbnails from rendering\r\nconst _renderThumbnails = (thumbnails: IMediaGalleryThumbnailsViewProps): JSX.Element => {\r\n\tconst { ThumbnailsContainerProps, SingleSlideCarouselComponentProps, items } = thumbnails;\r\n\tif(items && items.length >= 2){\r\n\t\treturn (\r\n\t\t\t
    \r\n\t\t\t\t{items && items.map(_renderThumbnailItem)}\r\n\t\t\t
    \r\n\t\t);\r\n\t} else {\r\n\t\treturn \r\n\t}\r\n};\r\n\r\nconst _renderThumbnailItem = (thumbnail: IMediaGalleryThumbnailItemViewProps): JSX.Element => {\r\n\tconst { ThumbnailItemContainerProps, Picture } = thumbnail;\r\n\r\n\treturn {Picture};\r\n};\r\n\r\nexport default MediaGalleryView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\n\r\nconst SearchView: React.FC = props => {\r\n\tconst {\r\n\t\tSearch,\r\n\t\tAutoSuggestAriaLabel,\r\n\t\tAutoSuggestAriaLabelText,\r\n\t\tsearchText,\r\n\t\tAutoSuggest,\r\n\t\tKeywordSuggest,\r\n\t\tProductSuggest,\r\n\t\tCategorySuggest,\r\n\t\tUlKeyword,\r\n\t\tUlProduct,\r\n\t\tUlCategory,\r\n\t\tform,\r\n\t\tautosuggestCategory,\r\n\t\tautosuggestKeyword,\r\n\t\tautosuggestProduct,\r\n\t\tSearchForm,\r\n\t\tFormWrapper,\r\n\t\tlabel,\r\n\t\tisLoadingAutoSuggest,\r\n\t\tisLoadingNode\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{label}\r\n\t\t\t{_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n\t\t\t\r\n\t\t\t\t{searchText && searchText.length > 0 ? {AutoSuggestAriaLabelText} : ''}\r\n\t\t\t\t{_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{form.input}\r\n\t\t\t\t{form.cancelBtn}\r\n\t\t\t\t{form.submitBtn}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n\tKeywordSuggest: INodeProps,\r\n\tUlKeyword: INodeProps,\r\n\tkeywordSuggestions?: ISearchKeywordViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tkeywordSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tkeywordSuggestions.text.map(text => {\r\n\t\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n\tProductSuggest: INodeProps,\r\n\tUlProduct: INodeProps,\r\n\tproductSuggestions?: ISearchProductViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tproductSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{/*{productSuggestions.title}*/}\r\n\t\t\t\t\t
  • Go to results
  • \r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tproductSuggestions.items.map((item, index) => {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{item.thumbnail}\r\n\t\t\t\t\t\t\t\t\t\t{item.text}\r\n\t\t\t\t\t\t\t\t\t\t{item.price}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n\tCategorySuggest: INodeProps,\r\n\tUlCategory: INodeProps,\r\n\tcategorySuggestions?: ISearchCategoryViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tcategorySuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{categorySuggestions.title}\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest && categorySuggestions.text.map(text => {\r\n\t\t\t\t\t\tlet tp: any;\r\n\t\t\t\t\t\tif(text && typeof text === \"object\" && \"props\" in text){\r\n\t\t\t\t\t\t\ttp = text ? text.props.children.props : undefined;\r\n\t\t\t\t\t\t\ttp['aria-label'] = tp['aria-label'].split('|').slice(1).join(', ');\r\n\t\t\t\t\t\t\ttp.children.props.dangerouslySetInnerHTML.__html = tp.children.props.dangerouslySetInnerHTML.__html.split('|').slice(1).join(' | ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nexport default SearchView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n INodeProps,\n ITelemetryContent,\n Module,\n Node\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IWishlistItemViewProps } from '../..';\nimport { IWishlistItemsViewProps } from './wishlist-items';\n\nconst WishlistItemsView: React.FC = props => {\n const {\n WishlistItems,\n status,\n statusMessage,\n heading,\n Products,\n products,\n Product,\n ProductDetails,\n ProductDimensions,\n telemetryContent,\n statusNotExistsMessage\n } = props;\n\n return (\n \n {heading}\n {statusNotExistsMessage}\n {status !== 'SUCCESS' && statusMessage}\n {Products && products && products.length > 0 && (\n \n {products &&\n products.map(product => {\n return product && _renderItem(product, Product, ProductDimensions, ProductDetails, telemetryContent);\n })}\n \n )}\n \n );\n};\n\nconst _renderItem = (\n product: IWishlistItemViewProps,\n Product?: INodeProps,\n ProductDimensions?: INodeProps,\n ProductDetails?: INodeProps,\n telemetryContent?: ITelemetryContent\n): JSX.Element | null => {\n const {\n key,\n productImage,\n productLink,\n productPrice,\n productDimensions,\n addToCartButton,\n removeButton,\n productStatusMessage,\n entireProductLink,\n productName,\n productAriaLabel,\n inventoryInformation,\n productUnitOfMeasure\n } = product;\n const payLoad = getPayloadObject('click', telemetryContent!, '', key);\n const productAttributes = getTelemetryAttributes(telemetryContent!, payLoad);\n if (entireProductLink) {\n return (\n \n \n {productImage}\n {productName}\n {productDimensions && ProductDimensions && (\n \n {productDimensions.map(dimension => {\n return dimension;\n })}\n \n )}\n {productPrice}\n {productUnitOfMeasure}\n \n {inventoryInformation}\n {addToCartButton}\n {removeButton}\n {productStatusMessage}\n \n );\n }\n return (\n \n {productImage}\n {productLink}\n {productDimensions && ProductDimensions && (\n \n {productDimensions.map(dimension => {\n return dimension;\n })}\n \n )}\n {productPrice}\n {addToCartButton}\n {removeButton}\n {productStatusMessage}\n \n );\n};\n\nexport default WishlistItemsView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAddResource, ICheckoutGiftCardViewProps, IForm, IItem, IList, IShowResource } from './checkout-gift-card';\n\nexport const From: React.FC = ({\n formProps,\n label,\n inputPinLabel,\n inputExpLabel,\n alert,\n inputProps,\n inputNumProps,\n inputPinProps,\n inputExpProps,\n inputNumber,\n inputPin,\n inputExp,\n applyButton,\n supportExternalGiftCard,\n showGiftCardPinInput,\n showGiftCardExpInput,\n alertFieldLabel\n}) => (\n \n {alert}\n {supportExternalGiftCard ? (\n \n \n {label}\n {inputNumber}\n \n {showGiftCardPinInput && (\n \n {inputPinLabel}\n {inputPin}\n \n )}\n {showGiftCardExpInput && (\n \n {inputExpLabel}\n {inputExp}\n \n )}\n {(showGiftCardPinInput || showGiftCardExpInput) && alertFieldLabel}\n \n ) : (\n <>\n {label}\n {inputNumber}\n \n )}\n {applyButton}\n \n);\n\nexport const SelectedGiftCard: React.FC = ({ itemProps, selectedGiftCard, removeButton }) => (\n \n {selectedGiftCard}\n {removeButton}\n \n);\n\nexport const GiftCardList: React.FC = ({ listProps, list }) => (\n \n {list.map(({ id, ...item }) => (\n \n ))}\n \n);\n\nexport const AddResource: React.FC = ({ form, list }) => (\n <>\n {form && }\n {list && }\n \n);\n\nexport const ShowResource: React.FC = ({ title, list }) => (\n <>\n {title}\n {list && }\n \n);\n\nconst CheckoutGiftCardView: React.FC = props => {\n const { checkoutGiftCardProps, checkoutErrorRef, showGiftCard, addGiftCard } = props;\n return (\n \n {showGiftCard && }\n {addGiftCard && }\n \n );\n};\n\nexport default CheckoutGiftCardView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n NodeTag,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput } from '../..';\nimport { IAccordionData } from './accordion.data';\nimport { IAccordionProps } from './accordion.props.autogenerated';\n\n/**\n *\n * Accordion component.\n * @extends {React.PureComponent>}\n */\n\nexport interface ICallToActionProps {\n link: INodeProps[];\n}\n\n/**\n * Added interface for state management.\n */\nexport interface IAccordianState {\n isDisabled: boolean;\n}\n\nexport interface IAccordionViewProps extends IAccordionProps<{}> {\n heading?: React.ReactNode;\n AccordionContainer: IModuleProps;\n HeaderSection: INodeProps;\n HeadingWrapper: INodeProps;\n accordianButtonsContainer: INodeProps;\n accordionButtons: React.ReactNode;\n accordionItemContainer: INodeProps;\n accordionItems: React.ReactNode;\n}\n\n/**\n *\n * Accordion component.\n * @extends {React.Component>}\n */\n@observer\nclass Accordion extends React.PureComponent, IAccordianState> {\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private readonly expandAllButtonRef: React.RefObject = React.createRef();\n\n private readonly collapseAllButtonRef: React.RefObject = React.createRef();\n\n constructor(props: IAccordionProps) {\n super(props);\n this._onExpandAll = this._onExpandAll.bind(this);\n this._onCollapseAll = this._onCollapseAll.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.payLoad = getPayloadObject('click', this.telemetryContent, '');\n this.state = { isDisabled: false };\n }\n\n public render(): JSX.Element {\n const { slots } = this.props;\n const { heading, className } = this.props.config;\n const headingComponent = heading && heading.text && (\n \n );\n\n const accordionViewProps = {\n ...this.props,\n AccordionContainer: {\n moduleProps: this.props,\n className: classnames('ms-accordion', className)\n },\n HeaderSection: { className: 'ms-accordion-header-section' },\n HeadingWrapper: { className: 'ms-accordion-header-section-container' },\n heading: headingComponent,\n config: this.props && this.props.config,\n accordianButtonsContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-header-section-toggle-button-container'\n },\n accordionButtons: this._renderAccordionButton(),\n accordionItemContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-item-section'\n },\n accordionItems:\n slots &&\n slots.accordionItems &&\n slots.accordionItems.length > 0 &&\n slots.accordionItems.map((item: React.ReactNode, index: number) => this._getAccordionItem(item, index))\n };\n return this.props.renderView(accordionViewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n private _renderAccordionButton(): React.ReactNode | null {\n const { config, resources } = this.props;\n const { heading } = config;\n this.payLoad.contentAction.etext = TelemetryConstant.ExpandAll;\n const attributeExpandAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n this.payLoad.contentAction.etext = TelemetryConstant.CollapseAll;\n const attributeCollapseAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n if (!config.showToggleAll) {\n this.props.context.telemetry.error('Accordion button content is empty, module wont render');\n return null;\n }\n return (\n <>\n \n {resources.expandAllText}\n \n  \n {resources.toggleAllSeparator}\n  \n \n {resources.collapseAllText}\n \n \n );\n }\n\n private _onExpandAll(): void {\n const accordionState = { isAllExpanded: true };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (accordionState.isAllExpanded) {\n this.setState({\n isDisabled: true\n });\n setTimeout(() => {\n this.collapseAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _onCollapseAll(): void {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (!accordionState.isAllExpanded) {\n this.setState({\n isDisabled: false\n });\n setTimeout(() => {\n this.expandAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _getAccordionItem(item: React.ReactNode, index: number): React.ReactNode {\n return (\n \n {React.cloneElement(item as React.ReactElement, { interactionStyle: this.props.config.interactionStyle })}\n \n );\n }\n}\n\nexport default Accordion;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { FormBuilder } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckInViewProps } from './check-in-for-pickup';\n\n/**\n * The check-in view for submitting check-in, capturing additional information, and showing check-in confirmation.\n * @param props - The check-in view properties.\n * @returns The check-in view as a react component.\n */\nconst CheckInViewComponent: React.FC = (props: ICheckInViewProps) => {\n const { headerError, checkInForOrderPickup, confirmationComponent, viewState } = props;\n return (\n <>\n {viewState.isHeaderError && headerError}\n {!viewState.isHeaderError && ArrayExtensions.hasElements(props.config.additionalInformationKeys) && (\n \n )}\n {!viewState.isHeaderError &&\n !ArrayExtensions.hasElements(props.config.additionalInformationKeys) &&\n viewState.isCheckedIn &&\n confirmationComponent}\n \n );\n};\n\nexport default CheckInViewComponent;\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { IBreadcrumbViewProps } from '@msdyn365-commerce-modules/breadcrumb/src/modules/breadcrumb/./breadcrumb';\r\n\r\nconst BreadCrumbView: React.FC = props => {\r\n\tconst { root, links, backButton, BreadcrumbContainer, BreadcrumbList, BreadcrumbListItem, separator } = props;\r\n\tif (!root && !links && !backButton) {\r\n\t\tprops.context.telemetry.error('BreadCrumb content is empty, module wont render');\r\n\t\treturn null;\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{root && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{root}\r\n\t\t\t\t\t\t{links && separator}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t{backButton && {backButton}}\r\n\t\t\t\t{links && links.map((link, index) => {\r\n\t\t\t\t\tif(link && typeof link === \"object\" && ('props' in link)){\r\n\t\t\t\t\t\treturn \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{(link && link.props.text)}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{links[index + 2] && separator}\t {/*THIS IS TERRIBLE!!, should be +1*/}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn ''\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default BreadCrumbView;\r\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchResultModalViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./components';\r\nimport { ICategoryHierarchyViewProps, IRefineMenuViewProps, ISearchResultContainerViewProps, ISortByViewProps, ITitleViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./search-result-container';\r\n\r\nconst SearchResultContainerView: React.FC = props => {\r\n\tconst { SearchResultContainer, products, pagination, ProductSectionContainer, choiceSummary, isMobile, modalToggle, searchResultModal, TitleViewProps, refineMenu, categoryHierarchy, sortByOptions, CategoryNavContainer, RefineAndProductSectionContainer, errorMessage, FeatureSearchContainer, similarLookProduct } = props;\r\n\tconst isRecoSearchPage = props.context.actionContext.requestContext.query?.recommendation;\r\n\tif(isMobile){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{renderTitle(TitleViewProps)}\r\n\t\t\t\t{choiceSummary}\r\n\t\t\t\t{modalToggle}\r\n\t\t\t\t{createSearchResultModal(searchResultModal, refineMenu, sortByOptions, isRecoSearchPage)}\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t{products}\r\n\t\t\t\t
    \r\n\t\t\t\t{pagination}\r\n\t\t\t
    \r\n\t\t);\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{TitleViewProps && renderTitle(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t\t{categoryHierarchy && renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{TitleViewProps && renderTitleCount(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{sortByOptions && !isRecoSearchPage && renderSort(sortByOptions)}\r\n\t\t\t\t\t{refineMenu && renderRefiner(refineMenu)}\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t{choiceSummary}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t\t{products}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t{pagination}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nconst createSearchResultModal = (modalProps: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element => {\r\n\treturn React.cloneElement(modalProps.modal, {}, modalProps.modalHeader,\r\n\t\tcreateModalBody(modalProps, refineMenu, sortByDropDown, isRecoSearchPage), modalProps.modalFooter);\r\n};\r\n\r\nconst createModalBody = (props: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tif (sortByDropDown) {\r\n\t\treturn React.cloneElement(props.modalBody, {}, renderSort(sortByDropDown, isRecoSearchPage), renderRefiner(refineMenu));\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderRefiner = (props: IRefineMenuViewProps): JSX.Element | null => {\r\n\tconst { refiners, RefineMenuContainer, RefinerSectionContainer } = props;\r\n\tif (refiners){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{refiners.map((submenu, index) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{submenu}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderSort = (props: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tconst { SortingContainer, sortByDropDown } = props;\r\n\r\n\tif (sortByDropDown && !isRecoSearchPage) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{sortByDropDown}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderCategoryHierarchy = (props: ICategoryHierarchyViewProps): JSX.Element | null => {\r\n\tconst { categoryHierarchyList, categoryHierarchySeparator } = props;\r\n\tif (categoryHierarchyList && categoryHierarchyList.length > 0) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn ;\t//not a good way to fix, but keeps the flex: space-between working when empty\r\n};\r\n\r\nconst renderTitle = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title, TitleContainer } = props;\r\n\tif (title) {\r\n\t\treturn (

    {title.titleText}

    );\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderTitleCount = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title } = props;\r\n\tif (title) {\r\n\t\treturn (\r\n\t\t\t
    {title.titleCount}
    \r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nexport default SearchResultContainerView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IProductDimensionConfigureDropdownViewProps, IProductDimensionConfigureViewProps } from '@msdyn365-commerce/components';\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IQuickOrderGridFormViewProps } from './components';\nimport { IQuickOrderGridViewProps } from './quick-order-grid';\n\n/**\n * Render product dimension/configure dropdown.\n * @param dropdown -- Product dimension drop down.\n * @returns Dropdown.\n */\nconst renderConfigureDropdown = (dropdown: IProductDimensionConfigureDropdownViewProps): JSX.Element => {\n const { containerProps, labelContainerProps, heading, errors, select } = dropdown;\n\n return (\n \n {heading}\n {errors}\n {select}\n \n );\n};\n\n/**\n * Render product dimension/configure container.\n * @param configure -- Product dimension configuration.\n * @returns Container to have dimension dropdown.\n */\nconst renderConfigure = (configure?: IProductDimensionConfigureViewProps): JSX.Element | null => {\n if (configure !== undefined) {\n const { containerProps, dropdowns } = configure;\n\n return {dropdowns.map(renderConfigureDropdown)};\n }\n return null;\n};\n\n/**\n * Render product dimension/configure container.\n * @param form -- Form props.\n * @param isMobileView -- Flag to check mobile view.\n * @param quickOrderForm - Form component container.\n * @param quickOrderProductContent - Form product component.\n * @param quickOrderMessageContent - Form user message component.\n * @param configure - Product Dimension component.\n * @returns Jsx element of quick order form component.\n */\nconst renderForm = (\n form: IQuickOrderGridFormViewProps,\n isMobileView: boolean,\n quickOrderForm: INodeProps,\n quickOrderProductContent: INodeProps,\n quickOrderMessageContent: INodeProps,\n configure?: IProductDimensionConfigureViewProps\n) => {\n return isMobileView ? (\n \n \n {form.product}\n {renderConfigure(configure)}\n {form.quantity}\n {form.userMessage}\n {form.addToListBtn}\n \n \n ) : (\n \n {form.userMessage}\n \n {form.product}\n {renderConfigure(configure)}\n {form.quantity}\n {form.addToListBtn}\n \n \n );\n};\n\n/**\n * Retrieves current sort criteria.\n * @param props - QuickOrder Grid view props.\n * @returns - Render View.\n */\nconst quickOrderGridView: React.FC = props => {\n const {\n quickOrderGridProps,\n contentProps,\n form,\n quickOrderGridForm,\n drawer,\n configure,\n quickOrderGridFormProductContent,\n quickOrderGridFormMsgContent,\n isMobileView,\n header,\n container,\n actions,\n orderActions\n } = props;\n\n return (\n \n {header}\n {actions && (\n \n {orderActions?.addProductListToBag}\n {orderActions?.removeProductList}\n \n )}\n \n \n {renderForm(\n form as IQuickOrderGridFormViewProps,\n isMobileView,\n quickOrderGridForm,\n quickOrderGridFormProductContent,\n quickOrderGridFormMsgContent,\n configure\n )}\n {props.bulkPurchase}\n \n \n {container}\n \n );\n};\n\nexport default quickOrderGridView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IProductComparisonButtonViewProps } from './product-comparison-button';\n\n/**\n * Represents product comparison button view.\n * @param props - View props for product comparison button.\n * @returns Functional component of product comparison button.\n */\nexport const ProductComparisonButtonViewFunctionalComponent: React.FC = props => {\n const { productComparisonButton, productComparisonPreview } = props;\n\n return (\n \n {productComparisonButton}\n {productComparisonPreview}\n \n );\n};\n\nexport default ProductComparisonButtonViewFunctionalComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IAccordionExpandedState } from './data-actions/accordion-state';\nimport { createAccordionStateInput } from './data-actions/accordion-state-data-action';\nimport accordion from './modules/accordion/accordion';\nimport { interactionStyle } from './modules/accordion/accordion.props.autogenerated';\nimport accordionView from './modules/accordion/accordion.view';\n\nexport * from './modules/accordion/accordion';\nexport * from './modules/accordion/accordion.view';\n\nexport { accordion, accordionView, createAccordionStateInput, IAccordionExpandedState, interactionStyle };\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\n\r\nconst SearchView: React.FC = props => {\r\n\tconst {\r\n\t\tSearch,\r\n\t\tAutoSuggestAriaLabel,\r\n\t\tAutoSuggestAriaLabelText,\r\n\t\tsearchText,\r\n\t\tAutoSuggest,\r\n\t\tKeywordSuggest,\r\n\t\tProductSuggest,\r\n\t\tCategorySuggest,\r\n\t\tUlKeyword,\r\n\t\tUlProduct,\r\n\t\tUlCategory,\r\n\t\tform,\r\n\t\tautosuggestCategory,\r\n\t\tautosuggestKeyword,\r\n\t\tautosuggestProduct,\r\n\t\tSearchForm,\r\n\t\tFormWrapper,\r\n\t\tlabel,\r\n\t\tisLoadingAutoSuggest,\r\n\t\tisLoadingNode\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{label}\r\n\t\t\t{_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n\t\t\t\r\n\t\t\t\t{searchText && searchText.length > 0 ? {AutoSuggestAriaLabelText} : ''}\r\n\t\t\t\t{_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\t{_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory, isLoadingAutoSuggest, isLoadingNode)}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{form.input}\r\n\t\t\t\t{form.cancelBtn}\r\n\t\t\t\t{form.submitBtn}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n\tKeywordSuggest: INodeProps,\r\n\tUlKeyword: INodeProps,\r\n\tkeywordSuggestions?: ISearchKeywordViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tkeywordSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tkeywordSuggestions.text.map(text => {\r\n\t\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n\tProductSuggest: INodeProps,\r\n\tUlProduct: INodeProps,\r\n\tproductSuggestions?: ISearchProductViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tproductSuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{/*{productSuggestions.title}*/}\r\n\t\t\t\t\t
  • Go to results
  • \r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest &&\r\n\t\t\t\t\t\tproductSuggestions.items.map((item, index) => {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{item.thumbnail}\r\n\t\t\t\t\t\t\t\t\t\t{item.text}\r\n\t\t\t\t\t\t\t\t\t\t{item.price}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t)\r\n\t);\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n\tCategorySuggest: INodeProps,\r\n\tUlCategory: INodeProps,\r\n\tcategorySuggestions?: ISearchCategoryViewProps,\r\n\tisLoadingAutoSuggest?: boolean,\r\n\tisLoadingNode?: React.ReactNode\r\n) => {\r\n\treturn (\r\n\t\tcategorySuggestions && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{categorySuggestions.title}\r\n\t\t\t\t\t{isLoadingAutoSuggest && isLoadingNode}\r\n\t\t\t\t\t{!isLoadingAutoSuggest && categorySuggestions.text.map(text => {\r\n\t\t\t\t\t\tlet tp: any;\r\n\t\t\t\t\t\tif(text && typeof text === \"object\" && \"props\" in text){\r\n\t\t\t\t\t\t\ttp = text ? text.props.children.props : undefined;\r\n\t\t\t\t\t\t\ttp['aria-label'] = tp['aria-label'].split('|').slice(1).join(', ');\r\n\t\t\t\t\t\t\ttp.children.props.dangerouslySetInnerHTML.__html = tp.children.props.dangerouslySetInnerHTML.__html.split('|').slice(1).join(' | ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn text;\r\n\t\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t);\r\n};\r\n\r\nexport default SearchView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Modal, ModalBody, ModalHeader, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountLoyaltyViewProps } from './account-loyalty';\n\nconst AccountLoyaltyView: React.FC = props => {\n const {\n AccountLoyalty,\n Info,\n Points,\n Breakdown,\n RewardPoints,\n PointsBreakdown,\n Button,\n heading,\n infoLabel,\n cardNumber,\n joinDate,\n pointsLabel,\n points,\n rewardPoints,\n homeButton,\n pointsModal\n } = props;\n const { ModalBodyTop, ModalBodyHeaders } = pointsModal;\n return (\n \n {heading}\n \n {infoLabel}\n {cardNumber}\n {joinDate}\n \n \n {pointsLabel}\n {points}\n\n \n {rewardPoints &&\n rewardPoints.map((activity, index) => {\n return (\n \n {activity.label}\n \n {activity.availableModalLabel}\n {activity.availableModalTrigger}\n \n\n \n {activity.expiringModalLabel}\n {activity.expiringModalTrigger}\n \n \n );\n })}\n \n \n\n {homeButton}\n\n {(!pointsModal.isOpen && ) || (\n \n \n {pointsModal.modalHeader}\n \n \n \n {pointsModal.pointsDescription}\n {pointsModal.totalPoints}\n \n \n {pointsModal.date}\n {pointsModal.balanceLabel}\n \n {pointsModal.rewardPointsActivity &&\n pointsModal.rewardPointsActivity.map((activity, index) => {\n const { Activity, activityType, activityDate, activityPoints } = activity;\n return (\n \n {activityType}\n {activityDate}\n {activityPoints}\n \n );\n })}\n \n \n )}\n \n );\n};\n\nexport default AccountLoyaltyView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n IPasswordResetVerificationItem,\n IPasswordResetVerificationLoading,\n IPasswordResetVerificationLocalAccount,\n IPasswordResetVerificationViewProps\n} from './password-reset-verification';\n\nconst PasswordResetVerificationItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\n return (\n \n {label}\n {errorMessage}\n {input}\n \n );\n};\n\nconst LocalAccount: React.FC = ({\n localAccount,\n verificationControlWrapper,\n items,\n successMessage,\n errorMessage,\n verificationButtonsWrapper,\n verificationButtons,\n buttonsWrapper,\n buttons,\n verificationSuccessModal,\n verificationSuccessModalMessage\n}) => {\n return (\n \n \n {successMessage &&\n successMessage.map((message: React.ReactNode, index: number) => {\n return {message};\n })}\n {items &&\n items.map((item: IPasswordResetVerificationItem) => {\n // eslint-disable-next-line react/jsx-key\n return ;\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n \n {verificationButtons &&\n verificationButtons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n \n\n \n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n \n\n \n \n \n \n \n );\n};\n\nconst PasswordResetVerificationLoading: React.FC = ({ modal, modalBody, icon, message }) => {\n return (\n \n \n {icon}\n {message}\n \n \n );\n};\n\nconst PasswordResetVerificationView: React.FC = props => {\n const {\n passwordResetVerification,\n viewState,\n loading,\n defaultAADConainer,\n aadConainer,\n heading,\n passwordResetVerificationLocalAccount\n } = props;\n\n return (\n \n {viewState.isShowLoading && }\n {viewState.isShowLoading && }\n \n {heading}\n {LocalAccount(passwordResetVerificationLocalAccount)}\n \n \n );\n};\n\nexport default PasswordResetVerificationView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISingleOrderTemplateViewProps } from './components';\nimport { IOrderTemplateListViewProps } from './order-template-list';\n\nexport const OrderTemplateListView: React.FC = props => {\n const {\n OrderTemplateList,\n status,\n statusMessage,\n heading,\n OrderTemplates,\n orderTemplates,\n OrderTemplate,\n createOrderTemplateButton,\n templateHeaderStatusMessage\n } = props;\n\n return (\n \n {heading}\n {status !== 'SUCCESS' && statusMessage}\n \n {createOrderTemplateButton}\n {templateHeaderStatusMessage}\n \n {OrderTemplates && orderTemplates && orderTemplates.length > 0 && (\n \n {orderTemplates &&\n orderTemplates.map(orderTemplate => {\n return _renderOrderTemplate(orderTemplate, OrderTemplate);\n })}\n \n )}\n \n );\n};\n\nconst _renderOrderTemplate = (orderTemplate: ISingleOrderTemplateViewProps, OrderTemplate?: INodeProps): JSX.Element | null => {\n const { key, addToCartButton, orderTemplateImage, orderTemplateStatusMessage, removeButton, orderTemplateName } = orderTemplate;\n return (\n \n {orderTemplateName}\n {orderTemplateImage}\n {addToCartButton}\n {removeButton}\n {orderTemplateStatusMessage}\n \n );\n};\n\nexport default OrderTemplateListView;\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchResultModalViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./components';\r\nimport { ICategoryHierarchyViewProps, IRefineMenuViewProps, ISearchResultContainerViewProps, ISortByViewProps, ITitleViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./search-result-container';\r\n\r\nconst SearchResultContainerView: React.FC = props => {\r\n\tconst { SearchResultContainer, products, pagination, ProductSectionContainer, choiceSummary, isMobile, modalToggle, searchResultModal, TitleViewProps, refineMenu, categoryHierarchy, sortByOptions, CategoryNavContainer, RefineAndProductSectionContainer, errorMessage, FeatureSearchContainer, similarLookProduct } = props;\r\n\tconst isRecoSearchPage = props.context.actionContext.requestContext.query?.recommendation;\r\n\tif(isMobile){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{renderTitle(TitleViewProps)}\r\n\t\t\t\t{choiceSummary}\r\n\t\t\t\t{modalToggle}\r\n\t\t\t\t{createSearchResultModal(searchResultModal, refineMenu, sortByOptions, isRecoSearchPage)}\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t{products}\r\n\t\t\t\t
    \r\n\t\t\t\t{pagination}\r\n\t\t\t
    \r\n\t\t);\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{TitleViewProps && renderTitle(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t\t{categoryHierarchy && renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{TitleViewProps && renderTitleCount(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{sortByOptions && !isRecoSearchPage && renderSort(sortByOptions)}\r\n\t\t\t\t\t{refineMenu && renderRefiner(refineMenu)}\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t{choiceSummary}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t\t{products}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t{pagination}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nconst createSearchResultModal = (modalProps: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element => {\r\n\treturn React.cloneElement(modalProps.modal, {}, modalProps.modalHeader,\r\n\t\tcreateModalBody(modalProps, refineMenu, sortByDropDown, isRecoSearchPage), modalProps.modalFooter);\r\n};\r\n\r\nconst createModalBody = (props: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tif (sortByDropDown) {\r\n\t\treturn React.cloneElement(props.modalBody, {}, renderSort(sortByDropDown, isRecoSearchPage), renderRefiner(refineMenu));\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderRefiner = (props: IRefineMenuViewProps): JSX.Element | null => {\r\n\tconst { refiners, RefineMenuContainer, RefinerSectionContainer } = props;\r\n\tif (refiners){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{refiners.map((submenu, index) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{submenu}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderSort = (props: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tconst { SortingContainer, sortByDropDown } = props;\r\n\r\n\tif (sortByDropDown && !isRecoSearchPage) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{sortByDropDown}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderCategoryHierarchy = (props: ICategoryHierarchyViewProps): JSX.Element | null => {\r\n\tconst { categoryHierarchyList, categoryHierarchySeparator } = props;\r\n\tif (categoryHierarchyList && categoryHierarchyList.length > 0) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn ;\t//not a good way to fix, but keeps the flex: space-between working when empty\r\n};\r\n\r\nconst renderTitle = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title, TitleContainer } = props;\r\n\tif (title) {\r\n\t\treturn (

    {title.titleText}

    );\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderTitleCount = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title } = props;\r\n\tif (title) {\r\n\t\treturn (\r\n\t\t\t
    {title.titleCount}
    \r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nexport default SearchResultContainerView;\r\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISearchResultModalViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./components';\r\nimport { ICategoryHierarchyViewProps, IRefineMenuViewProps, ISearchResultContainerViewProps, ISortByViewProps, ITitleViewProps } from '@msdyn365-commerce-modules/search-result-container/src/modules/search-result-container/./search-result-container';\r\n\r\nconst SearchResultContainerView: React.FC = props => {\r\n\tconst { SearchResultContainer, products, pagination, ProductSectionContainer, choiceSummary, isMobile, modalToggle, searchResultModal, TitleViewProps, refineMenu, categoryHierarchy, sortByOptions, CategoryNavContainer, RefineAndProductSectionContainer, errorMessage, FeatureSearchContainer, similarLookProduct } = props;\r\n\tconst isRecoSearchPage = props.context.actionContext.requestContext.query?.recommendation;\r\n\tif(isMobile){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{renderTitle(TitleViewProps)}\r\n\t\t\t\t{choiceSummary}\r\n\t\t\t\t{modalToggle}\r\n\t\t\t\t{createSearchResultModal(searchResultModal, refineMenu, sortByOptions, isRecoSearchPage)}\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t{products}\r\n\t\t\t\t
    \r\n\t\t\t\t{pagination}\r\n\t\t\t
    \r\n\t\t);\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{TitleViewProps && renderTitle(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t\t{categoryHierarchy && renderCategoryHierarchy(categoryHierarchy)}\r\n\t\t\t\t{TitleViewProps && renderTitleCount(TitleViewProps)}\r\n\t\t\t\r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t{sortByOptions && !isRecoSearchPage && renderSort(sortByOptions)}\r\n\t\t\t\t\t{refineMenu && renderRefiner(refineMenu)}\r\n\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t{choiceSummary}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{errorMessage}\r\n\t\t\t\t\t\t{products}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t{pagination}\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{similarLookProduct}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nconst createSearchResultModal = (modalProps: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element => {\r\n\treturn React.cloneElement(modalProps.modal, {}, modalProps.modalHeader,\r\n\t\tcreateModalBody(modalProps, refineMenu, sortByDropDown, isRecoSearchPage), modalProps.modalFooter);\r\n};\r\n\r\nconst createModalBody = (props: ISearchResultModalViewProps, refineMenu: IRefineMenuViewProps, sortByDropDown: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tif (sortByDropDown) {\r\n\t\treturn React.cloneElement(props.modalBody, {}, renderSort(sortByDropDown, isRecoSearchPage), renderRefiner(refineMenu));\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderRefiner = (props: IRefineMenuViewProps): JSX.Element | null => {\r\n\tconst { refiners, RefineMenuContainer, RefinerSectionContainer } = props;\r\n\tif (refiners){\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{refiners.map((submenu, index) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{submenu}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderSort = (props: ISortByViewProps, isRecoSearchPage?: string): JSX.Element | null => {\r\n\tconst { SortingContainer, sortByDropDown } = props;\r\n\r\n\tif (sortByDropDown && !isRecoSearchPage) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{sortByDropDown}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderCategoryHierarchy = (props: ICategoryHierarchyViewProps): JSX.Element | null => {\r\n\tconst { categoryHierarchyList, categoryHierarchySeparator } = props;\r\n\tif (categoryHierarchyList && categoryHierarchyList.length > 0) {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn ;\t//not a good way to fix, but keeps the flex: space-between working when empty\r\n};\r\n\r\nconst renderTitle = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title, TitleContainer } = props;\r\n\tif (title) {\r\n\t\treturn (

    {title.titleText}

    );\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nconst renderTitleCount = (props: ITitleViewProps): JSX.Element | null => {\r\n\tconst { title } = props;\r\n\tif (title) {\r\n\t\treturn (\r\n\t\t\t
    {title.titleCount}
    \r\n\t\t);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nexport default SearchResultContainerView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IOrderTemplateListViewProps, ISingleOrderTemplateViewProps } from '@msdyn365-commerce-modules/order-template';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IOrderTemplateListProps, IOrderTemplateListResources } from '../definition-extensions/order-template-list.ext.props.autogenerated';\n\n/**\n * Interface for OrderTemplateImage.\n */\ninterface IOrderTemplateImage {\n props: {\n children: React.ReactElement[];\n };\n}\n\n/**\n * To render order template.\n * @param orderTemplate - The order template view props.\n * @param orderTemplateNodeProps - The order template node props.\n * @returns The JSX Element.\n */\nconst renderOrderTemplate = (orderTemplate: ISingleOrderTemplateViewProps, orderTemplateNodeProps?: INodeProps): JSX.Element | null => {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from module file\n const { key, addToCartButton, orderTemplateImage, orderTemplateStatusMessage, removeButton, orderTemplateName } = orderTemplate;\n\n const orderTemplateImageElement: IOrderTemplateImage = orderTemplateImage as React.ReactElement;\n const currentImageListLength = orderTemplateImageElement.props.children.length;\n const defaultNumberImagesInTile = 4;\n\n if (currentImageListLength < defaultNumberImagesInTile) {\n for (let index = 0; index < defaultNumberImagesInTile - currentImageListLength; index++) {\n orderTemplateImageElement.props.children.push();\n }\n }\n\n return (\n \n {orderTemplateName}\n {orderTemplateImage}\n {addToCartButton}\n {removeButton}\n {orderTemplateStatusMessage}\n \n );\n};\n\n/**\n * Order Template List View.\n * @param props - The view props.\n * @returns The JSX Element.\n */\nexport const OrderTemplateListViewComponent: React.FC> = props => {\n const {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from module file\n OrderTemplateList,\n OrderTemplates,\n OrderTemplate,\n status,\n statusMessage,\n heading,\n orderTemplates,\n createOrderTemplateButton,\n templateHeaderStatusMessage\n } = props;\n\n return (\n \n {heading}\n \n {status === 'SUCCESS' && (!OrderTemplates || !orderTemplates || !ArrayExtensions.hasElements(orderTemplates)) ? (\n
    \n

    {props.resources.headingForEmptyOrderTemplateList}

    \n

    {props.resources.textForEmptyOrderTemplateList}

    \n {createOrderTemplateButton}\n
    \n ) : (\n createOrderTemplateButton\n )}\n {templateHeaderStatusMessage}\n
    \n {status !== 'SUCCESS' && statusMessage}\n {OrderTemplates && orderTemplates && ArrayExtensions.hasElements(orderTemplates) && (\n \n {orderTemplates.map(orderTemplate => {\n return renderOrderTemplate(orderTemplate, OrderTemplate);\n })}\n \n )}\n
    \n );\n};\n\nexport default OrderTemplateListViewComponent;\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IMediaGalleryThumbnailItemViewProps, IMediaGalleryThumbnailsViewProps, IMediaGalleryViewProps } from '@msdyn365-commerce-modules/media-gallery/src/modules/media-gallery/../..';\r\n\r\nconst MediaGalleryView: React.FC = props => {\r\n\tconst { CarouselProps, Thumbnails, MediaGallery, Modal } = props;\r\n\tlet items = Thumbnails ? Thumbnails.items : null;\r\n\tif(items && items.length <= 2){\r\n\t\tMediaGallery.className += ' no-thumbs';\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t{Modal}\r\n\t\t\t{_renderThumbnails(Thumbnails)}\r\n\t\t\r\n\t);\r\n};\r\n\r\n//Added length >= 2 to prevent only single thumbnails from rendering\r\nconst _renderThumbnails = (thumbnails: IMediaGalleryThumbnailsViewProps): JSX.Element => {\r\n\tconst { ThumbnailsContainerProps, SingleSlideCarouselComponentProps, items } = thumbnails;\r\n\tif(items && items.length >= 2){\r\n\t\treturn (\r\n\t\t\t
    \r\n\t\t\t\t{items && items.map(_renderThumbnailItem)}\r\n\t\t\t
    \r\n\t\t);\r\n\t} else {\r\n\t\treturn \r\n\t}\r\n};\r\n\r\nconst _renderThumbnailItem = (thumbnail: IMediaGalleryThumbnailItemViewProps): JSX.Element => {\r\n\tconst { ThumbnailItemContainerProps, Picture } = thumbnail;\r\n\r\n\treturn {Picture};\r\n};\r\n\r\nexport default MediaGalleryView;\r\n"],"sourceRoot":""}