{"version":3,"sources":["webpack:///./src/themes/stemichelle/views/search.view.tsx?2542","webpack:///./src/themes/spring-valley-vineyard/views/search.view.tsx?5e43","webpack:///src/modules/product-specification/components/product-specification-table-stucture.tsx?4b07","webpack:///src/modules/product-specification/product-specification.tsx?f393","webpack:///./src/themes/spring-valley-vineyard/views/order-details.view.tsx?8520","webpack:///./src/themes/erath/views/search.view.tsx?ae24","webpack:///src/modules/cookie-compliance/components/accept-button.tsx?1709","webpack:///src/modules/cookie-compliance/components/links.tsx?807e","webpack:///src/modules/cookie-compliance/cookie-compliance.tsx?5f7e","webpack:///./src/themes/colsolare/views/search.view.tsx?4c11","webpack:///./src/themes/blend/views/search.view.tsx?4345","webpack:///./src/themes/spring-valley-vineyard/views/account-management-address.view.tsx?bcb9","webpack:///./src/themes/conn-creek/views/search.view.tsx?10cd","webpack:///./src/themes/fth-old/views/search.view.tsx?633f","webpack:///./src/themes/columbiacrest/views/search.view.tsx?5c6c","webpack:///./src/themes/north-star/views/search.view.tsx?84b3","webpack:///src/modules/product-specification/product-specification.view.tsx?bfbe","webpack:///src/modules/invoices-list/invoices-list.view.tsx?0243","webpack:///./src/themes/fth/views/search.view.tsx?1a69","webpack:///./src/Utilities/brand-code-parser.tsx?0b81","webpack:///./src/themes/emp/views/search.view.tsx?c396","webpack:///./src/themes/generazioni/views/order-details.view.tsx?35c2","webpack:///./src/themes/patzhall/views/search.view.tsx?ebe1","webpack:///./src/themes/stemichelle/views/order-details.view.tsx?b3a4","webpack:///./src/themes/generazioni/views/account-management-address.view.tsx?d0bc","webpack:///./src/themes/stagsleap/views/search.view.tsx?cc20","webpack:///./src/themes/stemichelle-new/views/search.view.tsx?b72e","webpack:///./src/themes/stemichelle/views/account-management-address.view.tsx?0cd0","webpack:///./src/themes/enoteca/views/search.view.tsx?a3a3","webpack:///./src/themes/north-star/views/account-management-address.view.tsx?67c7","webpack:///./src/themes/stagsleap/views/order-details.view.tsx?f05d","webpack:///./src/themes/columbiacrest/views/account-management-address.view.tsx?3f27","webpack:///./src/themes/intrinsic-wine-co/views/order-details.view.tsx?e680","webpack:///./src/themes/erath/views/account-management-address.view.tsx?4a6a","webpack:///./src/themes/intrinsic-wine-co/views/account-management-address.view.tsx?9e63","webpack:///./src/themes/columbiacrest/views/order-details.view.tsx?23df","webpack:///./src/modules/container-with-header/container-with-header.tsx?ee31","webpack:///./src/themes/emp/views/order-details.view.tsx?ce3b","webpack:///./src/themes/fth-old/views/order-details.view.tsx?39b6","webpack:///./src/themes/colsolare/views/account-management-address.view.tsx?a682","webpack:///./src/themes/intrinsic-wine-co/views/search.view.tsx?3bbb","webpack:///./src/modules/timeline/timeline.tsx?2149","webpack:///./src/themes/generazioni/views/search.view.tsx?be00","webpack:///./src/themes/elicit/views/search.view.tsx?2ae0","webpack:///src/modules/cookie-compliance/cookie-compliance.view.tsx?b30b","webpack:///./src/themes/north-star/views/order-details.view.tsx?a13d","webpack:///./src/themes/patzhall/views/order-details.view.tsx?1682","webpack:///./src/themes/enoteca/views/order-details.view.tsx?2854","webpack:///./src/themes/colsolare/views/order-details.view.tsx?ceb5","webpack:///./src/themes/conn-creek/views/order-details.view.tsx?9ea7","webpack:///./src/themes/patzhall/views/account-management-address.view.tsx?0f87","webpack:///src/modules/fabrikam/views/order-details.view.tsx?2a61","webpack:///./src/themes/stagsleap/views/account-management-address.view.tsx?ad59","webpack:///./src/themes/erath/views/order-details.view.tsx?495e","webpack:///./src/themes/enoteca/views/account-management-address.view.tsx?07d9","webpack:///./src/themes/elicit/views/order-details.view.tsx?f4a5","webpack:///./src/themes/fth-old/views/account-management-address.view.tsx?44f3","webpack:///src/modules/invoices-list/components/invoice-error-component.tsx?2e12","webpack:///src/modules/invoices-list/components/invoices-filter-component.tsx?759c","webpack:///src/modules/invoices-list/components/invoices-table/components/invoices-table-header-component.tsx?6874","webpack:///src/modules/invoices-list/helpers/invoice-status.ts?442a","webpack:///src/modules/invoices-list/helpers/pay-invoices.ts?f98a","webpack:///src/modules/invoices-list/components/pay-invoice-component.tsx?41f4","webpack:///src/modules/invoices-list/components/invoices-table/components/invoices-table-row-component.tsx?ba14","webpack:///src/modules/invoices-list/components/invoices-table/invoices-table-component.tsx?9105","webpack:///src/modules/invoices-list/components/make-payment-component.tsx?c79a","webpack:///src/modules/invoices-list/helpers/invoice-data.ts?6271","webpack:///src/modules/invoices-list/invoices-list.tsx?ba10","webpack:///./src/themes/conn-creek/views/account-management-address.view.tsx?9a81"],"names":["_renderForm","form","SearchForm","FormWrapper","React","Node","Object","submitBtn","input","cancelBtn","_renderKeywordSuggestions","KeywordSuggest","UlKeyword","keywordSuggestions","text","map","_renderProductSuggestions","ProductSuggest","UlProduct","productSuggestions","title","items","item","index","LiProduct","key","id","AProduct","thumbnail","price","className","_renderCategorySuggestions","CategorySuggest","UlCategory","categorySuggestions","SearchView","props","Search","AutoSuggestAriaLabel","AutoSuggestAriaLabelText","searchText","AutoSuggest","autosuggestCategory","autosuggestKeyword","autosuggestProduct","label","Module","length","ProductSpecificationTableRow","productName","cellData","scope","dangerouslySetInnerHTML","getRichTextHtml","ProductSpecification","constructor","handleHeadingChange","event","this","config","heading","target","value","context","data","telemetry","reaction","product","result","RecordId","actionInput","AttributesForSelectedVariantInput","actionContext","requestContext","apiSettings","channelId","getAttributesForSelectedVariant","catch","error","warning","debug","render","e","productSpecificationData","viewProps","moduleProps","classnames","ProductSpecificationTableProps","tag","ProductSpecificationTableBodyProps","Msdyn365","editProps","onEdit","request","productSpecificationResult","_createTableBody","renderView","content","_renderProductCell","Name","DataTypeValue","_renderCurrencyCell","_renderDateTimeCell","_renderDecimalCell","_renderIntegerCell","_renderTextCell","_renderTrueFalseCell","CurrencyValue","undefined","CurrencyCode","DateTimeOffsetValue","toUTCString","IntegerValue","FloatValue","TextValue","BooleanValue","resources","trueValueText","falseValueText","observer","OrderDetailsOrderInfomation","orderInformationProps","salesId","createdDate","count","amount","channelReferenceId","OrderDetailsSalesLine","salesLineProps","salesLine","buyAgainButton","salesStatus","OrderDetailsGroupDelivery","deliveryProps","address","trackingInfo","OrderDetailsGroup","groupProps","delivery","salesLinesProps","salesLines","LineId","OrderDetailsGroups","groupsProps","groups","group","OrderDetailsOrderSummary","orderSummaryProps","subtotal","shipping","tax","totalAmount","earnedPoints","OrderDetailsPayment","paymentMethodsProps","methods","OrderDetailsHelp","helpProps","needHelpLabel","helpLineNumberLabel","contactNumber","OrderDetailsView","alert","loading","orderInfomation","orderSummary","payment","help","CookieComplianceAcceptButton","acceptCookiesButtonText","acceptCookiesButtonAriaLabel","telemetryContent","onClose","payLoad","getPayloadObject","attributes","getTelemetryAttributes","type","onClick","CookieComplianceLinks","_mapEditableLinks","linkdata","editableLinks","forEach","link","linkText","contentAction","etext","editableLink","ariaLabel","linkUrl","destinationUrl","openInNewTab","role","additionalProperties","onTelemetryClick","push","links","onTextChange","CookieCompliance","super","getTelemetryObject","telemetryPageName","friendlyName","handleLinkTextChange","linkIndex","actionLinks","handleContentChange","state","visible","cookieRef","_onDismiss","bind","componentDidMount","cookies","isConsentGiven","setState","acceptCookiesAriaLabel","moduleConfig","onDismiss","CookieComplianceBanner","ref","AlertProps","color","fade","Content","MsDyn365","acceptButton","setConsentCookie","location","reload","AddressShow","AddressDetail","description","AddressList","List","isShowList","Item","showItems","isShowPrimaryButton","primaryButton","editButton","Error","isShowError","message","AddressLists","ListAddress","isShowEmptyListMessage","emptyListMessage","addButton","primaryAddressList","otherAddressList","AddressAddUpdate","AddressForm","hasError","isShowSaveButton","saveButton","isShowCancelButton","cancelButton","AddressItem","AddressError","AccountManagementAddressView","AccountAddressManagement","addUpdateAddress","viewState","showAddressList","showAddOrUpdateAddress","addAddressHeading","editAddressHeading","headingText","Heading","isShowAddresList","isShowAddOrUpdateAddress","ProductSpecificationView","row","InvoiceListView","header","filter","brandCodeParser","appContext","brandCodeTable","app","currentBrandCode","slice","toLowerCase","brandFound","find","brand","brandCode","brandName","ContainerWithHeader","slots","hasSlots","contentBlock","classname","_renderHeader","_renderSlotItems","_renderLinkedTitle","href","rel","_renderTitle","headingTag","slot","line","Description","Timeline","yearPositions","yearCenter","minimalImageSettings","viewports","xs","q","w","h","lg","xl","disableLazyLoad","currentSlide","timelineItems","timelineItemTransition","_nextItem","_previousItem","_handleItemChange","timelineInterval","setInterval","_getYearPositions","currentItem","gridSettings","style","paddingTop","HEIGHT","paddingBottom","_getSelectors","class","tabIndex","image","Image","imageSettings","RichTextComponent","timelineItem","timelineYear","_handleItemTransition","_recenter","element","currentTarget","getAttribute","el","desiredPosition","container","document","getElementsByClassName","scrollTo","top","left","behavior","setTimeout","years","i","offsetTop","scrollContainer","offsetHeight","__decorate","observable","CookieComplianceView","Alert","OrderInfomation","receiptId","channelName","channelAddress","SalesLine","GroupDelivery","shippedStatusCheck","Group","deliveryType","shipment","showTimeslot","pickupProps","pickupDateTimeslot","Groups","OrderSummary","Payment","Help","InvoiceErrorComponent","msdyn365Commerce","createComponent","component","messageHeader","errorMessage","otherError","showError","errorMessages","isOpen","assertive","InvoicesFilterState","getInvoicesFilterStateResources","filterState","ShowAll","invoicesFilterShowAll","Paid","invoiceStatusPaid","PartiallyPaid","invoiceStatusPartiallyPaid","Unpaid","invoiceStatusUnpaid","InvoicesFilterComponent","popoverRef","createRef","popoverState","setPopoverState","useState","togglePopover","setFilterState","currentState","onFilterStateClick","clickedState","onFilterStateChanged","Button","innerRef","disabled","Popover","placement","toggle","EnumExtensions","getEnumValues","onStateClick","stateStringRepresentation","renderFilterStateItem","InvoicesTableHeaderComponent","rowClassName","switchCheckedState","onSelectAll","isSelectedAll","headerCells","isMobile","checked","onChange","invoicesText","invoiceDateMobileText","getMobileHeaderCells","invoiceNumberText","invoiceDateText","isAdmin","invoiceUsersText","invoiceAmountText","invoiceDueDateText","invoiceAmountDueText","invoiceStatusText","invoiceActionsText","getDesktopHeaderCells","getInvoiceStatusText","invoiceStatus","invoiceStatusNone","payInvoices","async","invoices","onError","invoicesToAdd","invoice","canBePaid","ArrayExtensions","hasElements","errorReason","failureReason","cartState","getCartState","addInvoicesToCart","invoiceIds","status","errorDetails","LocalizedMessage","cartUrl","getUrlSync","window","assign","PayInvoiceComponentActions","_event","setDisabled","errorState","PayInvoiceComponent","payInvoiceButtonAriaLabel","payInvoiceButtonText","formatAmount","currencyCode","cultureFormatter","formatCurrency","formatDate","date","year","month","day","getMobileRowCells","onSelectLine","isSelected","customerName","dueDate","invoiceViewDetailsButtonAriaLabel","invoiceViewDetailsButtonText","showActions","setShowActions","actionsContainerClassName","payInvoiceClassName","typeName","extraActionsPopup","InvoicesTableRowComponent","rowCells","customer","isCurrentUser","StringExtensions","isNullOrWhitespace","AccountNumber","customerAccountNumber","invoiceDate","IsB2bAdmin","invoiceCurrentUser","amountDue","getDesktopRowCells","isMobileView","viewport","device","Type","innerWidth","sm","md","getViewport","InvoicesTableComponent","setIsMobile","updateViewport","addEventListener","headerClassName","all","MakePaymentComponentActions","MakePaymentComponent","hasInvoices","makePaymentButtonAriaLabel","makePaymentButtonText","InvoiceModel","Id","InvoiceDate","CustomerAccountNumber","CustomerName","TotalAmount","InvoiceDueDate","AmountBalance","InvoicePaidStatusValue","InvoicesList","_updateInvoicesState","_onAddToCartFailed","_handleFilterStateChange","invoicesFilterState","isLoading","invoicesListTitle","_renderInvoicesFilter","_renderListContainer","_renderEmptyInvoiceLinesPageContent","invoicesData","_initializeWithInvoices","containerClass","actionsContainerClass","invoiceEmptyInvoiceLinesTitle","invoiceEmptyInvoiceLinesDescription","invoiceEmptyInvoiceLinesContinueShoppingButtonAriaLabel","invoiceEmptyInvoiceLinesContinueShoppingButtonText","containerHeaderClass","containerContentClass","_renderMakePayment","_renderInvoiceErrors","_renderInvoicesList","searchCriteria","InvoiceTypeValues","InvoicePaidStatusValues","getInvoices","GetInvoicesInput","then","filterClassName","tableClassName","newErrorState","errorHost","invoiceErrorInvoiceIdNotExist","invoiceErrorFailedAddInvoiceToCart","makePaymentResources","selectedInvoices","moduleId","moduleTypeName","navigationUrl","errorClassName","invoiceErrorMessageHeader"],"mappings":"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","file":"static/js/16.09c77aa9fdd68461d00e.chunk.js","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { getRichTextHtml } from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nexport interface IProductSpecificationTableRow {\n productName?: string;\n cellData?: React.ReactNode;\n className?: string;\n}\n\n// tslint:disable:react-no-dangerous-html\nexport const ProductSpecificationTableRow: React.FC = ({ productName, cellData, className}) => (\n \n \n \n \n { cellData }\n \n);\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { AttributeValue } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport classnames from 'classnames';\nimport { reaction } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\nimport getAttributesForSelectedVariant, { AttributesForSelectedVariantInput } from '../../dataActions/get-attributes-for-selected-variant';\nimport { ProductSpecificationTableRow } from './components/product-specification-table-stucture';\nimport { IProductSpecificationData } from './product-specification.data';\nimport { IProductSpecificationProps } from './product-specification.props.autogenerated';\n\nexport interface IProductSpecificationViewProps extends IProductSpecificationProps<{}> {\n ProductSpecification: IModuleProps;\n ProductSpecificationTableProps: INodeProps;\n ProductSpecificationTableBodyProps: INodeProps;\n productSpecificationResult?: (JSX.Element | null)[];\n title?: React.ReactNode;\n}\n\n/**\n *\n * ProductSpecification component\n * @extends {React.Component>}\n */\n@observer\nclass ProductSpecification extends React.Component> {\n public async componentDidMount(): Promise {\n const { context, data, telemetry } = this.props;\n\n // @ts-ignore: Compiler not reconizing condition check for function params\n reaction(\n () => (data.product.result ? data.product.result.RecordId : null),\n () => {\n if (context && data.product.result) {\n const actionInput = new AttributesForSelectedVariantInput(\n data.product.result.RecordId,\n // @ts-ignore\n +context.actionContext.requestContext.apiSettings.channelId,\n data.product.result\n );\n\n getAttributesForSelectedVariant(actionInput, this.props.context.actionContext).catch(error => {\n telemetry.warning(error);\n telemetry.debug('Unable to update attributes for Product');\n telemetry.error(error);\n });\n }\n }\n );\n }\n\n // tslint:disable-next-line:max-func-body-length\n public render(): JSX.Element | null {\n let data: IProductSpecificationData;\n\n try {\n data = this.props.data;\n } catch (e) {\n this.props.telemetry.error(`Something went wrong ------${e}`);\n return
{e}
;\n }\n\n if (!data.productSpecificationData.result || data.productSpecificationData.result.length <= 0) {\n this.props.telemetry.error('Product specification content is empty, module wont render.');\n return null;\n }\n\n const { heading, className } = this.props.config;\n const { productSpecificationData } = this.props.data;\n\n const viewProps = {\n ...this.props,\n ProductSpecification: {\n moduleProps: this.props,\n className: classnames('ms-product-specification', className)\n },\n ProductSpecificationTableProps: {\n className: classnames('ms-product-specification__table table-striped table-bordered'),\n tag: 'table'\n },\n ProductSpecificationTableBodyProps: {\n className: '',\n tag: 'tbody'\n },\n title: heading && heading.text && (\n ),\n productSpecificationResult: productSpecificationData && this._createTableBody(data)\n } as IProductSpecificationViewProps;\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => this.props.config.heading!.text = event.target.value;\n private _createTableBody(content: IProductSpecificationData): (JSX.Element | null)[] {\n return content.productSpecificationData.result!.map((product, index) => {\n const cellData: JSX.Element | null = this._renderProductCell(product);\n\n if (!cellData) {\n return null;\n }\n\n return (\n \n );\n });\n }\n\n private _renderProductCell(product: AttributeValue): JSX.Element | null {\n switch (product.DataTypeValue) {\n case 0: // none\n // Return span here instead of null so the row still shows\n return ;\n case 1: // Currency\n return this._renderCurrencyCell(product);\n case 2: // DateTime\n return this._renderDateTimeCell(product);\n case 3: // Decimal\n return this._renderDecimalCell(product);\n case 4: // Integer\n return this._renderIntegerCell(product);\n case 5: // Text\n return this._renderTextCell(product);\n case 6: // TrueFalse\n return this._renderTrueFalseCell(product);\n case 40: // Video\n this.props.telemetry.warning('Got video specification type, not supported yet so skipping line');\n return null;\n case 41: // Image\n this.props.telemetry.warning('Got image specification type, not supported yet so skipping line');\n return null;\n default:\n this.props.telemetry.warning(`Got unknown specification type ${product.DataTypeValue} so skipping line`);\n return null;\n }\n }\n\n private _renderCurrencyCell(product: AttributeValue): JSX.Element | null {\n if (product.CurrencyValue !== null && product.CurrencyValue !== undefined) {\n return (\n \n {product.CurrencyCode}\n {product.CurrencyValue}\n \n );\n }\n\n return null;\n }\n\n private _renderDateTimeCell(product: AttributeValue): JSX.Element | null {\n if (product.DateTimeOffsetValue !== null && product.DateTimeOffsetValue !== undefined && product.DateTimeOffsetValue.toUTCString) {\n return {product.DateTimeOffsetValue.toUTCString()};\n }\n\n return null;\n }\n\n private _renderIntegerCell(product: AttributeValue): JSX.Element | null {\n if (product.IntegerValue !== null && product.IntegerValue !== undefined) {\n return {product.IntegerValue};\n }\n\n return null;\n }\n\n private _renderDecimalCell(product: AttributeValue): JSX.Element | null {\n if (product.FloatValue !== null && product.FloatValue !== undefined) {\n return {product.FloatValue};\n }\n\n return null;\n }\n\n private _renderTextCell(product: AttributeValue): JSX.Element | null {\n if (product.TextValue !== null && product.TextValue !== undefined) {\n // tslint:disable-next-line\n return ;\n }\n\n return null;\n }\n\n private _renderTrueFalseCell(product: AttributeValue): JSX.Element | null {\n // TODO 20369885 setting to default value is needed to work around a platform bug where\n // config string value does not get its default value.\n if (product.BooleanValue) {\n return {this.props.resources.trueValueText ? this.props.resources.trueValueText : 'Yes'};\n } else {\n return {this.props.resources.falseValueText ? this.props.resources.falseValueText : 'No'};\n }\n }\n}\n\nexport default ProductSpecification;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { getPayloadObject, getTelemetryAttributes, IPayLoad, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface ICookieComplianceAcceptButton {\n acceptCookiesButtonText?: string;\n acceptCookiesButtonAriaLabel?: string;\n /** The telemetry content */\n telemetryContent?: ITelemetryContent;\n onClose(): void;\n}\n\nexport const CookieComplianceAcceptButton: React.FC = ({ acceptCookiesButtonText, acceptCookiesButtonAriaLabel, telemetryContent, onClose }) => {\n const payLoad: IPayLoad = getPayloadObject('click', telemetryContent!, 'accept cookies');\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n \n {acceptCookiesButtonText}\n );\n};","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport * as React from 'react';\nimport { IActionLinksData } from '../cookie-compliance.props.autogenerated';\n\nexport interface ICookieComplianceLinks {\n links: IActionLinksData[];\n requestContext: Msdyn365.IRequestContext;\n telemetryContent: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\n/**\n *\n * ContentCardLinks component\n * @extends {React.PureComponent}\n */\nexport class CookieComplianceLinks extends React.PureComponent {\n public render(): JSX.Element {\n const editableLinks = this._mapEditableLinks(this.props.links);\n return(\n \n {editableLinks && editableLinks.length ?\n \n : null\n }\n \n\n );\n }\n\n private _mapEditableLinks = (linkdata: IActionLinksData[]): Msdyn365.ILinksData[] | null => {\n if(!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n linkdata.forEach((link,index) => {\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', this.props.telemetryContent, '', '');\n const linkText = link.linkText ? link.linkText : '';\n payLoad.contentAction.etext = linkText;\n const attributes = getTelemetryAttributes(this.props.telemetryContent, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'button',\n additionalProperties: attributes,\n onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n };\n}\n\nexport default CookieComplianceLinks;","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { getTelemetryObject, IAlertProps, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as MsDyn365 from '@msdyn365-commerce/core';\nimport classnames from 'classnames';\nimport * as React from 'react';\nimport { CookieComplianceAcceptButton, CookieComplianceLinks} from './components';\nimport { ICookieComplianceConfig, ICookieComplianceProps } from './cookie-compliance.props.autogenerated';\n\nexport interface IAlertState {\n visible: boolean;\n}\n\nexport interface ICookieComplianceViewProps extends ICookieComplianceProps<{}> {\n CookieComplianceBanner: IModuleProps;\n AlertProps: IAlertProps;\n Content: INodeProps;\n text?: React.ReactNode;\n links?: React.ReactNode;\n acceptButton?: React.ReactNode;\n className: string;\n onDismiss(): void;\n}\n\n/**\n *\n * CookieCompliance component\n * @extends {React.PureComponent>}\n */\nclass CookieCompliance extends React.PureComponent, IAlertState> {\n private cookieRef: React.RefObject;\n private telemetryContent: ITelemetryContent = getTelemetryObject(this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry);\n constructor(props: ICookieComplianceProps) {\n super(props);\n this.state = {visible:false};\n this.cookieRef = React.createRef();\n this._onDismiss = this._onDismiss.bind(this);\n }\n\n public componentDidMount(): void {\n const { context } = this.props;\n\n if (context && context.request && context.request.cookies && !context.request.cookies.isConsentGiven()) {\n this.setState({visible: true});\n }\n }\n\n public render(): JSX.Element | null {\n\n const { config, context, resources, telemetry } = this.props;\n const { acceptCookiesButtonText, acceptCookiesAriaLabel } = resources;\n const { visible } = this.state;\n\n const isConsentGiven = context && context.request && context.request.cookies && context.request.cookies.isConsentGiven();\n let moduleConfig: ICookieComplianceConfig;\n\n try {\n moduleConfig = config;\n } catch(e) {\n telemetry.error(`Something went wrong while rendering the alert module ------${e}`);\n return
{e}
;\n }\n\n if (isConsentGiven && !visible) {\n this.props.context.telemetry.error('Cookie Compliance content is empty, module wont render.');\n return null;\n }\n\n const viewProps = {\n ...this.props,\n onDismiss: this._onDismiss,\n CookieComplianceBanner: {\n moduleProps: this.props,\n className: classnames('ms-cookie-compliance', moduleConfig.className),\n ref: this.cookieRef,\n },\n AlertProps: {\n className: 'ms-cookie-compliance__container',\n color: 'white',\n fade: false\n },\n Content: {\n className: 'ms-cookie-compliance__content'\n },\n text: moduleConfig.content && (\n \n ),\n links: moduleConfig.actionLinks && moduleConfig.actionLinks.length > 0 && (\n \n ),\n acceptButton: (\n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /* Handle link text change*/\n public handleLinkTextChange = (linkIndex: number) => (event: MsDyn365.ContentEditableEvent) => {\n if(this.props.config.actionLinks && this.props.config.actionLinks[linkIndex]) {\n this.props.config.actionLinks[linkIndex].linkText = event.target.value;\n }\n };\n\n /* Handle text content change*/\n public handleContentChange = (event: MsDyn365.ContentEditableEvent) => this.props.config.content = event.target.value;\n\n private _onDismiss(): void {\n const { context } = this.props;\n\n if (context && context.request && context.request.cookies) {\n context.request.cookies.setConsentCookie();\n location.reload();\n }\n this.setState({visible: false});\n }\n}\n\nexport default CookieCompliance;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n \r\n {_renderForm(form as ISearchFormViewProps, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n {form.submitBtn}\r\n
\r\n
\r\n {form.input}\r\n
\r\n {form.cancelBtn}\r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\nimport { IProductSpecificationViewProps } from './product-specification';\n\nconst ProductSpecificationView: React.FC = props => {\n const { ProductSpecification, ProductSpecificationTableProps, ProductSpecificationTableBodyProps, productSpecificationResult } = props;\n return (\n \n {props.title}\n \n \n {productSpecificationResult && productSpecificationResult.map((row) => {\n return row;\n })}\n \n \n \n );\n};\n\nexport default ProductSpecificationView;","/*!\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';\nimport { IInvoicesListViewProps } from './invoices-list';\n\nexport const InvoiceListView: React.FC = props => {\n const { header, filter, content } = props;\n\n return (\n \n {header}\n {filter}\n {content}\n \n );\n};\n\nexport default InvoiceListView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n \r\n {_renderForm(form as ISearchFormViewProps, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n {form.submitBtn}\r\n
\r\n
\r\n {form.input}\r\n
\r\n {form.cancelBtn}\r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","import { ICoreContext } from '@msdyn365-commerce/core-internal';\r\ninterface IBrandCodeProps {\r\n description?: string;\r\n appContext: ICoreContext<{\r\n // any is just matching the types here.\r\n // tslint:disable-next-line: no-any\r\n [x: string]: any;\r\n }>;\r\n}\r\n\r\ntype BrandCodeTable = {\r\n brandName: string;\r\n brandCode: string;\r\n}[];\r\n\r\n/**\r\n * for converting a brand code to a brand name\r\n *\r\n */\r\nexport function brandCodeParser({ description, appContext }: IBrandCodeProps): string {\r\n\r\n // for mocking\r\n // const brandCodeTable: BrandCodeTable = [{ brandName: '14Hands', brandCode: 'FTH' }];\r\n\r\n const brandCodeTable = appContext.app.config.brandCodeTable as BrandCodeTable;\r\n\r\n // this is a safety check to ensure that brand code table does NOT crash in local or\r\n // if brand code table is somehow not connecting right to the global config. it will\r\n // essentially act as if there are no brand codes declared - keeping how everything\r\n // looks originally\r\n if (!brandCodeTable) { return ''; }\r\n\r\n // a brand code may and may only appear in the first three characters of a string\r\n // we are lowercasing in the off-chance that the authors type them differently between\r\n // the sources\r\n const currentBrandCode = description && description.slice(0, 3).toLowerCase();\r\n const brandFound = brandCodeTable.find(brand => brand.brandCode.toLowerCase() === currentBrandCode);\r\n if (brandFound) { return brandFound.brandName; }\r\n return '';\r\n}","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton,salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./components';\r\nimport { ISearchViewProps } from '@msdyn365-commerce-modules/search/src/modules/search/./search';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n \r\n {_renderForm(form as ISearchFormViewProps, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n {form.submitBtn}\r\n
\r\n
\r\n {form.input}\r\n
\r\n {form.cancelBtn}\r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { Heading } from '@msdyn365-commerce-modules/utilities';\r\nimport { getRichTextHtml } from '@msdyn365-commerce/core';\r\nimport classname from 'classnames';\r\nimport * as React from 'react';\r\nimport { IContainerWithHeaderData } from './container-with-header.data';\r\nimport {\r\n IContainerWithHeaderConfig,\r\n IContainerWithHeaderProps,\r\n ITitleData\r\n} from './container-with-header.props.autogenerated';\r\n\r\n// ==============================================================================\r\n/**\r\n * ContainerWithHeader component\r\n * @extends {React.PureComponent>}\r\n */\r\n// ==============================================================================\r\nclass ContainerWithHeader extends React.PureComponent> {\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public render(): JSX.Element {\r\n const { config, slots } = this.props;\r\n const hasSlots = slots && slots.contentBlock && slots.contentBlock.length;\r\n\r\n return (\r\n
\r\n {config && this._renderHeader(config)}\r\n {hasSlots && this._renderSlotItems(slots.contentBlock)}\r\n
\r\n );\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderHeader(config: IContainerWithHeaderConfig): JSX.Element {\r\n return (\r\n
\r\n {config?.title && this._renderLinkedTitle(config)}\r\n {config?.text &&\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n \r\n }\r\n
\r\n );\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderLinkedTitle(config: IContainerWithHeaderConfig): JSX.Element {\r\n if (config?.link?.linkUrl?.destinationUrl) {\r\n return (\r\n \r\n {this._renderTitle(config.title!)}\r\n \r\n );\r\n } else {\r\n return this._renderTitle(config.title!);\r\n }\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderTitle(title: ITitleData): JSX.Element {\r\n return (\r\n \r\n );\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderSlotItems(items: React.ReactNode[]): JSX.Element {\r\n return (\r\n
\r\n {items.map((slot: React.ReactNode, index: number) => (\r\n \r\n {slot}\r\n \r\n ))}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default ContainerWithHeader;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/src/modules/order-details/./../..';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { ICoreContext } from '@msdyn365-commerce/core-internal';\r\nimport * as React from 'react';\r\nimport { brandCodeParser } from '../../../Utilities/brand-code-parser';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n );\r\n\r\nexport const OrderDetailsSalesLine: React.FC<{line: ISalesLine; context: ICoreContext}> = ({ line: { salesLineProps, salesLine, buyAgainButton, data }, context }) => {\r\n // tslint:disable-next-line: no-any\r\n const brandCode = brandCodeParser({ description: data.product.Description, appContext: context });\r\n return (\r\n \r\n {brandCode &&
{brandCode}
}\r\n {salesLine}\r\n {buyAgainButton}\r\n
\r\n );\r\n};\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n {heading}\r\n {count}\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC<{group: IGroup; context:ICoreContext}> = ({ group: { groupProps, delivery, salesLinesProps, salesLines }, context }) => (\r\n \r\n {delivery && }\r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n {salesLine.salesStatus}\r\n \r\n ))}\r\n \r\n )}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC<{groups: IGroups; context: ICoreContext}> = ({ groups: { groupsProps, groups }, context }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {heading}\r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups,\r\n context\r\n}) => {\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","import * as React from 'react';\r\n\r\nimport { Heading } from '@msdyn365-commerce-modules/utilities';\r\nimport { IImageSettings, Image, RichTextComponent } from '@msdyn365-commerce/core';\r\nimport { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport { ITimelineItemsData, ITimelineProps } from './timeline.props.autogenerated';\r\n\r\nconst HEIGHT:number = 400;\r\n/**\r\n *\r\n * Timeline component\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nclass Timeline extends React.Component> {\r\n\r\n // =========================================================================\r\n // OBSERVABLES AND FIELDS\r\n // =========================================================================\r\n\r\n @observable private currentSlide: number;\r\n @observable private timelineItems: ITimelineItemsData[];\r\n @observable private timelineItemTransition: string;\r\n\r\n private yearPositions: number[] = [];\r\n private yearCenter: number = 0;\r\n\r\n private minimalImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: `w=0&h=${HEIGHT}&m=6`, w: 0, h: HEIGHT },\r\n lg: { q: `w=0&h=${HEIGHT}&m=6`, w: 0, h: HEIGHT },\r\n xl: { q: `w=0&h=${HEIGHT}&m=6`, w: 0, h: HEIGHT }\r\n },\r\n disableLazyLoad: true\r\n };\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n constructor(props: ITimelineProps<{}>) {\r\n super(props);\r\n this.currentSlide = 0;\r\n this.timelineItems = props.config.timelineItems || [];\r\n this.timelineItemTransition = 'timeline-item-show';\r\n\r\n this._nextItem = this._nextItem.bind(this);\r\n this._previousItem = this._previousItem.bind(this);\r\n this._handleItemChange = this._handleItemChange.bind(this);\r\n\r\n if (props.config.timelineInterval) {\r\n setInterval(this._nextItem, props.config.timelineInterval);\r\n }\r\n }\r\n\r\n // =========================================================================\r\n // PUBLIC METHODS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public componentDidMount(): void {\r\n // Get the relative position of all items in the year scroller\r\n this._getYearPositions();\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public render(): JSX.Element | null {\r\n const { config } = this.props;\r\n if (!config.timelineItems) {\r\n return null;\r\n }\r\n\r\n const currentItem = config.timelineItems[this.currentSlide];\r\n const gridSettings = this.props.context.actionContext.requestContext.gridSettings;\r\n\r\n return (\r\n
\r\n\r\n
\r\n
\r\n {this._getSelectors}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {gridSettings && currentItem.image &&\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 METHODS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private get _getSelectors(): JSX.Element | null {\r\n return (\r\n \r\n {this.timelineItems.map((timelineItem, index) => (\r\n \r\n \r\n
\r\n ))}\r\n \r\n );\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _previousItem(): void {\r\n this._handleItemTransition();\r\n this.currentSlide = this.currentSlide > 0 ? this.currentSlide - 1 : this.timelineItems.length - 1;\r\n this._recenter();\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _nextItem(): void {\r\n this._handleItemTransition();\r\n this.currentSlide = (this.currentSlide < this.timelineItems.length - 1) ? this.currentSlide + 1 : 0;\r\n this._recenter();\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _handleItemChange(element: React.MouseEvent): void {\r\n const index = element.currentTarget.getAttribute('data-id')!;\r\n this.currentSlide = +index;\r\n this._handleItemTransition();\r\n this._recenter(element.currentTarget);\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _recenter(el?: EventTarget & HTMLDivElement): void {\r\n\r\n const desiredPosition = this.yearPositions[this.currentSlide];\r\n const container = document.getElementsByClassName('timeline-scroll-hidden').item(0);\r\n\r\n container && container.scrollTo({\r\n top: desiredPosition - this.yearCenter,\r\n left: 0,\r\n behavior: 'smooth'\r\n });\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _handleItemTransition(): void {\r\n this.timelineItemTransition = '';\r\n setTimeout(() => {\r\n this.timelineItemTransition = 'timeline-item-show';\r\n }, 0);\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _getYearPositions(): void {\r\n const years = document.getElementsByClassName('timeline-year');\r\n\r\n for (let i = 0; i < years.length; i++) {\r\n const el = years[i] as HTMLElement;\r\n this.yearPositions[i] = el.offsetTop;\r\n }\r\n\r\n const scrollContainer = document.getElementsByClassName('timeline-scroll-hidden')[0] as HTMLElement;\r\n if (scrollContainer) {\r\n this.yearCenter = scrollContainer.offsetHeight / 2;\r\n }\r\n\r\n }\r\n}\r\n\r\nexport default Timeline;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ISearchCategoryViewProps, ISearchFormViewProps, ISearchKeywordViewProps, ISearchProductViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search/dist/types/index';\r\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst SearchView: React.FC = props => {\r\n const {\r\n Search,\r\n AutoSuggestAriaLabel,\r\n AutoSuggestAriaLabelText,\r\n searchText,\r\n AutoSuggest,\r\n KeywordSuggest,\r\n ProductSuggest,\r\n CategorySuggest,\r\n UlKeyword,\r\n UlProduct,\r\n UlCategory,\r\n form,\r\n autosuggestCategory,\r\n autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label\r\n } = props;\r\n\r\n return (\r\n \r\n {label}\r\n {_renderForm(form as ISearchFormViewProps, SearchForm, FormWrapper)}\r\n \r\n {searchText && searchText.length > 0 ?\r\n {AutoSuggestAriaLabelText} : ''\r\n }\r\n {_renderKeywordSuggestions(KeywordSuggest, UlKeyword, autosuggestKeyword)}\r\n {_renderProductSuggestions(ProductSuggest, UlProduct, autosuggestProduct)}\r\n {_renderCategorySuggestions(CategorySuggest, UlCategory, autosuggestCategory)}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderForm = (form: ISearchFormViewProps, SearchForm: INodeProps, FormWrapper: INodeProps) => {\r\n return (\r\n \r\n \r\n {form.submitBtn}\r\n {form.input}\r\n {form.cancelBtn}\r\n \r\n \r\n );\r\n};\r\n\r\nconst _renderKeywordSuggestions = (\r\n KeywordSuggest: INodeProps,\r\n UlKeyword: INodeProps,\r\n keywordSuggestions?: ISearchKeywordViewProps\r\n) => {\r\n return (\r\n keywordSuggestions && (\r\n \r\n \r\n {keywordSuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nconst _renderProductSuggestions = (\r\n ProductSuggest: INodeProps,\r\n UlProduct: INodeProps,\r\n productSuggestions?: ISearchProductViewProps\r\n) => {\r\n return (\r\n productSuggestions && (\r\n \r\n \r\n {productSuggestions.title}\r\n {productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n {item.price !== 0 && (
{item.price}
)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n )\r\n );\r\n};\r\n\r\nconst _renderCategorySuggestions = (\r\n CategorySuggest: INodeProps,\r\n UlCategory: INodeProps,\r\n categorySuggestions?: ISearchCategoryViewProps\r\n) => {\r\n return (\r\n categorySuggestions && (\r\n \r\n \r\n {categorySuggestions.title}\r\n {categorySuggestions.text.map(text => {\r\n return text;\r\n })}\r\n \r\n \r\n )\r\n );\r\n};\r\n\r\nexport default SearchView;","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { Alert, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\nimport { ICookieComplianceViewProps } from './cookie-compliance';\n\nconst CookieComplianceView: React.FC = props => {\n const { CookieComplianceBanner, AlertProps, Content, acceptButton, text, links } = props;\n\n return (\n \n \n \n {text}\n {links}\n \n {acceptButton}\n \n \n );\n};\nexport default CookieComplianceView;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport {\n IGroup,\n IGroupDelivery,\n IGroups,\n IHelp,\n IOrderDetailsViewProps,\n IOrderInformation,\n IOrderSummary,\n IPaymentMethods,\n ISalesLine\n} from '@msdyn365-commerce-modules/order-management';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport const OrderInfomation: React.FC = ({\n orderInformationProps,\n salesId,\n receiptId,\n createdDate,\n count,\n amount,\n channelReferenceId,\n channelName,\n channelAddress\n}) => (\n \n {channelName}\n {channelAddress}\n {salesId}\n {receiptId}\n {createdDate}\n {count}\n {amount}\n {channelReferenceId}\n \n );\n\nexport const SalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton }) => (\n \n {salesLine}\n {buyAgainButton}\n \n);\n\nexport const GroupDelivery: React.FC = ({ deliveryProps, heading, count, trackingInfo, shippedStatusCheck }) => (\n \n {heading}\n {count}\n {shippedStatusCheck === 'shipped' ? null : trackingInfo}\n \n);\n\nexport const Group: React.FC = ({ groupProps, delivery, address, salesLinesProps, salesLines }) => (\n \n {delivery && }\n \n {salesLines && (\n \n {salesLines.map(salesLine => (\n \n {salesLine.data.deliveryType === 'ship' && salesLine.data.shipment ? salesLine.trackingInfo : null}\n \n {salesLine.salesStatus}\n \n ))}\n \n )}\n {!delivery.showTimeslot && address}\n {delivery.showTimeslot && (\n \n {address}\n {delivery.pickupDateTimeslot}\n \n )}\n \n \n);\n\nexport const Groups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group, index) => (\n \n ))}\n \n);\n\nexport const OrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\n \n {heading}\n {subtotal}\n {shipping}\n {tax}\n {totalAmount}\n {earnedPoints}\n \n);\n\nexport const Payment: React.FC = ({ paymentMethodsProps, title, methods }) => (\n \n {title}\n {methods}\n \n);\n\nexport const Help: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\n \n {needHelpLabel}\n {helpLineNumberLabel}\n {contactNumber}\n \n);\n\nconst OrderDetailsView: React.FC = ({\n moduleProps,\n heading,\n alert,\n loading,\n orderInfomation,\n orderSummary,\n payment,\n help,\n groups\n}) => {\n return (\n \n {heading}\n {alert}\n {loading}\n {orderInfomation && }\n {groups && }\n \n {orderSummary && }\n {payment && }\n \n {help && }\n \n );\n};\n\nexport default OrderDetailsView;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHelp,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/dist/types';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n}) => (\r\n \r\n {channelReferenceId}\r\n {salesId}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n \r\n);\r\n\r\nexport const OrderDetailsSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton, salesStatus }) => (\r\n \r\n {salesLine}\r\n
{salesStatus}
\r\n {buyAgainButton}\r\n
\r\n);\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, heading, count, address, trackingInfo }) => (\r\n \r\n Ship To\r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n {delivery && }\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount, earnedPoints }) => (\r\n \r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n {earnedPoints}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nexport const OrderDetailsHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n heading,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n {groups && }\r\n {orderSummary && }\r\n {payment && }\r\n {help && }\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IOrderDetailsViewProps,\r\n IOrderInformation,\r\n IOrderSummary,\r\n IPaymentMethods,\r\n ISalesLine\r\n} from '@msdyn365-commerce-modules/order-management/src/modules/order-details/./../..';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { ICoreContext } from '@msdyn365-commerce/core-internal';\r\nimport * as React from 'react';\r\nimport { brandCodeParser } from '../../../Utilities/brand-code-parser';\r\n\r\nexport const OrderDetailsOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n createdDate,\r\n channelReferenceId,\r\n count\r\n}) => (\r\n \r\n {salesId}\r\n {createdDate}\r\n {channelReferenceId}\r\n {count}\r\n \r\n );\r\n\r\nexport const OrderDetailsSalesLine: React.FC<{line: ISalesLine; context: ICoreContext}> = ({ line: { salesLineProps, salesLine, buyAgainButton, data }, context }) => {\r\n // tslint:disable-next-line: no-any\r\n const brandCode = brandCodeParser({ description: data.product.Description, appContext: context });\r\n return (\r\n \r\n {brandCode &&
{brandCode}
}\r\n {salesLine}\r\n {buyAgainButton}\r\n
\r\n );\r\n};\r\n\r\nexport const OrderDetailsGroupDelivery: React.FC = ({ deliveryProps, address, trackingInfo }) => (\r\n \r\n {address}\r\n {trackingInfo}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroup: React.FC<{group: IGroup; context:ICoreContext}> = ({ group: { groupProps, delivery, salesLinesProps, salesLines }, context }) => (\r\n \r\n {delivery && }\r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n \r\n);\r\n\r\nexport const OrderDetailsGroups: React.FC<{groups: IGroups; context: ICoreContext}> = ({ groups: { groupsProps, groups }, context }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderDetailsOrderSummary: React.FC = ({ orderSummaryProps, heading, subtotal, shipping, tax, totalAmount }) => (\r\n \r\n {heading}\r\n {subtotal}\r\n {shipping}\r\n {tax}\r\n {totalAmount}\r\n \r\n);\r\n\r\nexport const OrderDetailsPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {title}\r\n {methods}\r\n \r\n);\r\n\r\nconst OrderDetailsView: React.FC = ({\r\n moduleProps,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n groups,\r\n context\r\n}) => {\r\n return (\r\n \r\n {alert}\r\n {loading}\r\n {orderInfomation && }\r\n
\r\n {groups && }\r\n
\r\n
\r\n
\r\n {groups && }\r\n {payment && }\r\n
\r\n
\r\n {orderSummary && }\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n","import {Alert} from '@msdyn365-commerce-modules/utilities';\nimport { IComponent, IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport React from 'react';\n\nexport interface IInvoiceErrorProps extends IComponentProps {\n messageHeader: string;\n errorMessage: string;\n otherError?: string;\n showError: boolean;\n}\n\nexport interface IInvoiceErrorComponent extends IComponent {\n}\n\nexport const InvoiceError: React.FC = ({ messageHeader, errorMessage, otherError, showError }) => {\n const errorMessages: (string | undefined)[] = [];\n errorMessages.push(errorMessage);\n\n if (otherError) {\n errorMessages.push(otherError);\n }\n\n return (\n 0} color='danger' assertive={true} aria-label={messageHeader} >\n \n {errorMessages.map((message, index) => {\n return (\n
{message}
\n );\n })}\n
\n );\n};\n\n// @ts-ignore\nexport const InvoiceErrorComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoiceError',\n { component: InvoiceError }\n);","import React from 'react';\n\nimport { EnumExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, Popover } from '@msdyn365-commerce-modules/utilities';\nimport { IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\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\nconst renderFilterStateItem = (\n filterState: InvoicesFilterState,\n resources: IInvoicesFilterResources,\n className: string,\n onStateClick: (filterState: InvoicesFilterState) => void): React.ReactNode => {\n\n const stateStringRepresentation = InvoicesFilterState[filterState];\n\n const onClick = () => {\n return onStateClick(filterState);\n };\n\n return (\n \n {getInvoicesFilterStateResources(filterState, resources)}\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 = () => {\n setPopoverState(!popoverState);\n };\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 {\n EnumExtensions.getEnumValues(InvoicesFilterState).map(state => {\n return renderFilterStateItem(state, props.resources, props.className, onFilterStateClick);\n })\n }\n \n
\n );\n};\n\n// @ts-ignore\nexport const InvoicesFilterComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoicesFilterComponent',\n { component: InvoicesFilter }\n);","import { 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}\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}\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 { props.isAdmin ? {resources.invoiceUsersText} : null }\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 {/* 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 \n {headerCells}\n \n \n );\n};\n\n// @ts-ignore\nexport const InvoicesTableHeaderComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoicesTableHeaderComponent',\n { component: InvoicesTableHeader }\n);","import { 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 case InvoicePaidStatus.Unpaid:\n return resources.invoiceStatusUnpaid;\n case InvoicePaidStatus.PartiallyPaid:\n return resources.invoiceStatusPartiallyPaid;\n case InvoicePaidStatus.Paid:\n return resources.invoiceStatusPaid;\n default:\n return '';\n }\n};","import { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getUrlSync, IActionContext } from '@msdyn365-commerce/core';\nimport { getCartState } from '@msdyn365-commerce/global-state';\nimport { IInvoiceErrorState } from '../invoices-list';\nimport { InvoiceModel } from './invoice-data';\n\nexport type ICartActionFailureReason = 'EMPTYINPUT' | 'CARTACTIONFAILED';\nexport interface IAddInvoicesToCartFailureResult {\n failureReason: ICartActionFailureReason;\n}\n\nexport const payInvoices = async (invoices: InvoiceModel[], actionContext: IActionContext, onError: (errorState: IInvoiceErrorState) => void) => {\n const invoicesToAdd: string[] = invoices.filter(invoice => invoice.canBePaid).map(invoice => invoice.id!);\n\n if (!ArrayExtensions.hasElements(invoicesToAdd)) {\n return onError({ errorMessage: '', errorReason: { failureReason: 'EMPTYINPUT' } });\n }\n\n const cartState = await getCartState(actionContext);\n const result = await cartState.addInvoicesToCart({invoiceIds: invoicesToAdd});\n\n if (result.status !== 'SUCCESS') {\n return onError({\n errorMessage: '',\n errorReason: { failureReason: 'CARTACTIONFAILED'},\n otherError: result.errorDetails?.LocalizedMessage\n });\n }\n\n const cartUrl = getUrlSync('cart', actionContext);\n if (cartUrl) {\n window?.location.assign(cartUrl);\n }\n};","import { Button } from '@msdyn365-commerce-modules/utilities';\nimport { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport React, { useState } from 'react';\nimport { InvoiceModel } from '../helpers/invoice-data';\nimport { payInvoices } from '../helpers/pay-invoices';\nimport { IInvoiceErrorState } from '../invoices-list';\n\ninterface IPayInvoiceData {\n invoice: InvoiceModel;\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\n resources: IPayInvoiceResources;\n\n onError?(errorState: IInvoiceErrorState): void;\n}\n\ninterface IPayInvoiceComponent extends IComponent {\n}\n\nconst onClick = async (_event: React.MouseEvent, props: IPayInvoiceProps, setDisabled: (disabled: boolean) => void): Promise => {\n setDisabled(true);\n\n const propagateError = (errorState: IInvoiceErrorState): void => {\n if (props.onError) {\n props.onError(errorState);\n }\n setDisabled(false);\n };\n\n await payInvoices([props.data.invoice], props.context.actionContext, propagateError);\n};\n\nconst PayInvoiceComponentActions = {\n onClick: onClick\n};\n\nconst PayInvoice: React.FC = (props: IPayInvoiceProps): JSX.Element => {\n const [disabled, setDisabled] = useState(false);\n\n const onClickHandler = async (event: React.MouseEvent) => {\n await PayInvoiceComponentActions.onClick(event, props, setDisabled);\n };\n\n return (\n \n {props.resources.payInvoiceButtonText}\n \n );\n};\n\n// @ts-ignore\nexport const PayInvoiceComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'PayInvoiceComponent',\n { component: PayInvoice, ...PayInvoiceComponentActions }\n);","import { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button } from '@msdyn365-commerce-modules/utilities';\nimport { IComponent, IComponentProps, ICoreContext, IDateFormatOptions, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport classnames from 'classnames';\nimport React, { useState } from 'react';\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';\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}\n\nexport interface IInvoicesTableRowProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n isMobile: boolean;\n\n resources: IInvoicesTableRowResources;\n\n onChange(): void;\n onError?(errorState: IInvoiceErrorState): void;\n}\n\nexport interface IInvoicesTableRowComponent extends IComponent {\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 formatDate = (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 getDesktopRowCells = (props: IInvoicesTableRowProps, onSelectLine: () => void) => {\n const { data: { invoice, index, customer } } = props;\n\n const isCurrentUser = !StringExtensions.isNullOrWhitespace(customer.AccountNumber) && customer.AccountNumber === invoice.customerAccountNumber;\n const payInvoiceClassName = `${props.className}__pay-invoice`;\n\n return (\n <>\n \n \n \n {invoice.id} {/* TODO: Add redirection to the invoice details page. */}\n {formatDate(props.context, invoice.invoiceDate)}\n { customer.IsB2bAdmin ? {invoice.customerName}{ isCurrentUser ? {props.resources.invoiceCurrentUser} : null} : null }\n {formatAmount(props.context, invoice.amount, invoice.currencyCode)}\n {formatDate(props.context, invoice.dueDate)}\n {formatAmount(props.context, invoice.amountDue, invoice.currencyCode)}\n {getInvoiceStatusText(props.resources, invoice.status)}\n \n \n \n \n );\n};\n\nconst extraActionsPopup = (props: IInvoicesTableRowProps): JSX.Element | null => {\n const { resources: { invoiceViewDetailsButtonAriaLabel, invoiceViewDetailsButtonText }, data: { index } } = props;\n\n const [showActions, setShowActions ] = useState(false);\n\n const onClickViewDetails = () => {\n // TODO: Add redirection to the invoice details page.\n return;\n };\n\n const toggle = (event: React.MouseEvent) => {\n setShowActions(!showActions);\n };\n\n const className = `${props.className}__extra-actions-cell`;\n const actionsContainerClassName = `${className}__actions-container`;\n const payInvoiceClassName = `${actionsContainerClassName}__pay-invoice`;\n\n return (\n
\n {\n \n
\n }\n
\n );\n};\n\nconst getMobileRowCells = (props: IInvoicesTableRowProps, onSelectLine: () => void) => {\n const { data: { invoice } } = props;\n\n return (\n <>\n \n \n \n \n {invoice.id} {/* TODO: Add redirection to the invoice details page. */}\n
\n {invoice.customerName}\n \n \n {formatDate(props.context, invoice.dueDate)}\n
\n {getInvoiceStatusText(props.resources, invoice.status)}\n \n \n {extraActionsPopup(props)}\n \n \n );\n};\n\nconst InvoicesTableRow: React.FC = (props: IInvoicesTableRowProps): JSX.Element => {\n const { data: { invoice } } = 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 (\n \n {rowCells}\n \n );\n};\n\n// @ts-ignore\nexport const InvoicesTableRowComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoicesTableRowComponent',\n { component: InvoicesTableRow }\n);","import { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { IComponent, IComponentProps, ICoreContext, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport React, { useState } from 'react';\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\n// tslint:disable-next-line:no-empty-interface\nexport interface IInvoicesTableResources extends IInvoicesTableHeaderResources, IInvoicesTableRowResources {\n}\n\nexport interface IInvoicesTableProps extends IComponentProps {\n context: ICoreContext;\n className: string;\n\n resources: IInvoicesTableResources;\n\n onChange(): void;\n onError?(errorState: IInvoiceErrorState): void;\n}\n\nexport interface IInvoicesTableComponent extends IComponent {\n}\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 } else {\n return 'xl';\n }\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\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 const onSelectAll = (isSelected: boolean) => {\n props.data.invoices.forEach((invoice) => {\n invoice.isSelected = isSelected;\n });\n props.onChange();\n };\n\n return (\n \n invoice.isSelected)}\n isMobile={isMobile}\n isAdmin={props.data.customer.IsB2bAdmin || false}\n onSelectAll={onSelectAll}\n resources={props.resources}\n data={{}}\n />\n {\n props.data.invoices.map((invoice, index) => {\n return (\n \n );\n })\n }\n
\n );\n};\n\n// @ts-ignore\nexport const InvoicesTableComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'InvoicesTableComponent',\n { component: InvoicesTable }\n);","import { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { IComponent, IComponentProps, ICoreContext, ITelemetry, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport React, { useState } from 'react';\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\n resources: IMakePaymentResources;\n\n onError?(errorState: IInvoiceErrorState): void;\n}\n\nexport interface IMakePaymentComponent extends IComponent {\n}\n\nconst onClick = async (_event: React.MouseEvent, props: IMakePaymentProps, setDisabled: (disabled: boolean) => void): Promise => {\n setDisabled(true);\n\n const propagateError = (errorState: IInvoiceErrorState): void => {\n if (props.onError) {\n props.onError(errorState);\n }\n setDisabled(false);\n };\n\n await payInvoices(props.data.invoices, props.context.actionContext, propagateError);\n};\n\nconst MakePaymentComponentActions = {\n onClick: onClick\n};\n\nconst MakePayment: React.FC = (input: IMakePaymentProps): JSX.Element => {\n const { data: { invoices } } = input;\n const hasInvoices = ArrayExtensions.hasElements(invoices.filter(invoice => invoice.canBePaid));\n const [disabled, setDisabled] = useState(false);\n\n const onClickHandler = async (event: React.MouseEvent) => {\n await MakePaymentComponentActions.onClick(event, input, setDisabled);\n };\n\n return (\n \n {input.resources.makePaymentButtonText}\n \n );\n};\n\n// @ts-ignore\nexport const MakePaymentComponent: React.FunctionComponent = msdyn365Commerce.createComponent(\n 'MakePayment',\n { component: MakePayment }\n);","import { InvoicePaidStatus, OrderInvoice } from '@msdyn365-commerce/retail-proxy';\n\n/**\n * Represents invoice data model.\n */\nexport class InvoiceModel {\n public id?: string;\n public invoiceDate?: Date;\n public customerAccountNumber?: string;\n public customerName?: string;\n public amount?: number;\n public dueDate?: Date;\n public amountDue?: number;\n public status?: InvoicePaidStatus;\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;\n this.customerAccountNumber = invoice.CustomerAccountNumber;\n this.customerName = invoice.CustomerName;\n this.amount = invoice.TotalAmount;\n this.dueDate = invoice.InvoiceDueDate;\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 * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { ArrayExtensions, getInvoices, GetInvoicesInput } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, Heading, IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport { getUrlSync } from '@msdyn365-commerce/core';\nimport { InvoicePaidStatus, InvoiceSearchCriteria, InvoiceType, OrderInvoice } from '@msdyn365-commerce/retail-proxy';\nimport classnames from 'classnames';\nimport * as React from 'react';\nimport { InvoiceErrorComponent } from './components/invoice-error-component';\nimport { InvoicesFilterComponent, InvoicesFilterState } from './components/invoices-filter-component';\nimport { InvoicesTableComponent } from './components/invoices-table/invoices-table-component';\nimport { IMakePaymentResources, MakePaymentComponent } from './components/make-payment-component';\nimport { InvoiceModel } from './helpers/invoice-data';\nimport { IAddInvoicesToCartFailureResult } from './helpers/pay-invoices';\nimport { IInvoicesListData } from './invoices-list.data';\nimport { IInvoicesListProps } from './invoices-list.props.autogenerated';\n\nexport type InvoicesListStatus = 'LOADING' | 'SUCCESS' | 'FAILED' | 'EMPTY';\nexport type InvoiceErrorHost = 'ADDINVOICETOCART';\n\nexport interface IInvoicesListViewProps extends IInvoicesListProps {\n moduleProps: IModuleProps;\n\n header: JSX.Element;\n filter: JSX.Element;\n content?: JSX.Element;\n}\n\nexport interface IInvoiceErrorState {\n errorHost?: InvoiceErrorHost;\n errorReason?: IAddInvoicesToCartFailureResult;\n errorMessage: string;\n otherError?: string;\n}\n\nexport interface IInvoicesListState {\n invoices: InvoiceModel[];\n invoicesFilterState: InvoicesFilterState;\n errorState: IInvoiceErrorState;\n isLoading: boolean;\n}\n\n/**\n * InvoicesList component\n * @extends {React.PureComponent, IInvoicesListState>}\n */\nclass InvoicesList extends React.Component, IInvoicesListState> {\n private readonly className: string = 'msc-invoices-list';\n\n constructor(props: IInvoicesListProps) {\n super(props);\n\n this._updateInvoicesState = this._updateInvoicesState.bind(this);\n this._onAddToCartFailed = this._onAddToCartFailed.bind(this);\n this._handleFilterStateChange = this._handleFilterStateChange.bind(this);\n\n this.state = {\n invoices: [],\n invoicesFilterState: InvoicesFilterState.ShowAll,\n isLoading: true,\n errorState: { errorMessage: '' }\n };\n }\n\n public render(): JSX.Element | null {\n const {\n data: { invoices, customer },\n config: { className = '' }\n } = this.props;\n\n const header = (\n \n );\n\n const viewProps: IInvoicesListViewProps = {\n ...(this.props as IInvoicesListProps),\n moduleProps: {\n moduleProps: this.props,\n className: classnames(this.className, className)\n },\n header: header,\n filter: this._renderInvoicesFilter(this.className)\n };\n\n if (!invoices || !invoices.result || invoices?.status === 'LOADING' ||\n !customer || !customer.result || customer?.status === 'LOADING') {\n return this.props.renderView(viewProps);\n }\n\n if (ArrayExtensions.hasElements(invoices.result)) {\n viewProps.content = this._renderListContainer();\n } else {\n viewProps.content = this._renderEmptyInvoiceLinesPageContent();\n }\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public async componentDidMount(): Promise {\n const invoicesData = await this.props.data.invoices;\n this._initializeWithInvoices(invoicesData);\n }\n\n private _initializeWithInvoices(invoicesData: OrderInvoice[]): void {\n const invoices = invoicesData.map(invoice => new InvoiceModel(invoice));\n this.setState({\n invoices: invoices,\n isLoading: false\n });\n }\n\n private _renderEmptyInvoiceLinesPageContent(): JSX.Element {\n const containerClass = `${this.className}__empty-lines__container`;\n const actionsContainerClass = `${containerClass}__actions`;\n return (\n
\n
\n {this.props.resources.invoiceEmptyInvoiceLinesTitle}\n
\n
\n {this.props.resources.invoiceEmptyInvoiceLinesDescription}\n
\n
\n \n {this.props.resources.invoiceEmptyInvoiceLinesContinueShoppingButtonText}\n \n
\n
\n );\n }\n\n private _renderListContainer(): JSX.Element {\n const containerClass = `${this.className}__container`;\n const containerHeaderClass = `${containerClass}__header`;\n const containerContentClass = `${containerClass}__content`;\n return (\n
\n
\n {this._renderMakePayment(containerHeaderClass)}\n
\n
\n {this._renderInvoiceErrors()}\n
\n
\n {this._renderInvoicesList(containerContentClass)}\n
\n
\n );\n }\n\n private _updateInvoicesState(): void {\n this.setState({\n invoices: this.state.invoices\n });\n }\n\n private _handleFilterStateChange(state: InvoicesFilterState): void {\n this.setState({\n invoicesFilterState: state,\n isLoading: true\n });\n\n const searchCriteria: InvoiceSearchCriteria = {\n InvoiceTypeValues: [InvoiceType.SalesOrderInvoice]\n };\n\n switch (state) {\n case InvoicesFilterState.ShowAll:\n searchCriteria.InvoicePaidStatusValues = [InvoicePaidStatus.None];\n break;\n case InvoicesFilterState.Paid:\n searchCriteria.InvoicePaidStatusValues = [InvoicePaidStatus.Paid];\n break;\n case InvoicesFilterState.PartiallyPaid:\n searchCriteria.InvoicePaidStatusValues = [InvoicePaidStatus.PartiallyPaid];\n break;\n case InvoicesFilterState.Unpaid:\n searchCriteria.InvoicePaidStatusValues = [InvoicePaidStatus.Unpaid];\n break;\n default:\n throw new Error('Failed to process unknown invoices filter state.');\n }\n\n getInvoices(new GetInvoicesInput(searchCriteria), this.props.context.actionContext).then(result => {\n this._initializeWithInvoices(result);\n });\n }\n\n private _renderInvoicesFilter(className: string): JSX.Element {\n const filterClassName = `${className}__filter`;\n return (\n \n );\n }\n\n private _renderInvoicesList(className: string): JSX.Element {\n const tableClassName = `${className}__table`;\n return (\n \n );\n }\n\n private _onAddToCartFailed(newErrorState: IInvoiceErrorState): void {\n const errorState = {...newErrorState};\n errorState.errorHost = 'ADDINVOICETOCART';\n errorState.errorMessage = newErrorState.errorReason?.failureReason === 'EMPTYINPUT' ?\n this.props.resources.invoiceErrorInvoiceIdNotExist : this.props.resources.invoiceErrorFailedAddInvoiceToCart;\n\n this.setState({errorState: errorState});\n }\n\n private _renderMakePayment(className: string): JSX.Element {\n const id = `${className}__make-payment`;\n const makePaymentResources: IMakePaymentResources = {\n makePaymentButtonText: this.props.resources.makePaymentButtonText,\n makePaymentButtonAriaLabel: this.props.resources.makePaymentButtonAriaLabel\n };\n\n let selectedInvoices = this.state.invoices.filter(invoice => invoice.isSelected);\n if (!ArrayExtensions.hasElements(selectedInvoices)) {\n selectedInvoices = this.state.invoices;\n }\n\n return (\n \n );\n }\n\n private _renderInvoiceErrors(): JSX.Element {\n const errorClassName = `${this.className}__errors`;\n return (\n \n );\n }\n}\n\nexport default InvoicesList;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Heading, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IAddressAddItem, IAddressAddUpdateProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-add';\r\nimport { IAddressList, IAddressListItem, IAddressListProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-list';\r\nimport { IAddressShowItem, IAddressShowProps } from '@msdyn365-commerce-modules/address/dist/types/common/components/address-show';\r\nimport { IAccountManagementAddressViewProps } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address';\r\nimport { IAccountManagementAddressConfig } from '@msdyn365-commerce-modules/address/dist/types/modules/account-management-address/account-management-address.props.autogenerated';\r\n\r\nconst AddressShow: React.FC = ({\r\n AddressDetail,\r\n items\r\n}) => {\r\n\r\n return (\r\n \r\n {items && items.map((item: IAddressShowItem) => {\r\n return (\r\n <>\r\n {item.description}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressList: React.FC = ({\r\n List,\r\n isShowList,\r\n heading,\r\n items\r\n}) => {\r\n\r\n if (!isShowList) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressListItem) => {\r\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton } = item;\r\n const { Error, isShowError, title, message } = error;\r\n return (\r\n \r\n {isShowError && \r\n {title}\r\n {message}\r\n }\r\n {isShowPrimaryButton && primaryButton}\r\n {editButton}\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst AddressLists: React.FC = ({\r\n ListAddress,\r\n heading,\r\n isShowEmptyListMessage,\r\n emptyListMessage,\r\n addButton,\r\n primaryAddressList,\r\n otherAddressList\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {isShowEmptyListMessage && emptyListMessage}\r\n {addButton}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst AddressAddUpdate: React.FC = ({\r\n AddressForm,\r\n heading,\r\n items,\r\n hasError,\r\n error,\r\n isShowSaveButton,\r\n saveButton,\r\n isShowCancelButton,\r\n cancelButton,\r\n}) => {\r\n\r\n return (\r\n \r\n {heading}\r\n {items && items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n {label}\r\n {alert}\r\n {input}\r\n );\r\n })}\r\n {hasError && \r\n {error.title}\r\n {error.message}\r\n }\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nconst AccountManagementAddressView: React.FC = props => {\r\n const { AccountAddressManagement, addUpdateAddress, viewState, showAddressList, showAddOrUpdateAddress } = props;\r\n\r\n // update heading in props if not provided from module\r\n if (!showAddOrUpdateAddress.heading) {\r\n // create heading component from configured values\r\n const addAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).addAddressHeading;\r\n const editAddressHeading = (AccountAddressManagement.moduleProps.config as IAccountManagementAddressConfig).editAddressHeading;\r\n const headingText = addUpdateAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n const heading = headingText && ;\r\n\r\n showAddOrUpdateAddress.heading = heading;\r\n }\r\n\r\n return (\r\n \r\n {viewState.isShowAddresList && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default AccountManagementAddressView;\r\n"],"sourceRoot":""}