{"version":3,"file":"static/js/4.58934305c2e153a44813.chunk.js","mappings":"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","sources":["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-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-welcome-tile/account-welcome-tile.tsx?2115","webpack://Msdyn365.Commerce.Online/./src/modules/account-welcome-tile/account-welcome-tile.view.tsx?e5e3","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"],"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 { 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 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\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 };\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}\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 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 = ({ className, onRequestStatement, requestStatementButtonLabel }) => {\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 Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountWelcomeTileData } from './account-welcome-tile.data';\nimport { IAccountWelcomeTileProps } from './account-welcome-tile.props.autogenerated';\n\nexport interface IAccountWelcomeTileViewProps extends IAccountWelcomeTileProps {\n AccountWelcomeTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AccountWelcome component.\n * @extends {React.PureComponent>}\n */\nclass AccountWelcomeTile extends React.PureComponent> {\n public render(): JSX.Element {\n const { config, data } = this.props;\n const { className } = config;\n\n const accountInfo = data.accountInformation.result;\n const heading = {\n ...config.heading,\n ...{\n text: `${config.heading.text ? config.heading.text : ''} ${\n accountInfo && accountInfo.FirstName ? accountInfo.FirstName : ''\n }`\n }\n };\n\n const viewProps = {\n ...this.props,\n className,\n AccountWelcomeTile: {\n moduleProps: this.props,\n className: classnames('ms-account-welcome-tile', config.className)\n },\n heading: heading && heading.text && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n}\n\nexport default AccountWelcomeTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountWelcomeTileViewProps } from './account-welcome-tile';\n\nconst AccountWelcomeTileView: React.FC = props => {\n const { AccountWelcomeTile, heading } = props;\n\n return {heading};\n};\n\nexport default AccountWelcomeTileView;\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"],"names":["AccountAddressTile","React","constructor","props","super","handleHeadingChange","event","this","config","heading","text","target","value","handleLinkTextChange","linkIndex","links","linkText","telemetryContent","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","render","resources","data","className","accountAddressTileDescriptionForSingleAddress","accountAddressTileDescriptionForMultipleAddresses","address","addressCount","result","length","accountAddressTileDescription","description","format","viewProps","_objectSpread","moduleProps","classnames","Msdyn365","tag","editProps","onEdit","requestContext","LinksComponent","Object","assign","onTextChange","DescriptionComponent","renderView","Module","_ref","_mapEditableLinks","linkdata","editableLinks","payLoad","getPayloadObject","forEach","link","index","contentAction","etext","attributes","getTelemetryAttributes","editableLink","ariaLabel","linkUrl","destinationUrl","openInNewTab","role","additionalProperties","push","AccountCustomerBalance","_showRequestStatementModal","state","isStatementRequestModalOpen","setState","_toggleModal","_toggleDropdown","isStatementRequestAdminDropdownOpen","_updateFromDate","newFromDate","statementRequestFromDateString","_updateToDate","newToDate","statementRequestToDateString","_adminShowRequestStatementModal","isFullOrg","statementRequestFullOrg","_requestStatement","_this$props$data$b2bU","customer","customerInformation","B2BUserId","b2bUserInformation","statementRequest","FromDate","Date","ToDate","IsForFullOrganization","RequestedUserId","RequestingUserEmail","Email","DeliveryTypeValue","BusinessPartnerOperationDeliveryType","callerContext","actionContext","BusinessPartnerUsersDataActions","statementRequestMaxDateString","toISOString","split","_get","account","includes","undefined","error","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","emailAddress","isB2BSite","isChannelTypeB2B","actionBar","IsB2bAdmin","AdminRequestStatementButton","onRequestStatement","onToggleDropdown","myUserAccountLabel","isDropdownShowing","ActionBar","Heading","accountLabels","AccountLabels","accountValues","AccountValues","AvailableCreditComponent","BalanceOwedComponent","CreditExcessComponent","homeButton","BackButton","label","actions","requestStatementModal","RequestStatementModal","email","isModalOpen","toggle","fromDateString","toDateString","onChangeFromDate","onChangeToDate","canSubmitRequest","canSubmitStatementRequest","onSubmitRequest","selectedUser","selectedUserLabel","maxDateString","currency","currencyCode","formatCurrency","toFixed","date","Intl","DateTimeFormat","locale","month","day","year","__decorate","computed","Button","onClick","_ref2","onPromoteToSeller","promoteToSellerLabel","buttonReference","onSelectCustomerAccount","onSelectFullOrg","onSelectPromoteToSeller","popoverReference","requestStatementDropdownString","Random","Guid","generateGuid","innerRef","id","Popover","isOpen","placement","onChangeFromDateEvent","onChangeToDateEvent","onBlurFromDate","ObjectExtensions","isFunction","focus","onBlurToDate","Modal","horizontalPosition","verticalPosition","autoFocus","fade","ModalHeader","ModalBody","htmlFor","type","onBlur","onChange","max","min","ModalFooter","disabled","_ref5","_ref6","_ref7","_ref8","TelemetryConstant","BackToShopping","href","AccountWelcomeTile","accountInfo","accountInformation","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"],"sourceRoot":""}