{"version":3,"file":"static/js/7.b2f12edc71f640e8d8d2.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/account-customer-balance/account-customer-balance.tsx?8d5a","webpack://Msdyn365.Commerce.Online/./src/modules/account-customer-balance/components/account-actions.tsx?e021","webpack://Msdyn365.Commerce.Online/./src/modules/account-customer-balance/components/account-statement-request-modal.tsx?18c0","webpack://Msdyn365.Commerce.Online/./src/modules/account-customer-balance/components/index.tsx?fba9","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/b2b-requests-status/components/b2b-requests-table.tsx?06fc","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-status/b2b-requests-status.tsx?c1aa","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-status/b2b-requests-status.view.tsx?6b7c","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/./node_modules/@msdyn365-commerce/bootloader/node_modules/core-js/modules/es.string.match.js?f0c8"],"sourcesContent":["/*!\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 { BusinessPartnerUsersDataActions } from '@msdyn365-commerce/retail-proxy';\nimport {\n AccountStatementRequest,\n BusinessPartnerOperationDeliveryType,\n CustomerBalances\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { getTelemetryObject, Heading, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { get } from 'lodash';\nimport { computed } from 'mobx';\nimport * as React from 'react';\n\nimport { IAccountCustomerBalanceData } from './account-customer-balance.data';\nimport { HeadingTag, IAccountCustomerBalanceProps } from './account-customer-balance.props.autogenerated';\nimport {\n AccountLabels,\n AccountValues,\n ActionBar,\n AdminRequestStatementButton,\n AvailableCreditComponent,\n BackButton,\n BalanceOwedComponent,\n CreditExcessComponent,\n RequestStatementModal\n} from './components';\n\nexport interface IAccountCustomerBalanceViewProps extends IAccountCustomerBalanceProps {\n heading: string;\n homeButton: React.ReactNode;\n accountSectionHeading: React.ReactNode;\n accountLabels: React.ReactNode;\n accountValues: React.ReactNode;\n creditSummarySectionHeading: React.ReactNode;\n creditSummaryLabels?: React.ReactNode;\n creditSummaryValues?: React.ReactNode;\n actions: React.ReactNode;\n requestStatementModal: React.ReactNode;\n availableCredit?: React.ReactNode;\n balanceOwed?: React.ReactNode;\n creditExcess?: React.ReactNode;\n}\n\nexport interface IAccountCustomerBalanceState {\n isStatementRequestModalOpen: boolean;\n statementRequestFromDateString: string;\n statementRequestToDateString: string;\n isStatementRequestAdminDropdownOpen: boolean;\n statementRequestFullOrg: boolean;\n statementRequestMaxDateString?: string;\n}\n\n/**\n *\n * AccountCustomerBalance component.\n * @extends {React.PureComponent>}\n */\nclass AccountCustomerBalance extends React.PureComponent<\n IAccountCustomerBalanceProps,\n IAccountCustomerBalanceState\n> {\n private readonly telemetryContent?: ITelemetryContent;\n private readonly requestStatementButtonRef: React.RefObject = React.createRef();\n\n @computed get canSubmitStatementRequest(): boolean {\n return this.state.statementRequestFromDateString !== '' && this.state.statementRequestToDateString !== '';\n }\n\n constructor(props: IAccountCustomerBalanceProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.state = {\n isStatementRequestModalOpen: false,\n statementRequestFromDateString: '',\n statementRequestToDateString: '',\n isStatementRequestAdminDropdownOpen: false,\n statementRequestFullOrg: false,\n statementRequestMaxDateString: new Date().toISOString().split('T')[0]\n };\n }\n\n public render(): JSX.Element | null {\n const customer = get(this.props, 'data.customerInformation.result');\n const account: CustomerBalances = get(this.props, 'data.balance.result');\n if ([customer, account].includes(undefined)) {\n this.props.context.telemetry.error('Customer data is unavailable, module will not render');\n return null;\n }\n\n const { config, resources, context } = this.props;\n const { heading } = config;\n const {\n creditSummarySectionHeading,\n accountSectionHeading,\n backToShoppingText,\n customerSincePrefix,\n availableCreditLabel,\n balanceOwedLabel,\n creditExcessLabel,\n requestStatementButtonLabel,\n modalHeaderLabel,\n sendToEmailLabel,\n fromDateLabel,\n toDateLabel,\n submitRequestLabel,\n cancelLabel,\n myAccountStatementLabel,\n fullOrganizationLabel,\n modalAriaLabel\n } = resources;\n\n const {\n isStatementRequestModalOpen,\n statementRequestFromDateString,\n statementRequestToDateString,\n statementRequestMaxDateString\n } = this.state;\n\n const accountNumber = customer.AccountNumber;\n const createdOn = this._formatJoinDate(new Date(customer.CreatedDateTime));\n const name = `${customer.FirstName} ${customer.LastName}`;\n let customerCredit = 0;\n let customerAccountBalance = 0;\n let excess = 0;\n\n if (account.InvoiceAccountCreditLimit === 0) {\n customerCredit = account.CreditLimit - account.Balance;\n customerAccountBalance = account.Balance;\n excess = account.Balance - account.CreditLimit;\n } else {\n customerCredit = account.InvoiceAccountCreditLimit - account.InvoiceAccountBalance;\n customerAccountBalance = account.InvoiceAccountBalance;\n excess = account.InvoiceAccountBalance - account.InvoiceAccountCreditLimit;\n }\n\n const creditExcess = excess > 0 ? this._formatCurrency(excess) : null;\n const availableCredit = this._formatCurrency(customerCredit);\n const balanceOwed = this._formatCurrency(customerAccountBalance);\n const backLink = Msdyn365.getUrlSync('home', context.actionContext) || '';\n const emailAddress = customer.Email;\n const isB2BSite = isChannelTypeB2B(this.props.context.request);\n const isB2BAdmin = isB2BSite && customer.IsB2bAdmin;\n\n const actionBar = isB2BAdmin ? (\n \n ) : (\n isB2BSite && (\n \n )\n );\n\n const viewProps = {\n ...this.props,\n heading: ,\n accountSectionHeading: (\n \n ),\n accountLabels: (\n \n ),\n accountValues: ,\n creditSummarySectionHeading: (\n \n ),\n availableCredit: ,\n balanceOwed: ,\n creditExcess: ,\n homeButton: ,\n actions: actionBar,\n requestStatementModal: isB2BSite && (\n \n )\n };\n\n return this.props.renderView(viewProps);\n }\n\n private _formatCurrency(currency: number): string {\n const currencyCode = get(this.props, 'context.request.channel.Currency');\n const formatCurrency = get(this.props, 'context.cultureFormatter.formatCurrency');\n\n return `${formatCurrency(currency.toFixed(2), currencyCode)}`;\n }\n\n private _formatJoinDate(date: Date): string {\n const i14nDate = new Intl.DateTimeFormat(this.props.context.actionContext.requestContext.locale, {\n month: 'long',\n day: 'numeric',\n year: 'numeric'\n });\n\n return i14nDate.format(date);\n }\n\n private readonly _showRequestStatementModal = (): void => {\n if (!this.state.isStatementRequestModalOpen) {\n this.setState({\n isStatementRequestModalOpen: true\n });\n }\n };\n\n private readonly _toggleModal = (): void => {\n this.setState({\n isStatementRequestModalOpen: false\n });\n this.requestStatementButtonRef.current?.focus();\n };\n\n private readonly _toggleDropdown = (): void => {\n this.setState({\n isStatementRequestAdminDropdownOpen: !this.state.isStatementRequestAdminDropdownOpen\n });\n };\n\n private readonly _updateFromDate = (newFromDate: string) => {\n this.setState({\n statementRequestFromDateString: newFromDate\n });\n };\n\n private readonly _updateToDate = (newToDate: string) => {\n this.setState({\n statementRequestToDateString: newToDate\n });\n };\n\n private readonly _adminShowRequestStatementModal = (isFullOrg: boolean) => {\n this.setState({\n statementRequestFullOrg: isFullOrg,\n isStatementRequestAdminDropdownOpen: false\n });\n\n this._showRequestStatementModal();\n };\n\n private readonly _requestStatement = () => {\n const customer = this.props.data.customerInformation.result!;\n const B2BUserId = this.props.data.b2bUserInformation?.result?.B2BUserId || '';\n\n const statementRequest: AccountStatementRequest = {\n FromDate: new Date(this.state.statementRequestFromDateString),\n ToDate: new Date(this.state.statementRequestToDateString),\n IsForFullOrganization: this.state.statementRequestFullOrg,\n RequestedUserId: B2BUserId,\n RequestingUserEmail: customer.Email,\n DeliveryTypeValue: BusinessPartnerOperationDeliveryType.Email\n };\n\n const context = { callerContext: this.props.context.actionContext };\n\n BusinessPartnerUsersDataActions.requestAccountStatementAsync(context, B2BUserId, statementRequest);\n\n this.setState({\n isStatementRequestModalOpen: false\n });\n\n this.requestStatementButtonRef.current?.focus();\n };\n}\n\nexport default AccountCustomerBalance;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Random } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, Popover } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\ninterface IAccountCustomerBalanceActions {\n className?: string;\n buttonReference?: React.RefObject;\n requestStatementButtonLabel: string;\n onRequestStatement(): void;\n}\n\ninterface IAdminRequestStatementProps {\n className?: string;\n requestStatementButtonLabel: string;\n myUserAccountLabel: string;\n fullOrganizationLabel: string;\n isDropdownShowing: boolean;\n buttonReference?: React.RefObject;\n promoteToSellerLabel?: string;\n onToggleDropdown(): void;\n onRequestStatement(isFullOrg: boolean): void;\n onPromoteToSeller?(): void;\n}\n\nexport const ActionBar: React.FC = ({\n className,\n onRequestStatement,\n requestStatementButtonLabel,\n buttonReference\n}) => {\n const popoverReference = buttonReference !== undefined ? buttonReference : React.createRef();\n return (\n
\n \n
\n );\n};\n\nexport const AdminRequestStatementButton: React.FC = ({\n className,\n onRequestStatement,\n requestStatementButtonLabel,\n onToggleDropdown,\n onPromoteToSeller,\n promoteToSellerLabel,\n myUserAccountLabel,\n fullOrganizationLabel,\n isDropdownShowing,\n buttonReference\n}) => {\n const onSelectCustomerAccount = React.useCallback(() => {\n onRequestStatement(false);\n }, [onRequestStatement]);\n\n const onSelectFullOrg = React.useCallback(() => {\n onRequestStatement(true);\n }, [onRequestStatement]);\n\n const onSelectPromoteToSeller = React.useCallback(() => {\n onPromoteToSeller?.();\n }, [onPromoteToSeller]);\n\n const popoverReference = buttonReference !== undefined ? buttonReference : React.createRef();\n const requestStatementDropdownString = `request-statement-dropdown-id-${Random.Guid.generateGuid()}`;\n return (\n
\n \n {requestStatementButtonLabel}\n \n \n \n {myUserAccountLabel}\n \n \n {promoteToSellerLabel && (\n \n {promoteToSellerLabel}\n \n )}\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 { ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Modal, ModalBody, ModalFooter, ModalHeader } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\n/**\n * The interface for the props for the account statement request modal.\n */\ninterface IAccountStatementRequestModalProps {\n email: string;\n isModalOpen: boolean;\n fromDateString: string;\n toDateString: string;\n canSubmitRequest: boolean;\n modalHeaderLabel: string;\n sendToEmailLabel: string;\n fromDateLabel: string;\n toDateLabel: string;\n submitRequestLabel: string;\n cancelLabel: string;\n className: string;\n selectedUser: string;\n selectedUserLabel: string;\n toggle(): void;\n onChangeFromDate(newFromDate: string): void;\n onChangeToDate(newToDate: string): void;\n onSubmitRequest(): void;\n modalAriaLabel?: string;\n maxDateString?: string;\n}\n\nexport const RequestStatementModal: React.FC = ({\n className,\n email,\n isModalOpen,\n toggle,\n fromDateString,\n toDateString,\n onChangeFromDate,\n onChangeToDate,\n canSubmitRequest,\n modalHeaderLabel,\n sendToEmailLabel,\n fromDateLabel,\n toDateLabel,\n submitRequestLabel,\n cancelLabel,\n onSubmitRequest,\n selectedUser,\n selectedUserLabel,\n modalAriaLabel,\n maxDateString\n}) => {\n const onChangeFromDateEvent = React.useCallback(\n (event: React.ChangeEvent) => {\n const value = event.target.value;\n\n onChangeFromDate(value);\n },\n [onChangeFromDate]\n );\n\n const onChangeToDateEvent = React.useCallback(\n (event: React.ChangeEvent) => {\n const value = event.target.value;\n\n onChangeToDate(value);\n },\n [onChangeToDate]\n );\n\n /**\n * If the onBlur is called on the fromDate and the date has been changed, reset focus on it.\n * @param event - The event that is triggering onBlur.\n */\n const onBlurFromDate = React.useCallback(\n (event: React.ChangeEvent) => {\n if (ObjectExtensions.isFunction(event.target.focus) && event.target.value !== fromDateString) {\n event.target.focus();\n }\n },\n [fromDateString]\n );\n\n /**\n * If the onBlur is called on the toDate and the date has been changed, reset focus on it.\n * @param event - The event that is triggering onBlur.\n */\n const onBlurToDate = React.useCallback(\n (event: React.ChangeEvent) => {\n if (ObjectExtensions.isFunction(event.target.focus) && event.target.value !== toDateString) {\n event.target.focus();\n }\n },\n [toDateString]\n );\n\n return (\n \n {modalHeaderLabel}\n \n {selectedUser && (\n
\n \n
\n
{selectedUser}
\n
\n )}\n \n
\n {email}\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n \n \n {submitRequestLabel}\n \n {` `}\n \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 { getPayloadObject, getTelemetryAttributes, ITelemetryContent, TelemetryConstant } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport { AdminRequestStatementButton } from './account-actions';\nimport { RequestStatementModal } from './account-statement-request-modal';\n\nexport * from './account-actions';\nexport * from './account-statement-request-modal';\n\ninterface IAccountLabel {\n name: string;\n accountNumber: string;\n createdOn: string;\n customerSincePrefix: string;\n}\n\ninterface IAccountValues {\n availableCredit: string;\n availableCreditLabel: string;\n}\n\n/**\n * Prop for Available credit component.\n */\ninterface ICreditSummaryAvailableCredit {\n availableCreditLabel: string;\n availableCredit: string;\n}\n\n/**\n * Prop for Balanced owed component.\n */\ninterface ICreditSummaryBalanceOwed {\n balanceOwedLabel: string;\n balanceOwed: string;\n}\n\n/**\n * Prop for credit excess component.\n */\ninterface ICreditSummaryCreditExcess {\n creditExcessLabel: string | null;\n creditExcess: string | null;\n}\n\ninterface ICreditSummaryLabel {\n availableCredit: string;\n balanceOwed: string;\n creditExcess: string | null;\n}\n\ninterface ICreditSummaryValues {\n availableCredit: string;\n balanceOwed: string;\n creditExcess: string | null;\n}\n\ninterface IBackButton {\n link: string;\n label: string;\n telemetryContent?: ITelemetryContent;\n}\n\nexport const AccountLabels: React.FC = ({ name, accountNumber, customerSincePrefix, createdOn }) => (\n
\n

{name}

\n
#{accountNumber}
\n
\n {customerSincePrefix} {createdOn}\n
\n
\n);\n\nexport const AccountValues: React.FC = ({ availableCredit, availableCreditLabel }) => (\n
\n
{availableCreditLabel}
\n
{availableCredit}
\n
\n);\n\nexport const CreditSummaryLabels: React.FC = ({ availableCredit, balanceOwed, creditExcess }) => (\n
\n
{availableCredit}
\n
{balanceOwed}
\n
{creditExcess}
\n
\n);\n\nexport const CreditSummaryValues: React.FC = ({ availableCredit, balanceOwed, creditExcess }) => (\n
\n
{availableCredit}
\n
{balanceOwed}
\n {creditExcess &&
{creditExcess}
}\n
\n);\n\n/**\n * Available credit component.\n * @param props - ICreditSummaryAvailableCredit.\n * @param props.availableCreditLabel - Available credit label.\n * @param props.availableCredit - Available credit value.\n * @returns - React Node for available credit component.\n */\nexport const AvailableCreditComponent: React.FC = ({ availableCreditLabel, availableCredit }) => (\n
\n
\n
{availableCreditLabel}
\n
\n
\n
{availableCredit}
\n
\n
\n);\n\n/**\n * Balance Owed Component.\n * @param props - ICreditSummaryBalanceOwed.\n * @param props.balanceOwedLabel - Balance Owed label.\n * @param props.balanceOwed - Balance Owed value.\n * @returns - React Node for balance owed component.\n */\nexport const BalanceOwedComponent: React.FC = ({ balanceOwedLabel, balanceOwed }) => (\n
\n
\n
{balanceOwedLabel}
\n
\n
\n
{balanceOwed}
\n
\n
\n);\n\n/**\n * Credit Excess Component.\n * @param props - ICreditSummaryCreditExcess.\n * @param props.creditExcessLabel - Credit excess label.\n * @param props.creditExcess - Credit excess value.\n * @returns - React Node for credit excess component.\n */\nexport const CreditExcessComponent: React.FC = ({ creditExcessLabel, creditExcess }) => (\n
\n {creditExcess && (\n
\n
{creditExcessLabel}
\n
\n )}\n
\n {creditExcess &&
{creditExcess}
}\n
\n
\n);\nexport const BackButton: React.FC = ({ link, label, telemetryContent }) => {\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.BackToShopping);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n {label}\n \n );\n};\n\nexport { AdminRequestStatementButton, RequestStatementModal };\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 MsDyn365, { ICoreContext, IDateFormatOptions, IRequestContext } from '@msdyn365-commerce/core';\nimport { BusinessPartnerOperationRequest, BusinessPartnerOperationRequestDetails } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n IDataTableProps,\n IHeadingsProperty,\n ITableItemProps,\n ITableRowProps,\n Table,\n TableDataType\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IB2bRequestsStatusData } from '../b2b-requests-status.data';\nimport { IB2bRequestsStatusProps } from '../b2b-requests-status.props.autogenerated';\n\nexport interface IB2bRequestsTableProps {\n moduleProps: IB2bRequestsStatusProps;\n isMobile: boolean;\n mobileExcludedColumns: string[];\n}\n\nexport interface IB2bRequestsTableResources {\n b2bRequestsTypeCreateProspect: string;\n b2bRequestsTypeAddUser: string;\n b2bRequestsTypeEditUser: string;\n b2bRequestsTypeDeleteUser: string;\n b2bRequestsTypeRequestAccountStatement: string;\n b2bRequestsTypeRequestInvoiceCopy: string;\n b2bRequestsTypeUnknown: string;\n b2bRequestsStatusRequested: string;\n b2bRequestsStatusProcessed: string;\n b2bRequestsStatusError: string;\n b2bRequestsNumberOfItems: string;\n b2bRequestsNumberOfItemsSingular: string;\n b2bRequestsNameDisplay: string;\n b2bRequestsPreviousText: string;\n b2bRequestsNextText: string;\n b2bRequestsUserColumn: string;\n b2bRequestsStatusColumn: string;\n b2bRequestsRequestDateColumn: string;\n b2bRequestsTypeColumn: string;\n b2bRequestsDescriptionColumn: string;\n b2bRequestsAccountStatementDetails: string;\n b2bRequestsInvoiceCopyDetails: string;\n businessUserSelectCheckBoxAriaLabelText?: string;\n sortByAscending?: string;\n sortByDescending?: string;\n}\n\nexport enum RequestsTableColumnHeader {\n Name = 'User',\n Status = 'Status',\n RequestDate = 'Request date',\n Type = 'Request type',\n Description = 'Request detail'\n}\n\nconst getCurrentUrl = (reqContext: IRequestContext): URL => {\n if (MsDyn365.isBrowser) {\n return new URL(window.location.href);\n }\n\n // NOTE: Typing on requestURL is incorrect\n if (reqContext.url.requestUrl.href) {\n return new URL(reqContext.url.requestUrl.href);\n }\n return new URL(reqContext.url.requestUrl.href);\n};\n\nconst getUserName = (request: BusinessPartnerOperationRequest, resources: IB2bRequestsTableResources) => {\n if (StringExtensions.isNullOrEmpty(request.UserFirstName)) {\n if (StringExtensions.isNullOrEmpty(request.UserLastName)) {\n return '';\n }\n\n return request.UserLastName;\n } else if (StringExtensions.isNullOrEmpty(request.UserLastName)) {\n return request.UserFirstName;\n }\n\n return resources.b2bRequestsNameDisplay.replace('{0}', request.UserFirstName!).replace('{1}', request.UserLastName!);\n};\n\nconst formatDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\n/**\n * Gets the value to display for the request details.\n * @param request - The request to parse for the details.\n * @param resources - The resources.\n * @param context - The context.\n * @returns The string to display.\n */\nconst getDetails = (request: BusinessPartnerOperationRequest, resources: IB2bRequestsTableResources, context: ICoreContext) => {\n if (!request.Details) {\n return '';\n }\n\n const requestDetails: BusinessPartnerOperationRequestDetails = request.Details;\n\n const accountStatementStartDateTime = formatDate(context, requestDetails.AccountStatementStartDateTime) || '';\n const accountStatementEndDateTime = formatDate(context, requestDetails.AccountStatementEndDateTime) || '';\n const invoiceId = requestDetails.InvoiceId ?? '';\n\n switch (request.TypeValue) {\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers -- workaround for not being able to use enum value\n case 5:\n if (\n !StringExtensions.isNullOrEmpty(accountStatementStartDateTime) &&\n !StringExtensions.isNullOrEmpty(accountStatementEndDateTime)\n ) {\n return resources.b2bRequestsAccountStatementDetails\n .replace('{0}', accountStatementStartDateTime)\n .replace('{1}', accountStatementEndDateTime);\n }\n\n return '';\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers -- workaround for not being able to use enum value\n case 6:\n if (!StringExtensions.isNullOrEmpty(invoiceId)) {\n return resources.b2bRequestsInvoiceCopyDetails.replace('{0}', invoiceId);\n }\n\n return '';\n default:\n return '';\n }\n};\n\nconst createTableItems = (\n operationRequests: BusinessPartnerOperationRequest[] | undefined,\n props: IB2bRequestsStatusProps\n): ITableRowProps[] => {\n if (!ArrayExtensions.hasElements(operationRequests)) {\n return [];\n }\n\n return operationRequests.map(request => {\n return {\n row: [\n {\n id: props.resources.b2bRequestsTypeColumn,\n type: TableDataType.Text,\n value: getDisplayFriendlyTypeValue(request.TypeValue ?? 0, props.resources)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsRequestDateColumn,\n type: TableDataType.Text,\n value: formatDate(props.context, request.CreatedDateTime)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsDescriptionColumn,\n type: TableDataType.Text,\n value: getDetails(request, props.resources, props.context)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsUserColumn,\n type: TableDataType.Text,\n value: getUserName(request, props.resources)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsStatusColumn,\n type: TableDataType.Text,\n value: getDisplayFriendlyStatusValue(request.StatusValue ?? 0, props.resources)\n } as ITableItemProps\n ],\n isSelected: false,\n className: props.config.className\n };\n });\n};\n\nconst getDisplayFriendlyTypeValue = (typeValue: number, resources: IB2bRequestsTableResources): string => {\n switch (typeValue) {\n case 1:\n return resources.b2bRequestsTypeCreateProspect;\n case 2:\n return resources.b2bRequestsTypeAddUser;\n case 3:\n return resources.b2bRequestsTypeDeleteUser;\n case 4:\n return resources.b2bRequestsTypeEditUser;\n case 5:\n return resources.b2bRequestsTypeRequestAccountStatement;\n case 6:\n return resources.b2bRequestsTypeRequestInvoiceCopy;\n default:\n return resources.b2bRequestsTypeUnknown;\n }\n};\n\nconst getDisplayFriendlyStatusValue = (statusValue: number, resources: IB2bRequestsTableResources): string => {\n switch (statusValue) {\n case 1:\n return resources.b2bRequestsStatusProcessed;\n case 2:\n return resources.b2bRequestsStatusError;\n default:\n return resources.b2bRequestsStatusRequested;\n }\n};\n\nconst createTableProps = (tableProps: IB2bRequestsTableProps) => {\n const { context, data, resources } = tableProps.moduleProps;\n\n const tableData = createTableItems(data.operationRequests.result, tableProps.moduleProps);\n const tableHeading =\n (ArrayExtensions.hasElements(tableData) &&\n tableData[0].row\n .filter(item => {\n // Check that this is either not mobile or the column should be displayed when mobile.\n return !tableProps.isMobile || !tableProps.mobileExcludedColumns.includes(item.id);\n })\n .map(item => {\n return {\n name: item.id,\n sortable: true,\n ariaLabel: resources.columnSortAriaLabel\n } as IHeadingsProperty;\n })) ||\n [];\n\n return {\n resources: {},\n headings: tableHeading,\n rows: tableData,\n className: `${tableProps.moduleProps.config.className}__table`,\n editLinkText: '',\n deleteLinkText: '',\n viewLinkText: '',\n enableToModify: false,\n actionLinkText: '',\n showCheckBoxes: false,\n isSortable: true,\n showPagination: true,\n minifyActions: tableProps.isMobile,\n excludedColumns: tableProps.isMobile ? tableProps.mobileExcludedColumns : [],\n paginationProperty: {\n skipCount:\n context.request.query?.skip && !isNaN(Number.parseInt(context.request.query.skip, 10))\n ? Number.parseInt(context.request.query.skip, 10)\n : 0,\n itemPerPage: 10,\n prevText: resources.b2bRequestsPreviousText,\n nextText: resources.b2bRequestsNextText,\n paginationText: '',\n url: (context && getCurrentUrl(context.request).href) || ''\n },\n isSingleSelectOnly: true,\n actions: {\n onDelete: undefined,\n onEdit: undefined,\n onView: undefined\n },\n businessUserSelectCheckBoxAriaLabelText: tableProps.moduleProps.resources.businessUserSelectCheckBoxAriaLabelText,\n sortByAscending: tableProps.moduleProps.resources.sortByAscending,\n sortByDescending: tableProps.moduleProps.resources.sortByDescending\n } as IDataTableProps;\n};\n\nexport const B2bRequestsTable: React.FC = (tableProps: IB2bRequestsTableProps) => {\n return ;\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { format, Heading, IModuleProps, isMobile, VariantType } from '@msdyn365-commerce-modules/utilities';\nimport { computed } from 'mobx';\nimport * as React from 'react';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\n\nimport { IB2bRequestsStatusData } from './b2b-requests-status.data';\nimport { IB2bRequestsStatusProps, IHeadingData } from './b2b-requests-status.props.autogenerated';\nimport { B2bRequestsTable } from './components/b2b-requests-table';\n\nexport interface IB2bRequestsStatusViewProps extends IB2bRequestsStatusProps {\n b2bRequestsStatus: IModuleProps;\n heading?: React.ReactNode;\n table: React.ReactNode;\n}\n\n/**\n *\n * B2bRequestsStatus component.\n * @extends {React.PureComponent>}\n */\nclass B2bRequestsStatus extends React.PureComponent> {\n @computed get isMobile(): boolean {\n const size = isMobile({ variant: VariantType.Viewport, context: this.props.context.request });\n return size === 'xs';\n }\n\n public render(): JSX.Element | null {\n const { config } = this.props;\n\n if (!isChannelTypeB2B(this.props.context.actionContext.requestContext)) {\n return null;\n }\n\n const className = config.className || '';\n\n const viewProps = {\n ...this.props,\n b2bRequestsStatus: {\n moduleProps: this.props,\n className\n },\n heading: this.renderHeader(className, config.heading),\n table: this.renderTable()\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n private readonly renderHeader = (className: string, headingData: IHeadingData): React.ReactNode => {\n const itemCount = this.props.data.operationRequests.result?.length ?? 0;\n\n return (\n
\n \n {this.getItemNumberDisplayString(itemCount)}\n
\n );\n };\n\n /**\n * Returns columns that needs to be excluded for mobile view.\n * @returns Array of column names.\n */\n private readonly _retrieveExcludedColumns = (): string[] => {\n const { resources } = this.props;\n return [resources.b2bRequestsRequestDateColumn, resources.b2bRequestsDescriptionColumn, resources.b2bRequestsUserColumn];\n };\n\n private readonly renderTable = (): React.ReactNode => {\n return (\n \n );\n };\n\n private readonly getItemNumberDisplayString = (itemCount: number): string => {\n switch (itemCount) {\n case 0:\n return '';\n case 1:\n return format(this.props.resources.b2bRequestsNumberOfItemsSingular, itemCount);\n default:\n return format(this.props.resources.b2bRequestsNumberOfItems, itemCount);\n }\n };\n}\n\nexport default B2bRequestsStatus;\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 React from 'react';\n\nimport { IB2bRequestsStatusViewProps } from './b2b-requests-status';\n\nconst B2bRequestsStatusView: React.FC = props => {\n const { b2bRequestsStatus, heading, table } = props;\n return (\n \n {heading}\n {table}\n \n );\n};\n\nexport default B2bRequestsStatusView;\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","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar getMethod = require('../internals/get-method');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, MATCH);\n return matcher ? call(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n"],"names":["AccountCustomerBalance","React","constructor","props","super","requestStatementButtonRef","_showRequestStatementModal","this","state","isStatementRequestModalOpen","setState","_toggleModal","_this$requestStatemen","current","focus","_toggleDropdown","isStatementRequestAdminDropdownOpen","_updateFromDate","newFromDate","statementRequestFromDateString","_updateToDate","newToDate","statementRequestToDateString","_adminShowRequestStatementModal","isFullOrg","statementRequestFullOrg","_requestStatement","_this$props$data$b2bU","_this$requestStatemen2","customer","data","customerInformation","result","B2BUserId","b2bUserInformation","statementRequest","FromDate","Date","ToDate","IsForFullOrganization","RequestedUserId","RequestingUserEmail","Email","DeliveryTypeValue","BusinessPartnerOperationDeliveryType","context","callerContext","actionContext","BusinessPartnerUsersDataActions","telemetryContent","getTelemetryObject","request","telemetryPageName","friendlyName","telemetry","statementRequestMaxDateString","toISOString","split","render","_get","account","includes","undefined","error","config","resources","heading","creditSummarySectionHeading","accountSectionHeading","backToShoppingText","customerSincePrefix","availableCreditLabel","balanceOwedLabel","creditExcessLabel","requestStatementButtonLabel","modalHeaderLabel","sendToEmailLabel","fromDateLabel","toDateLabel","submitRequestLabel","cancelLabel","myAccountStatementLabel","fullOrganizationLabel","modalAriaLabel","accountNumber","AccountNumber","createdOn","_formatJoinDate","CreatedDateTime","name","FirstName","LastName","customerCredit","customerAccountBalance","excess","InvoiceAccountCreditLimit","CreditLimit","Balance","InvoiceAccountBalance","creditExcess","_formatCurrency","availableCredit","balanceOwed","backLink","Msdyn365","emailAddress","isB2BSite","isChannelTypeB2B","actionBar","IsB2bAdmin","AdminRequestStatementButton","buttonReference","className","onRequestStatement","onToggleDropdown","myUserAccountLabel","isDropdownShowing","ActionBar","viewProps","_objectSpread","Heading","text","tag","accountLabels","AccountLabels","accountValues","AccountValues","AvailableCreditComponent","BalanceOwedComponent","CreditExcessComponent","homeButton","BackButton","label","link","actions","requestStatementModal","RequestStatementModal","email","isModalOpen","toggle","fromDateString","toDateString","onChangeFromDate","onChangeToDate","canSubmitRequest","canSubmitStatementRequest","onSubmitRequest","selectedUser","selectedUserLabel","maxDateString","renderView","currency","currencyCode","formatCurrency","toFixed","date","Intl","DateTimeFormat","requestContext","locale","month","day","year","format","__decorate","computed","_ref","popoverReference","Button","innerRef","onClick","_ref2","onPromoteToSeller","promoteToSellerLabel","onSelectCustomerAccount","onSelectFullOrg","onSelectPromoteToSeller","requestStatementDropdownString","Random","Guid","generateGuid","id","Popover","isOpen","placement","target","role","onChangeFromDateEvent","event","value","onChangeToDateEvent","onBlurFromDate","ObjectExtensions","isFunction","onBlurToDate","Modal","horizontalPosition","verticalPosition","autoFocus","fade","ModalHeader","ModalBody","htmlFor","type","onBlur","onChange","max","min","ModalFooter","disabled","_ref5","_ref6","_ref7","_ref8","payLoad","getPayloadObject","TelemetryConstant","BackToShopping","attributes","getTelemetryAttributes","Object","assign","href","description","_mapEditableLinks","linkdata","length","editableLinks","forEach","index","contentAction","etext","linkText","editableLink","ariaLabel","linkUrl","destinationUrl","openInNewTab","additionalProperties","push","links","onTextChange","editProps","AccountWishlistTile","handleHeadingChange","handleLinkTextChange","linkIndex","accountWishlistTileDescription","wishlists","wishlistsCount","CommerceListLines","moduleProps","classnames","onEdit","LinksComponent","DescriptionComponent","Module","RequestsTableColumnHeader","getUserName","StringExtensions","isNullOrEmpty","UserFirstName","UserLastName","b2bRequestsNameDisplay","replace","formatDate","cultureFormatter","getDetails","_requestDetails$Invoi","Details","requestDetails","accountStatementStartDateTime","AccountStatementStartDateTime","accountStatementEndDateTime","AccountStatementEndDateTime","invoiceId","InvoiceId","TypeValue","b2bRequestsAccountStatementDetails","b2bRequestsInvoiceCopyDetails","getDisplayFriendlyTypeValue","typeValue","b2bRequestsTypeCreateProspect","b2bRequestsTypeAddUser","b2bRequestsTypeDeleteUser","b2bRequestsTypeEditUser","b2bRequestsTypeRequestAccountStatement","b2bRequestsTypeRequestInvoiceCopy","b2bRequestsTypeUnknown","getDisplayFriendlyStatusValue","statusValue","b2bRequestsStatusProcessed","b2bRequestsStatusError","b2bRequestsStatusRequested","createTableProps","tableProps","_context$request$quer","tableData","operationRequests","ArrayExtensions","hasElements","map","_request$TypeValue","_request$StatusValue","row","b2bRequestsTypeColumn","TableDataType","Text","b2bRequestsRequestDateColumn","b2bRequestsDescriptionColumn","b2bRequestsUserColumn","b2bRequestsStatusColumn","StatusValue","isSelected","createTableItems","headings","filter","item","isMobile","mobileExcludedColumns","sortable","columnSortAriaLabel","rows","editLinkText","deleteLinkText","viewLinkText","enableToModify","actionLinkText","showCheckBoxes","isSortable","showPagination","minifyActions","excludedColumns","paginationProperty","skipCount","query","skip","isNaN","Number","parseInt","itemPerPage","prevText","b2bRequestsPreviousText","nextText","b2bRequestsNextText","paginationText","url","reqContext","MsDyn365","isBrowser","URL","window","location","requestUrl","isSingleSelectOnly","onDelete","onView","businessUserSelectCheckBoxAriaLabelText","sortByAscending","sortByDescending","B2bRequestsTable","Table","B2bRequestsStatus","renderHeader","headingData","_this$props$data$oper","_this$props$data$oper2","itemCount","getItemNumberDisplayString","_retrieveExcludedColumns","renderTable","b2bRequestsNumberOfItemsSingular","b2bRequestsNumberOfItems","variant","VariantType","Viewport","b2bRequestsStatus","table","message","errorClassName","GetMaxLength","maxLength","parsedMaxLength","pattern","forId","successClassName","SignUp","moduleClassName","handleParagraphChange","disclaimer","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","setTimeout","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","componentDidMount","componentDidUpdate","shouldComponentUpdate","nextProps","nextState","viewState","isShowLoading","signUp","loading","modal","modalBody","icon","SignUpLoadingIconComponent","SignUpLoadingMessageComponent","loadingMessage","defaultAADConainer","style","display","aadConainer","signUpLocalAccount","_renderLocalAccount","localAccount","items","_renderInput","firstNameLabelText","firstNameMaxLength","lastNameLabelText","lastNameMaxLength","emailAddressLabelText","passwordLabelText","confirmPasswordLabelText","emailVerification","isRequired","verificationCodeLabelText","verificationControlWrapper","buttonWrapper","buttons","SignUpButtonComponent","key","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","input","SignUpInputComponent","observable","observer","SignUpItem","Node","SignUpEmailVerification","button","SignUpGivenNameVerificationComponent","_ref3","SignUpSurnameVerificationComponent","_ref4","SignUpLoading","LocalAccount","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","toLength","toString","requireObjectCoercible","getMethod","advanceStringIndex","regExpExec","MATCH","nativeMatch","maybeCallNative","regexp","O","matcher","RegExp","string","rx","S","res","done","global","fullUnicode","unicode","lastIndex","A","n","matchStr"],"sourceRoot":""}