{"version":3,"file":"static/js/5.3825625bf6f52dbaa34b.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/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/b2b-requests-tile/components/account-b2b-requests-tile-links.tsx?d6f5","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-tile/b2b-requests-tile.tsx?9498","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-tile/b2b-requests-tile.view.tsx?3f4e","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 { 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}\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 };\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 { isStatementRequestModalOpen, statementRequestFromDateString, statementRequestToDateString } = 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 isB2BUser = customer.IsB2b;\n const isB2BAdmin = isB2BUser && customer.IsB2bAdmin;\n\n const actionBar = isB2BAdmin ? (\n \n ) : (\n isB2BUser && (\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: isB2BUser && (\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 onToggleDropdown(): void;\n onRequestStatement(isFullOrg: boolean): 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 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 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 \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}\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}) => {\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 \n
\n
\n {email}\n
\n {selectedUser && (\n
\n {selectedUserLabel}\n {selectedUser}\n
\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 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';\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, data } = this.props;\n\n if (!data.customerInformation.result?.IsB2b || !data.b2bUserInformation.result?.B2BUserId) {\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 * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../../..';\n\nexport interface IB2bRequestsTileLinksProps {\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 defaultClassName = 'ms-account-b2b-requests-tile';\n\nexport const B2bRequestsTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (!ArrayExtensions.hasElements(links)) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {ArrayExtensions.hasElements(editableLinks) ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!ArrayExtensions.hasElements(linkdata)) {\n return null;\n }\n\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n\n return linkdata.map(link => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return {\n ariaLabel: link.ariaLabel,\n className: `${defaultClassName}__link`,\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n } as Msdyn365.ILinksData;\n });\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IB2bRequestsTileData } from './b2b-requests-tile.data';\nimport { IB2bRequestsTileProps } from './b2b-requests-tile.props.autogenerated';\nimport { B2bRequestsTileLinks } from './components/account-b2b-requests-tile-links';\n\nexport interface IB2bRequestsTileViewProps extends IB2bRequestsTileProps {\n b2bRequestsTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * B2bRequestsTile component.\n * @extends {React.PureComponent>}\n */\nclass B2bRequestsTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IB2bRequestsTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n const { config, data } = this.props;\n const { className, heading, links } = config;\n\n const defaultClassName = 'ms-account-b2b-requests-tile';\n\n if (!data.customerInformation.result?.IsB2b) {\n return null;\n }\n\n const viewProps = {\n ...this.props,\n className,\n b2bRequestsTile: {\n moduleProps: this.props,\n className: classnames(defaultClassName, config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: ArrayExtensions.hasElements(links) && (\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 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 B2bRequestsTile;\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 { IB2bRequestsTileViewProps } from './b2b-requests-tile';\n\nconst B2bRequestsTileView: React.FC = props => {\n const { b2bRequestsTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default B2bRequestsTileView;\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":["AccountCustomerBalance","React","constructor","props","super","_showRequestStatementModal","this","state","isStatementRequestModalOpen","setState","_toggleModal","_toggleDropdown","isStatementRequestAdminDropdownOpen","_updateFromDate","newFromDate","statementRequestFromDateString","_updateToDate","newToDate","statementRequestToDateString","_adminShowRequestStatementModal","isFullOrg","statementRequestFullOrg","_requestStatement","_this$props$data$b2bU","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","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","isB2BUser","IsB2b","actionBar","IsB2bAdmin","AdminRequestStatementButton","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","renderView","currency","currencyCode","formatCurrency","toFixed","date","Intl","DateTimeFormat","requestContext","locale","month","day","year","format","__decorate","computed","_ref","Button","onClick","_ref2","buttonReference","onSelectCustomerAccount","onSelectFullOrg","popoverReference","requestStatementDropdownString","Random","Guid","generateGuid","innerRef","id","Popover","isOpen","placement","target","role","onChangeFromDateEvent","event","value","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","payLoad","getPayloadObject","TelemetryConstant","BackToShopping","attributes","getTelemetryAttributes","Object","assign","href","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","moduleProps","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","ariaLabel","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","onEdit","onView","businessUserSelectCheckBoxAriaLabelText","sortByAscending","sortByDescending","B2bRequestsTable","Table","B2bRequestsStatus","renderHeader","headingData","_this$props$data$oper","_this$props$data$oper2","itemCount","length","getItemNumberDisplayString","_retrieveExcludedColumns","renderTable","b2bRequestsNumberOfItemsSingular","b2bRequestsNumberOfItems","variant","VariantType","Viewport","_data$customerInforma","_data$b2bUserInformat","b2bRequestsStatus","table","Module","defaultClassName","B2bRequestsTileLinks","links","onTextChange","editableLinks","_mapEditableLinks","editProps","linkdata","contentAction","etext","linkText","linkUrl","destinationUrl","openInNewTab","additionalProperties","B2bRequestsTile","handleHeadingChange","handleLinkTextChange","linkIndex","b2bRequestsTile","classnames","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","index","LocalAccount"],"sourceRoot":""}