{"version":3,"file":"static/js/6.4bd2e8a96f4959151a82.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-button.tsx?4f63","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-description.tsx?0e12","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-error.tsx?bbf5","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-input.tsx?ae93","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-label.tsx?eed2","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-link.tsx?a76b","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-loading-icon.tsx?c095","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-loading-message.tsx?cadc","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/components/krannich-sign-in-text.tsx?0f80","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/krannich-sign-in.tsx?e858","webpack://Msdyn365.Commerce.Online/./src/modules/krannich-sign-in/krannich-sign-in.view.tsx?c1b6","webpack://Msdyn365.Commerce.Online/./src/themes/krannich/views/content-block.view.tsx?b608","webpack://Msdyn365.Commerce.Online/./src/themes/krannich/views/invoices-list.view.tsx?b846","webpack://Msdyn365.Commerce.Online/./src/themes/krannich/views/navigation-menu.view.tsx?4a93","webpack://Msdyn365.Commerce.Online/./src/themes/krannich/views/order-confirmation.view.tsx?ce8f","webpack://Msdyn365.Commerce.Online/./src/modules/accordion-item/accordion-item.tsx?36f7","webpack://Msdyn365.Commerce.Online/./src/modules/accordion-item/accordion-item.view.tsx?a302","webpack://Msdyn365.Commerce.Online/./src/modules/accordion/accordion.tsx?78b1","webpack://Msdyn365.Commerce.Online/./src/modules/accordion/accordion.view.tsx?8c7b","webpack://Msdyn365.Commerce.Online/./src/modules/aad-generic/aad-generic.tsx?c076","webpack://Msdyn365.Commerce.Online/./src/modules/aad-generic/aad-generic.view.tsx?b418","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/account-address-tile.tsx?2f8c","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/account-address-tile.view.tsx?ac91","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/components/account-address-tile-description.tsx?4911","webpack://Msdyn365.Commerce.Online/./src/modules/account-address-tile/components/account-address-tile-links.tsx?bee7","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/components/account-invoice-tile-description.tsx?7378","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/components/account-invoice-tile-links.tsx?81f3","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/account-invoice-tile.tsx?c17e","webpack://Msdyn365.Commerce.Online/./src/modules/account-invoice-tile/account-invoice-tile.view.tsx?0a60","webpack://Msdyn365.Commerce.Online/./src/modules/account-welcome-tile/account-welcome-tile.tsx?2115","webpack://Msdyn365.Commerce.Online/./src/modules/account-welcome-tile/account-welcome-tile.view.tsx?e5e3","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/components/account-wishlist-tile-description.tsx?0588","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/components/account-wishlist-tile-links.tsx?f114","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/account-wishlist-tile.tsx?b721","webpack://Msdyn365.Commerce.Online/./src/modules/account-wishlist-tile/account-wishlist-tile.view.tsx?095e","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-status/components/b2b-requests-table.tsx?06fc","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-status/b2b-requests-status.tsx?c1aa","webpack://Msdyn365.Commerce.Online/./src/modules/b2b-requests-status/b2b-requests-status.view.tsx?6b7c","webpack://Msdyn365.Commerce.Online/./src/modules/account-management-address/account-management-address.view.tsx?8c9f","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/buybox.view.tsx?aec4","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/ratings-histogram.view.tsx?6e01","webpack://Msdyn365.Commerce.Online/./src/modules/footer-item/footer-item.tsx?074a","webpack://Msdyn365.Commerce.Online/./src/modules/footer-item/footer-item.view.tsx?c5af","webpack://Msdyn365.Commerce.Online/./src/modules/image-list/image-list.tsx?5602","webpack://Msdyn365.Commerce.Online/./src/modules/image-list/image-list.view.tsx?2bed","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-collection/interactive-feature-collection.tsx?96a6","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-collection/interactive-feature-collection.view.tsx?db52","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-item/components/links.tsx?7423","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-item/interactive-feature-item.tsx?792c","webpack://Msdyn365.Commerce.Online/./src/modules/interactive-feature-item/interactive-feature-item.view.tsx?bdcc","webpack://Msdyn365.Commerce.Online/./src/modules/order-history-with-search-and-filters/components/order-history-with-search-and-filters-organization-wide-selector.component.tsx?b9a7","webpack://Msdyn365.Commerce.Online/./src/modules/order-template-list/order-template-list.view.tsx?103b","webpack://Msdyn365.Commerce.Online/./src/modules/site-picker/site-picker.tsx?b9ec","webpack://Msdyn365.Commerce.Online/./src/modules/site-picker/site-picker.view.tsx?5319","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/reviews-list.view.tsx?39ca"],"sourcesContent":["/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { Button, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInButton {\r\n id?: string;\r\n className: string;\r\n text: string;\r\n ariaLabel: string;\r\n disabled?: boolean;\r\n telemetryContent?: ITelemetryContent;\r\n onClick?(event: React.MouseEvent): void;\r\n}\r\n\r\nconst SignInButton: React.FC = ({ id, className, text, ariaLabel, telemetryContent, disabled, onClick }) => {\r\n const payLoad = getPayloadObject('click', telemetryContent!, text);\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default SignInButton;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInDescription {\r\n className: string;\r\n description: string;\r\n}\r\n\r\nconst SignInDescription: React.FC = ({ className, description }) =>

{description}

;\r\n\r\nexport default SignInDescription;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInErrorProps {\r\n id?: string;\r\n className: string;\r\n type?: string;\r\n message?: string;\r\n}\r\n\r\nconst SignInError: React.FC = ({ id, className, type = 'page', message }) => {\r\n const errorClassName = `${className}__${type}-error`;\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default SignInError;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInInputProps {\r\n id?: string;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n type: any;\r\n value?: string;\r\n pattern?: string;\r\n className: string;\r\n maxLength?: string;\r\n ariaLabel?: string;\r\n onChange?(event: React.ChangeEvent): void;\r\n}\r\n\r\nexport interface ISignInInput {\r\n key: string;\r\n AddressItem: INodeProps;\r\n label: React.ReactNode;\r\n alert: React.ReactNode;\r\n input: React.ReactNode;\r\n}\r\n\r\nconst GetMaxLength = (maxLength?: string): number | undefined => {\r\n if (maxLength) {\r\n const parsedMaxLength = Number.parseInt(maxLength, 10);\r\n if (!isNaN(parsedMaxLength)) {\r\n return parsedMaxLength;\r\n }\r\n }\r\n\r\n return undefined;\r\n};\r\n\r\nconst SignInInput: React.FC = ({ id, type, value, pattern, className, maxLength, ariaLabel, onChange }) => (\r\n \r\n);\r\n\r\nexport default SignInInput;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInLabel {\r\n id: string;\r\n forId: string;\r\n className: string;\r\n text: string;\r\n}\r\n\r\nconst SignInLabel: React.FC = ({ id, forId, className, text }) => (\r\n \r\n);\r\n\r\nexport default SignInLabel;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInLink {\r\n id?: string;\r\n className: string;\r\n href: string;\r\n ariaLabel: string;\r\n text: string;\r\n telemetryContent?: ITelemetryContent;\r\n}\r\n\r\nconst SignInLink: React.FC = ({ id, className, href, telemetryContent, ariaLabel, text }) => {\r\n const payLoad = getPayloadObject('click', telemetryContent!, text);\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n return (\r\n \r\n {text}\r\n \r\n );\r\n};\r\n\r\nexport default SignInLink;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInLoadingIcon {\r\n className: string;\r\n}\r\n\r\nconst SignInLoadingIcon: React.FC = ({ className }) =>
;\r\n\r\nexport default SignInLoadingIcon;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInLoadingMessage {\r\n className: string;\r\n message: string;\r\n}\r\n\r\nconst SignInLoadingMessage: React.FC = ({ className, message }) => (\r\n
{message}
\r\n);\r\n\r\nexport default SignInLoadingMessage;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\n\r\nexport interface ISignInText {\r\n className: string;\r\n text: string;\r\n}\r\n\r\nconst SignInText: React.FC = ({ className, text }) => {text};\r\n\r\nexport default SignInText;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { EmailRegex } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, Modal, ModalBody } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\n\r\nimport SignInButtonComponent from './components/krannich-sign-in-button';\r\nimport SignInDescriptionComponent from './components/krannich-sign-in-description';\r\nimport SignInErrorComponent from './components/krannich-sign-in-error';\r\nimport SignInInputComponent from './components/krannich-sign-in-input';\r\nimport SignInLabelComponent from './components/krannich-sign-in-label';\r\nimport SignInLinkComponent from './components/krannich-sign-in-link';\r\nimport SignInLoadingIconComponent from './components/krannich-sign-in-loading-icon';\r\nimport SignInLoadingMessageComponent from './components/krannich-sign-in-loading-message';\r\nimport SignInTextComponent from './components/krannich-sign-in-text';\r\nimport { IKrannichSignInConfig, IKrannichSignInProps, IKrannichSignInResources } from './krannich-sign-in.props.autogenerated';\r\n\r\nexport interface ISignInViewState {\r\n isShowLoading: boolean;\r\n}\r\n\r\nexport interface ISignInItem {\r\n wrapper: INodeProps;\r\n key: string;\r\n label: React.ReactNode;\r\n error: React.ReactNode;\r\n input: React.ReactNode;\r\n}\r\n\r\nexport interface ISignInSocialItem {\r\n key: string;\r\n button: INodeProps;\r\n image: React.ReactNode;\r\n text: React.ReactNode;\r\n}\r\n\r\nexport interface ISignInB2BItem {\r\n key: string;\r\n button: INodeProps;\r\n text: React.ReactNode;\r\n}\r\n\r\nexport interface ISignInSocialAccount {\r\n socialAccounts: INodeProps;\r\n items: ISignInSocialItem[];\r\n}\r\n\r\nexport interface ISignInB2BAccount {\r\n socialAccounts: INodeProps;\r\n items: ISignInB2BItem[];\r\n}\r\nexport interface ISignInLocalAccount {\r\n localAccount: INodeProps;\r\n items: ISignInItem[];\r\n forgetPassword: React.ReactNode;\r\n disclaimer: React.ReactNode;\r\n error: React.ReactNode;\r\n signInButton: React.ReactNode;\r\n}\r\n\r\nexport interface ISignInLoading {\r\n modal: INodeProps;\r\n modalBody: INodeProps;\r\n icon: React.ReactNode;\r\n message: React.ReactNode;\r\n}\r\n\r\nexport interface ISignInViewProps {\r\n className: string;\r\n viewState: ISignInViewState;\r\n signIn: IModuleProps;\r\n loading: ISignInLoading;\r\n defaultAADConainer: INodeProps;\r\n aadConainer: INodeProps;\r\n signInSection: INodeProps;\r\n signInSectionHeading: React.ReactNode;\r\n signInLocalAccount: ISignInLocalAccount;\r\n signInSocialAccount: ISignInSocialAccount;\r\n signInB2BAccount: ISignInB2BAccount;\r\n signUpSection: INodeProps;\r\n signUpSectionHeading: React.ReactNode;\r\n signUpDescription: React.ReactNode;\r\n signUpLink: React.ReactNode;\r\n}\r\n\r\n/**\r\n * SignIn component\r\n * All AAD related module is rendered on AAD page and we need to respect HTML contract provide by AAD.\r\n * Please ensure any change in module don't break contract with AAD.\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nclass SignIn extends React.Component> {\r\n private readonly moduleClassName: string = 'ms-sign-in';\r\n\r\n private readonly telemetryContent?: ITelemetryContent;\r\n\r\n @observable private emailId: string;\r\n\r\n @observable private emailRegex: string;\r\n\r\n @observable private isInitialized: boolean;\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n private initializationTimer: any;\r\n\r\n constructor(props: IKrannichSignInProps) {\r\n super(props);\r\n this.emailRegex = EmailRegex.defaultRegex.source;\r\n this.isInitialized = false;\r\n this.telemetryContent = getTelemetryObject(\r\n this.props.context.request.telemetryPageName!,\r\n this.props.friendlyName,\r\n this.props.telemetry\r\n );\r\n this.emailId = 'logonIdentifier';\r\n }\r\n\r\n public componentDidMount(): void {\r\n this._prePopulateData();\r\n this._onInit();\r\n }\r\n\r\n // After successful AAD initialization, call initialize method provided by AAD to attach events.\r\n public componentDidUpdate(): void {\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n if (this.isInitialized && window && window['$element'] && window['$element']['initialize']) {\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n window['$element']['initialize']();\r\n }\r\n }\r\n\r\n public shouldComponentUpdate(nextProps: IKrannichSignInProps, nextState: ISignInViewState): boolean {\r\n if (this.state === nextState && this.props.data === nextProps.data) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public render(): JSX.Element {\r\n const config: IKrannichSignInConfig = this.props.config || {};\r\n const resources: IKrannichSignInResources = this.props.resources || {};\r\n\r\n const viewProps = {\r\n ...this.props,\r\n viewState: {\r\n isShowLoading: !this.isInitialized\r\n },\r\n signIn: {\r\n moduleProps: this.props,\r\n className: classnames(this.moduleClassName, config.className)\r\n },\r\n loading: {\r\n modal: {\r\n tag: Modal,\r\n isOpen: true\r\n },\r\n modalBody: {\r\n tag: ModalBody\r\n },\r\n icon: ,\r\n message: \r\n },\r\n defaultAADConainer: {\r\n id: 'api',\r\n style: { display: 'none' }\r\n },\r\n aadConainer: {\r\n id: this.isInitialized ? 'api' : null,\r\n className: `${this.moduleClassName}__container`\r\n },\r\n signInSection: {\r\n className: `${this.moduleClassName}__sign-in-section`\r\n },\r\n signInSectionHeading: (\r\n \r\n ),\r\n signInLocalAccount: {\r\n localAccount: {\r\n className: `${this.moduleClassName}__account-items localAccount`\r\n },\r\n items: [\r\n this._renderInput(\r\n this.emailId,\r\n 'email',\r\n resources.emailAddressLabelText,\r\n resources.emailAddressAriaLabel,\r\n this.emailRegex\r\n ),\r\n this._renderInput('password', 'password', resources.passwordLabelText)\r\n ],\r\n forgetPassword: (\r\n \r\n ),\r\n disclaimer: config.signInDisclaimer && (\r\n \r\n ),\r\n error: ,\r\n signInButton: (\r\n \r\n )\r\n },\r\n signInSocialAccount: {\r\n socialAccounts: {\r\n className: `${this.moduleClassName}__social-accounts`\r\n },\r\n items: [\r\n this._renderSocialAccount(\r\n 'FacebookExchange',\r\n resources.facebookButtonText,\r\n resources.facebookButtonAriaLabel,\r\n config.facebookIcon\r\n ),\r\n this._renderSocialAccount(\r\n 'MicrosoftAccountExchange',\r\n resources.microsoftButtonText,\r\n resources.microsoftButtonAriaLabel,\r\n config.microsoftIcon\r\n )\r\n ]\r\n },\r\n signInB2BAccount: {\r\n socialAccounts: {\r\n className: `${this.moduleClassName}__b2b-social-accounts`\r\n },\r\n items: [\r\n this._renderB2BSocialAccount(\r\n 'StoreManagerB2BSignin',\r\n resources.b2bButtonText,\r\n resources.b2bButtonAriaLabel,\r\n config.displayB2bAccountManagerSignin\r\n )\r\n ]\r\n },\r\n signUpSection: {\r\n className: `${this.moduleClassName}__sign-up-section`\r\n },\r\n signUpSectionHeading: (\r\n \r\n ),\r\n signUpDescription: (\r\n \r\n ),\r\n signUpLink: (\r\n \r\n )\r\n };\r\n\r\n return this.props.renderView(viewProps) as React.ReactElement;\r\n }\r\n\r\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.signInDisclaimer = event.target.value);\r\n\r\n public handleSignInHeadingChange = (event: Msdyn365.ContentEditableEvent) =>\r\n (this.props.config.signInHeading.text = event.target.value);\r\n\r\n public handleSignUpHeadingChange = (event: Msdyn365.ContentEditableEvent) =>\r\n (this.props.config.signUpHeading.text = event.target.value);\r\n\r\n private readonly _onInit = () => {\r\n this._prePopulateData();\r\n this._updateErrorMessage();\r\n\r\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.\r\n this.initializationTimer = setInterval(() => {\r\n this._isInitializationSuccessful();\r\n }, 100);\r\n setTimeout(() => {\r\n clearInterval(this.initializationTimer);\r\n }, 10_000);\r\n };\r\n\r\n // After successful AAD initialization, remove waiting and preload any data, if needed.\r\n private readonly _isInitializationSuccessful = () => {\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n if (window && window['$diags'] && window['$diags']['initializationSuccessful']) {\r\n clearInterval(this.initializationTimer);\r\n this.isInitialized = true;\r\n }\r\n };\r\n\r\n private readonly _prePopulateData = () => {\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n if (window && window['CONTENT'] && window['CONTENT']['email_pattern']) {\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n this.emailRegex = window['CONTENT']['email_pattern'];\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\r\n if (window['SA_FIELDS'] && window['SA_FIELDS']['AttributeFields']) {\r\n // @ts-expect-error\r\n this.emailId = (window.SA_FIELDS.AttributeFields || [])[0].ID || this.emailId;\r\n }\r\n };\r\n\r\n private readonly _updateErrorMessage = () => {\r\n const resources: IKrannichSignInResources = this.props.resources || {};\r\n\r\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\r\n if (window && window['CONTENT']) {\r\n const errorMessages = {\r\n requiredField_email: resources.requriedEmailError,\r\n requiredField_password: resources.requriedPasswordError,\r\n invalid_email: resources.invalidEmailError,\r\n invalid_password: resources.invalidPasswordError,\r\n unknown_error: resources.unknownError\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\r\n Object.assign(window['CONTENT'], errorMessages);\r\n }\r\n };\r\n\r\n private _renderInput(id: string, type: string, labelText: string, ariaLabel?: string, pattern?: string): ISignInItem {\r\n const className = `${this.moduleClassName}__account-item`;\r\n return {\r\n wrapper: {\r\n className: classnames(className, `${className}-${id}`, 'entry-item', 'attrEntry')\r\n },\r\n key: id,\r\n label: (\r\n \r\n ),\r\n error: (\r\n \r\n ),\r\n input: (\r\n \r\n )\r\n };\r\n }\r\n\r\n private _renderSocialAccount(id: string, text: string, ariaLabel: string, iconImage?: Msdyn365.IImageData): ISignInSocialItem {\r\n return {\r\n key: id,\r\n button: {\r\n id,\r\n tag: 'button',\r\n className: classnames(\r\n `${this.moduleClassName}__social-account`,\r\n `${this.moduleClassName}__social-account-${id}`,\r\n 'accountButton',\r\n 'msc-btn'\r\n ),\r\n 'aria-label': ariaLabel\r\n },\r\n image: this._createImageMarkup(iconImage),\r\n text: \r\n };\r\n }\r\n\r\n private _renderB2BSocialAccount(\r\n id: string,\r\n text: string,\r\n ariaLabel: string,\r\n _displayB2bAccountManagerSignin: boolean | undefined\r\n ): ISignInB2BItem | null {\r\n if (_displayB2bAccountManagerSignin) {\r\n return {\r\n key: id,\r\n button: {\r\n id,\r\n tag: 'button',\r\n className: classnames(\r\n `${this.moduleClassName}__social-account`,\r\n `${this.moduleClassName}__social-account-${id}`,\r\n 'accountButton',\r\n 'msc-btn'\r\n ),\r\n 'aria-label': ariaLabel\r\n },\r\n text: \r\n };\r\n }\r\n return null;\r\n }\r\n\r\n private _createImageMarkup(iconImage?: Msdyn365.IImageData): React.ReactNode | null {\r\n if (iconImage) {\r\n const imageProps = {\r\n gridSettings: this.props.context.request.gridSettings || {},\r\n imageSettings: iconImage && iconImage.imageSettings\r\n };\r\n const pictureClassName = `${this.moduleClassName}__social-account-picture`;\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nexport default SignIn;\r\n","/* eslint-disable react/no-unescaped-entities */\r\n/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { HtmlHeadInclude } from '@msdyn365-commerce/core-internal';\r\n\r\nimport {\r\n ISignInItem,\r\n ISignInLoading,\r\n ISignInLocalAccount,\r\n ISignInSocialAccount,\r\n ISignInSocialItem,\r\n ISignInB2BAccount,\r\n ISignInB2BItem,\r\n ISignInViewProps\r\n} from './krannich-sign-in';\r\n\r\nconst LocalAccount: React.FC = ({ localAccount, items, forgetPassword, disclaimer, error, signInButton }) => {\r\n return (\r\n \r\n {items &&\r\n items.map((item: ISignInItem) => {\r\n return (\r\n \r\n {item.label}\r\n {item.error}\r\n {item.input}\r\n \r\n );\r\n })}\r\n {forgetPassword}\r\n {disclaimer}\r\n {error}\r\n {signInButton}\r\n \r\n );\r\n};\r\n\r\nconst SocialAccount: React.FC = ({ socialAccounts, items }) => {\r\n return (\r\n \r\n {items &&\r\n items.map((item: ISignInSocialItem) => {\r\n return (\r\n \r\n {item.image}\r\n {item.text}\r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst B2BAccount: React.FC = ({ socialAccounts, items }) => {\r\n return (\r\n \r\n {items &&\r\n items.map((item: ISignInB2BItem) => {\r\n return (\r\n item && (\r\n \r\n {item.text}\r\n \r\n )\r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst SignInLoading: React.FC = ({ modal, modalBody, icon, message }) => {\r\n return (\r\n \r\n \r\n {icon}\r\n {message}\r\n \r\n \r\n );\r\n};\r\n\r\nconst SignInView: React.FC = props => {\r\n const {\r\n signIn,\r\n viewState,\r\n loading,\r\n defaultAADConainer,\r\n aadConainer,\r\n signInSection,\r\n signUpSection,\r\n signInSectionHeading,\r\n signInLocalAccount,\r\n signInSocialAccount,\r\n signUpSectionHeading,\r\n signInB2BAccount,\r\n signUpDescription,\r\n signUpLink\r\n } = props;\r\n\r\n return (\r\n <>\r\n \r\n document.write('\r\n \r\n ');\r\n \r\n \r\n {viewState.isShowLoading && }\r\n {viewState.isShowLoading && }\r\n \r\n \r\n {signInSectionHeading}\r\n {LocalAccount(signInLocalAccount)}\r\n {SocialAccount(signInSocialAccount)}\r\n {B2BAccount(signInB2BAccount)}\r\n \r\n \r\n {signUpSectionHeading}\r\n {signUpDescription}\r\n {signUpLink}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default SignInView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport MsDyn365 from '@msdyn365-commerce/core';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nimport {\r\n IContentBlockAdditionalContentItemViewProps,\r\n IContentBlockAdditionalContentViewProps\r\n} from '@msdyn365-commerce-modules/content-block/src/modules/content-block/./components/additional-content';\r\nimport { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/src/modules/content-block/./content-block';\r\nimport { IContentBlockProps } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\n/**\r\n * Render Additional Content.\r\n * @param additionalContent - Additional content view props.\r\n * @returns JSX Element.\r\n */\r\nconst renderAdditionalContent = (additionalContent: IContentBlockAdditionalContentViewProps) => {\r\n return (\r\n \r\n {additionalContent.additionalContentItems?.map((item: IContentBlockAdditionalContentItemViewProps) => {\r\n return (\r\n <>\r\n {item.heading}\r\n \r\n {item.text}\r\n {item.links}\r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst ContentBlockView: React.FC> = props => {\r\n const {\r\n contentBlockContainer,\r\n imageContainer,\r\n detailsContainer,\r\n title,\r\n text,\r\n links,\r\n image,\r\n contentBlockAnchorTag,\r\n imageLink,\r\n imageAriaLabel,\r\n additionalContent,\r\n context: {\r\n request: {\r\n user: { isAuthenticated },\r\n gridSettings\r\n },\r\n actionContext: { requestContext }\r\n },\r\n config: { showOnlyForGuest, showOnlyForloggedIn, mobileImage }\r\n } = props;\r\n const imageJSX = image as JSX.Element;\r\n const contentImageProps = imageJSX?.props;\r\n const src = contentImageProps?.src;\r\n\r\n const [isMobile, setIsMobile] = React.useState();\r\n const _updateViewport = (): void => {\r\n const viewport = _getViewport();\r\n viewport === 'xs' || viewport === 'sm' ? setIsMobile(true) : setIsMobile(false);\r\n };\r\n type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\n const _getViewport = (): GridSize => {\r\n // Always render in mobile viewport on a mobile device\r\n if (props.context?.request && props.context.request.device && props.context.request.device.Type === 'Mobile') {\r\n return 'xs';\r\n }\r\n if (MsDyn365.isBrowser && window.innerWidth) {\r\n const gridSettings = props.context?.request.gridSettings;\r\n if (gridSettings) {\r\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\r\n return 'xs';\r\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\r\n return 'sm';\r\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\r\n return 'md';\r\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\r\n return 'lg';\r\n }\r\n return 'xl';\r\n }\r\n }\r\n return 'lg';\r\n };\r\n React.useEffect(() => {\r\n _updateViewport();\r\n if (MsDyn365.isBrowser && window.addEventListener) {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n window.addEventListener('resize', _updateViewport);\r\n }\r\n }, []);\r\n const imageProps = {\r\n gridSettings: gridSettings ?? {},\r\n imageSettings: mobileImage?.imageSettings\r\n };\r\n const mobileFullImage = (\r\n \r\n );\r\n if ((isAuthenticated && showOnlyForloggedIn) || (showOnlyForGuest && !isAuthenticated) || (!showOnlyForGuest && !showOnlyForloggedIn)) {\r\n if (imageLink) {\r\n return (\r\n \r\n \r\n {isMobile ? (\r\n {mobileImage ? mobileFullImage : image}\r\n ) : (\r\n {image}\r\n )}\r\n \r\n \r\n {title}\r\n {text}\r\n {links}\r\n {additionalContent && renderAdditionalContent(additionalContent)}\r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n {isMobile\r\n ? src && {mobileImage ? mobileFullImage : image}\r\n : src && {image}}\r\n \r\n {title}\r\n {text}\r\n {links}\r\n {additionalContent && renderAdditionalContent(additionalContent)}\r\n \r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nexport default ContentBlockView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IInvoicesListViewProps } from '@msdyn365-commerce-modules/invoice/src/modules/invoices-list/./invoices-list';\r\n\r\nexport const InvoiceListView: React.FC = props => {\r\n const { header, filter, content, invoiceRequestModal, pagination } = props;\r\n\r\n return (\r\n \r\n {header}\r\n {invoiceRequestModal}\r\n {filter}\r\n {/* VSI Customization to css effect on select all checkbox */}\r\n
\r\n {content}\r\n {pagination}\r\n
\r\n );\r\n};\r\n\r\nexport default InvoiceListView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport MsDyn365, { IImageData, IImageSettings, Image } from '@msdyn365-commerce/core';\r\nimport { ArrayExtensions, generateImageUrl } from '@msdyn365-commerce-modules/retail-actions';\r\nimport {\r\n getPayloadObject,\r\n getTelemetryAttributes,\r\n getTelemetryObject,\r\n IPayLoad,\r\n ITelemetryContent,\r\n Module,\r\n Node,\r\n onTelemetryClick\r\n} from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\n\r\nimport { INavigationMenuViewProps } from '@msdyn365-commerce-modules/navigation-menu/src/modules/navigation-menu/./navigation-menu';\r\nimport { IMenuItemData } from '@msdyn365-commerce-modules/navigation-menu/src/modules/navigation-menu/./navigation-menu.data';\r\nimport { IDictionary } from '@msdyn365-commerce/retail-proxy';\r\n\r\ninterface INavigationState {\r\n parentMenu?: number;\r\n activeMenu?: number;\r\n categoryImage?: IImageData[] | null;\r\n mobileViewLabelText?: string;\r\n categoryImageAltText: string;\r\n // VSI -Customization\r\n menuItemListStateBool: boolean;\r\n drawerKeyValue: IDictionary;\r\n}\r\n\r\n/**\r\n *\r\n * NavigationMenuView component.\r\n * @extends {React.PureComponent}\r\n */\r\nexport class NavigationMenuView extends React.PureComponent {\r\n private static isBackTrack: boolean = false;\r\n\r\n private currentLevel: number = 0;\r\n\r\n private readonly menuNode: React.RefObject;\r\n\r\n private readonly menuItemRef: React.RefObject;\r\n\r\n private readonly telemetryContent: ITelemetryContent;\r\n\r\n private readonly payLoad: IPayLoad;\r\n\r\n constructor(props: INavigationMenuViewProps) {\r\n super(props);\r\n this.menuNode = React.createRef();\r\n this.menuItemRef = React.createRef();\r\n this.state = {\r\n activeMenu: undefined,\r\n mobileViewLabelText: '',\r\n parentMenu: undefined,\r\n categoryImageAltText: '',\r\n drawerKeyValue: {},\r\n menuItemListStateBool: false\r\n };\r\n this._closeSubmenu = this._closeSubmenu.bind(this);\r\n this.telemetryContent = getTelemetryObject(\r\n this.props.context.request.telemetryPageName!,\r\n this.props.friendlyName,\r\n this.props.telemetry\r\n );\r\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\r\n }\r\n\r\n public componentDidMount(): void {\r\n if (MsDyn365.isBrowser) {\r\n document.body.addEventListener('mousedown', this._handleClickOutside);\r\n document.body.addEventListener('focusout', this._handleFocusOutside);\r\n }\r\n }\r\n\r\n public componentDidUpdate(): void {\r\n if (this.menuItemRef.current?.children[0] && this.props.isMobileView) {\r\n (this.menuItemRef.current.children[0] as HTMLElement).focus();\r\n }\r\n }\r\n\r\n public componentWillUnmount(): void {\r\n if (MsDyn365.isBrowser) {\r\n document.body.removeEventListener('mousedown', this._handleClickOutside, false);\r\n document.body.removeEventListener('focusout', this._handleFocusOutside, false);\r\n }\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n const { isMobileView, MenuList, MobileBackButton, MobileDescriptionContainer, MobileDescriptionLabel, Navigation } = this.props;\r\n\r\n this.currentLevel = 1;\r\n\r\n if (isMobileView) {\r\n return (\r\n \r\n \r\n {this.state.activeMenu !== undefined && (\r\n \r\n \r\n {this.state.mobileViewLabelText}\r\n \r\n )}\r\n {this._renderDisplay()}\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {this._renderDisplay()}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _renderDisplay(): JSX.Element[] {\r\n const { ListItem, menuItemData, isMobileView } = this.props;\r\n const { activeMenu } = this.state;\r\n const menuItemList: JSX.Element[] = [];\r\n\r\n if (isMobileView && activeMenu !== undefined && menuItemData.length > 0) {\r\n let menuItem: IMenuItemData = {};\r\n for (const menuItemDatum of menuItemData) {\r\n if (menuItemDatum && menuItemDatum.id === activeMenu) {\r\n menuItem = menuItemDatum;\r\n !NavigationMenuView.isBackTrack\r\n ? this.setState({ parentMenu: undefined })\r\n : this.setState({ parentMenu: undefined, mobileViewLabelText: menuItemDatum.linkText });\r\n break;\r\n }\r\n menuItem = this._getFromSubMenu(menuItemDatum) as IMenuItemData;\r\n if (menuItem && menuItem.id === activeMenu) {\r\n break;\r\n }\r\n }\r\n\r\n menuItem &&\r\n menuItemList.push(\r\n \r\n {' '}\r\n {this._createMenuItemList(menuItem)}{' '}\r\n \r\n );\r\n } else {\r\n menuItemData.forEach((item: IMenuItemData, index: number) => {\r\n menuItemList.push(\r\n \r\n {this._createMenuItemList(item)}\r\n
\r\n );\r\n });\r\n }\r\n\r\n return menuItemList;\r\n }\r\n\r\n private _getFromSubMenu(item?: IMenuItemData): IMenuItemData | null {\r\n const subMenus = item && item.subMenu;\r\n if (subMenus && subMenus.length > 0) {\r\n for (let i = 0; i <= subMenus.length - 1; i++) {\r\n if (subMenus[i].id === this.state.activeMenu) {\r\n !NavigationMenuView.isBackTrack\r\n ? this.setState({ parentMenu: item?.id })\r\n : this.setState({ parentMenu: item && item.id, mobileViewLabelText: subMenus[i].linkText });\r\n return subMenus[i];\r\n }\r\n const found = this._getFromSubMenu(subMenus[i]);\r\n if (found) {\r\n return found;\r\n }\r\n }\r\n }\r\n this.props.context.telemetry.error('Submenu content is empty, module wont render.');\r\n return null;\r\n }\r\n\r\n private _createMenuItemList(menuItemData: IMenuItemData): JSX.Element | null {\r\n if (menuItemData && menuItemData.subMenu && menuItemData.subMenu.length > 0) {\r\n if (this.props.isMobileView && this.state.activeMenu !== undefined) {\r\n return this._renderSubMenu(menuItemData.subMenu, menuItemData.id, false);\r\n }\r\n return (\r\n <>\r\n
\r\n {this._renderButtonMenuItem(menuItemData)}\r\n
\r\n {/* Will Disable Hover until Complete page load */}\r\n
\r\n {this._renderSubMenu(menuItemData.subMenu, menuItemData.id, false)}\r\n
\r\n \r\n );\r\n } else if (menuItemData && menuItemData.linkText && menuItemData.linkURL && menuItemData.linkURL.length > 0) {\r\n return this._renderLinkMenuItem(menuItemData, menuItemData.id, false, true);\r\n } else if (menuItemData && menuItemData.linkText && !menuItemData.linkURL) {\r\n return this._renderSpanMenuItem(menuItemData, menuItemData.id, true);\r\n }\r\n this.props.context.telemetry.error('Navigation menu content is empty, module wont render.');\r\n return null;\r\n }\r\n\r\n private _renderSubMenu(subMenus?: IMenuItemData[], activeMenu?: number, IsSubMenu?: boolean): JSX.Element | null {\r\n const { isMobileView, ListItem } = this.props;\r\n const enableMultiSupportMenu = this.props.config.enableMultilevelMenu || false;\r\n const multiLevelSupportedMenu = this.props.config.menuLevelSupport || 3;\r\n\r\n // Const isParentMenu:boolean= false;\r\n // if (activeMenu && this.state.activeMenu !== activeMenu) {\r\n // this.props.context.telemetry.error('Navigation Active menu content is empty, module wont render.');\r\n // return null;\r\n // }\r\n\r\n if (!subMenus || subMenus.length === 0) {\r\n this.props.context.telemetry.error('Navigation Submenu content is empty, module wont render.');\r\n return null;\r\n }\r\n\r\n let levelClassName: string = '';\r\n const menuOptions =\r\n subMenus &&\r\n subMenus.map((option: IMenuItemData, idx: number) => {\r\n const hasOptions = option.subMenu && option.subMenu.length > 0;\r\n let menuItem: JSX.Element | null;\r\n if (option.linkText === 'All') {\r\n return <>;\r\n }\r\n if (hasOptions && isMobileView) {\r\n menuItem = this._renderButtonMenuItem(option, activeMenu, idx);\r\n } else {\r\n menuItem = option.linkURL ? this._renderLinkMenuItem(option, idx) : this._renderSpanMenuItem(option);\r\n }\r\n\r\n let subMenu;\r\n const haveSubmenu = hasOptions && enableMultiSupportMenu && this.currentLevel <= Math.round(multiLevelSupportedMenu) - 1;\r\n if (haveSubmenu) {\r\n this.currentLevel++;\r\n levelClassName = enableMultiSupportMenu ? `level-${this.currentLevel.toString()}` : '';\r\n subMenu = this._renderSubMenu(option.subMenu, isMobileView ? option.id : undefined, true);\r\n }\r\n return (\r\n \r\n {menuItem}\r\n {subMenu}\r\n \r\n );\r\n });\r\n return this._renderMenu(levelClassName, menuOptions, activeMenu, IsSubMenu);\r\n }\r\n\r\n private _renderButtonMenuItem(option: IMenuItemData, activeMenu?: number, index?: number): JSX.Element | null {\r\n const {\r\n Link,\r\n isMobileView,\r\n context: {\r\n request: {\r\n url: {\r\n requestUrl: { origin }\r\n }\r\n }\r\n }\r\n } = this.props;\r\n if (isMobileView) {\r\n return (\r\n
\r\n {\r\n window.location.replace(String(origin + option.linkURL));\r\n }}\r\n onFocus={this._closeSubmenu}\r\n aria-haspopup={!(this.state.activeMenu && this.state.activeMenu === option.id)}\r\n aria-expanded={!!(this.state.activeMenu && this.state.activeMenu === option.id)}\r\n data-parent={activeMenu}\r\n >\r\n {option.linkText}\r\n \r\n \r\n
\r\n );\r\n }\r\n return (\r\n {\r\n window.location.replace(String(origin + option.linkURL));\r\n }}\r\n onFocus={this._closeSubmenu}\r\n aria-haspopup={!(this.state.activeMenu && this.state.activeMenu === option.id)}\r\n aria-expanded={!!(this.state.activeMenu && this.state.activeMenu === option.id)}\r\n data-parent={activeMenu}\r\n >\r\n {option.linkText}\r\n \r\n );\r\n }\r\n\r\n private _renderLinkMenuItem(\r\n option: IMenuItemData,\r\n index?: number,\r\n hoverEffect: boolean = true,\r\n isParent: boolean = false\r\n ): JSX.Element | null {\r\n const { Link } = this.props;\r\n const linkText = option.linkText ? option.linkText : '';\r\n const imagesource = option.imageSource ? option.imageSource : '';\r\n this.payLoad.contentAction.etext = linkText;\r\n const attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\r\n return (\r\n \r\n {option.linkText}\r\n \r\n );\r\n }\r\n\r\n private _renderPromotionalLink(linkText?: string, linkUrl?: string): JSX.Element | null {\r\n const { Link } = this.props;\r\n this.payLoad.contentAction.etext = linkText;\r\n const attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\r\n if (linkText && linkUrl) {\r\n return (\r\n \r\n {linkText}\r\n \r\n );\r\n }\r\n return null;\r\n }\r\n\r\n private _renderSpanMenuItem(option: IMenuItemData, index?: number, isParent: boolean = false): JSX.Element | null {\r\n const { Span } = this.props;\r\n return (\r\n \r\n {option.linkText}\r\n \r\n );\r\n }\r\n\r\n private _renderMenu(level: string, menuOptions: JSX.Element[], currentItem?: number, submenu?: boolean): JSX.Element | null {\r\n const { DivContainer, MenuList, ImageDivContainer, showCategoryImage, showPromotionalContent, isMobileView } = this.props;\r\n const categoryImageDisplay =\r\n !isMobileView &&\r\n (showCategoryImage || showPromotionalContent) &&\r\n !ArrayExtensions.hasElements(this.state.categoryImage) &&\r\n !submenu;\r\n const promotionalContentDisplay =\r\n !isMobileView && showPromotionalContent && ArrayExtensions.hasElements(this.state.categoryImage) && !submenu;\r\n const DivContainerClass = this.currentLevel > 2 || categoryImageDisplay ? DivContainer!.className : 'ms-nav__feature';\r\n this.currentLevel = 1;\r\n return (\r\n \r\n 2 &&\r\n 'navmenu-multi-level'\r\n )}\r\n >\r\n {menuOptions}\r\n \r\n {categoryImageDisplay &&\r\n this.state.categoryImage &&\r\n this.state.categoryImage.map(item => (\r\n \r\n {this.state.categoryImage && this._getCategoryImage(item)}\r\n {promotionalContentDisplay && this._renderPromotionalLink(item.altText, item.additionalProperties?.linkUrl)}\r\n \r\n ))}\r\n \r\n );\r\n }\r\n\r\n private readonly _updateCategoryImage = (categoryImageSrc: string, option: IMenuItemData) => () => {\r\n const linkText = option && option.linkText ? option.linkText : '';\r\n const promotionalImage: IImageData[] = [{ src: categoryImageSrc, altText: linkText }];\r\n\r\n // Read category and promotional image in one array\r\n if (ArrayExtensions.hasElements(option.promotionalContent)) {\r\n option.promotionalContent.map(item => {\r\n if (item && item.image) {\r\n const imageSrc = item.image.src;\r\n const promotionalItemImageSettings = item.image.imageSettings;\r\n promotionalImage.push({\r\n src: imageSrc,\r\n altText: item.text,\r\n imageSettings: promotionalItemImageSettings,\r\n additionalProperties: { linkUrl: item.linkUrl.destinationUrl }\r\n });\r\n }\r\n });\r\n }\r\n this.setState({\r\n categoryImage: promotionalImage.length > 0 ? promotionalImage : [{ src: 'empty' }],\r\n categoryImageAltText: linkText\r\n });\r\n };\r\n\r\n private readonly _handleDropdownToggle = (data: IMenuItemData, parentId?: number) => () => {\r\n if (!this.props.isMobileView) {\r\n this.setState(\r\n {\r\n activeMenu: this.state.activeMenu && this.state.activeMenu === data.id! ? undefined : data.id!,\r\n parentMenu: parentId\r\n },\r\n () => {\r\n this.setState({ menuItemListStateBool: true });\r\n }\r\n );\r\n if (this.props.showCategoryImage) {\r\n this._updateCategoryImage(data.imageSource!, data)();\r\n }\r\n } else {\r\n NavigationMenuView.isBackTrack = false;\r\n this.setState({\r\n activeMenu: data.id,\r\n mobileViewLabelText: data.linkText!,\r\n parentMenu: parentId\r\n });\r\n }\r\n };\r\n\r\n private readonly _handleGoBack = () => () => {\r\n NavigationMenuView.isBackTrack = true;\r\n this.setState({ activeMenu: this.state.parentMenu });\r\n };\r\n\r\n /**\r\n * Method to handle click outside of menu.\r\n * @param event -HTML event.\r\n */\r\n private readonly _handleClickOutside = (event: MouseEvent) => {\r\n if (this.menuNode.current && !this.menuNode.current.contains(event.target as Node)) {\r\n this.setState({\r\n activeMenu: undefined,\r\n mobileViewLabelText: '',\r\n categoryImage: null\r\n });\r\n }\r\n };\r\n\r\n /**\r\n * Method to handle click outside of menu.\r\n * @param event -HTML event.\r\n */\r\n private readonly _handleFocusOutside = (event: FocusEvent) => {\r\n if (this.menuNode.current && !this.menuNode.current.contains(event.relatedTarget as Node)) {\r\n this._closeSubmenu();\r\n }\r\n };\r\n\r\n /**\r\n * Checks to assign a ref for focus.\r\n * @param index -Sub menu list index.\r\n * @param mobileViewLabelText -Parent user clicked Sub menu list.\r\n * @param optionLinkText -Sub menu list.\r\n * @returns Ref.\r\n */\r\n private readonly _shouldAddFocusMenuRef = (index: number, mobileViewLabelText?: string, optionLinkText?: string) => {\r\n if (!NavigationMenuView.isBackTrack && index === 0) {\r\n return true;\r\n }\r\n if (!optionLinkText || !mobileViewLabelText) {\r\n return false;\r\n }\r\n return mobileViewLabelText === optionLinkText;\r\n };\r\n\r\n private _closeSubmenu(): void {\r\n if (!this.props.isMobileView) {\r\n this.setState({ activeMenu: undefined, categoryImage: null, mobileViewLabelText: '' });\r\n }\r\n }\r\n\r\n private readonly _getCategoryImage = (categoryImage?: IImageData): React.ReactNode | null => {\r\n if (!categoryImage || !categoryImage.src) {\r\n return null;\r\n }\r\n\r\n const categoryImageUrl = generateImageUrl(`${categoryImage.src}`, this.props.context.actionContext.requestContext.apiSettings);\r\n const defaultImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: 'w=300&h=250&m=8', w: 0, h: 0 },\r\n sm: { q: 'w=300&h=250&m=8', w: 0, h: 0 },\r\n md: { q: 'w=300&h=250&m=8', w: 0, h: 0 },\r\n lg: { q: 'w=300&h=250&m=8', w: 0, h: 0 }\r\n },\r\n lazyload: true\r\n };\r\n if (categoryImageUrl !== undefined) {\r\n return (\r\n \r\n );\r\n }\r\n return null;\r\n };\r\n}\r\n\r\nexport default NavigationMenuView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nimport {\r\n IHelp,\r\n IOrderSummary,\r\n IPaymentMethods\r\n} from '@msdyn365-commerce-modules/order-management/src/modules/order-confirmation/../../common';\r\nimport {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups\r\n} from '@msdyn365-commerce-modules/order-management/src/modules/order-confirmation/../../common/get-groups';\r\nimport { IOrderInformation } from '@msdyn365-commerce-modules/order-management/src/modules/order-confirmation/../../common/get-order-information';\r\nimport { ISalesLine } from '@msdyn365-commerce-modules/order-management/src/modules/order-confirmation/../../common/get-sales-line';\r\nimport { IOrderConfirmationViewProps } from '@msdyn365-commerce-modules/order-management/src/modules/order-confirmation/./order-confirmation';\r\nimport { IOrderConfirmationConfig, IOrderConfirmationProps } from '../definition-extensions/order-confirmation.ext.props.autogenerated';\r\nimport { IContentBlockConfig } from '../definition-extensions/content-block.ext.props.autogenerated';\r\nimport { currencyFormat, dateFormatByLocale, incExcPriceFormat, taxPercentage } from '../../../utils/helper';\r\nimport { IAny, ICoreContext, IGeneric } from '@msdyn365-commerce/core-internal';\r\nimport { IOrderConfirmationData } from './order-confirmation.data';\r\nimport MsDyn365 from '@msdyn365-commerce/core';\r\n\r\nexport const OrderConfirmationOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n receiptEmail,\r\n createdDate,\r\n channelReferenceId\r\n}) => (\r\n // VSI customization for new designs implementation\r\n <>\r\n);\r\n\r\nexport const OrderConfirmationSalesLine: React.FC = ({\r\n salesLineProps,\r\n salesLine,\r\n buyAgainButton,\r\n data,\r\n context,\r\n customerTaxPercentage\r\n}) => {\r\n const { enabledIncExPrices } = context?.app.config;\r\n const unitPrice = Number(data.salesLine.NetAmount!) / Number(data.salesLine.Quantity);\r\n return (\r\n <>\r\n {/* */}\r\n \r\n {data.product?.ItemId}\r\n {data.product?.Name}\r\n {incExcPriceFormat(unitPrice, context, enabledIncExPrices, customerTaxPercentage)}\r\n {data.product?.DefaultUnitOfMeasure}\r\n \r\n {data.salesLine.Quantity}\r\n \r\n {/* {salesLine} */}\r\n {incExcPriceFormat(data.salesLine.NetAmount!, context, enabledIncExPrices, customerTaxPercentage)}\r\n \r\n {/* */}\r\n \r\n );\r\n};\r\n\r\n// VSI CUSTOMIZATION FOR MOBILE LIST VIEW\r\nexport const OrderConfirmationSalesLineForMobile: React.FC = ({\r\n salesLineProps,\r\n salesLine,\r\n buyAgainButton,\r\n data,\r\n context,\r\n customerTaxPercentage\r\n}) => {\r\n const { enabledIncExPrices } = context?.app.config;\r\n return (\r\n <>\r\n
\r\n
\r\n Item Number: \r\n {data.product?.ItemId}\r\n
\r\n
\r\n Product Name: \r\n {data.product?.Name}\r\n
\r\n
\r\n Unit Price: \r\n \r\n {incExcPriceFormat(data.product?.Price!, context, enabledIncExPrices, customerTaxPercentage)}\r\n \r\n
\r\n
\r\n UOM: \r\n {data.product?.DefaultUnitOfMeasure}\r\n
\r\n
\r\n Quantity: \r\n {data.salesLine.Quantity}\r\n
\r\n
\r\n Total Price: \r\n \r\n {incExcPriceFormat(data.salesLine.NetAmount!, context, enabledIncExPrices, customerTaxPercentage)}\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const OrderConfirmationGroupDelivery: React.FC = ({\r\n deliveryProps,\r\n heading,\r\n count,\r\n processing,\r\n address,\r\n trackingInfo,\r\n pickupDateTimeslot\r\n}) => (\r\n // VSI customization for new designs implementation\r\n <>\r\n);\r\n\r\nexport const OrderConfirmationGroup: React.FC = ({\r\n groupProps,\r\n delivery,\r\n salesLinesProps,\r\n salesLines,\r\n context,\r\n customerTaxPercentage\r\n}) => {\r\n //Configs For Mobile View\r\n const [isMobile, setIsMobile] = React.useState();\r\n const _updateViewport = (): void => {\r\n const viewport = _getViewport();\r\n viewport === 'xs' || viewport === 'sm' ? setIsMobile(true) : setIsMobile(false);\r\n };\r\n type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\n\r\n const _getViewport = (): GridSize => {\r\n // const { context } = productManufacturarAttribute;\r\n\r\n // Always render in mobile viewport on a mobile device\r\n if (context?.request && context.request.device && context.request.device.Type === 'Mobile') {\r\n return 'xs';\r\n }\r\n\r\n if (MsDyn365.isBrowser && window.innerWidth) {\r\n const gridSettings = context?.request.gridSettings;\r\n if (gridSettings) {\r\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\r\n return 'xs';\r\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\r\n return 'sm';\r\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\r\n return 'md';\r\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\r\n return 'lg';\r\n }\r\n return 'xl';\r\n }\r\n }\r\n\r\n return 'lg';\r\n };\r\n\r\n React.useEffect(() => {\r\n _updateViewport();\r\n if (MsDyn365.isBrowser && window.addEventListener) {\r\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\r\n window.addEventListener('resize', _updateViewport);\r\n }\r\n }, []);\r\n if (isMobile) {\r\n return (\r\n salesLines && (\r\n <>\r\n {salesLines.map((salesLine: ISalesLine) => (\r\n \r\n ))}\r\n \r\n )\r\n );\r\n } else {\r\n return (\r\n \r\n {/* {delivery && }\r\n {delivery && delivery.shippingItemsToYou} */}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {salesLines && (\r\n <>\r\n {salesLines.map((salesLine: ISalesLine) => (\r\n \r\n ))}\r\n \r\n )}\r\n
Item NumberProduct NameUnit PriceUOM\r\n Quantity\r\n Total Price
\r\n
\r\n );\r\n }\r\n};\r\n\r\nexport const OrderConfirmationGroups: React.FC = ({\r\n groupsProps,\r\n groups,\r\n context,\r\n customerTaxPercentage\r\n}) => (\r\n \r\n {groups.map((group: IGroup, index: number) => (\r\n \r\n ))}\r\n \r\n);\r\ninterface IOrderSummaryExtend {\r\n discountAmount?: number;\r\n context?: ICoreContext>;\r\n deliveryMode?: string;\r\n freightAndGSTMessage?: string;\r\n freightAndGSTMessageFromResources?: string;\r\n customerTaxPercentage?: number;\r\n}\r\ninterface JSXNumberValue {\r\n value: number;\r\n}\r\n\r\nexport const OrderConfirmationOrderSummary: React.FC = ({\r\n orderSummaryProps,\r\n heading,\r\n subtotal,\r\n shipping,\r\n tax,\r\n totalAmount,\r\n earnedPoints,\r\n discountAmount,\r\n deliveryMode,\r\n context,\r\n freightAndGSTMessage,\r\n freightAndGSTMessageFromResources\r\n}) => {\r\n const subTotalJSX = subtotal as JSX.Element;\r\n const subTotalJSXValue = subTotalJSX.props as JSXNumberValue;\r\n const subTotalAmount = subTotalJSXValue?.value;\r\n\r\n return (\r\n \r\n {heading}\r\n {/* {subtotal} */}\r\n

\r\n Subtotal\r\n \r\n {currencyFormat(subTotalAmount, context)}\r\n \r\n

\r\n

\r\n Shipping Fee\r\n \r\n {deliveryMode && deliveryMode === 'Collection' ? (\r\n \r\n FREE\r\n \r\n ) : (\r\n

\r\n {'To Be Calculated '}\r\n
\r\n \r\n \r\n {\r\n 'This quotation is excluding freight costs. Freight will be detailed in your sales order confirmation.'\r\n }\r\n \r\n
\r\n
\r\n )}\r\n \r\n

\r\n {tax}\r\n {totalAmount}\r\n
\r\n {freightAndGSTMessage ? freightAndGSTMessage : freightAndGSTMessageFromResources}\r\n
\r\n {earnedPoints}\r\n
\r\n );\r\n};\r\n\r\nexport const OrderConfirmationPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\r\n \r\n {/* // VSI customization for new designs implementation */}\r\n\r\n {/* {title} */}\r\n {/* {methods} */}\r\n \r\n);\r\n\r\nexport const OrderConfirmationHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\r\n \r\n {needHelpLabel}\r\n {helpLineNumberLabel}\r\n {contactNumber}\r\n \r\n);\r\n\r\nconst OrderConfirmationView: React.FC> = ({\r\n moduleProps,\r\n heading,\r\n backToShoppingLink,\r\n alert,\r\n loading,\r\n orderInfomation,\r\n orderSummary,\r\n payment,\r\n help,\r\n groups,\r\n data,\r\n resources,\r\n config: { bannerImage, bannerLink, freightAndGSTMessage },\r\n context: {\r\n request: { gridSettings },\r\n actionContext: { requestContext }\r\n },\r\n context\r\n}) => {\r\n const deliveryMode = data?.orderHydration?.result?.salesOrder?.DeliveryMode!;\r\n //VSI CUSTOMIZATION TO SET CHECKOUT PHONE NUMBER\r\n const [phnRcdId, setPhnRcdId] = React.useState();\r\n const [phnRcdNumber, setPhnRcdNumber] = React.useState();\r\n\r\n React.useEffect(() => {\r\n setTimeout(() => {\r\n const phnRcdId = localStorage.getItem('phnRcdId');\r\n setPhnRcdId(Number(phnRcdId!));\r\n }, 1000);\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n if (phnRcdId) {\r\n const primaryAddresses = data.customerInformation.result?.Addresses?.filter(e => e.PhoneRecordId === phnRcdId);\r\n if (primaryAddresses) setPhnRcdNumber(primaryAddresses[0]?.Phone!);\r\n }\r\n }, [phnRcdId]);\r\n\r\n //VSI Customization to check if phone number exists\r\n const discountAmount = data?.orderHydration.result?.salesOrder?.DiscountAmount || undefined;\r\n const addressProps = groups && groups?.groups?.find(addr => addr?.delivery?.address)?.delivery.address;\r\n\r\n //VSI Customization to add banner image from config for new design implementation\r\n const imageProps = {\r\n gridSettings: gridSettings ?? {},\r\n imageSettings: bannerImage?.imageSettings\r\n };\r\n\r\n interface IContentBlockFullConfig extends IContentBlockConfig {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- This field comes from SDK.\r\n msdyn365__moduleLayout?: string;\r\n }\r\n const contentBlockImage = (\r\n \r\n );\r\n //VSI Customization to add banner image for new design implementation -- END\r\n const newDate = new Date(data?.orderHydration.result?.salesOrder.CreatedDateTime!);\r\n const formattedDate = newDate.toLocaleDateString('en-GB');\r\n /* VSI CUSTOMIZATION | DATE FORMAT | START */\r\n const dateLocale = context.app.config.dateFormat;\r\n const currency = context.request.channel?.Currency;\r\n const formattedDateByLocale: string =\r\n (dateLocale && currency && formattedDate && dateFormatByLocale(dateLocale, currency, formattedDate)) || '';\r\n const customerTaxPercentage = taxPercentage(data.accountInformation?.result!);\r\n /* VSI CUSTOMIZATION | DATE FORMAT | END */\r\n return (\r\n <>\r\n \r\n
\r\n {heading}\r\n {backToShoppingLink}\r\n
\r\n {/* //VSI Customization to change shipping address & order details layout for new design implementation */}\r\n {\r\n
\r\n
\r\n

{resources.shippingAddressyHeading}

\r\n {/* {data?.orderHydration?.result?.salesOrder?.CustomerName} */}\r\n {addressProps && addressProps}\r\n {/* //VSI Customization to check if phone number exists */}\r\n\r\n {/* {data?.customerInformation?.result?.Phone && (\r\n
\r\n {resources.phoneNumberLabel}\r\n {data?.customerInformation?.result?.Phone}\r\n
\r\n )} */}\r\n
\r\n {resources.phoneNumberLabel}\r\n {phnRcdNumber}\r\n
\r\n
\r\n
\r\n

{resources.orderRequestDetailsHeading}

\r\n
\r\n \r\n \r\n {data?.orderHydration?.result?.salesOrder?.ChannelReferenceId}\r\n \r\n
\r\n
\r\n \r\n \r\n {data?.orderHydration?.result?.salesOrder?.ReceiptEmail}\r\n \r\n
\r\n
\r\n {resources.orderRequestDateLabel.replace('{date}', formattedDateByLocale!)}\r\n
\r\n
\r\n
\r\n }\r\n {/* //VSI Customization to change shipping address & order details layout for new design implementation -- END */}\r\n {/* {data.orderHydration.result?.salesOrder?.ShippingAddress?.Name}\r\n {data.orderHydration.result?.salesOrder?.ShippingAddress?.FullAddress} */}\r\n {groups && }\r\n {alert}\r\n {loading}\r\n\r\n {/* {payment && } */}\r\n
\r\n {bannerLink && bannerLink.linkUrl && bannerLink.linkUrl.destinationUrl && (\r\n
\r\n \r\n {contentBlockImage}\r\n \r\n
\r\n )}\r\n
\r\n

{resources.paymentSummaryText}

\r\n {orderSummary && (\r\n \r\n )}\r\n
\r\n
\r\n {help && }\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default OrderConfirmationView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ControlledDrawer, getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { IDrawerState } from '@msdyn365-commerce-modules/utilities/dist/types/drawer/Drawer';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput, interactionStyle } from '../..';\nimport { IAccordionItemData } from './accordion-item.data';\nimport { IAccordionItemProps } from './accordion-item.props.autogenerated';\n\nexport interface IAccordionItemViewProps {\n AccordionItemContainer: IModuleProps;\n drawer: INodeProps;\n accordionSlots: INodeProps;\n AccordionItemContent: INodeProps;\n className: string;\n}\n\nexport interface IAccordionItemExtentedProps extends IAccordionItemProps {\n interactionStyle?: interactionStyle;\n}\n\n/**\n *\n * AccordionItem component.\n * @extends {React.Component}\n */\n@observer\nclass AccordionItem extends React.Component {\n private readonly moduleClassName: string = 'ms-accordion-item';\n\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IAccordionItemProps) {\n super(props);\n this._onToggle = this._onToggle.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public shouldComponentUpdate(nextProps: IAccordionItemProps): boolean {\n if (this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { slots, renderView, config, data } = this.props;\n const accordionExpandedStateResult = data && data.accordionExpandedState && data.accordionExpandedState.result;\n const expanded =\n accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded === undefined\n ? data && config.isExpandedOnInitialLoad\n : accordionExpandedStateResult && accordionExpandedStateResult.isAllExpanded;\n const viewProps = {\n ...this.props,\n AccordionItemContainer: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n AccordionItemContent: {\n className: 'ms-accordion-item-content'\n },\n drawer: {\n tag: ControlledDrawer,\n className: `${this.moduleClassName}__drawer`,\n toggleButtonText: (config.accordionItemTitle && config.accordionItemTitle) || '',\n collapseProps: { isOpen: expanded },\n onToggle: this._onToggle,\n onTextChange: this.handleHeadingChange,\n requestContext: this.props.context.request,\n telemetryContent: this.telemetryContent\n },\n accordionSlots: slots\n };\n return renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.accordionItemTitle = event.target.value);\n\n private _onToggle(state: IDrawerState): void {\n if (!state.isOpen && this.props.interactionStyle === interactionStyle.ExpandOneItemOnly) {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n }\n }\n}\nexport default AccordionItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionItemViewProps } from './accordion-item';\n\nconst AccordionItemView: React.FC = props => {\n const { drawer, accordionSlots, AccordionItemContainer, AccordionItemContent } = props;\n return (\n \n \n \n {accordionSlots &&\n accordionSlots.accordionItemContent &&\n accordionSlots.accordionItemContent.length &&\n _renderAccordionItemContent(accordionSlots.accordionItemContent)}\n \n \n \n );\n};\n\nconst _renderAccordionItemContent = (items: React.ReactNode[]): JSX.Element | null => {\n return (\n <>\n {items && items.length > 0\n ? items.map((item: React.ReactNode, index: number) => {\n return {item};\n })\n : null}\n \n );\n};\nexport default AccordionItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n NodeTag,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { createAccordionStateInput } from '../..';\nimport { IAccordionData } from './accordion.data';\nimport { IAccordionProps } from './accordion.props.autogenerated';\n\n/**\n *\n * Accordion component.\n * @extends {React.PureComponent>}\n */\n\nexport interface ICallToActionProps {\n link: INodeProps[];\n}\n\n/**\n * Added interface for state management.\n */\nexport interface IAccordianState {\n isDisabled: boolean;\n}\n\nexport interface IAccordionViewProps extends IAccordionProps<{}> {\n heading?: React.ReactNode;\n AccordionContainer: IModuleProps;\n HeaderSection: INodeProps;\n HeadingWrapper: INodeProps;\n accordianButtonsContainer: INodeProps;\n accordionButtons: React.ReactNode;\n accordionItemContainer: INodeProps;\n accordionItems: React.ReactNode;\n}\n\n/**\n *\n * Accordion component.\n * @extends {React.Component>}\n */\n@observer\nclass Accordion extends React.PureComponent, IAccordianState> {\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private readonly expandAllButtonRef: React.RefObject = React.createRef();\n\n private readonly collapseAllButtonRef: React.RefObject = React.createRef();\n\n constructor(props: IAccordionProps) {\n super(props);\n this._onExpandAll = this._onExpandAll.bind(this);\n this._onCollapseAll = this._onCollapseAll.bind(this);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.payLoad = getPayloadObject('click', this.telemetryContent, '');\n this.state = { isDisabled: false };\n }\n\n public render(): JSX.Element {\n const { slots } = this.props;\n const { heading, className } = this.props.config;\n const headingComponent = heading && heading.text && (\n \n );\n\n const accordionViewProps = {\n ...this.props,\n AccordionContainer: {\n moduleProps: this.props,\n className: classnames('ms-accordion', className)\n },\n HeaderSection: { className: 'ms-accordion-header-section' },\n HeadingWrapper: { className: 'ms-accordion-header-section-container' },\n heading: headingComponent,\n config: this.props && this.props.config,\n accordianButtonsContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-header-section-toggle-button-container'\n },\n accordionButtons: this._renderAccordionButton(),\n accordionItemContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-accordion-item-section'\n },\n accordionItems:\n slots &&\n slots.accordionItems &&\n slots.accordionItems.length > 0 &&\n slots.accordionItems.map((item: React.ReactNode, index: number) => this._getAccordionItem(item, index))\n };\n return this.props.renderView(accordionViewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n private _renderAccordionButton(): React.ReactNode | null {\n const { config, resources } = this.props;\n const { heading } = config;\n this.payLoad.contentAction.etext = TelemetryConstant.ExpandAll;\n const attributeExpandAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n this.payLoad.contentAction.etext = TelemetryConstant.CollapseAll;\n const attributeCollapseAll = getTelemetryAttributes(this.telemetryContent!, this.payLoad);\n if (!config.showToggleAll) {\n this.props.context.telemetry.error('Accordion button content is empty, module wont render');\n return null;\n }\n return (\n <>\n \n {resources.expandAllText}\n \n  \n {resources.toggleAllSeparator}\n  \n \n {resources.collapseAllText}\n \n \n );\n }\n\n private _onExpandAll(): void {\n const accordionState = { isAllExpanded: true };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (accordionState.isAllExpanded) {\n this.setState({\n isDisabled: true\n });\n setTimeout(() => {\n this.collapseAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _onCollapseAll(): void {\n const accordionState = { isAllExpanded: false };\n this.props.context.actionContext.update(createAccordionStateInput(accordionState), accordionState);\n if (!accordionState.isAllExpanded) {\n this.setState({\n isDisabled: false\n });\n setTimeout(() => {\n this.expandAllButtonRef.current?.focus();\n }, 50);\n }\n }\n\n private _getAccordionItem(item: React.ReactNode, index: number): React.ReactNode {\n return (\n \n {React.cloneElement(item as React.ReactElement, { interactionStyle: this.props.config.interactionStyle })}\n \n );\n }\n}\n\nexport default Accordion;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccordionViewProps } from './accordion';\n\nconst accordionView: React.FC = props => {\n const { heading, AccordionContainer, accordionItems } = props;\n if (!props.heading && !props.accordionButtons && !props.accordionItems) {\n props.context.telemetry.error('Accordion content is empty, module wont render');\n return null;\n }\n return (\n \n \n {heading}\n {props.accordionButtons && {props.accordionButtons}}\n \n {accordionItems}\n \n );\n};\n\nexport default accordionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAadGenericData } from './aad-generic.data';\nimport { IAadGenericProps } from './aad-generic.props.autogenerated';\n\nexport interface IAadGenericViewProps extends IAadGenericProps {\n aadGeneric: IModuleProps;\n aadConainer: INodeProps;\n aadAPIConainer: React.ReactNode;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AadGeneric component.\n * @extends {React.Component>}\n */\nclass AadGeneric extends React.Component> {\n private readonly moduleClassName: string = 'ms-aad-generic';\n\n public componentDidMount(): void {\n // @ts-expect-error\n const { $i2e, $element } = window || {};\n\n if ($i2e && $element) {\n $i2e.insertServiceContent($element.getElementContent());\n $element.initialize();\n }\n }\n\n public shouldComponentUpdate(nextProps: IAadGenericViewProps): boolean {\n if (nextProps.config.heading !== this.props.config.heading) {\n return true;\n }\n return false;\n }\n\n public render(): JSX.Element | null {\n const { className, heading } = this.props.config;\n\n const viewProps = {\n ...this.props,\n aadGeneric: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, className)\n },\n aadConainer: {\n className: `${this.moduleClassName}__container`\n },\n aadAPIConainer:
,\n heading: heading && (\n \n )\n };\n\n return this.props.renderView(viewProps);\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.heading) {\n this.props.config.heading.text = event.target.value;\n }\n };\n}\n\nexport default AadGeneric;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAadGenericViewProps } from './aad-generic';\n\nexport default (props: IAadGenericViewProps) => {\n const { aadGeneric, aadConainer, aadAPIConainer, heading } = props;\n\n return (\n \n \n {heading}\n {aadAPIConainer}\n \n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountAddressTileData } from './account-address-tile.data';\nimport { IAccountAddressTileProps } from './account-address-tile.props.autogenerated';\nimport DescriptionComponent from './components/account-address-tile-description';\nimport LinksComponent from './components/account-address-tile-links';\n\nexport interface IAccountAddressTileViewProps extends IAccountAddressTileProps {\n AccountAddressTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountAddress component.\n * @extends {React.PureComponent>}\n */\nclass AccountAddressTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountAddressTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, resources, data } = this.props;\n const { className, heading, links } = config;\n const { accountAddressTileDescriptionForSingleAddress, accountAddressTileDescriptionForMultipleAddresses } = resources;\n const { address } = data;\n const addressCount = (address && address.result && address.result.length) || 0;\n const accountAddressTileDescription =\n addressCount === 1 ? accountAddressTileDescriptionForSingleAddress : accountAddressTileDescriptionForMultipleAddresses;\n const description = format(accountAddressTileDescription, addressCount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountAddressTile: {\n moduleProps: this.props,\n className: classnames('ms-account-address-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountAddressTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountAddressTileViewProps } from './account-address-tile';\n\nconst AccountAddressTileView: React.FC = props => {\n const { AccountAddressTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountAddressTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface IAccountAddressTileDescription {\n description: string;\n}\n\n// eslint-disable-next-line no-redeclare\nconst IAccountAddressTileDescription: React.FC = ({ description }) => (\n

{description}

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

{description}

\n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-invoice-tile.props.autogenerated';\n\nexport interface IAccountInvoiceTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountInvoiceTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-invoice-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountInvoiceTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountInvoiceTileData } from './account-invoice-tile.data';\nimport { IAccountInvoiceTileProps } from './account-invoice-tile.props.autogenerated';\nimport { AccountInvoiceTileDescription } from './components';\nimport LinksComponent from './components/account-invoice-tile-links';\n\nexport interface IAccountInvoiceTileViewProps extends IAccountInvoiceTileProps {\n AccountInvoiceTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountInvoiceTile component.\n * @extends {React.PureComponent>}\n */\nclass AccountInvoiceTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountInvoiceTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const {\n config,\n data,\n resources,\n context: {\n cultureFormatter: {\n formatCurrency,\n\n // @ts-expect-error\n currencyCode\n }\n }\n } = this.props;\n const { className, heading, links } = config;\n const { accountInvoiceTileDescription } = resources;\n\n const openinvoiceAmount = data.customerBalance.result?.OpenInvoiceBalance || 0;\n const invoiceTotalAmount: string | undefined = formatCurrency(openinvoiceAmount.toFixed(2), currencyCode);\n\n const description = invoiceTotalAmount && format(accountInvoiceTileDescription, invoiceTotalAmount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountInvoiceTile: {\n moduleProps: this.props,\n className: classnames('ms-account-invoice-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: description && \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountInvoiceTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountInvoiceTileViewProps } from './account-invoice-tile';\n\nexport default (props: IAccountInvoiceTileViewProps) => {\n const { AccountInvoiceTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountWelcomeTileData } from './account-welcome-tile.data';\nimport { IAccountWelcomeTileProps } from './account-welcome-tile.props.autogenerated';\n\nexport interface IAccountWelcomeTileViewProps extends IAccountWelcomeTileProps {\n AccountWelcomeTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n}\n\n/**\n *\n * AccountWelcome component.\n * @extends {React.PureComponent>}\n */\nclass AccountWelcomeTile extends React.PureComponent> {\n public render(): JSX.Element {\n const { config, data } = this.props;\n const { className } = config;\n\n const accountInfo = data.accountInformation.result;\n const heading = {\n ...config.heading,\n ...{\n text: `${config.heading.text ? config.heading.text : ''} ${\n accountInfo && accountInfo.FirstName ? accountInfo.FirstName : ''\n }`\n }\n };\n\n const viewProps = {\n ...this.props,\n className,\n AccountWelcomeTile: {\n moduleProps: this.props,\n className: classnames('ms-account-welcome-tile', config.className)\n },\n heading: heading && heading.text && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n}\n\nexport default AccountWelcomeTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountWelcomeTileViewProps } from './account-welcome-tile';\n\nconst AccountWelcomeTileView: React.FC = props => {\n const { AccountWelcomeTile, heading } = props;\n\n return {heading};\n};\n\nexport default AccountWelcomeTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\ninterface IAccountWishlistTileDescription {\n description: string;\n}\n\n// eslint-disable-next-line no-redeclare\nconst IAccountWishlistTileDescription: React.FC = ({ description }) => (\n

{description}

\n);\n\nexport default IAccountWishlistTileDescription;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-wishlist-tile.props.autogenerated';\n\nexport interface IAccountWishlistTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountWishlistTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-wishlist-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountWishlistTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { format, getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountWishlistTileData } from './account-wishlist-tile.data';\nimport { IAccountWishlistTileProps } from './account-wishlist-tile.props.autogenerated';\nimport DescriptionComponent from './components/account-wishlist-tile-description';\nimport LinksComponent from './components/account-wishlist-tile-links';\n\nexport interface IAccountWishlistTileViewProps extends IAccountWishlistTileProps {\n AccountWishlistTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n description?: React.ReactNode;\n}\n\n/**\n *\n * AccountWishlist component.\n * @extends {React.PureComponent>}\n */\nclass AccountWishlistTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IAccountWishlistTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config, resources, data } = this.props;\n const { className, heading, links } = config;\n const { accountWishlistTileDescription } = resources;\n const wishlists = data.wishlists.result;\n\n const wishlistsCount = ((wishlists && wishlists.length && wishlists[0].CommerceListLines) || []).length;\n const description = format(accountWishlistTileDescription || 'You have {0} items in the Wishlist.', wishlistsCount);\n\n const viewProps = {\n ...this.props,\n className,\n AccountWishlistTile: {\n moduleProps: this.props,\n className: classnames('ms-account-wishlist-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n ),\n description: \n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountWishlistTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountWishlistTileViewProps } from './account-wishlist-tile';\n\nconst AccountWishlistTileView: React.FC = props => {\n const { AccountWishlistTile, heading, description, links } = props;\n\n return (\n \n {heading}\n {description}\n {links}\n \n );\n};\n\nexport default AccountWishlistTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport MsDyn365, { ICoreContext, IDateFormatOptions, IRequestContext } from '@msdyn365-commerce/core';\nimport { BusinessPartnerOperationRequest, BusinessPartnerOperationRequestDetails } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n IDataTableProps,\n IHeadingsProperty,\n ITableItemProps,\n ITableRowProps,\n Table,\n TableDataType\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IB2bRequestsStatusData } from '../b2b-requests-status.data';\nimport { IB2bRequestsStatusProps } from '../b2b-requests-status.props.autogenerated';\n\nexport interface IB2bRequestsTableProps {\n moduleProps: IB2bRequestsStatusProps;\n isMobile: boolean;\n mobileExcludedColumns: string[];\n}\n\nexport interface IB2bRequestsTableResources {\n b2bRequestsTypeCreateProspect: string;\n b2bRequestsTypeAddUser: string;\n b2bRequestsTypeEditUser: string;\n b2bRequestsTypeDeleteUser: string;\n b2bRequestsTypeRequestAccountStatement: string;\n b2bRequestsTypeRequestInvoiceCopy: string;\n b2bRequestsTypeUnknown: string;\n b2bRequestsStatusRequested: string;\n b2bRequestsStatusProcessed: string;\n b2bRequestsStatusError: string;\n b2bRequestsNumberOfItems: string;\n b2bRequestsNumberOfItemsSingular: string;\n b2bRequestsNameDisplay: string;\n b2bRequestsPreviousText: string;\n b2bRequestsNextText: string;\n b2bRequestsUserColumn: string;\n b2bRequestsStatusColumn: string;\n b2bRequestsRequestDateColumn: string;\n b2bRequestsTypeColumn: string;\n b2bRequestsDescriptionColumn: string;\n b2bRequestsAccountStatementDetails: string;\n b2bRequestsInvoiceCopyDetails: string;\n businessUserSelectCheckBoxAriaLabelText?: string;\n sortByAscending?: string;\n sortByDescending?: string;\n}\n\nexport enum RequestsTableColumnHeader {\n Name = 'User',\n Status = 'Status',\n RequestDate = 'Request date',\n Type = 'Request type',\n Description = 'Request detail'\n}\n\nconst getCurrentUrl = (reqContext: IRequestContext): URL => {\n if (MsDyn365.isBrowser) {\n return new URL(window.location.href);\n }\n\n // NOTE: Typing on requestURL is incorrect\n if (reqContext.url.requestUrl.href) {\n return new URL(reqContext.url.requestUrl.href);\n }\n return new URL(reqContext.url.requestUrl.href);\n};\n\nconst getUserName = (request: BusinessPartnerOperationRequest, resources: IB2bRequestsTableResources) => {\n if (StringExtensions.isNullOrEmpty(request.UserFirstName)) {\n if (StringExtensions.isNullOrEmpty(request.UserLastName)) {\n return '';\n }\n\n return request.UserLastName;\n } else if (StringExtensions.isNullOrEmpty(request.UserLastName)) {\n return request.UserFirstName;\n }\n\n return resources.b2bRequestsNameDisplay.replace('{0}', request.UserFirstName!).replace('{1}', request.UserLastName!);\n};\n\nconst formatDate = (context: ICoreContext, date: Date | undefined) => {\n if (date === undefined) {\n return '';\n }\n\n const dateOptions: IDateFormatOptions = { year: 'numeric', month: 'long', day: 'numeric' };\n return context.cultureFormatter.formatDate(date, dateOptions);\n};\n\n/**\n * Gets the value to display for the request details.\n * @param request - The request to parse for the details.\n * @param resources - The resources.\n * @param context - The context.\n * @returns The string to display.\n */\nconst getDetails = (request: BusinessPartnerOperationRequest, resources: IB2bRequestsTableResources, context: ICoreContext) => {\n if (!request.Details) {\n return '';\n }\n\n const requestDetails: BusinessPartnerOperationRequestDetails = request.Details;\n\n const accountStatementStartDateTime = formatDate(context, requestDetails.AccountStatementStartDateTime) || '';\n const accountStatementEndDateTime = formatDate(context, requestDetails.AccountStatementEndDateTime) || '';\n const invoiceId = requestDetails.InvoiceId ?? '';\n\n switch (request.TypeValue) {\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers -- workaround for not being able to use enum value\n case 5:\n if (\n !StringExtensions.isNullOrEmpty(accountStatementStartDateTime) &&\n !StringExtensions.isNullOrEmpty(accountStatementEndDateTime)\n ) {\n return resources.b2bRequestsAccountStatementDetails\n .replace('{0}', accountStatementStartDateTime)\n .replace('{1}', accountStatementEndDateTime);\n }\n\n return '';\n // eslint-disable-next-line @typescript-eslint/no-magic-numbers -- workaround for not being able to use enum value\n case 6:\n if (!StringExtensions.isNullOrEmpty(invoiceId)) {\n return resources.b2bRequestsInvoiceCopyDetails.replace('{0}', invoiceId);\n }\n\n return '';\n default:\n return '';\n }\n};\n\nconst createTableItems = (\n operationRequests: BusinessPartnerOperationRequest[] | undefined,\n props: IB2bRequestsStatusProps\n): ITableRowProps[] => {\n if (!ArrayExtensions.hasElements(operationRequests)) {\n return [];\n }\n\n return operationRequests.map(request => {\n return {\n row: [\n {\n id: props.resources.b2bRequestsTypeColumn,\n type: TableDataType.Text,\n value: getDisplayFriendlyTypeValue(request.TypeValue ?? 0, props.resources)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsRequestDateColumn,\n type: TableDataType.Text,\n value: formatDate(props.context, request.CreatedDateTime)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsDescriptionColumn,\n type: TableDataType.Text,\n value: getDetails(request, props.resources, props.context)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsUserColumn,\n type: TableDataType.Text,\n value: getUserName(request, props.resources)\n } as ITableItemProps,\n {\n id: props.resources.b2bRequestsStatusColumn,\n type: TableDataType.Text,\n value: getDisplayFriendlyStatusValue(request.StatusValue ?? 0, props.resources)\n } as ITableItemProps\n ],\n isSelected: false,\n className: props.config.className\n };\n });\n};\n\nconst getDisplayFriendlyTypeValue = (typeValue: number, resources: IB2bRequestsTableResources): string => {\n switch (typeValue) {\n case 1:\n return resources.b2bRequestsTypeCreateProspect;\n case 2:\n return resources.b2bRequestsTypeAddUser;\n case 3:\n return resources.b2bRequestsTypeDeleteUser;\n case 4:\n return resources.b2bRequestsTypeEditUser;\n case 5:\n return resources.b2bRequestsTypeRequestAccountStatement;\n case 6:\n return resources.b2bRequestsTypeRequestInvoiceCopy;\n default:\n return resources.b2bRequestsTypeUnknown;\n }\n};\n\nconst getDisplayFriendlyStatusValue = (statusValue: number, resources: IB2bRequestsTableResources): string => {\n switch (statusValue) {\n case 1:\n return resources.b2bRequestsStatusProcessed;\n case 2:\n return resources.b2bRequestsStatusError;\n default:\n return resources.b2bRequestsStatusRequested;\n }\n};\n\nconst createTableProps = (tableProps: IB2bRequestsTableProps) => {\n const { context, data, resources } = tableProps.moduleProps;\n\n const tableData = createTableItems(data.operationRequests.result, tableProps.moduleProps);\n const tableHeading =\n (ArrayExtensions.hasElements(tableData) &&\n tableData[0].row\n .filter(item => {\n // Check that this is either not mobile or the column should be displayed when mobile.\n return !tableProps.isMobile || !tableProps.mobileExcludedColumns.includes(item.id);\n })\n .map(item => {\n return {\n name: item.id,\n sortable: true,\n ariaLabel: resources.columnSortAriaLabel\n } as IHeadingsProperty;\n })) ||\n [];\n\n return {\n resources: {},\n headings: tableHeading,\n rows: tableData,\n className: `${tableProps.moduleProps.config.className}__table`,\n editLinkText: '',\n deleteLinkText: '',\n viewLinkText: '',\n enableToModify: false,\n actionLinkText: '',\n showCheckBoxes: false,\n isSortable: true,\n showPagination: true,\n minifyActions: tableProps.isMobile,\n excludedColumns: tableProps.isMobile ? tableProps.mobileExcludedColumns : [],\n paginationProperty: {\n skipCount:\n context.request.query?.skip && !isNaN(Number.parseInt(context.request.query.skip, 10))\n ? Number.parseInt(context.request.query.skip, 10)\n : 0,\n itemPerPage: 10,\n prevText: resources.b2bRequestsPreviousText,\n nextText: resources.b2bRequestsNextText,\n paginationText: '',\n url: (context && getCurrentUrl(context.request).href) || ''\n },\n isSingleSelectOnly: true,\n actions: {\n onDelete: undefined,\n onEdit: undefined,\n onView: undefined\n },\n businessUserSelectCheckBoxAriaLabelText: tableProps.moduleProps.resources.businessUserSelectCheckBoxAriaLabelText,\n sortByAscending: tableProps.moduleProps.resources.sortByAscending,\n sortByDescending: tableProps.moduleProps.resources.sortByDescending\n } as IDataTableProps;\n};\n\nexport const B2bRequestsTable: React.FC = (tableProps: IB2bRequestsTableProps) => {\n return ;\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { format, Heading, IModuleProps, isMobile, VariantType } from '@msdyn365-commerce-modules/utilities';\nimport { computed } from 'mobx';\nimport * as React from 'react';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\n\nimport { IB2bRequestsStatusData } from './b2b-requests-status.data';\nimport { IB2bRequestsStatusProps, IHeadingData } from './b2b-requests-status.props.autogenerated';\nimport { B2bRequestsTable } from './components/b2b-requests-table';\n\nexport interface IB2bRequestsStatusViewProps extends IB2bRequestsStatusProps {\n b2bRequestsStatus: IModuleProps;\n heading?: React.ReactNode;\n table: React.ReactNode;\n}\n\n/**\n *\n * B2bRequestsStatus component.\n * @extends {React.PureComponent>}\n */\nclass B2bRequestsStatus extends React.PureComponent> {\n @computed get isMobile(): boolean {\n const size = isMobile({ variant: VariantType.Viewport, context: this.props.context.request });\n return size === 'xs';\n }\n\n public render(): JSX.Element | null {\n const { config } = this.props;\n\n if (!isChannelTypeB2B(this.props.context.actionContext.requestContext)) {\n return null;\n }\n\n const className = config.className || '';\n\n const viewProps = {\n ...this.props,\n b2bRequestsStatus: {\n moduleProps: this.props,\n className\n },\n heading: this.renderHeader(className, config.heading),\n table: this.renderTable()\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n private readonly renderHeader = (className: string, headingData: IHeadingData): React.ReactNode => {\n const itemCount = this.props.data.operationRequests.result?.length ?? 0;\n\n return (\n
\n \n {this.getItemNumberDisplayString(itemCount)}\n
\n );\n };\n\n /**\n * Returns columns that needs to be excluded for mobile view.\n * @returns Array of column names.\n */\n private readonly _retrieveExcludedColumns = (): string[] => {\n const { resources } = this.props;\n return [resources.b2bRequestsRequestDateColumn, resources.b2bRequestsDescriptionColumn, resources.b2bRequestsUserColumn];\n };\n\n private readonly renderTable = (): React.ReactNode => {\n return (\n \n );\n };\n\n private readonly getItemNumberDisplayString = (itemCount: number): string => {\n switch (itemCount) {\n case 0:\n return '';\n case 1:\n return format(this.props.resources.b2bRequestsNumberOfItemsSingular, itemCount);\n default:\n return format(this.props.resources.b2bRequestsNumberOfItems, itemCount);\n }\n };\n}\n\nexport default B2bRequestsStatus;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport { IB2bRequestsStatusViewProps } from './b2b-requests-status';\n\nconst B2bRequestsStatusView: React.FC = props => {\n const { b2bRequestsStatus, heading, table } = props;\n return (\n \n {heading}\n {table}\n \n );\n};\n\nexport default B2bRequestsStatusView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAddressAddItem, IAddressAddUpdateProps } from '../../common/components/address-add';\nimport { IAddressList, IAddressListItem, IAddressListProps } from '../../common/components/address-list';\nimport { IAddressShowItem, IAddressShowProps } from '../../common/components/address-show';\nimport { IAccountManagementAddressViewProps } from './account-management-address';\n\n/**\n * Address show component.\n * @param param0 - Root param.\n * @param param0.AddressDetail - Address detail.\n * @param param0.items - IAddressShowItem[].\n * @returns - Address Node.\n */\nconst AddressShow: React.FC = ({ AddressDetail, items }) => {\n return (\n \n {items.map((item: IAddressShowItem) => {\n return <>{item.description};\n })}\n \n );\n};\n\n/**\n * Address List Component.\n * @param param0 - Root param.\n * @param param0.List - Address list.\n * @param param0.isShowList - Boolean.\n * @param param0.heading - Address heading.\n * @param param0.items - IAddressListItem[].\n * @returns - AddressListComponent Node.\n */\nconst AddressList: React.FC = ({ List, isShowList, heading, items }) => {\n if (!isShowList) {\n return null;\n }\n\n return (\n \n {heading}\n {items.map((item: IAddressListItem) => {\n const { Item, key, error, showItems, isShowPrimaryButton, primaryButton, editButton, removeButton } = item;\n const { Error, isShowError, title, message } = error;\n return (\n \n \n {isShowError && (\n \n {title}\n {message}\n \n )}\n {isShowPrimaryButton && primaryButton}\n {editButton}\n {removeButton}\n \n );\n })}\n \n );\n};\n\n/**\n * Address Lists Component.\n * @param param0 - Root param.\n * @param param0.ListAddress - List address.\n * @param param0.heading - List heading.\n * @param param0.isShowEmptyListMessage - Boolean.\n * @param param0.emptyListMessage - Empty list message.\n * @param param0.addButton - Add button.\n * @param param0.primaryAddressList - Primary address.\n * @param param0.otherAddressList - Other address.\n * @returns Address Lists Component Node.\n */\nconst AddressLists: React.FC = ({\n ListAddress,\n heading,\n isShowEmptyListMessage,\n emptyListMessage,\n addButton,\n primaryAddressList,\n otherAddressList\n}) => {\n return (\n \n {heading}\n {isShowEmptyListMessage && emptyListMessage}\n {addButton}\n \n \n \n );\n};\n\n/**\n * AddressAddUpdateComponent.\n * @param param0 - Root param.\n * @param param0.AddressForm - Address form.\n * @param param0.heading - Address heading.\n * @param param0.items - IAddressAddItem[].\n * @param param0.hasError - Boolean.\n * @param param0.error - Error message.\n * @param param0.isShowSaveButton - Boolean.\n * @param param0.saveButton - Save button.\n * @param param0.isShowCancelButton - Boolean.\n * @param param0.cancelButton - Cancel button.\n * @returns Address add update component node.\n */\nconst AddressAddUpdate: React.FC = ({\n AddressForm,\n heading,\n items,\n hasError,\n error,\n isShowSaveButton,\n saveButton,\n isShowCancelButton,\n cancelButton\n}) => {\n return (\n \n {heading}\n {items.map((item: IAddressAddItem) => {\n const { AddressItem, key, label, alert, input } = item;\n return (\n \n {label}\n {alert}\n {input}\n \n );\n })}\n {hasError && (\n \n {error.title}\n {error.message}\n \n )}\n {isShowSaveButton && saveButton}\n {isShowCancelButton && cancelButton}\n \n );\n};\n\n/**\n * Account Management Address View Component.\n * @param props - Props.\n * @returns - AccountAddressManagement Module.\n */\nconst AccountManagementAddressView: React.FC = props => {\n const {\n AccountAddressManagement,\n infoMessageBar,\n viewState,\n showAddressList,\n showAddOrUpdateAddress,\n screenReaderNotification\n } = props;\n\n return (\n \n {infoMessageBar}\n {viewState.isShowAddresList && }\n {viewState.isShowAddOrUpdateAddress && }\n {screenReaderNotification}\n \n );\n};\n\nexport default AccountManagementAddressView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n IBuyboxAddToCartViewProps,\n IBuyboxAddToOrderTemplateViewProps,\n IBuyboxAddToWishlistViewProps,\n IBuyboxCallbacks,\n IBuyboxData,\n IBuyboxFindInStoreViewProps,\n IBuyboxKeyInPriceViewProps,\n IBuyboxProductConfigureDropdownViewProps,\n IBuyboxProductConfigureViewProps,\n IBuyboxProductQuantityViewProps,\n IBuyboxProps,\n IBuyboxShopSimilarLookViewProps,\n IBuyboxState,\n IBuyboxViewProps\n} from '@msdyn365-commerce-modules/buybox';\nimport { IncrementalQuantity, ITelemetryContent, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n IBuyboxProps as IBuyboxExtentionProps,\n IBuyboxResources as IBuyboxExtentionResources\n} from '../definition-extensions/buybox.ext.props.autogenerated';\n\nconst BuyboxView: React.FC> = props => {\n const {\n ModuleProps,\n MediaGalleryContainerProps,\n ProductInfoContainerProps,\n addToCart,\n addToOrderTemplate,\n addToWishlist,\n telemetryContent,\n configure,\n description,\n findInStore,\n quantity,\n price,\n title,\n rating,\n callbacks,\n state,\n resources,\n inventoryLabel,\n shopSimilarLook,\n keyInPrice,\n quantityLimitsMessages,\n min,\n max,\n applyDefaultOrderSettings,\n shopSimilarDescription,\n unitOfMeasure\n } = props;\n\n return (\n \n {props.mediaGallery}\n \n {title}\n {price}\n {unitOfMeasure}\n {props.bulkPurchaseLink}\n {description}\n {_renderTextBlock(props.slots.textBlocks)}\n {rating}\n {configure && _renderConfigure(configure)}\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\n {quantity &&\n _renderQuantity(\n quantity,\n callbacks,\n props,\n state,\n resources,\n quantityLimitsMessages,\n min,\n max,\n applyDefaultOrderSettings,\n telemetryContent\n )}\n {inventoryLabel}\n {_renderCartAndActions(addToCart, addToOrderTemplate, addToWishlist)}\n {findInStore && _renderFindInStore(findInStore)}\n {_renderSocialShare(props.slots && props.slots.socialShare)}\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\n \n \n );\n};\n\nconst _renderTextBlock = (textBlocks: React.ReactNode[]): JSX.Element | undefined => {\n if (!textBlocks || textBlocks.length === 0) {\n return undefined;\n }\n\n return <>{textBlocks[0]};\n};\n\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\n if (!socialShare || socialShare.length === 0) {\n return undefined;\n }\n\n return <>{socialShare[0]};\n};\n\nconst _renderCartAndActions = (\n addToCart?: IBuyboxAddToCartViewProps,\n addToOrderTemplate?: IBuyboxAddToOrderTemplateViewProps,\n addToWishlist?: IBuyboxAddToWishlistViewProps\n): JSX.Element | undefined => {\n if (!addToCart && !addToWishlist) {\n return undefined;\n }\n\n return (\n
\n {addToCart && addToCart.errorBlock}\n {addToOrderTemplate && addToOrderTemplate.errorBlock}\n {addToWishlist && addToWishlist.errorBlock}\n
\n {addToCart && addToCart.button}\n {addToOrderTemplate && addToOrderTemplate.button}\n {addToWishlist && addToWishlist.button}\n
\n
\n );\n};\n\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\n const { ContainerProps, dropdowns } = configure;\n\n return {dropdowns.map(_renderConfigureDropdown)};\n};\n\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\n\n return (\n \n \n {heading}\n {errors}\n \n {select}\n \n );\n};\n\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\n const { ContainerProps, storeSelector, heading, description, errors, button, modal, productPickupOptionList } = findInStore;\n\n return (\n \n {storeSelector}\n {heading}\n {productPickupOptionList}\n {description}\n {errors}\n {button}\n {modal}\n \n );\n};\n\n/**\n * On Change function.\n * @param callbacks -Callbacks.\n * @returns Update quantity.\n */\nconst onChangeHandler = (callbacks: IBuyboxCallbacks) => (newValue: number): boolean => {\n if (callbacks.updateQuantity) {\n return callbacks.updateQuantity(newValue);\n }\n return true;\n};\n\nconst _renderQuantity = (\n quantityComponent: IBuyboxProductQuantityViewProps,\n callbacks: IBuyboxCallbacks,\n props: IBuyboxProps,\n state: IBuyboxState,\n extentionResources: IBuyboxExtentionResources,\n quantityLimitsMessages: React.ReactNode,\n min: number | undefined,\n max: number | undefined,\n applyDefaultOrderSettings?: boolean,\n telemetryContent?: ITelemetryContent\n): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\n\n const { resources } = props;\n\n const { quantity } = state;\n\n return (\n \n \n {heading}\n {errors}\n \n\n \n {quantityLimitsMessages}\n \n );\n};\n\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\n const { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\n\n return (\n \n {heading}\n {input}\n \n );\n};\n\nconst _renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\n const { ContainerProps, errors, input } = shopSimilarItem;\n\n return (\n \n {errors}\n {input}\n \n );\n};\n\nexport default BuyboxView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IHistogramItemViewProps, IRatingsHistogramViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst RatingsHistogramView: React.FC = props => {\n const { heading, histogramItems, histogramProps, moduleProps } = props;\n return (\n \n {heading}\n \n {histogramItems.map(item => {\n return histogramItem(item);\n })}\n \n \n );\n};\n\nconst histogramItem = (props: IHistogramItemViewProps) => {\n return (\n \n {props.starLabel}\n {props.bar}\n {props.percentage}\n \n );\n};\n\nexport default RatingsHistogramView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n onTelemetryClick\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IFooterItemConfig, IFooterItemProps, IHeadingData, ILinkData } from './footer-item.props.autogenerated';\n\nexport interface IFooterViewProps extends IFooterItemProps {\n heading: React.ReactNode;\n image: React.ReactNode;\n text: React.ReactNode;\n linkText: React.ReactNode;\n className?: string;\n FooterItem: IModuleProps;\n HeadingContainer: INodeProps;\n ItemContainer: INodeProps;\n Link: INodeProps;\n EditableLink: React.ReactNode;\n}\n\n/**\n *\n * FooterItem component.\n * @extends {React.PureComponent>}\n */\nexport class FooterItem extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private attributes: Msdyn365.IDictionary | undefined;\n\n constructor(props: IFooterItemProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n // Construct telemetry attribute to render\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\n }\n\n public render(): JSX.Element {\n const { heading, image, link, text } = this.props.config;\n const footerItemClassName = classnames('ms-footer__item', this.props.config.className);\n const linkText = link && link.linkText ? link.linkText : '';\n this.payLoad.contentAction.etext = linkText;\n this.attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\n const viewProps: IFooterViewProps = {\n ...this.props,\n heading: this._createHeading(heading!),\n image: this._createImageMarkup(image!),\n text: this._createText(text!),\n linkText: this._createLinkText(link!),\n EditableLink: this._createLink(link!),\n\n FooterItem: {\n moduleProps: this.props,\n className: footerItemClassName\n },\n\n HeadingContainer: {\n className: 'ms-footer__heading'\n },\n\n ItemContainer: {\n className: 'ms-footer__link__container'\n },\n\n // @ts-expect-error\n Link: link &&\n link.linkUrl &&\n link.linkUrl.destinationUrl && {\n tag: 'a',\n role: 'link',\n className: 'ms-footer__link',\n href: link.linkUrl.destinationUrl,\n title: linkText,\n 'aria-label': link.ariaLabel,\n target: link.openInNewTab ? '_blank' : undefined,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText),\n ...this.attributes\n },\n className: footerItemClassName\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.text = event.target.value);\n\n public handleLinkTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.link!.linkText = event.target.value);\n\n private _createLink(link: ILinkData): React.ReactNode | null {\n if (link) {\n const linkText = link.linkText ? link.linkText : '';\n\n // TODO: Update the inner tag in the anchor link to span\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-footer__link',\n linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: this.attributes!,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText)\n };\n return (\n \n );\n }\n return null;\n }\n\n private _createLinkText(link: ILinkData): React.ReactNode | null {\n if (!link || !link.linkText) {\n return null;\n }\n\n return {link.linkText};\n }\n\n private _createHeading(heading: IHeadingData): React.ReactNode | null {\n if (!heading || !heading.text || heading.text.length === 0) {\n return null;\n }\n\n return (\n \n );\n }\n\n private _createText(text: string): React.ReactNode | null {\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n private _createImageMarkup(item: Msdyn365.IImageData, ariaHiddenAttr?: boolean): React.ReactNode | null {\n if (!item || !item.src || item.src.length === 0) {\n return null;\n }\n\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=24&h=24&m=6', w: 0, h: 0 },\n lg: { q: 'w=24&h=24&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n return (\n \n );\n }\n}\n\nexport default FooterItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IFooterViewProps } from './footer-item';\n\n/**\n *\n * FooterItemView component.\n * @extends {React.PureComponent}\n */\nexport class FooterItemView extends React.PureComponent {\n public render(): JSX.Element | null {\n const { FooterItem } = this.props;\n return {this._renderElement(this.props)};\n }\n\n private _renderElement(props: IFooterViewProps): React.ReactNode | null {\n const { heading, HeadingContainer, Link, linkText, image, text, EditableLink } = props;\n if (heading) {\n return {heading} ;\n } else if (Link && image) {\n return (\n \n {linkText}\n {image}\n \n );\n } else if (Link) {\n return EditableLink;\n }\n return (\n <>\n {text}\n {image}\n \n );\n }\n}\n\nexport default FooterItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IImageListConfig, IImageListProps, IImagesData } from './image-list.props.autogenerated';\n\n/**\n * The interface for IImageListViewProps.\n */\nexport interface IImageListViewProps extends IImageListProps {\n imageList: IModuleProps;\n imageListHeading?: React.ReactNode;\n imageListContainer: INodeProps;\n imageListItem: INodeProps;\n imageListItemAnchorTag: INodeProps;\n imageListItems: IImageListItem[] | undefined;\n}\n\n/**\n * The interface for IImageListItem.\n */\nexport interface IImageListItem {\n image: JSX.Element | undefined;\n text: JSX.Element | undefined;\n link: string | undefined;\n linkAltText: string | undefined;\n linkAriaLabel: string | undefined;\n linkOpenInNewTab?: boolean;\n}\n\n/**\n *\n * ImageList component.\n * @extends {React.PureComponent>}\n */\nclass ImageList extends React.PureComponent> {\n public render(): JSX.Element | null {\n const { heading } = this.props.config;\n const imageListTitle = heading && ;\n const viewProps: IImageListViewProps = {\n ...this.props,\n imageList: {\n moduleProps: this.props,\n className: classnames('ms-image-list', this.props.config.className),\n tag: 'div'\n },\n imageListHeading: imageListTitle,\n imageListContainer: {\n className: 'ms-image-list__list',\n role: 'list',\n tag: 'ul'\n },\n imageListItem: {\n className: 'ms-image-list__list-item',\n role: 'listitem',\n tag: 'li'\n },\n imageListItemAnchorTag: {\n tag: 'a',\n className: 'ms-image-list__link',\n role: 'link'\n },\n imageListItems: this._renderImageListItems()\n };\n return this.props.renderView(viewProps);\n }\n\n /**\n * Handle paragraph change.\n * @param index - Index of image item in array of image items.\n * @returns Void.\n */\n public handleParagraphChange = (index: number) => (event: Msdyn365.ContentEditableEvent): void => {\n if (this.props.config.images![index]) {\n this.props.config.images![index].paragraph = event.target.value;\n }\n };\n\n /**\n * Render list of images.\n * @returns List of images with text and redirection link.\n */\n private readonly _renderImageListItems = (): IImageListItem[] | undefined => {\n const imageList: IImagesData[] | undefined = this.props.config.images;\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 },\n lg: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 },\n xl: { q: 'w=65&h=65&q=80&m=6', w: 65, h: 65 }\n },\n lazyload: false,\n disableLazyLoad: true\n };\n return imageList?.map((item, index) => {\n const { image, link, paragraph } = item;\n\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings!,\n imageSettings: (image?.imageSettings ?? defaultImageSettings) as Msdyn365.IImageSettings | undefined\n };\n\n const imageLink: string | undefined = link?.linkUrl.destinationUrl;\n const imageLinkText: string | undefined = link?.linkText ?? link?.ariaLabel;\n const imageLinkAriaLabel: string | undefined = link?.ariaLabel;\n const imageLinkOpenInNewTab = link?.openInNewTab;\n\n // If image is null, we want to render the placeholder SVG - by passing image data with empty src\n const imageImage = (\n \n );\n\n const imageText = paragraph && (\n \n );\n const imageListItem: IImageListItem = {\n image: imageImage,\n text: imageText,\n link: imageLink,\n linkAltText: imageLinkText,\n linkAriaLabel: imageLinkAriaLabel,\n linkOpenInNewTab: imageLinkOpenInNewTab\n };\n return imageListItem;\n });\n };\n}\n\nexport default ImageList;\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 { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IImageListViewProps } from './image-list';\n\n/**\n * Render the thumbnail item images.\n * @param props - The image list view props.\n * @returns Return HTML having IImageListViewProps props with image List.\n */\nexport const imageListView = (props: IImageListViewProps): JSX.Element => {\n const { imageList, imageListContainer, imageListHeading, imageListItem, imageListItems, imageListItemAnchorTag } = props;\n return (\n \n {imageListHeading}\n \n {imageListItems?.map(item => {\n let indexKey: string;\n\n if (item.image) {\n const image = (item.image as unknown) as Msdyn365.Image;\n indexKey = image.props.src as string;\n } else {\n const text = (item.text as unknown) as Msdyn365.RichTextComponent;\n indexKey = text.props.text as string;\n }\n return (\n \n {item.image && (\n \n {item.image}\n \n )}\n {item.text}\n \n );\n })}\n \n \n );\n};\n\nexport default imageListView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n getTelemetryObject,\n IComponentNodeProps,\n IModuleProps,\n INodeProps,\n ISingleSlideCarouselProps,\n ITelemetryContent,\n NodeTag,\n SingleSlideCarousel\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { IInteractiveFeatureCollectionProps } from './interactive-feature-collection.props.autogenerated';\n\n/**\n * Interactive Feature Collection view props.\n */\nexport interface IInteractiveFeatureCollectionViewProps extends IInteractiveFeatureCollectionProps<{}> {\n title: React.ReactNode;\n interactiveFeatureCollectionHeading: INodeProps;\n interactiveFeatureCollectionContainer: IModuleProps;\n interactiveFeatureCollectionDesktopContainer: INodeProps;\n interactiveFeatureCollectionDesktopItems: React.ReactNode[];\n interactiveFeatureCollectionMobileContainer: INodeProps;\n interactiveFeatureCollectionMobileItems: React.ReactNode[];\n singleSlideCarouselComponentProps: INodeProps;\n singleSlideCarouselItemContainer: INodeProps;\n}\n\n/**\n *\n * InteractiveFeatureCollection component.\n * @extends {React.PureComponent>}\n */\nexport class InteractiveFeatureCollection extends React.PureComponent> {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n private static _getFeatureItem(item: React.ReactNode, index: number, itemsCounter: number): React.ReactNode {\n const keyIndex = `interactive-feature-mosaic-item__${index}`;\n return (\n \n {React.cloneElement(item as React.ReactElement, { indexItem: index, itemCounter: itemsCounter, isMosaic: true })}\n \n );\n }\n\n public constructor(props: IInteractiveFeatureCollectionProps) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { resources } = this.props;\n const { title, className } = this.props.config;\n const interactiveItems = this.props.slots && this.props.slots.interactiveFeatureItems;\n const itemsFeatureCounter = interactiveItems && interactiveItems.length;\n const singleSlideCarouselComponentProps: IComponentNodeProps = {\n tag: SingleSlideCarousel,\n className: this.props.config.className ?? '',\n flipperPrevLabel: resources.flipperPrevious,\n flipperNextLabel: resources.flipperNext,\n parentId: this.props.id,\n telemetryContent: this._telemetryContent,\n vertical: false\n };\n const initItemsFeatureCounter = 0;\n const createHeading = title && (\n \n );\n const viewProps = {\n ...this.props,\n title: createHeading,\n interactiveFeatureCollectionHeading: {\n className: 'ms-interactive-feature-collection__heading'\n },\n interactiveFeatureCollectionContainer: {\n moduleProps: this.props,\n className: classnames('ms-interactive-feature-collection', className)\n },\n interactiveFeatureCollectionDesktopContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-desktop'\n },\n interactiveFeatureCollectionMobileContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-mobile'\n },\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer: {\n tag: 'li' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel',\n role: 'listitem'\n },\n interactiveFeatureCollectionMobileItems: this.props.slots.interactiveFeatureItems,\n interactiveFeatureCollectionDesktopItems:\n itemsFeatureCounter > initItemsFeatureCounter &&\n interactiveItems.map((item: React.ReactNode, index: number) =>\n InteractiveFeatureCollection._getFeatureItem(item, index, itemsFeatureCounter)\n )\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * To handle text change.\n * @param event - To handle text change event.\n * @name - HandleTextChange\n * @public\n * @returns - The Text value.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.title!.text = event.target.value);\n}\n\nexport default InteractiveFeatureCollection;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { IInteractiveFeatureCollectionViewProps } from './interactive-feature-collection';\n\n/**\n * Feature Collection View.\n * @param props - Feature Collection view props.\n * @returns Feature Collection View.\n */\nexport const interactiveFeatureCollectionView: React.FC = props => {\n const {\n title,\n interactiveFeatureCollectionHeading,\n interactiveFeatureCollectionContainer,\n interactiveFeatureCollectionDesktopContainer,\n interactiveFeatureCollectionDesktopItems,\n interactiveFeatureCollectionMobileItems,\n interactiveFeatureCollectionMobileContainer,\n singleSlideCarouselComponentProps,\n singleSlideCarouselItemContainer\n } = props;\n return (\n \n {title}\n {interactiveFeatureCollectionDesktopItems}\n \n \n {interactiveFeatureCollectionMobileItems &&\n interactiveFeatureCollectionMobileItems.map((tileItem: ReactNode, index: number) => {\n const keyIndex = `interactive-feature-carousel-item__${index}`;\n return (\n \n {tileItem}\n \n );\n })}\n \n \n \n );\n};\n\nexport default interactiveFeatureCollectionView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../interactive-feature-item.props.autogenerated';\n\n/**\n * Interactive Feature links.\n */\nexport interface IInteractiveFeatureLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n telemetryContent: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\n/**\n *\n * IInteractiveFeatureLinks component.\n * @extends {React.PureComponent}\n */\nexport class InteractiveFeatureCollectionLinks extends React.PureComponent {\n public render(): JSX.Element {\n const editableLinks = this._mapEditableLinks(this.props.links);\n return (\n
\n {editableLinks && ArrayExtensions.hasElements(editableLinks) ? (\n \n ) : null}\n
\n );\n }\n\n /**\n * IInteractiveFeatureLinks component.\n * @param linkdata - Link data.\n * @returns Editable links.\n */\n private readonly _mapEditableLinks = (linkdata?: ILinksData[]): Msdyn365.ILinksData[] | null => {\n if (!linkdata || !ArrayExtensions.hasElements(linkdata)) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n for (const link of linkdata) {\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', this.props.telemetryContent, '', '');\n const linkText = link.linkText ? link.linkText : '';\n payLoad.contentAction.etext = linkText;\n const attributes = getTelemetryAttributes(this.props.telemetryContent, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-interactive-feature-collection__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'button',\n additionalProperties: attributes,\n onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)\n };\n editableLinks.push(editableLink);\n }\n\n return editableLinks;\n };\n}\nexport default InteractiveFeatureCollectionLinks;\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, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { InteractiveFeatureCollectionLinks } from './components';\nimport { IHeadingData, IInteractiveFeatureItemProps } from './interactive-feature-item.props.autogenerated';\n\n/**\n * Interactive Feature Item view props.\n */\nexport interface IInteractiveFeatureItemViewProps extends IInteractiveFeatureItemProps<{}> {\n title: React.ReactNode;\n paragraph: React.ReactNode;\n image: React.ReactNode;\n links: React.ReactNode;\n featureItem: IModuleProps;\n isMosaic: boolean;\n indexItem?: number;\n itemCounter?: number;\n\n interactiveFeatureCollectionCarouselContainer: INodeProps;\n interactiveFeatureCollectionCarouselImage: INodeProps;\n interactiveFeatureCollectionCarouselContent: INodeProps;\n\n interactiveFeatureCollectionMosaicContainer: INodeProps;\n interactiveFeatureCollectionMosaicImage: INodeProps;\n interactiveFeatureCollectionMosaicDetails: INodeProps;\n}\n\n/**\n * Interactive Feature Item Extented props.\n */\nexport interface IInteractiveFeatureItemExtentedProps extends IInteractiveFeatureItemProps<{}> {\n isMosaic?: boolean;\n indexItem?: number;\n itemCounter?: number;\n}\n\n/**\n *\n * InteractiveFeatureItem component.\n * @extends {React.PureComponent}\n */\nexport class InteractiveFeatureItem extends React.PureComponent {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public constructor(props: IInteractiveFeatureItemProps<{}>) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { indexItem, itemCounter, isMosaic } = this.props;\n const { heading, paragraph, image, links } = this.props.config;\n const featureItemLinks = links && ArrayExtensions.hasElements(links) && (\n \n );\n\n const viewProps = {\n ...this.props,\n indexItem,\n itemCounter,\n isMosaic: isMosaic ? isMosaic : false,\n title: this._createHeading(heading),\n paragraph: this._createParagraph(paragraph),\n image: this._renderImage(image),\n links: featureItemLinks,\n featureItem: {\n moduleProps: this.props,\n className: ''\n },\n interactiveFeatureCollectionCarouselContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__container'\n },\n interactiveFeatureCollectionCarouselImage: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__image'\n },\n interactiveFeatureCollectionCarouselContent: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-carousel__heading'\n },\n interactiveFeatureCollectionMosaicContainer: {\n tag: 'div' as NodeTag,\n className: 'ms-interactive-feature-collection-mosaic',\n 'aria-label': heading?.text,\n tabindex: '0',\n role: 'group'\n },\n interactiveFeatureCollectionMosaicImage: {\n className: 'ms-interactive-feature-collection-mosaic__image'\n },\n interactiveFeatureCollectionMosaicDetails: {\n className: 'ms-interactive-feature-collection-mosaic__details'\n }\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 */\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n /**\n * Handles paragraph content change event.\n * @param event - Content editable event.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.paragraph = event.target.value;\n };\n\n /**\n * Handles paragraph content change event.\n * @param linkIndex - Index of link in linkarray.\n * @returns Void.\n */\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent): void => {\n if (this.props.config.links?.[Number(linkIndex)]) {\n this.props.config.links[Number(linkIndex)].linkText = event.target.value;\n }\n };\n\n private _createParagraph(text?: Msdyn365.RichText): React.ReactNode | null {\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n private _createHeading(heading?: IHeadingData): React.ReactNode | null {\n if (!heading) {\n return null;\n }\n if (StringExtensions.isNullOrWhitespace(heading.text)) {\n return null;\n }\n\n return (\n \n );\n }\n\n private _renderImage(item?: Msdyn365.IImageData, isAriaHiddenAttribute?: boolean): React.ReactNode | null {\n // Even if image.src is null, we render the Image component to render the fallback SVG\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=328&h=459&m=6', w: 328, h: 459 },\n sm: { q: 'w=348&h=487&m=6', w: 348, h: 487 },\n md: { q: 'w=650&h=366&m=6', w: 650, h: 366 },\n lg: { q: 'w=650&h=366&m=6', w: 650, h: 366 },\n xl: { q: 'w=650&h=366&m=6', w: 650, h: 366 }\n },\n lazyload: true\n };\n const verifiedImageSettings = item?.imageSettings?.viewports ? item.imageSettings : defaultImageSettings;\n return (\n \n );\n }\n}\n\nexport default InteractiveFeatureItem;\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 classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IInteractiveFeatureItemViewProps } from './interactive-feature-item';\n\n/**\n * Enumerator used to make some calculations to set the proper classnames\n * using modular calculations to see if they are in a right or left column or on first or last row.\n */\nenum MagicNumber {\n modularDivisor = 4,\n caseNumberZero = 0,\n caseNumberOne = 1,\n caseNumberTwo = 2\n}\n\n/**\n * Feature Item View.\n * @param thisProps - Feature Item view props.\n * @param indexItem - Feature Item view props.\n * @param itemCounter - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */\nconst renderMosaic = (thisProps: IInteractiveFeatureItemViewProps, indexItem?: number, itemCounter?: number): JSX.Element | null => {\n const {\n title,\n paragraph,\n image,\n links,\n interactiveFeatureCollectionMosaicContainer,\n interactiveFeatureCollectionMosaicImage,\n interactiveFeatureCollectionMosaicDetails\n } = thisProps;\n const indexAux = indexItem ? indexItem + MagicNumber.caseNumberOne : MagicNumber.caseNumberOne;\n const itemCounterAux = itemCounter ? itemCounter : MagicNumber.caseNumberZero;\n const modularAux = indexAux % MagicNumber.modularDivisor;\n const firstRow = indexAux <= MagicNumber.caseNumberTwo ? 'firstRow' : '';\n const lastRow =\n itemCounterAux && (indexAux === itemCounterAux || indexAux === itemCounterAux - MagicNumber.caseNumberOne) ? 'lastRow' : '';\n const onCornerRight = modularAux === MagicNumber.caseNumberZero ? 'item-corner-right' : '';\n const onCornerLeft = modularAux === MagicNumber.caseNumberOne ? 'item-corner-left' : '';\n const containerClasses = classnames('ms-interactive-feature-collection-mosaic', onCornerLeft, onCornerRight, firstRow, lastRow);\n\n return (\n \n {image}\n \n {title}\n {paragraph}\n {links}\n \n \n );\n};\n\n/**\n * Feature Item View.\n * @param thisProps - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */ const renderCarousel = (thisProps: IInteractiveFeatureItemViewProps): JSX.Element | null => {\n const {\n title,\n paragraph,\n image,\n links,\n interactiveFeatureCollectionCarouselContainer,\n interactiveFeatureCollectionCarouselImage,\n interactiveFeatureCollectionCarouselContent\n } = thisProps;\n return (\n \n {image}\n \n {title}\n {paragraph}\n {links}\n \n \n );\n};\n\n/**\n * Feature Item View.\n * @param props - Feature Item view props.\n * @returns Feature item View.\n * @extends {} InteractiveFeatureItem\n */\nexport const FeatureItemViewComponent: React.FC = props => {\n const { isMosaic, featureItem, indexItem, itemCounter } = props;\n if (isMosaic) {\n return <>{renderMosaic(props, indexItem, itemCounter)};\n }\n return {renderCarousel(props)};\n};\n\nexport default FeatureItemViewComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponentProps, msdyn365Commerce } from '@msdyn365-commerce/core';\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { Button, ITelemetryContent, getPayloadObject, getTelemetryAttributes } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport classnames from 'classnames';\n\n/**\n * Class names used in component.\n */\nconst componentClassName = 'ms-order-history-with-search-and-filters-organization-wide-selector';\nconst buttonClassName = `${componentClassName}__button`;\nconst buttonActiveClassName = `${componentClassName}__active-button`;\nconst buttonInactiveClassName = `${componentClassName}__inactive-button`;\n\n/**\n * IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorResources interface.\n */\nexport interface IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorResources {\n currentUserOptionLabel: string;\n currentUserOptionAriaLabel?: string;\n organizationWideOptionLabel: string;\n organizationWideOptionAriaLabel?: string;\n}\n\n/**\n * OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState interface.\n */\nexport enum OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState {\n CurrentUser,\n OrganizationWide\n}\n\n/**\n * IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorData interface.\n */\nexport interface IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorData {\n customer: Customer;\n}\n\n/**\n * IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps interface.\n */\nexport interface IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps\n extends IComponentProps {\n className?: string;\n resources: IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorResources;\n currentSelectorState: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState;\n telemetryContent?: ITelemetryContent;\n onChange(state: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState): void;\n}\n\n/**\n * OrderHistoryWithSearchAndFiltersOrganizationWideSelector component.\n * @param props - Configuration of the component.\n * @returns React node.\n */\nconst OrderHistoryWithSearchAndFiltersOrganizationWideSelectorFunctionalComponent: React.FC = (\n props: IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps\n) => {\n // Current version doesn't include functionality for non b2b users or non-admin b2b users.\n if (!props.data.customer.IsB2bAdmin) {\n return
;\n }\n\n const [selectorState, setSelectorState] = React.useState(props.currentSelectorState);\n\n const onClickHandler = (newSelectorState: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState) => {\n setSelectorState(newSelectorState);\n props.onChange(newSelectorState);\n };\n\n // define telemetry attributes\n const currentUserOrderHistoryAttributes = getTelemetryAttributes(\n props.telemetryContent!,\n getPayloadObject('click', props.telemetryContent!, props.resources?.currentUserOptionLabel ?? 'Current user order history')\n );\n const orgWideOrderHistoryAttributes = getTelemetryAttributes(\n props.telemetryContent!,\n getPayloadObject('click', props.telemetryContent!, props.resources?.currentUserOptionLabel ?? 'Org wide order history')\n );\n\n return (\n
\n onClickHandler(OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.CurrentUser)}\n {...currentUserOrderHistoryAttributes}\n >\n {props.resources?.currentUserOptionLabel}\n \n onClickHandler(OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState.OrganizationWide)}\n {...orgWideOrderHistoryAttributes}\n >\n {props.resources?.organizationWideOptionLabel}\n \n
\n );\n};\n\n/**\n * OrderHistoryWithSearchAndFiltersOrganizationWideSelector component.\n */\nexport const OrderHistoryWithSearchAndFiltersOrganizationWideSelectorComponent: React.FunctionComponent = msdyn365Commerce.createComponent<\n // @ts-expect-error\n IOrderHistoryWithSearchAndFiltersOrganizationWideSelectorProps\n>('OrderHistoryWithSearchAndFiltersOrganizationWideSelectorComponent', {\n component: OrderHistoryWithSearchAndFiltersOrganizationWideSelectorFunctionalComponent\n});\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { INodeProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISingleOrderTemplateViewProps } from './components';\nimport { IOrderTemplateListViewProps } from './order-template-list';\n\nexport const OrderTemplateListView: React.FC = props => {\n const {\n OrderTemplateList,\n status,\n statusMessage,\n heading,\n OrderTemplates,\n orderTemplates,\n OrderTemplate,\n createOrderTemplateButton,\n templateHeaderStatusMessage\n } = props;\n\n return (\n \n {heading}\n {status !== 'SUCCESS' && statusMessage}\n \n {createOrderTemplateButton}\n {templateHeaderStatusMessage}\n \n {OrderTemplates && orderTemplates && orderTemplates.length > 0 && (\n \n {orderTemplates &&\n orderTemplates.map(orderTemplate => {\n return _renderOrderTemplate(orderTemplate, OrderTemplate);\n })}\n \n )}\n \n );\n};\n\nconst _renderOrderTemplate = (orderTemplate: ISingleOrderTemplateViewProps, OrderTemplate?: INodeProps): JSX.Element | null => {\n const { key, addToCartButton, orderTemplateImage, orderTemplateStatusMessage, removeButton, orderTemplateName } = orderTemplate;\n return (\n \n {orderTemplateName}\n {orderTemplateImage}\n {addToCartButton}\n {removeButton}\n {orderTemplateStatusMessage}\n \n );\n};\n\nexport default OrderTemplateListView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport MsDyn365, { IImageSettings, Image } from '@msdyn365-commerce/core';\nimport { addThrottledEvent, Drawer, IModuleProps, INodeProps, KeyCodes, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { computed, observable } from 'mobx';\nimport React from 'react';\n\nimport { ISitePickerConfig, ISitePickerProps } from './site-picker.props.autogenerated';\n\nexport interface ISitePickerViewProps extends ISitePickerProps {\n SitePicker: IModuleProps;\n SitePickerMenu: INodeProps;\n SitePickerMenuSpan: INodeProps;\n SitePickerMenuList: INodeProps;\n SitePickerMenuListItem: INodeProps;\n SitePickerMenuListItemArray: React.ReactNode[] | undefined;\n siteOptionsState: boolean;\n SitePickerMobileContainer: INodeProps;\n isMobileView: boolean;\n renderSiteOptions(): void;\n resetSiteOptionsState(): void;\n}\n\nexport type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\ninterface ISitePickerState {\n expandSiteOptions: boolean;\n isMobile: boolean;\n}\n\n/**\n *\n * SitePicker component.\n * @extends {React.PureComponent>}\n */\nclass SitePicker extends React.PureComponent, ISitePickerState> {\n private readonly _cookieName: string = '_msdyn365___site_';\n\n private readonly _cookieExpirationInSeconds: number = 5_184_000;\n\n private readonly _sitePickerMenuNode: React.RefObject;\n\n private readonly _sitePickerMenuButton: React.RefObject;\n\n private resizeThrottledEventHandler?: (event: Event) => void;\n\n @observable\n private viewport: GridSize;\n\n public constructor(props: ISitePickerViewProps) {\n super(props);\n this._handleChange = this._handleChange.bind(this);\n this._sitePickerMenuNode = React.createRef();\n this._sitePickerMenuButton = React.createRef();\n this._renderSiteOptions = this._renderSiteOptions.bind(this);\n this._resetSiteOptionsState = this._resetSiteOptionsState.bind(this);\n this._escFunction = this._escFunction.bind(this);\n this._handleOutsideClick = this._handleOutsideClick.bind(this);\n this._updateViewport = this._updateViewport.bind(this);\n this.viewport =\n props.context.request && props.context.request.device && props.context.request.device.Type === 'Mobile' ? 'xs' : 'lg';\n this.state = {\n expandSiteOptions: false,\n isMobile: this.isMobile\n };\n }\n\n @computed get isMobile(): boolean {\n return this.viewport === 'xs' || this.viewport === 'sm';\n }\n\n public componentDidMount(): void {\n if (MsDyn365.isBrowser) {\n document?.addEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\n document?.body?.addEventListener('mousedown', this._handleOutsideClick);\n this.resizeThrottledEventHandler = window && addThrottledEvent(window, 'resize', this._updateViewport as EventListener);\n this._updateViewport();\n }\n }\n\n public componentWillUnmount(): void {\n if (MsDyn365.isBrowser) {\n document?.removeEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\n document?.body?.removeEventListener('mousedown', this._handleOutsideClick, false);\n window && window.removeEventListener('resize', this.resizeThrottledEventHandler!, false);\n }\n }\n\n public render(): JSX.Element | null {\n const viewProps: ISitePickerViewProps = {\n ...(this.props as ISitePickerProps),\n SitePicker: {\n moduleProps: this.props,\n className: classnames('ms-site-picker', this.props.config.className, this.state.isMobile ? 'mobile-view' : 'desktop-view'),\n tag: 'div'\n },\n SitePickerMenu: {\n tag: 'button' as NodeTag,\n className: 'ms-site-picker__button',\n 'aria-label': this.props.config.heading?.text,\n 'aria-expanded': this.state.expandSiteOptions,\n onClick: this.props,\n ref: this._sitePickerMenuButton\n },\n SitePickerMenuSpan: {\n className: 'ms-site-picker__span',\n tag: 'span'\n },\n SitePickerMenuList: {\n className: 'ms-site-picker__list',\n role: 'menu',\n tag: 'ul',\n ref: this._sitePickerMenuNode\n },\n SitePickerMenuListItem: {\n className: 'ms-site-picker__list__item',\n role: 'presentation',\n tag: 'li'\n },\n SitePickerMobileContainer: {\n tag: Drawer,\n className: 'ms-site-picker__drawer',\n toggleButtonText: this.props.config.heading?.text,\n openGlyph: 'ms-site-picker__drawer-open',\n closeGlyph: 'ms-site-picker__drawer-close',\n glyphPlacement: 'end'\n },\n isMobileView: this.state.isMobile,\n SitePickerMenuListItemArray: this._renderSitePickerImage(),\n renderSiteOptions: this._renderSiteOptions,\n resetSiteOptionsState: this._resetSiteOptionsState,\n siteOptionsState: this.state.expandSiteOptions\n };\n return this.props.renderView(viewProps);\n }\n\n private _renderSiteOptions(): void {\n const expandSiteOptionsState = this.state.expandSiteOptions;\n this.setState({\n expandSiteOptions: !expandSiteOptionsState\n });\n }\n\n private _resetSiteOptionsState(): void {\n this.setState({\n expandSiteOptions: false\n });\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private readonly _escFunction = (event: any) => {\n const key = event.keyCode;\n if (this.state.expandSiteOptions) {\n switch (key) {\n case KeyCodes.Escape: {\n setTimeout(() => {\n const nextFocus = document && document.activeElement;\n if (\n this._sitePickerMenuButton?.current?.contains(nextFocus) ||\n this._sitePickerMenuNode?.current?.contains(nextFocus)\n ) {\n this._resetSiteOptionsState();\n this._sitePickerMenuButton?.current?.focus();\n }\n }, 50);\n break;\n }\n case KeyCodes.Tab: {\n setTimeout(() => {\n const nextFocus = document && document.activeElement;\n if (\n !this._sitePickerMenuButton?.current?.contains(nextFocus) &&\n !this._sitePickerMenuNode?.current?.contains(nextFocus)\n ) {\n this._resetSiteOptionsState();\n }\n }, 50);\n break;\n }\n default:\n return;\n }\n }\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private readonly _handleOutsideClick = (event: any) => {\n if (\n (this._sitePickerMenuButton.current?.contains(event.target) && this.state.expandSiteOptions) ||\n (this._sitePickerMenuNode.current?.contains(event.target) && this.state.expandSiteOptions)\n ) {\n return;\n }\n this._resetSiteOptionsState();\n };\n\n private _handleChange(e: React.MouseEvent): void {\n e.preventDefault();\n if (e.currentTarget.href && e.currentTarget.href.length > 0 && window) {\n if (this.props.context.request.cookies.isConsentGiven()) {\n const cookieConfig = { maxAge: this._cookieExpirationInSeconds };\n this.props.context.request.cookies.set(this._cookieName, e.currentTarget.href, cookieConfig);\n }\n window.location.assign(e.currentTarget.href);\n }\n }\n\n private _renderSitePickerImage(): React.ReactNode[] | undefined {\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=50&h=25&m=6', w: 0, h: 0 },\n sm: { q: 'w=50&h=25&m=6', w: 0, h: 0 },\n md: { q: 'w=40&h=20&m=6', w: 0, h: 0 },\n lg: { q: 'w=40&h=20&m=6', w: 0, h: 0 },\n xl: { q: 'w=40&h=20&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n const siteOptions = this.props.config.siteOptions && this.props.config.siteOptions;\n return (\n siteOptions &&\n siteOptions.map((item, index) => {\n const image = item?.siteImage;\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings!,\n imageSettings: image?.imageSettings?.viewports ? image.imageSettings : defaultImageSettings\n };\n return (\n \n {item?.siteName}\n \n \n );\n })\n );\n }\n\n private _updateViewport(): void {\n this.viewport = this._getViewport();\n this.setState({ isMobile: this.isMobile });\n }\n\n private _getViewport(): GridSize {\n const { context } = this.props;\n if (context.request && context.request.device && context.request.device.Type === 'Mobile') {\n return 'xs';\n }\n\n if (typeof window !== undefined && window.innerWidth) {\n const gridSettings = context.request.gridSettings;\n if (gridSettings) {\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\n return 'xs';\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\n return 'sm';\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\n return 'md';\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\n return 'lg';\n }\n return 'xl';\n }\n }\n return 'xs';\n }\n}\n\nexport default SitePicker;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISitePickerViewProps } from './site-picker';\n\nexport default (props: ISitePickerViewProps) => {\n return <>{_renderSitePicker(props)};\n};\n\nconst _renderDesktopView = (props: ISitePickerViewProps) => {\n const { SitePickerMenu, SitePickerMenuSpan } = props;\n return (\n <>\n \n {props.config.heading?.text}\n \n \n {props.siteOptionsState ? _renderSiteOptionsList(props) : null}\n \n );\n};\n\nconst _renderSiteOptionsList = (props: ISitePickerViewProps): React.ReactNode => {\n const { SitePickerMenuList, SitePickerMenuListItem, SitePickerMenuListItemArray } = props;\n const options = SitePickerMenuListItemArray!.map((item, index) => {\n return (\n \n {item}\n \n );\n });\n return (\n \n {options}\n \n );\n};\n\nconst _renderMobileView = (props: ISitePickerViewProps): React.ReactNode => {\n const { SitePickerMobileContainer } = props;\n return (\n \n
\n {props.SitePickerMenuListItemArray?.map((item, index) => {\n return
{item}
;\n })}\n
\n
\n );\n};\n\nconst _renderSitePicker = (props: ISitePickerViewProps): React.ReactNode => {\n const { isMobileView, SitePicker } = props;\n return {isMobileView ? _renderMobileView(props) : _renderDesktopView(props)};\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IImageSettings, Image } from '@msdyn365-commerce/core';\nimport {\n IReportReviewModalViewProps,\n IReviewCardViewProps,\n IReviewsListData,\n IReviewsListResources,\n IReviewsListState,\n IReviewsListViewProps\n} from '@msdyn365-commerce-modules/ratings-reviews';\nimport { ArrayExtensions, generateImageUrl } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IReviewsListProps } from '../definition-extensions/reviews-list.ext.props.autogenerated';\n\n/**\n * Build Review Card.\n * @param props - Review Card ViewProps.\n * @param resources - Resource Strings.\n * @param isUserReview - User review flag.\n * @returns JSX Element.\n */\nconst buildReviewCard = (props: IReviewCardViewProps, resources: IReviewsListResources, isUserReview: boolean) => {\n return (\n \n \n
\n {props.rating}\n {props.date}\n
\n {props.name}\n
\n \n \n {props.reviewTitle}\n {props.reviewText}\n \n \n {props.responseName}\n {props.responseDate}\n {props.responseText}\n \n \n {isUserReview ? undefined :

{resources.wasReviewHelpfulText}

}\n {props.like}\n {props.dislike}\n {props.edit}\n
\n
\n
\n );\n};\n\n/**\n * Render Product Image.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductImage = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const primaryImageSource = props.data.product.result?.PrimaryImageUrl;\n const imageUrl = generateImageUrl(primaryImageSource, props.context.request.apiSettings);\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=111&h=111&m=6', w: 111, h: 111 },\n sm: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n md: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n lg: { q: 'w=130&h=130&m=6', w: 130, h: 130 },\n xl: { q: 'w=130&h=130&m=6', w: 130, h: 130 }\n },\n lazyload: true,\n cropFocalRegion: true\n };\n\n return (\n \n );\n};\n\n/**\n * Render Product Description.\n * @param props - WriteReview ViewProps.\n * @returns JSX Element.\n */\nconst renderProductDescription = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const product = props.data.product.result;\n return (\n \n
{renderProductImage(props)}
\n
\n
{product?.Name}
\n
{product?.Name}
\n
{product?.ItemId}
\n
\n
\n );\n};\n\n/**\n * Build Review modal.\n * @param props - Review list ViewProps.\n * @returns JSX Element.\n */\nconst createReviewModal = (props: IReviewsListViewProps & IReviewsListProps): JSX.Element => {\n const { resources, moduleProps, reviewModal } = props;\n return (\n \n {reviewModal.modalHeader}\n \n \n \n {renderProductDescription(props)}\n \n
{resources.selectRatingLabel}
\n {reviewModal.rating}\n
\n
\n \n {resources.reviewTitleLabel}\n {reviewModal.titleInput}\n \n \n {resources.reviewTextLabel}\n {reviewModal.textInput}\n \n {reviewModal.privacyPolicyUrl}\n {reviewModal.error}\n
\n
\n \n {reviewModal.submitButton}\n {reviewModal.cancelButton}\n \n
\n );\n};\n\n/**\n * Build Review modal.\n * @param props - Review modal ViewProps.\n * @param state - Review List State.\n * @returns JSX Element.\n */\nconst createReportModal = (props: IReportReviewModalViewProps, state: IReviewsListState): JSX.Element => {\n return (\n \n {state.reported ? props.headerSubmitted : props.header}\n \n {state.reported ? props.reportSubmittedMessage : [props.reportMessage, props.radioButtons, props.error]}\n \n {state.reported ? props.succesfulButton : [props.submitButton, props.cancelButton]}\n \n );\n};\n\n/**\n * ReviewsList view.\n * @param props - Ratings ReviewsList ViewProps.\n * @returns ReviewsList view module.\n */\nconst ReviewsListview: React.FC> = props => {\n const {\n filterByDropdown,\n heading,\n moduleProps,\n noReviewsMessage,\n noReviewsWithFilterMessage,\n pageControls,\n refineReviewsProps,\n reportReviewModal,\n reviewsListProps,\n reviewCards,\n sortByDropdown,\n state,\n userReview,\n resources\n } = props;\n\n if (!userReview && !ArrayExtensions.hasElements(reviewCards) && !state.isFilterApplied) {\n return {noReviewsMessage};\n }\n\n return (\n \n {heading}\n \n {sortByDropdown}\n {filterByDropdown}\n \n \n {userReview && buildReviewCard(userReview, resources, true)}\n {reviewCards.map(review => {\n return buildReviewCard(review, resources, false);\n })}\n \n {!ArrayExtensions.hasElements(reviewCards) && state.isFilterApplied && noReviewsWithFilterMessage}\n {pageControls}\n {createReviewModal(props)}\n {createReportModal(reportReviewModal, state)}\n \n );\n};\n\nexport default ReviewsListview;\n"],"names":["_ref","id","className","text","ariaLabel","telemetryContent","disabled","onClick","payLoad","getPayloadObject","attributes","getTelemetryAttributes","React","Button","Object","assign","description","type","message","errorClassName","classnames","role","GetMaxLength","maxLength","parsedMaxLength","Number","parseInt","isNaN","value","pattern","onChange","undefined","forId","htmlFor","href","SignIn","constructor","props","super","moduleClassName","handleParagraphChange","event","this","config","signInDisclaimer","target","handleSignInHeadingChange","signInHeading","handleSignUpHeadingChange","signUpHeading","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","setTimeout","clearInterval","window","isInitialized","emailRegex","emailId","SA_FIELDS","AttributeFields","ID","resources","errorMessages","requiredField_email","requriedEmailError","requiredField_password","requriedPasswordError","invalid_email","invalidEmailError","invalid_password","invalidPasswordError","unknown_error","unknownError","EmailRegex","defaultRegex","source","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","componentDidMount","componentDidUpdate","shouldComponentUpdate","nextProps","nextState","state","data","render","viewProps","_objectSpread","viewState","isShowLoading","signIn","moduleProps","loading","modal","tag","Modal","isOpen","modalBody","ModalBody","icon","SignInLoadingIconComponent","SignInLoadingMessageComponent","loadingMessage","defaultAADConainer","style","display","aadConainer","signInSection","signInSectionHeading","Msdyn365","editProps","onEdit","requestContext","signInLocalAccount","localAccount","items","_renderInput","emailAddressLabelText","emailAddressAriaLabel","passwordLabelText","forgetPassword","SignInLinkComponent","forgotPasswordButtonAriaLabel","forgotPasswordButtonText","disclaimer","error","SignInErrorComponent","signInButton","SignInButtonComponent","loginButtonAriaLabel","loginButtonText","signInSocialAccount","socialAccounts","_renderSocialAccount","facebookButtonText","facebookButtonAriaLabel","facebookIcon","microsoftButtonText","microsoftButtonAriaLabel","microsoftIcon","signInB2BAccount","_renderB2BSocialAccount","b2bButtonText","b2bButtonAriaLabel","displayB2bAccountManagerSignin","signUpSection","signUpSectionHeading","signUpDescription","SignInDescriptionComponent","signUpDescriptionText","signUpLink","signUpButtonAriaLabel","signUpButtonText","renderView","labelText","wrapper","key","label","SignInLabelComponent","input","SignInInputComponent","iconImage","button","image","_createImageMarkup","SignInTextComponent","_displayB2bAccountManagerSignin","imageProps","gridSettings","imageSettings","pictureClassName","shouldSkipToMainImage","__decorate","observable","observer","SignInLoading","_ref4","Node","HtmlHeadInclude","src","height","width","visibility","Module","map","item","LocalAccount","_ref2","SocialAccount","_ref3","B2BAccount","renderAdditionalContent","additionalContent","_additionalContent$ad","additionalContentNode","additionalContentItems","heading","additionalContentItemContainer","additionalContentItemLinks","links","contentBlockContainer","imageContainer","detailsContainer","title","contentBlockAnchorTag","imageLink","imageAriaLabel","user","isAuthenticated","actionContext","showOnlyForGuest","showOnlyForloggedIn","mobileImage","imageJSX","contentImageProps","isMobile","setIsMobile","_updateViewport","viewport","_getViewport","_props$context","device","Type","MsDyn365","isBrowser","innerWidth","_props$context2","xs","w","sm","md","lg","addEventListener","mobileFullImage","moduleType","imagePropertyName","moduleId","InvoiceListView","header","filter","content","invoiceRequestModal","pagination","NavigationMenuView","currentLevel","_updateCategoryImage","categoryImageSrc","option","linkText","promotionalImage","altText","ArrayExtensions","hasElements","promotionalContent","imageSrc","promotionalItemImageSettings","push","additionalProperties","linkUrl","destinationUrl","setState","categoryImage","length","categoryImageAltText","_handleDropdownToggle","parentId","isMobileView","isBackTrack","activeMenu","mobileViewLabelText","parentMenu","menuItemListStateBool","showCategoryImage","imageSource","_handleGoBack","_handleClickOutside","menuNode","current","contains","_handleFocusOutside","relatedTarget","_closeSubmenu","_shouldAddFocusMenuRef","index","optionLinkText","_getCategoryImage","defaultImageSettings","viewports","q","h","lazyload","_categoryImage$imageS","generateImageUrl","apiSettings","Image","categoryImageSettings","loadFailureBehavior","menuItemRef","drawerKeyValue","bind","document","body","_this$menuItemRef$cur","children","focus","componentWillUnmount","removeEventListener","MenuList","MobileBackButton","MobileDescriptionContainer","MobileDescriptionLabel","Navigation","ref","tabIndex","_renderDisplay","ListItem","menuItemData","menuItemList","menuItem","menuItemDatum","_getFromSubMenu","_createMenuItemList","forEach","subMenus","subMenu","i","found","_renderSubMenu","_renderButtonMenuItem","linkURL","_renderLinkMenuItem","_renderSpanMenuItem","IsSubMenu","enableMultiSupportMenu","enableMultilevelMenu","multiLevelSupportedMenu","menuLevelSupport","levelClassName","menuOptions","idx","hasOptions","haveSubmenu","Math","round","toString","_renderMenu","Link","url","requestUrl","origin","location","replace","String","onFocus","hoverEffect","arguments","isParent","imagesource","contentAction","etext","shouldOpenNewTab","onMouseOver","onTelemetryClick","_renderPromotionalLink","Span","level","currentItem","submenu","DivContainer","ImageDivContainer","showPromotionalContent","categoryImageDisplay","promotionalContentDisplay","DivContainerClass","_item$additionalPrope","OrderConfirmationOrderInfomation","orderInformationProps","receiptEmail","createdDate","channelReferenceId","OrderConfirmationSalesLine","_data$product","_data$product2","_data$product3","salesLineProps","salesLine","buyAgainButton","customerTaxPercentage","enabledIncExPrices","app","unitPrice","NetAmount","Quantity","product","ItemId","Name","incExcPriceFormat","DefaultUnitOfMeasure","OrderConfirmationSalesLineForMobile","_data$product4","_data$product5","_data$product6","_data$product7","Price","OrderConfirmationGroupDelivery","deliveryProps","count","processing","address","trackingInfo","pickupDateTimeslot","OrderConfirmationGroup","_ref5","groupProps","delivery","salesLinesProps","salesLines","LineId","OrderConfirmationGroups","_ref6","groupsProps","groups","group","OrderConfirmationOrderSummary","_ref7","orderSummaryProps","subtotal","shipping","tax","totalAmount","earnedPoints","discountAmount","deliveryMode","freightAndGSTMessage","freightAndGSTMessageFromResources","subTotalJSXValue","subTotalAmount","currencyFormat","itemProp","OrderConfirmationPayment","_ref8","paymentMethodsProps","methods","OrderConfirmationHelp","_ref9","helpProps","needHelpLabel","helpLineNumberLabel","contactNumber","_ref10","_data$orderHydration","_data$orderHydration$","_groups$groups","_data$orderHydration$2","_context$request$chan","_data$accountInformat","_data$orderHydration2","_data$orderHydration3","_bannerLink$linkUrl","backToShoppingLink","alert","orderInfomation","orderSummary","payment","help","bannerImage","bannerLink","orderHydration","result","salesOrder","DeliveryMode","phnRcdId","setPhnRcdId","phnRcdNumber","setPhnRcdNumber","localStorage","getItem","_data$customerInforma","_primaryAddresses$","primaryAddresses","customerInformation","Addresses","e","PhoneRecordId","Phone","DiscountAmount","addressProps","find","addr","_addr$delivery","contentBlockImage","layout","msdyn365__moduleLayout","formattedDate","Date","CreatedDateTime","toLocaleDateString","dateLocale","dateFormat","currency","channel","Currency","formattedDateByLocale","dateFormatByLocale","taxPercentage","accountInformation","shippingAddressyHeading","phoneNumberLabel","orderRequestDetailsHeading","orderRequestIDLabel","ChannelReferenceId","orderRequestEmailLabel","ReceiptEmail","orderRequestDateLabel","openInNewTab","paymentSummaryText","freightAndGSTMessageResources","AccordionItem","handleHeadingChange","accordionItemTitle","_onToggle","slots","accordionExpandedStateResult","accordionExpandedState","expanded","isAllExpanded","isExpandedOnInitialLoad","AccordionItemContainer","AccordionItemContent","drawer","ControlledDrawer","toggleButtonText","collapseProps","onToggle","onTextChange","accordionSlots","interactionStyle","accordionState","update","createAccordionStateInput","_renderAccordionItemContent","accordionItemContent","Accordion","expandAllButtonRef","collapseAllButtonRef","_onExpandAll","_onCollapseAll","isDisabled","headingComponent","accordionViewProps","AccordionContainer","HeaderSection","HeadingWrapper","accordianButtonsContainer","accordionButtons","_renderAccordionButton","accordionItemContainer","accordionItems","_getAccordionItem","TelemetryConstant","ExpandAll","attributeExpandAll","CollapseAll","attributeCollapseAll","showToggleAll","expandAllText","toggleAllSeparator","collapseAllText","_this$collapseAllButt","_this$expandAllButton","AadGeneric","$i2e","$element","insertServiceContent","getElementContent","initialize","aadGeneric","aadAPIConainer","AccountAddressTile","handleLinkTextChange","linkIndex","accountAddressTileDescriptionForSingleAddress","accountAddressTileDescriptionForMultipleAddresses","addressCount","accountAddressTileDescription","format","LinksComponent","DescriptionComponent","_mapEditableLinks","linkdata","editableLinks","link","editableLink","AccountInvoiceTileDescription","AccountInvoiceTile","_data$customerBalance","cultureFormatter","formatCurrency","currencyCode","accountInvoiceTileDescription","invoiceTotalAmount","customerBalance","OpenInvoiceBalance","toFixed","AccountWelcomeTile","accountInfo","FirstName","AccountWishlistTile","accountWishlistTileDescription","wishlists","wishlistsCount","CommerceListLines","RequestsTableColumnHeader","getUserName","StringExtensions","isNullOrEmpty","UserFirstName","UserLastName","b2bRequestsNameDisplay","formatDate","date","year","month","day","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","mobileExcludedColumns","includes","name","sortable","columnSortAriaLabel","rows","editLinkText","deleteLinkText","viewLinkText","enableToModify","actionLinkText","showCheckBoxes","isSortable","showPagination","minifyActions","excludedColumns","paginationProperty","skipCount","query","skip","itemPerPage","prevText","b2bRequestsPreviousText","nextText","b2bRequestsNextText","paginationText","reqContext","URL","isSingleSelectOnly","actions","onDelete","onView","businessUserSelectCheckBoxAriaLabelText","sortByAscending","sortByDescending","B2bRequestsTable","Table","B2bRequestsStatus","renderHeader","headingData","_this$props$data$oper","_this$props$data$oper2","itemCount","Heading","getItemNumberDisplayString","_retrieveExcludedColumns","renderTable","b2bRequestsNumberOfItemsSingular","b2bRequestsNumberOfItems","variant","VariantType","Viewport","isChannelTypeB2B","b2bRequestsStatus","table","computed","AddressShow","AddressDetail","AddressList","List","isShowList","Item","showItems","isShowPrimaryButton","primaryButton","editButton","removeButton","Error","isShowError","AddressLists","ListAddress","isShowEmptyListMessage","emptyListMessage","addButton","primaryAddressList","otherAddressList","AddressAddUpdate","AddressForm","hasError","isShowSaveButton","saveButton","isShowCancelButton","cancelButton","AddressItem","AddressError","AccountAddressManagement","infoMessageBar","showAddressList","showAddOrUpdateAddress","screenReaderNotification","isShowAddresList","isShowAddOrUpdateAddress","_renderTextBlock","textBlocks","_renderSocialShare","socialShare","_renderCartAndActions","addToCart","addToOrderTemplate","addToWishlist","errorBlock","_renderConfigure","configure","ContainerProps","dropdowns","_renderConfigureDropdown","dropdown","LabelContainerProps","errors","select","_renderFindInStore","findInStore","storeSelector","productPickupOptionList","onChangeHandler","callbacks","newValue","updateQuantity","_renderQuantity","quantityComponent","extentionResources","quantityLimitsMessages","min","max","applyDefaultOrderSettings","quantity","IncrementalQuantity","currentCount","inputQuantityAriaLabel","decrementButtonAriaLabel","incrementButtonAriaLabel","minQuantityText","maxQuantityText","_renderKeyInPrice","keyInPrice","_renderShopSimilarItem","shopSimilarItem","ModuleProps","MediaGalleryContainerProps","ProductInfoContainerProps","price","rating","inventoryLabel","shopSimilarLook","shopSimilarDescription","unitOfMeasure","mediaGallery","bulkPurchaseLink","histogramItem","buttonProps","starLabel","bar","percentage","histogramItems","histogramProps","FooterItem","handleTextChange","footerItemClassName","_createHeading","_createText","_createLinkText","EditableLink","_createLink","HeadingContainer","ItemContainer","ariaHiddenAttr","FooterItemView","_renderElement","ImageList","images","paragraph","_renderImageListItems","imageList","xl","disableLazyLoad","_image$imageSettings","_link$linkText","imageLinkText","imageLinkAriaLabel","imageLinkOpenInNewTab","linkAltText","linkAriaLabel","linkOpenInNewTab","_heading$tag","imageListTitle","imageListHeading","imageListContainer","imageListItem","imageListItemAnchorTag","imageListItems","imageListView","indexKey","InteractiveFeatureCollection","_telemetryContent","itemsCounter","keyIndex","indexItem","itemCounter","isMosaic","_this$props$config$cl","_title$tag","interactiveItems","interactiveFeatureItems","itemsFeatureCounter","singleSlideCarouselComponentProps","SingleSlideCarousel","flipperPrevLabel","flipperPrevious","flipperNextLabel","flipperNext","vertical","createHeading","interactiveFeatureCollectionHeading","interactiveFeatureCollectionContainer","interactiveFeatureCollectionDesktopContainer","interactiveFeatureCollectionMobileContainer","singleSlideCarouselItemContainer","interactiveFeatureCollectionMobileItems","interactiveFeatureCollectionDesktopItems","_getFeatureItem","interactiveFeatureCollectionView","tileItem","InteractiveFeatureCollectionLinks","InteractiveFeatureItem","_this$props$config$li","featureItemLinks","_createParagraph","_renderImage","featureItem","interactiveFeatureCollectionCarouselContainer","interactiveFeatureCollectionCarouselImage","interactiveFeatureCollectionCarouselContent","interactiveFeatureCollectionMosaicContainer","tabindex","interactiveFeatureCollectionMosaicImage","interactiveFeatureCollectionMosaicDetails","isNullOrWhitespace","isAriaHiddenAttribute","_item$imageSettings","_this$props$config$im","verifiedImageSettings","typeName","MagicNumber","FeatureItemViewComponent","renderMosaic","thisProps","indexAux","caseNumberOne","itemCounterAux","caseNumberZero","modularAux","modularDivisor","firstRow","caseNumberTwo","lastRow","onCornerRight","onCornerLeft","containerClasses","renderCarousel","componentClassName","buttonClassName","buttonActiveClassName","buttonInactiveClassName","OrderHistoryWithSearchAndFiltersOrganizationWideSelectorState","OrderHistoryWithSearchAndFiltersOrganizationWideSelectorComponent","msdyn365Commerce","createComponent","component","_props$resources$curr","_props$resources","_props$resources$curr2","_props$resources2","_props$resources$curr3","_props$resources3","_props$resources4","_props$resources$curr4","_props$resources5","_props$resources6","_props$resources7","_props$resources$orga","_props$resources8","_props$resources9","_props$resources$orga2","_props$resources10","_props$resources11","_props$resources12","customer","IsB2bAdmin","selectorState","setSelectorState","currentSelectorState","onClickHandler","newSelectorState","currentUserOrderHistoryAttributes","currentUserOptionLabel","orgWideOrderHistoryAttributes","CurrentUser","currentUserOptionAriaLabel","OrganizationWide","organizationWideOptionAriaLabel","organizationWideOptionLabel","OrderTemplateListView","OrderTemplateList","status","statusMessage","OrderTemplates","orderTemplates","OrderTemplate","createOrderTemplateButton","templateHeaderStatusMessage","orderTemplate","_renderOrderTemplate","addToCartButton","orderTemplateImage","orderTemplateStatusMessage","orderTemplateName","SitePicker","_cookieName","_cookieExpirationInSeconds","_escFunction","keyCode","expandSiteOptions","KeyCodes","Escape","_this$_sitePickerMenu","_this$_sitePickerMenu2","nextFocus","activeElement","_this$_sitePickerMenu3","_sitePickerMenuButton","_sitePickerMenuNode","_resetSiteOptionsState","Tab","_this$_sitePickerMenu4","_this$_sitePickerMenu5","_handleOutsideClick","_this$_sitePickerMenu6","_this$_sitePickerMenu7","_handleChange","_renderSiteOptions","_document","_document2","resizeThrottledEventHandler","addThrottledEvent","_document3","_document4","_this$props$config$he","_this$props$config$he2","SitePickerMenu","SitePickerMenuSpan","SitePickerMenuList","SitePickerMenuListItem","SitePickerMobileContainer","Drawer","openGlyph","closeGlyph","glyphPlacement","SitePickerMenuListItemArray","_renderSitePickerImage","renderSiteOptions","resetSiteOptionsState","siteOptionsState","expandSiteOptionsState","preventDefault","currentTarget","cookies","isConsentGiven","cookieConfig","maxAge","set","siteOptions","_item$siteRedirectUrl","siteImage","siteRedirectUrl","siteName","_renderSitePicker","_renderSiteOptionsList","options","onMouseLeave","_props$SitePickerMenu","_renderMobileView","_props$config$heading","_renderDesktopView","buildReviewCard","isUserReview","cardProps","headerProps","cardBodyProps","reviewProps","reviewTitle","reviewText","responseProps","responseName","responseDate","responseText","controlsProps","wasReviewHelpfulText","like","dislike","edit","renderProductDescription","_props$data$product$r","primaryImageSource","PrimaryImageUrl","imageUrl","cropFocalRegion","renderProductImage","filterByDropdown","noReviewsMessage","noReviewsWithFilterMessage","pageControls","refineReviewsProps","reportReviewModal","reviewsListProps","reviewCards","sortByDropdown","userReview","isFilterApplied","review","reviewModal","modalHeader","form","inputRow","selectRatingLabel","reviewTitleLabel","titleInput","reviewTextLabel","textInput","privacyPolicyUrl","modalFooter","submitButton","createReviewModal","createReportModal","reported","headerSubmitted","reportSubmittedMessage","reportMessage","radioButtons","succesfulButton"],"sourceRoot":""}