{"version":3,"file":"static/js/11.89b7b7e86d5f08c1f465.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/enums/subscription-status-enum.ts?a903","webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/enums/invoice-status-enum.ts?3dba","webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/enums/invoice-period-enum.ts?e08d","webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/utils/nos-subscription-details.utils.ts?0cdc","webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/nos-subscription-details.tsx?e338","webpack://Msdyn365.Commerce.Online/./src/modules/nos-subscription-details/nos-subscription-details.view.tsx?1c2e","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/buybox.view.tsx?3610","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/checkout-billing-address.view.tsx?f61a","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/components/search.empty.tsx?8480","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/components/search.form.tsx?3aa8","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/components/search.productsuggest.tsx?dbc1","webpack://Msdyn365.Commerce.Online/./src/themes/nos/views/search.view.tsx?8e08","webpack://Msdyn365.Commerce.Online/./src/modules/accordion-item/accordion-item.tsx?36f7","webpack://Msdyn365.Commerce.Online/./src/modules/accordion-item/accordion-item.view.tsx?a302","webpack://Msdyn365.Commerce.Online/./src/modules/accordion/accordion.tsx?78b1","webpack://Msdyn365.Commerce.Online/./src/modules/accordion/accordion.view.tsx?8c7b","webpack://Msdyn365.Commerce.Online/./src/modules/aad-generic/aad-generic.tsx?c076","webpack://Msdyn365.Commerce.Online/./src/modules/aad-generic/aad-generic.view.tsx?b418","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/account-address-tile.tsx?2f8c","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/account-address-tile.view.tsx?ac91","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/components/account-address-tile-description.tsx?4911","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/components/account-address-tile-links.tsx?bee7","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/components/account-invoice-tile-description.tsx?7378","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/components/account-invoice-tile-links.tsx?81f3","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/account-invoice-tile.tsx?c17e","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/account-invoice-tile.view.tsx?0a60","webpack://Msdyn365.Commerce.Online/./src/modules/account-loyalty-tile/components/account-loyalty-tile-links.tsx?6c7f","webpack://Msdyn365.Commerce.Online/./src/modules/account-loyalty-tile/account-loyalty-tile.tsx?7f29","webpack://Msdyn365.Commerce.Online/./src/modules/account-loyalty-tile/account-loyalty-tile.view.tsx?3547","webpack://Msdyn365.Commerce.Online/./src/modules/account-loyalty-tile/components/account-loyalty-tile-description.tsx?c7bb","webpack://Msdyn365.Commerce.Online/./src/modules/account-order-templates-tile/components/account-order-templates-tile-description.tsx?a8c4","webpack://Msdyn365.Commerce.Online/./src/modules/account-order-templates-tile/components/account-order-templates-tile-links.tsx?0bcf","webpack://Msdyn365.Commerce.Online/./src/modules/account-order-templates-tile/account-order-templates-tile.tsx?4e7d","webpack://Msdyn365.Commerce.Online/./src/modules/account-order-templates-tile/account-order-templates-tile.view.tsx?a1f9","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/components/account-wishlist-tile-description.tsx?0588","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/components/account-wishlist-tile-links.tsx?f114","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/account-wishlist-tile.tsx?b721","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/account-wishlist-tile.view.tsx?095e","webpack://Msdyn365.Commerce.Online/./src/modules/organization-users-tile/components/account-organization-users-tile-description.tsx?3b33","webpack://Msdyn365.Commerce.Online/./src/modules/organization-users-tile/components/account-organization-users-tile-links.tsx?f1c7","webpack://Msdyn365.Commerce.Online/./src/modules/organization-users-tile/organization-users-tile.tsx?f5de","webpack://Msdyn365.Commerce.Online/./src/modules/organization-users-tile/organization-users-tile.view.tsx?bac2","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-button.tsx?33d4","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-error.tsx?b9c0","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-input.tsx?27a8","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-label.tsx?3142","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-loading-icon.tsx?96eb","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-loading-message.tsx?9245","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/components/sign-up-success.tsx?7f30","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/sign-up.tsx?5ad1","webpack://Msdyn365.Commerce.Online/./src/modules/sign-up/sign-up.view.tsx?08eb","webpack://Msdyn365.Commerce.Online/./src/modules/catalog-picker/catalog-picker.tsx?02aa","webpack://Msdyn365.Commerce.Online/./src/modules/catalog-picker/catalog-picker.view.tsx?1e13","webpack://Msdyn365.Commerce.Online/./src/modules/footer-item/footer-item.tsx?074a","webpack://Msdyn365.Commerce.Online/./src/modules/footer-item/footer-item.view.tsx?c5af","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-collection/interactive-feature-collection.tsx?96a6","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-collection/interactive-feature-collection.view.tsx?db52","webpack://Msdyn365.Commerce.Online/./src/modules/site-picker/site-picker.tsx?b9ec","webpack://Msdyn365.Commerce.Online/./src/modules/site-picker/site-picker.view.tsx?5319","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/media-gallery.view.tsx?7624","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/reviews-list.view.tsx?39ca"],"sourcesContent":["export enum SubscriptionStatus {\r\n ACTIVE = 0,\r\n ONHOLD = 1,\r\n LASTBILLING = 2,\r\n TERMINATED = 3,\r\n ARCHIVED = 4\r\n}\r\n","export enum InvoiceStatus {\r\n UNPAID = 0,\r\n PAID = 1\r\n}\r\n","export enum InvoicePeriod {\r\n ONETIME = 0,\r\n DAILY = 1,\r\n MONTHLY = 2,\r\n QUARTALY = 3,\r\n SEMIANNUALLY = 4,\r\n ANNULALY = 5\r\n}\r\n","import { InvoiceStatus } from '../enums/invoice-status-enum';\r\nimport { SubscriptionStatus } from '../enums/subscription-status-enum';\r\nimport { INosSubscriptionDetailsResources } from '../nos-subscription-details.props.autogenerated';\r\nimport { ICoreContext, IDateFormatOptions } from '@msdyn365-commerce/core';\r\nimport { InvoicePeriod } from '../enums/invoice-period-enum';\r\n\r\nexport const getSubscriptionStatus = (resources: INosSubscriptionDetailsResources, status?: number) => {\r\n switch (status) {\r\n case SubscriptionStatus.ACTIVE:\r\n return resources.active;\r\n case SubscriptionStatus.ARCHIVED:\r\n return resources.archived;\r\n case SubscriptionStatus.LASTBILLING:\r\n return resources.lastBilling;\r\n case SubscriptionStatus.ONHOLD:\r\n return resources.onHold;\r\n case SubscriptionStatus.TERMINATED:\r\n return resources.terminated;\r\n default:\r\n return '';\r\n }\r\n};\r\n\r\nexport const getInvoiceStatus = (resources: INosSubscriptionDetailsResources, status?: number) => {\r\n switch (status) {\r\n case InvoiceStatus.UNPAID:\r\n return resources.unpaid;\r\n case InvoiceStatus.PAID:\r\n return resources.paid;\r\n default:\r\n return '';\r\n }\r\n};\r\n\r\nexport const getInvoiceFrequency = (resources: INosSubscriptionDetailsResources, period?: number) => {\r\n switch (period) {\r\n case InvoicePeriod.ONETIME:\r\n return resources.oneTime;\r\n case InvoicePeriod.DAILY:\r\n return resources.daily;\r\n case InvoicePeriod.MONTHLY:\r\n return resources.monthly;\r\n case InvoicePeriod.QUARTALY:\r\n return resources.quartaly;\r\n case InvoicePeriod.SEMIANNUALLY:\r\n return resources.semianually;\r\n case InvoicePeriod.ANNULALY:\r\n return resources.annually;\r\n default:\r\n return '';\r\n }\r\n};\r\n\r\n/**\r\n * Formats date.\r\n * @param context - Core context.\r\n * @param date - Date to display.\r\n * @returns String value.\r\n */\r\nexport const formatDate = (context: ICoreContext, date: Date | undefined) => {\r\n if (date === undefined) {\r\n return '';\r\n }\r\n\r\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'numeric', day: 'numeric' };\r\n return context.cultureFormatter.formatDate(date, dateOptions);\r\n};\r\n\r\n/**\r\n * Get the formatted currency.\r\n * @param props - The props.\r\n * @param price - The price.\r\n * @param shouldUseFreePriceText - The shouldUseFreePriceText.\r\n * @returns The formatted currency.\r\n */\r\nexport const formatCurrency = (props: any, currency: string | undefined, price: number | undefined): string => {\r\n if (price === undefined) {\r\n return '';\r\n }\r\n\r\n return props?.context?.cultureFormatter?.formatCurrency(price, currency);\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nimport classnames from 'classnames';\r\n\r\nimport { INosSubscriptionDetailsData } from './nos-subscription-details.data';\r\nimport { INosSubscriptionDetailsProps, INosSubscriptionDetailsResources } from './nos-subscription-details.props.autogenerated';\r\nimport { Module, Node, IModuleProps, INodeProps, Modal, ModalBody, ModalFooter, ModalHeader } from '@msdyn365-commerce-modules/utilities';\r\nimport getSubscriptionDetailsAction, {\r\n GetSubscriptionDetailsInput,\r\n IGetSubscriptionDetailsData\r\n} from '../../actions/get-subscription-details.action';\r\nimport {\r\n formatCurrency,\r\n formatDate,\r\n getInvoiceFrequency,\r\n getInvoiceStatus,\r\n getSubscriptionStatus\r\n} from './utils/nos-subscription-details.utils';\r\nimport cancelSubscriptionAction, { CancelSubscriptionInput } from '../../actions/cancel-subscription.action';\r\nimport Button from 'reactstrap/lib/Button';\r\nimport changeCustomerReferenceAction, { ChangeCustomerReferenceInput } from '../../actions/change-customer-reference.action';\r\n\r\nexport interface INosSubscriptionDetailsViewProps extends INosSubscriptionDetailsProps {\r\n content: INodeProps;\r\n heading: INodeProps;\r\n billingAddress: INodeProps;\r\n contactInformation: INodeProps;\r\n relatedInvoices: INodeProps;\r\n subscriptionTotals: INodeProps;\r\n className?: string;\r\n}\r\n\r\nexport interface INosSubscriptionDetailsExtendedProps extends INosSubscriptionDetailsProps {}\r\n\r\n/**\r\n * Interface for INosSubscriptionDetailsState.\r\n */\r\nexport interface INosSubscriptionDetailsState {\r\n editCustomerReference: boolean;\r\n isCanceled: boolean;\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData;\r\n isModalOpen: boolean;\r\n customerReferenceState: string;\r\n}\r\n\r\n/**\r\n *\r\n * NosSubscriptionDetails component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass NosSubscriptionDetails extends React.PureComponent<\r\n INosSubscriptionDetailsProps,\r\n INosSubscriptionDetailsState\r\n> {\r\n private readonly customerReferenceRef: React.RefObject;\r\n\r\n public constructor(props: INosSubscriptionDetailsExtendedProps) {\r\n super(props);\r\n\r\n this.state = {\r\n editCustomerReference: false,\r\n customerReferenceState: '',\r\n isCanceled: false,\r\n subscriptionDetailsData: undefined,\r\n isModalOpen: false\r\n };\r\n\r\n this.customerReferenceRef = React.createRef();\r\n }\r\n\r\n private _initialize = async () => {\r\n const actionInput = new GetSubscriptionDetailsInput();\r\n\r\n await getSubscriptionDetailsAction(actionInput, this.props.context.actionContext).then(res => {\r\n this.setState({ subscriptionDetailsData: res });\r\n this.setState({ customerReferenceState: res.CustomerReference });\r\n this.setState({ editCustomerReference: false });\r\n });\r\n };\r\n\r\n public componentDidMount(): void {\r\n if (this.props.context.actionContext.requestContext.user.isAuthenticated) {\r\n // Initializing data props\r\n void this._initialize();\r\n }\r\n }\r\n\r\n public shouldComponentUpdate(nextProps: INosSubscriptionDetailsExtendedProps, nextState: INosSubscriptionDetailsState): boolean {\r\n if (this.state === nextState && this.props.data === nextProps.data) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\r\n\r\n public render(): JSX.Element | null {\r\n const { resources, context } = this.props;\r\n\r\n const modalContainer = {\r\n moduleProps: this.props,\r\n tag: Modal,\r\n className: 'nos-subscription-details__dialog',\r\n isOpen: true,\r\n 'aria-label': 'subscription-cancel',\r\n toggle: this.closeModal,\r\n modalTransition: { timeout: 0 },\r\n shouldUpdateFocusToFirstElement: true\r\n };\r\n\r\n const modalHeaderContainer = {\r\n tag: ModalHeader,\r\n className: 'nos-subscription-details_modal-header',\r\n toggle: this.closeModal,\r\n closeButtonTabIndex: 1\r\n };\r\n\r\n const modalFooterContainer = { tag: ModalFooter, className: 'nos-subscription-details__modal-footer' };\r\n\r\n const modalBodyContainer = { tag: ModalBody, className: 'nos-subscription-details__modal-body' };\r\n\r\n const viewProps = {\r\n ...this.props,\r\n heading: this.props.config.heading && (\r\n \r\n ),\r\n className: classnames('nos-subscription-details', this.props.config.className),\r\n content: this._renderContent(\r\n resources,\r\n context,\r\n modalContainer,\r\n modalHeaderContainer,\r\n modalFooterContainer,\r\n modalBodyContainer,\r\n this.state.subscriptionDetailsData\r\n ),\r\n billingAddress: this._renderBillingAddress(resources, this.state.subscriptionDetailsData),\r\n contactInformation: this._renderContactInformation(resources, this.state.subscriptionDetailsData),\r\n relatedInvoices: this._renderRelatedInvoices(resources, context, this.state.subscriptionDetailsData),\r\n subscriptionTotals: this._renderSubscriptionTotals(resources, this.state.subscriptionDetailsData)\r\n };\r\n return this.props.renderView(viewProps) as React.ReactElement;\r\n }\r\n\r\n private _renderContent = (\r\n resources: INosSubscriptionDetailsResources,\r\n context: any,\r\n modalContainer: IModuleProps,\r\n modalHeaderContainer: INodeProps,\r\n modalFooterContainer: INodeProps,\r\n modalBodyContainer: INodeProps,\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData\r\n ) => {\r\n const editCustomerReference = (this.state && this.state.editCustomerReference) || false;\r\n const cancel = () => {\r\n this.setState({ editCustomerReference: false });\r\n this.setState({ customerReferenceState: this.state.subscriptionDetailsData?.CustomerReference || '' });\r\n };\r\n const handlePaymentClick = () => {\r\n window.open(subscriptionDetailsData?.PaymentLinkUrl, '_blank');\r\n };\r\n return (\r\n <>\r\n {subscriptionDetailsData?.ScheduleNumber}\r\n
\r\n
{resources.subDetailsStatus}
\r\n
\r\n {getSubscriptionStatus(resources, subscriptionDetailsData?.Status)}\r\n {subscriptionDetailsData?.PaymentFailed && ` : ${resources.subDetailsPaymentFailed}`}\r\n {subscriptionDetailsData?.PaymentFailed && (\r\n handlePaymentClick()}\r\n title={resources.subDetailsPaymentLinkText}\r\n >\r\n {resources.subDetailsPaymentLinkText}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
{resources.subDetailsStartDate}
\r\n
\r\n {subscriptionDetailsData?.StartDate ? formatDate(context, new Date(subscriptionDetailsData.StartDate)) : '-'}\r\n
\r\n
\r\n
\r\n
{resources.subDetailsNextPaymentDate}
\r\n
\r\n {subscriptionDetailsData?.NextPaymentDate\r\n ? formatDate(context, new Date(subscriptionDetailsData.NextPaymentDate))\r\n : '-'}\r\n
\r\n
\r\n {subscriptionDetailsData?.PaymentMethod && (\r\n
\r\n
{resources.subDetailsPaymentMethod}
\r\n
\r\n {subscriptionDetailsData.PaymentMethod}\r\n {subscriptionDetailsData.CreditCardNumber && (\r\n <>\r\n , {subscriptionDetailsData.CreditCardTypeName} {resources.endingWith}{' '}\r\n {subscriptionDetailsData.CreditCardNumber}\r\n \r\n )}\r\n
\r\n
\r\n )}\r\n {subscriptionDetailsData && !editCustomerReference && (\r\n
\r\n
{resources.subDetailsCustomerReference}
\r\n
\r\n {subscriptionDetailsData.CustomerReference ? subscriptionDetailsData.CustomerReference : '-'}\r\n this.setState({ editCustomerReference: true })}\r\n title={resources.editButtonText}\r\n >\r\n {resources.editButtonText}\r\n \r\n
\r\n
\r\n )}\r\n {subscriptionDetailsData && editCustomerReference && (\r\n
\r\n
{resources.subDetailsCustomerReference}
\r\n
\r\n this.setState({ customerReferenceState: e.target.value })}\r\n disabled={!editCustomerReference}\r\n ref={this.customerReferenceRef}\r\n />\r\n \r\n {resources.saveBtnLabel}\r\n \r\n \r\n {resources.cancelBtnLabel}\r\n \r\n
\r\n
\r\n )}\r\n {subscriptionDetailsData?.Status === 0 && (\r\n
\r\n
{resources.subDetailsAction}
\r\n
\r\n this.openModal()}\r\n className='ms-button__secondary-light'\r\n >\r\n {resources.subDetailsCancelSubscription}\r\n \r\n {this.state.isModalOpen && (\r\n \r\n {resources.subDetailsCancelSubscription}\r\n \r\n

{resources.cancelText}

\r\n
\r\n \r\n \r\n this.cancelSubscription(subscriptionDetailsData)}\r\n className='ms-button__primary-light'\r\n >\r\n {this.state.isCanceled ? (\r\n {resources.loadingMessage}\r\n ) : (\r\n resources.toggleEnableText\r\n )}\r\n \r\n \r\n
\r\n )}\r\n
\r\n
\r\n )}\r\n \r\n );\r\n };\r\n\r\n /**\r\n * Initiate close modal.\r\n */\r\n private readonly closeModal = (): void => {\r\n this.setState({\r\n isModalOpen: false\r\n });\r\n };\r\n\r\n /**\r\n * Initiate open modal.\r\n */\r\n private readonly openModal = (): void => {\r\n this.setState({\r\n isModalOpen: true\r\n });\r\n };\r\n\r\n private cancelSubscription = async (subscriptionDetailsData?: IGetSubscriptionDetailsData) => {\r\n if (subscriptionDetailsData) {\r\n const actionInput = new CancelSubscriptionInput(subscriptionDetailsData.LineNum, subscriptionDetailsData.ScheduleNumber);\r\n this.setState({ isCanceled: true });\r\n await cancelSubscriptionAction(actionInput, this.props.context.actionContext).then(res => {\r\n if (res?.response?.value) {\r\n void this._initialize();\r\n }\r\n });\r\n }\r\n };\r\n\r\n private changeCustomerReference = async () => {\r\n const input = this.customerReferenceRef.current;\r\n const value = input?.value || '';\r\n const scheduleNumber = this.state.subscriptionDetailsData?.ScheduleNumber || '';\r\n const changeCustomerReferenceInput = new ChangeCustomerReferenceInput(scheduleNumber, value);\r\n await changeCustomerReferenceAction(changeCustomerReferenceInput, this.props.context.actionContext).then(res => {\r\n if (res?.response?.value) {\r\n void this._initialize();\r\n }\r\n });\r\n };\r\n\r\n private _renderSubscriptionTotals = (\r\n resources: INosSubscriptionDetailsResources,\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData\r\n ) => {\r\n return (\r\n \r\n

{resources.subDetailsSubscriptionTotals}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{resources.subDetailsHeaderProduct}{resources.subDetailsHeaderQuantity}{resources.subDetailsHeaderTotal}
{subscriptionDetailsData?.SubscriptionLineTotals?.ItemName}{subscriptionDetailsData?.SubscriptionLineTotals?.Quantity}{resources.subDetailsHeaderSubTotal}\r\n {formatCurrency(\r\n this.props,\r\n subscriptionDetailsData?.SubscriptionLineTotals?.CurrencyCode,\r\n Number(subscriptionDetailsData?.SubscriptionLineTotals?.SubTotalAmount)\r\n )}{' '}\r\n / {getInvoiceFrequency(resources, subscriptionDetailsData?.SubscriptionLineTotals?.Frequency)}\r\n
\r\n {resources.subDetailsVatHeaderPercent} {subscriptionDetailsData?.SubscriptionLineTotals?.VATPercantage}\r\n \r\n {formatCurrency(\r\n this.props,\r\n subscriptionDetailsData?.SubscriptionLineTotals?.CurrencyCode,\r\n Number(subscriptionDetailsData?.SubscriptionLineTotals?.VATAmount)\r\n )}\r\n
\r\n {resources.subDetailsHeaderTotal}\r\n \r\n \r\n {formatCurrency(\r\n this.props,\r\n subscriptionDetailsData?.SubscriptionLineTotals?.CurrencyCode,\r\n Number(subscriptionDetailsData?.SubscriptionLineTotals?.TotalAmount)\r\n )}{' '}\r\n / {getInvoiceFrequency(resources, subscriptionDetailsData?.SubscriptionLineTotals?.Frequency)}\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n private _renderBillingAddress = (\r\n resources: INosSubscriptionDetailsResources,\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData\r\n ) => {\r\n return (\r\n \r\n

{resources.subDetailsHeaderBillingAddress}

\r\n
{subscriptionDetailsData?.SubscriptionAddressBillTo?.Name}
\r\n
\r\n \r\n );\r\n };\r\n\r\n private _renderContactInformation = (\r\n resources: INosSubscriptionDetailsResources,\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData\r\n ) => {\r\n return (\r\n \r\n

{resources.subDetailsHeaderContact}

\r\n
\r\n {subscriptionDetailsData?.ContactGivenName} {subscriptionDetailsData?.ContactSurname}\r\n
\r\n
{subscriptionDetailsData?.ContactEmailAddress}
\r\n
\r\n );\r\n };\r\n\r\n private _renderRelatedInvoices = (\r\n resources: INosSubscriptionDetailsResources,\r\n context: any,\r\n subscriptionDetailsData?: IGetSubscriptionDetailsData\r\n ) => {\r\n return (\r\n \r\n

{resources.subDetailsRelatedInvoices}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {subscriptionDetailsData?.SubscriptionRelatedInvoices?.map(el => {\r\n if (el.InvoiceId && el.InvoiceId !== '') {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n } else {\r\n return undefined;\r\n }\r\n })}\r\n \r\n
{resources.subDetailsHeaderId}{resources.subDetailsHeaderDate}{resources.subDetailsStatus}{resources.subDetailsHeaderTotal}
{el.InvoiceId}{el.InvoiceDate && formatDate(context, new Date(el.InvoiceDate))}{getInvoiceStatus(resources, el.InvoicePaymentStatus)}\r\n \r\n {el.InvoiceTotalAmount\r\n ? formatCurrency(this.props, el.InvoiceCurrencyCode, Number(el.InvoiceTotalAmount))\r\n : '-'}\r\n \r\n
\r\n
\r\n );\r\n };\r\n}\r\n\r\nexport default NosSubscriptionDetails;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\nimport { INosSubscriptionDetailsViewProps } from './nos-subscription-details';\r\n\r\nexport default (props: INosSubscriptionDetailsViewProps) => {\r\n const { content, billingAddress, contactInformation, relatedInvoices, subscriptionTotals, heading, className } = props;\r\n\r\n return (\r\n
\r\n {heading}\r\n
{content}
\r\n
{subscriptionTotals}
\r\n
{relatedInvoices}
\r\n
\r\n
\r\n
{billingAddress}
\r\n
\r\n
\r\n
{contactInformation}
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\nimport * as React from 'react';\r\nimport { ICreateActionContext, TelemetryEvent } from '@msdyn365-commerce/core';\r\nimport { IncrementalQuantity, Module, Node, ITelemetryContent, getTelemetryAttributes, getPayloadObject, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\r\nimport { IBuyboxData, IBuyboxResources as IBuyboxExtentionResources } from '@msdyn365-commerce-modules/buybox';\r\nimport {\r\n\tIBuyboxAddToCartViewProps,\r\n\tIBuyboxCallbacks,\r\n\tIBuyboxKeyInPriceViewProps,\r\n\tIBuyboxProductConfigureDropdownViewProps,\r\n\tIBuyboxProductConfigureViewProps,\r\n\tIBuyboxProductQuantityViewProps,\r\n\tIBuyboxState\r\n} from '@msdyn365-commerce-modules/buybox/src/modules/buybox/../../common';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./buybox';\r\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { IBuyboxExtensionData } from './buybox.data';\r\nimport { IBuyboxProps as IBuyboxExtentionProps, IBuyboxProps } from '../definition-extensions/buybox.ext.props.autogenerated';\r\nimport getPriceAction, { GetGraduatedPriceInput } from '../../../actions/get-graduated-price.action';\r\n\r\n// TODO: use correct \"React way\" instead of hacky/ugly quick solution\r\nconst _fetchGraduatedPrice = async (newValue: number, state: IBuyboxState, props: IBuyboxProps) => {\r\n\tconst productId = state.productPrice?.ProductId || 0;\r\n\tconst catalogId = state.productPrice?.CatalogId || 0;\r\n\tconst actionInput = new GetGraduatedPriceInput(newValue, productId, catalogId);\r\n\r\n\tawait getPriceAction(actionInput, props.context.actionContext).then(res => {\r\n\t\tconst priceElements = document.querySelectorAll('.msc-price__actual');\r\n\t\tpriceElements.forEach(item => item.innerHTML = props.context.cultureFormatter.formatCurrency(res.ProductPrice));\r\n\t});\r\n};\r\n\r\n/**\r\n * On Change function.\r\n * @param callbacks -Callbacks.\r\n * @returns Update quantity.\r\n */\r\nconst onChangeHandler = (callbacks: IBuyboxCallbacks, context: ICreateActionContext, state: IBuyboxState, props: any) => (newValue: number): boolean => {\r\n\tif (callbacks.updateQuantity) {\r\n\r\n\t\t// Call API only if user isAuthenticated optherwise the request will fail\r\n\t\tif (context.requestContext.user.isAuthenticated) {\r\n\t\t\t// Fetch from custom API endpoint to get graduated price\r\n\t\t\t_fetchGraduatedPrice(newValue, state, props);\r\n\t\t}\r\n\r\n\t\treturn callbacks.updateQuantity(newValue);\r\n\t}\r\n\treturn true;\r\n};\r\n\r\n/**\r\n * RenderQuantity.\r\n * @param quantityComponent - QuantityComponent.\r\n * @param callbacks - Callbacks.\r\n * @param props - Props.\r\n * @param state - State.\r\n * @param extentionResources - ExtentionResources.\r\n * @param quantityLimitsMessages - QuantityLimitsMessages.\r\n * @param max - Max.\r\n * @param telemetryContent - TelemetryContent.\r\n * @param unitOfMeasure - Unit Of Measure.\r\n * @returns -- Returns.\r\n */\r\nconst renderQuantity = (\r\n\tquantityComponent: IBuyboxProductQuantityViewProps,\r\n\tcallbacks: IBuyboxCallbacks,\r\n\tprops: IBuyboxProps,\r\n\tstate: IBuyboxState,\r\n\textentionResources: IBuyboxExtentionResources,\r\n\tquantityLimitsMessages: React.ReactNode,\r\n\r\n\t// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n\tmax: number | undefined,\r\n\ttelemetryContent?: ITelemetryContent,\r\n\tunitOfMeasure?: React.ReactNode\r\n): JSX.Element => {\r\n\t// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n\tconst { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\r\n\tconst { resources } = props;\r\n\tconst { quantity } = state;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{heading}\r\n\t\t\t\t{errors}\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t{unitOfMeasure}\r\n\t\t\t{quantityLimitsMessages}\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst BuyboxView: React.FC> = props => {\r\n\tconst {\r\n\t\tModuleProps,\r\n\t\t// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n\t\tMediaGalleryContainerProps,\r\n\t\t// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n\t\tProductInfoContainerProps,\r\n\t\taddToCart,\r\n\t\tconfigure,\r\n\t\tdescription,\r\n\t\tquantity,\r\n\t\tprice,\r\n\t\ttitle,\r\n\t\tinventoryLabel,\r\n\t\tkeyInPrice,\r\n\t\t// eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n\t\tmax,\r\n\t\tunitOfMeasure,\r\n\t\tcallbacks,\r\n\t\tstate,\r\n\t\tresources,\r\n\t\tquantityLimitsMessages,\r\n\t\ttelemetryContent,\r\n\t} = props;\r\n\r\n\tconst [periodValue, setPeriodValue] = React.useState(resources.monthlyPeriodOption);\r\n\tconst period = {\r\n\t\tContainerProps: {},\r\n\t\theading: ,\r\n\t\tfrequencies: (\r\n\t\t\t\r\n\t\t),\r\n\t\tdisableSubscriptionPeriodDropdown: props.config.disableSubscriptionPeriodDropdown\r\n\t};\r\n\tlet skuText: string = props.resources.skuText;\r\n\tskuText += ` ${props.data.product.result?.ItemId}`;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{props.mediaGallery}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{title}\r\n\t\t\t\t\t\t\t{description}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{skuText}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{unitOfMeasure}\r\n\t\t\t\t\t\t\t{period && _renderPeriod(period)}\r\n\t\t\t\t\t\t\t{configure && _renderConfigure(configure)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{quantity &&\r\n\t\t\t\t\t\t\t\t\trenderQuantity(\r\n\t\t\t\t\t\t\t\t\t\tquantity,\r\n\t\t\t\t\t\t\t\t\t\tcallbacks,\r\n\t\t\t\t\t\t\t\t\t\tprops,\r\n\t\t\t\t\t\t\t\t\t\tstate,\r\n\t\t\t\t\t\t\t\t\t\tresources,\r\n\t\t\t\t\t\t\t\t\t\tquantityLimitsMessages,\r\n\t\t\t\t\t\t\t\t\t\tmax,\r\n\t\t\t\t\t\t\t\t\t\ttelemetryContent,\r\n\t\t\t\t\t\t\t\t\t\tunitOfMeasure\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{inventoryLabel}\r\n\t\t\t\t\t\t\t{keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n\t\t\t\t\t\t\t{price}\r\n\t\t\t\t\t\t\t{addToCart && _renderAddToCart(addToCart, props)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{_renderTextBlock(props.slots && props.slots.textBlocks)}\r\n\t\t\t\t\t{ArrayExtensions.hasElements(props.slots.productSpecification) ? (\r\n\t\t\t\t\t\t{props.slots.productSpecification[0]}\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\n/**\r\n * RenderTextBlock.\r\n * @param textBlock - textBlock react node array.\r\n * @returns -- Returns.\r\n */\r\nconst _renderTextBlock = (textBlock: React.ReactNode[]): JSX.Element | undefined => {\r\n\tif (!textBlock || textBlock.length === 0) {\r\n\t\treturn undefined;\r\n\t}\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t{textBlock && textBlock.length > 0\r\n\t\t\t\t? textBlock.map((textBlock: React.ReactNode, index: number) => {\r\n\t\t\t\t\treturn {textBlock};\r\n\t\t\t\t})\r\n\t\t\t\t: null}\r\n\t\t
\r\n\t);\r\n};\r\n\r\nconst _renderAddToCart = (addToCart: IBuyboxAddToCartViewProps, props: any): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToCart;\r\n\r\n\tconst payLoad = getPayloadObject('click', props.telemetryContent!, 'business-sign-up', '');\r\n\tconst payload = getPayloadObject(TelemetryEvent.AddToCart, props.telemetryContent!, '', '');\r\n\tconst attributes = getTelemetryAttributes(props.telemetryContent!, payload);\r\n\r\n\tlet businessSignUpUrl;\r\n\tif (props.context.app.routes?.businessPartnerSelection?.destinationUrl) {\r\n\t\tbusinessSignUpUrl = props.context.app.routes.businessPartnerSelection?.destinationUrl;\r\n\t} else {\r\n\t\tbusinessSignUpUrl = props.context.request.url.requestUrl.origin + (props.context.request?.sitePath ?? '');\r\n\t}\r\n\r\n\tconst _registerButton = (\r\n\t\t\r\n\t\t\t{props.resources.registerLinkText}\r\n\t\t\r\n\t);\r\n\r\n\tconst payLoadLink = getPayloadObject('click', props.telemetryContent!, 'sign-in', '');\r\n\r\n\tconst _loginButton = (\r\n\t\t\r\n\t\t\t{props.resources.loginLinkText}\r\n\t\t\r\n\t);\r\n\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{errorBlock}\r\n\t\t\t{button}\r\n\t\t\t{!props.context.request.user.isAuthenticated && (\r\n\t\t\t\t<>\r\n\t\t\t\t\t{_registerButton} { ' | '} {_loginButton}\r\n\t\t\t\t\r\n )}\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\r\n\tconst { ContainerProps, dropdowns } = configure;\r\n\r\n\treturn {dropdowns.map(_renderConfigureDropdown)};\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{heading}\r\n\t\t\t\t{errors}\r\n\t\t\t\r\n\t\t\t{select}\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderPeriod = (period: any): JSX.Element | null => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, frequencies, disableSubscriptionPeriodDropdown } = period;\r\n\tconst isDisableSubscriptionPeriodDropdown = disableSubscriptionPeriodDropdown;\r\n\r\n\tif (isDisableSubscriptionPeriodDropdown) {\r\n\t\treturn null;\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}\r\n\t\t\t{frequencies}\r\n\t\t\r\n\t);\r\n};\r\n\r\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}\r\n\t\t\t{input}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default BuyboxView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport {\r\n IAddressShowItem,\r\n IAddressShowProps,\r\n IAddressAddItem,\r\n IAddressAddUpdateProps,\r\n ICheckoutBillingAddressViewProps\r\n} from '@msdyn365-commerce-modules/address';\r\n\r\n/**\r\n * Address show component.\r\n * @param param0 - Root param.\r\n * @param param0.AddressDetail - Address detail.\r\n * @param param0.items - IAddressShowItem[].\r\n * @returns - Address Node.\r\n */\r\nconst AddressShow: React.FC = ({ AddressDetail, items }) => {\r\n return (\r\n \r\n {items.map((item: IAddressShowItem) => {\r\n return <>{item.description};\r\n })}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * Address Add Update Component.\r\n * @param param0 - Root param.\r\n * @param param0.AddressForm - Address form.\r\n * @param param0.heading - Address Heading.\r\n * @param param0.items - IAddressAddItem[].\r\n * @param param0.hasError - Boolean.\r\n * @param param0.error - IAddressError.\r\n * @param param0.isShowSaveButton - Boolean.\r\n * @param param0.saveButton - Save button.\r\n * @param param0.isShowCancelButton - Boolean.\r\n * @param param0.cancelButton - Cancel button.\r\n * @returns - AddressForm Node.\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 return (\r\n \r\n {heading}\r\n {items.map((item: IAddressAddItem) => {\r\n const { AddressItem, key, label, alert, input } = item;\r\n return (\r\n \r\n {label}\r\n {alert}\r\n {input}\r\n \r\n );\r\n })}\r\n {hasError && (\r\n \r\n {error.title}\r\n {error.message}\r\n \r\n )}\r\n {isShowSaveButton && saveButton}\r\n {isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * Checkout Billing Address View Component.\r\n * @param props - Props.\r\n * @returns - CheckoutBillingAddress Module.\r\n */\r\nconst CheckoutBillingAddressView: React.FC = props => {\r\n const { CheckoutBillingAddress, checkoutErrorRef, alert, viewState, showAddress, showAddOrUpdateAddress } = props;\r\n\r\n return (\r\n \r\n {alert}\r\n {viewState.isShowAddress && }\r\n {viewState.isShowAddOrUpdateAddress && }\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutBillingAddressView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { IImageData, Image } from '@msdyn365-commerce/core';\r\nimport { ISearchData } from '@msdyn365-commerce-modules/search';\r\nimport { Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React from 'react';\r\n\r\nimport { ISearchProps } from '../../definition-extensions/search.ext.props.autogenerated';\r\n\r\n/**\r\n * Render Products Suggestion result heading.\r\n * @param props -The props.\r\n * @returns The JSX Element.\r\n */\r\nconst renderProductNotFoundResultsImage = (props: ISearchProps): JSX.Element | null => {\r\n const noSearchResultImage: IImageData | undefined = props.config.noSearchResultImage;\r\n if (!noSearchResultImage || !noSearchResultImage.src) {\r\n return null;\r\n }\r\n const imageSettings = {\r\n lazyload: true,\r\n viewports: {\r\n xs: { w: 100, h: 100, q: 'w=100&h=100&q=60&m=6' }\r\n }\r\n };\r\n return (\r\n \r\n );\r\n};\r\n\r\n/**\r\n * Render Product suggestion result.\r\n * @param props -The props.\r\n * @returns The JSX Element.\r\n */\r\nexport const AutoSuggestEmptyComponent = (props: ISearchProps): JSX.Element => {\r\n return (\r\n \r\n
{renderProductNotFoundResultsImage(props)}
\r\n
\r\n

{props.resources.emptySearchTextHeading}

\r\n
{props.resources.emptySearchText}
\r\n
\r\n
\r\n );\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { ISearchData, ISearchFormViewProps } from '@msdyn365-commerce-modules/search';\r\nimport { Button, INodeProps, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React from 'react';\r\n\r\nimport { ISearchProps } from '../../definition-extensions/search.ext.props.autogenerated';\r\nimport { AutoSuggestEmptyComponent } from './search.empty';\r\n\r\n/**\r\n * Render Clear button for mobile viewport.\r\n * @param clearSearchButtonText -The Clear button text.\r\n * @param clearSearch -Clear Search callback.\r\n * @returns -The JSX Element.\r\n */\r\nconst renderClearButton = (clearSearchButtonText: string, clearSearch: () => void): JSX.Element => {\r\n return (\r\n \r\n );\r\n};\r\n\r\n/**\r\n * Render Search form.\r\n * @param form -Form view props.\r\n * @param searchForm -Search Form props.\r\n * @param formWrapper -Form Wrapper props.\r\n * @param clearSearchButtonText -The Clear button text.\r\n * @param props -The props for resource.\r\n * @param isSearchText -Is SearchText flag for input text.\r\n * @param clearSearch -Clear Search callback.\r\n * @returns -The JSX Element.\r\n */\r\nexport const FormComponent = (\r\n form: ISearchFormViewProps,\r\n searchForm: INodeProps,\r\n formWrapper: INodeProps,\r\n clearSearchButtonText: string,\r\n props: ISearchProps,\r\n isSearchText: boolean,\r\n clearSearch: () => void\r\n): JSX.Element => {\r\n\r\n return (\r\n \r\n {form.cancelBtn}\r\n \r\n {form.input}\r\n {isSearchText && renderClearButton(clearSearchButtonText, clearSearch)}\r\n {!isSearchText ? AutoSuggestEmptyComponent(props) : null}\r\n \r\n \r\n );\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { IImageData, Image } from '@msdyn365-commerce/core';\r\nimport { ISearchData, ISearchProductViewProps } from '@msdyn365-commerce-modules/search';\r\nimport { INodeProps, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React from 'react';\r\n\r\nimport { ISearchProps } from '../../definition-extensions/search.ext.props.autogenerated';\r\n\r\n/**\r\n * Render Products Suggestion result heading.\r\n * @param productSuggestionsHeading -The products suggestion result heading.\r\n * @returns The JSX Element.\r\n */\r\nconst renderProductSuggestionsTitle = (productSuggestionsHeading: string): JSX.Element => {\r\n const productAutoSuggestionHeading = productSuggestionsHeading ? productSuggestionsHeading : 'Products';\r\n\r\n return
{productAutoSuggestionHeading}
;\r\n};\r\n\r\n/**\r\n * Render Products Suggestion result heading.\r\n * @param props -The props.\r\n * @returns The JSX Element.\r\n */\r\nconst renderProductNotFoundResultsImage = (props: ISearchProps): JSX.Element | null => {\r\n const noSearchResultImage: IImageData | undefined = props.config.noSearchResultImage;\r\n if (!noSearchResultImage || !noSearchResultImage.src) {\r\n return null;\r\n }\r\n return (\r\n \r\n );\r\n};\r\n\r\n/**\r\n * Render Products No result section.\r\n * @param props -The props.\r\n * @returns The JSX Element.\r\n */\r\nconst renderProductNotFoundResults = (props: ISearchProps): JSX.Element => {\r\n return (\r\n \r\n
{renderProductNotFoundResultsImage(props)}
\r\n
{props.resources.noResultContentHeadingText}
\r\n
\r\n {props.resources.noResultContentParagraphText}\r\n
\r\n
\r\n );\r\n};\r\n\r\n/**\r\n * Render Product suggestion result.\r\n * @param productSuggest -The product suggest Node props.\r\n * @param ulProduct -The List Node props.\r\n * @param props -The props.\r\n * @param productSuggestions -The Product suggestion result.\r\n * @param isLoadingAutoSuggest - The autosuggestion loading flag.\r\n * @param isLoadingNode - The autosuggestion loading node.\r\n * @returns The JSX Element.\r\n */\r\nexport const ProductSuggestionsComponent = (\r\n productSuggest: INodeProps,\r\n ulProduct: INodeProps,\r\n props: ISearchProps,\r\n productSuggestions?: ISearchProductViewProps,\r\n isLoadingAutoSuggest?: boolean,\r\n isLoadingNode?: React.ReactNode\r\n): JSX.Element => {\r\n const liProduct: INodeProps = {\r\n tag: 'li',\r\n className: 'msc-no-result-content'\r\n };\r\n return productSuggestions ? (\r\n \r\n {renderProductSuggestionsTitle(props.resources.productSuggestionHeading)}\r\n \r\n {isLoadingAutoSuggest && isLoadingNode}\r\n {!isLoadingAutoSuggest &&\r\n productSuggestions.items.map((item, index) => {\r\n return (\r\n \r\n \r\n {item.thumbnail}\r\n {item.text}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n ) : (\r\n \r\n {renderProductSuggestionsTitle(props.resources.productSuggestionHeading)}\r\n \r\n {renderProductNotFoundResults(props)}\r\n \r\n \r\n );\r\n};\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { ISearchData, ISearchFormViewProps, ISearchViewProps } from '@msdyn365-commerce-modules/search';\r\nimport { format, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport React, { useEffect, useState } from 'react';\r\n\r\nimport { ISearchProps } from '../definition-extensions/search.ext.props.autogenerated';\r\n// import { CategorySuggestionsComponent } from './components/search.categorysuggest';\r\nimport { FormComponent } from './components/search.form';\r\n// import { KeywordSuggestionsComponent } from './components/search.keywordsuggest';\r\nimport { ProductSuggestionsComponent } from './components/search.productsuggest';\r\n\r\n/**\r\n * Render Title for AutoSuggest.\r\n * @param searchSuggestionHeading -The heading resource string.\r\n * @param searchText -The search string.\r\n * @returns -The JSX Element.\r\n */\r\nconst renderTitle = (searchSuggestionHeading: string, searchText: string): JSX.Element => {\r\n const searchTextString = '\"'.concat(searchText.concat('\"'));\r\n const searchAutoSuggestionHeading = searchSuggestionHeading\r\n ? format(searchSuggestionHeading, searchTextString)\r\n : `Search for ${searchTextString}`;\r\n\r\n return {searchAutoSuggestionHeading};\r\n};\r\n\r\n/**\r\n * Search View.\r\n * @param props - The view props.\r\n * @returns The JSX Element.\r\n */\r\nconst SearchView: React.FC> = (\r\n props: ISearchViewProps & ISearchProps\r\n): JSX.Element => {\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 // UlKeyword,\r\n UlProduct,\r\n form,\r\n // autosuggestKeyword,\r\n autosuggestProduct,\r\n SearchForm,\r\n FormWrapper,\r\n label,\r\n isLoadingAutoSuggest,\r\n isLoadingNode,\r\n } = props;\r\n\r\n const { searchSuggestionHeading, clearSearchButtonText } = props.resources;\r\n\r\n const [searchTextString, setSearchTextString] = useState();\r\n\r\n useEffect(() => {\r\n setSearchTextString(searchText);\r\n }, [searchText]);\r\n\r\n /**\r\n * ClearSearch callback method to clear search string.\r\n */\r\n const clearSearch = (): void => {\r\n setSearchTextString('');\r\n\r\n const propsForm = props.form as ISearchFormViewProps;\r\n const propsFormInput = propsForm.input as React.DetailedHTMLProps, HTMLInputElement>;\r\n const propsFormInputCurrent = (propsFormInput.ref as React.RefObject).current;\r\n\r\n if (propsFormInputCurrent) {\r\n propsFormInputCurrent.value = '';\r\n }\r\n\r\n propsFormInput.value = '';\r\n props.searchText = '';\r\n props.FormWrapper.action = '';\r\n };\r\n\r\n AutoSuggest.className = !StringExtensions.isNullOrEmpty(searchTextString)\r\n ? `${AutoSuggest.className} show`\r\n : `${AutoSuggest.className} hide`;\r\n const isSearchText: boolean = !StringExtensions.isNullOrEmpty(searchTextString);\r\n\r\n return (\r\n \r\n {label}\r\n {FormComponent(\r\n form as ISearchFormViewProps,\r\n SearchForm,\r\n FormWrapper,\r\n clearSearchButtonText,\r\n props,\r\n isSearchText,\r\n clearSearch\r\n )}\r\n {props.isSearchFormExpanded && (\r\n \r\n {!StringExtensions.isNullOrEmpty(searchTextString) ? (\r\n {AutoSuggestAriaLabelText}\r\n ) : (\r\n ''\r\n )}\r\n {!StringExtensions.isNullOrEmpty(searchTextString) ? (\r\n <>\r\n \r\n {renderTitle(searchSuggestionHeading, searchText)}\r\n \r\n \r\n {/* \r\n {CategorySuggestionsComponent(\r\n categorySuggestionHeading,\r\n noResultText,\r\n props,\r\n isLoadingAutoSuggest,\r\n isLoadingNode\r\n )}\r\n {KeywordSuggestionsComponent(\r\n KeywordSuggest,\r\n UlKeyword,\r\n keywordsHeading,\r\n noResultText,\r\n autosuggestKeyword,\r\n isLoadingAutoSuggest,\r\n isLoadingNode\r\n )}\r\n */}\r\n {ProductSuggestionsComponent(\r\n ProductSuggest,\r\n UlProduct,\r\n props,\r\n autosuggestProduct,\r\n isLoadingAutoSuggest,\r\n isLoadingNode\r\n )}\r\n \r\n \r\n ) : null}\r\n \r\n )}\r\n \r\n );\r\n};\r\nexport default SearchView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ControlledDrawer, getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { IDrawerState } from '@msdyn365-commerce-modules/utilities/dist/types/drawer/Drawer';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput, interactionStyle } from '../..';\nimport { IAccordionItemData } from './accordion-item.data';\nimport { IAccordionItemProps } from './accordion-item.props.autogenerated';\n\nexport interface IAccordionItemViewProps {\n AccordionItemContainer: IModuleProps;\n drawer: INodeProps;\n accordionSlots: INodeProps;\n AccordionItemContent: INodeProps;\n className: string;\n}\n\nexport interface IAccordionItemExtentedProps extends IAccordionItemProps {\n interactionStyle?: interactionStyle;\n}\n\n/**\n *\n * AccordionItem component.\n * @extends {React.Component}\n */\n@observer\nclass AccordionItem extends React.Component {\n private readonly moduleClassName: string = 'ms-accordion-item';\n\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IAccordionItemProps) {\n super(props);\n this._onToggle = this._onToggle.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public shouldComponentUpdate(nextProps: IAccordionItemProps): boolean {\n if (this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { slots, renderView, config, data } = this.props;\n const accordionExpandedStateResult = data && data.accordionExpandedState && data.accordionExpandedState.result;\n const expanded =\n accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded === undefined\n ? data && config.isExpandedOnInitialLoad\n : accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded;\n const viewProps = {\n ...this.props,\n AccordionItemContainer: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n AccordionItemContent: {\n className: 'ms-accordion-item-content'\n },\n drawer: {\n tag: ControlledDrawer,\n className: `${this.moduleClassName}__drawer`,\n toggleButtonText: (config.accordionItemTitle && config.accordionItemTitle) || '',\n collapseProps: { isOpen: expanded },\n onToggle: this._onToggle,\n onTextChange: this.handleHeadingChange,\n requestContext: this.props.context.request,\n telemetryContent: this.telemetryContent\n },\n accordionSlots: slots\n };\n return renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.accordionItemTitle = event.target.value);\n\n private _onToggle(state: IDrawerState): void {\n if (!state.isOpen && this.props.interactionStyle === interactionStyle.ExpandOneItemOnly) {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n }\n }\n}\nexport default AccordionItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionItemViewProps } from './accordion-item';\n\nconst AccordionItemView: React.FC = props => {\n const { drawer, accordionSlots, AccordionItemContainer, AccordionItemContent } = props;\n return (\n \n \n \n {accordionSlots &&\n accordionSlots.accordionItemContent &&\n accordionSlots.accordionItemContent.length &&\n _renderAccordionItemContent(accordionSlots.accordionItemContent)}\n \n \n \n );\n};\n\nconst _renderAccordionItemContent = (items: React.ReactNode[]): JSX.Element | null => {\n return (\n <>\n {items && items.length > 0\n ? items.map((item: React.ReactNode, index: number) => {\n return {item};\n })\n : null}\n \n );\n};\nexport default AccordionItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n NodeTag,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput } from '../..';\nimport { IAccordionData } from './accordion.data';\nimport { IAccordionProps } from './accordion.props.autogenerated';\n\n/**\n *\n * Accordion component.\n * @extends {React.PureComponent>}\n */\n\nexport interface ICallToActionProps {\n link: INodeProps[];\n}\n\n/**\n * Added interface for state management.\n */\nexport interface IAccordianState {\n isDisabled: boolean;\n}\n\nexport interface IAccordionViewProps extends IAccordionProps<{}> {\n heading?: React.ReactNode;\n AccordionContainer: IModuleProps;\n HeaderSection: INodeProps;\n HeadingWrapper: INodeProps;\n accordianButtonsContainer: INodeProps;\n accordionButtons: React.ReactNode;\n accordionItemContainer: INodeProps;\n accordionItems: React.ReactNode;\n}\n\n/**\n *\n * Accordion component.\n * @extends {React.Component>}\n */\n@observer\nclass Accordion extends React.PureComponent, IAccordianState> {\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private readonly expandAllButtonRef: React.RefObject = React.createRef();\n\n private readonly collapseAllButtonRef: React.RefObject = React.createRef();\n\n constructor(props: IAccordionProps) {\n super(props);\n this._onExpandAll = this._onExpandAll.bind(this);\n this._onCollapseAll = this._onCollapseAll.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.payLoad = getPayloadObject('click', this.telemetryContent, '');\n this.state = { isDisabled: false };\n }\n\n public render(): JSX.Element {\n const { slots } = this.props;\n const { heading, className } = this.props.config;\n const headingComponent = heading && heading.text && (\n \n );\n\n const accordionViewProps = {\n ...this.props,\n AccordionContainer: {\n moduleProps: this.props,\n className: classnames('ms-accordion', className)\n },\n HeaderSection: { className: 'ms-accordion-header-section' },\n HeadingWrapper: { className: 'ms-accordion-header-section-container' },\n heading: headingComponent,\n config: this.props && this.props.config,\n accordianButtonsContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-header-section-toggle-button-container'\n },\n accordionButtons: this._renderAccordionButton(),\n accordionItemContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-item-section'\n },\n accordionItems:\n slots &&\n slots.accordionItems &&\n slots.accordionItems.length > 0 &&\n slots.accordionItems.map((item: React.ReactNode, index: number) => this._getAccordionItem(item, index))\n };\n return this.props.renderView(accordionViewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n private _renderAccordionButton(): React.ReactNode | null {\n const { config, resources } = this.props;\n const { heading } = config;\n this.payLoad.contentAction.etext = TelemetryConstant.ExpandAll;\n const attributeExpandAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n this.payLoad.contentAction.etext = TelemetryConstant.CollapseAll;\n const attributeCollapseAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n if (!config.showToggleAll) {\n this.props.context.telemetry.error('Accordion button content is empty, module wont render');\n return null;\n }\n return (\n <>\n \n {resources.expandAllText}\n \n  \n {resources.toggleAllSeparator}\n  \n \n {resources.collapseAllText}\n \n \n );\n }\n\n private _onExpandAll(): void {\n const accordionState = { isAllExpanded: true };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (accordionState.isAllExpanded) {\n this.setState({\n isDisabled: true\n });\n setTimeout(() => {\n this.collapseAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _onCollapseAll(): void {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (!accordionState.isAllExpanded) {\n this.setState({\n isDisabled: false\n });\n setTimeout(() => {\n this.expandAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _getAccordionItem(item: React.ReactNode, index: number): React.ReactNode {\n return (\n \n {React.cloneElement(item as React.ReactElement, { interactionStyle: this.props.config.interactionStyle })}\n \n );\n }\n}\n\nexport default Accordion;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionViewProps } from './accordion';\n\nconst accordionView: React.FC = props => {\n const { heading, AccordionContainer, accordionItems } = props;\n if (!props.heading && !props.accordionButtons && !props.accordionItems) {\n props.context.telemetry.error('Accordion content is empty, module wont render');\n return null;\n }\n return (\n \n \n {heading}\n {props.accordionButtons && {props.accordionButtons}}\n \n {accordionItems}\n \n );\n};\n\nexport default accordionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAadGenericData } from './aad-generic.data';\nimport { IAadGenericProps } from './aad-generic.props.autogenerated';\n\nexport interface IAadGenericViewProps extends IAadGenericProps {\n aadGeneric: IModuleProps;\n aadConainer: INodeProps;\n aadAPIConainer: React.ReactNode;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AadGeneric component.\n * @extends {React.Component>}\n */\nclass AadGeneric extends React.Component> {\n private readonly moduleClassName: string = 'ms-aad-generic';\n\n public componentDidMount(): void {\n // @ts-expect-error\n const { $i2e, $element } = window || {};\n\n if ($i2e && $element) {\n $i2e.insertServiceContent($element.getElementContent());\n $element.initialize();\n }\n }\n\n public shouldComponentUpdate(nextProps: IAadGenericViewProps): boolean {\n if (nextProps.config.heading !== this.props.config.heading) {\n return true;\n }\n return false;\n }\n\n public render(): JSX.Element | null {\n const { className, heading } = this.props.config;\n\n const viewProps = {\n ...this.props,\n aadGeneric: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, className)\n },\n aadConainer: {\n className: `${this.moduleClassName}__container`\n },\n aadAPIConainer:
,\n heading: heading && (\n \n )\n };\n\n return this.props.renderView(viewProps);\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.heading) {\n this.props.config.heading.text = event.target.value;\n }\n };\n}\n\nexport default AadGeneric;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAadGenericViewProps } from './aad-generic';\n\nexport default (props: IAadGenericViewProps) => {\n const { aadGeneric, aadConainer, aadAPIConainer, heading } = props;\n\n return (\n \n \n {heading}\n {aadAPIConainer}\n \n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountAddressTileData } from './account-address-tile.data';\nimport { IAccountAddressTileProps } from './account-address-tile.props.autogenerated';\nimport DescriptionComponent from './components/account-address-tile-description';\nimport LinksComponent from './components/account-address-tile-links';\n\nexport interface IAccountAddressTileViewProps extends IAccountAddressTileProps {\n AccountAddressTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountAddress component.\n * @extends {React.PureComponent>}\n */\nclass AccountAddressTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountAddressTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, resources, data } = this.props;\n const { className, heading, links } = config;\n const { accountAddressTileDescriptionForSingleAddress, accountAddressTileDescriptionForMultipleAddresses } = resources;\n const { address } = data;\n const addressCount = (address && address.result && address.result.length) || 0;\n const accountAddressTileDescription =\n addressCount === 1 ? accountAddressTileDescriptionForSingleAddress : accountAddressTileDescriptionForMultipleAddresses;\n const description = format(accountAddressTileDescription, addressCount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountAddressTile: {\n moduleProps: this.props,\n className: classnames('ms-account-address-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountAddressTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountAddressTileViewProps } from './account-address-tile';\n\nconst AccountAddressTileView: React.FC = props => {\n const { AccountAddressTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountAddressTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface IAccountAddressTileDescription {\n description: string;\n}\n\n// eslint-disable-next-line no-redeclare\nconst IAccountAddressTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n\nexport default IAccountAddressTileDescription;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-address-tile.props.autogenerated';\n\nexport interface IAccountAddressTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountAddressTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-address-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountAddressTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAccountInvoiceTileDescription {\n description: string;\n}\n\nexport const AccountInvoiceTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-invoice-tile.props.autogenerated';\n\nexport interface IAccountInvoiceTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountInvoiceTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-invoice-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountInvoiceTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountInvoiceTileData } from './account-invoice-tile.data';\nimport { IAccountInvoiceTileProps } from './account-invoice-tile.props.autogenerated';\nimport { AccountInvoiceTileDescription } from './components';\nimport LinksComponent from './components/account-invoice-tile-links';\n\nexport interface IAccountInvoiceTileViewProps extends IAccountInvoiceTileProps {\n AccountInvoiceTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountInvoiceTile component.\n * @extends {React.PureComponent>}\n */\nclass AccountInvoiceTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountInvoiceTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const {\n config,\n data,\n resources,\n context: {\n cultureFormatter: {\n formatCurrency,\n\n // @ts-expect-error\n currencyCode\n }\n }\n } = this.props;\n const { className, heading, links } = config;\n const { accountInvoiceTileDescription } = resources;\n\n const openinvoiceAmount = data.customerBalance.result?.OpenInvoiceBalance || 0;\n const invoiceTotalAmount: string | undefined = formatCurrency(openinvoiceAmount.toFixed(2), currencyCode);\n\n const description = invoiceTotalAmount && format(accountInvoiceTileDescription, invoiceTotalAmount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountInvoiceTile: {\n moduleProps: this.props,\n className: classnames('ms-account-invoice-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: description && \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountInvoiceTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountInvoiceTileViewProps } from './account-invoice-tile';\n\nexport default (props: IAccountInvoiceTileViewProps) => {\n const { AccountInvoiceTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ILinkData } from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface ILinksData {\n linkText?: string;\n linkUrl: ILinkData;\n ariaLabel?: string;\n openInNewTab?: boolean;\n}\n\nexport interface IAccountLoyaltyTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountLoyaltyTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-loyalty-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountLoyaltyTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { LoyaltyRewardPoint } from '@msdyn365-commerce/retail-proxy';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountLoyaltyTileData } from './account-loyalty-tile.data';\nimport { IAccountLoyaltyTileProps } from './account-loyalty-tile.props.autogenerated';\nimport DescriptionComponent from './components/account-loyalty-tile-description';\nimport LinksComponent from './components/account-loyalty-tile-links';\n\nexport interface IAccountLoyaltyTileViewProps extends IAccountLoyaltyTileProps {\n AccountLoyaltyTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountLoyalty component.\n * @extends {React.PureComponent>}\n */\nclass AccountLoyaltyTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountLoyaltyTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, data, resources, context } = this.props;\n const { className, heading, signUpLinkText, signUpLinkAriaLabel, viewLinkText, viewLinkAriaLabel } = config;\n const { accountLoyaltySummary, accountLoyaltyMemberSummary } = resources;\n const { loyaltyCard } = data;\n\n let description = accountLoyaltySummary;\n let url = Msdyn365.getUrlSync('loyaltyJoin', context.actionContext) || '';\n const link = { linkText: signUpLinkText, linkUrl: { destinationUrl: url }, ariaLabel: signUpLinkAriaLabel };\n\n if (loyaltyCard && loyaltyCard.result && loyaltyCard.result.CardNumber) {\n const decimalPrecision = 2;\n let points = 0;\n\n if (loyaltyCard.result.RewardPoints && loyaltyCard.result.RewardPoints.length > 0) {\n loyaltyCard.result.RewardPoints.forEach((rewardPoint: LoyaltyRewardPoint) => {\n points += rewardPoint.ActivePoints!;\n });\n }\n link.ariaLabel = viewLinkAriaLabel;\n link.linkText = viewLinkText;\n url = Msdyn365.getUrlSync('loyalty', context.actionContext) || '';\n link.linkUrl.destinationUrl = url;\n description = format(accountLoyaltyMemberSummary, points.toFixed(decimalPrecision));\n }\n\n const viewProps = {\n ...this.props,\n className,\n AccountLoyaltyTile: {\n moduleProps: this.props,\n className: classnames('ms-account-loyalty-tile', config.className)\n },\n heading: heading && (\n \n ),\n links: (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.signUpLinkText && this.props.config.viewLinkText) {\n this.props.config.viewLinkText = event.target.value;\n }\n };\n}\n\nexport default AccountLoyaltyTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountLoyaltyTileViewProps } from './account-loyalty-tile';\n\nconst AccountLoyaltyTileView: React.FC = props => {\n const { AccountLoyaltyTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountLoyaltyTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface IAccountLoyaltyTileDescription {\n description: string;\n}\n\n// eslint-disable-next-line no-redeclare\nconst IAccountLoyaltyTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n\nexport default IAccountLoyaltyTileDescription;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAccountOrderTemplatesTileDescription {\n description: string;\n}\n\nexport const AccountOrderTemplatesTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-order-templates-tile.props.autogenerated';\n\nexport interface IAccountOrderTemplatesTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nexport const AccountOrderTemplatesTileLinks: React.FC = ({\n links,\n onTextChange,\n telemetryContent,\n requestContext\n}) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-order-templates-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountOrderTemplatesTileData } from './account-order-templates-tile.data';\nimport { IAccountOrderTemplatesTileProps } from './account-order-templates-tile.props.autogenerated';\nimport { AccountOrderTemplatesTileDescription, AccountOrderTemplatesTileLinks } from './components';\n\nexport interface IAccountOrderTemplatesTileViewProps extends IAccountOrderTemplatesTileProps {\n AccountOrderTemplatesTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountOrderTemplatesTile component.\n * @extends {React.PureComponent>}\n */\nexport class AccountOrderTemplatesTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountOrderTemplatesTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, resources, data } = this.props;\n\n if (!this.props.context.request.params.isEditor && !isChannelTypeB2B(this.props.context.request)) {\n return <>;\n }\n\n const { className, heading, links } = config;\n const { accountOrderTemplatesTileDescription } = resources;\n const orderTemplates = data.orderTemplates;\n\n const orderTemplatesCount = (orderTemplates?.result || []).length;\n const description = format(accountOrderTemplatesTileDescription, orderTemplatesCount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountOrderTemplatesTile: {\n moduleProps: this.props,\n className: classnames('ms-account-order-templates-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => {\n this.props.config.heading.text = event.target.value;\n };\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountOrderTemplatesTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountOrderTemplatesTileViewProps } from './account-order-templates-tile';\n\nconst AccountOrderTemplatesTileView: React.FC = props => {\n const { AccountOrderTemplatesTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountOrderTemplatesTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface IAccountWishlistTileDescription {\n description: string;\n}\n\n// eslint-disable-next-line no-redeclare\nconst IAccountWishlistTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n\nexport default IAccountWishlistTileDescription;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-wishlist-tile.props.autogenerated';\n\nexport interface IAccountWishlistTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountWishlistTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-wishlist-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountWishlistTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountWishlistTileData } from './account-wishlist-tile.data';\nimport { IAccountWishlistTileProps } from './account-wishlist-tile.props.autogenerated';\nimport DescriptionComponent from './components/account-wishlist-tile-description';\nimport LinksComponent from './components/account-wishlist-tile-links';\n\nexport interface IAccountWishlistTileViewProps extends IAccountWishlistTileProps {\n AccountWishlistTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountWishlist component.\n * @extends {React.PureComponent>}\n */\nclass AccountWishlistTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IAccountWishlistTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, resources, data } = this.props;\n const { className, heading, links } = config;\n const { accountWishlistTileDescription } = resources;\n const wishlists = data.wishlists.result;\n\n const wishlistsCount = ((wishlists && wishlists.length && wishlists[0].CommerceListLines) || []).length;\n const description = format(accountWishlistTileDescription || 'You have {0} items in the Wishlist.', wishlistsCount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountWishlistTile: {\n moduleProps: this.props,\n className: classnames('ms-account-wishlist-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountWishlistTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountWishlistTileViewProps } from './account-wishlist-tile';\n\nconst AccountWishlistTileView: React.FC = props => {\n const { AccountWishlistTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountWishlistTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAccountOrganizationUsersTileDescription {\n description: string;\n}\n\nexport const AccountOrganizationUsersTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../organization-users-tile.props.autogenerated';\n\nexport interface IAccountOrganizationUsersTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nexport const AccountOrganizationUsersTileLinks: React.FC = ({\n links,\n telemetryContent,\n onTextChange,\n requestContext\n}) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-organization-users-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { AccountOrganizationUsersTileDescription, AccountOrganizationUsersTileLinks } from './components';\nimport { IOrganizationUsersTileData } from './organization-users-tile.data';\nimport { IOrganizationUsersTileProps } from './organization-users-tile.props.autogenerated';\n\nexport interface IOrganizationUsersTileViewProps extends IOrganizationUsersTileProps {\n OrganizationUsersTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * OrganizationUsersTile component.\n * @extends {React.PureComponent>}\n */\nclass OrganizationUsersTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IOrganizationUsersTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n const { config, resources, data } = this.props;\n const { className, heading, links } = config;\n const { accountOrganizationUsersTileDescriptionForSingleUser, accountOrganizationUsersTileDescriptionForMultipleUsers } = resources;\n const numUsers = data.users && data.users.result;\n const accountOrganizationUsersTileDescription =\n numUsers === 1 ? accountOrganizationUsersTileDescriptionForSingleUser : accountOrganizationUsersTileDescriptionForMultipleUsers;\n const customerInformation = data.customerInformation.result;\n\n // Organization-users tile will not be render for non-admin users.\n if (!customerInformation?.IsB2bAdmin) {\n return null;\n }\n\n const viewProps = {\n ...this.props,\n className,\n OrganizationUsersTile: {\n moduleProps: this.props,\n className: classnames('ms-account-organization-users-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => {\n this.props.config.heading.text = event.target.value;\n };\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default OrganizationUsersTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IOrganizationUsersTileViewProps } from './organization-users-tile';\n\nconst OrganizationUsersTileView: React.FC = props => {\n const { OrganizationUsersTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default OrganizationUsersTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Button } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface ISignUpButton {\n id?: string;\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n onClick?(event: React.MouseEvent): void;\n}\n\nconst SignUpButton: React.FC = ({ id, className, text, ariaLabel, disabled, onClick }) => (\n \n);\n\nexport default SignUpButton;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface ISignUpErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst SignUpError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n );\n};\n\nexport default SignUpError;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface ISignUpInputProps {\n id?: string;\n hasFocus?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n type: any;\n value?: string;\n pattern?: string;\n className: string;\n maxLength?: string;\n onChange?(event: React.ChangeEvent): void;\n}\n\nexport interface ISignUpInput {\n key: string;\n AddressItem: INodeProps;\n label: React.ReactNode;\n alert: React.ReactNode;\n input: React.ReactNode;\n}\n\nconst GetMaxLength = (maxLength?: string): number | undefined => {\n if (maxLength) {\n const parsedMaxLength = Number.parseInt(maxLength, 10);\n if (!isNaN(parsedMaxLength)) {\n return parsedMaxLength;\n }\n }\n\n return undefined;\n};\n\nconst SignUpInput: React.FC = ({ id, type, value, pattern, className, maxLength, onChange }) => (\n \n);\n\nexport default SignUpInput;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface ISignUpLabel {\n id: string;\n forId: string;\n className: string;\n text: string;\n}\n\nconst SignUpLabel: React.FC = ({ id, forId, className, text }) => (\n \n);\n\nexport default SignUpLabel;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface ISignUpLoadingIcon {\n className: string;\n}\n\nconst SignUpLoadingIcon: React.FC = ({ className }) =>
;\n\nexport default SignUpLoadingIcon;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface ISignUpLoadingMessage {\n className: string;\n message: string;\n}\n\nconst SignUpLoadingMessage: React.FC = ({ className, message }) => (\n
{message}
\n);\n\nexport default SignUpLoadingMessage;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface ISignUpSuccess {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst SignUpSuccess: React.FC = ({ id, className, type = 'page', message }) => {\n const successClassName = `${className}__${type}-success`;\n\n return (\n \n );\n};\n\nexport default SignUpSuccess;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { EmailRegex, PasswordRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport { IModuleProps, INodeProps, Modal, ModalBody } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observable } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport SignUpButtonComponent from './components/sign-up-button';\nimport SignUpErrorComponent from './components/sign-up-error';\nimport SignUpInputComponent from './components/sign-up-input';\nimport SignUpLabelComponent from './components/sign-up-label';\nimport SignUpLoadingIconComponent from './components/sign-up-loading-icon';\nimport SignUpLoadingMessageComponent from './components/sign-up-loading-message';\nimport SignUpSuccessComponent from './components/sign-up-success';\nimport { ISignUpConfig, ISignUpProps, ISignUpResources } from './sign-up.props.autogenerated';\n\nexport interface ISignUpViewState {\n isShowLoading: boolean;\n}\n\nexport interface ISignUpItem {\n wrapper: INodeProps;\n key: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input: React.ReactNode;\n}\n\nexport interface ISignUpEmailVerification {\n isRequired: boolean;\n email: ISignUpItem;\n buttonWrapper: INodeProps;\n buttons: React.ReactNode[];\n successMessage: React.ReactNode[];\n errorMessage: React.ReactNode[];\n verificationControlWrapper: INodeProps;\n}\n\n/**\n * SignUp Given Name Verification Interface.\n */\nexport interface ISignUpGivenNameVerification {\n isRequired: boolean;\n givenName: ISignUpItem;\n errorMessage: React.ReactNode[];\n verificationControlWrapper: INodeProps;\n}\n\n/**\n * SignUp Surname Verification Interface.\n */\nexport interface ISignUpSurnameVerification {\n isRequired: boolean;\n surname: ISignUpItem;\n errorMessage: React.ReactNode[];\n verificationControlWrapper: INodeProps;\n}\n\nexport interface ISignUpLocalAccount {\n localAccount: INodeProps;\n items: ISignUpItem[];\n emailVerification: ISignUpEmailVerification;\n givenNameVerification: ISignUpGivenNameVerification;\n surnameVerification: ISignUpSurnameVerification;\n buttons: React.ReactNode[];\n errorMessage: React.ReactNode[];\n disclaimer: React.ReactNode;\n}\n\nexport interface ISignUpLoading {\n modal: INodeProps;\n modalBody: INodeProps;\n icon: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface ISignUpViewProps {\n className: string;\n viewState: ISignUpViewState;\n loading: ISignUpLoading;\n signUp: IModuleProps;\n defaultAADConainer: INodeProps;\n aadConainer: INodeProps;\n heading: React.ReactNode;\n signUpLocalAccount: ISignUpLocalAccount;\n}\n\n/**\n *\n * SignUp component\n * All AAD related module is rendered on AAD page and we need to respect HTML contract provide by AAD.\n * Please ensure any change in module don't break contract with AAD.\n * @extends {React.Component>}\n */\n@observer\nclass SignUp extends React.Component> {\n @observable private isGivenNameVerificationRequried: boolean;\n\n @observable private isSurnameVerificationRequried: boolean;\n\n private readonly moduleClassName: string = 'ms-sign-up';\n\n @observable private emailRegex: string;\n\n @observable private newPasswordRegex: string;\n\n @observable private reenterPasswordRegex: string;\n\n @observable private isEmailVerificationRequried: boolean;\n\n @observable private isInitialized: boolean;\n\n @observable private templateVersion: string;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private initializationTimer: any;\n\n constructor(props: ISignUpProps) {\n super(props);\n\n this.emailRegex = EmailRegex.defaultRegex.source;\n this.newPasswordRegex = PasswordRegex.defaultRegex.source;\n this.reenterPasswordRegex = PasswordRegex.defaultRegex.source;\n this.isEmailVerificationRequried = false;\n this.isGivenNameVerificationRequried = false;\n this.isSurnameVerificationRequried = false;\n this.isInitialized = false;\n this.templateVersion = '';\n }\n\n public componentDidMount(): void {\n this._onInit();\n }\n\n // After successful AAD initialization, call initialize method provided by AAD to attach events.\n public componentDidUpdate(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (this.isInitialized && window && window['$element'] && window['$element']['initialize']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['$element']['initialize']();\n }\n }\n\n public shouldComponentUpdate(nextProps: ISignUpProps, nextState: ISignUpViewState): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { config, resources } = this.props;\n\n const viewProps = {\n ...this.props,\n viewState: {\n isShowLoading: !this.isInitialized\n },\n signUp: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n loading: {\n modal: {\n tag: Modal,\n isOpen: true\n },\n modalBody: {\n tag: ModalBody\n },\n icon: ,\n message: \n },\n defaultAADConainer: {\n id: 'api',\n style: { display: 'none' }\n },\n aadConainer: {\n id: this.isInitialized ? 'api' : null,\n className: `${this.moduleClassName}__container`\n },\n heading: (\n \n ),\n signUpLocalAccount: this._renderLocalAccount()\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Handles heading content change event.\n * @param event - Content editable event.\n * @returns - Heading Text.\n */\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n /**\n * Handles paragraph content change event.\n * @param event - Content editable event.\n * @returns - Paragraph Text.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.disclaimer = event.target.value);\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public _onInit = () => {\n this._prePopulateData();\n this._updateErrorMessage();\n\n // Check if AAD initialization is complete. AAD do not provide any event to subscribe so we need to check variable set by AAD to check initialization status.\n this.initializationTimer = setInterval(() => {\n this._isInitializationSuccessful();\n }, 100);\n setTimeout(() => {\n clearInterval(this.initializationTimer);\n }, 10_000);\n };\n\n // After successful AAD initialization, remove waiting and preload any data, if needed.\n private readonly _isInitializationSuccessful = () => {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window && window['$diags'] && window['$diags']['initializationSuccessful']) {\n clearInterval(this.initializationTimer);\n this.isInitialized = true;\n }\n };\n\n private readonly _prePopulateData = () => {\n const resources: ISignUpResources = this.props.resources || {};\n\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window['SA_FIELDS'] && window['SA_FIELDS']['AttributeFields']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['SA_FIELDS']['AttributeFields'].map(\n (obj: { ID: string; PAT: string; UX_INPUT_TYPE: string; PAT_DESC: string; VERIFY: boolean }) => {\n switch (obj.ID.toLowerCase()) {\n case 'emailverificationcontrol': {\n this.isEmailVerificationRequried = true;\n this.templateVersion = 'v2';\n break;\n }\n case 'email': {\n this.emailRegex = obj.PAT;\n this.isEmailVerificationRequried = obj.VERIFY;\n this.templateVersion = 'v1';\n break;\n }\n case 'givennameverificationcontrol': {\n this.isGivenNameVerificationRequried = true;\n break;\n }\n case 'givenname': {\n this.isGivenNameVerificationRequried = obj.VERIFY;\n break;\n }\n case 'surnameverificationcontrol': {\n this.isEmailVerificationRequried = true;\n break;\n }\n case 'surname': {\n this.isSurnameVerificationRequried = obj.VERIFY;\n break;\n }\n case 'newpassword': {\n this.newPasswordRegex = obj.PAT;\n break;\n }\n case 'reenterpassword': {\n this.reenterPasswordRegex = obj.PAT;\n break;\n }\n default:\n }\n\n switch (obj.UX_INPUT_TYPE.toLowerCase()) {\n case 'password': {\n obj.PAT_DESC = resources.invalidPasswordError;\n break;\n }\n case 'emailbox': {\n obj.PAT_DESC = resources.invalidEmailAddressError;\n break;\n }\n default:\n }\n }\n );\n }\n };\n\n private readonly _updateErrorMessage = () => {\n const resources: ISignUpResources = this.props.resources || {};\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n if (window && window['CONTENT']) {\n const errorMessages = {\n required_field: resources.requiredFieldMissingError\n };\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n Object.assign(window['CONTENT'], errorMessages);\n }\n };\n\n private readonly getValue = (v1Value: string, v2Value: string): string => {\n if (this.templateVersion) {\n return this.templateVersion === 'v1' ? v1Value : v2Value;\n }\n return '';\n };\n\n private _renderLocalAccount(): ISignUpLocalAccount {\n const { config, resources } = this.props;\n return {\n localAccount: {\n id: 'attributeList',\n className: `${this.moduleClassName}__account-items attr`\n },\n items: [\n this._renderInput('givenName', 'text', resources.firstNameLabelText, resources.firstNameMaxLength),\n this._renderInput('surname', 'text', resources.lastNameLabelText, resources.lastNameMaxLength),\n this._renderInput('email', 'email', resources.emailAddressLabelText, undefined, this.emailRegex),\n this._renderInput('newPassword', 'password', resources.passwordLabelText, undefined, this.newPasswordRegex),\n this._renderInput('reenterPassword', 'password', resources.confirmPasswordLabelText, undefined, this.reenterPasswordRegex)\n ],\n emailVerification: {\n isRequired: this.isEmailVerificationRequried,\n email: this._renderInput(\n this.getValue('email_ver_input', 'emailVerificationCode'),\n 'text',\n resources.verificationCodeLabelText,\n undefined,\n undefined,\n 'VerificationCode'\n ),\n verificationControlWrapper: {\n id: 'emailVerificationControl',\n className: `${this.moduleClassName}__verification-control-content verificationControlContent`\n },\n buttonWrapper: {\n className: `${this.moduleClassName}__email-verification-buttons ${this.getValue('verify', '')}`,\n 'data-claim_id': 'email'\n },\n buttons: [\n ,\n ,\n ,\n \n ],\n successMessage: [\n ,\n \n ],\n errorMessage: [\n ,\n ,\n ,\n ,\n ,\n ,\n \n ]\n },\n givenNameVerification: {\n isRequired: this.isGivenNameVerificationRequried,\n givenName: this._renderInput(\n this.getValue('givenName_ver_input', 'givenNameVerificationCode'),\n 'text',\n resources.verificationCodeLabelText,\n undefined,\n undefined,\n 'VerificationCode'\n ),\n verificationControlWrapper: {\n id: 'givenNameVerificationControl',\n className: `${this.moduleClassName}__verification-control-content verificationControlContent`\n },\n errorMessage: [\n \n ]\n },\n surnameVerification: {\n isRequired: this.isSurnameVerificationRequried,\n surname: this._renderInput(\n this.getValue('surname_ver_input', 'surnameVerificationCode'),\n 'text',\n resources.verificationCodeLabelText,\n undefined,\n undefined,\n 'VerificationCode'\n ),\n verificationControlWrapper: {\n id: 'surnameVerificationControl',\n className: `${this.moduleClassName}__verification-control-content verificationControlContent`\n },\n errorMessage: [\n \n ]\n },\n buttons: [\n ,\n \n ],\n errorMessage: [\n ,\n ,\n ,\n \n ],\n disclaimer: config.disclaimer && (\n \n )\n };\n }\n\n private _renderInput(\n id: string,\n type: string,\n labelText: string,\n maxLength?: string,\n pattern?: string,\n cssClassName?: string\n ): ISignUpItem {\n const className = `${this.moduleClassName}__account-item`;\n return {\n wrapper: {\n className: classnames(className, `${className}-${id}`, 'entry-item', 'attrEntry', cssClassName)\n },\n key: id,\n label: (\n \n ),\n errorMessage: (\n \n ),\n input: (\n \n )\n };\n }\n}\n\nexport default SignUp;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n ISignUpEmailVerification,\n ISignUpGivenNameVerification,\n ISignUpItem,\n ISignUpLoading,\n ISignUpLocalAccount,\n ISignUpSurnameVerification,\n ISignUpViewProps\n} from './sign-up';\n\nconst SignUpItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\n return (\n \n {label}\n {errorMessage}\n {input}\n \n );\n};\n\nconst SignUpEmailVerification: React.FC = ({ email, buttonWrapper, buttons, successMessage, errorMessage }) => {\n return (\n <>\n {successMessage &&\n successMessage.map((message: React.ReactNode) => {\n return <>{message};\n })}\n \n {errorMessage &&\n errorMessage.map((message: React.ReactNode) => {\n return <>{message};\n })}\n \n {buttons &&\n buttons.map((button: React.ReactNode) => {\n return <>{button};\n })}\n \n \n );\n};\n\n/**\n * Handles validation of sign-up givenName.\n * @param event - Content editable event.\n * @param event.givenName - Event Given Name.\n * @param event.errorMessage - Event Error Message.\n * @returns - Error Message for Given Name.\n */\nconst SignUpGivenNameVerificationComponent: React.FC = ({ givenName, errorMessage }) => {\n return (\n <>\n \n {errorMessage.map((message: React.ReactNode) => {\n return <>{message};\n })}\n \n );\n};\n\n/**\n * Handles validation of signUp surname.\n * @param event - Content editable event.\n * @param event.surname - Event surname.\n * @param event.errorMessage - Event Error Message.\n * @returns - Error Message for surname.\n */\nconst SignUpSurnameVerificationComponent: React.FC = ({ surname, errorMessage }) => {\n return (\n <>\n \n {errorMessage.map((message: React.ReactNode) => {\n return <>{message};\n })}\n \n );\n};\n\nconst LocalAccount: React.FC = ({\n localAccount,\n items,\n emailVerification,\n givenNameVerification,\n surnameVerification,\n buttons,\n errorMessage,\n disclaimer\n}) => {\n return (\n \n {items &&\n items.map((item: ISignUpItem) => {\n if (item.key === 'email' && emailVerification.isRequired) {\n return (\n \n \n \n \n );\n }\n if (item.key === 'givenName' && givenNameVerification.isRequired) {\n return (\n \n \n \n \n );\n }\n if (item.key === 'surname' && surnameVerification.isRequired) {\n return (\n \n \n \n \n );\n }\n // eslint-disable-next-line react/jsx-key\n return ;\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n {disclaimer}\n \n );\n};\n\nconst SignUpLoading: React.FC = ({ modal, modalBody, icon, message }) => {\n return (\n \n \n {icon}\n {message}\n \n \n );\n};\n\nconst SignUpView: React.FC = props => {\n const { signUp, viewState, loading, defaultAADConainer, aadConainer, heading, signUpLocalAccount } = props;\n\n return (\n \n {viewState.isShowLoading && }\n {viewState.isShowLoading && }\n \n {heading}\n {LocalAccount(signUpLocalAccount)}\n \n \n );\n};\n\nexport default SignUpView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport Msdyn365, {\n ContentEditableEvent,\n generateImageUrl,\n getCatalogId,\n getUrlSync,\n Image,\n RichTextComponent,\n Text\n} from '@msdyn365-commerce/core';\nimport { MediaLocation, ProductCatalog } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { ICatalogPickerData } from './catalog-picker.data';\nimport { ICatalogPickerProps } from './catalog-picker.props.autogenerated';\n\n/**\n * ICatalogPickerViewProps.\n */\nexport interface ICatalogPickerViewProps extends ICatalogPickerProps {\n catalogPicker: IModuleProps;\n heading: React.ReactNode;\n paragraph: React.ReactNode;\n catalogs: ReactNode;\n}\n\n/**\n * CatalogPicker component.\n * @extends {React.PureComponent>}\n */\nexport class CatalogPicker extends React.PureComponent> {\n private static readonly _moduleClassName = 'ms-catalog-picker';\n\n public constructor(props: ICatalogPickerViewProps) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { heading, paragraph } = this.props.config;\n\n const catalogPickerHeading = heading && (\n \n );\n\n const isCatalogsAvailable: boolean = ArrayExtensions.hasElements(this.props.data.catalogs?.result);\n const catalogPickerParagraph = paragraph && (\n \n );\n const viewProps = {\n ...this.props,\n handleText: this.handleTextChange,\n catalogPicker: {\n moduleProps: this.props,\n className: CatalogPicker._moduleClassName\n },\n heading: catalogPickerHeading,\n paragraph: catalogPickerParagraph,\n catalogs: isCatalogsAvailable ? this._renderCatalogPicker() : ''\n };\n\n return this.props.renderView(viewProps);\n }\n\n /**\n * Handle text change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleTextChange = (event: ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n /**\n * Handle paragraph change.\n * @param event - The dialog that is allowed to remain open.\n */\n public handleParagraphChange = (event: ContentEditableEvent): void => {\n this.props.config.paragraph = event.target.value;\n };\n\n private _renderCatalogPickerButton(item: ProductCatalog): React.ReactNode {\n const catalogId = item.RecordId;\n const currentCatalogId = getCatalogId(this.props.context.request);\n if (currentCatalogId === catalogId) {\n return
{this.props.resources.currentCatalogText}
;\n }\n let linkToCatalog = '';\n if (Msdyn365.isBrowser) {\n const catalogUrl = getUrlSync('home', this.props.context.actionContext) ?? '';\n const fullUrl = new URL(catalogUrl, window.location.href);\n fullUrl.searchParams.set('catalogid', `${catalogId}`);\n linkToCatalog = fullUrl.href;\n }\n return (\n \n {this.props.resources.changeCatalogButtonText}\n \n );\n }\n\n private _renderCatalogPicker(): React.ReactNode {\n const catalogs = this.props.data.catalogs?.result;\n\n const isBrowser = Msdyn365.isBrowser;\n\n return (\n
\n {catalogs?.map(item => {\n const reactKey = `${JSON.stringify(item)}-${String(isBrowser)}`;\n const image: MediaLocation | undefined = ArrayExtensions.firstOrDefault(item.Images);\n return (\n \n

{item.Name}

\n
\n \n
\n {this._renderCatalogPickerButton(item)}\n
\n
\n
\n );\n })}\n
\n );\n }\n}\n\nexport default CatalogPicker;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICatalogPickerViewProps } from './catalog-picker';\n\n/**\n * ICatalogPickerViewProps.\n * @param props - ICatalogPickerViewProps.\n * @returns - Render Catalog Picker.\n */\nexport const CatalogPickerViewFunctionComponent: React.FC = props => {\n const { catalogPicker } = props;\n return (\n \n {props.heading}\n {props.paragraph}\n {props.catalogs}\n \n );\n};\n\nexport default CatalogPickerViewFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n onTelemetryClick\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IFooterItemConfig, IFooterItemProps, IHeadingData, ILinkData } from './footer-item.props.autogenerated';\n\nexport interface IFooterViewProps extends IFooterItemProps {\n heading: React.ReactNode;\n image: React.ReactNode;\n text: React.ReactNode;\n linkText: React.ReactNode;\n className?: string;\n FooterItem: IModuleProps;\n HeadingContainer: INodeProps;\n ItemContainer: INodeProps;\n Link: INodeProps;\n EditableLink: React.ReactNode;\n}\n\n/**\n *\n * FooterItem component.\n * @extends {React.PureComponent>}\n */\nexport class FooterItem extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private attributes: Msdyn365.IDictionary | undefined;\n\n constructor(props: IFooterItemProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n // Construct telemetry attribute to render\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\n }\n\n public render(): JSX.Element {\n const { heading, image, link, text } = this.props.config;\n const footerItemClassName = classnames('ms-footer__item', this.props.config.className);\n const linkText = link && link.linkText ? link.linkText : '';\n this.payLoad.contentAction.etext = linkText;\n this.attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\n const viewProps: IFooterViewProps = {\n ...this.props,\n heading: this._createHeading(heading!),\n image: this._createImageMarkup(image!),\n text: this._createText(text!),\n linkText: this._createLinkText(link!),\n EditableLink: this._createLink(link!),\n\n FooterItem: {\n moduleProps: this.props,\n className: footerItemClassName\n },\n\n HeadingContainer: {\n className: 'ms-footer__heading'\n },\n\n ItemContainer: {\n className: 'ms-footer__link__container'\n },\n\n // @ts-expect-error\n Link: link &&\n link.linkUrl &&\n link.linkUrl.destinationUrl && {\n tag: 'a',\n role: 'link',\n className: 'ms-footer__link',\n href: link.linkUrl.destinationUrl,\n title: linkText,\n 'aria-label': link.ariaLabel,\n target: link.openInNewTab ? '_blank' : undefined,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText),\n ...this.attributes\n },\n className: footerItemClassName\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.text = event.target.value);\n\n public handleLinkTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.link!.linkText = event.target.value);\n\n private _createLink(link: ILinkData): React.ReactNode | null {\n if (link) {\n const linkText = link.linkText ? link.linkText : '';\n\n // TODO: Update the inner tag in the anchor link to span\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-footer__link',\n linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: this.attributes!,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText)\n };\n return (\n \n );\n }\n return null;\n }\n\n private _createLinkText(link: ILinkData): React.ReactNode | null {\n if (!link || !link.linkText) {\n return null;\n }\n\n return {link.linkText};\n }\n\n private _createHeading(heading: IHeadingData): React.ReactNode | null {\n if (!heading || !heading.text || heading.text.length === 0) {\n return null;\n }\n\n return (\n \n );\n }\n\n private _createText(text: string): React.ReactNode | null {\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n private _createImageMarkup(item: Msdyn365.IImageData, ariaHiddenAttr?: boolean): React.ReactNode | null {\n if (!item || !item.src || item.src.length === 0) {\n return null;\n }\n\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=24&h=24&m=6', w: 0, h: 0 },\n lg: { q: 'w=24&h=24&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n return (\n \n );\n }\n}\n\nexport default FooterItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IFooterViewProps } from './footer-item';\n\n/**\n *\n * FooterItemView component.\n * @extends {React.PureComponent}\n */\nexport class FooterItemView extends React.PureComponent {\n public render(): JSX.Element | null {\n const { FooterItem } = this.props;\n return {this._renderElement(this.props)};\n }\n\n private _renderElement(props: IFooterViewProps): React.ReactNode | null {\n const { heading, HeadingContainer, Link, linkText, image, text, EditableLink } = props;\n if (heading) {\n return {heading} ;\n } else if (Link && image) {\n return (\n \n {linkText}\n {image}\n \n );\n } else if (Link) {\n return EditableLink;\n }\n return (\n <>\n {text}\n {image}\n \n );\n }\n}\n\nexport default FooterItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n getTelemetryObject,\n IComponentNodeProps,\n IModuleProps,\n INodeProps,\n ISingleSlideCarouselProps,\n ITelemetryContent,\n NodeTag,\n SingleSlideCarousel\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { IInteractiveFeatureCollectionProps } from './interactive-feature-collection.props.autogenerated';\n\n/**\n * Interactive Feature Collection view props.\n */\nexport interface IInteractiveFeatureCollectionViewProps extends IInteractiveFeatureCollectionProps<{}> {\n title: React.ReactNode;\n interactiveFeatureCollectionHeading: INodeProps;\n interactiveFeatureCollectionContainer: IModuleProps;\n interactiveFeatureCollectionDesktopContainer: INodeProps;\n interactiveFeatureCollectionDesktopItems: React.ReactNode[];\n interactiveFeatureCollectionMobileContainer: INodeProps;\n interactiveFeatureCollectionMobileItems: React.ReactNode[];\n singleSlideCarouselComponentProps: INodeProps;\n singleSlideCarouselItemContainer: INodeProps;\n}\n\n/**\n *\n * InteractiveFeatureCollection component.\n * @extends {React.PureComponent>}\n */\nexport class InteractiveFeatureCollection extends React.PureComponent> {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n private static _getFeatureItem(item: React.ReactNode, index: number, itemsCounter: number): React.ReactNode {\n const keyIndex = `interactive-feature-mosaic-item__${index}`;\n return (\n \n {React.cloneElement(item as React.ReactElement, { indexItem: index, itemCounter: itemsCounter, isMosaic: true })}\n \n );\n }\n\n public constructor(props: IInteractiveFeatureCollectionProps) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { resources } = this.props;\n const { title, className } = this.props.config;\n const interactiveItems = this.props.slots && this.props.slots.interactiveFeatureItems;\n const itemsFeatureCounter = interactiveItems && interactiveItems.length;\n const singleSlideCarouselComponentProps: IComponentNodeProps = {\n tag: SingleSlideCarousel,\n className: this.props.config.className ?? '',\n flipperPrevLabel: resources.flipperPrevious,\n flipperNextLabel: resources.flipperNext,\n parentId: this.props.id,\n telemetryContent: this._telemetryContent,\n vertical: false\n };\n const initItemsFeatureCounter = 0;\n const createHeading = title && (\n \n );\n const viewProps = {\n ...this.props,\n title: createHeading,\n interactiveFeatureCollectionHeading: {\n className: 'ms-interactive-feature-collection__heading'\n },\n interactiveFeatureCollectionContainer: {\n moduleProps: this.props,\n className: classnames('ms-interactive-feature-collection', className)\n },\n interactiveFeatureCollectionDesktopContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-desktop'\n },\n interactiveFeatureCollectionMobileContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-mobile'\n },\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer: {\n tag: 'li' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel',\n role: 'listitem'\n },\n interactiveFeatureCollectionMobileItems: this.props.slots.interactiveFeatureItems,\n interactiveFeatureCollectionDesktopItems:\n itemsFeatureCounter > initItemsFeatureCounter &&\n interactiveItems.map((item: React.ReactNode, index: number) =>\n InteractiveFeatureCollection._getFeatureItem(item, index, itemsFeatureCounter)\n )\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * To handle text change.\n * @param event - To handle text change event.\n * @name - HandleTextChange\n * @public\n * @returns - The Text value.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.title!.text = event.target.value);\n}\n\nexport default InteractiveFeatureCollection;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { IInteractiveFeatureCollectionViewProps } from './interactive-feature-collection';\n\n/**\n * Feature Collection View.\n * @param props - Feature Collection view props.\n * @returns Feature Collection View.\n */\nexport const interactiveFeatureCollectionView: React.FC = props => {\n const {\n title,\n interactiveFeatureCollectionHeading,\n interactiveFeatureCollectionContainer,\n interactiveFeatureCollectionDesktopContainer,\n interactiveFeatureCollectionDesktopItems,\n interactiveFeatureCollectionMobileItems,\n interactiveFeatureCollectionMobileContainer,\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer\n } = props;\n return (\n \n {title}\n {interactiveFeatureCollectionDesktopItems}\n \n \n {interactiveFeatureCollectionMobileItems &&\n interactiveFeatureCollectionMobileItems.map((tileItem: ReactNode, index: number) => {\n const keyIndex = `interactive-feature-carousel-item__${index}`;\n return (\n \n {tileItem}\n \n );\n })}\n \n \n \n );\n};\n\nexport default interactiveFeatureCollectionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport MsDyn365, { IImageSettings, Image } from '@msdyn365-commerce/core';\nimport { addThrottledEvent, Drawer, IModuleProps, INodeProps, KeyCodes, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { computed, observable } from 'mobx';\nimport React from 'react';\n\nimport { ISitePickerConfig, ISitePickerProps } from './site-picker.props.autogenerated';\n\nexport interface ISitePickerViewProps extends ISitePickerProps {\n SitePicker: IModuleProps;\n SitePickerMenu: INodeProps;\n SitePickerMenuSpan: INodeProps;\n SitePickerMenuList: INodeProps;\n SitePickerMenuListItem: INodeProps;\n SitePickerMenuListItemArray: React.ReactNode[] | undefined;\n siteOptionsState: boolean;\n SitePickerMobileContainer: INodeProps;\n isMobileView: boolean;\n renderSiteOptions(): void;\n resetSiteOptionsState(): void;\n}\n\nexport type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\ninterface ISitePickerState {\n expandSiteOptions: boolean;\n isMobile: boolean;\n}\n\n/**\n *\n * SitePicker component.\n * @extends {React.PureComponent>}\n */\nclass SitePicker extends React.PureComponent, ISitePickerState> {\n private readonly _cookieName: string = '_msdyn365___site_';\n\n private readonly _cookieExpirationInSeconds: number = 5_184_000;\n\n private readonly _sitePickerMenuNode: React.RefObject;\n\n private readonly _sitePickerMenuButton: React.RefObject;\n\n private resizeThrottledEventHandler?: (event: Event) => void;\n\n @observable\n private viewport: GridSize;\n\n public constructor(props: ISitePickerViewProps) {\n super(props);\n this._handleChange = this._handleChange.bind(this);\n this._sitePickerMenuNode = React.createRef();\n this._sitePickerMenuButton = React.createRef();\n this._renderSiteOptions = this._renderSiteOptions.bind(this);\n this._resetSiteOptionsState = this._resetSiteOptionsState.bind(this);\n this._escFunction = this._escFunction.bind(this);\n this._handleOutsideClick = this._handleOutsideClick.bind(this);\n this._updateViewport = this._updateViewport.bind(this);\n this.viewport =\n props.context.request && props.context.request.device && props.context.request.device.Type === 'Mobile' ? 'xs' : 'lg';\n this.state = {\n expandSiteOptions: false,\n isMobile: this.isMobile\n };\n }\n\n @computed get isMobile(): boolean {\n return this.viewport === 'xs' || this.viewport === 'sm';\n }\n\n public componentDidMount(): void {\n if (MsDyn365.isBrowser) {\n document?.addEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\n document?.body?.addEventListener('mousedown', this._handleOutsideClick);\n this.resizeThrottledEventHandler = window && addThrottledEvent(window, 'resize', this._updateViewport as EventListener);\n this._updateViewport();\n }\n }\n\n public componentWillUnmount(): void {\n if (MsDyn365.isBrowser) {\n document?.removeEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\n document?.body?.removeEventListener('mousedown', this._handleOutsideClick, false);\n window && window.removeEventListener('resize', this.resizeThrottledEventHandler!, false);\n }\n }\n\n public render(): JSX.Element | null {\n const viewProps: ISitePickerViewProps = {\n ...(this.props as ISitePickerProps),\n SitePicker: {\n moduleProps: this.props,\n className: classnames('ms-site-picker', this.props.config.className, this.state.isMobile ? 'mobile-view' : 'desktop-view'),\n tag: 'div'\n },\n SitePickerMenu: {\n tag: 'button' as NodeTag,\n className: 'ms-site-picker__button',\n 'aria-label': this.props.config.heading?.text,\n 'aria-expanded': this.state.expandSiteOptions,\n onClick: this.props,\n ref: this._sitePickerMenuButton\n },\n SitePickerMenuSpan: {\n className: 'ms-site-picker__span',\n tag: 'span'\n },\n SitePickerMenuList: {\n className: 'ms-site-picker__list',\n role: 'menu',\n tag: 'ul',\n ref: this._sitePickerMenuNode\n },\n SitePickerMenuListItem: {\n className: 'ms-site-picker__list__item',\n role: 'presentation',\n tag: 'li'\n },\n SitePickerMobileContainer: {\n tag: Drawer,\n className: 'ms-site-picker__drawer',\n toggleButtonText: this.props.config.heading?.text,\n openGlyph: 'ms-site-picker__drawer-open',\n closeGlyph: 'ms-site-picker__drawer-close',\n glyphPlacement: 'end'\n },\n isMobileView: this.state.isMobile,\n SitePickerMenuListItemArray: this._renderSitePickerImage(),\n renderSiteOptions: this._renderSiteOptions,\n resetSiteOptionsState: this._resetSiteOptionsState,\n siteOptionsState: this.state.expandSiteOptions\n };\n return this.props.renderView(viewProps);\n }\n\n private _renderSiteOptions(): void {\n const expandSiteOptionsState = this.state.expandSiteOptions;\n this.setState({\n expandSiteOptions: !expandSiteOptionsState\n });\n }\n\n private _resetSiteOptionsState(): void {\n this.setState({\n expandSiteOptions: false\n });\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private readonly _escFunction = (event: any) => {\n const key = event.keyCode;\n if (this.state.expandSiteOptions) {\n switch (key) {\n case KeyCodes.Escape: {\n setTimeout(() => {\n const nextFocus = document && document.activeElement;\n if (\n this._sitePickerMenuButton?.current?.contains(nextFocus) ||\n this._sitePickerMenuNode?.current?.contains(nextFocus)\n ) {\n this._resetSiteOptionsState();\n this._sitePickerMenuButton?.current?.focus();\n }\n }, 50);\n break;\n }\n case KeyCodes.Tab: {\n setTimeout(() => {\n const nextFocus = document && document.activeElement;\n if (\n !this._sitePickerMenuButton?.current?.contains(nextFocus) &&\n !this._sitePickerMenuNode?.current?.contains(nextFocus)\n ) {\n this._resetSiteOptionsState();\n }\n }, 50);\n break;\n }\n default:\n return;\n }\n }\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private readonly _handleOutsideClick = (event: any) => {\n if (\n (this._sitePickerMenuButton.current?.contains(event.target) && this.state.expandSiteOptions) ||\n (this._sitePickerMenuNode.current?.contains(event.target) && this.state.expandSiteOptions)\n ) {\n return;\n }\n this._resetSiteOptionsState();\n };\n\n private _handleChange(e: React.MouseEvent): void {\n e.preventDefault();\n if (e.currentTarget.href && e.currentTarget.href.length > 0 && window) {\n if (this.props.context.request.cookies.isConsentGiven()) {\n const cookieConfig = { maxAge: this._cookieExpirationInSeconds };\n this.props.context.request.cookies.set(this._cookieName, e.currentTarget.href, cookieConfig);\n }\n window.location.assign(e.currentTarget.href);\n }\n }\n\n private _renderSitePickerImage(): React.ReactNode[] | undefined {\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=50&h=25&m=6', w: 0, h: 0 },\n sm: { q: 'w=50&h=25&m=6', w: 0, h: 0 },\n md: { q: 'w=40&h=20&m=6', w: 0, h: 0 },\n lg: { q: 'w=40&h=20&m=6', w: 0, h: 0 },\n xl: { q: 'w=40&h=20&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n const siteOptions = this.props.config.siteOptions && this.props.config.siteOptions;\n return (\n siteOptions &&\n siteOptions.map((item, index) => {\n const image = item?.siteImage;\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings!,\n imageSettings: image?.imageSettings?.viewports ? image.imageSettings : defaultImageSettings\n };\n return (\n \n {item?.siteName}\n \n \n );\n })\n );\n }\n\n private _updateViewport(): void {\n this.viewport = this._getViewport();\n this.setState({ isMobile: this.isMobile });\n }\n\n private _getViewport(): GridSize {\n const { context } = this.props;\n if (context.request && context.request.device && context.request.device.Type === 'Mobile') {\n return 'xs';\n }\n\n if (typeof window !== undefined && window.innerWidth) {\n const gridSettings = context.request.gridSettings;\n if (gridSettings) {\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\n return 'xs';\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\n return 'sm';\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\n return 'md';\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\n return 'lg';\n }\n return 'xl';\n }\n }\n return 'xs';\n }\n}\n\nexport default SitePicker;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISitePickerViewProps } from './site-picker';\n\nexport default (props: ISitePickerViewProps) => {\n return <>{_renderSitePicker(props)};\n};\n\nconst _renderDesktopView = (props: ISitePickerViewProps) => {\n const { SitePickerMenu, SitePickerMenuSpan } = props;\n return (\n <>\n \n {props.config.heading?.text}\n \n \n {props.siteOptionsState ? _renderSiteOptionsList(props) : null}\n \n );\n};\n\nconst _renderSiteOptionsList = (props: ISitePickerViewProps): React.ReactNode => {\n const { SitePickerMenuList, SitePickerMenuListItem, SitePickerMenuListItemArray } = props;\n const options = SitePickerMenuListItemArray!.map((item, index) => {\n return (\n \n {item}\n \n );\n });\n return (\n \n {options}\n \n );\n};\n\nconst _renderMobileView = (props: ISitePickerViewProps): React.ReactNode => {\n const { SitePickerMobileContainer } = props;\n return (\n \n
\n {props.SitePickerMenuListItemArray?.map((item, index) => {\n return
{item}
;\n })}\n
\n
\n );\n};\n\nconst _renderSitePicker = (props: ISitePickerViewProps): React.ReactNode => {\n const { isMobileView, SitePicker } = props;\n return {isMobileView ? _renderMobileView(props) : _renderDesktopView(props)};\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IImageData, IImageSettings, Image } from '@msdyn365-commerce/core';\nimport {\n IMediaGalleryThumbnailItemViewProps,\n IMediaGalleryThumbnailsViewProps,\n IMediaGalleryViewProps\n} from '@msdyn365-commerce-modules/media-gallery';\nimport { getFallbackImageUrl } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, KeyCodes, Module, Node, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport React from 'react';\n\n/**\n * Render the thumbnail item images.\n * @param thumbnail - The carousel thumbnail line props.\n * @returns Return HTML having thumnailcontainer props with image.\n */\nconst renderThumbnailItem = (thumbnail: IMediaGalleryThumbnailItemViewProps): JSX.Element => {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from media-gallery.tsx file\n const { ThumbnailItemContainerProps, Picture } = thumbnail;\n\n return {Picture};\n};\n\n/**\n * Gets the thumbnail item to display media gallery images.\n * @param image - The media gallery images.\n * @param imageSettings - Image settings for the image gallery items.\n * @param imageId - Image id.\n * @param modifiedActiveIndex - Modified Index of the images when selection changes.\n * @param props - The Media gallery view props from business layer.\n * @returns Return thumbnail view props which will be used to render images.\n */\nconst GetThumbnailItemComponent = (\n image: IImageData,\n imageSettings: IImageSettings,\n imageId: number,\n modifiedActiveIndex: number,\n props: IMediaGalleryViewProps\n): IMediaGalleryThumbnailItemViewProps => {\n let fallbackImage: string | undefined = '';\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access -- Site level config can be of any type.\n const emptyPlaceHolderImage = props.context.app.config?.placeholderImageName as string;\n if (props.data.product.result) {\n fallbackImage = getFallbackImageUrl(props.data.product.result.ItemId, props.context.request.apiSettings);\n }\n if (emptyPlaceHolderImage && fallbackImage) {\n fallbackImage = `${fallbackImage},${emptyPlaceHolderImage}`;\n }\n\n /**\n * OnClick method of media gallery item.\n */\n const onClick = () => {\n props.callbackToggle?.();\n props.callbackThumbnailClick?.(imageId);\n props.state.activeIndex = imageId;\n };\n\n const classes = classnames(\n 'ms-media-gallery__thumbnail-item',\n modifiedActiveIndex === imageId ? 'ms-media-gallery__thumbnail-item-active' : ''\n );\n\n /**\n * Keydown event of media gallery item.\n * @param event - React.KeyboardEvent.\n */\n const handleKeyDown = (event: React.KeyboardEvent) => {\n if (event.keyCode === KeyCodes.Enter) {\n event.preventDefault();\n onClick();\n }\n };\n const defaultIndex = 0;\n return {\n ThumbnailItemContainerProps: {\n tag: 'li' as NodeTag,\n className: classes,\n role: 'presentation',\n key: imageId\n },\n Picture: (\n \n \n \n \n \n \n \n \n )\n };\n};\n\n/**\n * Gets the empty thumbnail item to display media gallery images.\n * @param imageSettings - Image settings for the image gallery items.\n * @param props - The Media gallery view props from business layer.\n * @returns Return thumbnail view props which will be used to render empty images.\n */\nconst GetEmptyThumbnailItemComponent = (\n imageSettings: IImageSettings,\n props: IMediaGalleryViewProps\n): IMediaGalleryThumbnailItemViewProps => {\n let fallbackImage: string | undefined = '';\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access -- Site level config can be of any type.\n const emptyPlaceHolderImage = props.context.app.config?.placeholderImageName as string;\n if (props.data.product.result) {\n fallbackImage = getFallbackImageUrl(props.data.product.result.ItemId, props.context.request.apiSettings);\n }\n if (emptyPlaceHolderImage && fallbackImage) {\n fallbackImage = `${fallbackImage},${emptyPlaceHolderImage}`;\n }\n return {\n ThumbnailItemContainerProps: {\n tag: 'li' as NodeTag,\n className: 'ms-media-gallery__thumbnail-item',\n role: 'tab',\n tabIndex: 0,\n key: 0,\n 'aria-label': '',\n 'aria-selected': true\n },\n Picture: (\n \n )\n };\n};\n\n/**\n * Update media gallery items method.\n * @param items - The media gallery thumbnail item view props.\n * @returns The IImageData array.\n */\nconst getMediaGalleryItems = (items?: IMediaGalleryThumbnailItemViewProps[]): IImageData[] | undefined => {\n return items?.map(item => {\n return {\n altText: item.Picture.props.altText,\n src: item.Picture.props.src\n };\n });\n};\n\nconst defaultThumbnailImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=295&h=295&q=80&m=6&f=jpg', w: 295, h: 295 },\n xl: { q: 'w=295&h=295&q=80&m=6&f=jpg', w: 295, h: 295 }\n },\n lazyload: true,\n cropFocalRegion: true\n};\n\n/**\n * Render the Media gallery thumbnails to represent images in grid view.\n * @param thumbnails - The thumbnail view props.\n * @param props - The media gallery view props.\n * @returns - The single slide carousel component to render as media gallery image.\n */\nconst renderThumbnails = (thumbnails: IMediaGalleryThumbnailsViewProps, props: IMediaGalleryViewProps): JSX.Element => {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from media-gallery.tsx file\n const { ThumbnailsContainerProps, SingleSlideCarouselComponentProps } = thumbnails;\n const { state, Thumbnails } = props;\n const mediaGalleryItems = getMediaGalleryItems(Thumbnails.items);\n\n const items: IMediaGalleryThumbnailItemViewProps[] | undefined =\n // eslint-disable-next-line multiline-ternary -- need multiline for easy code reading\n state.lastUpdate && mediaGalleryItems && mediaGalleryItems[0].src === 'empty'\n ? [GetEmptyThumbnailItemComponent(defaultThumbnailImageSettings, props)]\n : // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from media-gallery\n mediaGalleryItems?.map((item: IImageData, id: number) =>\n GetThumbnailItemComponent(item, defaultThumbnailImageSettings, id, state.activeIndex, props)\n );\n\n return (\n \n {items?.map(renderThumbnailItem)}\n \n );\n};\n\n/**\n * Render the Media gallery items using viewprops.\n * @param props - The media gallery view props.\n * @returns The media gallery module wrapping up images node.\n */\nconst mediaGalleryView: React.FC = props => {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from media-gallery.tsx file\n const { CarouselProps, Thumbnails, MediaGallery, Modal } = props;\n return (\n \n \n {Modal}\n {renderThumbnails(Thumbnails, props)}\n \n );\n};\n\nexport default mediaGalleryView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IImageSettings, Image } from '@msdyn365-commerce/core';\nimport {\n IReportReviewModalViewProps,\n IReviewCardViewProps,\n IReviewsListData,\n IReviewsListResources,\n IReviewsListState,\n IReviewsListViewProps\n} from '@msdyn365-commerce-modules/ratings-reviews';\nimport { ArrayExtensions, generateImageUrl } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IReviewsListProps } from '../definition-extensions/reviews-list.ext.props.autogenerated';\n\n/**\n * Build Review Card.\n * @param props - Review Card ViewProps.\n * @param resources - Resource Strings.\n * @param isUserReview - User review flag.\n * @returns JSX Element.\n */\nconst buildReviewCard = (props: IReviewCardViewProps, resources: IReviewsListResources, isUserReview: boolean) => {\n return (\n \n \n
\n {props.rating}\n {props.date}\n
\n {props.name}\n
\n \n \n {props.reviewTitle}\n {props.reviewText}\n \n \n {props.responseName}\n {props.responseDate}\n {props.responseText}\n \n \n {isUserReview ? undefined :

{resources.wasReviewHelpfulText}

}\n {props.like}\n {props.dislike}\n {props.edit}\n
\n
\n
\n );\n};\n\n/**\n * Render Product Image.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductImage = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const primaryImageSource = props.data.product.result?.PrimaryImageUrl;\n const imageUrl = generateImageUrl(primaryImageSource, props.context.request.apiSettings);\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=111&h=111&m=6', w: 111, h: 111 },\n sm: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n md: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n lg: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n xl: { q: 'w=130&h=130&m=6', w: 130, h: 130 }\n },\n lazyload: true,\n cropFocalRegion: true\n };\n\n return (\n \n );\n};\n\n/**\n * Render Product Description.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductDescription = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const product = props.data.product.result;\n return (\n \n
{renderProductImage(props)}
\n
\n
{product?.Name}
\n
{product?.Name}
\n
{product?.ItemId}
\n
\n
\n );\n};\n\n/**\n * Build Review modal.\n * @param props - Review list ViewProps.\n * @returns JSX Element.\n */\nconst createReviewModal = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const { resources, moduleProps, reviewModal } = props;\n return (\n \n {reviewModal.modalHeader}\n \n \n \n {renderProductDescription(props)}\n \n
{resources.selectRatingLabel}
\n {reviewModal.rating}\n
\n
\n \n {resources.reviewTitleLabel}\n {reviewModal.titleInput}\n \n \n {resources.reviewTextLabel}\n {reviewModal.textInput}\n \n {reviewModal.privacyPolicyUrl}\n {reviewModal.error}\n
\n
\n \n {reviewModal.submitButton}\n {reviewModal.cancelButton}\n \n
\n );\n};\n\n/**\n * Build Review modal.\n * @param props - Review modal ViewProps.\n * @param state - Review List State.\n * @returns JSX Element.\n */\nconst createReportModal = (props: IReportReviewModalViewProps, state: IReviewsListState): JSX.Element => {\n return (\n \n {state.reported ? props.headerSubmitted : props.header}\n \n {state.reported ? props.reportSubmittedMessage : [props.reportMessage, props.radioButtons, props.error]}\n \n {state.reported ? props.succesfulButton : [props.submitButton, props.cancelButton]}\n \n );\n};\n\n/**\n * ReviewsList view.\n * @param props - Ratings ReviewsList ViewProps.\n * @returns ReviewsList view module.\n */\nconst ReviewsListview: React.FC> = props => {\n const {\n filterByDropdown,\n heading,\n moduleProps,\n noReviewsMessage,\n noReviewsWithFilterMessage,\n pageControls,\n refineReviewsProps,\n reportReviewModal,\n reviewsListProps,\n reviewCards,\n sortByDropdown,\n state,\n userReview,\n resources\n } = props;\n\n if (!userReview && !ArrayExtensions.hasElements(reviewCards) && !state.isFilterApplied) {\n return {noReviewsMessage};\n }\n\n return (\n \n {heading}\n \n {sortByDropdown}\n {filterByDropdown}\n \n \n {userReview && buildReviewCard(userReview, resources, true)}\n {reviewCards.map(review => {\n return buildReviewCard(review, resources, false);\n })}\n \n {!ArrayExtensions.hasElements(reviewCards) && state.isFilterApplied && noReviewsWithFilterMessage}\n {pageControls}\n {createReviewModal(props)}\n {createReportModal(reportReviewModal, state)}\n \n );\n};\n\nexport default ReviewsListview;\n"],"names":["SubscriptionStatus","InvoiceStatus","InvoicePeriod","getInvoiceFrequency","resources","period","ONETIME","oneTime","DAILY","daily","MONTHLY","monthly","QUARTALY","quartaly","SEMIANNUALLY","semianually","ANNULALY","annually","formatDate","context","date","undefined","cultureFormatter","year","month","day","formatCurrency","props","currency","price","_props$context","NosSubscriptionDetails","React","constructor","super","_initialize","async","actionInput","GetSubscriptionDetailsInput","getSubscriptionDetailsAction","this","actionContext","then","res","setState","subscriptionDetailsData","customerReferenceState","CustomerReference","editCustomerReference","handleHeadingChange","event","config","heading","text","target","value","_renderContent","modalContainer","modalHeaderContainer","modalFooterContainer","modalBodyContainer","state","ScheduleNumber","className","subDetailsStatus","getSubscriptionStatus","status","ACTIVE","active","ARCHIVED","archived","LASTBILLING","lastBilling","ONHOLD","onHold","TERMINATED","terminated","Status","PaymentFailed","subDetailsPaymentFailed","Button","subDetailsPaymentLinkText","onClick","window","open","PaymentLinkUrl","title","subDetailsStartDate","StartDate","Date","subDetailsNextPaymentDate","NextPaymentDate","PaymentMethod","subDetailsPaymentMethod","CreditCardNumber","CreditCardTypeName","endingWith","subDetailsCustomerReference","editButtonText","type","classnames","onChange","e","disabled","ref","customerReferenceRef","saveBtnLabel","changeCustomerReference","cancelButtonAriaLabel","cancel","_this$state$subscript","cancelBtnLabel","subDetailsAction","isCanceled","openModal","subDetailsCancelSubscription","isModalOpen","Module","Object","assign","Node","cancelText","closeModal","toggleDisableText","cancelSubscription","loadingMessage","toggleEnableText","CancelSubscriptionInput","LineNum","cancelSubscriptionAction","_res$response","response","_this$state$subscript2","input","current","scheduleNumber","changeCustomerReferenceInput","ChangeCustomerReferenceInput","changeCustomerReferenceAction","_res$response2","_renderSubscriptionTotals","_subscriptionDetailsD","_subscriptionDetailsD2","_subscriptionDetailsD3","_subscriptionDetailsD4","_subscriptionDetailsD5","_subscriptionDetailsD6","_subscriptionDetailsD7","_subscriptionDetailsD8","_subscriptionDetailsD9","_subscriptionDetailsD10","_subscriptionDetailsD11","subDetailsSubscriptionTotals","scope","subDetailsHeaderProduct","subDetailsHeaderQuantity","subDetailsHeaderTotal","SubscriptionLineTotals","ItemName","Quantity","subDetailsHeaderSubTotal","CurrencyCode","Number","SubTotalAmount","Frequency","subDetailsVatHeaderPercent","VATPercantage","VATAmount","TotalAmount","_renderBillingAddress","_subscriptionDetailsD12","_subscriptionDetailsD13","subDetailsHeaderBillingAddress","SubscriptionAddressBillTo","Name","dangerouslySetInnerHTML","__html","FormattedAddress","_renderContactInformation","subDetailsHeaderContact","ContactGivenName","ContactSurname","ContactEmailAddress","_renderRelatedInvoices","_subscriptionDetailsD14","subDetailsRelatedInvoices","subDetailsHeaderId","subDetailsHeaderDate","SubscriptionRelatedInvoices","map","el","InvoiceId","key","InvoiceDate","getInvoiceStatus","UNPAID","unpaid","PAID","paid","InvoicePaymentStatus","InvoiceTotalAmount","InvoiceCurrencyCode","componentDidMount","requestContext","user","isAuthenticated","shouldComponentUpdate","nextProps","nextState","data","render","moduleProps","tag","Modal","isOpen","toggle","modalTransition","timeout","shouldUpdateFocusToFirstElement","ModalHeader","closeButtonTabIndex","ModalFooter","ModalBody","viewProps","_objectSpread","Msdyn365","editProps","onEdit","request","content","billingAddress","contactInformation","relatedInvoices","subscriptionTotals","renderView","onChangeHandler","callbacks","newValue","updateQuantity","_state$productPrice","_state$productPrice2","productId","productPrice","ProductId","catalogId","CatalogId","GetGraduatedPriceInput","getPriceAction","document","querySelectorAll","forEach","item","innerHTML","ProductPrice","_fetchGraduatedPrice","_renderTextBlock","textBlock","length","index","_renderAddToCart","addToCart","_props$context$app$ro","ContainerProps","errorBlock","button","payLoad","getPayloadObject","telemetryContent","payload","TelemetryEvent","AddToCart","attributes","getTelemetryAttributes","businessSignUpUrl","_props$context$app$ro2","_props$context$reques","_props$context$reques2","app","routes","businessPartnerSelection","destinationUrl","url","requestUrl","origin","sitePath","_registerButton","registerLinkText","href","onTelemetryClick","payLoadLink","_loginButton","loginLinkText","signInUrl","_renderConfigure","configure","dropdowns","_renderConfigureDropdown","dropdown","LabelContainerProps","errors","select","_renderPeriod","frequencies","disableSubscriptionPeriodDropdown","_renderKeyInPrice","keyInPrice","_props$data$product$r","ModuleProps","MediaGalleryContainerProps","ProductInfoContainerProps","description","quantity","inventoryLabel","max","unitOfMeasure","quantityLimitsMessages","periodValue","setPeriodValue","monthlyPeriodOption","periodLabel","skuText","product","result","ItemId","mediaGallery","renderQuantity","quantityComponent","extentionResources","IncrementalQuantity","id","currentCount","inputQuantityAriaLabel","decrementButtonAriaLabel","incrementButtonAriaLabel","minQuantityText","maxQuantityText","slots","textBlocks","ArrayExtensions","hasElements","productSpecification","AddressShow","_ref","AddressDetail","items","AddressAddUpdate","_ref2","AddressForm","hasError","error","isShowSaveButton","saveButton","isShowCancelButton","cancelButton","AddressItem","label","alert","AddressError","message","CheckoutBillingAddress","checkoutErrorRef","viewState","showAddress","showAddOrUpdateAddress","isShowAddress","isShowAddOrUpdateAddress","AutoSuggestEmptyComponent","noSearchResultImage","src","Image","altText","gridSettings","imageSettings","lazyload","viewports","xs","w","h","q","renderProductNotFoundResultsImage","emptySearchTextHeading","emptySearchText","FormComponent","form","searchForm","formWrapper","clearSearchButtonText","isSearchText","clearSearch","cancelBtn","renderClearButton","renderProductSuggestionsTitle","productSuggestionsHeading","productAutoSuggestionHeading","renderProductNotFoundResults","noResultContentHeadingText","noResultContentParagraphText","Search","AutoSuggestAriaLabel","AutoSuggestAriaLabelText","searchText","AutoSuggest","ProductSuggest","UlProduct","autosuggestProduct","SearchForm","FormWrapper","isLoadingAutoSuggest","isLoadingNode","searchSuggestionHeading","searchTextString","setSearchTextString","useState","useEffect","StringExtensions","isNullOrEmpty","propsFormInput","propsFormInputCurrent","action","isSearchFormExpanded","renderTitle","concat","searchAutoSuggestionHeading","format","ProductSuggestionsComponent","productSuggest","ulProduct","productSuggestions","productSuggestionHeading","_item$id","LiProduct","AProduct","thumbnail","AccordionItem","moduleClassName","accordionItemTitle","_onToggle","bind","getTelemetryObject","telemetryPageName","friendlyName","telemetry","accordionExpandedStateResult","accordionExpandedState","expanded","isAllExpanded","isExpandedOnInitialLoad","AccordionItemContainer","AccordionItemContent","drawer","ControlledDrawer","toggleButtonText","collapseProps","onToggle","onTextChange","accordionSlots","interactionStyle","accordionState","update","createAccordionStateInput","__decorate","observer","_renderAccordionItemContent","accordionItemContent","Accordion","expandAllButtonRef","collapseAllButtonRef","_onExpandAll","_onCollapseAll","isDisabled","headingComponent","accordionViewProps","AccordionContainer","HeaderSection","HeadingWrapper","accordianButtonsContainer","accordionButtons","_renderAccordionButton","accordionItemContainer","accordionItems","_getAccordionItem","contentAction","etext","TelemetryConstant","ExpandAll","attributeExpandAll","CollapseAll","attributeCollapseAll","showToggleAll","expandAllText","toggleAllSeparator","collapseAllText","setTimeout","_this$collapseAllButt","focus","_this$expandAllButton","AadGeneric","$i2e","$element","insertServiceContent","getElementContent","initialize","aadGeneric","aadConainer","aadAPIConainer","AccountAddressTile","handleLinkTextChange","linkIndex","links","linkText","accountAddressTileDescriptionForSingleAddress","accountAddressTileDescriptionForMultipleAddresses","address","addressCount","accountAddressTileDescription","LinksComponent","DescriptionComponent","_mapEditableLinks","linkdata","editableLinks","link","editableLink","ariaLabel","linkUrl","openInNewTab","role","additionalProperties","push","AccountInvoiceTileDescription","AccountInvoiceTile","_data$customerBalance","currencyCode","accountInvoiceTileDescription","invoiceTotalAmount","customerBalance","OpenInvoiceBalance","toFixed","AccountLoyaltyTile","signUpLinkText","viewLinkText","signUpLinkAriaLabel","viewLinkAriaLabel","accountLoyaltySummary","accountLoyaltyMemberSummary","loyaltyCard","CardNumber","decimalPrecision","points","RewardPoints","rewardPoint","ActivePoints","AccountOrderTemplatesTileDescription","AccountOrderTemplatesTileLinks","AccountOrderTemplatesTile","params","isEditor","isChannelTypeB2B","accountOrderTemplatesTileDescription","orderTemplates","orderTemplatesCount","AccountWishlistTile","accountWishlistTileDescription","wishlists","wishlistsCount","CommerceListLines","AccountOrganizationUsersTileDescription","AccountOrganizationUsersTileLinks","OrganizationUsersTile","accountOrganizationUsersTileDescriptionForSingleUser","accountOrganizationUsersTileDescriptionForMultipleUsers","numUsers","users","accountOrganizationUsersTileDescription","customerInformation","IsB2bAdmin","errorClassName","GetMaxLength","maxLength","parsedMaxLength","parseInt","isNaN","pattern","forId","htmlFor","successClassName","SignUp","handleParagraphChange","disclaimer","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","clearInterval","isInitialized","obj","ID","toLowerCase","isEmailVerificationRequried","templateVersion","emailRegex","PAT","VERIFY","isGivenNameVerificationRequried","isSurnameVerificationRequried","newPasswordRegex","reenterPasswordRegex","UX_INPUT_TYPE","PAT_DESC","invalidPasswordError","invalidEmailAddressError","errorMessages","required_field","requiredFieldMissingError","getValue","v1Value","v2Value","EmailRegex","defaultRegex","source","PasswordRegex","componentDidUpdate","isShowLoading","signUp","loading","modal","modalBody","icon","SignUpLoadingIconComponent","SignUpLoadingMessageComponent","defaultAADConainer","style","display","signUpLocalAccount","_renderLocalAccount","localAccount","_renderInput","firstNameLabelText","firstNameMaxLength","lastNameLabelText","lastNameMaxLength","emailAddressLabelText","passwordLabelText","confirmPasswordLabelText","emailVerification","isRequired","email","verificationCodeLabelText","verificationControlWrapper","buttonWrapper","buttons","SignUpButtonComponent","sendCodeButtonAriaLabel","sendCodeButtonText","verifyCodeButtonAriaLabel","verifyCodeButtonText","resendCodeButtonAriaLabel","resendCodeButtonText","changeEmailButtonAriaLabel","changeEmailButtonText","successMessage","SignUpSuccessComponent","verificationCodeSendSuccess","emailAddressVerifiedSuccess","errorMessage","SignUpErrorComponent","retryError","retryNotAllowedError","throttledError","codeExpiredError","serverError","invalidEmailError","givenNameVerification","givenName","requiredFieldMissingSummaryError","surnameVerification","surname","signUpButtonArialabel","signUpButtonText","cancelButtonArialabel","cancelButtonText","passwordEntryMismatchError","fieldIncorrectError","labelText","cssClassName","wrapper","SignUpLabelComponent","SignUpInputComponent","observable","SignUpItem","SignUpEmailVerification","SignUpGivenNameVerificationComponent","_ref3","SignUpSurnameVerificationComponent","_ref4","SignUpLoading","_ref6","_ref5","LocalAccount","CatalogPicker","handleTextChange","paragraph","_heading$tag","_this$props$data$cata","catalogPickerHeading","Text","_moduleClassName","isCatalogsAvailable","catalogs","catalogPickerParagraph","RichTextComponent","catalogValidationText","handleText","catalogPicker","_renderCatalogPicker","_renderCatalogPickerButton","RecordId","getCatalogId","currentCatalogText","linkToCatalog","isBrowser","_getUrlSync","catalogUrl","getUrlSync","fullUrl","URL","location","searchParams","set","changeCatalogButtonText","_this$props$data$cata2","reactKey","JSON","stringify","String","image","firstOrDefault","Images","tabIndex","generateImageUrl","apiSettings","Uri","galleryImageSettings","AltText","loadFailureBehavior","CatalogPickerViewFunctionComponent","FooterItem","footerItemClassName","_createHeading","_createImageMarkup","_createText","_createLinkText","EditableLink","_createLink","HeadingContainer","ItemContainer","Link","ariaHiddenAttr","lg","shouldSkipToMainImage","FooterItemView","_renderElement","InteractiveFeatureCollection","_telemetryContent","itemsCounter","keyIndex","indexItem","itemCounter","isMosaic","_this$props$config$cl","_title$tag","interactiveItems","interactiveFeatureItems","itemsFeatureCounter","singleSlideCarouselComponentProps","SingleSlideCarousel","flipperPrevLabel","flipperPrevious","flipperNextLabel","flipperNext","parentId","vertical","createHeading","interactiveFeatureCollectionHeading","interactiveFeatureCollectionContainer","interactiveFeatureCollectionDesktopContainer","interactiveFeatureCollectionMobileContainer","singleSlideCarouselItemContainer","interactiveFeatureCollectionMobileItems","interactiveFeatureCollectionDesktopItems","_getFeatureItem","interactiveFeatureCollectionView","tileItem","SitePicker","_cookieName","_cookieExpirationInSeconds","_escFunction","keyCode","expandSiteOptions","KeyCodes","Escape","_this$_sitePickerMenu","_this$_sitePickerMenu2","nextFocus","activeElement","_this$_sitePickerMenu3","_sitePickerMenuButton","contains","_sitePickerMenuNode","_resetSiteOptionsState","Tab","_this$_sitePickerMenu4","_this$_sitePickerMenu5","_handleOutsideClick","_this$_sitePickerMenu6","_this$_sitePickerMenu7","_handleChange","_renderSiteOptions","_updateViewport","viewport","device","Type","isMobile","_document","_document2","MsDyn365","addEventListener","body","resizeThrottledEventHandler","addThrottledEvent","componentWillUnmount","_document3","_document4","removeEventListener","_this$props$config$he","_this$props$config$he2","SitePickerMenu","SitePickerMenuSpan","SitePickerMenuList","SitePickerMenuListItem","SitePickerMobileContainer","Drawer","openGlyph","closeGlyph","glyphPlacement","isMobileView","SitePickerMenuListItemArray","_renderSitePickerImage","renderSiteOptions","resetSiteOptionsState","siteOptionsState","expandSiteOptionsState","preventDefault","currentTarget","cookies","isConsentGiven","cookieConfig","maxAge","defaultImageSettings","sm","md","xl","siteOptions","_image$imageSettings","_item$siteRedirectUrl","siteImage","imageProps","siteRedirectUrl","siteName","_getViewport","innerWidth","computed","_renderSitePicker","_renderSiteOptionsList","options","onMouseLeave","_props$SitePickerMenu","_renderMobileView","_props$config$heading","_renderDesktopView","renderThumbnailItem","ThumbnailItemContainerProps","Picture","GetEmptyThumbnailItemComponent","_props$context$app$co2","_props$config$thumbna2","fallbackImage","emptyPlaceHolderImage","placeholderImageName","getFallbackImageUrl","thumbnailImageSettings","imageFallbackOptimize","skipImageValidation","fallBackSrc","defaultThumbnailImageSettings","cropFocalRegion","renderThumbnails","thumbnails","ThumbnailsContainerProps","SingleSlideCarouselComponentProps","Thumbnails","mediaGalleryItems","getMediaGalleryItems","lastUpdate","GetThumbnailItemComponent","imageId","modifiedActiveIndex","_props$context$app$co","_props$config$thumbna","_props$callbackToggle","_props$callbackThumbn","callbackToggle","call","callbackThumbnailClick","activeIndex","handleKeyDown","Enter","onKeyDown","shouldUseOptimizedImage","bypassHideOnFailure","fullScreenTitleText","CarouselProps","MediaGallery","buildReviewCard","isUserReview","cardProps","headerProps","rating","name","cardBodyProps","reviewProps","reviewTitle","reviewText","responseProps","responseName","responseDate","responseText","controlsProps","wasReviewHelpfulText","like","dislike","edit","renderProductDescription","primaryImageSource","PrimaryImageUrl","imageUrl","renderProductImage","filterByDropdown","noReviewsMessage","noReviewsWithFilterMessage","pageControls","refineReviewsProps","reportReviewModal","reviewsListProps","reviewCards","sortByDropdown","userReview","isFilterApplied","review","reviewModal","modalHeader","inputRow","selectRatingLabel","reviewTitleLabel","titleInput","reviewTextLabel","textInput","privacyPolicyUrl","modalFooter","submitButton","createReviewModal","createReportModal","reported","headerSubmitted","header","reportSubmittedMessage","reportMessage","radioButtons","succesfulButton"],"sourceRoot":""}