{"version":3,"sources":["webpack:///./src/modules/back-order-list/back-order-list.view.tsx?b440","webpack:///./src/modules/contracts-account-page/contracts-account-page.view.tsx?650e","webpack:///src/modules/password-reset-verification/components/password-reset-verification-loading-message.tsx?97ae","webpack:///src/modules/country-picker/country-picker.tsx?051f","webpack:///src/modules/tab-item/tab-item.view.tsx?76f0","webpack:///./src/themes/gardner-theme-b2c/views/account-profile.view.tsx?2237","webpack:///src/modules/breadcrumb/breadcrumb.view.tsx?58b4","webpack:///./src/themes/gardner-theme-b2c/views/checkout-delivery-options.view.tsx?7066","webpack:///src/modules/image-list/image-list.tsx?18cb","webpack:///./src/modules/back-order-list/back-order-list.tsx?e83b","webpack:///./src/modules/education-training/education-training.tsx?860c","webpack:///src/modules/fabrikam/views/buybox.view.tsx?68a7","webpack:///./src/modules/contracts-account-page/components/contracts-account-page-links.tsx?67c8","webpack:///./src/modules/contracts-account-page/contracts-account-page.tsx?5b4a","webpack:///./src/themes/gardner-theme/views/checkout-delivery-options.view.tsx?2dc8","webpack:///src/modules/interactive-feature-item/interactive-feature-item.view.tsx?d4e3","webpack:///./src/modules/model-viewer/components/AriPartsListTable.component.tsx?4169","webpack:///src/modules/b2b-requests-tile/components/account-b2b-requests-tile-links.tsx?4f55","webpack:///src/modules/b2b-requests-tile/b2b-requests-tile.tsx?ce42","webpack:///src/modules/image-list/image-list.view.tsx?cab9","webpack:///src/modules/password-reset-verification/components/password-reset-verification-button.tsx?d3bb","webpack:///src/modules/footer-category/footer-category.tsx?b7b8","webpack:///src/modules/adventureworks/views/components/carticon.component.tsx?3d75","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/themes/gardner-theme/views/checkout.view.tsx?8fc7","webpack:///./src/modules/ari-search-results/ari-search-results.tsx?d633","webpack:///src/modules/subscribe/subscribe.view.tsx?c40a","webpack:///src/modules/aad-generic/aad-generic.view.tsx?ecad","webpack:///src/modules/password-reset-verification/components/password-reset-verification-error.tsx?5cfd","webpack:///src/modules/password-reset-verification/components/password-reset-verification-success.tsx?8c35","webpack:///./src/themes/gardner-theme-b2c/views/b2b-requests-status.view.tsx?1104","webpack:///src/modules/tab/tab.tsx?d713","webpack:///src/modules/aad-generic/aad-generic.tsx?d537","webpack:///./src/themes/gardner-theme/views/components/invoice-details-products.component.tsx?1184","webpack:///src/modules/account-generic-tile/account-generic-tile.tsx?4504","webpack:///./src/modules/education-training/education-training.view.tsx?861e","webpack:///./src/modules/ari-search-results/components/AriSearchResultTable.component.tsx?c750","webpack:///src/modules/business-partners/business-partners.view.tsx?677a","webpack:///src/modules/footer-category/footer-category.view.tsx?26a5","webpack:///src/modules/password-reset-verification/components/password-reset-verification-label.tsx?70a3","webpack:///src/modules/subscribe/subscribe.tsx?0278","webpack:///src/modules/account-generic-tile/account-generic-tile.view.tsx?bca1","webpack:///src/modules/tab-item/tab-item.tsx?d2c1","webpack:///src/modules/password-reset-verification/components/password-reset-verification-loading-icon.tsx?7944","webpack:///./src/modules/payment-container/context/payment-context.tsx?efaa","webpack:///./src/themes/gardner-theme/views/checkout-payment-instrument.view.tsx?6b89","webpack:///src/modules/fabrikam/views/header.view.tsx?1cde","webpack:///src/modules/password-reset-verification/password-reset-verification.tsx?9795","webpack:///./src/modules/ari-search-results/ari-search-results.view.tsx?256e","webpack:///./src/modules/cart-line-comment/cart-line-comment.view.tsx?5b01","webpack:///./src/themes/gardner-theme/views/components/line-pagination.tsx?b2dd","webpack:///src/modules/country-picker/country-picker.view.tsx?825b","webpack:///src/modules/interactive-feature-item/components/links.tsx?8ab2","webpack:///src/modules/interactive-feature-item/interactive-feature-item.tsx?340f","webpack:///src/modules/tab/tab.view.tsx?701e","webpack:///./src/themes/gardner-theme/views/checkout-customer-account-payment.view.tsx?a50a","webpack:///./src/themes/gardner-theme/views/invoice-details.view.tsx?aa0d","webpack:///./src/themes/gardner-theme/views/account-profile.view.tsx?fc1f","webpack:///src/modules/account-welcome-tile/account-welcome-tile.tsx?abcf","webpack:///src/modules/account-generic-tile/components/account-generic-tile-links.tsx?e4df","webpack:///src/modules/tile-list-item/tile-list-item.view.tsx?0144","webpack:///./src/utils/getAriModelDetailUrl.ts?ac81","webpack:///src/modules/b2b-requests-tile/b2b-requests-tile.view.tsx?949e","webpack:///./src/modules/order-level-comment/order-level-comment.view.tsx?50e4","webpack:///src/modules/business-partners/components/search-bar.tsx?cefc","webpack:///src/modules/business-partners/components/data-grid.tsx?933a","webpack:///src/modules/business-partners/components/business-partner-users-table.tsx?5b50","webpack:///src/modules/business-partners/components/business-partners-table.tsx?108c","webpack:///src/modules/business-partners/business-partners.tsx?9aa8","webpack:///src/modules/password-reset-verification/components/password-reset-verification-input.tsx?6596","webpack:///src/modules/account-welcome-tile/account-welcome-tile.view.tsx?a13c","webpack:///./src/components/Pagination.tsx?99c6","webpack:///./src/modules/order-level-comment/order-level-comment.tsx?3e3e","webpack:///src/modules/tile-list-item/components/links.tsx?e54f","webpack:///src/modules/tile-list-item/tile-list-item.tsx?99bb","webpack:///./src/modules/back-order-list/components/BackOrderTable.component.tsx?5461","webpack:///./src/themes/gardner-theme-b2c/views/checkout.view.tsx?6760","webpack:///./src/themes/gardner-theme/views/b2b-requests-status.view.tsx?1807","webpack:///./src/modules/cart-line-comment/cart-line-comment.tsx?d920","webpack:///./src/modules/education-training/components/CourseTable.component.tsx?80b8","webpack:///src/modules/password-reset-verification/password-reset-verification.view.tsx?9e1f","webpack:///src/modules/adventureworks/views/order-template-list.view.tsx?86a3"],"names":["props","modelTable","pagination","React","className","contractsHeading","contractsWrapper","contractsTable","contractsLinks","Module","Object","assign","PasswordResetVerificationLoadingMessage","_ref","message","CountryPicker","constructor","super","_telemetryContent","getTelemetryObject","this","context","request","telemetryPageName","friendlyName","telemetry","_preferredSiteStorageKey","_cookieExpirationTime","closeModal","setState","isModalOpen","_handleStayOnSiteButtonClick","_this$props$context$r","currentBaseUrl","marketSettings","urlToStore","_appendProtocolToUrl","_writeToCookie","_handleClick","storageKey","storageValue","cookieOptions","secure","sameSite","maxAge","cookies","set","baseUrl","includes","isCookieValueSet","get","value","state","undefined","render","_heading$tag","heading","subheading","countryList","actionLink","config","isConsentGiven","countryPickerHeading","MsDyn365","tag","text","editProps","onEdit","handleTextChange","requestContext","countryPickerSubHeading","handleParagraphChange","countryPickerActionLink","createLink","currentSiteButton","Button","onClick","tabIndex","resources","stayOnCurrentSiteButtonText","viewprops","_objectSpread","modalContainer","moduleProps","Modal","isOpen","toggle","modalTransition","timeout","shouldUpdateFocusToFirstElement","modalHeaderContainer","ModalHeader","closeButtonTabIndex","modalFooterContainer","ModalFooter","modalBodyContainer","ModalBody","link","renderCountryList","stayOnCurrentSiteButton","renderView","event","target","handleLinkTextChange","_this$props$config$ac","linkText","StringExtensions","isNullOrEmpty","linkUrl","destinationUrl","_link$linkText","payLoad","getPayloadObject","attributes","getTelemetryAttributes","editableLink","ariaLabel","openInNewTab","role","additionalProperties","onTelemetryClick","onTextChange","localeItems","map","renderCountry","localeItem","_image$imageSettings","_image$src","localeBaseUrl","matchedCountryItem","find","item","url","imageSize","q","w","h","defaultImageSettings","viewports","xs","lg","xl","lazyload","image","imageProps","gridSettings","imageSettings","key","displayString","href","src","altText","loadFailureBehavior","shouldSkipToMainImage","displaySubString","_renderTabItemContent","items","length","index","TabItemView","tabItemType","tabSlots","TabContentContainer","TabHeaderContainer","TabItemContent","tabHeader","TabItemType","TabContent","Node","tabItemContent","TabHeader","AccountPreferencesSection","accountPreferences","personalization","extraPreferences","AccountPreferenceSection","preferenceSecton","_ref2","accountPreference","description","buttonWrapper","buttonYesText","button","buttonNoText","AccountProfileSection","_ref3","AccountProfileItem","links","AccountProfileView","AccountProfile","accountProfileWrapper","emailSection","nameSection","preferenceSection","customerAttributesWrapper","customerAttributesSection","BreadCrumbView","root","backButton","BreadcrumbContainer","BreadcrumbList","BreadcrumbListItem","separator","classnames","error","DeliveryOptionList","DeliveryOptionsList","list","deliveryOption","DeliveryOption","code","radioButton","DeliveryOptionSelected","price","CheckoutDeliveryOptionsView","CheckoutDeliveryOptions","viewState","deliveryOptions","deliveryOptionSelected","alert","waiting","saveButton","editButton","cancelButton","isLoading","isError","isShowList","isShowSelected","isShowSaveButton","isShowEditButton","isShowCancelButton","ImageList","images","paragraph","_renderImageListItems","imageList","disableLazyLoad","imageLink","imageLinkText","imageLinkAriaLabel","Msdyn365","linkAltText","linkAriaLabel","imageListTitle","viewProps","imageListHeading","imageListContainer","imageListItem","imageListItemAnchorTag","imageListItems","BackOrderList","BackOrderList_1","_queryResultSettings$","_this$props$data$back","_this$props$data$back2","_this$props$data$back3","_this$props$data$back4","_this$props$data$back5","numItemsToDisplay","backOrderItemsPerPage","defaultBackOrderItemsPerPage","_renderPrev","paginationPreviousText","_renderNext","paginationNextText","_renderSortingType","sortingSelectLabelText","name","id","selectedSort","onChange","handleSortingTypeChange","defaultSortingSelectOption","availableSortOptions","sortOptions","queryResultSettings","QueryResultSettingsProxy","fromInputData","actionContext","QueryResultSettings","page","Paging","Skip","backOrders","data","backOrderResults","result","backOrderData","BackOrderLines","totalCount","RecordCount","AvailableSortOptions","sortOrder","SortOrder","SelectedSort","handlePaginationPageChange","bind","setBackOrderListResults","updateBackOrderResults","toggleSortOrder","componentDidMount","reaction","_this$props$data$back6","backOrderListResponse","top","skip","res","getBackOrderListAsync","callerContext","getModelTable","backOrderListTitleText","backOrderListItemsText","orderNumberHeadingText","poNumberHeadingText","mfrHeadingText","partNumberHeadingText","deliveryTypeHeadingText","qtyHeadingText","totalHeadingText","noBackOrdersMessageText","backOrdersListResources","BackOrderTableComponent","ctx","sortingDropdown","sortOrderButton","renderSortOrderButton","currencyFormatter","cultureFormatter","formatCurrency","pageNumber","generateUrlForPagination","requestUrl","toString","renderPagination","previousText","nextText","paginationAriaLabel","Pagination","qsp","itemsPerPage","startingItem","previousAriaLabel","nextAriaLabel","onPageChange","e","__decorate","observer","EducationTraining","_this$props$data$cour","_this$props$data$cour2","courses","courseResults","courseResponse","Courses","TotalCount","cart","setCourseResults","setCartState","setLoading","_this$props$data$cour3","_this$props$data$cart","prevState","updateModelResults","Top","getCourseDataAsync","then","courseList","additionalInfo","courseListHeading","courseListResultsHeading","courseNameHeading","courseDateHeading","courseRegistrationDetailsHeading","courseAddToCartHeading","addToCartButtonLabel","startLabel","endLabel","registrationEndsLabel","maximumAttendeesLabel","currentAttendeesLabel","courseExpiredMessage","courseFullMessage","educationTrainingResources","CourseTableComponent","channelId","apiSettings","_renderTextBlock","textBlocks","_renderSocialShare","socialShare","_renderCartAndActions","addToCart","addToOrderTemplate","addToWishlist","errorBlock","_renderConfigure","configure","ContainerProps","dropdowns","_renderConfigureDropdown","dropdown","LabelContainerProps","errors","select","_renderFindInStore","findInStore","storeSelector","modal","productPickupOptionList","onChangeHandler","callbacks","newValue","updateQuantity","_renderQuantity","quantityComponent","extentionResources","quantityLimitsMessages","max","telemetryContent","quantity","IncrementalQuantity","currentCount","inputQuantityAriaLabel","decrementButtonAriaLabel","incrementButtonAriaLabel","minQuantityText","maxQuantityText","_renderKeyInPrice","keyInPrice","input","_renderShopSimilarItem","shopSimilarItem","BuyboxView","ModuleProps","MediaGalleryContainerProps","ProductInfoContainerProps","title","rating","inventoryLabel","shopSimilarLook","shopSimilarDescription","unitOfMeasure","mediaGallery","bulkPurchaseLink","slots","_mapEditableLinks","linkdata","editableLinks","forEach","contentAction","etext","push","ContractsAccountPageLinks","ContractsAccountPage","_handleHeadingChange","_handleLinkTextChange","linkIndex","_renderHeading","_getContractsRowData","_renderTable","_generateRow","contractList","manufacturerCodeLabel","contractNumberLabel","laborRateLabel","contractDescLabel","noContractsFoundText","headingRow","contractsRowData","i","_renderMfrCodeHeading","contract","ContractCode","_generateEmptyRow","colNum","manufacturerCodeShortFormLabel","contractData","ManufacturerCode","Description","ContractLaborRate","ContractNotes","toFixed","_renderLink","LinksComponent","classNames","dlvDescription","_get","window","sessionStorage","setItem","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","AriPartsListTableComponent","tableHeadings","parts","baseClassName","goToId","addPartToCart","partIdPrefix","selectedRow","isAuthenticated","requiresAuthentication","loginToViewPricingText","signInUrl","isMobile","isDrawerOpen","unavailableText","addToCartText","closePartDrawer","priceFormatter","yPosition","setYPosition","useState","useEffect","removeEventListener","pageYOffset","addEventListener","passive","selectedPartIdName","createElement","Fragment","ListGroup","part","_part$Product6","ListGroupItem","PartId","active","ListGroupItemHeading","Tag","mfrCode","Sku","ListGroupItemText","Product","Price","Qty","parseInt","defaultValue","type","disabled","min","Table","th","_part$Product","_part$Product2","_part$Product3","_part$Product4","_part$Product5","product","partId","ItemId","Name","currentInvString","getExtensionPropertyValueByKey","ExtensionProperties","CommercePropertyValueEnum","string","currentInventory","isNaN","oosUpperBound","oosUpperBoundLimit","canAddToCart","isEligible","JSON","stringify","BasePrice","colSpan","element","document","getElementById","scrollTo","getBoundingClientRect","scrollDownClickHandler","B2bRequestsTileLinks","ArrayExtensions","hasElements","B2bRequestsTile","handleHeadingChange","isChannelTypeB2B","b2bRequestsTile","imageListView","indexKey","PasswordResetVerificationButton","FooterCategory","content","categories","FooterList","FooterListItem","CartIcon","cartLabel","cartQtyLabel","cartItem","totalItemsInCart","qtyLabel","format","label","style","visibility","CartIconComponent","msdyn365Commerce","createComponentOverride","component","Link","noclick","attribute","itemProp","Separator","Breadcrumb","_pageType","urlTokens","pageType","_getRootLink","_getCustomBreadcrumbLinks","itemPosition","keyIndex","_getCategoryHierarchy","categoryHierarchy","_getFriendlyName","locale","NameTranslations","Url","nameTranslations","_nameTranslation","nameTranslation","Language","toLowerCase","Text","_getPDPLinks","categoryPaths","hideProductName","_goBack","history","back","_getPDPBackButton","query","isBrowser","referrer","backToResultsText","rootLink","breadcrumbLinks","backButtonComponent","breaCrumbType","app","breadcrumbType","linkSeparator","breadcrumbViewProps","PickUpAtStoreComponent","PickUpAtStore","location","EmailDeliveryComponent","EmailDelivery","LineItemComponent","LineItem","pickUpAtStore","emailDelivery","LineItemGroupComponent","_ref4","LineItemDeliveryGroup","LineItemList","lineItems","numItems","prev","next","pageLength","paginatedView","setPaginatedView","slice","paginationPage","setPaginationPage","nextPage","changePage","prevPage","lineItem","LineId","LinePagination","currentPage","numPages","Math","ceil","LineItemGroupComponentWithMultiplePickUp","_ref5","lineItemWraper","lineItemWraperIcon","LineItemComponentWithMultiplePickUp","_ref6","PickUpAtStoreComponentWithMultiplePickUp","_ref7","LineItemsComponent","_ref8","LineItems","Header","editLink","itemsForPickup","itemsForShip","itemsForEmail","itemsGroupWithMulitplePickupMode","lineItemGroupComponentExt","OrderSummaryComponent","_ref9","lines","otherChargesLines","subtotal","shipping","otherCharge","tax","loyalty","giftCard","orderTotal","PaymentSummaryComponent","_ref10","invoices","CheckoutView","_props$data$checkout$","_props$data$checkout$5","_props$data$customerI","attributeArr","checkout","checkoutCart","AttributeValues","getShipCompleteIndex","_props$data$checkout$2","findIndex","getShipCompleteValue","shipCompleteIndex","attr","Value","saveShipCompleteToCart","async","checkoutState","updateCart","newCartObject","setShipCompleteOnCheckout","shipCompleteOnCheckout","shipCompleteOnCheckoutToggle","_renderShipOnCheckout","handleShipCompleteOnCheckoutChange","shipCompleteOnCheckoutLabel","_props$data$checkout$4","shipComplete","idx","splice","canShow","checkoutProps","headerProps","hasSalesOrder","hasInvoiceLine","bodyProps","mainProps","mainControlProps","sideProps","sideControlFirstProps","sideControlSecondProps","termsAndConditionsProps","orderConfirmation","loading","guidedForm","orderSummary","invoicePaymentSummary","placeOrderButton","termsAndConditions","keepShoppingButton","chargelines","chargeCodes","ChargeLines","linesNode","c","node","filter","line","ChargeCode","chargeCode","r","_r$CalculatedAmount$t","_r$CalculatedAmount","chargeLineLabel","CalculatedAmount","chargeLinesBreakdown","orderSummaryExtended","isAccountBlocked","customerInformation","Blocked","lineItemsExt","paginationPrev","paginationNext","accountLockedMessage","_renderOrderComment","commentHeading","commentString","emptyStringClassName","commentHeadingText","_props$data$checkout$3","Comment","getCommentText","AriSearchResults","_this$props$data$ariR","_this$props$data$ariR2","models","ariResults","ariSearchResults","Models","results","getModelDetailPageUrl","modelId","brandCode","generateAriModelDetailUrl","searchTerm","categoryId","searchModelInput","SearchModelsInput","getModelsBySearchText","modelsList","modelsListWithPageLinks","model","detailPageUrl","Id","BrandCode","modelHeading","manufacturerHeading","tableHeading","descriptionHeading","ariSearchResultTableResources","AriSearchResultTableComponent","searchResults","onSubmit","preventDefault","subscribeView","_subscribeForm$classN","_emailInput$className","_submitButton$classNa","subscribe","subscribeContainer","subscribeForm","emailInput","submitButton","submitButtonLabelText","aadGeneric","aadConainer","aadAPIConainer","PasswordResetVerificationError","errorClassName","PasswordResetVerificationSuccess","successClassName","B2bRequestsStatusView","_props$data$operation","b2bRequestsStatus","table","continueShoppingButtonTitle","operationRequests","headingForEmptyRequestStatus","textForEmptyRequestStatus","getUrlSync","Tab","tabIndexQuery","_refHandler","activeLink","_onClick","activeTabState","activeContentIndex","tabId","update","createTabStateInput","currentTabIndex","newUrl","_setGetParameter","String","pushState","path","_onKeyDown","keyCode","slotLength","tabItems","defaultTabIndex","initialIndex","queryString","activeTab","queryTabIndex","indexOf","arr","split","Number","_getTabHeader","_getTabContent","shouldComponentUpdate","nextProps","nextState","headingComponent","tabViewProps","TabContainer","headerSection","tabsSection","tabItemContainer","tabContents","tabHeaders","componentDidUpdate","params","isEditor","dataActionTabId","focus","selected","contentID","getContentID","onKeyDown","ref","isSelected","itemIndex","paramName","paramValue","URL","URLSearchParams","search","decodeURIComponent","AadGeneric","moduleClassName","$i2e","$element","insertServiceContent","getElementContent","initialize","InvoiceDetailsModel","invoice","invoiceDetails","products","invoiceDate","InvoiceDate","Date","customerName","CustomerName","dueDate","InvoiceDueDate","amountDue","AmountBalance","status","InvoicePaidStatusValue","SalesInvoiceLine","_products$find","primaryImageUrl","RecordId","PrimaryImageUrl","totalDiscount","TotalDiscount","InvoiceSubtotal","totalCharges","TotalCharges","totalTax","TotalTaxAmount","totalAmount","TotalAmount","currencyCode","CurrencyCode","InvoicePaidStatus","Paid","formatAmount","amount","InvoiceDetailsProductsComponent","createComponent","productLineClass","productLineInfoContainerClass","productLineDetailsClass","productLineSmallDetailsClass","Quantity","productUrl","ObjectExtensions","isNullOrUndefined","ProductName","getProductPageUrlSync","_renderProductImage","cropFocalRegion","fallbackImage","getFallbackImageUrl","Image","fallBackSrc","_renderProductDimensions","isNullOrWhitespace","ColorName","invoiceProductColor","replace","SizeName","invoiceProductSize","StyleName","invoiceProductStyle","invoiceQuantity","NetAmount","AccountGenericTile","outerWidth","setOuterWidth","businessPartnersView","selectedBusinessPartnerUser","businessPartnersProps","businessPartnersHeading","catalogLoadingIndicator","catalogLoadingErrorMessage","cookieConsentNotGivenErrorMessage","backToBusinessPartnersLink","businessPartnersTable","businessPartnerUsersTable","FooterCategoryView","category","PasswordResetVerificationLabel","forId","htmlFor","Subscribe","_emailAddressInputRef","subscribeParagraph","subscribeHeading","handleText","subscribeFormAriaLabel","autoComplete","subscribeFormEmailAriaLabel","placeholder","subscribeEmailPlaceholderText","subscribeFormSubmitAriaLabel","subscribeButtonLabel","AccountGenericTileView","TabItem","moduleContentClassName","moduleHeaderClassName","_renderTabHeader","activeContentIDResult","shown","tabItemTitle","PasswordResetVerificationLoadingIcon","_errorMsg","PaymentContext","createContext","paymentModules","selectedPayment","registerPaymentMethod","elementId","tenderTypeList","Error","setSelectedPaymentState","paymentTenderType","Consumer","PaymentConsumer","Provider","PaymentProvider","OverlayModal","CheckoutPaymentInstrumentView","checkoutPaymentInstrument","paymentInformation","addPaymentForm","overlayModal","tenderType","_objectWithoutProperties","_excluded","paymentContext","paymentTenderTypes","tt","tenderTypeId","tenderId","tenderName","renderCustomerName","accountInformation","customer","FirstName","_renderReactFragment","slot","headerView","HeaderTag","HeaderContainer","HeaderTopBarContainer","Divider","navIcon","logo","preferredStore","renderForMobile","AccountInfoDropdownParentContainer","AccountInfoDropdownPopoverConentContainer","accountInfoDropdownButton","signOutLink","signInLink","accountLinks","accountClassName","_renderAccountBlock","wishListIconDesktop","cartIcon","siteOptions","MobileMenuLinksContainer","mobileMenuCollapsed","Collapse","Drawer","openGlyph","closeGlyph","glyphPlacement","toggleButtonText","_renderMobileAccountBlock","wishListIconMobile","menuBar","_renderCollapseMenu","PasswordResetVerification","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","setTimeout","clearInterval","isInitialized","getValue","v1Value","v2Value","templateVersion","emailRegex","EmailRegex","defaultRegex","source","isShowLoading","passwordResetVerification","modalBody","icon","PasswordResetVerificationLoadingIconComponent","PasswordResetVerificationLoadingMessageComponent","loadingMessage","defaultAADConainer","display","passwordResetVerificationLocalAccount","_renderLocalAccount","obj","ID","PAT","verifying_blurb","localAccount","verificationControlWrapper","_renderInput","emailAddressLabelText","verificationCodeLabelText","successMessage","PasswordResetVerificationSuccessComponent","verificationCodeSendSuccess","emailAddressVerifiedSuccess","errorMessage","PasswordResetVerificationErrorComponent","retryError","retryNotAllowedError","throttledError","codeExpiredError","serverError","invalidEmailError","verificationButtonsWrapper","verificationButtons","PasswordResetVerificationButtonComponent","sendCodeButtonAriaLabel","sendCodeButtonText","verifyCodeButtonAriaLabel","verifyCodeButtonText","resendCodeButtonAriaLabel","resendCodeButtonText","changeEmailButtonAriaLabel","changeEmailButtonText","buttonsWrapper","buttons","continueButtonAriaLabel","continueButtonText","cancelButtonAriaLabel","cancelButtonText","verificationSuccessModal","verificationSuccessModalMessage","labelText","maxLength","pattern","cssClassName","wrapper","PasswordResetVerificationLabelComponent","PasswordResetVerificationInputComponent","observable","staticDisplay","cartLineCommentModuleProps","countryPickerView","country","InteractiveFeatureCollectionLinks","InteractiveFeatureItem","_this$props$config$li","featureItemLinks","_createHeading","_createParagraph","_renderImage","tabindex","isAriaHiddenAttribute","_item$imageSettings","_this$props$config$im","verifiedImageSettings","sm","md","moduleType","typeName","imagePropertyName","tabView","SummaryForm","formProps","paymentAmount","addPaymentButton","appliedLine","bottomBorder","EditForm","inputLabel","inputAmount","customerAccountNumber","customerSince","accountCredit","accountDetails","getInputLabel","customInputLabel","CheckoutCustomerAccountView","checkoutCustomerAccount","summaryView","editView","moduleState","_document$querySelect","removeItem","processedOnAccountText","querySelector","getItem","cartTotal","updateCustomerAccountAmount","newAmount","information","addPayment","isReady","InvoiceDetailsView","header","paymentDetails","payInvoiceError","setInvoiceDetails","setProducts","getProducts","productInputs","invDetails","invoiceDetailsModel","getInvoiceDetails","ProductInput","simpleProductsRes","getSimpleProductsAction","renderProducts","AccountWelcomeTile","accountInfo","AccountGenericTileLinks","TileListItemViewComponent","tileListItem","backgroundImage","thumbnailImage","tileListContainer","tileListImageContainer","tileListThumbnailImageContainer","tileListHeadingContainer","renderTileListItemContent","B2bRequestsTileView","orderLevelCommentModuleProps","SearchBar","Component","onSearchTextChange","ev","searchText","onSearch","handleKeyUp","KeyCodes","Enter","searchPlaceholderLabel","onKeyUp","DataGrid","renderGridHeader","rowClassName","columns","column","reactKey","renderGridRow","_column$onRender","_column$onClick","call","fieldName","onRender","loadDataInternal","user","loadData","_e$data","LocalizedMessage","genericErrorMessage","paging","loadMore","sortData","sorting","ascending","sort","item1","item2","value1","value2","compareResult","filterData","isSearchable","columnValue","trim","getDataToDisplay","itemsCount","pageSize","hasMore","defaultSorting","Alert","color","loadingLabel","businessPartnerLoadMore","noDataMessage","BusinessPartnerUsersTable","getColumns","isMobileDevice","variant","VariantType","Viewport","businessUserTableNameHeadingText","onSelect","businessUserTableEmailHeadingText","businessUserTableSpendingLimitHeadingText","getBusinessPartnerUsers","BusinessPartnersDataActions","getUsersAsync","bypassCache","businessPartner","BusinessPartnerId","StatusValue","LastName","spendingLimit","SpendingLimit","businessUserTableSpendingLimitZeroHoverText","businessPartnerSearchCustomer","BusinessPartnersTable","businessPartnerName","getBusinessPartners","getManagedBusinessPartnersAsync","businessPartnerSearchCompany","BusinessPartners","onSelectBusinessPartner","selectedBusinessPartner","onSelectBusinessPartnerUser","businessPartnerUser","AccountNumber","setAccountSelectionCookie","catalogId","getCustomerDefaultCatalogId","validateCatalogId","homeUrl","fullUrl","searchParams","removeAccountSelectionCookie","isLoadingCatalog","_productCatalogs$","productCatalogs","CatalogsDataActions","getCatalogsAsync","loadCatalogErrorMessage","classname","cookieConsentRequiredMessage","GetMaxLength","parsedMaxLength","PasswordResetVerificationInput","AccountWelcomeTileView","UncontrolledPagination","maxPages","qsps","splitUrl","parsedQsps","qspPair","_this$props","listClassName","cssModule","children","size","listTag","ListTag","activeQsp","paginationClasses","mapToCssModules","listpaginationClasses","_generatePageLinks","_generatePaginationArrow","disable","tooltipId","nextId","prevId","ariaDescribedBy","nextAreaDescribed","prevAreaDescribed","placement","PaginationItem","PaginationLink","previous","UncontrolledTooltip","_generatePaginationItem","_generateEllipse","leftDistance","rightDistance","leftEllipse","pagesDisplayed","rightEllipse","pages","displayedPagesOnLeft","startingIndex","endIndex","defaultProps","OrderLevelComment","_props$data$cart$resu","_className","_maxCommentLength","_updateOrderLevelComment","cartState","dummyCart","comment","isCommentAreaActive","_updateCommentState","_resetCommentToProps","_toggleCommentAreaActive","_renderStaticCommentDisplay","commentLinkText","editLinkText","disclaimer","_getCommentPreview","_renderCommentLink","_this$props$data$cart2","substring","_renderSaveButton","saveButtonText","_renderCancelButton","_renderTextArea","textAreaLabel","charactersRemaining","_getFieldId","_renderButtonArea","_renderModal","_getModalTitle","commentModalTitle","TileListLinks","TileListItem","redirectionUrl","tileListLinks","tileListLinkContainer","_renderBackgroundImage","_renderThumbnailImage","_this$props$config$ba","itemImageSettings","_this$props$config$th","layout","msdyn365__moduleLayout","order","deliveryType","DeliveryType","SalesId","PurchaseOrderNumber","ManufacturerNumber","Total","totalDiscounts","CartLineComment","_updateCartLineComment","_dummyCart$CartLines","cartLineToUpdate","CartLines","cl","cartLineId","updateCartLineQuantity","newQuantity","cartProductTitle","errMessage","setErrMessage","fmt","year","month","day","timeZoneName","second","hour","minute","_handleAddToCart","cartId","addCourseToCartAsync","refreshCart","textContent","RecId","HRMCourseId","GDNCourseFee","StartDateTime","toLocaleString","EndDateTime","LastDateOfSignup","MaxAttendees","CurrentAttendees","CourseStatus","PasswordResetVerificationItem","PasswordResetVerificationLoading","PasswordResetVerificationView","LocalAccount","OrderTemplateListViewComponent","OrderTemplateList","OrderTemplates","OrderTemplate","statusMessage","orderTemplates","createOrderTemplateButton","templateHeaderStatusMessage","headingForEmptyOrderTemplateList","textForEmptyOrderTemplateList","orderTemplate","renderOrderTemplate","orderTemplateNodeProps","addToCartButton","orderTemplateImage","orderTemplateStatusMessage","removeButton","orderTemplateName","orderTemplateImageElement","currentImageListLength"],"mappings":"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","file":"static/js/5.79b0bee07d9d9e1a2c81.chunk.js","sourcesContent":["/*!\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 * as React from 'react';\r\nimport { IBackOrderListViewProps } from './back-order-list';\r\n\r\nexport default (props: IBackOrderListViewProps) => {\r\n const { modelTable, pagination } = props;\r\n return (\r\n
\r\n {/* {selection} */}\r\n {modelTable}\r\n {pagination}\r\n
\r\n );\r\n};\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 * as React from 'react';\r\nimport { IContractsAccountPageViewProps } from './contracts-account-page';\r\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\n\r\nexport default (props: IContractsAccountPageViewProps) => {\r\n const { contractsHeading, contractsWrapper, contractsTable, contractsLinks } = props;\r\n return (\r\n \r\n {contractsHeading}\r\n {contractsTable}\r\n {contractsLinks}\r\n \r\n );\r\n};\r\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\nexport interface IPasswordResetVerificationLoadingMessage {\n className: string;\n message: string;\n}\n\nconst PasswordResetVerificationLoadingMessage: React.FC = ({ className, message }) => (\n
{message}
\n);\n\nexport default PasswordResetVerificationLoadingMessage;\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 { ICookieSetOptions, IImageDimension, ILocaleItems } from '@msdyn365-commerce/core-internal';\nimport { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n Button,\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n ITelemetryContent,\n Modal,\n ModalBody,\n ModalFooter,\n ModalHeader,\n onTelemetryClick\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICountryPickerData } from './country-picker.data';\nimport { IActionLinkData, ICountryPickerProps } from './country-picker.props.autogenerated';\n\n/**\n * CountryPicker view props interface.\n */\nexport interface ICountryPickerViewProps extends ICountryPickerProps {\n modalContainer: IModuleProps;\n modalHeaderContainer: INodeProps;\n modalFooterContainer: INodeProps;\n modalBodyContainer: INodeProps;\n heading?: React.ReactNode;\n subheading?: React.ReactNode;\n link?: React.ReactNode;\n countryList?: React.ReactNode[];\n isModalOpen?: boolean;\n state?: ICountryPickerState;\n stayOnCurrentSiteButton?: React.ReactNode;\n}\n\n/**\n * ICountryPickerState: Interface for Country picker State.\n */\nexport interface ICountryPickerState {\n isModalOpen: boolean;\n}\n\n/**\n *\n * CountryPicker component.\n * @extends {React.PureComponent>}\n */\nexport class CountryPicker extends React.PureComponent, ICountryPickerState> {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n private readonly _preferredSiteStorageKey: string = '_msdyn365___site_';\n\n private readonly _cookieExpirationTime = 5_184_000;\n\n public constructor(props: ICountryPickerProps) {\n super(props);\n let isCookieValueSet: boolean = false;\n if (props.context.request.cookies.get(this._preferredSiteStorageKey).value) {\n isCookieValueSet = true;\n }\n this.state = {\n isModalOpen: !isCookieValueSet && this.props.context.request.marketSettings !== undefined\n };\n }\n\n public render(): JSX.Element | null {\n const { heading, subheading, countryList, actionLink } = this.props.config;\n\n const isConsentGiven = this.props.context.request.cookies.isConsentGiven();\n\n if (!isConsentGiven) {\n return null;\n }\n\n const countryPickerHeading = heading && (\n \n );\n\n const countryPickerSubHeading = subheading && (\n \n );\n\n const countryPickerActionLink = actionLink && this.createLink(actionLink);\n const currentSiteButton = (\n \n );\n\n const viewprops: ICountryPickerViewProps = {\n ...this.props,\n state: this.state,\n isModalOpen: this.state.isModalOpen,\n modalContainer: {\n moduleProps: this.props,\n tag: Modal,\n className: 'ms-country-picker__dialog',\n isOpen: true,\n 'aria-label': 'country-picker',\n toggle: this.closeModal,\n modalTransition: { timeout: 0 },\n shouldUpdateFocusToFirstElement: true\n },\n modalHeaderContainer: {\n tag: ModalHeader,\n className: 'ms-country-picker__modal-header',\n toggle: this.closeModal,\n closeButtonTabIndex: 1\n },\n modalFooterContainer: {\n tag: ModalFooter,\n className: 'ms-countryPicker__modal-footer'\n },\n modalBodyContainer: {\n tag: ModalBody,\n className: 'ms-counrtyPicker__modal-body'\n },\n heading: countryPickerHeading,\n subheading: countryPickerSubHeading,\n link: countryPickerActionLink,\n countryList: countryList && this.renderCountryList(),\n stayOnCurrentSiteButton: currentSiteButton\n };\n\n return this.props.renderView(viewprops);\n }\n\n /**\n * Initiate close modal.\n */\n public readonly closeModal = (): void => {\n this.setState({\n isModalOpen: false\n });\n };\n\n public handleParagraphChange(event: MsDyn365.ContentEditableEvent): void {\n this.props.config.subheading = event.target.value;\n }\n\n public handleTextChange(event: MsDyn365.ContentEditableEvent): void {\n this.props.config.heading!.text = event.target.value;\n }\n\n public handleLinkTextChange(event: MsDyn365.ContentEditableEvent): void {\n if (this.props.config.actionLink?.linkText) {\n this.props.config.actionLink.linkText = event.target.value;\n }\n }\n\n public createLink(link?: IActionLinkData): React.ReactNode | null {\n if (!StringExtensions.isNullOrEmpty(link?.linkUrl.destinationUrl)) {\n const linkText = link?.linkText ?? '';\n const payLoad = getPayloadObject('click', this._telemetryContent, '', '');\n const attributes = getTelemetryAttributes(this._telemetryContent, payLoad);\n const editableLink: MsDyn365.ILinksData = {\n ariaLabel: link?.ariaLabel,\n className: 'ms-countryPicker__link',\n linkText,\n linkUrl: link?.linkUrl.destinationUrl,\n openInNewTab: link?.openInNewTab,\n role: 'link',\n additionalProperties: attributes!,\n onClick: onTelemetryClick(this._telemetryContent, payLoad, linkText)\n };\n return (\n \n );\n }\n return null;\n }\n\n public renderCountryList(): React.ReactNode[] | undefined {\n const marketSettings = this.props.context.request.marketSettings;\n if (!marketSettings) {\n return undefined;\n }\n const localeItems = marketSettings.localeItems;\n const countryLinks = localeItems.map((value: ILocaleItems) => {\n return this.renderCountry(value);\n });\n\n return countryLinks;\n }\n\n public renderCountry(localeItem: ILocaleItems): React.ReactNode | null {\n const countryList = this.props.config.countryList;\n let baseUrl = localeItem.localeBaseUrl;\n baseUrl = this._appendProtocolToUrl(baseUrl);\n const matchedCountryItem = countryList?.find(item => item.url === baseUrl);\n if (!matchedCountryItem) {\n return null;\n }\n const imageSize: IImageDimension = { q: 'w=48&h=48&m=6', w: 0, h: 0 };\n const defaultImageSettings: MsDyn365.IImageSettings = {\n viewports: {\n xs: imageSize,\n lg: imageSize,\n xl: imageSize\n },\n lazyload: true\n };\n const image = matchedCountryItem.image;\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings!,\n imageSettings: image?.imageSettings ?? defaultImageSettings\n };\n return (\n \n {image && (\n \n )}\n
\n {matchedCountryItem.displayString}\n {matchedCountryItem.displaySubString}\n
\n \n );\n }\n\n /**\n * Writes the current site base url to cookie and closes the country picker modal dialog.\n */\n private readonly _handleStayOnSiteButtonClick = (): void => {\n const currentBaseUrl = this.props.context.request.marketSettings?.currentBaseUrl;\n if (currentBaseUrl) {\n const urlToStore = this._appendProtocolToUrl(currentBaseUrl);\n this._writeToCookie(this._preferredSiteStorageKey, urlToStore);\n }\n this.closeModal();\n };\n\n /**\n * Handles click event of country selection.\n * @param storageKey - Cookie storage key.\n * @param storageValue - Preffered site url.\n * @returns - This method just writes the cookie to the browser.\n */\n private readonly _handleClick = (storageKey?: string, storageValue?: string) => () => {\n this._writeToCookie(storageKey, storageValue);\n };\n\n /**\n * Handles click event of country selection.\n * @param storageKey - Cookie storage key.\n * @param storageValue - Preffered site url.\n */\n private readonly _writeToCookie = (storageKey?: string, storageValue?: string): void => {\n if (!storageKey || !storageValue) {\n return;\n }\n const cookieOptions: ICookieSetOptions = { secure: true, sameSite: 'none' };\n cookieOptions.maxAge = this._cookieExpirationTime;\n this.props.context.request.cookies.set(storageKey, storageValue, cookieOptions);\n };\n\n /**\n * Appends protocol to an url.\n * @param baseUrl - Url to be formatted.\n * @returns - URL after appending protocol.\n */\n private readonly _appendProtocolToUrl = (baseUrl: string): string => {\n return !baseUrl.includes('https://') ? `https://${baseUrl}` : baseUrl;\n };\n}\n\nexport default CountryPicker;\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 { ITabItemViewProps, TabItemType } from './tab-item';\n\nconst TabItemView: React.FC = props => {\n const { tabItemType, tabSlots, TabContentContainer, TabHeaderContainer, TabItemContent, tabHeader } = props;\n\n switch (tabItemType) {\n case TabItemType.TabContent:\n return (\n \n \n {tabSlots &&\n tabSlots.tabItemContent &&\n tabSlots.tabItemContent.length &&\n _renderTabItemContent(tabSlots.tabItemContent)}\n \n \n );\n case TabItemType.TabHeader:\n return {tabHeader};\n default:\n return null;\n }\n};\n\nconst _renderTabItemContent = (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 TabItemView;\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 {\r\n IAccountPreference, IAccountPreferences, IAccountProfileItem, IAccountProfileViewProps\r\n} from '@msdyn365-commerce-modules/account-management/src/modules/account-profile/./account-profile';\r\n\r\nconst AccountPreferencesSection: React.FC = ({\r\n accountPreferences,\r\n heading,\r\n personalization,\r\n extraPreferences\r\n}) => {\r\n return (\r\n \r\n {heading}\r\n \r\n {\r\n extraPreferences && extraPreferences.map((preferenceSecton, index) => {\r\n return ;\r\n })\r\n }\r\n \r\n );\r\n};\r\n\r\nconst AccountPreferenceSection: React.FC = ({\r\n accountPreference,\r\n heading,\r\n description,\r\n buttonWrapper,\r\n buttonYesText,\r\n button,\r\n buttonNoText\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {description}\r\n \r\n {buttonNoText}\r\n {button}\r\n {buttonYesText}\r\n \r\n \r\n );\r\n};\r\n\r\nconst AccountProfileSection: React.FC = ({\r\n AccountProfileItem,\r\n heading,\r\n links,\r\n description\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {description}\r\n {/*{links}*/}\r\n \r\n );\r\n};\r\n\r\nconst AccountProfileView: React.FC = props => {\r\n const { AccountProfile, accountProfileWrapper, heading, emailSection, nameSection, preferenceSection, customerAttributesWrapper, customerAttributesSection } = props;\r\n\r\n return (\r\n \r\n {accountProfileWrapper && (\r\n {heading}\r\n \r\n \r\n \r\n \r\n )}\r\n {customerAttributesWrapper && (\r\n {customerAttributesSection}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default AccountProfileView;\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 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","/*--------------------------------------------------------------\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 { ICheckoutDeliveryOption, ICheckoutDeliveryOptionEdit, ICheckoutDeliveryOptionsList, ICheckoutDeliveryOptionsViewProps } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-delivery-options/./checkout-delivery-options';\r\n\r\nconst DeliveryOptionList: React.FC = ({\r\n DeliveryOptionsList,\r\n list\r\n}) => {\r\n if (!list || list.length === 0) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {list.map((deliveryOption: ICheckoutDeliveryOptionEdit) => {\r\n return (\r\n {deliveryOption.radioButton}\r\n {deliveryOption.description}\r\n {/* {deliveryOption.price} */}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst DeliveryOptionSelected: React.FC = ({\r\n DeliveryOption,\r\n description,\r\n price\r\n}) => {\r\n\r\n return (\r\n \r\n {description}\r\n {/* {price} */}\r\n \r\n );\r\n};\r\n\r\nconst CheckoutDeliveryOptionsView: React.FC = props => {\r\n const { CheckoutDeliveryOptions,\r\n viewState,\r\n deliveryOptions,\r\n deliveryOptionSelected,\r\n alert,\r\n waiting,\r\n saveButton,\r\n editButton,\r\n cancelButton } = props;\r\n\r\n return (\r\n\r\n // TODO: All wrapper div should be provided by viewProps. Once SDK provide the sln, update markup.\r\n \r\n {viewState.isLoading && waiting}\r\n {viewState.isError && alert}\r\n {viewState.isShowList && deliveryOptions && }\r\n {viewState.isShowSelected && deliveryOptionSelected && }\r\n {viewState.isShowSaveButton && saveButton}\r\n {viewState.isShowEditButton && editButton}\r\n {viewState.isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutDeliveryOptionsView;\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 { 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}\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\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 };\n return imageListItem;\n });\n };\n}\n\nexport default ImageList;\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 * as React from 'react';\r\n\r\nimport { getBackOrderListAsync } from '../../actions/DataActionExtension.g';\r\nimport { IBackOrderListEntity, IGetBackOrderListResponse } from '../../actions/DataServiceEntities.g';\r\nimport { IBackOrderListData } from './back-order-list.data';\r\nimport { IBackOrderListProps } from './back-order-list.props.autogenerated';\r\nimport { QueryResultSettingsProxy } from '@msdyn365-commerce-modules/retail-actions';\r\n// import getBackOrderList, { GetBackorderListInput } from '../../actions/get-backorder-list.action';\r\nimport Pagination from '../../components/Pagination';\r\nimport { BackOrderTableComponent, IBackOrderTableComponentResources } from './components/BackOrderTable.component';\r\nimport { reaction } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\n\r\n/**\r\n * Props for the view component\r\n */\r\nexport interface IBackOrderListViewProps extends IBackOrderListProps {\r\n modelTable: React.ReactNode;\r\n pagination: React.ReactNode;\r\n // selection: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Component state\r\n */\r\ninterface IBackOrderListState {\r\n page: number;\r\n backOrders: IBackOrderListEntity[];\r\n totalCount: number;\r\n availableSortOptions: string[];\r\n sortOrder: string;\r\n selectedSort: string;\r\n}\r\n\r\n/**\r\n *\r\n * BackOrderList component\r\n * @extends {React.PureComponent>}\r\n */\r\n@observer\r\nclass BackOrderList extends React.PureComponent, IBackOrderListState> {\r\n private static defaultBackOrderItemsPerPage = 15;\r\n\r\n private readonly numItemsToDisplay = this.props.config.backOrderItemsPerPage || BackOrderList.defaultBackOrderItemsPerPage;\r\n\r\n constructor(props: IBackOrderListProps) {\r\n super(props);\r\n\r\n const queryResultSettings = QueryResultSettingsProxy.fromInputData(props.context.actionContext).QueryResultSettings;\r\n let page = 1;\r\n if (queryResultSettings.Paging?.Skip && queryResultSettings.Paging.Skip > 0) {\r\n page = this.numItemsToDisplay / queryResultSettings.Paging.Skip;\r\n }\r\n this.state = {\r\n page,\r\n backOrders: this.props.data.backOrderResults.result?.backOrderData.BackOrderLines || [],\r\n totalCount: this.props.data.backOrderResults.result?.backOrderData.RecordCount || 0,\r\n availableSortOptions: this.props.data.backOrderResults.result?.backOrderData.AvailableSortOptions || [],\r\n sortOrder: this.props.data.backOrderResults.result?.backOrderData.SortOrder || '',\r\n selectedSort: this.props.data.backOrderResults.result?.backOrderData.SelectedSort || ''\r\n };\r\n\r\n this.handlePaginationPageChange = this.handlePaginationPageChange.bind(this);\r\n this.handleSortingTypeChange = this.handleSortingTypeChange.bind(this);\r\n this.setBackOrderListResults = this.setBackOrderListResults.bind(this);\r\n this.updateBackOrderResults = this.updateBackOrderResults.bind(this);\r\n this.toggleSortOrder = this.toggleSortOrder.bind(this);\r\n }\r\n\r\n public componentDidMount(): void {\r\n reaction(\r\n () => this.props.data.backOrderResults.result?.backOrderData,\r\n () => this.setBackOrderListResults(this.props.data.backOrderResults.result!.backOrderData)\r\n );\r\n }\r\n\r\n private setBackOrderListResults(backOrderListResponse: IGetBackOrderListResponse) {\r\n this.setState({\r\n backOrders: backOrderListResponse.BackOrderLines || [],\r\n totalCount: backOrderListResponse.RecordCount || 0,\r\n availableSortOptions: backOrderListResponse.AvailableSortOptions || [],\r\n sortOrder: backOrderListResponse.SortOrder || '',\r\n selectedSort: backOrderListResponse.SelectedSort || ''\r\n });\r\n }\r\n\r\n /**\r\n * Updates the results of the model when paginating\r\n * @private\r\n */\r\n private async updateBackOrderResults() {\r\n const top = this.numItemsToDisplay;\r\n const skip = this.state.page * top - top;\r\n const selectedSort = this.state.selectedSort;\r\n const sortOrder = this.state.sortOrder;\r\n const {\r\n context: { actionContext }\r\n } = this.props;\r\n\r\n // const getBackorderListInput = new GetBackorderListInput(request, request.apiSettings, top, skip, selectedSort, sortOrder);\r\n // console.log(getBackorderListInput);\r\n // const res = await getBackOrderList(getBackorderListInput, actionContext);\r\n const res = await getBackOrderListAsync({ callerContext: actionContext }, top, skip, selectedSort, sortOrder);\r\n void this.setBackOrderListResults(res);\r\n // void getBackOrderList(getBackorderListInput, actionContext).then(res => {\r\n // console.log(res);\r\n // this.setBackOrderListResults(res.backOrderData);\r\n // // this.setState({\r\n // // backOrders: res.backOrderData.BackOrderLines || [],\r\n // // totalCount: res.backOrderData.RecordCount || 0,\r\n // // sortOrder: res.backOrderData.SortOrder || '',\r\n // // selectedSort: res.backOrderData.SelectedSort || ''\r\n // // });\r\n // });\r\n }\r\n\r\n /**\r\n * Renders the model table\r\n * @param modelsList model list for the table\r\n * @param totalCount total count of models for pagination\r\n * @private\r\n */\r\n private getModelTable(backOrders: IBackOrderListEntity[], totalCount: number) {\r\n const {\r\n backOrderListTitleText,\r\n backOrderListItemsText,\r\n orderNumberHeadingText,\r\n poNumberHeadingText,\r\n mfrHeadingText,\r\n partNumberHeadingText,\r\n deliveryTypeHeadingText,\r\n qtyHeadingText,\r\n totalHeadingText,\r\n noBackOrdersMessageText\r\n } = this.props.resources;\r\n const backOrdersListResources: IBackOrderTableComponentResources = {\r\n backOrderListTitleText,\r\n backOrderListItemsText,\r\n orderNumberHeadingText,\r\n poNumberHeadingText,\r\n mfrHeadingText,\r\n partNumberHeadingText,\r\n deliveryTypeHeadingText,\r\n qtyHeadingText,\r\n totalHeadingText,\r\n noBackOrdersMessageText\r\n };\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handles user pagination\r\n * @param pageNumber page to change to\r\n * @private\r\n */\r\n private handlePaginationPageChange(pageNumber: number) {\r\n this.setState(\r\n {\r\n page: pageNumber\r\n },\r\n () => this.updateBackOrderResults()\r\n );\r\n }\r\n\r\n private generateUrlForPagination() {\r\n const url = this.props.context.request.url;\r\n return url.requestUrl.toString();\r\n }\r\n\r\n /**\r\n * renders the pagination\r\n * @private\r\n */\r\n private renderPagination() {\r\n const {\r\n resources: { previousText, nextText, paginationAriaLabel }\r\n } = this.props;\r\n\r\n if (this.state.totalCount === 0) {\r\n return '';\r\n }\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Renders a Pagination previous text.\r\n * @param paginationPreviousText - Pagination previous text from resources.\r\n * @returns Previous text and flipper icon.\r\n */\r\n private readonly _renderPrev = (paginationPreviousText: string) => {\r\n return (\r\n
\r\n
\r\n );\r\n };\r\n\r\n /**\r\n * Renders a Pagination next text.\r\n * @param paginationNextText - Pagination next text from resources.\r\n * @returns Next text and flipper icon.\r\n */\r\n private readonly _renderNext = (paginationNextText: string) => {\r\n return (\r\n
\r\n {paginationNextText}\r\n
\r\n );\r\n };\r\n\r\n private toggleSortOrder(sortOrder: string): void {\r\n this.setState(\r\n {\r\n sortOrder: sortOrder === 'Ascending' ? 'Descending' : 'Ascending',\r\n page: 1\r\n },\r\n () => this.updateBackOrderResults()\r\n );\r\n }\r\n\r\n private renderSortOrderButton() {\r\n // $msv-ChevronDown: \"\\ea4e\";\r\n // $msv-ChevronUp: \"\\ea78\";\r\n const sortOrder = this.state.sortOrder;\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handles sort by dropdown changes\r\n * @param pageNumber page to change to\r\n * @private\r\n */\r\n private async handleSortingTypeChange(e: React.ChangeEvent) {\r\n this.setState(\r\n {\r\n selectedSort: e.target.value,\r\n page: 1\r\n },\r\n () => this.updateBackOrderResults()\r\n );\r\n }\r\n\r\n private readonly _renderSortingType = () => {\r\n return (\r\n
\r\n

{this.props.resources.sortingSelectLabelText}

\r\n \r\n {!this.state.selectedSort && }\r\n {this.state.availableSortOptions &&\r\n this.state.availableSortOptions.length > 0 &&\r\n this.state.availableSortOptions.map(sortOptions => (\r\n \r\n ))}\r\n \r\n
\r\n );\r\n };\r\n\r\n public render(): JSX.Element | null {\r\n const { backOrders, totalCount } = this.state;\r\n\r\n const viewProps: IBackOrderListViewProps = {\r\n ...this.props,\r\n // selection: this._renderSortingType(),\r\n modelTable: this.getModelTable(backOrders, totalCount),\r\n pagination: this.renderPagination()\r\n };\r\n return this.props.renderView(viewProps);\r\n }\r\n}\r\n\r\nexport default BackOrderList;\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 * as React from 'react';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { IEducationTrainingData } from './education-training.data';\r\nimport { IEducationTrainingProps } from './education-training.props.autogenerated';\r\nimport { ICourseEntity, ICourseResponseEntity } from '../../actions/DataServiceEntities.g';\r\nimport { QueryResultSettings } from '@msdyn365-commerce/retail-proxy';\r\nimport { QueryResultSettingsProxy } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { getCourseDataAsync } from '../../actions/DataActionExtension.g';\r\nimport Pagination from '../../components/Pagination';\r\nimport { CourseTableComponent, ICourseTableComponentResources } from './components/CourseTable.component';\r\nimport { reaction } from 'mobx';\r\nimport { ICartState } from '@msdyn365-commerce/global-state';\r\nimport { observer } from 'mobx-react';\r\n\r\n/**\r\n * Props for the view component\r\n */\r\nexport interface IEducationTrainingViewProps extends IEducationTrainingProps {\r\n modelTable: React.ReactNode;\r\n pagination: React.ReactNode;\r\n}\r\n\r\n/**\r\n * View state for view component\r\n */\r\nexport interface IEducationTrainingViewState {\r\n isLoading: boolean;\r\n}\r\n\r\n/**\r\n * Component state\r\n */\r\ninterface IEducationTrainingState {\r\n page: number;\r\n courses: ICourseEntity[];\r\n totalCount: number;\r\n cart: ICartState | undefined;\r\n viewState: IEducationTrainingViewState;\r\n}\r\n\r\n/**\r\n *\r\n * EducationTraining component\r\n * @extends {React.PureComponent>}\r\n */\r\n@observer\r\nclass EducationTraining extends React.PureComponent, IEducationTrainingState> {\r\n constructor(props: IEducationTrainingProps) {\r\n super(props);\r\n\r\n const queryResultSettings = QueryResultSettingsProxy.fromInputData(props.context.actionContext).QueryResultSettings;\r\n let page = 1;\r\n if (queryResultSettings.Paging?.Skip && queryResultSettings.Paging.Skip > 0) {\r\n page = (this.props.config.itemsPerPage || 9) / queryResultSettings.Paging.Skip;\r\n }\r\n const viewState = {\r\n isLoading: false\r\n };\r\n this.state = {\r\n page,\r\n courses: this.props.data.courseResults.result?.courseResponse.Courses || [],\r\n totalCount: this.props.data.courseResults.result?.courseResponse.TotalCount || 0,\r\n cart: this.props.data.cart.result,\r\n viewState\r\n };\r\n\r\n this.handlePaginationPageChange = this.handlePaginationPageChange.bind(this);\r\n this.setCourseResults = this.setCourseResults.bind(this);\r\n this.setCartState = this.setCartState.bind(this);\r\n this.setLoading = this.setLoading.bind(this);\r\n }\r\n\r\n public componentDidMount(): void {\r\n reaction(\r\n () => this.props.data.courseResults.result?.courseResponse,\r\n () => this.setCourseResults(this.props.data.courseResults.result!.courseResponse)\r\n );\r\n reaction(\r\n () => this.props.data.cart.result?.cart,\r\n () => this.setCartState(this.props.data.cart.result!)\r\n );\r\n }\r\n\r\n private setCourseResults(courseResponse: ICourseResponseEntity) {\r\n this.setState({\r\n courses: courseResponse.Courses || [],\r\n totalCount: courseResponse.TotalCount\r\n });\r\n }\r\n\r\n private setCartState(cart: ICartState) {\r\n this.setState({\r\n cart: cart\r\n });\r\n }\r\n\r\n public setLoading(setLoading: boolean) {\r\n this.setState(prevState => ({ viewState: { ...prevState.viewState, isLoading: setLoading } }));\r\n }\r\n\r\n /**\r\n * Updates the results of the model when paginating\r\n * @private\r\n */\r\n private updateModelResults() {\r\n const top = this.props.config.itemsPerPage || 9;\r\n const queryResultSettings: QueryResultSettings = {\r\n Paging: {\r\n Top: top,\r\n Skip: this.state.page * top - top\r\n }\r\n };\r\n const {\r\n context: { actionContext }\r\n } = this.props;\r\n\r\n void getCourseDataAsync({ callerContext: actionContext, queryResultSettings: queryResultSettings }).then(result => {\r\n this.setState({\r\n courses: result[0].Courses || [],\r\n totalCount: result[0].TotalCount\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Renders the model table\r\n * @param modelsList model list for the table\r\n * @param totalCount total count of models for pagination\r\n * @private\r\n */\r\n private getModelTable(\r\n courseList: ICourseEntity[],\r\n additionalInfo: Msdyn365.RichText | undefined,\r\n totalCount: number,\r\n cart: ICartState | undefined,\r\n viewState: IEducationTrainingViewState,\r\n setLoading: (setLoading: boolean) => void\r\n ) {\r\n if (!courseList?.length) {\r\n return null;\r\n }\r\n\r\n const {\r\n courseListHeading,\r\n courseListResultsHeading,\r\n courseNameHeading,\r\n courseDateHeading,\r\n courseRegistrationDetailsHeading,\r\n courseAddToCartHeading,\r\n addToCartButtonLabel,\r\n startLabel,\r\n endLabel,\r\n registrationEndsLabel,\r\n maximumAttendeesLabel,\r\n currentAttendeesLabel,\r\n courseExpiredMessage,\r\n courseFullMessage\r\n } = this.props.resources;\r\n const educationTrainingResources: ICourseTableComponentResources = {\r\n courseListHeading,\r\n courseListResultsHeading,\r\n courseNameHeading,\r\n courseDateHeading,\r\n courseRegistrationDetailsHeading,\r\n courseAddToCartHeading,\r\n addToCartButtonLabel,\r\n startLabel,\r\n endLabel,\r\n registrationEndsLabel,\r\n maximumAttendeesLabel,\r\n currentAttendeesLabel,\r\n courseExpiredMessage,\r\n courseFullMessage\r\n };\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handles user pagination\r\n * @param pageNumber page to change to\r\n * @private\r\n */\r\n private handlePaginationPageChange(pageNumber: number) {\r\n this.setState(\r\n {\r\n page: pageNumber\r\n },\r\n () => this.updateModelResults()\r\n );\r\n }\r\n\r\n /**\r\n * renders the pagination\r\n * @private\r\n */\r\n private renderPagination() {\r\n const {\r\n config: { itemsPerPage },\r\n resources: { previousText, nextText, paginationAriaLabel }\r\n } = this.props;\r\n if (this.state.totalCount === 0) {\r\n return '';\r\n }\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Renders a Pagination previous text.\r\n * @param paginationPreviousText - Pagination previous text from resources.\r\n * @returns Previous text and flipper icon.\r\n */\r\n private readonly _renderPrev = (paginationPreviousText: string) => {\r\n return (\r\n
this.handlePaginationPageChange(this.state.page - 1)}>\r\n
\r\n );\r\n };\r\n\r\n /**\r\n * Renders a Pagination next text.\r\n * @param paginationNextText - Pagination next text from resources.\r\n * @returns Next text and flipper icon.\r\n */\r\n private readonly _renderNext = (paginationNextText: string) => {\r\n return (\r\n
this.handlePaginationPageChange(this.state.page + 1)}>\r\n {paginationNextText}\r\n
\r\n );\r\n };\r\n\r\n public render(): JSX.Element | null {\r\n const { courses, totalCount, cart } = this.state;\r\n\r\n const viewProps: IEducationTrainingViewProps = {\r\n ...this.props,\r\n modelTable: this.getModelTable(\r\n courses,\r\n this.props.config.additionalInfo,\r\n totalCount,\r\n cart,\r\n this.state.viewState,\r\n this.setLoading\r\n ),\r\n pagination: this.renderPagination()\r\n };\r\n return this.props.renderView(viewProps);\r\n }\r\n}\r\n\r\nexport default EducationTraining;\r\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","import * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { ILinkData } from '@msdyn365-commerce/core';\r\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface ILinksData {\r\n linkText?: string;\r\n linkUrl: ILinkData;\r\n ariaLabel?: string;\r\n openInNewTab?: boolean;\r\n}\r\n\r\nexport interface IContractsAccountPageLinks {\r\n links: ILinksData[];\r\n requestContext: Msdyn365.IRequestContext;\r\n\r\n /**\r\n * The telemetry content\r\n */\r\n telemetryContent?: ITelemetryContent;\r\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\r\n}\r\n\r\nconst ContractsAccountPageLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\r\n if (links.length === 0) {\r\n return null;\r\n }\r\n const editableLinks = _mapEditableLinks(links, telemetryContent);\r\n return (\r\n
\r\n {editableLinks && editableLinks.length > 0 ? (\r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\r\n if (!linkdata || linkdata.length === 0) {\r\n return null;\r\n }\r\n const editableLinks: Msdyn365.ILinksData[] = [];\r\n const payLoad = getPayloadObject('click', telemetryContent!, '');\r\n linkdata.forEach((link, index) => {\r\n payLoad.contentAction.etext = link.linkText;\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n const editableLink: Msdyn365.ILinksData = {\r\n ariaLabel: link.ariaLabel,\r\n className: 'eve-contracts-tile__links',\r\n linkText: link.linkText,\r\n linkUrl: link.linkUrl.destinationUrl,\r\n openInNewTab: link.openInNewTab,\r\n role: 'link',\r\n additionalProperties: attributes\r\n };\r\n editableLinks.push(editableLink);\r\n });\r\n\r\n return editableLinks;\r\n};\r\n\r\nexport default ContractsAccountPageLinks;\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 * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\nimport { IModuleProps, getTelemetryObject, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport classNames from 'classnames';\r\n\r\nimport { IContractsAccountPageData } from './contracts-account-page.data';\r\nimport { IContractsAccountPageProps } from './contracts-account-page.props.autogenerated';\r\nimport LinksComponent from './components/contracts-account-page-links';\r\nimport { IContractListEntity } from '../../actions/DataServiceEntities.g';\r\n\r\nexport interface IContractsAccountPageViewProps extends IContractsAccountPageProps {\r\n contractsHeading: React.ReactElement;\r\n contractsWrapper: IModuleProps;\r\n contractsTable: React.ReactElement;\r\n contractsLinks: React.ReactElement;\r\n}\r\n\r\n/**\r\n *\r\n * ContractsAccountPage component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass ContractsAccountPage extends React.PureComponent> {\r\n private readonly telemetryContent: ITelemetryContent;\r\n constructor(props: IContractsAccountPageProps) {\r\n super(props);\r\n this.telemetryContent = getTelemetryObject(\r\n this.props.context.request.telemetryPageName!,\r\n this.props.friendlyName,\r\n this.props.telemetry\r\n );\r\n\r\n this._renderHeading = this._renderHeading.bind(this);\r\n this._getContractsRowData = this._getContractsRowData.bind(this);\r\n this._handleHeadingChange = this._handleHeadingChange.bind(this);\r\n this._renderTable = this._renderTable.bind(this);\r\n this._generateRow = this._generateRow.bind(this);\r\n }\r\n\r\n private _renderHeading(): React.ReactElement {\r\n const {\r\n config: { heading },\r\n context: { request }\r\n } = this.props;\r\n\r\n if (!heading || !heading.text) {\r\n return <>;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n private _getContractsRowData(): IContractListEntity[] {\r\n if (!this.props.data.contractList.result) {\r\n return [];\r\n }\r\n // @ts-expect-error\r\n if (this.props.data.contractList.result.contractList && this.props.data.contractList.result.contractList.length > 0) {\r\n // @ts-expect-error\r\n return this.props.data.contractList.result.contractList;\r\n }\r\n return [];\r\n }\r\n\r\n private _handleHeadingChange = (event: Msdyn365.ContentEditableEvent): string => (this.props.config.heading.text = event.target.value);\r\n\r\n private _renderTable(): React.ReactElement {\r\n const {\r\n resources: { manufacturerCodeLabel, contractNumberLabel, laborRateLabel, contractDescLabel, noContractsFoundText }\r\n } = this.props;\r\n\r\n const headingRow = [manufacturerCodeLabel, contractNumberLabel, laborRateLabel, contractDescLabel];\r\n const contractsRowData = this._getContractsRowData();\r\n return (\r\n
\r\n
    \r\n
  • \r\n {headingRow.map((heading, i) => (\r\n
    \r\n {heading === manufacturerCodeLabel ? this._renderMfrCodeHeading(i + 1) : heading}\r\n
    \r\n ))}\r\n
  • \r\n {contractsRowData.length > 0 ? (\r\n contractsRowData.map((contract, i) => (\r\n
  • \r\n {this._generateRow(contract)}\r\n
  • \r\n ))\r\n ) : (\r\n
  • \r\n {this._generateEmptyRow(noContractsFoundText)}\r\n
  • \r\n )}\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _renderMfrCodeHeading(colNum: number): React.ReactElement {\r\n const {\r\n resources: { manufacturerCodeLabel, manufacturerCodeShortFormLabel }\r\n } = this.props;\r\n\r\n return (\r\n <>\r\n {manufacturerCodeShortFormLabel}\r\n {manufacturerCodeLabel}\r\n \r\n );\r\n }\r\n\r\n private _generateRow(contractData: IContractListEntity) {\r\n const { ManufacturerCode, Description, ContractLaborRate, ContractNotes } = contractData;\r\n return (\r\n <>\r\n
\r\n

{ManufacturerCode}

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

{Description}

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

{`$${ContractLaborRate.toFixed(2)}`}

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

{ContractNotes}

\r\n
\r\n \r\n );\r\n }\r\n\r\n private _generateEmptyRow(noContractsFoundText: string) {\r\n return (\r\n <>\r\n
\r\n

{noContractsFoundText}

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

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

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

\r\n
\r\n \r\n );\r\n }\r\n\r\n private _renderLink(): React.ReactElement {\r\n const {\r\n config: { links },\r\n context: { request }\r\n } = this.props;\r\n\r\n if (!links || links.length < 1) {\r\n return <>;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n private _handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\r\n const { links } = this.props.config;\r\n if (links && links[linkIndex]) {\r\n links[linkIndex].linkText = event.target.value;\r\n }\r\n };\r\n\r\n public render(): JSX.Element | null {\r\n const viewProps = {\r\n ...this.props,\r\n contractsHeading: this._renderHeading(),\r\n contractsWrapper: {\r\n className: classNames('eve-contracts-tile', 'contracts-container'),\r\n tag: 'div',\r\n moduleProps: this.props\r\n },\r\n contractsTable: this._renderTable(),\r\n contractsLinks: this._renderLink()\r\n };\r\n\r\n return this.props.renderView(viewProps);\r\n }\r\n}\r\n\r\nexport default ContractsAccountPage;\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\nimport { get } from 'lodash';\r\n\r\nimport { ICheckoutDeliveryOption, ICheckoutDeliveryOptionEdit, ICheckoutDeliveryOptionsList, ICheckoutDeliveryOptionsViewProps } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-delivery-options/./checkout-delivery-options';\r\nconst DLV_MODE_KEY = 'dlv-mode'\r\nconst DeliveryOptionList: React.FC = ({\r\n DeliveryOptionsList,\r\n list\r\n}) => {\r\n if (!list || list.length === 0) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {list.map((deliveryOption: ICheckoutDeliveryOptionEdit) => {\r\n return (\r\n {deliveryOption.radioButton}\r\n {deliveryOption.description}\r\n {/* {deliveryOption.price} */}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst DeliveryOptionSelected: React.FC = ({\r\n DeliveryOption,\r\n description,\r\n price\r\n}) => {\r\n\r\n return (\r\n \r\n {description}\r\n {/* {price} */}\r\n \r\n );\r\n};\r\n\r\nconst CheckoutDeliveryOptionsView: React.FC = props => {\r\n const { CheckoutDeliveryOptions,\r\n viewState,\r\n deliveryOptions,\r\n deliveryOptionSelected,\r\n alert,\r\n waiting,\r\n saveButton,\r\n editButton,\r\n cancelButton } = props;\r\n\r\n React.useEffect(() => {\r\n const dlvDescription = get(deliveryOptionSelected, 'description.props.description') || ''\r\n window.sessionStorage.setItem(DLV_MODE_KEY, dlvDescription)\r\n }, [deliveryOptionSelected])\r\n\r\n return (\r\n\r\n // TODO: All wrapper div should be provided by viewProps. Once SDK provide the sln, update markup.\r\n \r\n {viewState.isLoading && waiting}\r\n {viewState.isError && alert}\r\n {viewState.isShowList && deliveryOptions && }\r\n {viewState.isShowSelected && deliveryOptionSelected && }\r\n {viewState.isShowSaveButton && saveButton}\r\n {viewState.isShowEditButton && editButton}\r\n {viewState.isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutDeliveryOptionsView;\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 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","import React from 'react';\r\nimport Table from 'reactstrap/lib/Table';\r\nimport classnames from 'classnames';\r\nimport { ListGroup, ListGroupItem, ListGroupItemHeading, ListGroupItemText } from 'reactstrap';\r\nimport { IAriServiceAssemblyPartProductCombinations } from '../model-viewer';\r\nimport { ProductSearchResult } from '@msdyn365-commerce/retail-proxy';\r\nimport { CommercePropertyValueEnum } from '../../../modules/allowable-freight/utils/CommercePropertyValueEnum';\r\nimport getExtensionPropertyValueByKey from '../../../utils/getExtensionPropertyValueByKey';\r\n\r\ninterface IAriPArtsListTableProps {\r\n parts: IAriServiceAssemblyPartProductCombinations[];\r\n tableHeadings: string[];\r\n baseClassName: String;\r\n goToId(id: string): void;\r\n addPartToCart(part: ProductSearchResult, partId: string): void;\r\n partIdPrefix: string;\r\n selectedRow: string | undefined;\r\n isAuthenticated: boolean;\r\n requiresAuthentication: boolean;\r\n loginToViewPricingText: string;\r\n unavailableText: string;\r\n addToCartText: string;\r\n signInUrl: string;\r\n isMobile: boolean;\r\n isDrawerOpen: boolean;\r\n closePartDrawer(): void;\r\n priceFormatter: (price: string | number, currencyCode?: string | undefined) => string;\r\n mfrCode: string;\r\n}\r\n\r\n/**\r\n * Component to display a list of parts\r\n * @param props props\r\n */\r\nexport const AriPartsListTableComponent: React.FC = props => {\r\n const {\r\n tableHeadings,\r\n parts,\r\n baseClassName,\r\n goToId,\r\n addPartToCart,\r\n partIdPrefix,\r\n selectedRow,\r\n isAuthenticated,\r\n requiresAuthentication,\r\n loginToViewPricingText,\r\n signInUrl,\r\n isMobile,\r\n isDrawerOpen,\r\n unavailableText,\r\n addToCartText,\r\n closePartDrawer,\r\n priceFormatter\r\n } = props;\r\n\r\n const [yPosition, setYPosition] = React.useState(0);\r\n React.useEffect(() => {\r\n //Scroll event handling\r\n window.removeEventListener('scroll', () => setYPosition(window.pageYOffset));\r\n window.addEventListener('scroll', () => setYPosition(window.pageYOffset), { passive: true });\r\n window.removeEventListener('scroll', () => setYPosition(window.pageYOffset));\r\n return;\r\n });\r\n\r\n const scrollDownClickHandler = (id: string) => {\r\n const element = document.getElementById(id);\r\n return window.scrollTo(0, element ? element.getBoundingClientRect().top : 0);\r\n };\r\n const selectedPartIdName = `${baseClassName}__part-selection-popover`;\r\n return (\r\n <>\r\n
\r\n {!isMobile ? (\r\n \r\n \r\n \r\n {tableHeadings.map(th => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {parts &&\r\n parts.map(part => {\r\n const product = part.Product;\r\n const partId = product && product.ItemId;\r\n if (product?.ItemId === 'HOM538938002') {\r\n debugger;\r\n }\r\n const description = (product && product.Name) || part.Description;\r\n // TODO: Don't use hardcoded key\r\n const currentInvString =\r\n product &&\r\n getExtensionPropertyValueByKey(\r\n product.ExtensionProperties,\r\n 'inventory',\r\n CommercePropertyValueEnum.string\r\n );\r\n let currentInventory = parseInt(currentInvString as string, 10);\r\n if (isNaN(currentInventory)) {\r\n currentInventory = 0;\r\n }\r\n const oosUpperBound = part.Product?.oosUpperBoundLimit || 0;\r\n const canAddToCart = part.Product && currentInventory > oosUpperBound && part.Product?.isEligible;\r\n return (\r\n \r\n \r\n \r\n \r\n {isAuthenticated || !requiresAuthentication ? (\r\n \r\n \r\n \r\n \r\n {canAddToCart ? (\r\n <>\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n
{th}
\r\n \r\n {partId || 'N/A'}{description}{currentInventory}{priceFormatter(part.Product?.BasePrice || 0)}{priceFormatter(part.Product?.Price || 0)}\r\n \r\n \r\n {' '}\r\n addPartToCart(part.Product!, part.PartId!)}\r\n >\r\n {addToCartText}\r\n \r\n

\r\n
\r\n {' '}\r\n {currentInventory}{priceFormatter(part.Product?.BasePrice || 0)}\r\n {loginToViewPricingText}\r\n
\r\n ) : (\r\n \r\n {parts &&\r\n parts.map(part => (\r\n \r\n \r\n \r\n {`${tableHeadings[0]}: `}\r\n {part.Tag}\r\n \r\n \r\n {`${tableHeadings[1]}: `}\r\n {`${props.mfrCode}${part.Sku}`}\r\n \r\n \r\n \r\n \r\n {`${tableHeadings[2]}: ${part.Description}`}\r\n \r\n \r\n \r\n {isAuthenticated || requiresAuthentication ? (\r\n
\r\n {`${\r\n tableHeadings[4]\r\n }: ${priceFormatter(part.Product?.Price || 0)}`}\r\n {`${\r\n tableHeadings[3]\r\n }: ${part.Qty === '' ? 0 : parseInt(part.Qty!, 10)}`}\r\n
\r\n ) : (\r\n {loginToViewPricingText}\r\n )}\r\n
\r\n \r\n {isAuthenticated || requiresAuthentication ? (\r\n
\r\n {part.Product ? (\r\n
\r\n \r\n\r\n addPartToCart(part.Product!, part.PartId!)}\r\n >\r\n {addToCartText}\r\n \r\n

\r\n
\r\n ) : (\r\n \r\n )}\r\n
\r\n ) : (\r\n ''\r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n )}\r\n {yPosition <= 0 && (\r\n
scrollDownClickHandler(`${baseClassName}__list`)}>\r\n scroll down\r\n
\r\n )}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {tableHeadings.map(th => (\r\n \r\n ))}\r\n \r\n \r\n \r\n
{th}
\r\n
\r\n X\r\n
\r\n
\r\n \r\n \r\n );\r\n};\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 } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../../..';\n\nexport interface IB2bRequestsTileLinksProps {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst defaultClassName = 'ms-account-b2b-requests-tile';\n\nexport const B2bRequestsTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (!ArrayExtensions.hasElements(links)) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {ArrayExtensions.hasElements(editableLinks) ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!ArrayExtensions.hasElements(linkdata)) {\n return null;\n }\n\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n\n return linkdata.map(link => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return {\n ariaLabel: link.ariaLabel,\n className: `${defaultClassName}__link`,\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n } as Msdyn365.ILinksData;\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 Msdyn365 from '@msdyn365-commerce/core';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IB2bRequestsTileData } from './b2b-requests-tile.data';\nimport { IB2bRequestsTileProps } from './b2b-requests-tile.props.autogenerated';\nimport { B2bRequestsTileLinks } from './components/account-b2b-requests-tile-links';\n\nexport interface IB2bRequestsTileViewProps extends IB2bRequestsTileProps {\n b2bRequestsTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * B2bRequestsTile component.\n * @extends {React.PureComponent>}\n */\nclass B2bRequestsTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IB2bRequestsTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n const { config } = this.props;\n const { className, heading, links } = config;\n\n const defaultClassName = 'ms-account-b2b-requests-tile';\n\n if (!isChannelTypeB2B(this.props.context.actionContext.requestContext)) {\n return null;\n }\n\n const viewProps = {\n ...this.props,\n className,\n b2bRequestsTile: {\n moduleProps: this.props,\n className: classnames(defaultClassName, config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: ArrayExtensions.hasElements(links) && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default B2bRequestsTile;\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 { Button, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IPasswordResetVerificationButton {\n id?: string;\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n telemetryContent?: ITelemetryContent;\n onClick?(event: React.MouseEvent): void;\n}\n\nconst PasswordResetVerificationButton: React.FC = ({\n id,\n className,\n text,\n ariaLabel,\n telemetryContent,\n disabled,\n onClick\n}) => {\n const payLoad = getPayloadObject('click', telemetryContent!, text);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n );\n};\n\nexport default PasswordResetVerificationButton;\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 { IComponent, IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { ICartState } from '@msdyn365-commerce/global-state';\nimport { format, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\n/**\n * ICartIconData: Interface for Cart Icon Data.\n */\nexport interface ICartIconData {\n cart?: ICartState;\n}\n\n/**\n * ICartIconComponentProps: Interface for Cart Icon component props.\n */\nexport interface ICartIconComponentProps extends IComponentProps {\n className?: string;\n cartLabel: string;\n cartQtyLabel: string;\n telemetryContent?: ITelemetryContent;\n salesAgreementPricePrompt?: string;\n}\n\n/**\n * ICartIconComponent: Interface for Cart Icon component.\n */\nexport interface ICartIconComponent extends IComponent {}\n\nconst CartIconComponentActions = {};\n\n/**\n *\n * CartIcon component.\n * @extends {React.FC}\n */\nconst CartIcon: React.FC = observer((props: ICartIconComponentProps) => {\n const {\n cartLabel,\n cartQtyLabel,\n data: { cart }\n } = props;\n const defaultCartItemCount: number = 0;\n\n const cartItem = cart ? cart.totalItemsInCart : defaultCartItemCount;\n let qtyLabel: string = '';\n const cartMaxQuantity: number = 99;\n const maxQuantityLabel: string = '99+';\n if (cartItem > cartMaxQuantity) {\n qtyLabel = maxQuantityLabel;\n } else {\n qtyLabel = format(cartQtyLabel, cartItem);\n }\n const label = format(cartLabel, cartItem);\n\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', props.telemetryContent!, 'cart-icon', '');\n const attributes = getTelemetryAttributes(props.telemetryContent!, payLoad);\n const style: React.CSSProperties = {\n visibility: cart ? 'visible' : 'hidden'\n };\n return (\n
\n
\n {qtyLabel}\n
\n
\n );\n});\n\nexport const CartIconComponent: React.FunctionComponent = msdyn365Commerce.createComponentOverride<\n // @ts-expect-error -- Compatible issue with the component override.\n ICartIconComponent\n>('CartIcon', { component: CartIcon, ...CartIconComponentActions });\n\nexport default CartIconComponent;\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","/*--------------------------------------------------------------\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 {\r\n ICheckoutViewProps,\r\n ILineItem,\r\n ILineItemDeliveryGroup,\r\n ILineItems,\r\n IOrderSummary,\r\n IPickUpAtStore\r\n} from \"@msdyn365-commerce-modules/checkout/src/modules/checkout/./checkout\";\r\nimport { IEmailDelivery } from \"@msdyn365-commerce-modules/checkout/src/modules/checkout/./components\";\r\nimport {\r\n IInvoicePaymentSummary\r\n} from \"@msdyn365-commerce-modules/checkout/src/modules/checkout/./components/get-invoice-payment-summary\";\r\nimport {\r\n IChargeLinesBreakdownData,\r\n ICheckoutProps as ICheckoutExtensionProps\r\n} from \"../definition-extensions/checkout.ext.props.autogenerated\";\r\nimport { AttributeBooleanValue, Cart } from \"@msdyn365-commerce/retail-proxy\";\r\nimport { LinePagination } from \"./components/line-pagination\";\r\n\r\n\r\nexport interface IOrderSummaryExtended extends IOrderSummary {\r\n otherChargesLines: React.ReactNode[];\r\n}\r\n\r\nexport interface ILineItemsExtended extends ILineItems {\r\n numItems: number;\r\n prev: string;\r\n next: string;\r\n}\r\n\r\nexport interface ILineItemDeliveryGroupExtended extends ILineItemDeliveryGroup {\r\n numItems: number;\r\n prev: string;\r\n next: string;\r\n}\r\n\r\nexport const PickUpAtStoreComponent: React.FC = ({ PickUpAtStore, label, location }) => (\r\n \r\n {label}\r\n {location}\r\n \r\n);\r\n\r\nexport const EmailDeliveryComponent: React.FC = ({ EmailDelivery, label }) =>\r\n {label};\r\n\r\nexport const LineItemComponent: React.FC = ({ LineItem, item, pickUpAtStore, emailDelivery }) => (\r\n \r\n {item}\r\n {pickUpAtStore && }\r\n {emailDelivery && }\r\n \r\n);\r\n//\r\nexport const LineItemGroupComponent: React.FC = ({\r\n LineItemDeliveryGroup,\r\n LineItemList,\r\n heading,\r\n lineItems,\r\n numItems,\r\n prev,\r\n next\r\n }) => {\r\n if (lineItems && lineItems.length > 0 && !lineItems[0].item) {\r\n return null;\r\n }\r\n\r\n const defaultPageLength: number = 5;\r\n const pageLength = numItems || defaultPageLength;\r\n const [paginatedView, setPaginatedView] = React.useState((lineItems && lineItems.length >= pageLength) ? lineItems.slice(0, pageLength) : lineItems);\r\n const [paginationPage, setPaginationPage] = React.useState(0);\r\n\r\n const nextPage = () => {\r\n changePage(paginationPage + 1);\r\n };\r\n\r\n const prevPage = () => {\r\n changePage(paginationPage - 1);\r\n };\r\n\r\n const changePage = (page: number) => {\r\n if (page < 0) {\r\n return;\r\n }\r\n\r\n if (lineItems && (page > lineItems.length / pageLength)) {\r\n return;\r\n }\r\n\r\n let skip = (page * pageLength);\r\n if (lineItems && lineItems.length >= skip) {\r\n setPaginationPage(page);\r\n let slice = lineItems?.slice(skip);\r\n setPaginatedView(slice.length >= pageLength ? slice.slice(0, pageLength) : slice);\r\n }\r\n };\r\n\r\n const pagination = () => {\r\n return (\r\n \r\n );\r\n };\r\n\r\n if (paginatedView.length === 0 || !paginatedView[0].item) {\r\n return null;\r\n }\r\n return (\r\n \r\n {heading}\r\n \r\n {/* {lineItems.map(lineItem => ( */}\r\n {paginatedView.map(lineItem => {\r\n return ;\r\n })}\r\n \r\n {pagination()}\r\n \r\n );\r\n};\r\n\r\nexport const LineItemGroupComponentWithMultiplePickUp: React.FC = ({\r\n LineItemDeliveryGroup,\r\n LineItemList,\r\n heading,\r\n lineItems,\r\n lineItemWraper,\r\n lineItemWraperIcon\r\n }) => (\r\n \r\n {lineItemWraperIcon}\r\n {lineItemWraper}\r\n {heading}\r\n \r\n {lineItems.map(lineItem => (\r\n \r\n ))}\r\n \r\n \r\n);\r\n\r\nexport const LineItemComponentWithMultiplePickUp: React.FC = ({\r\n LineItem,\r\n item,\r\n pickUpAtStore,\r\n emailDelivery\r\n }) => (\r\n \r\n {item}\r\n {emailDelivery && }\r\n \r\n);\r\n\r\nexport const PickUpAtStoreComponentWithMultiplePickUp: React.FC = ({\r\n PickUpAtStore,\r\n label,\r\n location\r\n }) => (\r\n \r\n {label}\r\n {location}\r\n \r\n);\r\n\r\nexport const LineItemsComponent: React.FC = ({\r\n LineItems,\r\n Header,\r\n heading,\r\n editLink,\r\n itemsForPickup,\r\n itemsForShip,\r\n itemsForEmail,\r\n itemsGroupWithMulitplePickupMode,\r\n numItems,\r\n prev,\r\n next\r\n }) => {\r\n const items = itemsForPickup ? itemsForPickup : itemsForEmail ? itemsForEmail : itemsForShip;\r\n if (!items) {\r\n return null;\r\n }\r\n const lineItemGroupComponentExt: ILineItemDeliveryGroupExtended = { ...items!, numItems, prev, next };\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {editLink}\r\n \r\n {itemsGroupWithMulitplePickupMode === undefined && itemsForPickup &&\r\n }\r\n {itemsGroupWithMulitplePickupMode === undefined && itemsForEmail &&\r\n }\r\n {itemsGroupWithMulitplePickupMode === undefined && itemsForShip &&\r\n }\r\n {itemsGroupWithMulitplePickupMode !== undefined\r\n ? itemsGroupWithMulitplePickupMode.map((item, index) => {\r\n return ;\r\n })\r\n : null}\r\n \r\n );\r\n};\r\n\r\n\r\nconst OrderSummaryComponent: React.FC = ({ heading, lines, otherChargesLines }) => (\r\n
\r\n {heading}\r\n
\r\n {lines && (\r\n <>\r\n {lines.subtotal}\r\n {lines.shipping}\r\n {lines.otherCharge}\r\n {otherChargesLines &&

{otherChargesLines}

}\r\n {lines.tax}\r\n {/* {lines.totalDiscounts} */}\r\n {lines.loyalty}\r\n {lines.giftCard}\r\n {lines.orderTotal}\r\n \r\n )}\r\n
\r\n
\r\n);\r\n\r\nconst PaymentSummaryComponent: React.FC = ({ heading, lines }) => (\r\n
\r\n {heading}\r\n
\r\n {lines && (\r\n <>\r\n {lines.invoices}\r\n {lines.giftCard}\r\n {lines.loyalty}\r\n {lines.orderTotal}\r\n \r\n )}\r\n
\r\n
\r\n);\r\n\r\nconst _renderShipOnCheckout = (\r\n shipCompleteOnCheckout: boolean,\r\n handleShipCompleteOnCheckoutChange: (e: React.MouseEvent) => void,\r\n shipCompleteOnCheckoutLabel: string\r\n): React.ReactNode => (\r\n
\r\n \r\n
\r\n);\r\n\r\nconst _renderOrderComment = (commentHeading: string, commentString: string): React.ReactNode => {\r\n const emptyStringClassName = commentString == \"\";\r\n return (\r\n \r\n

\r\n {commentHeading}\r\n

\r\n

\r\n {commentString}\r\n

\r\n \r\n );\r\n};\r\n\r\n\r\nconst otherChargesLines = (cart: Cart, chargeCodes: IChargeLinesBreakdownData[] | undefined, currencyFormatter: (price: string | number, currencyCode?: string | undefined) => string): React.ReactNode[] => {\r\n\r\n let lines = cart.ChargeLines;\r\n let linesNode: React.ReactNode[] = [];\r\n chargeCodes?.map(c => {\r\n const node = lines?.filter(\r\n line => line.ChargeCode === c.chargeCode).map(\r\n r =>

{c.chargeLineLabel} {currencyFormatter(r.CalculatedAmount?.toString() ?? \"\")}

\r\n );\r\n linesNode.push(node);\r\n });\r\n return linesNode;\r\n};\r\n\r\nconst CheckoutView: React.FC> = props => {\r\n const attributeArr = props.data.checkout.result?.checkoutCart.cart.AttributeValues || [];\r\n const getShipCompleteIndex = (): number => {\r\n return props.data.checkout.result?.checkoutCart.cart.AttributeValues?.findIndex(attribute => attribute.Name === \"ShipComplete\") || -1;\r\n };\r\n // Get the text in the order level comment, if it doesn't exist, assign an empty string\r\n const getCommentText = (): string => {\r\n return props.data.checkout.result?.checkoutCart.cart.Comment || \"\";\r\n };\r\n // Get the comment heading text from the resources\r\n const getCommentHeadingText = (): string => {\r\n return props.resources.commentHeadingText;\r\n };\r\n const getShipCompleteValue = (): boolean => {\r\n const shipCompleteIndex = getShipCompleteIndex();\r\n if (shipCompleteIndex === -1) {\r\n return false;\r\n } else {\r\n const attr = attributeArr[shipCompleteIndex] as AttributeBooleanValue;\r\n return !!attr?.Value;\r\n }\r\n };\r\n const handleShipCompleteOnCheckoutChange = () => {\r\n const shipComplete = {\r\n \"@odata.type\": \"#Microsoft.Dynamics.Commerce.Runtime.DataModel.AttributeBooleanValue\",\r\n Name: \"ShipComplete\",\r\n Value: !getShipCompleteValue()\r\n };\r\n const idx = getShipCompleteIndex();\r\n idx === -1 ? attributeArr.push(shipComplete) : attributeArr.splice(idx, 1, shipComplete);\r\n const cart: Cart = Object.assign({}, props.data.checkout.result?.checkoutCart.cart);\r\n if (cart) {\r\n cart.AttributeValues = attributeArr;\r\n saveShipCompleteToCart(cart);\r\n }\r\n };\r\n const saveShipCompleteToCart = async (cart: Cart) => {\r\n if (cart) {\r\n const checkoutState = props.data.checkout.result;\r\n if (!checkoutState) {\r\n return;\r\n }\r\n\r\n await checkoutState.checkoutCart.updateCart({ newCartObject: cart }).then(() => {\r\n setShipCompleteOnCheckout(getShipCompleteValue());\r\n });\r\n }\r\n };\r\n const [shipCompleteOnCheckout, setShipCompleteOnCheckout] = React.useState(getShipCompleteValue());\r\n const shipCompleteOnCheckoutToggle = _renderShipOnCheckout(\r\n shipCompleteOnCheckout,\r\n handleShipCompleteOnCheckoutChange,\r\n props.resources.shipCompleteOnCheckoutLabel\r\n );\r\n\r\n // const getProductEligibility = async (addressId: number): Promise => {\r\n // // get items ids after removing duplicates\r\n // const checkoutState = props.data.checkout.result;\r\n // let productToRemove: any[] = [];\r\n // let list: EligibleItems = [];\r\n //\r\n // if (!checkoutState) {\r\n // return;\r\n // }\r\n //\r\n // const itemIds = [...new Set(cart.CartLines?.map(p => p.ItemId!) || [])];\r\n //\r\n // if (itemIds.length) {\r\n //\r\n // await getProductEligibilityAsync({ callerContext: props.context.actionContext }, itemIds, addressId, checkoutState.checkoutCart.cart.Id || '')\r\n // .then((result: any) => {\r\n // result.forEach((i: any) => {\r\n // const id = getExtensionPropertyValueByKey(i.ExtensionProperties, \"ItemId\", CommercePropertyValueEnum.string);\r\n // list.push({\r\n // ItemId: String(id),\r\n // IsEligible: i.IsEligible\r\n // });\r\n // });\r\n // });\r\n //\r\n // cart.CartLines?.forEach(c => {\r\n // list.forEach(i => {\r\n // if (i.ItemId === c.ItemId && !i.IsEligible) {\r\n // productToRemove.push(\r\n // {\r\n // LineId: c.LineId || '',\r\n // ItemId: c.ItemId\r\n // }\r\n // );\r\n // }\r\n // });\r\n // });\r\n // if (productToRemove.length) {\r\n // await checkoutState.checkoutCart.removeCartLines({ cartLineIds: productToRemove.map(p => p.LineId) });\r\n // }\r\n // return productToRemove;\r\n // }\r\n // }\r\n\r\n const _renderAccountLockedMessage = (): React.ReactNode => (\r\n
{props.config.accountLockedMessage}
\r\n );\r\n\r\n const {\r\n canShow,\r\n checkoutProps,\r\n headerProps,\r\n hasSalesOrder,\r\n hasInvoiceLine,\r\n bodyProps,\r\n mainProps,\r\n mainControlProps,\r\n sideProps,\r\n sideControlFirstProps,\r\n sideControlSecondProps,\r\n termsAndConditionsProps,\r\n orderConfirmation,\r\n loading,\r\n alert,\r\n title,\r\n guidedForm,\r\n orderSummary,\r\n invoicePaymentSummary,\r\n lineItems,\r\n placeOrderButton,\r\n termsAndConditions,\r\n keepShoppingButton\r\n } = props;\r\n const defaultPageLength: number = 5;\r\n const pageLength = props.config.pageLength || defaultPageLength;\r\n const cart: Cart = Object.assign({}, props.data.checkout.result?.checkoutCart.cart);\r\n let chargelines = otherChargesLines(cart, props.config.chargeLinesBreakdown, props.context.cultureFormatter.formatCurrency);\r\n const orderSummaryExtended: IOrderSummaryExtended = { ...orderSummary!, otherChargesLines: chargelines };\r\n // const [productsRemoved, setProductsRemoved] = React.useState(null);\r\n\r\n // if (MsDyn365.isBrowser && cart.CartLines) {\r\n // const shippingId = (window as any).ShippingId;\r\n // const recId = cart.ShippingAddress?.RecordId;\r\n //\r\n // // if (recId && shippingId !== recId) {\r\n // // (window as any).ShippingId = recId;\r\n // // getProductEligibility(recId).then(result => {\r\n // // if (result.length) {\r\n // // setProductsRemoved(result);\r\n // // document.dispatchEvent(new CustomEvent(\"UPDATE_CART\", { detail: { Products: result } }));\r\n // // }\r\n // // });\r\n // // }\r\n // }\r\n\r\n const isAccountBlocked: boolean | undefined = props.data.customerInformation.result?.Blocked;\r\n const lineItemsExt: ILineItemsExtended = {\r\n ...lineItems!,\r\n numItems: pageLength,\r\n prev: props.resources.paginationPrev || \"\",\r\n next: props.resources.paginationNext || \"\"\r\n };\r\n return (\r\n \r\n {/*{productsRemoved && productsRemoved.length ? generateProductsRemovedMessage(productsRemoved, productEligibilityText) : null}*/}\r\n {!hasSalesOrder && {title}}\r\n {!hasSalesOrder && (\r\n \r\n {loading}\r\n {isAccountBlocked ? _renderAccountLockedMessage() : null}\r\n {alert}\r\n {canShow && (\r\n <>\r\n \r\n {guidedForm}\r\n {termsAndConditions}\r\n {props.config.shipCompleteOnCheckout && shipCompleteOnCheckoutToggle}\r\n \r\n {placeOrderButton}\r\n {keepShoppingButton}\r\n \r\n \r\n \r\n {!hasInvoiceLine\r\n ? orderSummary && \r\n : invoicePaymentSummary && }\r\n \r\n {termsAndConditions}\r\n {placeOrderButton}\r\n {keepShoppingButton}\r\n \r\n {lineItems && }\r\n {_renderOrderComment(getCommentHeadingText(), getCommentText())}\r\n \r\n {termsAndConditions}\r\n {placeOrderButton}\r\n {keepShoppingButton}\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n {hasSalesOrder && orderConfirmation}\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutView;\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 * as React from 'react';\r\n\r\nimport { IAriSearchResultsData } from './ari-search-results.data';\r\nimport { IAriSearchResultsProps } from './ari-search-results.props.autogenerated';\r\nimport { IAriModelEntity, IAriServiceModelExtension } from '../../actions/DataServiceEntities.g';\r\nimport { IAriModel } from './interfaces/IAriModel';\r\nimport { AriSearchResultTableComponent, IAriSearchResultTableResources } from './components/AriSearchResultTable.component';\r\nimport { QueryResultSettings } from '@msdyn365-commerce/retail-proxy';\r\nimport { QueryResultSettingsProxy } from '@msdyn365-commerce-modules/retail-actions';\r\nimport getModelsBySearchText, { SearchModelsInput } from '../../actions/search-models.action';\r\nimport Pagination from '../../components/Pagination';\r\nimport generateAriModelDetailUrl from '../../utils/getAriModelDetailUrl';\r\n\r\n/**\r\n * Props for the view component\r\n */\r\nexport interface IAriSearchResultsViewProps extends IAriSearchResultsProps {\r\n modelTable: React.ReactNode;\r\n pagination: React.ReactNode;\r\n}\r\n\r\n/**\r\n * Component state\r\n */\r\ninterface IAriSearchResultsState {\r\n page: number;\r\n models: IAriServiceModelExtension[];\r\n totalCount: number;\r\n}\r\n\r\n/**\r\n *\r\n * AriSearchResults component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass AriSearchResults extends React.PureComponent, IAriSearchResultsState> {\r\n constructor(props: IAriSearchResultsProps) {\r\n super(props);\r\n const queryResultSettings = QueryResultSettingsProxy.fromInputData(props.context.actionContext).QueryResultSettings;\r\n let page = 1;\r\n if (queryResultSettings.Paging?.Skip && queryResultSettings.Paging.Skip > 0) {\r\n page = (this.props.config.itemsPerPage || 10) / queryResultSettings.Paging.Skip;\r\n }\r\n this.state = {\r\n page,\r\n models: this.props.data.ariResults.result?.ariSearchResults.Models || [],\r\n totalCount: this.props.data.ariResults.result?.ariSearchResults.TotalCount || 0\r\n };\r\n this.handlePaginationPageChange = this.handlePaginationPageChange.bind(this);\r\n\r\n void this.props.data.ariResults.then(results => {\r\n const models = results.ariSearchResults.Models;\r\n this.setState({\r\n models: models || [],\r\n totalCount: results.ariSearchResults.TotalCount\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Generates the id for the product detail page\r\n * @param modelId model id for the page url\r\n * @param brandCode brand code for the page url\r\n * @private\r\n */\r\n private getModelDetailPageUrl(modelId: string, brandCode: string) {\r\n return generateAriModelDetailUrl(modelId, brandCode, this.props.context.actionContext);\r\n }\r\n\r\n /**\r\n * Updates the results of the model when paginating\r\n * @private\r\n */\r\n private updateModelResults() {\r\n const top = this.props.config.itemsPerPage || 10;\r\n const queryResultSettings: QueryResultSettings = {\r\n Paging: {\r\n Top: top,\r\n Skip: this.state.page * top\r\n }\r\n };\r\n const searchTerm = this.props.context.request.query?.q || '';\r\n const {\r\n context: {\r\n request: { apiSettings },\r\n request,\r\n actionContext\r\n }\r\n } = this.props;\r\n const pageType =\r\n this.props.context.request.urlTokens.pageType === 'Category' || (request.query && request.query.categoryId)\r\n ? 'Category'\r\n : 'Search';\r\n const searchModelInput = new SearchModelsInput(searchTerm, queryResultSettings, pageType, apiSettings);\r\n void getModelsBySearchText(searchModelInput, actionContext).then(result => {\r\n this.setState({\r\n models: result.ariSearchResults.Models || [],\r\n totalCount: result.ariSearchResults.TotalCount\r\n });\r\n });\r\n }\r\n\r\n /**\r\n * Renders the model table\r\n * @param modelsList model list for the table\r\n * @param totalCount total count of models for pagination\r\n * @private\r\n */\r\n private getModelTable(modelsList: IAriModelEntity[], totalCount: number) {\r\n if (!modelsList?.length) {\r\n return null;\r\n }\r\n const modelsListWithPageLinks: IAriModel[] = modelsList.map(model => {\r\n return {\r\n ...model,\r\n detailPageUrl: this.getModelDetailPageUrl(model.Id.toString(), model.BrandCode!) || ''\r\n };\r\n });\r\n\r\n const { modelHeading, manufacturerHeading, tableHeading, descriptionHeading } = this.props.resources;\r\n const ariSearchResultTableResources: IAriSearchResultTableResources = {\r\n modelHeading,\r\n manufacturerHeading,\r\n tableHeading,\r\n descriptionHeading\r\n };\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handles user pagination\r\n * @param pageNumber page to change to\r\n * @private\r\n */\r\n private handlePaginationPageChange(pageNumber: number) {\r\n this.setState(\r\n {\r\n page: pageNumber\r\n },\r\n () => this.updateModelResults()\r\n );\r\n }\r\n\r\n private generateUrlForPagination() {\r\n const url = this.props.context.request.url;\r\n return url.requestUrl.toString();\r\n }\r\n\r\n /**\r\n * renders the pagination\r\n * @private\r\n */\r\n private renderPagination() {\r\n const {\r\n config: { itemsPerPage },\r\n resources: { previousText, nextText, paginationAriaLabel }\r\n } = this.props;\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Renders a Pagination previous text.\r\n * @param paginationPreviousText - Pagination previous text from resources.\r\n * @returns Previous text and flipper icon.\r\n */\r\n private readonly _renderPrev = (paginationPreviousText: string) => {\r\n return (\r\n
\r\n
\r\n );\r\n };\r\n\r\n /**\r\n * Renders a Pagination next text.\r\n * @param paginationNextText - Pagination next text from resources.\r\n * @returns Next text and flipper icon.\r\n */\r\n private readonly _renderNext = (paginationNextText: string) => {\r\n return (\r\n
\r\n {paginationNextText}\r\n
\r\n );\r\n };\r\n\r\n public render(): JSX.Element | null {\r\n const { models, totalCount } = this.state;\r\n const viewProps: IAriSearchResultsViewProps = {\r\n ...this.props,\r\n modelTable: this.getModelTable(models, totalCount),\r\n pagination: this.renderPagination()\r\n };\r\n return this.props.renderView(viewProps);\r\n }\r\n}\r\n\r\nexport default AriSearchResults;\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 * as React from 'react';\n\nimport { ISubscribeViewProps } from './subscribe';\n\n/**\n * Override form action and button action below.\n * @param event - The form event.\n */\nconst onSubmit = (event: React.FormEvent): void => {\n event.preventDefault();\n};\n\n/**\n * View component.\n * @param props - The view properties.\n * @returns - Returns nothing.\n */\nexport const subscribeView: React.FC = props => {\n const { subscribe, subscribeContainer, heading, text, subscribeForm, emailInput, submitButton } = props;\n return (\n \n \n {heading}\n {text}\n \n \n \n {props.submitButtonLabelText}\n \n \n \n \n );\n};\n\nexport default subscribeView;\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 { IAadGenericViewProps } from './aad-generic';\n\nexport default (props: IAadGenericViewProps) => {\n const { aadGeneric, aadConainer, aadAPIConainer, heading } = props;\n\n return (\n \n \n {heading}\n {aadAPIConainer}\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 classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface IPasswordResetVerificationErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst PasswordResetVerificationError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n );\n};\n\nexport default PasswordResetVerificationError;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface IPasswordResetVerificationSuccess {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst PasswordResetVerificationSuccess: React.FC = ({ id, className, type = 'page', message }) => {\n const successClassName = `${className}__${type}-success`;\n\n return (\n \n );\n};\n\nexport default PasswordResetVerificationSuccess;\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 { getUrlSync } from '@msdyn365-commerce/core';\r\nimport { IB2bRequestsStatusViewProps } from '@msdyn365-commerce-modules/account-management';\r\nimport { Button, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React from 'react';\r\n\r\nimport { IB2bRequestsStatusProps, IB2bRequestsStatusResources } from '../definition-extensions/b2b-requests-status.ext.props.autogenerated';\r\n\r\n/**\r\n * B2b Request status View.\r\n * @param props - The view props.\r\n * @returns The JSX Element.\r\n */\r\n// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from module file.\r\nconst B2bRequestsStatusView: React.FC> = props => {\r\n const { b2bRequestsStatus, heading, table } = props;\r\n const { continueShoppingButtonTitle } = props.resources;\r\n const initialCount = 0;\r\n\r\n if (props.data.operationRequests.result?.length === initialCount) {\r\n return (\r\n \r\n {heading}\r\n \r\n
\r\n

\r\n {props.resources.headingForEmptyRequestStatus}\r\n

\r\n

\r\n {props.resources.textForEmptyRequestStatus}\r\n

\r\n \r\n \r\n {continueShoppingButtonTitle}\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n return (\r\n \r\n {heading}\r\n {table}\r\n \r\n );\r\n};\r\n\r\nexport default B2bRequestsStatusView;\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 { IModuleProps, INodeProps, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createTabStateInput, getContentID, TabItemType } from '../..';\nimport { ITabData } from './tab.data';\nimport { ITabProps } from './tab.props.autogenerated';\n\n/**\n *\n * Tab component.\n * @extends {React.PureComponent>}\n */\n\nexport interface ICallToActionProps {\n link: INodeProps[];\n}\n\nexport interface ITabViewProps extends ITabProps<{}> {\n heading?: React.ReactNode;\n TabContainer: IModuleProps;\n headerSection: INodeProps;\n tabHeaderSection: INodeProps;\n tabsSection: INodeProps;\n tabItemContainer: INodeProps;\n tabHeaders: React.ReactNode;\n tabContents: React.ReactNode;\n}\n\nexport interface ITabViewStates {\n currentTabIndex: number;\n}\n\n/**\n *\n * Tab component.\n * @extends {React.Component>}\n */\n@observer\nclass Tab extends React.Component, ITabViewStates> {\n public readonly tabIndexQuery: string = 'activeTab';\n\n private activeLink: HTMLLIElement | null;\n\n constructor(props: ITabProps) {\n super(props);\n const { defaultTabIndex } = this.props.config;\n const { slots } = this.props;\n const slotLength = (slots && slots.tabItems && slots.tabItems.length) || 0;\n let initialIndex = defaultTabIndex && defaultTabIndex <= slotLength && defaultTabIndex > 0 ? defaultTabIndex - 1 : 0;\n const queryString: string =\n (this.props.context &&\n this.props.context.request &&\n this.props.context.request.query &&\n this.props.context.request.query.activeTab) ||\n '';\n let queryTabIndex: number = 0;\n if (queryString.indexOf(':') > 0) {\n const arr = queryString.split(':');\n const moduleId = arr[0];\n if (moduleId === this.props.id) {\n queryTabIndex = Number.parseInt(arr[1], 10);\n }\n }\n initialIndex = queryTabIndex > 0 && queryTabIndex <= slotLength ? queryTabIndex - 1 : initialIndex;\n this.state = { currentTabIndex: initialIndex };\n\n this._getTabHeader = this._getTabHeader.bind(this);\n this._getTabContent = this._getTabContent.bind(this);\n this._onClick = this._onClick.bind(this);\n this._onKeyDown = this._onKeyDown.bind(this);\n this._setGetParameter = this._setGetParameter.bind(this);\n this.activeLink = null;\n }\n\n public shouldComponentUpdate(nextProps: ITabProps, nextState: ITabViewStates): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { slots } = this.props;\n const { heading, className } = this.props.config;\n\n const headingComponent = heading && (\n \n );\n const slotLength = (slots && slots.tabItems && slots.tabItems.length) || 0;\n\n // Const queryTabIndex = this.props.context && this.props.context.request && this.props.context.request.query && +this.props.context.request.query.activeTabIndex || 0;\n // let activeIndex = defaultTabIndex && defaultTabIndex <= slotLength && defaultTabIndex > 0 ? defaultTabIndex - 1 : 0;\n // activeIndex = queryTabIndex > 0 && queryTabIndex <= slotLength ? queryTabIndex - 1 : activeIndex;\n\n const tabViewProps = {\n ...this.props,\n TabContainer: {\n moduleProps: this.props,\n className: classnames('ms-tab', className)\n },\n headerSection: { className: 'ms-tab-header-section' },\n tabsSection: { className: 'ms-tab-tabs-section', tag: 'ul' as NodeTag, role: 'tablist' },\n heading: headingComponent,\n config: this.props && this.props.config,\n tabItemContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-tab-content-section'\n },\n tabContents: slotLength > 0 && slots.tabItems.map((item: React.ReactNode, index: number) => this._getTabContent(item, index)),\n tabHeaders: slotLength > 0 && slots.tabItems.map((item: React.ReactNode, index: number) => this._getTabHeader(item, index))\n };\n return this.props.renderView(tabViewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: MsDyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public componentDidUpdate(): void {\n const { data } = this.props;\n if (!this.props.context.request.params.isEditor) {\n const dataActionTabId = data && data.activeTabState && data.activeTabState.result && data.activeTabState.result.tabId;\n if (dataActionTabId) {\n if (this.props.id === dataActionTabId) {\n this.activeLink && this.activeLink.focus();\n }\n } else {\n const queryString: string =\n (this.props.context &&\n this.props.context.request &&\n this.props.context.request.query &&\n this.props.context.request.query.activeTab) ||\n '';\n if (queryString.indexOf(':') > 0) {\n const arr = queryString.split(':');\n const moduleId = arr[0];\n if (moduleId === this.props.id) {\n this.activeLink && this.activeLink.focus();\n }\n }\n }\n }\n }\n\n /**\n *Set the activate link value on tab click.\n * @param link -Ref link value.\n */\n private readonly _refHandler = (link: HTMLLIElement | null) => {\n this.activeLink = link;\n };\n\n private _getTabHeader(item: React.ReactNode, index: number): React.ReactNode {\n const { data } = this.props;\n const activeContentIndex =\n data && data.activeTabState && data.activeTabState.result && data.activeTabState.result.activeContentIndex;\n const dataActionTabId = data && data.activeTabState && data.activeTabState.result && data.activeTabState.result.tabId;\n const selected =\n activeContentIndex !== undefined && dataActionTabId === this.props.id\n ? activeContentIndex === index\n : this.state.currentTabIndex === index;\n const contentID = getContentID(index, this.props.id);\n\n return (\n \n \n {React.cloneElement(item as React.ReactElement, {\n tabItemType: TabItemType.TabHeader,\n isSelected: index === this.state.currentTabIndex,\n itemIndex: index,\n tabId: this.props.id\n })}\n \n \n );\n }\n\n private readonly _onClick = (index: number, id: string) => (e: React.MouseEvent) => {\n const activeTabState = { activeContentIndex: index, tabId: id };\n this.props.context.actionContext.update(createTabStateInput(activeTabState), activeTabState);\n this.setState({ currentTabIndex: index });\n\n // Update query paramter\n const requestContext = this.props.context.request;\n const newUrl = this._setGetParameter(requestContext, this.tabIndexQuery, `${this.props.id}:${String(index + 1)}`);\n requestContext && window.history.pushState({ path: newUrl }, '', newUrl);\n };\n\n private readonly _onKeyDown = (index: number, id: string) => (e: React.KeyboardEvent) => {\n if (e.keyCode === 13) {\n const activeTabState = { activeContentIndex: index, tabId: id };\n this.props.context.actionContext.update(createTabStateInput(activeTabState), activeTabState);\n this.setState({ currentTabIndex: index });\n\n // Update query paramter\n const requestContext = this.props.context.request;\n const newUrl = this._setGetParameter(requestContext, this.tabIndexQuery, `${this.props.id}:${String(index + 1)}`);\n requestContext && window.history.pushState({ path: newUrl }, '', newUrl);\n }\n\n if (e.keyCode === 39 || e.keyCode === 37) {\n const { slots } = this.props;\n const slotLength = (slots && slots.tabItems && slots.tabItems.length) || 0;\n\n if (e.keyCode === 39) {\n // If we're at the end, go to the start\n if (index + 1 === slotLength) {\n index = -1;\n }\n const activeTabState = { activeContentIndex: index + 1, tabId: id };\n this.props.context.actionContext.update(createTabStateInput(activeTabState), activeTabState);\n this.setState({ currentTabIndex: index + 1 });\n\n // Update query paramter\n const requestContext = this.props.context.request;\n const newUrl = this._setGetParameter(requestContext, this.tabIndexQuery, `${this.props.id}:${String(index + 2)}`);\n requestContext && window.history.pushState({ path: newUrl }, '', newUrl);\n\n // Move left\n } else if (e.keyCode === 37) {\n // If we're at the start, move to the end\n if (index === 0) {\n index = slotLength;\n }\n const activeTabState = { activeContentIndex: index - 1, tabId: id };\n this.props.context.actionContext.update(createTabStateInput(activeTabState), activeTabState);\n this.setState({ currentTabIndex: index - 1 });\n\n // Update query paramter\n const requestContext = this.props.context.request;\n const newUrl = this._setGetParameter(requestContext, this.tabIndexQuery, `${this.props.id}:${String(index)}`);\n requestContext && window.history.pushState({ path: newUrl }, '', newUrl);\n }\n }\n };\n\n private _getTabContent(item: React.ReactNode, index: number): React.ReactNode {\n return (\n \n {React.cloneElement(item as React.ReactElement, {\n tabItemType: TabItemType.TabContent,\n isSelected: index === this.state.currentTabIndex,\n itemIndex: index,\n tabId: this.props.id\n })}\n \n );\n }\n\n private _setGetParameter(requestContext: MsDyn365.IRequestContext, paramName: string, paramValue: string): string {\n let url;\n\n if (MsDyn365.msdyn365Commerce.isBrowser) {\n url = new URL(window.location.href);\n } else {\n url = new URL(requestContext.url.requestUrl.href);\n }\n\n const params = new window.URLSearchParams(url.search);\n params.set(paramName, paramValue);\n url.search = decodeURIComponent(params.toString());\n return url.toString();\n }\n}\n\nexport default Tab;\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 { IAadGenericData } from './aad-generic.data';\nimport { IAadGenericProps } from './aad-generic.props.autogenerated';\n\nexport interface IAadGenericViewProps extends IAadGenericProps {\n aadGeneric: IModuleProps;\n aadConainer: INodeProps;\n aadAPIConainer: React.ReactNode;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AadGeneric component.\n * @extends {React.Component>}\n */\nclass AadGeneric extends React.Component> {\n private readonly moduleClassName: string = 'ms-aad-generic';\n\n public componentDidMount(): void {\n // @ts-expect-error\n const { $i2e, $element } = window || {};\n\n if ($i2e && $element) {\n $i2e.insertServiceContent($element.getElementContent());\n $element.initialize();\n }\n }\n\n public shouldComponentUpdate(nextProps: IAadGenericViewProps): boolean {\n if (nextProps.config.heading !== this.props.config.heading) {\n return true;\n }\n return false;\n }\n\n public render(): JSX.Element | null {\n const { className, heading } = this.props.config;\n\n const viewProps = {\n ...this.props,\n aadGeneric: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, className)\n },\n aadConainer: {\n className: `${this.moduleClassName}__container`\n },\n aadAPIConainer:
,\n heading: heading && (\n \n )\n };\n\n return this.props.renderView(viewProps);\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.heading) {\n this.props.config.heading.text = event.target.value;\n }\n };\n}\n\nexport default AadGeneric;\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 { IComponent, IComponentProps, ICoreContext, IImageSettings, Image, msdyn365Commerce } from '@msdyn365-commerce/core';\r\nimport { getFallbackImageUrl, getProductPageUrlSync, ObjectExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport React from 'react';\r\n\r\nimport { InvoicePaidStatus, OrderInvoice, SalesInvoice, SalesInvoiceLine, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport { IPayableInvoice } from '@msdyn365-commerce-modules/invoice';\r\n\r\n// import { IInvoiceProductLine, InvoiceDetailsModel } from '../helpers/invoice-data';\r\n\r\nexport interface IInvoicePaymentDetails {\r\n totalDiscount?: number;\r\n subtotal?: number;\r\n totalCharges?: number;\r\n totalTax?: number;\r\n totalAmount?: number;\r\n currencyCode?: string;\r\n}\r\n\r\nexport interface IInvoiceProductLine extends SalesInvoiceLine {\r\n primaryImageUrl?: string;\r\n}\r\n\r\n/**\r\n * Represents invoice details data model.\r\n */\r\nexport class InvoiceDetailsModel implements IPayableInvoice, IInvoicePaymentDetails {\r\n public id: string;\r\n\r\n public invoiceDate?: Date;\r\n\r\n public customerAccountNumber?: string;\r\n\r\n public customerName?: string;\r\n\r\n public dueDate?: Date;\r\n\r\n public amountDue?: number;\r\n\r\n public status?: InvoicePaidStatus;\r\n\r\n public lines: IInvoiceProductLine[];\r\n\r\n public totalDiscount?: number;\r\n\r\n public subtotal?: number;\r\n\r\n public totalCharges?: number;\r\n\r\n public totalTax?: number;\r\n\r\n public totalAmount?: number;\r\n\r\n public currencyCode?: string;\r\n\r\n public constructor(invoice: OrderInvoice, invoiceDetails: SalesInvoice, products: SimpleProduct[]) {\r\n this.id = invoice.Id || '';\r\n this.invoiceDate = invoice.InvoiceDate ? new Date(invoice.InvoiceDate) : undefined;\r\n this.customerName = invoice.CustomerName;\r\n this.dueDate = invoice.InvoiceDueDate ? new Date(invoice.InvoiceDueDate) : undefined;\r\n this.amountDue = invoice.AmountBalance;\r\n this.status = invoice.InvoicePaidStatusValue;\r\n this.lines = (invoiceDetails.SalesInvoiceLine || []).map(line => {\r\n const productLine: IInvoiceProductLine = {\r\n ...line,\r\n primaryImageUrl: products.find(product => product.RecordId === line.RecordId)?.PrimaryImageUrl\r\n };\r\n return productLine;\r\n });\r\n\r\n this.totalDiscount = invoiceDetails.TotalDiscount;\r\n this.subtotal = invoiceDetails.InvoiceSubtotal;\r\n this.totalCharges = invoiceDetails.TotalCharges;\r\n this.totalTax = invoiceDetails.TotalTaxAmount;\r\n this.totalAmount = invoice.TotalAmount;\r\n this.currencyCode = invoice.CurrencyCode;\r\n }\r\n\r\n public get canBePaid(): boolean {\r\n return this.status !== InvoicePaidStatus.Paid;\r\n }\r\n}\r\n\r\n\r\nexport interface IInvoiceDetailsProductsData {\r\n invoiceDetails: InvoiceDetailsModel;\r\n}\r\n\r\nexport interface IInvoiceDetailsProductsResources {\r\n invoiceProductColor: string;\r\n invoiceProductSize: string;\r\n invoiceProductStyle: string;\r\n invoiceQuantity: string;\r\n}\r\n\r\nexport interface IInvoiceDetailsProductsProps extends IComponentProps {\r\n context: ICoreContext;\r\n className: string;\r\n imageSettings?: IImageSettings;\r\n resources: IInvoiceDetailsProductsResources;\r\n}\r\n\r\nexport interface IInvoiceDetailsProductsComponent extends IComponent {\r\n}\r\n\r\nconst _renderProductDimensions = (className: string, resources: IInvoiceDetailsProductsResources, product: SalesInvoiceLine): JSX.Element => {\r\n return (\r\n
\r\n {StringExtensions.isNullOrWhitespace(product.ColorName) ? null :
\r\n {resources.invoiceProductColor.replace('{0}', product.ColorName!)}\r\n
}\r\n {StringExtensions.isNullOrWhitespace(product.SizeName) ? null :
\r\n {resources.invoiceProductSize.replace('{0}', product.SizeName!)}\r\n
}\r\n {StringExtensions.isNullOrWhitespace(product.StyleName) ? null :
\r\n {resources.invoiceProductStyle.replace('{0}', product.StyleName!)}\r\n
}\r\n
\r\n );\r\n};\r\n\r\nconst _renderProductImage = (className: string, context: ICoreContext, product: IInvoiceProductLine, imageSettings?: IImageSettings): JSX.Element | null => {\r\n const defaultImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: 'w=315&h=315&m=6', w: 0, h: 0 },\r\n lg: { q: 'w=315&h=315&m=6', w: 0, h: 0 },\r\n xl: { q: 'w=315&h=315&m=6', w: 0, h: 0 }\r\n },\r\n lazyload: true,\r\n cropFocalRegion: true\r\n };\r\n\r\n if (imageSettings) {\r\n imageSettings.cropFocalRegion = true;\r\n }\r\n\r\n const fallbackImage = getFallbackImageUrl(product.ItemId, context.actionContext.requestContext.apiSettings);\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst formatAmount = (context: ICoreContext, amount: number | undefined, currencyCode: string | undefined) => {\r\n if (amount === undefined) {\r\n return '';\r\n }\r\n return context.cultureFormatter.formatCurrency(amount, currencyCode);\r\n};\r\n\r\nconst InvoiceDetailsProducts: React.FC = (props: IInvoiceDetailsProductsProps): JSX.Element => {\r\n const { className, data: { invoiceDetails }, resources } = props;\r\n\r\n const productLineClass = `${className}__product-line`;\r\n const productLineInfoContainerClass = `${productLineClass}__product-info-container`;\r\n const productLineDetailsClass = `${productLineInfoContainerClass}__product-details`;\r\n const productLineSmallDetailsClass = `${productLineDetailsClass}__small-details`;\r\n\r\n return (\r\n
\r\n {\r\n invoiceDetails.lines.map(product => {\r\n const quantity = product.Quantity || 1;\r\n\r\n let productUrl = '';\r\n if (!ObjectExtensions.isNullOrUndefined(product.ProductName) &&\r\n !ObjectExtensions.isNullOrUndefined(product.RecordId)) {\r\n productUrl = getProductPageUrlSync(product.ProductName, product.RecordId, props.context.actionContext);\r\n }\r\n\r\n return (\r\n
\r\n
\r\n {_renderProductImage(`${productLineInfoContainerClass}__product-image`, props.context, product)}\r\n
\r\n \r\n {`${product.ItemId} - ${product.ProductName}`}\r\n \r\n
\r\n {_renderProductDimensions(`${productLineSmallDetailsClass}__dimensions`, resources, product)}\r\n
\r\n {formatAmount(props.context, product.Price, invoiceDetails.currencyCode)}\r\n
\r\n
\r\n {resources.invoiceQuantity.replace('{0}', quantity.toString())}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {formatAmount(props.context, product.NetAmount, invoiceDetails.currencyCode)}\r\n
\r\n
\r\n );\r\n })\r\n }\r\n
\r\n );\r\n};\r\n\r\n// @ts-expect-error\r\nexport const InvoiceDetailsProductsComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\r\n 'InvoiceDetailsProductsComponent',\r\n { component: InvoiceDetailsProducts }\r\n);\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 { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountGenericTileConfig, IAccountGenericTileProps } from './account-generic-tile.props.autogenerated';\nimport LinksComponent from './components/account-generic-tile-links';\n\nexport interface IAccountGenericTileViewProps extends IAccountGenericTileProps {\n AccountGenericTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * AccountGeneric component.\n * @extends {React.PureComponent>}\n */\nclass AccountGenericTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountGenericTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config } = this.props;\n const { className, heading, links } = config;\n\n const viewProps = {\n ...this.props,\n className,\n AccountGenericTile: {\n moduleProps: this.props,\n className: classnames('ms-account-generic-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountGenericTile;\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 * as React from 'react';\r\nimport { IEducationTrainingViewProps } from './education-training';\r\n\r\nexport default (props: IEducationTrainingViewProps) => {\r\n const { modelTable, pagination } = props;\r\n return (\r\n
\r\n {modelTable}\r\n {pagination}\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport Table from 'reactstrap/lib/Table';\r\nimport { IAriModel } from '../interfaces/IAriModel';\r\nimport { ListGroup, ListGroupItem, ListGroupItemHeading, ListGroupItemText } from 'reactstrap';\r\n\r\nexport interface IAriSearchResultTableResources {\r\n tableHeading: string;\r\n modelHeading: string;\r\n manufacturerHeading: string;\r\n descriptionHeading: string;\r\n}\r\n\r\ninterface IAriSearchResultTableComponentProps {\r\n searchResults: IAriModel[];\r\n resources: IAriSearchResultTableResources;\r\n totalCount: number;\r\n}\r\n\r\nexport const AriSearchResultTableComponent: React.FC = props => {\r\n const { searchResults, resources, totalCount } = props;\r\n const { tableHeading, modelHeading, manufacturerHeading, descriptionHeading } = resources;\r\n const [outerWidth, setOuterWidth] = React.useState(0);\r\n\r\n React.useEffect(() => {\r\n //Set initial outerWidth\r\n setOuterWidth(window.outerWidth);\r\n //Resize window event handling\r\n window.removeEventListener('resize', () => setOuterWidth(window.outerWidth));\r\n window.addEventListener('resize', () => setOuterWidth(window.outerWidth), { passive: true });\r\n return window.removeEventListener('resize', () => setOuterWidth(window.outerWidth));\r\n });\r\n\r\n return (\r\n
\r\n {outerWidth > 768 ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {searchResults.map(model => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n {tableHeading} {totalCount} results\r\n
{modelHeading}{manufacturerHeading}{descriptionHeading}
\r\n {model.Name}\r\n {model.Description}{model.Name}
\r\n ) : (\r\n \r\n {searchResults.map(model => {\r\n return (\r\n \r\n \r\n {model.Name}\r\n \r\n \r\n {model.Description}\r\n \r\n \r\n {model.Name}\r\n \r\n \r\n );\r\n })}\r\n \r\n )}\r\n
\r\n );\r\n};\r\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 { IBusinessPartnersViewProps } from './business-partners';\n\n/**\n * View layout of business partner module.\n * @param props - React props of the component.\n * @returns Functional component.\n */\nconst businessPartnersView: React.FC = props => {\n if (props.selectedBusinessPartnerUser) {\n return (\n \n {props.businessPartnersHeading}\n {props.catalogLoadingIndicator}\n {props.catalogLoadingErrorMessage}\n \n );\n }\n\n if (props.cookieConsentNotGivenErrorMessage) {\n return (\n \n {props.businessPartnersHeading}\n {props.cookieConsentNotGivenErrorMessage}\n \n );\n }\n\n return (\n \n {props.backToBusinessPartnersLink}\n {props.businessPartnersHeading}\n {props.businessPartnersTable}\n {props.businessPartnerUsersTable}\n \n );\n};\n\nexport default businessPartnersView;\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 * as React from 'react';\n\nexport interface IPasswordResetVerificationLabel {\n id: string;\n forId: string;\n className: string;\n text: string;\n}\n\nconst PasswordResetVerificationLabel: React.FC = ({ id, forId, className, text }) => (\n \n);\n\nexport default PasswordResetVerificationLabel;\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 { Button, IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISubscribeConfig, ISubscribeProps } from './subscribe.props.autogenerated';\n\n/**\n * Subscribe view props.\n */\nexport interface ISubscribeViewProps extends ISubscribeProps {\n subscribe: IModuleProps;\n subscribeContainer: INodeProps;\n heading: React.ReactNode;\n text: React.ReactNode;\n submitButton?: INodeProps;\n submitButtonLabelText?: string;\n subscribeForm?: INodeProps;\n emailInput?: INodeProps;\n handleText(): void;\n}\n\n/**\n * Subscribe component.\n * @extends {React.PureComponent>}\n */\nexport class Subscribe extends React.PureComponent> {\n private readonly _emailAddressInputRef: React.RefObject;\n\n public constructor(props: ISubscribeViewProps) {\n super(props);\n this._emailAddressInputRef = React.createRef();\n }\n\n public render(): JSX.Element | null {\n const { heading, paragraph } = this.props.config;\n\n const moduleClassName = 'ms-subscribe';\n\n const subscribeParagraph = paragraph && (\n \n );\n\n const subscribeHeading = heading && (\n \n );\n const viewProps = {\n ...this.props,\n handleText: this.handleTextChange,\n subscribe: {\n moduleProps: this.props,\n className: moduleClassName\n },\n subscribeContainer: {\n className: 'ms-subscribe__details'\n },\n heading: subscribeHeading,\n text: subscribeParagraph,\n subscribeForm: {\n className: 'ms-subscribe__details__form',\n tag: 'form',\n 'aria-label': this.props.resources.subscribeFormAriaLabel,\n name: 'subscribeForm',\n role: 'form',\n autoComplete: 'off'\n },\n emailInput: {\n className: 'ms-subscribe__details__form__email',\n tag: 'input',\n ref: this._emailAddressInputRef,\n type: 'email',\n 'aria-label': this.props.resources.subscribeFormEmailAriaLabel,\n placeholder: this.props.resources.subscribeEmailPlaceholderText\n },\n submitButton: {\n className: 'ms-subscribe__details__form__submit',\n tag: Button,\n 'aria-label': this.props.resources.subscribeFormSubmitAriaLabel,\n type: 'submit',\n title: this.props.resources.subscribeButtonLabel\n },\n submitButtonLabelText: this.props.resources.subscribeButtonLabel\n };\n\n return this.props.renderView(viewProps);\n }\n\n /**\n * Handle text change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n /**\n * Handle paragraph change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.paragraph = event.target.value;\n };\n}\n\nexport default Subscribe;\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 { IAccountGenericTileViewProps } from './account-generic-tile';\n\nconst AccountGenericTileView: React.FC = props => {\n const { AccountGenericTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default AccountGenericTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IModuleProps, INodeProps, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { ITabItemData } from './tab-item.data';\nimport { ITabItemProps } from './tab-item.props.autogenerated';\n\nexport interface ITabItemViewProps {\n TabContentContainer: IModuleProps;\n TabHeaderContainer: IModuleProps;\n tabSlots: INodeProps;\n TabItemContent: INodeProps;\n tabItemType?: TabItemType;\n tabHeader: React.ReactNode;\n}\n\nexport interface ITabItemExtentedProps extends ITabItemProps {\n tabItemType?: TabItemType;\n isSelected?: boolean;\n itemIndex?: number;\n tabId?: string;\n}\n\nexport enum TabItemType {\n TabHeader,\n TabContent\n}\n\n/**\n *\n * TabItem component.\n * @extends {React.Component}\n */\n@observer\nclass TabItem extends React.PureComponent {\n private readonly moduleContentClassName: string = 'ms-tab-item-content';\n\n private readonly moduleHeaderClassName: string = 'ms-tab-item-header';\n\n constructor(props: ITabItemProps) {\n super(props);\n this._renderTabHeader = this._renderTabHeader.bind(this);\n }\n\n public render(): JSX.Element {\n const { slots, renderView, config, data, isSelected, itemIndex } = this.props;\n const index = itemIndex || 0;\n const contentID = getContentID(index, this.props.tabId || '');\n const activeContentIDResult = data && data.activeTabState && data.activeTabState.result;\n const shown =\n activeContentIDResult &&\n activeContentIDResult.tabId === this.props.tabId &&\n activeContentIDResult.activeContentIndex !== undefined\n ? activeContentIDResult.activeContentIndex === index\n : isSelected || false;\n const viewProps = {\n ...this.props,\n TabContentContainer: {\n moduleProps: this.props,\n className: classnames(this.moduleContentClassName, config.className)\n },\n TabHeaderContainer: {\n moduleProps: this.props,\n className: classnames(this.moduleHeaderClassName, config.className)\n },\n TabItemContent: {\n className: 'ms-tab-item-content__content',\n tag: 'section' as NodeTag,\n 'aria-hidden': !shown,\n role: 'tabpanel',\n tabIndex: shown ? 0 : -1,\n id: contentID\n },\n tabHeader: this._renderTabHeader(),\n tabSlots: slots\n };\n return renderView(viewProps) as React.ReactElement;\n }\n\n private _renderTabHeader(): React.ReactNode {\n return <>{this.props.config.tabItemTitle};\n }\n}\n\nexport const getContentID = (index: number, id: string) => {\n return `tab-item-content-${id}-${index}`;\n};\n\nexport default TabItem;\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\nexport interface IPasswordResetVerificationLoadingIcon {\n className: string;\n}\n\nconst PasswordResetVerificationLoadingIcon: React.FC = ({ className }) => (\n
\n);\n\nexport default PasswordResetVerificationLoadingIcon;\n","import { createContext } from 'react';\r\n\r\n// each payment type will have an ID and a name, both will be strings\r\nexport interface IPaymentTenderType {\r\n tenderName: string;\r\n tenderTypeId: string;\r\n}\r\n\r\n// stores the payment modules element ID as a key and an array of Payment Tender Types for each tender type ID and name the module is associated with\r\ninterface IPaymentContextState {\r\n paymentModules: Record;\r\n selectedPayment: IPaymentTenderType;\r\n}\r\n\r\ninterface IPaymentContext extends IPaymentContextState {\r\n registerPaymentMethod: (elementId: string, tenderTypeList: IPaymentTenderType[]) => void;\r\n setSelectedPaymentState: (paymentTenderType: IPaymentTenderType) => void;\r\n}\r\n\r\nconst _errorMsg = 'Must be used within a provider';\r\n\r\nconst paymentModules: Record = {};\r\nconst selectedPayment: IPaymentTenderType = {} as IPaymentTenderType;\r\nconst registerPaymentMethod = (elementId: string, tenderTypeList: IPaymentTenderType[]) => {\r\n throw Error(_errorMsg);\r\n};\r\nconst setSelectedPaymentState = (paymentTenderType: IPaymentTenderType) => {\r\n throw Error(_errorMsg);\r\n};\r\n\r\nexport const PaymentContext = createContext({\r\n paymentModules,\r\n selectedPayment,\r\n registerPaymentMethod,\r\n setSelectedPaymentState\r\n});\r\n\r\nconst { Consumer: PaymentConsumer, Provider: PaymentProvider } = PaymentContext;\r\nexport { PaymentConsumer, PaymentProvider };\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 { ICheckoutPaymentInstrumentViewProps, ICheckoutPaymentOverlayModal } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-payment-instrument/./checkout-payment-instrument';\r\nimport { ICheckoutPaymentInstrumentProps as ICheckoutPaymentInstrumentExtensionProps } from '../definition-extensions/checkout-payment-instrument.ext.props.autogenerated';\r\n\r\nimport { PaymentContext, IPaymentTenderType } from '../../../modules/payment-container/context/payment-context';\r\n\r\nconst OverlayModal: React.FC = ({\r\n modal\r\n}) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst CheckoutPaymentInstrumentView: React.FC> = ({\r\n checkoutPaymentInstrument,\r\n className,\r\n id,\r\n waiting,\r\n alert,\r\n paymentInformation,\r\n addPaymentForm,\r\n overlayModal,\r\n config: { tenderType },\r\n ...restProps\r\n}) => {\r\n\r\n const paymentContext = React.useContext(PaymentContext);\r\n const paymentTenderTypes: IPaymentTenderType[] = [];\r\n\r\n React.useEffect(() => {\r\n tenderType?.map(tt => {\r\n paymentTenderTypes.push({ tenderTypeId: tt.tenderId, tenderName: tt.tenderName });\r\n });\r\n paymentContext.registerPaymentMethod(id, paymentTenderTypes);\r\n }, []);\r\n\r\n return (\r\n \r\n {waiting}\r\n {alert}\r\n {paymentInformation}\r\n {addPaymentForm}\r\n {overlayModal && }\r\n \r\n );\r\n}\r\n\r\nexport default CheckoutPaymentInstrumentView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { AsyncResult } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { IHeaderViewProps } from '@msdyn365-commerce-modules/header';\nimport { Collapse, Drawer, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nconst headerView: React.FC = props => {\n const { HeaderTag, HeaderContainer, HeaderTopBarContainer, Divider } = props;\n return (\n \n \n \n {props.navIcon}\n {props.logo}\n {_renderReactFragment(props.search)}\n {props.preferredStore}\n {_renderAccountBlock(props, false)}\n {props.wishListIconDesktop}\n \n {props.cartIcon}\n {_renderReactFragment(props.siteOptions)}\n \n {_renderCollapseMenu(props)}\n {_renderReactFragment(props.menuBar)}\n \n \n );\n};\n\nfunction _renderCollapseMenu(props: IHeaderViewProps): JSX.Element | null {\n const { Divider, MobileMenuLinksContainer, mobileMenuCollapsed } = props;\n return (\n \n \n {_renderReactFragment(props.search)}\n {_renderMobileAccountBlock(props, true)}\n {props.wishListIconMobile}\n {props.siteOptions}\n \n \n {_renderReactFragment(props.menuBar)}\n \n );\n}\n\nconst renderCustomerName = (accountInformation: AsyncResult): React.ReactChild => {\n const customer = accountInformation && accountInformation.result;\n return <>{customer ? customer.FirstName || customer.Name : ''};\n};\n\nfunction _renderMobileAccountBlock(props: IHeaderViewProps, renderForMobile: boolean): JSX.Element | null {\n const { AccountInfoDropdownParentContainer, signOutLink, signInLink, data, accountLinks } = props;\n\n if (AccountInfoDropdownParentContainer) {\n const accountClassName = classnames(\n 'ms-header__drawer',\n AccountInfoDropdownParentContainer.className,\n renderForMobile ? 'account-mobile' : 'account-desktop'\n );\n\n if (accountLinks) {\n return (\n \n
\n {accountLinks ? accountLinks.map((link: React.ReactNode) => link) : false}\n {signOutLink}\n
\n \n );\n } else if (signInLink) {\n return (\n \n {signInLink}\n \n );\n }\n }\n return null;\n}\n\nfunction _renderAccountBlock(props: IHeaderViewProps, renderForMobile: boolean): JSX.Element | null {\n const {\n AccountInfoDropdownParentContainer,\n AccountInfoDropdownPopoverConentContainer,\n accountInfoDropdownButton,\n signOutLink,\n signInLink,\n accountLinks\n } = props;\n\n if (AccountInfoDropdownParentContainer) {\n const accountClassName = classnames(\n AccountInfoDropdownParentContainer.className,\n renderForMobile ? 'account-mobile' : 'account-desktop'\n );\n if (AccountInfoDropdownPopoverConentContainer) {\n return (\n \n {accountInfoDropdownButton}\n \n {accountLinks ? accountLinks.map((link: React.ReactNode) => link) : false}\n {signOutLink}\n \n \n );\n } else if (signInLink) {\n return (\n \n {signInLink}\n \n );\n }\n }\n\n return null;\n}\n\nfunction _renderReactFragment(items: React.ReactNode[]): JSX.Element | null {\n return (\n <>\n {items && items.length > 0\n ? items.map((slot: React.ReactNode, index: number) => {\n return {slot};\n })\n : null}\n \n );\n}\n\nexport default headerView;\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 { EmailRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, Modal, ModalBody } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observable } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport PasswordResetVerificationButtonComponent from './components/password-reset-verification-button';\nimport PasswordResetVerificationErrorComponent from './components/password-reset-verification-error';\nimport PasswordResetVerificationInputComponent from './components/password-reset-verification-input';\nimport PasswordResetVerificationLabelComponent from './components/password-reset-verification-label';\nimport PasswordResetVerificationLoadingIconComponent from './components/password-reset-verification-loading-icon';\nimport PasswordResetVerificationLoadingMessageComponent from './components/password-reset-verification-loading-message';\nimport PasswordResetVerificationSuccessComponent from './components/password-reset-verification-success';\nimport { IPasswordResetVerificationConfig, IPasswordResetVerificationProps } from './password-reset-verification.props.autogenerated';\n\nexport interface IPasswordResetVerificationViewState {\n isShowLoading: boolean;\n}\n\nexport interface IPasswordResetVerificationItem {\n wrapper: INodeProps;\n key: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input: React.ReactNode;\n}\n\nexport interface IPasswordResetVerificationLocalAccount {\n localAccount: INodeProps;\n verificationControlWrapper: INodeProps;\n items: IPasswordResetVerificationItem[];\n successMessage: React.ReactNode[];\n errorMessage: React.ReactNode[];\n verificationButtonsWrapper: INodeProps;\n verificationButtons: React.ReactNode[];\n buttonsWrapper: INodeProps;\n buttons: React.ReactNode[];\n verificationSuccessModal: INodeProps;\n verificationSuccessModalMessage: INodeProps;\n}\n\nexport interface IPasswordResetVerificationLoading {\n modal: INodeProps;\n modalBody: INodeProps;\n icon: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface IPasswordResetVerificationViewProps {\n className: string;\n viewState: IPasswordResetVerificationViewState;\n loading: IPasswordResetVerificationLoading;\n passwordResetVerification: IModuleProps;\n defaultAADConainer: INodeProps;\n aadConainer: INodeProps;\n heading: React.ReactNode;\n passwordResetVerificationLocalAccount: IPasswordResetVerificationLocalAccount;\n}\n\n/**\n *\n * PasswordResetVerification component.\n * @extends {React.Component>}\n */\n@observer\nclass PasswordResetVerification extends React.Component> {\n private readonly moduleClassName: string = 'ms-password-reset-verification';\n\n private readonly telemetryContent: ITelemetryContent;\n\n @observable private emailRegex: string;\n\n @observable private isInitialized: boolean;\n\n @observable private templateVersion: string;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private initializationTimer: any;\n\n constructor(props: IPasswordResetVerificationProps) {\n super(props);\n this.emailRegex = EmailRegex.defaultRegex.source;\n this.isInitialized = false;\n this.templateVersion = '';\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public componentDidMount(): void {\n this._onInit();\n }\n\n // After successful AAD initialization, call initialize method provided by AAD to attach events.\n public componentDidUpdate(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (this.isInitialized && window && window['$element'] && window['$element']['initialize']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['$element']['initialize']();\n }\n }\n\n public shouldComponentUpdate(\n nextProps: IPasswordResetVerificationProps,\n nextState: IPasswordResetVerificationViewState\n ): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { config, resources } = this.props;\n\n const viewProps = {\n ...this.props,\n viewState: {\n isShowLoading: !this.isInitialized\n },\n passwordResetVerification: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n loading: {\n modal: {\n tag: Modal,\n isOpen: true\n },\n modalBody: {\n tag: ModalBody\n },\n icon: ,\n message: (\n \n )\n },\n defaultAADConainer: {\n id: 'api',\n style: { display: 'none' }\n },\n aadConainer: {\n id: this.isInitialized ? 'api' : null,\n className: `${this.moduleClassName}__container`\n },\n heading: config.heading && (\n \n ),\n passwordResetVerificationLocalAccount: this._renderLocalAccount()\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public _onInit = () => {\n this._prePopulateData();\n this._updateErrorMessage();\n\n // Check if AAD initialization is complete. AAD do not provide any event to subscribe so we need to check variable set by AAD to check initialization status.\n this.initializationTimer = setInterval(() => {\n this._isInitializationSuccessful();\n }, 100);\n setTimeout(() => {\n clearInterval(this.initializationTimer);\n }, 10_000);\n };\n\n // After successful AAD initialization, remove waiting and preload any data, if needed.\n private readonly _isInitializationSuccessful = () => {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window && window['$diags'] && window['$diags']['initializationSuccessful']) {\n clearInterval(this.initializationTimer);\n this.isInitialized = true;\n }\n };\n\n private _prePopulateData(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window['SA_FIELDS'] && window['SA_FIELDS']['AttributeFields']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['SA_FIELDS']['AttributeFields'].map((obj: { ID: string; PAT: string }) => {\n if (obj.ID.toLowerCase() === 'email') {\n this.emailRegex = obj.PAT;\n } else if (obj.ID.toLowerCase() === 'emailverificationcontrol') {\n this.templateVersion = 'v2';\n }\n });\n if (!this.templateVersion) {\n this.templateVersion = 'v1';\n }\n }\n }\n\n private _updateErrorMessage(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n if (window && window['CONTENT']) {\n const message = {\n verifying_blurb: this.props.resources.loadingMessage\n };\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n Object.assign(window['CONTENT'], message);\n }\n }\n\n private _renderLocalAccount(): IPasswordResetVerificationLocalAccount {\n const { resources } = this.props;\n return {\n localAccount: {\n id: 'attributeList',\n className: `${this.moduleClassName}__account-items attr`\n },\n verificationControlWrapper: {\n id: 'emailVerificationControl',\n className: `${this.moduleClassName}__verification-control-content verificationControlContent`\n },\n items: [\n this._renderInput('email', 'email', resources.emailAddressLabelText, undefined, this.emailRegex),\n this._renderInput(\n this.getValue('email_ver_input', 'emailVerificationCode'),\n 'text',\n resources.verificationCodeLabelText,\n undefined,\n undefined,\n 'VerificationCode'\n )\n ],\n successMessage: [\n ,\n\n \n ],\n errorMessage: [\n ,\n ,\n ,\n ,\n ,\n ,\n ,\n \n ],\n verificationButtonsWrapper: {\n className: `${this.moduleClassName}__email-verification-buttons ${this.getValue('verify', '')}`,\n 'data-claim_id': 'email'\n },\n verificationButtons: [\n ,\n ,\n ,\n \n ],\n buttonsWrapper: {\n className: `${this.moduleClassName}__buttons`\n },\n buttons: [\n ,\n \n ],\n verificationSuccessModal: {\n className: `${this.moduleClassName}__verifying-modal verifying-modal`\n },\n verificationSuccessModalMessage: {\n id: 'verifying_blurb',\n className: `${this.moduleClassName}__verifying-modal-message`\n }\n };\n }\n\n private _renderInput(\n id: string,\n type: string,\n labelText: string,\n maxLength?: string,\n pattern?: string,\n cssClassName?: string\n ): IPasswordResetVerificationItem {\n const className = `${this.moduleClassName}__account-item`;\n return {\n wrapper: {\n className: classnames(className, `${className}-${id}`, 'entry-item', 'attrEntry', cssClassName)\n },\n key: id,\n label: (\n \n ),\n errorMessage: (\n \n ),\n input: (\n \n )\n };\n }\n\n private readonly getValue = (v1Value: string, v2Value: string): string => {\n if (this.templateVersion) {\n return this.templateVersion === 'v1' ? v1Value : v2Value;\n }\n return '';\n };\n}\n\nexport default PasswordResetVerification;\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 * as React from 'react';\r\nimport { IAriSearchResultsViewProps } from './ari-search-results';\r\n\r\nexport default (props: IAriSearchResultsViewProps) => {\r\n const { modelTable, pagination } = props;\r\n return (\r\n
\r\n {modelTable}\r\n {pagination}\r\n
\r\n );\r\n};\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 * as React from 'react';\r\nimport { ICartLineCommentViewProps } from './cart-line-comment';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\n\r\nexport default (props: ICartLineCommentViewProps) => {\r\n const { staticDisplay, cartLineCommentModuleProps, modal } = props;\r\n return (\r\n \r\n {modal}\r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\r\n// import { ICartResources } from '../../definition-extensions/cart.ext.props.autogenerated';\r\n// import { ICheckoutResources } from '../../definition-extensions/checkout.ext.props.autogenerated';\r\n\r\n\r\ninterface ILinePaginationProps {\r\n nextPage: (e: React.MouseEvent) => void,\r\n prevPage: (e: React.MouseEvent) => void,\r\n changePage: (page: number) => void,\r\n currentPage: number,\r\n numPages: number,\r\n prev: string,\r\n next: string\r\n}\r\n\r\n/**\r\n * Renders pagination navigation on the page, which displays 4 buttons that allow\r\n * user to navigate to the first, last, next or previous pages. Also displays \r\n * the current page out of the total number of pages. ( ie. 5/7 )\r\n *\r\n * @param {(e: React.MouseEvent) => void} nextPage\r\n * @param {(e: React.MouseEvent) => void} prevPage\r\n * @param {(page: number) => void} changePage\r\n * @param {number} currentPage\r\n * @param {number} numPages\r\n * @param {ICartResources} resources\r\n * @return {*} {React.ReactNode}\r\n */\r\nexport const LinePagination : React.FC = ({\r\n nextPage,\r\n prevPage,\r\n changePage,\r\n currentPage,\r\n numPages,\r\n prev,\r\n next}) => {\r\n const firstPage: number = 1;\r\n \r\n return (\r\n \r\n
\r\n {numPages > 0 &&\r\n <>\r\n {/* {currentPage !== 0 && */}\r\n <>\r\n \r\n \r\n \r\n {/* } */}\r\n
\r\n \r\n {currentPage + 1} / {numPages}\r\n \r\n
\r\n {/* {currentPage !== numPages && */}\r\n <>\r\n \r\n \r\n \r\n {/* } */}\r\n \r\n }\r\n
\r\n )};\r\n \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 * as React from 'react';\n\nimport { ICountryPickerViewProps } from './country-picker';\n\n/**\n * Functional component which renders country picker module.\n * @param props - Configuration for the country picker component.\n * @returns React.FC - Functional component of the country picker module.\n */\nexport const countryPickerView: React.FC = (props: ICountryPickerViewProps) => {\n const {\n isModalOpen,\n modalContainer,\n modalHeaderContainer,\n modalBodyContainer,\n heading,\n modalFooterContainer,\n subheading,\n link,\n countryList,\n stayOnCurrentSiteButton\n } = props;\n return isModalOpen && countryList ? (\n \n \n {heading}\n {subheading}\n \n \n {countryList.map(country => (\n <>{country}\n ))}\n \n \n {stayOnCurrentSiteButton}\n {link}\n \n \n ) : null;\n};\n\nexport default countryPickerView;\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 { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ITabViewProps } from './tab';\n\nconst tabView: React.FC = props => {\n const { heading, TabContainer, tabHeaders, tabContents } = props;\n if (!props.heading && !props.tabHeaders && !props.tabContents) {\n props.context.telemetry.error('Tab content is empty, module wont render');\n return null;\n }\n return (\n \n {heading}\n {tabHeaders}\n {tabContents}\n \n );\n};\n\nexport default tabView;\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 { ICheckoutCustomerAccountPaymentViewProps } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/./checkout-customer-account-payment';\r\nimport { IAccountPaymentEditViewForm } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/./components/get-account-payment-form-edit-mode';\r\nimport { IAccountPaymentSummaryViewForm } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/./components/get-account-payment-form-summary-mode';\r\nimport { ICheckoutCustomerAccountPaymentProps as ICheckoutCustomerAccountPaymentExtensionProps } from '../definition-extensions/checkout-customer-account-payment.ext.props.autogenerated';\r\n\r\nimport { PaymentContext, IPaymentTenderType } from '../../../modules/payment-container/context/payment-context';\r\n// import { CustomerBalances } from '@msdyn365-commerce/retail-proxy';\r\nimport MsDyn365 from \"@msdyn365-commerce/core\";\r\n\r\nexport const SummaryForm: React.FC = ({ formProps, label, paymentAmount, addPaymentButton, appliedLine, bottomBorder }) => (\r\n \r\n <>\r\n {label}\r\n {appliedLine}\r\n {bottomBorder}\r\n \r\n \r\n);\r\n\r\nexport const EditForm: React.FC = ({ formProps, inputLabel, inputAmount, customerName, customerAccountNumber, addPaymentButton, customerSince, accountCredit, alert, accountDetails, appliedLine, bottomBorder }, props) => {\r\n return (\r\n \r\n <>\r\n\r\n {customerName}\r\n {customerAccountNumber}\r\n {customerSince}\r\n {/* {accountCredit} */}\r\n {/* {accountDetails} */}\r\n {/* {inputLabel} */}\r\n {getInputLabel()}\r\n {/* {alert} */}\r\n {appliedLine}\r\n {bottomBorder}\r\n \r\n \r\n)};\r\n\r\nlet customInputLabel = '';\r\n\r\nconst getInputLabel = () => {\r\n return (\r\n \r\n {customInputLabel}\r\n \r\n );\r\n}\r\n\r\n// const getAvailableCredit = (creditBalances: CustomerBalances | undefined) => {\r\n// let availableCredit = 0;\r\n\r\n// if (!creditBalances) {\r\n// return 0;\r\n// }\r\n\r\n// if (creditBalances.InvoiceAccountCreditLimit === 0) {\r\n// availableCredit = creditBalances.CreditLimit - creditBalances.Balance - creditBalances.PendingBalance;\r\n// } else {\r\n// availableCredit = creditBalances.InvoiceAccountCreditLimit - creditBalances.InvoiceAccountBalance - creditBalances.InvoiceAccountPendingBalance;\r\n// }\r\n\r\n// return availableCredit;\r\n// };\r\n\r\nconst addPayment = async (props: ICheckoutCustomerAccountPaymentViewProps): Promise => {\r\n const checkoutState = props.data.checkout.result;\r\n\r\n if (!checkoutState) {\r\n props.context.telemetry.error('checkout state not found');\r\n return;\r\n }\r\n\r\n // const availableCredit = getAvailableCredit(props.data.creditBalances?.result);\r\n const cartTotal = (await props.data.checkout).checkoutCart.cart.TotalAmount;\r\n\r\n // console.log(availableCredit);\r\n // console.log(cartTotal);\r\n // if (cartTotal && availableCredit >= cartTotal) {\r\n if (cartTotal) {\r\n await checkoutState.updateCustomerAccountAmount({ newAmount: cartTotal });\r\n props.context.telemetry.information('customer account payment amount updated');\r\n }\r\n};\r\n\r\nconst CheckoutCustomerAccountView: React.FC> = props => {\r\n const { checkoutCustomerAccount, summaryView, editView, moduleState, id, config: { tenderType } } = props;\r\n \r\n const paymentContext = React.useContext(PaymentContext);\r\n const paymentTenderTypes: IPaymentTenderType[] = [];\r\n // console.log(props);\r\n\r\n React.useEffect(() => {\r\n tenderType?.map(tt => {\r\n paymentTenderTypes.push({ tenderTypeId: tt.tenderId, tenderName: tt.tenderName });\r\n });\r\n paymentContext.registerPaymentMethod(id, paymentTenderTypes);\r\n sessionStorage.removeItem('ON_ACCOUNT_APPLIED');\r\n customInputLabel = props.config.processedOnAccountText || '';\r\n }, []);\r\n\r\n if (MsDyn365.isBrowser) {\r\n document.querySelector('.payment-selector__button-container--on-account')?.addEventListener('click', () => {\r\n if (sessionStorage.getItem('ON_ACCOUNT_APPLIED') === '1') {\r\n return;\r\n }\r\n sessionStorage.setItem('ON_ACCOUNT_APPLIED', '1');\r\n addPayment(props);\r\n });\r\n }\r\n\r\n return (\r\n \r\n {moduleState.isReady && summaryView && }\r\n {!moduleState.isReady && editView && }\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutCustomerAccountView;\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 } from '@msdyn365-commerce-modules/utilities';\r\nimport { SalesInvoice, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport { getSimpleProductsAction, ProductInput } from '@msdyn365-commerce-modules/retail-actions';\r\nimport * as React from 'react';\r\n\r\nimport { IInvoiceDetailsViewProps } from '@msdyn365-commerce-modules/invoice-details/src/modules/invoice-details/./invoice-details';\r\nimport { InvoiceDetailsProductsComponent, InvoiceDetailsModel } from './components/invoice-details-products.component';\r\n\r\n\r\n\r\nexport const InvoiceDetailsView: React.FC = props => {\r\n const {\r\n config,\r\n header,\r\n /*products,*/\r\n paymentDetails,\r\n payInvoiceError,\r\n context,\r\n resources,\r\n typeName\r\n } = props;\r\n const baseClassName: string = 'msc-invoice-details';\r\n const [invoiceDetails, setInvoiceDetails] = React.useState();\r\n const [products, setProducts] = React.useState([]);\r\n\r\n const getInvoiceDetails = async (): Promise => {\r\n const invoice = await props.data.invoice;\r\n const invDetails = await props.data.invoiceDetails;\r\n const invoiceDetailsModel = new InvoiceDetailsModel(invoice, invDetails, products);\r\n setInvoiceDetails(invoiceDetailsModel);\r\n return invDetails;\r\n };\r\n\r\n const getProducts = async (channelId?: number): Promise => {\r\n const invDetails = await getInvoiceDetails();\r\n const invoiceLines = invDetails.SalesInvoiceLine || [];\r\n const productInputs = invoiceLines.filter(product => product.RecordId).map(product => new ProductInput(\r\n product.RecordId!, context.request.apiSettings, channelId, undefined, context.actionContext.requestContext));\r\n const simpleProductsRes = await getSimpleProductsAction(productInputs, context.actionContext);\r\n setProducts(simpleProductsRes);\r\n return getSimpleProductsAction(productInputs, context.actionContext);\r\n }\r\n\r\n const renderProducts = (): JSX.Element | null => {\r\n const { imageSettings } = config;\r\n\r\n if (!invoiceDetails) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n React.useEffect(() => {\r\n void getProducts();\r\n }, []);\r\n \r\n return (\r\n \r\n {header}\r\n {/* {products} */}\r\n {renderProducts()}\r\n {paymentDetails}\r\n {payInvoiceError}\r\n \r\n );\r\n};\r\n\r\nexport default InvoiceDetailsView;\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 {\r\n IAccountPreference, IAccountPreferences, IAccountProfileItem, IAccountProfileViewProps\r\n} from '@msdyn365-commerce-modules/account-management/src/modules/account-profile/./account-profile';\r\n\r\nconst AccountPreferencesSection: React.FC = ({\r\n accountPreferences,\r\n heading,\r\n personalization,\r\n extraPreferences\r\n}) => {\r\n return (\r\n \r\n {heading}\r\n \r\n {\r\n extraPreferences && extraPreferences.map((preferenceSecton, index) => {\r\n return ;\r\n })\r\n }\r\n \r\n );\r\n};\r\n\r\nconst AccountPreferenceSection: React.FC = ({\r\n accountPreference,\r\n heading,\r\n description,\r\n buttonWrapper,\r\n buttonYesText,\r\n button,\r\n buttonNoText\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {description}\r\n \r\n {buttonNoText}\r\n {button}\r\n {buttonYesText}\r\n \r\n \r\n );\r\n};\r\n\r\nconst AccountProfileSection: React.FC = ({\r\n AccountProfileItem,\r\n heading,\r\n links,\r\n description\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {description}\r\n {/*{links}*/}\r\n \r\n );\r\n};\r\n\r\nconst AccountProfileView: React.FC = props => {\r\n const { AccountProfile, accountProfileWrapper, heading, emailSection, nameSection, preferenceSection, customerAttributesWrapper, customerAttributesSection } = props;\r\n\r\n return (\r\n \r\n {accountProfileWrapper && (\r\n {heading}\r\n \r\n \r\n \r\n \r\n )}\r\n {customerAttributesWrapper && (\r\n {customerAttributesSection}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default AccountProfileView;\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 { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountWelcomeTileData } from './account-welcome-tile.data';\nimport { IAccountWelcomeTileProps } from './account-welcome-tile.props.autogenerated';\n\nexport interface IAccountWelcomeTileViewProps extends IAccountWelcomeTileProps {\n AccountWelcomeTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AccountWelcome component.\n * @extends {React.PureComponent>}\n */\nclass AccountWelcomeTile extends React.PureComponent> {\n public render(): JSX.Element {\n const { config, data } = this.props;\n const { className } = config;\n\n const accountInfo = data.accountInformation.result;\n const heading = {\n ...config.heading,\n ...{\n text: `${config.heading.text ? config.heading.text : ''} ${\n accountInfo && accountInfo.FirstName ? accountInfo.FirstName : ''\n }`\n }\n };\n\n const viewProps = {\n ...this.props,\n className,\n AccountWelcomeTile: {\n moduleProps: this.props,\n className: classnames('ms-account-welcome-tile', config.className)\n },\n heading: heading && heading.text && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n}\n\nexport default AccountWelcomeTile;\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 { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-generic-tile.props.autogenerated';\n\nexport interface IAccountGenericTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountGenericTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-generic-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountGenericTileLinks;\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 { ITileListItemViewProps } from './tile-list-item';\n\n/**\n *\n * ITileListItemViewProps component.\n * @param props - Component props.\n * @returns TileListView.\n */\nconst renderTileListItemContent = (props: ITileListItemViewProps): JSX.Element => {\n const {\n heading,\n paragraph,\n backgroundImage,\n links,\n thumbnailImage,\n tileListContainer,\n tileListImageContainer,\n tileListThumbnailImageContainer,\n tileListHeadingContainer\n } = props;\n\n return (\n \n {backgroundImage}\n \n {heading}\n {paragraph}\n {links}\n \n {thumbnailImage}\n \n );\n};\n\n/**\n *\n * TileListItemViewProps component.\n * @param props - Component props.\n * @returns TileListView.\n */\nexport const TileListItemViewComponent: React.FC = props => {\n const { tileListItem } = props;\n return {renderTileListItemContent(props)};\n};\n\nexport default TileListItemViewComponent;\n","import { IActionContext } from '@msdyn365-commerce/core-internal';\r\nimport { getUrlSync } from '@msdyn365-commerce/core';\r\n\r\nexport default function generateAriModelDetailUrl(modelId: string, brandCode: string, actionContext: IActionContext): string {\r\n const _modelDetailModelIdQueryParamKey = 'modelId';\r\n const _modelDetailBrandCodeQueryParamKey = 'brandCode';\r\n const _modelDetailSlug = 'model';\r\n let url = getUrlSync(_modelDetailSlug, actionContext);\r\n if (url) {\r\n url += `${\r\n url.indexOf('?') > -1 ? '&' : '?'\r\n }${_modelDetailModelIdQueryParamKey}=${modelId}&${_modelDetailBrandCodeQueryParamKey}=${brandCode}`;\r\n }\r\n\r\n return url || '';\r\n}\r\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 { IB2bRequestsTileViewProps } from './b2b-requests-tile';\n\nconst B2bRequestsTileView: React.FC = props => {\n const { b2bRequestsTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default B2bRequestsTileView;\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 * as React from 'react';\r\nimport { IOrderLevelCommentViewProps } from './order-level-comment';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\n\r\nexport default (props: IOrderLevelCommentViewProps) => {\r\n const { staticDisplay, orderLevelCommentModuleProps, modal } = props;\r\n return (\r\n \r\n {modal}\r\n \r\n \r\n );\r\n};\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport React from 'react';\nimport { KeyCodes } from '@msdyn365-commerce-modules/utilities';\n\nexport interface ISearchBarProps {\n className: string;\n searchPlaceholderLabel: string;\n onSearch(searchText: string): void;\n}\n\nexport interface ISearchBarState {\n searchText: string;\n}\n\nexport class SearchBar extends React.Component {\n constructor(props: ISearchBarProps) {\n super(props);\n this.state = {\n searchText: ''\n };\n }\n\n public render(): JSX.Element {\n const { className, searchPlaceholderLabel } = this.props;\n return (\n
\n \n
\n );\n }\n\n private readonly onSearchTextChange = (ev: React.ChangeEvent): void => {\n this.setState({\n searchText: ev.target.value\n });\n };\n\n private readonly onSearch = (): void => {\n this.props.onSearch(this.state.searchText);\n };\n\n private readonly handleKeyUp = (event: React.KeyboardEvent): void => {\n if (event.keyCode === KeyCodes.Enter) {\n this.onSearch();\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 { IComponentProps } from '@msdyn365-commerce/core';\nimport { CommerceException } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Alert, Button } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport { moduleClassName } from '../business-partners';\nimport { IBusinessPartnersResources } from '../business-partners.props.autogenerated';\nimport { SearchBar } from './search-bar';\n\n/**\n * Props of DataGrid component.\n */\nexport interface IDataGridProps extends IComponentProps {\n className: string;\n pageSize?: number;\n searchPlaceholderLabel: string;\n defaultSorting?: ISortingInfo;\n resources: IBusinessPartnersResources;\n columns: IDataGridColumn[];\n loadData(): Promise;\n}\n\n/**\n * State of DataGrid component.\n */\nexport interface IDataGridState {\n data: Tdata[];\n paging: IPagingInfo;\n filter: IFilterInfo;\n sorting?: ISortingInfo;\n isLoading: boolean;\n errorMessage: string;\n}\n\nexport interface IPagingInfo {\n index: number;\n}\n\nexport interface IFilterInfo {\n searchText: string;\n}\n\nexport interface ISortingInfo {\n fieldName: string;\n ascending: boolean;\n}\n\n/**\n * Column definition of DataGrid component.\n */\nexport interface IDataGridColumn {\n /**\n * A unique key for identifying the column.\n */\n reactKey: string;\n\n /**\n * Name to render on the column header.\n */\n name: string;\n\n /**\n * Class name added to table cell.\n */\n className?: string;\n\n /**\n * The field to pull the text value from for the column.Can be unset if a custom `onRender` method is provided.\n */\n fieldName?: string;\n\n /**\n * Whether the user can search this column by text.\n */\n isSearchable?: boolean;\n\n /**\n * Custom renderer for cell content, instead of the default text rendering.\n */\n onRender?(item: Tdata): JSX.Element;\n\n /**\n * Event when the table cell is clicked.\n */\n onClick?(item: Tdata): void;\n}\n\nconst defaultPageSize = 10;\n\n/**\n * DataGrid component encapsulates common table functionalities.\n */\nexport class DataGrid extends React.Component, IDataGridState> {\n constructor(props: IDataGridProps) {\n super(props);\n this.state = {\n data: [],\n sorting: props.defaultSorting,\n paging: { index: 0 },\n filter: { searchText: '' },\n isLoading: true,\n errorMessage: ''\n };\n }\n\n public componentDidMount(): void {\n this.loadDataInternal();\n }\n\n public shouldComponentUpdate(nextProps: Readonly>, nextState: Readonly>): boolean {\n return (\n this.props.id !== nextProps.id ||\n this.props.columns !== nextProps.columns ||\n this.state.data !== nextState.data ||\n this.state.paging !== nextState.paging ||\n this.state.filter !== nextState.filter ||\n this.state.isLoading !== nextState.isLoading ||\n this.state.errorMessage !== nextState.errorMessage\n );\n }\n\n public render(): JSX.Element | null {\n const data = this.getDataToDisplay();\n const hasMore = this.hasMore();\n if (this.state.errorMessage) {\n return {this.state.errorMessage};\n }\n if (this.state.isLoading) {\n return {this.props.resources.loadingLabel};\n }\n if (!ArrayExtensions.hasElements(data)) {\n return (\n <>\n \n

{this.props.resources.noDataMessage}

\n \n );\n }\n return (\n <>\n \n \n {this.renderGridHeader()}\n {data.map((item, index) => this.renderGridRow(item, index))}\n
\n {hasMore && (\n
\n \n
\n )}\n \n );\n }\n\n /**\n * Renders the TH header in the table.\n * @returns - Header react node.\n */\n private readonly renderGridHeader = () => {\n const className = `${this.props.className}__header`;\n const rowClassName = `${className}__row`;\n return (\n \n \n {this.props.columns.map(column => (\n \n {column.name}\n \n ))}\n \n \n );\n };\n\n /**\n * Renders table row.\n * @param item - Data item for this row.\n * @param index - Index of the row.\n * @returns - Row react node.\n */\n private readonly renderGridRow = (item: Tdata, index: number) => {\n const rowClassName = `${this.props.className}__row`;\n return (\n \n {this.props.columns.map(column => {\n return (\n column.onClick?.(item)}>\n {column.fieldName ? (\n {((item as unknown) as { [key: string]: string })[column.fieldName]}\n ) : (\n column.onRender?.(item)\n )}\n \n );\n })}\n \n );\n };\n\n /**\n * Load data for the table.\n * @returns Promise.\n */\n private readonly loadDataInternal = async () => {\n if (!this.props.context.actionContext.requestContext.user.isAuthenticated) {\n this.setState({\n isLoading: false\n });\n return;\n }\n try {\n const result = await this.props.loadData();\n this.setState({\n isLoading: false,\n data: result\n });\n } catch (e) {\n this.setState({\n isLoading: false,\n errorMessage: (e as { data: CommerceException })?.data?.LocalizedMessage || this.props.resources.genericErrorMessage\n });\n }\n };\n\n private readonly onSearch = (searchText: string): void => {\n this.setState({\n paging: { index: 0 },\n filter: { searchText }\n });\n };\n\n private readonly loadMore = (): void => {\n this.setState({\n paging: { index: this.state.paging.index + 1 }\n });\n };\n\n private readonly sortData = (): Tdata[] => {\n const sorting = this.state.sorting;\n if (!sorting) {\n return this.state.data;\n }\n const { fieldName, ascending } = sorting;\n return this.state.data.sort((item1: Tdata, item2: Tdata) => {\n let value1 = ((item1 as unknown) as { [key: string]: string })[fieldName];\n let value2 = ((item2 as unknown) as { [key: string]: string })[fieldName];\n if (typeof value1 === 'string' && typeof value2 === 'string') {\n value1 = value1.toLowerCase();\n value2 = value2.toLowerCase();\n }\n const compareResult = value1 > value2 ? 1 : value1 < value2 ? -1 : 0;\n return ascending ? compareResult : compareResult * -1;\n });\n };\n\n private readonly filterData = (): Tdata[] => {\n const column = this.props.columns.find(c => c.isSearchable);\n const searchText = this.state.filter.searchText;\n return this.sortData().filter(item => {\n if (!column?.fieldName || !searchText) {\n return true;\n }\n const columnValue = ((item as unknown) as { [key: string]: string })[column.fieldName];\n return columnValue && columnValue.toLowerCase().indexOf(searchText.trim().toLowerCase()) >= 0;\n });\n };\n\n private readonly getDataToDisplay = (): Tdata[] => {\n const itemsCount = (this.props.pageSize || defaultPageSize) * (this.state.paging.index + 1);\n const filteredItems = this.filterData();\n return filteredItems.slice(0, itemsCount);\n };\n\n private readonly hasMore = (): boolean => {\n const itemsCount = (this.props.pageSize || defaultPageSize) * (this.state.paging.index + 1);\n const filteredItems = this.filterData();\n return filteredItems.length > itemsCount;\n };\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponentProps } from '@msdyn365-commerce/core';\nimport { ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport React, { ReactNode } from 'react';\nimport { isMobile, Node, VariantType } from '@msdyn365-commerce-modules/utilities';\n\nimport { BusinessPartner, BusinessPartnerUser, BusinessPartnersDataActions } from '@msdyn365-commerce/retail-proxy';\nimport { IBusinessPartnersResources } from '../business-partners.props.autogenerated';\nimport { DataGrid, IDataGridColumn } from './data-grid';\n\n/**\n * View model of business partner user, used to display.\n */\nexport interface IBusinessPartnerUserViewModel extends BusinessPartnerUser {\n name: string;\n spendingLimit: ReactNode;\n}\n\n/**\n * Props of BusinessPartnerUsersTable.\n */\nexport interface IBusinessPartnerUsersTableProps extends IComponentProps {\n className: string;\n pageSize?: number;\n businessPartner: BusinessPartner;\n resources: IBusinessPartnersResources;\n onSelect(businessPartnerUser: BusinessPartnerUser): void;\n}\n\n/**\n * BusinessPartnerUsersTable component.\n */\nexport class BusinessPartnerUsersTable extends React.Component {\n public shouldComponentUpdate(nextProps: Readonly): boolean {\n return this.props.id !== nextProps.id;\n }\n\n public render(): JSX.Element {\n return (\n \n );\n }\n\n /**\n * Get column definition of the table.\n * @returns - Columns.\n */\n private readonly getColumns = (): IDataGridColumn[] => {\n const isMobileDevice = isMobile({ variant: VariantType.Viewport, context: this.props.context.request }) === 'xs';\n\n return [\n {\n reactKey: 'name',\n name: this.props.resources.businessUserTableNameHeadingText,\n isSearchable: true,\n onClick: this.props.onSelect,\n onRender: (data: IBusinessPartnerUserViewModel) => {data.name}\n },\n {\n reactKey: 'email',\n name: this.props.resources.businessUserTableEmailHeadingText,\n fieldName: 'Email',\n onClick: this.props.onSelect\n },\n {\n reactKey: 'spendingLimit',\n name: this.props.resources.businessUserTableSpendingLimitHeadingText,\n className: `${this.props.className}__row__column-with-number`,\n fieldName: 'spendingLimit',\n onClick: !isMobileDevice ? this.props.onSelect : undefined\n }\n ];\n };\n\n /**\n * Call retail proxy to get business partner users.\n * @returns - Business partner users view model.\n */\n private readonly getBusinessPartnerUsers = async (): Promise => {\n const businessPartners = await BusinessPartnersDataActions.getUsersAsync(\n {\n callerContext: this.props.context.actionContext,\n bypassCache: 'get',\n queryResultSettings: {}\n },\n this.props.businessPartner.BusinessPartnerId\n );\n return businessPartners\n .filter(user => user.StatusValue === 1)\n .map(user => {\n return {\n ...user,\n name: `${user.FirstName} ${user.LastName}`,\n spendingLimit: (\n \n {!ObjectExtensions.isNullOrUndefined(user.SpendingLimit)\n ? this.props.context.cultureFormatter.formatCurrency(user.SpendingLimit.toString())\n : ''}\n {!ObjectExtensions.isNullOrUndefined(user.SpendingLimit) && user.SpendingLimit === 0 ? (\n \n