{"version":3,"sources":["webpack:///src/modules/invoices-list/index.ts?0857","webpack:///./src/modules/contracts-account-page/contracts-account-page.view.tsx?650e","webpack:///src/modules/country-picker/country-picker.tsx?051f","webpack:///./src/themes/gardner-theme/views/invoices-list.view.tsx?057a","webpack:///src/modules/tab-item/tab-item.view.tsx?76f0","webpack:///src/modules/invoices-list/components/request-invoice-button.tsx?b5d9","webpack:///src/modules/breadcrumb/breadcrumb.view.tsx?58b4","webpack:///./src/themes/gardner-theme-b2c/views/checkout-delivery-options.view.tsx?7066","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/invoice-details/invoice-details.view.tsx?5ebe","webpack:///src/modules/footer-category/footer-category.tsx?b7b8","webpack:///src/modules/adventureworks/views/components/carticon.component.tsx?3d75","webpack:///src/modules/invoices-list/components/pay-invoice-component.tsx?41f4","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/index.ts?c6ae","webpack:///./src/themes/gardner-theme/views/checkout.view.tsx?8fc7","webpack:///src/modules/invoices-list/components/invoices-table/invoices-table-component.tsx?9105","webpack:///src/modules/subscribe/subscribe.view.tsx?c40a","webpack:///./src/themes/gardner-theme-b2c/views/b2b-requests-status.view.tsx?1104","webpack:///src/modules/adventureworks/views/write-review.view.tsx?7a62","webpack:///src/modules/invoices-list/invoices-list.view.tsx?0243","webpack:///src/modules/tab/tab.tsx?d713","webpack:///src/modules/invoices-list/components/make-payment-component.tsx?c79a","webpack:///src/modules/invoices-list/components/invoice-error-component.tsx?2e12","webpack:///src/modules/business-partners/business-partners.view.tsx?677a","webpack:///src/modules/footer-category/footer-category.view.tsx?26a5","webpack:///./src/themes/gardner-theme-b2c/views/invoices-list.view.tsx?c86d","webpack:///src/modules/subscribe/subscribe.tsx?0278","webpack:///src/modules/invoices-list/helpers/pay-invoices.ts?f98a","webpack:///src/modules/tab-item/tab-item.tsx?d2c1","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/invoice-details/components/invoice-details-header.tsx?d1cb","webpack:///src/modules/invoice-details/components/invoice-details-payment-summary.tsx?a7ab","webpack:///src/modules/invoice-details/components/invoice-details-products.tsx?d808","webpack:///src/modules/invoice-details/helpers/invoice-data.ts?1fa7","webpack:///src/modules/invoice-details/invoice-details.tsx?b5c9","webpack:///src/modules/invoices-list/components/invoices-table/components/invoices-table-header-component.tsx?6874","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/tab/tab.view.tsx?701e","webpack:///src/modules/invoices-list/components/invoices-table/components/invoices-table-row-component.tsx?ba14","webpack:///./src/themes/gardner-theme/views/checkout-customer-account-payment.view.tsx?a50a","webpack:///src/modules/invoices-list/helpers/invoice-data.ts?6271","webpack:///src/modules/invoices-list/helpers/invoice-status.ts?442a","webpack:///src/modules/tile-list-item/tile-list-item.view.tsx?0144","webpack:///src/modules/invoices-list/helpers/index.ts?7d24","webpack:///./src/modules/order-level-comment/order-level-comment.view.tsx?50e4","webpack:///src/modules/invoices-list/components/invoices-filter-component.tsx?759c","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/themes/gardner-theme/views/checkout-shipping-address.view.tsx?2ec0","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/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/invoices-list/components/request-invoice-modal.tsx?f430","webpack:///src/modules/invoices-list/invoices-list.tsx?ba10","webpack:///src/modules/adventureworks/views/order-template-list.view.tsx?86a3"],"names":["props","contractsHeading","contractsWrapper","contractsTable","contractsLinks","React","Module","Object","assign","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","className","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","InvoiceListView","header","filter","content","invoiceRequestModal","pagination","isBrowser","linksElements","document","querySelectorAll","console","log","forEach","l","setAttribute","_renderTabItemContent","items","length","index","TabItemView","tabItemType","tabSlots","TabContentContainer","TabHeaderContainer","TabItemContent","tabHeader","TabItemType","TabContent","Node","tabItemContent","TabHeader","RequestInvoiceButton","_ref","onClicked","requestInvoiceButtonLabel","innerReference","innerRef","BreadCrumbView","root","links","backButton","BreadcrumbContainer","BreadcrumbList","BreadcrumbListItem","separator","classnames","error","DeliveryOptionList","DeliveryOptionsList","list","deliveryOption","DeliveryOption","code","radioButton","description","DeliveryOptionSelected","_ref2","price","CheckoutDeliveryOptionsView","CheckoutDeliveryOptions","viewState","deliveryOptions","deliveryOptionSelected","alert","waiting","saveButton","editButton","cancelButton","isLoading","isError","isShowList","isShowSelected","isShowSaveButton","isShowEditButton","isShowCancelButton","_renderTextBlock","textBlocks","_renderSocialShare","socialShare","_renderCartAndActions","addToCart","addToOrderTemplate","addToWishlist","errorBlock","button","_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","id","currentCount","onChange","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","contentAction","etext","push","ContractsAccountPageLinks","Msdyn365","ContractsAccountPage","_handleHeadingChange","_handleLinkTextChange","linkIndex","_renderHeading","bind","_getContractsRowData","_renderTable","_generateRow","data","contractList","result","manufacturerCodeLabel","contractNumberLabel","laborRateLabel","contractDescLabel","noContractsFoundText","headingRow","contractsRowData","i","_renderMfrCodeHeading","contract","ContractCode","_generateEmptyRow","colNum","manufacturerCodeShortFormLabel","contractData","ManufacturerCode","Description","ContractLaborRate","ContractNotes","toFixed","_renderLink","LinksComponent","viewProps","classNames","dlvDescription","_get","window","sessionStorage","setItem","InvoiceDetailsView","products","paymentDetails","payInvoiceError","FooterCategory","categories","FooterList","FooterListItem","CartIcon","observer","cartLabel","cartQtyLabel","cart","cartItem","totalItemsInCart","qtyLabel","format","label","style","visibility","CartIconComponent","msdyn365Commerce","createComponentOverride","component","PayInvoiceComponentActions","async","_event","setDisabled","payInvoices","invoice","actionContext","errorState","onError","reference","onClickHandler","PayInvoiceComponent","createComponent","disabled","useState","createElement","payInvoiceButtonAriaLabel","canBePaid","payInvoiceButtonText","Link","noclick","attribute","itemProp","Separator","Breadcrumb","_pageType","urlTokens","pageType","_getRootLink","_getCustomBreadcrumbLinks","itemPosition","keyIndex","toString","_getCategoryHierarchy","categoryHierarchy","_getFriendlyName","locale","NameTranslations","Url","nameTranslations","_nameTranslation","nameTranslation","ArrayExtensions","hasElements","Language","toLowerCase","Text","_getPDPLinks","categoryPaths","product","requestUrl","Name","hideProductName","_goBack","history","back","_getPDPBackButton","query","referrer","backToResultsText","rootLink","breadcrumbLinks","backButtonComponent","breaCrumbType","app","breadcrumbType","linkSeparator","breadcrumbViewProps","PickUpAtStoreComponent","PickUpAtStore","location","EmailDeliveryComponent","EmailDelivery","LineItemComponent","_ref3","LineItem","pickUpAtStore","emailDelivery","LineItemGroupComponent","_ref4","LineItemDeliveryGroup","LineItemList","lineItems","numItems","prev","next","pageLength","paginatedView","setPaginatedView","slice","paginationPage","setPaginationPage","nextPage","changePage","prevPage","page","skip","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","checkoutState","updateCart","newCartObject","then","setShipCompleteOnCheckout","shipCompleteOnCheckout","shipCompleteOnCheckoutToggle","_renderShipOnCheckout","handleShipCompleteOnCheckoutChange","shipCompleteOnCheckoutLabel","type","_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","currencyFormatter","ChargeLines","linesNode","c","node","line","ChargeCode","chargeCode","r","_r$CalculatedAmount$t","_r$CalculatedAmount","chargeLineLabel","CalculatedAmount","chargeLinesBreakdown","cultureFormatter","formatCurrency","orderSummaryExtended","isAccountBlocked","customerInformation","Blocked","lineItemsExt","paginationPrev","paginationNext","accountLockedMessage","_renderOrderComment","commentHeading","commentString","emptyStringClassName","commentHeadingText","_props$data$checkout$3","Comment","getCommentText","isMobileView","viewport","_window","device","Type","innerWidth","sm","md","getViewport","onSelectAllHandler","isSelected","InvoicesTableComponent","isMobile","setIsMobile","updateViewport","addEventListener","rowClassName","headerClassName","InvoicesTableHeaderComponent","typeName","isSelectedAll","all","isAdmin","customer","IsB2bAdmin","onSelectAll","InvoicesTableRowComponent","invoiceReferences","invoiceButtonReferences","Number","payInvoiceReferences","payInvoiceButtonReferences","onRequestInvoice","onSubmit","preventDefault","subscribeView","_subscribeForm$classN","_emailInput$className","_submitButton$classNa","subscribe","subscribeContainer","subscribeForm","emailInput","submitButton","submitButtonLabelText","B2bRequestsStatusView","_props$data$operation","b2bRequestsStatus","table","continueShoppingButtonTitle","operationRequests","headingForEmptyRequestStatus","textForEmptyRequestStatus","getUrlSync","renderProductDescription","_props$data$product$r","primaryImageSource","PrimaryImageUrl","imageUrl","generateImageUrl","apiSettings","Image","fallBackSrc","cropFocalRegion","renderProductImage","ItemId","WriteReviewView","signInMessage","signInButton","modalToggle","paragraph","isAuthenticated","user","RichTextComponent","reviewModal","modalHeader","modalBody","form","inputRow","selectRatingLabel","reviewTitleLabel","titleInput","reviewTextLabel","textInput","privacyPolicyUrl","modalFooter","createReviewModal","Tab","tabIndexQuery","handleHeadingChange","_refHandler","activeLink","_onClick","e","activeTabState","activeContentIndex","tabId","update","createTabStateInput","currentTabIndex","newUrl","_setGetParameter","String","pushState","path","_onKeyDown","keyCode","slotLength","tabItems","defaultTabIndex","initialIndex","queryString","activeTab","queryTabIndex","indexOf","arr","split","parseInt","_getTabHeader","_getTabContent","shouldComponentUpdate","nextProps","nextState","headingComponent","tabViewProps","TabContainer","headerSection","tabsSection","tabItemContainer","tabContents","tabHeaders","componentDidUpdate","params","isEditor","dataActionTabId","focus","selected","contentID","getContentID","onKeyDown","ref","itemIndex","paramName","paramValue","URL","URLSearchParams","search","decodeURIComponent","__decorate","MakePaymentComponentActions","buttonReferences","MakePaymentComponent","hasInvoices","makePaymentButtonAriaLabel","makePaymentButtonText","InvoiceErrorComponent","messageHeader","errorMessage","otherError","showError","payInvoiceErrorModalOpen","errorDialogHeader","errorDialogBodyErrorTitle","errorDialogBodyErrorDescription","errorDialogFooterGoToCartButtonText","errorDialogFooterCancelButtonText","cartUrl","setPayInvoiceErrorModalClose","errorMessages","Fragment","Alert","color","assertive","message","businessPartnersView","selectedBusinessPartnerUser","businessPartnersProps","businessPartnersHeading","catalogLoadingIndicator","catalogLoadingErrorMessage","cookieConsentNotGivenErrorMessage","backToBusinessPartnersLink","businessPartnersTable","businessPartnerUsersTable","FooterCategoryView","category","Subscribe","_emailAddressInputRef","subscribeParagraph","subscribeHeading","handleText","subscribeFormAriaLabel","name","autoComplete","subscribeFormEmailAriaLabel","placeholder","subscribeEmailPlaceholderText","subscribeFormSubmitAriaLabel","subscribeButtonLabel","invoicesToAdd","errorReason","failureReason","cartState","getCartState","addInvoicesToCart","invoiceIds","_result$errorDetails","_result$errorDetails2","status","errorDetails","LocalizedMessage","errorCode","ErrorResourceId","TabItem","moduleContentClassName","moduleHeaderClassName","_renderTabHeader","activeContentIDResult","shown","tabItemTitle","_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","InvoiceDetailsHeaderComponent","invoiceDetails","invoiceNumberText","invoiceIdLabel","replace","invoiceOrderItemsText","invoiceOrderItem","invoiceOrderItems","invoiceInfoContainerClassName","orderInfoContainerClassName","orderInfoClassName","orderMainInfoClassName","orderDetailsClassName","actionsClassName","amountSummaryClassName","orderDate","formatShortDate","date","formatDate","year","month","day","invoiceDate","dueDate","formatLongDate","dueDateText","invoicePaymentDueDateText","isOnBehalfOfRequest","isOboRequest","invoicePlacedByLabel","customerName","invoiceAmountDueText","amount","amountDue","currencyCode","formatAmount","InvoiceDetailsPaymentDetailsComponent","invoicePaymentDetails","lineClassName","ObjectExtensions","isNullOrUndefined","totalDiscount","invoicePaymentDiscounts","invoicePaymentSubtotal","totalCharges","invoicePaymentCharges","totalTax","invoicePaymentTax","totalAmount","invoicePaymentInvoiceTotal","InvoiceDetailsProductsComponent","productLineClass","productLineInfoContainerClass","productLineDetailsClass","productLineSmallDetailsClass","Quantity","productUrl","ProductName","ProductId","getProductPageUrlSync","RecordId","_renderProductImage","_context$request$app","fallbackImage","getFallbackImageUrl","OmniChannelMedia","primaryImageUrl","_renderProductDimensions","isNullOrWhitespace","ColorName","invoiceProductColor","SizeName","invoiceProductSize","StyleName","invoiceProductStyle","Price","invoiceQuantity","NetAmount","InvoiceDetailsModel","Id","InvoiceDate","Date","CustomerName","InvoiceDueDate","AmountBalance","InvoicePaidStatusValue","SalesInvoiceLine","_products$find","TotalDiscount","InvoiceSubtotal","TotalCharges","TotalTaxAmount","TotalAmount","CurrencyCode","InvoicePaidStatus","Paid","InvoiceDetails","_onAddToCartFailed","_setPayInvoiceErrorModalClose","_getProducts","ChannelId","invoiceDetailsModel","_renderHeader","_renderProducts","_renderPaymentDetails","_renderInvoiceErrors","_className","channelId","arguments","productInputs","ProductInput","getSimpleProductsAction","newErrorState","errorHost","_this$state$errorStat","payInvoiceErrorDialogHeader","payInvoiceErrorDialogBodyErrorTitle","payInvoiceErrorDialogBodyErrorDescription","payInvoiceErrorDialogFooterGoToCartButtonText","payInvoiceErrorDialogFooterCancelButtonText","errorClassName","switchCheckedState","headerCells","getMobileHeaderCells","invoiceListSelectAllRadioAriaLabelText","checked","invoicesText","invoiceDateMobileText","getDesktopHeaderCells","invoiceDateText","invoiceUsersText","invoiceAmountText","invoiceDueDateText","invoiceStatusText","invoiceActionsText","staticDisplay","cartLineCommentModuleProps","countryPickerView","country","tabView","onRequestSpecificInvoice","requestInvoiceButtonReference","setShowPreviousActions","onClickViewDetails","linkToInvoiceDetails","isShowActions","setShowActions","shouldShowActions","extraActionsPopup","invoiceViewDetailsButtonAriaLabel","invoiceViewDetailsButtonText","invoiceActionsButtonTextAriaLabel","invoiceActionsButtonIsOnBehalfOfTextAriaLabel","showActions","getInvoiceDetailsPageUrlSync","actionsContainerClassName","payInvoiceClassName","invoiceRequestButtonLabel","onSelectLine","rowCells","getMobileRowCells","invoiceRowArialabel","invoiceListSelectRadioAriaLabelText","getInvoiceStatusText","getDesktopRowCells","isCurrentUser","AccountNumber","customerAccountNumber","invoiceCurrentUser","SummaryForm","formProps","paymentAmount","addPaymentButton","appliedLine","bottomBorder","EditForm","inputLabel","inputAmount","customerSince","accountCredit","accountDetails","getInputLabel","customInputLabel","CheckoutCustomerAccountView","checkoutCustomerAccount","summaryView","editView","moduleState","_document$querySelect","removeItem","processedOnAccountText","querySelector","getItem","cartTotal","updateCustomerAccountAmount","newAmount","information","addPayment","isReady","InvoiceModel","CustomerAccountNumber","invoiceStatus","None","invoiceStatusNone","Unpaid","invoiceStatusUnpaid","PartiallyPaid","invoiceStatusPartiallyPaid","invoiceStatusPaid","TileListItemViewComponent","tileListItem","backgroundImage","thumbnailImage","tileListContainer","tileListImageContainer","tileListThumbnailImageContainer","tileListHeadingContainer","renderTileListItemContent","orderLevelCommentModuleProps","InvoicesFilterState","getInvoicesFilterStateResources","filterState","ShowAll","invoicesFilterShowAll","onStateClick","InvoicesFilterComponent","popoverRef","createRef","popoverState","setPopoverState","togglePopover","useCallback","setFilterState","currentState","onFilterStateClick","clickedState","onFilterStateChanged","Popover","placement","EnumExtensions","getEnumValues","renderFilterStateItem","stateStringRepresentation","SearchBar","Component","onSearchTextChange","ev","searchText","onSearch","handleKeyUp","KeyCodes","Enter","searchPlaceholderLabel","onKeyUp","DataGrid","renderGridHeader","columns","column","reactKey","renderGridRow","_column$onRender","_column$onClick","call","fieldName","onRender","loadDataInternal","loadData","_e$data","genericErrorMessage","paging","loadMore","sortData","sorting","ascending","sort","item1","item2","value1","value2","compareResult","filterData","isSearchable","columnValue","trim","getDataToDisplay","itemsCount","pageSize","hasMore","defaultSorting","componentDidMount","moduleClassName","loadingLabel","businessPartnerLoadMore","noDataMessage","BusinessPartnerUsersTable","getColumns","isMobileDevice","variant","VariantType","Viewport","businessUserTableNameHeadingText","onSelect","businessUserTableEmailHeadingText","businessUserTableSpendingLimitHeadingText","getBusinessPartnerUsers","BusinessPartnersDataActions","getUsersAsync","callerContext","bypassCache","queryResultSettings","businessPartner","BusinessPartnerId","StatusValue","FirstName","LastName","spendingLimit","SpendingLimit","businessUserTableSpendingLimitZeroHoverText","businessPartnerSearchCustomer","BusinessPartnersTable","businessPartnerName","getBusinessPartners","getManagedBusinessPartnersAsync","businessPartnerSearchCompany","BusinessPartners","onSelectBusinessPartner","selectedBusinessPartner","onSelectBusinessPartnerUser","businessPartnerUser","setAccountSelectionCookie","catalogId","getCustomerDefaultCatalogId","validateCatalogId","homeUrl","fullUrl","searchParams","removeAccountSelectionCookie","isLoadingCatalog","_productCatalogs$","productCatalogs","CatalogsDataActions","getCatalogsAsync","loadCatalogErrorMessage","classname","cookieConsentRequiredMessage","AddressShow","AddressDetail","AddressSelect","SelectAddress","addButton","SelectItem","showItems","AddressAddUpdate","AddressForm","hasError","AddressItem","AddressError","CheckoutShippingAddressView","CheckoutShippingAddress","showAddress","showAddressSelect","showAddOrUpdateAddress","cartLineImages","address","shippingAddress","nonEligibleItems","setnonEligibleItems","checkEligibilityForShippingAddress","setHasError","notEligibleList","_cart$CartLines","itemIds","CartLines","cl","addressCountry","ThreeLetterISORegionName","addressState","State","addressRegion","County","GetProductEligibilityInput","eligibilityData","GetProductEligibilityAction","_getExtensionPropertyValueByKey","properties","valueType","_properties$find","property","p","Key","ExtensionProperties","CommercePropertyValueEnum","string","IsEligible","removeIneligibleItems","badCartLines","removeCartLines","cartLineIds","reload","getCartLineFromItemId","itemId","isShowAddress","isShowAddresList","isShowAddOrUpdateAddress","OrderLevelComment","_props$data$cart$resu","_maxCommentLength","_updateOrderLevelComment","dummyCart","comment","isCommentAreaActive","_updateCommentState","_resetCommentToProps","_toggleCommentAreaActive","prevState","_renderStaticCommentDisplay","_this$props$data$cart","commentLinkText","editLinkText","disclaimer","_getCommentPreview","_renderCommentLink","_this$props$data$cart2","substring","_renderSaveButton","saveButtonText","_renderCancelButton","cancelButtonText","_renderTextArea","textAreaLabel","charactersRemaining","htmlFor","_getFieldId","maxLength","_renderButtonArea","_renderModal","_getModalTitle","commentModalTitle","children","TileListLinks","TileListItem","_this$props$config$li","redirectionUrl","tileListLinks","tileListLinkContainer","_createHeading","_createParagraph","_renderBackgroundImage","_renderThumbnailImage","isAriaHiddenAttribute","_item$imageSettings","_this$props$config$ba","verifiedImageSettings","moduleType","imagePropertyName","itemImageSettings","_this$props$config$th","layout","msdyn365__moduleLayout","totalDiscounts","CartLineComment","_updateCartLineComment","_dummyCart$CartLines","cartLineToUpdate","cartLineId","updateCartLineQuantity","newQuantity","cartProductTitle","onSubmitRequestClick","onClosing","filteredInvoices","onSubmitRequest","checkboxRef","closingFlag","_inputInvoice$current","current","searchInputChangedHandler","setSearchInput","onCancelHandler","renderInvoiceOptions","setSelectedInvoiceIndex","_invoice","_checkboxRef$current$","onInvoiceSelect","onInvoiceSelectHandler","checkboxId","checkboxName","RequestInvoiceModal","email","modalHeaderLabel","sendToEmailLabel","submitRequestLabel","cancelLabel","invoicesFoundString","singleInvoiceFoundString","searchButtonAltText","selectedInvoiceIndex","setFilteredInvoices","searchInput","shouldShowSearchResults","setShouldShowSearchResults","invoiceOptionsData","invoiceOptions","setInvoiceOptions","focusElement","setTimeout","_focusElement$current","searchEntered","searchEnteredHandler","updatedInvoices","toLocaleUpperCase","searchResultString","invoicesFoundReplaceIndex","horizontalPosition","verticalPosition","autoFocus","fade","onOpened","setFilteredInvoicesToSelectedInvoices","selectedInvoices","requestInvoiceDialogAriaLabel","InvoicesList","buttonChildReference","buttonChildPayButtonReference","_onDismiss","_onToggleInvoiceRequestParentModal","selectedButtonElement","payInvoiceRequestReference","_onToggleInvoiceRequestModal","_queryResultSettings","QueryResultSettingsProxy","fromModuleData","QueryResultSettings","makePaymentReference","_updateInvoicesState","_handleFilterStateChange","_loadMoreInvoices","_requestInvoice","_requestSpecificInvoice","invoicesFilterState","isPageLoaded","isInvoiceRequestModalOpen","_customerBalance$resu","_customerBalance$resu2","_heading$text","channel","customerBalance","invoicesListTitle","invoicesListDescTitle","invoicesListDescCount","amountText","OpenInvoiceBalance","Currency","totalCount","OpenInvoiceCount","countText","invoicesListTitleHeading","Heading","_renderInvoiceRequestModal","_renderInvoicesFilter","_renderPagination","_renderListContainer","_renderEmptyInvoiceLinesPageContent","invoicesData","_initializeWithInvoices","reaction","_this$props$data$b2bU","b2bUserId","b2bUserInformation","B2BUserId","invoiceId","BusinessPartnerUsersDataActions","requestInvoiceCopyAsync","BusinessPartnerOperationDeliveryType","Email","_addInvoices","newInvoices","concat","containerClass","actionsContainerClass","invoiceEmptyInvoiceLinesTitle","invoiceEmptyInvoiceLinesDescription","invoiceEmptyInvoiceLinesContinueShoppingButtonAriaLabel","invoiceEmptyInvoiceLinesContinueShoppingButtonText","containerHeaderClass","containerContentClass","_renderMakePayment","_renderInvoiceRequestButton","_renderInvoicesList","searchCriteria","getCurrentAsync","getCustomer","GetCustomerInput","CustomerId","InvoicePaidStatusValues","_getInvoicesSearchCriteria","Paging","Skip","getInvoices","GetInvoicesInput","filterClassName","_renderInvoiceInCartPaymentMessage","tableClassName","_newErrorState$errorR","invoiceErrorInvoiceIdNotExist","invoiceErrorFailedAddInvoiceToCart","shouldShowAdditionalInfoInPopup","makePaymentResources","_getSelectedInvoices","moduleId","moduleTypeName","navigationUrl","_this$state$selectedB","invoiceErrorMessageHeader","invoiceInCartPaymentMessage","_data$invoices","Top","invoicesLoadMore","invoiceRequestModalCancelLabel","invoiceRequestModalSubmitLabel","invoiceRequestModalHeaderLabel","invoiceRequestModalSendToEmailLabel","invoiceRequestModalSearch","invoiceRequestModalInvoiceSearchDisplay","invoiceRequestModalSingleInvoiceSearchDisplay","invoiceRequestModalSearchButton","_this$state$selectedB2","specificInvoice","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/6.8ab523309259c2fe891a.chunk.js","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nexport * from './components';\nexport * from './helpers';\nexport * from './invoices-list';\nexport * from './invoices-list.data';\nexport * from './invoices-list.props.autogenerated';\nexport * from './invoices-list.view';\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 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","/*--------------------------------------------------------------\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 * as React from 'react';\r\nimport MsDyn365 from \"@msdyn365-commerce/core\";\r\nimport { IInvoicesListViewProps } from '@msdyn365-commerce-modules/invoice/src/modules/invoices-list/./invoices-list';\r\n\r\nexport const InvoiceListView: React.FC = props => {\r\n const { header, filter, content, invoiceRequestModal, pagination } = props;\r\n if (MsDyn365.isBrowser) {\r\n const linksElements = document.querySelectorAll('a.msc-invoices-list__container__content__table__row__open-invoice');\r\n console.log(linksElements);\r\n linksElements.forEach(l => l.setAttribute('href', '#'));\r\n }\r\n return (\r\n \r\n {header}\r\n {invoiceRequestModal}\r\n {filter}\r\n {content}\r\n {pagination}\r\n \r\n );\r\n};\r\n\r\nexport default InvoiceListView;\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 { 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","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Button } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\ninterface IRequestInvoiceButtonProps {\n innerReference?: React.RefObject;\n className: string;\n requestInvoiceButtonLabel: string;\n onClicked(): void;\n}\n\nexport const RequestInvoiceButton: React.FC = ({\n className,\n onClicked,\n requestInvoiceButtonLabel,\n innerReference\n}) => {\n return (\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 { 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 {\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 } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IInvoiceDetailsViewProps } from './invoice-details';\n\nexport const InvoiceDetailsView: React.FC = props => {\n const { header, products, paymentDetails, payInvoiceError } = props;\n\n return (\n \n {header}\n {products}\n {paymentDetails}\n {payInvoiceError}\n \n );\n};\n\nexport default InvoiceDetailsView;\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 { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Button } from '@msdyn365-commerce-modules/utilities';\nimport React, { useState } from 'react';\n\nimport { IPayableInvoice } from '../helpers/invoice-data';\nimport { payInvoices } from '../helpers/pay-invoices';\nimport { IInvoiceErrorState } from '../invoices-list';\n\nexport interface IPayInvoiceData {\n invoice: IPayableInvoice;\n}\n\nexport interface IPayInvoiceResources {\n payInvoiceButtonText: string;\n payInvoiceButtonAriaLabel: string;\n}\n\nexport interface IPayInvoiceProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n reference?: React.RefObject;\n resources: IPayInvoiceResources;\n disabled?: boolean;\n\n onError?(errorState: IInvoiceErrorState, reference?: React.RefObject): void;\n}\n\ninterface IPayInvoiceComponent extends IComponent {}\n\nconst onClick = async (\n _event: React.MouseEvent,\n props: IPayInvoiceProps,\n setDisabled: (disabled: boolean) => void\n): Promise => {\n setDisabled(true);\n\n const propagateError = (errorState: IInvoiceErrorState): void => {\n if (props.onError) {\n props.onError(errorState, props.reference);\n }\n setDisabled(false);\n };\n\n await payInvoices([props.data.invoice], props.context.actionContext, propagateError);\n};\n\nconst PayInvoiceComponentActions = {\n onClick\n};\n\n/**\n * On click handler function.\n * @param props -Invoice props.\n * @param setDisabled -Set disabled.\n * @returns Pay invoice component action.\n */\nconst onClickHandler = (props: IPayInvoiceProps, setDisabled: React.Dispatch>) => async (\n event: React.MouseEvent\n) => {\n await PayInvoiceComponentActions.onClick(event, props, setDisabled);\n};\n\nconst PayInvoice: React.FC = (props: IPayInvoiceProps): JSX.Element => {\n const [disabled, setDisabled] = useState(false);\n\n return (\n \n {props.resources.payInvoiceButtonText}\n \n );\n};\n\n// @ts-expect-error\nexport const PayInvoiceComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'PayInvoiceComponent',\n { component: PayInvoice, ...PayInvoiceComponentActions }\n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\ninterface ILink {\n className?: string;\n text?: string;\n href?: string;\n ariaLabel?: string;\n index: string;\n noclick?: boolean;\n telemetryContent: ITelemetryContent;\n}\n\nexport const Link: React.FC = ({ text, className, href, ariaLabel, index, noclick, telemetryContent }) => {\n const payLoad = getPayloadObject('click', telemetryContent, '', '');\n\n const linkText = text !== undefined ? text : '';\n payLoad.contentAction.etext = linkText;\n\n // Construct telemetry attribute to render\n const attribute = getTelemetryAttributes(telemetryContent, payLoad);\n\n return (\n \n {linkText}\n \n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface ISeparator {\n separator: string;\n}\n\nexport const Separator: React.FC = ({ separator }) => (\n \n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { CategoryHierarchy } from '@msdyn365-commerce/commerce-entities';\nimport MsDyn365 from '@msdyn365-commerce/core';\nimport { ICategoryUrl } from '@msdyn365-commerce/core-internal/dist/types/interfaces/ICategoryPathInterfaces';\nimport { TextValueTranslation } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBreadcrumbData } from './breadcrumb.data';\nimport { IBreadcrumbProps, ILinksData } from './breadcrumb.props.autogenerated';\nimport { Link } from './components/link';\nimport { Separator } from './components/separator';\n\nexport interface IBreadcrumbViewProps extends IBreadcrumbProps {\n root?: React.ReactNode;\n links?: React.ReactNode[];\n backButton?: React.ReactNode;\n separator?: React.ReactNode;\n BreadcrumbContainer: IModuleProps;\n BreadcrumbList: INodeProps;\n BreadcrumbListItem: INodeProps;\n}\n\n/**\n *\n * Breadcrumb component.\n * @extends {React.PureComponent>}\n */\nclass Breadcrumb extends React.PureComponent> {\n private readonly _pageType: string | undefined = this.props.context.request.urlTokens.pageType;\n\n private readonly telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public render(): JSX.Element | null {\n const { className } = this.props.config;\n let rootLink = null;\n let breadcrumbLinks = null;\n let backButtonComponent = null;\n rootLink = this._getRootLink();\n const itemPosition = rootLink ? 1 : 0;\n if (this._pageType === 'Category') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n breadcrumbLinks = this._getCategoryHierarchy(itemPosition);\n }\n } else if (this._pageType === 'Product') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n const breaCrumbType = this.props.context.app.config.breadcrumbType;\n if (breaCrumbType === 'category') {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'categoryAndBack') {\n backButtonComponent = this._getPDPBackButton();\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'back') {\n backButtonComponent = this._getPDPBackButton();\n if (backButtonComponent === null) {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n }\n }\n } else {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n }\n const linkSeparator = ;\n\n const breadcrumbViewProps = {\n ...this.props,\n BreadcrumbContainer: {\n moduleProps: this.props,\n className: classnames('ms-breadcrumb', className),\n tag: 'nav',\n role: 'navigation'\n },\n BreadcrumbList: {\n tag: 'ol' as NodeTag,\n className: 'ms-breadcrumb_list'\n },\n BreadcrumbListItem: {\n tag: 'li',\n className: 'ms-breadcrumb_item'\n },\n root: rootLink,\n links: breadcrumbLinks,\n backButton: backButtonComponent,\n separator: linkSeparator\n };\n return this.props.renderView(breadcrumbViewProps) as React.ReactElement;\n }\n\n private readonly _getRootLink = (): JSX.Element | null => {\n const { root } = this.props.config;\n if (!root || !root.linkUrl || !root.linkUrl.destinationUrl) {\n this.props.context.telemetry.error('BreadCrumb link url content is empty, link wont render');\n return null;\n }\n return (\n \n );\n };\n\n private readonly _getCustomBreadcrumbLinks = (itemPosition: number): JSX.Element[] | null => {\n const { links } = this.props.config;\n\n if (!links || links.length === 0) {\n this.props.context.telemetry.error('BreadCrumb links content is empty, links wont render');\n return null;\n }\n const defaultValueToSubtract = 1;\n return links.map((value: ILinksData, index: number) => {\n itemPosition++;\n const keyIndex = index;\n return index !== links.length - defaultValueToSubtract ? (\n \n ) : (\n
\n {value.linkText}\n
\n );\n });\n };\n\n private readonly _getCategoryHierarchy = (itemPosition: number): JSX.Element[] | null => {\n const { data } = this.props;\n const categoryHierarchy = data.categoryHierarchy.result;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category Hierarchy content is empty, module wont render');\n return null;\n }\n return categoryHierarchy.map((value: CategoryHierarchy, index: number) => {\n itemPosition++;\n\n const friendlyName = this._getFriendlyName(this.props.context.request.locale, value.NameTranslations);\n\n return (\n \n );\n });\n };\n\n /**\n * The function to get translation name for the locale.\n * @param locale - The locale information.\n * @param nameTranslations - The name translations names.\n * @returns - The translation name for the locale.\n */\n private readonly _getFriendlyName = (locale: string, nameTranslations?: TextValueTranslation[]): string | undefined => {\n let nameTranslation: TextValueTranslation | undefined;\n if (locale && nameTranslations && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations.find(item => item.Language!.toLowerCase() === locale.toLowerCase());\n }\n\n // If friendly name for current locale is null, should use default locale.\n if (nameTranslation === undefined && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations[0];\n }\n\n return nameTranslation?.Text;\n };\n\n private readonly _getPDPLinks = (itemPosition: number): JSX.Element[] | null => {\n const { data, config } = this.props;\n const categoryHierarchy = data.categoryPaths.result;\n const product = data.product.result;\n const url = this.props.context.request.url.requestUrl.href;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category path content is empty for the product');\n return null;\n }\n const links: JSX.Element[] = [];\n\n categoryHierarchy.map((value: ICategoryUrl, index: number) => {\n itemPosition++;\n links.push(\n \n );\n });\n if (product && !config.hideProductName) {\n itemPosition++;\n links.push(\n \n );\n }\n return links;\n };\n\n private readonly _goBack = (): void => {\n window.history.back();\n };\n\n private readonly _getPDPBackButton = (): JSX.Element | null => {\n const isBackAllowed =\n this.props.context && this.props.context.request && this.props.context.request.query && this.props.context.request.query.back;\n if (!isBackAllowed) {\n return null;\n }\n if (MsDyn365.isBrowser && (document.referrer === '' || window.history.length < 2)) {\n return null;\n }\n return (\n \n {this.props.resources.backToResultsText}\n \n );\n };\n}\n\nexport default Breadcrumb;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IActiveTabState } from './data-actions/tab-state';\nimport { createTabStateInput } from './data-actions/tab-state-data-action';\nimport tab from './modules/tab/tab';\nimport tabView from './modules/tab/tab.view';\nimport { getContentID, TabItemType } from './modules/tab-item/tab-item';\n\nexport * from './modules/tab/tab';\nexport * from './modules/tab/tab.view';\nexport { createTabStateInput, getContentID, IActiveTabState, tab, TabItemType, 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 {\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","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport React, { useState } from 'react';\n\nimport { InvoiceModel } from '../../helpers/invoice-data';\nimport { IInvoiceErrorState } from '../../invoices-list';\nimport { IInvoicesTableHeaderResources, InvoicesTableHeaderComponent } from './components/invoices-table-header-component';\nimport { IInvoicesTableRowResources, InvoicesTableRowComponent } from './components/invoices-table-row-component';\n\ninterface IInvoicesTableData {\n invoices: InvoiceModel[];\n customer: Customer;\n}\n\nexport interface IInvoicesTableResources extends IInvoicesTableHeaderResources, IInvoicesTableRowResources {}\n\nexport interface IInvoicesTableProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n invoiceButtonReferences?: React.RefObject[];\n payInvoiceButtonReferences?: React.RefObject[];\n resources: IInvoicesTableResources;\n\n onChange(): void;\n onError?(errorState: IInvoiceErrorState, reference?: React.RefObject): void;\n onRequestInvoice(invoice: InvoiceModel, requestInvoiceButtonReference: React.RefObject): void;\n}\n\nexport interface IInvoicesTableComponent extends IComponent {}\n\ntype GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\nconst getViewport = (context: ICoreContext): GridSize => {\n // Always render in mobile viewport on a mobile device\n if (context.request && context.request.device && context.request.device.Type === 'Mobile') {\n return 'xs';\n }\n\n if (window?.innerWidth) {\n const gridSettings = context.request.gridSettings;\n if (gridSettings) {\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\n return 'xs';\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\n return 'sm';\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\n return 'md';\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\n return 'lg';\n }\n return 'xl';\n }\n }\n\n return 'xs';\n};\n\nconst isMobileView = (context: ICoreContext) => {\n const viewport = getViewport(context);\n return viewport === 'xs' || viewport === 'sm';\n};\n\n/**\n * On select all function.\n * @param props -Invoice table props.\n * @returns On change.\n */\nconst onSelectAllHandler = (props: IInvoicesTableProps) => (isSelected: boolean) => {\n props.data.invoices.forEach(invoice => {\n invoice.isSelected = isSelected;\n });\n props.onChange();\n};\n\nconst InvoicesTable: React.FC = (props: IInvoicesTableProps): JSX.Element => {\n const [isMobile, setIsMobile] = useState(isMobileView(props.context));\n\n const updateViewport = () => {\n setIsMobile(isMobileView(props.context));\n };\n\n if (typeof window !== undefined && window.addEventListener) {\n window.addEventListener('resize', updateViewport);\n }\n const rowClassName = `${props.className}__row`;\n const headerClassName = `${props.className}__header`;\n\n return (\n \n invoice.isSelected)}\n isMobile={isMobile}\n isAdmin={props.data.customer.IsB2bAdmin || false}\n onSelectAll={onSelectAllHandler(props)}\n resources={props.resources}\n data={{}}\n />\n {props.data.invoices.map((invoice, index: number) => {\n return (\n \n );\n })}\n
\n );\n};\n\nexport const InvoicesTableComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoicesTableComponent\n>('InvoicesTableComponent', { component: InvoicesTable });\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","/*--------------------------------------------------------------\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 { IImageSettings, Image, RichTextComponent } from '@msdyn365-commerce/core';\nimport { IWriteReviewData, IWriteReviewViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\nimport { generateImageUrl } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IWriteReviewProps } from '../definition-extensions/write-review.ext.props.autogenerated';\n\n/**\n * Render Product Image.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductImage = (props: IWriteReviewViewProps & IWriteReviewProps): JSX.Element => {\n const primaryImageSource = props.data.product.result?.PrimaryImageUrl;\n const imageUrl = generateImageUrl(primaryImageSource, props.context.request.apiSettings);\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=111&h=111&m=6', w: 111, h: 111 },\n sm: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n md: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n lg: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n xl: { q: 'w=130&h=130&m=6', w: 130, h: 130 }\n },\n lazyload: true,\n cropFocalRegion: true\n };\n\n return (\n \n );\n};\n\n/**\n * Render Product Description.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductDescription = (props: IWriteReviewViewProps & IWriteReviewProps): JSX.Element => {\n const product = props.data.product.result;\n return (\n \n
{renderProductImage(props)}
\n
\n
{product?.Name}
\n
{product?.ItemId}
\n
\n
\n );\n};\n\n/**\n * Create Write Review Modal.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst createReviewModal = (props: IWriteReviewViewProps & IWriteReviewProps): JSX.Element => {\n const { resources, moduleProps, reviewModal } = props;\n\n return (\n \n {reviewModal.modalHeader}\n \n \n \n {renderProductDescription(props)}\n \n
{resources.selectRatingLabel}
\n {reviewModal.rating}\n
\n
\n \n {resources.reviewTitleLabel}\n {reviewModal.titleInput}\n \n \n {resources.reviewTextLabel}\n {reviewModal.textInput}\n \n {reviewModal.privacyPolicyUrl}\n {reviewModal.error}\n
\n
\n \n {reviewModal.submitButton}\n {reviewModal.cancelButton}\n \n
\n );\n};\n\n/**\n * WriteReview view.\n * @param props - WriteReview ViewProps.\n * @returns WriteReview view module.\n */\nconst WriteReviewView: React.FC> = props => {\n const { config, heading, signInMessage, signInButton, modalToggle, moduleProps } = props;\n const { paragraph } = config;\n const isAuthenticated = props.context.request.user.isAuthenticated;\n const text = paragraph && ;\n\n return (\n \n {heading}\n {!isAuthenticated ? (\n <>\n {signInMessage}\n {signInButton}\n \n ) : (\n <>\n {text}\n {modalToggle}\n {createReviewModal(props)}\n \n )}\n \n );\n};\n\nexport default WriteReviewView;\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 { IInvoicesListViewProps } from './invoices-list';\n\nexport const InvoiceListView: React.FC = props => {\n const { header, filter, content, invoiceRequestModal, pagination } = props;\n\n return (\n \n {header}\n {invoiceRequestModal}\n {filter}\n {content}\n {pagination}\n \n );\n};\n\nexport default InvoiceListView;\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 { IComponent, IComponentProps, ICoreContext, ITelemetry, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport React, { useState } from 'react';\n\nimport { InvoiceModel } from '../helpers/invoice-data';\nimport { payInvoices } from '../helpers/pay-invoices';\nimport { IInvoiceErrorState } from '../invoices-list';\n\ninterface IMakePaymentData {\n invoices: InvoiceModel[];\n}\n\nexport interface IMakePaymentResources {\n makePaymentButtonText: string;\n makePaymentButtonAriaLabel: string;\n}\n\nexport interface IMakePaymentProps extends IComponentProps {\n context: ICoreContext;\n itemKey?: string;\n telemetry: ITelemetry;\n moduleId: string;\n moduleTypeName: string;\n telemetryContent?: ITelemetryContent;\n navigationUrl?: string;\n buttonReferences?: React.RefObject;\n resources: IMakePaymentResources;\n disabled?: boolean;\n\n onError?(errorState: IInvoiceErrorState, reference?: React.RefObject): void;\n}\n\nexport interface IMakePaymentComponent extends IComponent {}\n\nconst onClick = async (\n _event: React.MouseEvent,\n props: IMakePaymentProps,\n setDisabled: (disabled: boolean) => void\n): Promise => {\n setDisabled(true);\n\n const propagateError = (errorState: IInvoiceErrorState): void => {\n if (props.onError) {\n props.onError(errorState, props.buttonReferences);\n }\n setDisabled(false);\n };\n\n await payInvoices(props.data.invoices, props.context.actionContext, propagateError);\n};\n\nconst MakePaymentComponentActions = {\n onClick\n};\n\n/**\n * On Click function.\n * @param input -Make payment props.\n * @param setDisabled -Set Disabled.\n * @returns Make payment component on click.\n */\nconst onClickHandler = (input: IMakePaymentProps, setDisabled: React.Dispatch>) => async (\n event: React.MouseEvent\n) => {\n await MakePaymentComponentActions.onClick(event, input, setDisabled);\n};\n\nconst MakePayment: React.FC = (input: IMakePaymentProps): JSX.Element => {\n const {\n data: { invoices }\n } = input;\n const hasInvoices = ArrayExtensions.hasElements(invoices.filter(invoice => invoice.canBePaid));\n const [disabled, setDisabled] = useState(false);\n\n return (\n \n {input.resources.makePaymentButtonText}\n \n );\n};\n\n// @ts-expect-error\nexport const MakePaymentComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'MakePayment',\n { component: MakePayment }\n);\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 { Alert, Button, Modal, ModalBody, ModalFooter, ModalHeader } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nexport interface IInvoiceErrorProps extends IComponentProps {\n messageHeader?: string;\n errorMessage?: string;\n otherError?: string;\n showError: boolean;\n payInvoiceErrorModalOpen: boolean;\n\n errorDialogHeader: string;\n errorDialogBodyErrorTitle: string;\n errorDialogBodyErrorDescription: string;\n errorDialogFooterGoToCartButtonText: string;\n errorDialogFooterCancelButtonText: string;\n cartUrl: string;\n\n setPayInvoiceErrorModalClose(): void;\n}\n\nexport interface IInvoiceErrorComponent extends IComponent {}\n\nexport const InvoiceError: React.FC = ({\n messageHeader,\n errorMessage,\n otherError,\n showError,\n payInvoiceErrorModalOpen,\n errorDialogHeader,\n errorDialogBodyErrorTitle,\n errorDialogBodyErrorDescription,\n errorDialogFooterGoToCartButtonText,\n errorDialogFooterCancelButtonText,\n cartUrl,\n setPayInvoiceErrorModalClose\n}) => {\n const errorMessages: (string | undefined)[] = [];\n\n if (otherError) {\n errorMessages.push(otherError);\n } else {\n errorMessages.push(errorMessage);\n }\n\n const className = 'msc-pay-invoice-error-dialog';\n\n return (\n <>\n 0} color='danger' assertive aria-label={messageHeader}>\n \n {errorMessages.map((message, index) => {\n return (\n
\n {message}\n
\n );\n })}\n
\n \n \n {errorDialogHeader}\n \n \n
\n
{errorDialogBodyErrorTitle}
\n
{errorDialogBodyErrorDescription}
\n
\n
\n \n \n {errorDialogFooterGoToCartButtonText}\n \n \n {errorDialogFooterCancelButtonText}\n \n \n
\n \n );\n};\n\n// @ts-expect-error\nexport const InvoiceErrorComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoiceError',\n { component: InvoiceError }\n);\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","/*--------------------------------------------------------------\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 * as React from 'react';\r\nimport MsDyn365 from \"@msdyn365-commerce/core\";\r\nimport { IInvoicesListViewProps } from '@msdyn365-commerce-modules/invoice/src/modules/invoices-list/./invoices-list';\r\n\r\nexport const InvoiceListView: React.FC = props => {\r\n const { header, filter, content, invoiceRequestModal, pagination } = props;\r\n if (MsDyn365.isBrowser) {\r\n const linksElements = document.querySelectorAll('a.msc-invoices-list__container__content__table__row__open-invoice');\r\n console.log(linksElements);\r\n linksElements.forEach(l => l.setAttribute('href', '#'));\r\n }\r\n return (\r\n \r\n {header}\r\n {invoiceRequestModal}\r\n {filter}\r\n {content}\r\n {pagination}\r\n \r\n );\r\n};\r\n\r\nexport default InvoiceListView;\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 { 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 { getUrlSync, IActionContext } from '@msdyn365-commerce/core';\nimport { getCartState } from '@msdyn365-commerce/global-state';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { IInvoiceErrorState } from '../invoices-list';\nimport { IPayableInvoice } from './invoice-data';\n\nexport type ICartActionFailureReason = 'EMPTYINPUT' | 'CARTACTIONFAILED';\nexport interface IAddInvoicesToCartFailureResult {\n failureReason: ICartActionFailureReason;\n}\n\nexport const payInvoices = async (\n invoices: IPayableInvoice[],\n actionContext: IActionContext,\n onError: (errorState: IInvoiceErrorState) => void\n) => {\n const invoicesToAdd: string[] = invoices.filter(invoice => invoice.canBePaid).map(invoice => invoice.id);\n\n if (!ArrayExtensions.hasElements(invoicesToAdd)) {\n onError({ errorMessage: '', errorReason: { failureReason: 'EMPTYINPUT' } });\n return;\n }\n\n const cartState = await getCartState(actionContext);\n const result = await cartState.addInvoicesToCart({ invoiceIds: invoicesToAdd });\n\n if (result.status !== 'SUCCESS') {\n onError({\n errorMessage: '',\n errorReason: { failureReason: 'CARTACTIONFAILED' },\n otherError: result.errorDetails?.LocalizedMessage,\n errorCode: result.errorDetails?.ErrorResourceId\n });\n return;\n }\n\n const cartUrl = getUrlSync('cart', actionContext);\n if (cartUrl) {\n window?.location.assign(cartUrl);\n }\n};\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","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 { IComponent, IComponentProps, ICoreContext, IDateFormatOptions, isOboRequest, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { IInvoiceErrorState, IPayInvoiceResources, PayInvoiceComponent } from '@msdyn365-commerce-modules/invoice';\nimport React from 'react';\n\nimport { InvoiceDetailsModel } from '../helpers/invoice-data';\n\nexport interface IInvoiceDetailsHeaderData {\n invoiceDetails: InvoiceDetailsModel;\n}\n\nexport interface IInvoiceDetailsHeaderResources extends IPayInvoiceResources {\n invoiceOrderItem: string;\n invoiceOrderItems: string;\n invoiceIdLabel: string;\n invoicePlacedByLabel: string;\n invoiceAmountDueText: string;\n invoicePaymentDueDateText: string;\n}\n\nexport interface IInvoiceDetailsHeaderProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n resources: IInvoiceDetailsHeaderResources;\n onError?(errorState: IInvoiceErrorState, reference?: React.RefObject): void;\n}\n\nexport interface IInvoiceDetailsHeaderComponent extends IComponent {}\n\nconst formatShortDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'numeric', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\nconst formatLongDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\nconst formatAmount = (context: ICoreContext, amount: number | undefined, currencyCode: string | undefined) => {\n if (amount === undefined) {\n return '';\n }\n return context.cultureFormatter.formatCurrency(amount, currencyCode);\n};\n\nconst InvoiceDetailsHeader: React.FC = (props: IInvoiceDetailsHeaderProps): JSX.Element => {\n const {\n className,\n data: { invoiceDetails },\n resources,\n onError\n } = props;\n\n const invoiceNumberText = resources.invoiceIdLabel.replace('{0}', invoiceDetails.id);\n\n const invoiceOrderItemsText =\n invoiceDetails.lines.length === 1\n ? resources.invoiceOrderItem\n : resources.invoiceOrderItems.replace('{0}', invoiceDetails.lines.length.toString());\n\n const invoiceInfoContainerClassName = `${className}__invoice-info-container`;\n const orderInfoContainerClassName = `${invoiceInfoContainerClassName}__order-info-container`;\n const orderInfoClassName = `${orderInfoContainerClassName}__order-info`;\n const orderMainInfoClassName = `${orderInfoClassName}__main-info`;\n const orderDetailsClassName = `${orderInfoClassName}__details`;\n `${className}__actions`;\n const actionsClassName = `${className}__actions`;\n const amountSummaryClassName = `${invoiceInfoContainerClassName}__amount-summary`;\n const orderDate = formatShortDate(props.context, invoiceDetails.invoiceDate);\n\n const dueDate = formatLongDate(props.context, invoiceDetails.dueDate);\n const dueDateText = resources.invoicePaymentDueDateText.replace('{0}', dueDate);\n const isOnBehalfOfRequest = isOboRequest(props.context.request);\n\n return (\n
\n
{invoiceNumberText}
\n
\n
\n
\n
\n
\n {resources.invoicePlacedByLabel}\n {invoiceDetails.customerName}\n
\n
\n
\n
{orderDate}
\n
{invoiceOrderItemsText}
\n
\n
\n
\n
\n
{resources.invoiceAmountDueText}
\n
\n {formatAmount(props.context, invoiceDetails.amountDue, invoiceDetails.currencyCode)}\n
\n
{dueDateText}
\n
\n
\n
\n \n
\n
\n );\n};\n\nexport const InvoiceDetailsHeaderComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoiceDetailsHeaderComponent\n>('InvoiceDetailsHeaderComponent', { component: InvoiceDetailsHeader });\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { ArrayExtensions, ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport classnames from 'classnames';\nimport React from 'react';\n\nimport { IInvoicePaymentDetails } from '../helpers/invoice-data';\n\nexport interface IInvoiceDetailsPaymentDetailsData {\n invoicePaymentDetails: IInvoicePaymentDetails;\n}\n\nexport interface IInvoiceDetailsPaymentDetailsResources {\n invoicePaymentDiscounts: string;\n invoicePaymentSubtotal: string;\n invoicePaymentCharges: string;\n invoicePaymentTax: string;\n invoicePaymentInvoiceTotal: string;\n}\n\nexport interface IInvoiceDetailsPaymentDetailsProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n resources: IInvoiceDetailsPaymentDetailsResources;\n}\n\nexport interface IInvoiceDetailsPaymentDetailsComponent extends IComponent {}\n\ninterface IInvoicePaymentLineProps {\n label: string;\n value: number;\n className: string;\n}\n\nconst InvoiceDetailsPaymentDetails: React.FC = (\n props: IInvoiceDetailsPaymentDetailsProps\n): JSX.Element | null => {\n const {\n className,\n data: { invoicePaymentDetails },\n resources\n } = props;\n\n const lineClassName = `${className}__line`;\n\n const lines: IInvoicePaymentLineProps[] = [];\n if (!ObjectExtensions.isNullOrUndefined(invoicePaymentDetails.totalDiscount)) {\n lines.push({\n label: resources.invoicePaymentDiscounts,\n value: invoicePaymentDetails.totalDiscount,\n className: `${lineClassName}-total-discount`\n });\n }\n if (!ObjectExtensions.isNullOrUndefined(invoicePaymentDetails.subtotal)) {\n lines.push({\n label: resources.invoicePaymentSubtotal,\n value: invoicePaymentDetails.subtotal,\n className: `${lineClassName}-subtotal`\n });\n }\n if (!ObjectExtensions.isNullOrUndefined(invoicePaymentDetails.totalCharges)) {\n lines.push({\n label: resources.invoicePaymentCharges,\n value: invoicePaymentDetails.totalCharges,\n className: `${lineClassName}-total-charges`\n });\n }\n if (!ObjectExtensions.isNullOrUndefined(invoicePaymentDetails.totalTax)) {\n lines.push({\n label: resources.invoicePaymentTax,\n value: invoicePaymentDetails.totalTax,\n className: `${lineClassName}-total-tax`\n });\n }\n if (!ObjectExtensions.isNullOrUndefined(invoicePaymentDetails.totalAmount)) {\n lines.push({\n label: resources.invoicePaymentInvoiceTotal,\n value: invoicePaymentDetails.totalAmount,\n className: `${lineClassName}-total-amount`\n });\n }\n\n if (!ArrayExtensions.hasElements(lines)) {\n return null;\n }\n\n return (\n
\n {lines.map(line => {\n return (\n
\n
{line.label}
\n
\n {props.context.cultureFormatter.formatCurrency(line.value, invoicePaymentDetails.currencyCode)}\n
\n
\n );\n })}\n
\n );\n};\n\nexport const InvoiceDetailsPaymentDetailsComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoiceDetailsPaymentDetailsComponent\n>('InvoiceDetailsPaymentDetailsComponent', { component: InvoiceDetailsPaymentDetails });\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponent, IComponentProps, ICoreContext, IImageSettings, Image, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { SalesInvoiceLine } from '@msdyn365-commerce/retail-proxy';\nimport { getFallbackImageUrl, getProductPageUrlSync, ObjectExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport React from 'react';\n\nimport { IInvoiceProductLine, InvoiceDetailsModel } from '../helpers/invoice-data';\n\nexport interface IInvoiceDetailsProductsData {\n invoiceDetails: InvoiceDetailsModel;\n}\n\nexport interface IInvoiceDetailsProductsResources {\n invoiceProductColor: string;\n invoiceProductSize: string;\n invoiceProductStyle: string;\n invoiceQuantity: string;\n}\n\nexport interface IInvoiceDetailsProductsProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n imageSettings?: IImageSettings;\n resources: IInvoiceDetailsProductsResources;\n}\n\nexport interface IInvoiceDetailsProductsComponent extends IComponent {}\n\nconst _renderProductDimensions = (\n className: string,\n resources: IInvoiceDetailsProductsResources,\n product: SalesInvoiceLine\n): JSX.Element => {\n return (\n
\n {StringExtensions.isNullOrWhitespace(product.ColorName) ? null : (\n
{resources.invoiceProductColor.replace('{0}', product.ColorName!)}
\n )}\n {StringExtensions.isNullOrWhitespace(product.SizeName) ? null : (\n
{resources.invoiceProductSize.replace('{0}', product.SizeName!)}
\n )}\n {StringExtensions.isNullOrWhitespace(product.StyleName) ? null : (\n
{resources.invoiceProductStyle.replace('{0}', product.StyleName!)}
\n )}\n
\n );\n};\n\nconst _renderProductImage = (\n className: string,\n context: ICoreContext,\n product: IInvoiceProductLine,\n imageSettings?: IImageSettings\n): JSX.Element | null => {\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=80&h=94&m=6', w: 0, h: 0 },\n lg: { q: 'w=148&h=174&m=6', w: 0, h: 0 },\n xl: { q: 'w=148&h=174&m=6', w: 0, h: 0 }\n },\n lazyload: true,\n cropFocalRegion: true\n };\n\n if (imageSettings) {\n imageSettings.cropFocalRegion = true;\n }\n\n const fallbackImage = getFallbackImageUrl(\n product.ItemId,\n context.actionContext.requestContext.apiSettings,\n context.request.app?.config?.OmniChannelMedia\n );\n return (\n \n );\n};\n\nconst formatAmount = (context: ICoreContext, amount: number | undefined, currencyCode: string | undefined) => {\n if (amount === undefined) {\n return '';\n }\n return context.cultureFormatter.formatCurrency(amount, currencyCode);\n};\n\nconst InvoiceDetailsProducts: React.FC = (props: IInvoiceDetailsProductsProps): JSX.Element => {\n const {\n className,\n data: { invoiceDetails },\n resources\n } = props;\n\n const productLineClass = `${className}__product-line`;\n const productLineInfoContainerClass = `${productLineClass}__product-info-container`;\n const productLineDetailsClass = `${productLineInfoContainerClass}__product-details`;\n const productLineSmallDetailsClass = `${productLineDetailsClass}__small-details`;\n\n return (\n
\n {invoiceDetails.lines.map(product => {\n const quantity = product.Quantity || 1;\n\n let productUrl = '';\n if (!ObjectExtensions.isNullOrUndefined(product.ProductName) && !ObjectExtensions.isNullOrUndefined(product.ProductId)) {\n productUrl = getProductPageUrlSync(product.ProductName, product.ProductId, props.context.actionContext);\n }\n\n return (\n
\n
\n {_renderProductImage(`${productLineInfoContainerClass}__product-image`, props.context, product)}\n
\n \n {product.ProductName}\n \n
\n {_renderProductDimensions(`${productLineSmallDetailsClass}__dimensions`, resources, product)}\n
\n {formatAmount(props.context, product.Price, invoiceDetails.currencyCode)}\n
\n
\n {resources.invoiceQuantity.replace('{0}', quantity.toString())}\n
\n
\n
\n
\n
\n {formatAmount(props.context, product.NetAmount, invoiceDetails.currencyCode)}\n
\n
\n );\n })}\n
\n );\n};\n\nexport const InvoiceDetailsProductsComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoiceDetailsProductsComponent\n>('InvoiceDetailsProductsComponent', { component: InvoiceDetailsProducts });\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { InvoicePaidStatus, OrderInvoice, SalesInvoice, SalesInvoiceLine, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\nimport { IPayableInvoice } from '@msdyn365-commerce-modules/invoice';\n\nexport interface IInvoicePaymentDetails {\n totalDiscount?: number;\n subtotal?: number;\n totalCharges?: number;\n totalTax?: number;\n totalAmount?: number;\n currencyCode?: string;\n}\n\nexport interface IInvoiceProductLine extends SalesInvoiceLine {\n primaryImageUrl?: string;\n}\n\n/**\n * Represents invoice details data model.\n */\nexport class InvoiceDetailsModel implements IPayableInvoice, IInvoicePaymentDetails {\n public id: string;\n\n public invoiceDate?: Date;\n\n public customerAccountNumber?: string;\n\n public customerName?: string;\n\n public dueDate?: Date;\n\n public amountDue?: number;\n\n public status?: InvoicePaidStatus;\n\n public lines: IInvoiceProductLine[];\n\n public totalDiscount?: number;\n\n public subtotal?: number;\n\n public totalCharges?: number;\n\n public totalTax?: number;\n\n public totalAmount?: number;\n\n public currencyCode?: string;\n\n public constructor(invoice: OrderInvoice, invoiceDetails: SalesInvoice, products: SimpleProduct[]) {\n this.id = invoice.Id || '';\n this.invoiceDate = invoice.InvoiceDate ? new Date(invoice.InvoiceDate) : undefined;\n this.customerName = invoice.CustomerName;\n this.dueDate = invoice.InvoiceDueDate ? new Date(invoice.InvoiceDueDate) : undefined;\n this.amountDue = invoice.AmountBalance;\n this.status = invoice.InvoicePaidStatusValue;\n this.lines = (invoiceDetails.SalesInvoiceLine || []).map(line => {\n const productLine: IInvoiceProductLine = {\n ...line,\n primaryImageUrl: products.find(product => product.RecordId === line.ProductId)?.PrimaryImageUrl\n };\n return productLine;\n });\n\n this.totalDiscount = invoiceDetails.TotalDiscount;\n this.subtotal = invoiceDetails.InvoiceSubtotal;\n this.totalCharges = invoiceDetails.TotalCharges;\n this.totalTax = invoiceDetails.TotalTaxAmount;\n this.totalAmount = invoice.TotalAmount;\n this.currencyCode = invoice.CurrencyCode;\n }\n\n public get canBePaid(): boolean {\n return this.status !== InvoicePaidStatus.Paid;\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getUrlSync } from '@msdyn365-commerce/core';\nimport { SalesInvoiceLine, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\nimport { IInvoiceErrorState, InvoiceErrorComponent } from '@msdyn365-commerce-modules/invoice';\nimport { getSimpleProductsAction, ProductInput } from '@msdyn365-commerce-modules/retail-actions';\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { InvoiceDetailsHeaderComponent } from './components/invoice-details-header';\nimport { InvoiceDetailsPaymentDetailsComponent } from './components/invoice-details-payment-summary';\nimport { InvoiceDetailsProductsComponent } from './components/invoice-details-products';\nimport { InvoiceDetailsModel } from './helpers/invoice-data';\nimport { IInvoiceDetailsData } from './invoice-details.data';\nimport { IInvoiceDetailsProps } from './invoice-details.props.autogenerated';\n\nexport interface IInvoiceDetailsViewState {\n invoiceDetails?: InvoiceDetailsModel;\n payInvoiceErrorModalOpen?: boolean;\n errorState?: IInvoiceErrorState;\n}\n\nexport interface IInvoiceDetailsViewProps extends IInvoiceDetailsProps {\n moduleProps: IModuleProps;\n header: JSX.Element;\n products: JSX.Element;\n paymentDetails: JSX.Element;\n payInvoiceError?: JSX.Element;\n}\n\n/**\n * InvoiceDetails component.\n * @extends {React.PureComponent>}\n */\nclass InvoiceDetails extends React.PureComponent, IInvoiceDetailsViewState> {\n private static readonly _className: string = 'msc-invoice-details';\n\n public constructor(props: IInvoiceDetailsProps) {\n super(props);\n\n this.state = { errorState: { errorMessage: '', otherError: '' } };\n this._onAddToCartFailed = this._onAddToCartFailed.bind(this);\n this._setPayInvoiceErrorModalClose = this._setPayInvoiceErrorModalClose.bind(this);\n }\n\n public async componentDidMount(): Promise {\n const invoice = await this.props.data.invoice;\n const invoiceDetails = await this.props.data.invoiceDetails;\n\n const products = await this._getProducts(invoiceDetails.SalesInvoiceLine, invoiceDetails.ChannelId);\n\n const invoiceDetailsModel = new InvoiceDetailsModel(invoice, invoiceDetails, products);\n\n this.setState({\n invoiceDetails: invoiceDetailsModel,\n payInvoiceErrorModalOpen: false,\n errorState: { errorMessage: '', otherError: '' }\n });\n }\n\n public render(): JSX.Element | null {\n if (!this.state.invoiceDetails) {\n return null;\n }\n\n const header = this._renderHeader();\n const products = this._renderProducts();\n const paymentDetails = this._renderPaymentDetails();\n const payInvoiceError = this._renderInvoiceErrors();\n\n const props: IInvoiceDetailsViewProps = {\n ...(this.props as IInvoiceDetailsProps),\n moduleProps: {\n moduleProps: this.props,\n className: InvoiceDetails._className\n },\n header,\n products,\n paymentDetails,\n payInvoiceError\n };\n\n return this.props.renderView(props);\n }\n\n private async _getProducts(invoiceLines: SalesInvoiceLine[] = [], channelId?: number): Promise {\n const productInputs = invoiceLines\n .filter(product => product.ProductId)\n .map(\n product =>\n new ProductInput(\n product.ProductId!,\n this.props.context.request.apiSettings,\n channelId,\n undefined,\n this.props.context.actionContext.requestContext\n )\n );\n return getSimpleProductsAction(productInputs, this.props.context.actionContext);\n }\n\n private _renderHeader(): JSX.Element {\n const invoiceDetails = this.state.invoiceDetails!;\n return (\n \n );\n }\n\n private _renderProducts(): JSX.Element {\n const invoiceDetails = this.state.invoiceDetails!;\n const { imageSettings } = this.props.config;\n return (\n \n );\n }\n\n private _renderPaymentDetails(): JSX.Element {\n const invoiceDetails = this.state.invoiceDetails!;\n return (\n \n );\n }\n\n private _onAddToCartFailed(newErrorState: IInvoiceErrorState): void {\n const errorState = { ...newErrorState };\n errorState.errorHost = 'ADDINVOICETOCART';\n\n // check for errorcode and otherError which contains the LocalizedMessage from API\n if (\n errorState &&\n errorState.errorCode === 'Microsoft_Dynamics_Commerce_Runtime_InvoiceLineAlreadyExistsInCart' &&\n errorState.otherError\n ) {\n this.setState({ errorState: errorState });\n }\n\n this.setState({ payInvoiceErrorModalOpen: true });\n }\n\n private _setPayInvoiceErrorModalClose(): void {\n this.setState({ payInvoiceErrorModalOpen: false });\n }\n\n private _renderInvoiceErrors(): JSX.Element {\n const {\n resources: {\n payInvoiceErrorDialogHeader,\n payInvoiceErrorDialogBodyErrorTitle,\n payInvoiceErrorDialogBodyErrorDescription,\n payInvoiceErrorDialogFooterGoToCartButtonText,\n payInvoiceErrorDialogFooterCancelButtonText\n }\n } = this.props;\n\n const cartUrl = getUrlSync('cart', this.props.context.actionContext) || '';\n\n const errorClassName = `${InvoiceDetails._className}__errors`;\n\n return (\n \n );\n }\n}\n\nexport default InvoiceDetails;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport classnames from 'classnames';\nimport React from 'react';\n\nexport interface IInvoicesTableHeaderResources {\n invoicesText: string;\n invoiceNumberText: string;\n invoiceDateMobileText: string;\n invoiceDateText: string;\n invoiceUsersText: string;\n invoiceAmountText: string;\n invoiceDueDateText: string;\n invoiceAmountDueText: string;\n invoiceStatusText: string;\n invoiceActionsText: string;\n invoiceListSelectAllRadioAriaLabelText: string;\n}\n\nexport interface IInvoicesTableHeaderProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n\n isSelectedAll: boolean;\n isMobile: boolean;\n isAdmin: boolean;\n\n resources: IInvoicesTableHeaderResources;\n\n onSelectAll(isSelected: boolean): void;\n}\n\nexport interface IInvoicesTableHeaderComponent extends IComponent {}\n\nconst getDesktopHeaderCells = (props: IInvoicesTableHeaderProps, rowClassName: string, switchCheckedState: () => void) => {\n const { resources } = props;\n return (\n <>\n \n \n \n {resources.invoiceNumberText}\n {resources.invoiceDateText}\n {resources.invoiceUsersText}\n {resources.invoiceAmountText}\n {resources.invoiceDueDateText}\n {resources.invoiceAmountDueText}\n {resources.invoiceStatusText}\n {resources.invoiceActionsText}\n \n );\n};\n\nconst getMobileHeaderCells = (props: IInvoicesTableHeaderProps, rowClassName: string, switchCheckedState: () => void) => {\n const { resources } = props;\n return (\n <>\n \n \n \n {resources.invoicesText}\n {resources.invoiceDateMobileText}\n \n {` `}\n {/* Actions */}\n \n );\n};\n\nconst InvoicesTableHeader: React.FC = (props: IInvoicesTableHeaderProps): JSX.Element => {\n const rowClassName = `${props.className}__row`;\n\n const switchCheckedState = () => {\n props.onSelectAll(!props.isSelectedAll);\n };\n\n let headerCells: JSX.Element;\n if (props.isMobile) {\n headerCells = getMobileHeaderCells(props, rowClassName, switchCheckedState);\n } else {\n headerCells = getDesktopHeaderCells(props, rowClassName, switchCheckedState);\n }\n\n return (\n \n {headerCells}\n \n );\n};\n\nexport const InvoicesTableHeaderComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoicesTableHeaderComponent\n>('InvoicesTableHeaderComponent', { component: InvoicesTableHeader });\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 { 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","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport MsDyn365, {\n IComponent,\n IComponentProps,\n ICoreContext,\n IDateFormatOptions,\n isOboRequest,\n msdyn365Commerce\n} from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { getInvoiceDetailsPageUrlSync, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, format } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport React, { useState } from 'react';\n\nimport { InvoiceModel } from '../../../helpers/invoice-data';\nimport { getInvoiceStatusText, IInvoiceStatusResources } from '../../../helpers/invoice-status';\nimport { IInvoiceErrorState } from '../../../invoices-list';\nimport { IPayInvoiceResources, PayInvoiceComponent } from '../../pay-invoice-component';\nimport { RequestInvoiceButton } from '../../request-invoice-button';\n\ninterface IInvoicesTableRowData {\n invoice: InvoiceModel;\n index: number;\n customer: Customer;\n}\n\nexport interface IInvoicesTableRowResources extends IInvoiceStatusResources, IPayInvoiceResources {\n invoiceCurrentUser: string;\n invoiceViewDetailsButtonText: string;\n invoiceViewDetailsButtonAriaLabel: string;\n invoiceActionsButtonTextAriaLabel?: string;\n invoiceActionsButtonIsOnBehalfOfTextAriaLabel?: string;\n invoiceRequestButtonLabel: string;\n invoiceListSelectRadioAriaLabelText: string;\n}\n\nexport interface IInvoicesTableRowProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n isMobile: boolean;\n invoiceReferences?: React.RefObject;\n payInvoiceReferences?: React.RefObject;\n resources: IInvoicesTableRowResources;\n\n onChange(): void;\n onError?(errorState: IInvoiceErrorState, reference?: React.RefObject): void;\n onRequestInvoice?(invoice: InvoiceModel, requestInvoiceButtonReference: React.RefObject): void;\n}\n\nexport interface IInvoicesTableRowComponent extends IComponent {}\n\nconst formatAmount = (context: ICoreContext, amount: number | undefined, currencyCode: string | undefined) => {\n if (amount === undefined) {\n return '';\n }\n return context.cultureFormatter.formatCurrency(amount, currencyCode);\n};\n\nconst formatDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\n/**\n * Request specific invoice function.\n * @param props -Invoice table row props.\n * @param requestInvoiceButtonReference -Reference button.\n * @returns Call Request Invoice.\n */\nconst onRequestSpecificInvoice = (\n props: IInvoicesTableRowProps,\n requestInvoiceButtonReference: React.RefObject\n) => () => {\n props.onRequestInvoice!(props.data.invoice, requestInvoiceButtonReference);\n};\n\nconst getDesktopRowCells = (props: IInvoicesTableRowProps, onSelectLine: () => void) => {\n const {\n data: { invoice, customer }\n } = props;\n\n const isCurrentUser =\n !StringExtensions.isNullOrWhitespace(customer.AccountNumber) && customer.AccountNumber === invoice.customerAccountNumber;\n\n const linkToInvoiceDetails = getInvoiceDetailsPageUrlSync(props.data.invoice.id, props.context.actionContext);\n const invoiceRowArialabel = format(props.resources.invoiceListSelectRadioAriaLabelText, invoice.id);\n return (\n <>\n \n \n \n \n \n {invoice.id}\n \n \n \n {formatDate(props.context, invoice.invoiceDate)}\n \n \n {invoice.customerName}\n {isCurrentUser ? {props.resources.invoiceCurrentUser} : null}\n \n {formatAmount(props.context, invoice.amount, invoice.currencyCode)}\n \n {formatDate(props.context, invoice.dueDate)}\n \n {formatAmount(props.context, invoice.amountDue, invoice.currencyCode)}\n \n {getInvoiceStatusText(props.resources, invoice.status)}\n \n {extraActionsPopup(props)}\n \n );\n};\n\nlet setShowPreviousActions: React.Dispatch> | undefined;\n\n/**\n * On Click view details function.\n * @param linkToInvoiceDetails -Link to invoice details.\n * @returns Go to invoice details.\n */\nconst onClickViewDetails = (linkToInvoiceDetails: string) => () => {\n if (MsDyn365.isBrowser) {\n window.location.href = linkToInvoiceDetails;\n }\n return;\n};\n\n/**\n * Toggle function.\n * @param isShowActions -Link to invoice details.\n * @param setShowActions -Link to invoice details.\n * @returns Go to invoice details.\n */\nconst toggle = (isShowActions: boolean, setShowActions: React.Dispatch>) => () => {\n const shouldShowActions = !isShowActions;\n if (shouldShowActions) {\n if (setShowPreviousActions) {\n setShowPreviousActions(false);\n }\n setShowActions(shouldShowActions);\n setShowPreviousActions = setShowActions;\n } else {\n setShowPreviousActions = undefined;\n setShowActions(shouldShowActions);\n }\n};\n\nconst extraActionsPopup = (props: IInvoicesTableRowProps): JSX.Element | null => {\n const {\n resources: {\n invoiceViewDetailsButtonAriaLabel,\n invoiceViewDetailsButtonText,\n invoiceActionsButtonTextAriaLabel,\n invoiceActionsButtonIsOnBehalfOfTextAriaLabel\n },\n data: { index }\n } = props;\n\n const [showActions, setShowActions] = useState(false);\n const isOnBehalfOfRequest = isOboRequest(props.context.request);\n\n const linkToInvoiceDetails = getInvoiceDetailsPageUrlSync(props.data.invoice.id, props.context.actionContext);\n\n const className = `${props.className}__extra-actions-cell`;\n const actionsContainerClassName = `${className}__actions-container`;\n const payInvoiceClassName = `${actionsContainerClassName}__pay-invoice`;\n return (\n
\n \n {showActions && !isOnBehalfOfRequest && (\n
\n \n {invoiceViewDetailsButtonText}\n \n \n \n
\n )}\n
\n );\n};\n\nconst getMobileRowCells = (props: IInvoicesTableRowProps, onSelectLine: () => void) => {\n const {\n data: { invoice }\n } = props;\n\n const linkToInvoiceDetails = getInvoiceDetailsPageUrlSync(props.data.invoice.id, props.context.actionContext);\n const invoiceRowArialabel = format(props.resources.invoiceListSelectRadioAriaLabelText, invoice.id);\n\n return (\n <>\n \n \n \n \n \n {invoice.id}\n \n
\n {invoice.customerName}\n \n \n {formatDate(props.context, invoice.dueDate)}\n
\n {getInvoiceStatusText(props.resources, invoice.status)}\n \n {extraActionsPopup(props)}\n \n );\n};\n\nconst InvoicesTableRow: React.FC = (props: IInvoicesTableRowProps): JSX.Element => {\n const {\n data: { invoice }\n } = props;\n\n const onSelectLine = () => {\n invoice.isSelected = !invoice.isSelected;\n props.onChange();\n };\n\n let rowCells: JSX.Element;\n if (props.isMobile) {\n rowCells = getMobileRowCells(props, onSelectLine);\n } else {\n rowCells = getDesktopRowCells(props, onSelectLine);\n }\n\n return {rowCells};\n};\n\nexport const InvoicesTableRowComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoicesTableRowComponent\n>('InvoicesTableRowComponent', { component: InvoicesTableRow });\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","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { InvoicePaidStatus, OrderInvoice } from '@msdyn365-commerce/retail-proxy';\n\nexport interface IPayableInvoice {\n readonly id: string;\n readonly canBePaid: boolean;\n}\n\n/**\n * Represents invoice data model.\n */\nexport class InvoiceModel implements IPayableInvoice {\n public id: string;\n\n public invoiceDate?: Date;\n\n public customerAccountNumber?: string;\n\n public customerName?: string;\n\n public amount?: number;\n\n public dueDate?: Date;\n\n public amountDue?: number;\n\n public status?: InvoicePaidStatus;\n\n public currencyCode?: string;\n\n public isSelected: boolean;\n\n public constructor(invoice: OrderInvoice) {\n this.id = invoice.Id || '';\n this.invoiceDate = invoice.InvoiceDate ? new Date(invoice.InvoiceDate) : undefined;\n this.customerAccountNumber = invoice.CustomerAccountNumber;\n this.customerName = invoice.CustomerName;\n this.amount = invoice.TotalAmount;\n this.dueDate = invoice.InvoiceDueDate ? new Date(invoice.InvoiceDueDate) : undefined;\n this.amountDue = invoice.AmountBalance;\n this.status = invoice.InvoicePaidStatusValue;\n this.currencyCode = invoice.CurrencyCode;\n\n this.isSelected = false;\n }\n\n public get canBePaid(): boolean {\n return this.status !== InvoicePaidStatus.Paid;\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { InvoicePaidStatus } from '@msdyn365-commerce/retail-proxy';\n\nexport interface IInvoiceStatusResources {\n invoiceStatusNone: string;\n invoiceStatusUnpaid: string;\n invoiceStatusPartiallyPaid: string;\n invoiceStatusPaid: string;\n}\n\nexport const getInvoiceStatusText = (resources: IInvoiceStatusResources, invoiceStatus: InvoicePaidStatus | undefined) => {\n switch (invoiceStatus) {\n case InvoicePaidStatus.None:\n return resources.invoiceStatusNone;\n\n case InvoicePaidStatus.Unpaid:\n return resources.invoiceStatusUnpaid;\n\n case InvoicePaidStatus.PartiallyPaid:\n return resources.invoiceStatusPartiallyPaid;\n\n case InvoicePaidStatus.Paid:\n return resources.invoiceStatusPaid;\n default:\n return '';\n }\n};\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","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nexport * from './invoice-data';\nexport * from './invoice-status';\nexport * from './pay-invoices';\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 { IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { EnumExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, Popover } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport { IInvoiceStatusResources } from '../helpers/invoice-status';\n\nexport interface IInvoicesFilterResources extends IInvoiceStatusResources {\n invoicesFilterShowAll: string;\n}\n\nexport interface IInvoicesFilterProps extends IComponentProps {\n className: string;\n disabled: boolean;\n\n resources: IInvoicesFilterResources;\n\n currentState: InvoicesFilterState;\n onFilterStateChanged(state: InvoicesFilterState): void;\n}\n\nexport enum InvoicesFilterState {\n ShowAll,\n Paid,\n PartiallyPaid,\n Unpaid\n}\n\nconst getInvoicesFilterStateResources = (filterState: InvoicesFilterState, resources: IInvoicesFilterResources): string => {\n switch (filterState) {\n case InvoicesFilterState.ShowAll:\n return resources.invoicesFilterShowAll;\n case InvoicesFilterState.Paid:\n return resources.invoiceStatusPaid;\n case InvoicesFilterState.PartiallyPaid:\n return resources.invoiceStatusPartiallyPaid;\n case InvoicesFilterState.Unpaid:\n return resources.invoiceStatusUnpaid;\n default:\n throw new Error('Failed to retrieve resource description for unknown invoices filter state.');\n }\n};\n\n/**\n * On Click function.\n * @param onStateClick -Invoice filter state function.\n * @param filterState -Invoice filter state.\n * @returns Set Invoice filter state.\n */\nconst onClickHandler = (onStateClick: (filterState: InvoicesFilterState) => void, filterState: InvoicesFilterState) => () => {\n onStateClick(filterState);\n};\n\nconst renderFilterStateItem = (\n filterState: InvoicesFilterState,\n resources: IInvoicesFilterResources,\n className: string,\n onStateClick: (filterState: InvoicesFilterState) => void\n): React.ReactNode => {\n const stateStringRepresentation = InvoicesFilterState[filterState];\n\n return (\n \n );\n};\n\nconst InvoicesFilter: React.FC = (props: IInvoicesFilterProps) => {\n const popoverRef = React.createRef();\n const [popoverState, setPopoverState] = React.useState(false);\n const togglePopover = React.useCallback(() => {\n setPopoverState(!popoverState);\n }, [popoverState]);\n\n const [filterState, setFilterState] = React.useState(props.currentState);\n\n const onFilterStateClick = (clickedState: InvoicesFilterState) => {\n setFilterState(clickedState);\n setPopoverState(false);\n props.onFilterStateChanged(clickedState);\n };\n\n return (\n
\n \n {getInvoicesFilterStateResources(filterState, props.resources)}\n \n \n {EnumExtensions.getEnumValues(InvoicesFilterState).map(state => {\n return renderFilterStateItem(state, props.resources, props.className, onFilterStateClick);\n })}\n \n
\n );\n};\n\nexport const InvoicesFilterComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IInvoicesFilterProps\n>('InvoicesFilterComponent', { component: InvoicesFilter });\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