{"version":3,"sources":["webpack:///src/modules/password-reset-verification/components/password-reset-verification-loading-message.tsx?97ae","webpack:///src/modules/b2b-requests-tile/components/account-b2b-requests-tile-links.tsx?4f55","webpack:///src/modules/b2b-requests-tile/b2b-requests-tile.tsx?ce42","webpack:///src/modules/password-reset-verification/components/password-reset-verification-button.tsx?d3bb","webpack:///src/modules/password-reset-verification/components/password-reset-verification-error.tsx?5cfd","webpack:///src/modules/password-reset-verification/components/password-reset-verification-success.tsx?8c35","webpack:///src/modules/b2b-requests-status/b2b-requests-status.view.tsx?afa7","webpack:///src/modules/account-customer-balance/components/account-actions.tsx?bbe9","webpack:///src/modules/account-customer-balance/components/account-statement-request-modal.tsx?cf6e","webpack:///src/modules/account-customer-balance/components/index.tsx?9c6a","webpack:///src/modules/account-generic-tile/account-generic-tile.tsx?4504","webpack:///src/modules/password-reset-verification/components/password-reset-verification-label.tsx?70a3","webpack:///src/modules/account-generic-tile/account-generic-tile.view.tsx?bca1","webpack:///src/modules/password-reset-verification/components/password-reset-verification-loading-icon.tsx?7944","webpack:///src/modules/password-reset-verification/password-reset-verification.tsx?9795","webpack:///src/modules/account-customer-balance/account-customer-balance.tsx?da17","webpack:///src/modules/account-generic-tile/components/account-generic-tile-links.tsx?e4df","webpack:///src/modules/b2b-requests-tile/b2b-requests-tile.view.tsx?949e","webpack:///src/modules/password-reset-verification/components/password-reset-verification-input.tsx?6596","webpack:///src/modules/b2b-requests-status/components/b2b-requests-table.tsx?6d33","webpack:///src/modules/b2b-requests-status/b2b-requests-status.tsx?692d","webpack:///src/modules/password-reset-verification/password-reset-verification.view.tsx?9e1f"],"names":["PasswordResetVerificationLoadingMessage","_ref","className","message","React","B2bRequestsTileLinks","links","telemetryContent","onTextChange","requestContext","ArrayExtensions","hasElements","editableLinks","_mapEditableLinks","Msdyn365","editProps","linkdata","payLoad","getPayloadObject","map","link","contentAction","etext","linkText","attributes","getTelemetryAttributes","ariaLabel","linkUrl","destinationUrl","openInNewTab","role","additionalProperties","B2bRequestsTile","constructor","props","super","handleHeadingChange","event","this","config","heading","text","target","value","handleLinkTextChange","linkIndex","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","render","_data$customerInforma","data","customerInformation","result","IsB2b","viewProps","_objectSpread","b2bRequestsTile","moduleProps","classnames","tag","onEdit","renderView","PasswordResetVerificationButton","id","disabled","onClick","Button","Object","assign","PasswordResetVerificationError","type","errorClassName","PasswordResetVerificationSuccess","successClassName","B2bRequestsStatusView","b2bRequestsStatus","table","createElement","Module","ActionBar","onRequestStatement","requestStatementButtonLabel","AdminRequestStatementButton","_ref2","onToggleDropdown","myUserAccountLabel","fullOrganizationLabel","isDropdownShowing","buttonReference","onSelectCustomerAccount","onSelectFullOrg","popoverReference","undefined","requestStatementDropdownString","Random","Guid","generateGuid","innerRef","Popover","isOpen","placement","toggle","RequestStatementModal","email","isModalOpen","fromDateString","toDateString","onChangeFromDate","onChangeToDate","canSubmitRequest","modalHeaderLabel","sendToEmailLabel","fromDateLabel","toDateLabel","submitRequestLabel","cancelLabel","onSubmitRequest","selectedUser","selectedUserLabel","modalAriaLabel","onChangeFromDateEvent","onChangeToDateEvent","onBlurFromDate","ObjectExtensions","isFunction","focus","onBlurToDate","Modal","horizontalPosition","verticalPosition","autoFocus","fade","ModalHeader","ModalBody","htmlFor","onBlur","onChange","max","min","ModalFooter","AccountLabels","name","accountNumber","customerSincePrefix","createdOn","AccountValues","availableCredit","availableCreditLabel","AvailableCreditComponent","_ref5","BalanceOwedComponent","_ref6","balanceOwedLabel","balanceOwed","CreditExcessComponent","_ref7","creditExcessLabel","creditExcess","BackButton","_ref8","label","TelemetryConstant","BackToShopping","href","AccountGenericTile","length","LinksComponent","PasswordResetVerificationLabel","forId","AccountGenericTileView","PasswordResetVerificationLoadingIcon","PasswordResetVerification","moduleClassName","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","setTimeout","clearInterval","window","isInitialized","getValue","v1Value","v2Value","templateVersion","emailRegex","EmailRegex","defaultRegex","source","componentDidMount","componentDidUpdate","shouldComponentUpdate","nextProps","nextState","state","resources","viewState","isShowLoading","passwordResetVerification","loading","modal","modalBody","icon","PasswordResetVerificationLoadingIconComponent","PasswordResetVerificationLoadingMessageComponent","loadingMessage","defaultAADConainer","style","display","aadConainer","passwordResetVerificationLocalAccount","_renderLocalAccount","obj","ID","toLowerCase","PAT","verifying_blurb","localAccount","verificationControlWrapper","items","_renderInput","emailAddressLabelText","verificationCodeLabelText","successMessage","PasswordResetVerificationSuccessComponent","key","verificationCodeSendSuccess","emailAddressVerifiedSuccess","errorMessage","PasswordResetVerificationErrorComponent","retryError","retryNotAllowedError","throttledError","codeExpiredError","serverError","invalidEmailError","verificationButtonsWrapper","verificationButtons","PasswordResetVerificationButtonComponent","sendCodeButtonAriaLabel","sendCodeButtonText","verifyCodeButtonAriaLabel","verifyCodeButtonText","resendCodeButtonAriaLabel","resendCodeButtonText","changeEmailButtonAriaLabel","changeEmailButtonText","buttonsWrapper","buttons","continueButtonAriaLabel","continueButtonText","cancelButtonAriaLabel","cancelButtonText","verificationSuccessModal","verificationSuccessModalMessage","labelText","maxLength","pattern","cssClassName","wrapper","PasswordResetVerificationLabelComponent","input","PasswordResetVerificationInputComponent","__decorate","observable","observer","AccountCustomerBalance","_showRequestStatementModal","isStatementRequestModalOpen","setState","_toggleModal","_toggleDropdown","isStatementRequestAdminDropdownOpen","_updateFromDate","newFromDate","statementRequestFromDateString","_updateToDate","newToDate","statementRequestToDateString","_adminShowRequestStatementModal","isFullOrg","statementRequestFullOrg","_requestStatement","_this$props$data$b2bU","_this$props$data$b2bU2","customer","B2BUserId","b2bUserInformation","statementRequest","FromDate","Date","ToDate","IsForFullOrganization","RequestedUserId","RequestingUserEmail","Email","DeliveryTypeValue","BusinessPartnerOperationDeliveryType","callerContext","actionContext","BusinessPartnerUsersDataActions","requestAccountStatementAsync","_get","account","includes","error","creditSummarySectionHeading","accountSectionHeading","backToShoppingText","myAccountStatementLabel","AccountNumber","_formatJoinDate","CreatedDateTime","FirstName","LastName","customerCredit","customerAccountBalance","excess","InvoiceAccountCreditLimit","CreditLimit","Balance","InvoiceAccountBalance","_formatCurrency","backLink","emailAddress","isB2BUser","actionBar","IsB2bAdmin","Heading","accountLabels","accountValues","homeButton","actions","requestStatementModal","canSubmitStatementRequest","currency","currencyCode","formatCurrency","toFixed","date","Intl","DateTimeFormat","locale","month","day","year","format","computed","forEach","index","editableLink","push","AccountGenericTileLinks","B2bRequestsTileView","GetMaxLength","parsedMaxLength","Number","parseInt","isNaN","PasswordResetVerificationInput","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","_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","itemPerPage","prevText","b2bRequestsPreviousText","nextText","b2bRequestsNextText","paginationText","url","reqContext","MsDyn365","isBrowser","URL","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","_data$b2bUserInformat","PasswordResetVerificationItem","Node","PasswordResetVerificationLoading","_ref3","PasswordResetVerificationView","button","LocalAccount"],"mappings":"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","file":"static/js/4.2763d2b987096c0a582b.chunk.js","sourcesContent":["/*!\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 IPasswordResetVerificationLoadingMessage {\n className: string;\n message: string;\n}\n\nconst PasswordResetVerificationLoadingMessage: React.FC = ({ className, message }) => (\n
{message}
\n);\n\nexport default PasswordResetVerificationLoadingMessage;\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 { Button, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IPasswordResetVerificationButton {\n id?: string;\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n telemetryContent?: ITelemetryContent;\n onClick?(event: React.MouseEvent): void;\n}\n\nconst PasswordResetVerificationButton: React.FC = ({\n id,\n className,\n text,\n ariaLabel,\n telemetryContent,\n disabled,\n onClick\n}) => {\n const payLoad = getPayloadObject('click', telemetryContent!, text);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n );\n};\n\nexport default PasswordResetVerificationButton;\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 IPasswordResetVerificationErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst PasswordResetVerificationError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n );\n};\n\nexport default PasswordResetVerificationError;\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 IPasswordResetVerificationSuccess {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst PasswordResetVerificationSuccess: React.FC = ({ id, className, type = 'page', message }) => {\n const successClassName = `${className}__${type}-success`;\n\n return (\n \n );\n};\n\nexport default PasswordResetVerificationSuccess;\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 { 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 * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountGenericTileConfig, IAccountGenericTileProps } from './account-generic-tile.props.autogenerated';\nimport LinksComponent from './components/account-generic-tile-links';\n\nexport interface IAccountGenericTileViewProps extends IAccountGenericTileProps {\n AccountGenericTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * AccountGeneric component.\n * @extends {React.PureComponent>}\n */\nclass AccountGenericTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountGenericTileProps) {\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 } = this.props;\n const { className, heading, links } = config;\n\n const viewProps = {\n ...this.props,\n className,\n AccountGenericTile: {\n moduleProps: this.props,\n className: classnames('ms-account-generic-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\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 AccountGenericTile;\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 IPasswordResetVerificationLabel {\n id: string;\n forId: string;\n className: string;\n text: string;\n}\n\nconst PasswordResetVerificationLabel: React.FC = ({ id, forId, className, text }) => (\n \n);\n\nexport default PasswordResetVerificationLabel;\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 { IAccountGenericTileViewProps } from './account-generic-tile';\n\nconst AccountGenericTileView: React.FC = props => {\n const { AccountGenericTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default AccountGenericTileView;\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 IPasswordResetVerificationLoadingIcon {\n className: string;\n}\n\nconst PasswordResetVerificationLoadingIcon: React.FC = ({ className }) => (\n
\n);\n\nexport default PasswordResetVerificationLoadingIcon;\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 } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, 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 PasswordResetVerificationButtonComponent from './components/password-reset-verification-button';\nimport PasswordResetVerificationErrorComponent from './components/password-reset-verification-error';\nimport PasswordResetVerificationInputComponent from './components/password-reset-verification-input';\nimport PasswordResetVerificationLabelComponent from './components/password-reset-verification-label';\nimport PasswordResetVerificationLoadingIconComponent from './components/password-reset-verification-loading-icon';\nimport PasswordResetVerificationLoadingMessageComponent from './components/password-reset-verification-loading-message';\nimport PasswordResetVerificationSuccessComponent from './components/password-reset-verification-success';\nimport { IPasswordResetVerificationConfig, IPasswordResetVerificationProps } from './password-reset-verification.props.autogenerated';\n\nexport interface IPasswordResetVerificationViewState {\n isShowLoading: boolean;\n}\n\nexport interface IPasswordResetVerificationItem {\n wrapper: INodeProps;\n key: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input: React.ReactNode;\n}\n\nexport interface IPasswordResetVerificationLocalAccount {\n localAccount: INodeProps;\n verificationControlWrapper: INodeProps;\n items: IPasswordResetVerificationItem[];\n successMessage: React.ReactNode[];\n errorMessage: React.ReactNode[];\n verificationButtonsWrapper: INodeProps;\n verificationButtons: React.ReactNode[];\n buttonsWrapper: INodeProps;\n buttons: React.ReactNode[];\n verificationSuccessModal: INodeProps;\n verificationSuccessModalMessage: INodeProps;\n}\n\nexport interface IPasswordResetVerificationLoading {\n modal: INodeProps;\n modalBody: INodeProps;\n icon: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface IPasswordResetVerificationViewProps {\n className: string;\n viewState: IPasswordResetVerificationViewState;\n loading: IPasswordResetVerificationLoading;\n passwordResetVerification: IModuleProps;\n defaultAADConainer: INodeProps;\n aadConainer: INodeProps;\n heading: React.ReactNode;\n passwordResetVerificationLocalAccount: IPasswordResetVerificationLocalAccount;\n}\n\n/**\n *\n * PasswordResetVerification component.\n * @extends {React.Component>}\n */\n@observer\nclass PasswordResetVerification extends React.Component> {\n private readonly moduleClassName: string = 'ms-password-reset-verification';\n\n private readonly telemetryContent: ITelemetryContent;\n\n @observable private emailRegex: string;\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: IPasswordResetVerificationProps) {\n super(props);\n this.emailRegex = EmailRegex.defaultRegex.source;\n this.isInitialized = false;\n this.templateVersion = '';\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\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(\n nextProps: IPasswordResetVerificationProps,\n nextState: IPasswordResetVerificationViewState\n ): 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 passwordResetVerification: {\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 )\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: config.heading && (\n \n ),\n passwordResetVerificationLocalAccount: this._renderLocalAccount()\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 // 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 _prePopulateData(): void {\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((obj: { ID: string; PAT: string }) => {\n if (obj.ID.toLowerCase() === 'email') {\n this.emailRegex = obj.PAT;\n } else if (obj.ID.toLowerCase() === 'emailverificationcontrol') {\n this.templateVersion = 'v2';\n }\n });\n if (!this.templateVersion) {\n this.templateVersion = 'v1';\n }\n }\n }\n\n private _updateErrorMessage(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n if (window && window['CONTENT']) {\n const message = {\n verifying_blurb: this.props.resources.loadingMessage\n };\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n Object.assign(window['CONTENT'], message);\n }\n }\n\n private _renderLocalAccount(): IPasswordResetVerificationLocalAccount {\n const { resources } = this.props;\n return {\n localAccount: {\n id: 'attributeList',\n className: `${this.moduleClassName}__account-items attr`\n },\n verificationControlWrapper: {\n id: 'emailVerificationControl',\n className: `${this.moduleClassName}__verification-control-content verificationControlContent`\n },\n items: [\n this._renderInput('email', 'email', resources.emailAddressLabelText, undefined, this.emailRegex),\n this._renderInput(\n this.getValue('email_ver_input', 'emailVerificationCode'),\n 'text',\n resources.verificationCodeLabelText,\n undefined,\n undefined,\n 'VerificationCode'\n )\n ],\n successMessage: [\n ,\n\n \n ],\n errorMessage: [\n ,\n ,\n ,\n ,\n ,\n ,\n ,\n \n ],\n verificationButtonsWrapper: {\n className: `${this.moduleClassName}__email-verification-buttons ${this.getValue('verify', '')}`,\n 'data-claim_id': 'email'\n },\n verificationButtons: [\n ,\n ,\n ,\n \n ],\n buttonsWrapper: {\n className: `${this.moduleClassName}__buttons`\n },\n buttons: [\n ,\n \n ],\n verificationSuccessModal: {\n className: `${this.moduleClassName}__verifying-modal verifying-modal`\n },\n verificationSuccessModalMessage: {\n id: 'verifying_blurb',\n className: `${this.moduleClassName}__verifying-modal-message`\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 ): IPasswordResetVerificationItem {\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 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\nexport default PasswordResetVerification;\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 { 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 * 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-generic-tile.props.autogenerated';\n\nexport interface IAccountGenericTileLinks {\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 AccountGenericTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-generic-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 AccountGenericTileLinks;\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 { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IPasswordResetVerificationInputProps {\n id?: string;\n\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 IPasswordResetVerificationInput {\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 PasswordResetVerificationInput: React.FC = ({\n id,\n type,\n value,\n pattern,\n className,\n maxLength,\n onChange\n}) => (\n \n);\n\nexport default PasswordResetVerificationInput;\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, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n IPasswordResetVerificationItem,\n IPasswordResetVerificationLoading,\n IPasswordResetVerificationLocalAccount,\n IPasswordResetVerificationViewProps\n} from './password-reset-verification';\n\nconst PasswordResetVerificationItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\n return (\n \n {label}\n {errorMessage}\n {input}\n \n );\n};\n\nconst LocalAccount: React.FC = ({\n localAccount,\n verificationControlWrapper,\n items,\n successMessage,\n errorMessage,\n verificationButtonsWrapper,\n verificationButtons,\n buttonsWrapper,\n buttons,\n verificationSuccessModal,\n verificationSuccessModalMessage\n}) => {\n return (\n \n \n {items &&\n items.map((item: IPasswordResetVerificationItem) => {\n // eslint-disable-next-line react/jsx-key\n return ;\n })}\n {successMessage &&\n successMessage.map((message: React.ReactNode, index: number) => {\n return {message};\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n \n {verificationButtons &&\n verificationButtons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n \n\n \n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n \n\n \n \n \n \n \n );\n};\n\nconst PasswordResetVerificationLoading: React.FC = ({ modal, modalBody, icon, message }) => {\n return (\n \n \n {icon}\n {message}\n \n \n );\n};\n\nconst PasswordResetVerificationView: React.FC = props => {\n const {\n passwordResetVerification,\n viewState,\n loading,\n defaultAADConainer,\n aadConainer,\n heading,\n passwordResetVerificationLocalAccount\n } = props;\n\n return (\n \n {viewState.isShowLoading && }\n {viewState.isShowLoading && }\n \n {heading}\n {LocalAccount(passwordResetVerificationLocalAccount)}\n \n \n );\n};\n\nexport default PasswordResetVerificationView;\n"],"sourceRoot":""}