{"version":3,"file":"static/js/9.4f76cb0687c55ebf002e.chunk.js","mappings":"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","sources":["webpack://msdyn365-lxs-master-theme/./src/themes/master/views/header.view.tsx?eb09","webpack://msdyn365-lxs-master-theme/./src/themes/master/views/components/navigation-menu-utilities.tsx?6702","webpack://msdyn365-lxs-master-theme/./src/themes/master/views/components/navigation-menu-root-disabled.tsx?7c22","webpack://msdyn365-lxs-master-theme/./src/themes/master/views/components/navigation-menu-root-enabled.tsx?68df","webpack://msdyn365-lxs-master-theme/./src/themes/master/views/navigation-menu.view.tsx?8866","webpack://msdyn365-lxs-master-theme/./src/themes/master/views/site-picker.view.tsx?267f","webpack://msdyn365-lxs-master-theme/./src/modules/account-generic-tile/account-generic-tile.tsx?4353","webpack://msdyn365-lxs-master-theme/./src/modules/account-generic-tile/account-generic-tile.view.tsx?4b58","webpack://msdyn365-lxs-master-theme/./src/modules/account-generic-tile/components/account-generic-tile-links.tsx?2bc7","webpack://msdyn365-lxs-master-theme/./src/modules/b2b-requests-tile/components/account-b2b-requests-tile-links.tsx?d6f5","webpack://msdyn365-lxs-master-theme/./src/modules/b2b-requests-tile/b2b-requests-tile.tsx?9498","webpack://msdyn365-lxs-master-theme/./src/modules/b2b-requests-tile/b2b-requests-tile.view.tsx?3f4e","webpack://msdyn365-lxs-master-theme/./src/modules/breadcrumb/components/link.tsx?d232","webpack://msdyn365-lxs-master-theme/./src/modules/breadcrumb/components/separator.tsx?92bb","webpack://msdyn365-lxs-master-theme/./src/modules/breadcrumb/breadcrumb.tsx?efcc","webpack://msdyn365-lxs-master-theme/./src/modules/breadcrumb/breadcrumb.view.tsx?4b3d","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/components/sign-up-button.tsx?e1d9","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/components/sign-up-error.tsx?7f8a","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/components/sign-up-input.tsx?5bbe","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/components/sign-up-label.tsx?4988","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/components/sign-up-radio-button.tsx?f8c1","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/business-sign-up.tsx?13a2","webpack://msdyn365-lxs-master-theme/./src/modules/business-sign-up/business-sign-up.view.tsx?e2f8","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/components/search-bar.tsx?63c1","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/components/data-grid.tsx?ddec","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/components/business-partner-users-table.tsx?c677","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/components/business-partners-table.tsx?8b1d","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/business-partners.tsx?57a6","webpack://msdyn365-lxs-master-theme/./src/modules/business-partners/business-partners.view.tsx?b34e","webpack://msdyn365-lxs-master-theme/./src/modules/country-picker/country-picker.tsx?4fcb","webpack://msdyn365-lxs-master-theme/./src/modules/country-picker/country-picker.view.tsx?0036","webpack://msdyn365-lxs-master-theme/./src/modules/footer-category/footer-category.tsx?e0bd","webpack://msdyn365-lxs-master-theme/./src/modules/footer-category/footer-category.view.tsx?fdce","webpack://msdyn365-lxs-master-theme/./src/modules/image-list/image-list.tsx?5602","webpack://msdyn365-lxs-master-theme/./src/modules/image-list/image-list.view.tsx?2bed","webpack://msdyn365-lxs-master-theme/./src/modules/interactive-feature-item/components/links.tsx?7423","webpack://msdyn365-lxs-master-theme/./src/modules/interactive-feature-item/interactive-feature-item.tsx?792c","webpack://msdyn365-lxs-master-theme/./src/modules/interactive-feature-item/interactive-feature-item.view.tsx?bdcc","webpack://msdyn365-lxs-master-theme/./src/modules/navigation-menu/navigation-menu.data.ts?9815","webpack://msdyn365-lxs-master-theme/./node_modules/@msdyn365-commerce-modules/navigation-menu/node_modules/tslib/tslib.es6.js?ae5b","webpack://msdyn365-lxs-master-theme/./src/modules/navigation-menu/navigation-menu.tsx?2bef","webpack://msdyn365-lxs-master-theme/./src/modules/navigation-menu/navigation-menu.view.tsx?c594","webpack://msdyn365-lxs-master-theme/./src/modules/order-lookup/utilities/order-lookup-utility.tsx?c60b","webpack://msdyn365-lxs-master-theme/./src/modules/order-lookup/components/order-lookup-additional-fields.tsx?9951","webpack://msdyn365-lxs-master-theme/./src/modules/order-lookup/components/order-lookup-fields.tsx?297b","webpack://msdyn365-lxs-master-theme/./src/modules/order-lookup/order-lookup.tsx?72d3","webpack://msdyn365-lxs-master-theme/./src/modules/order-lookup/order-lookup.view.tsx?b8e5","webpack://msdyn365-lxs-master-theme/./src/modules/subscribe/subscribe.tsx?9fea","webpack://msdyn365-lxs-master-theme/./src/modules/subscribe/subscribe.view.tsx?19c8","webpack://msdyn365-lxs-master-theme/./src/modules/tile-list-item/components/links.tsx?c969","webpack://msdyn365-lxs-master-theme/./src/modules/tile-list-item/tile-list-item.tsx?114a","webpack://msdyn365-lxs-master-theme/./src/modules/tile-list-item/tile-list-item.view.tsx?19a8","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/components/carticon.component.tsx?3c7c","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/components/promocode.component.tsx?c06b","webpack://msdyn365-lxs-master-theme/./node_modules/@msdyn365-commerce-theme/adventureworks-theme-kit/node_modules/tslib/tslib.es6.js?f168","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/components/navigation-menu-utilities.tsx?d092","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/components/navigation-menu-root-disabled.tsx?1d68","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/components/navigation-menu-root-enabled.tsx?d5b3","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/navigation-menu.view.tsx?5304","webpack://msdyn365-lxs-master-theme/./src/modules/adventureworks/views/order-template-list.view.tsx?46b6","webpack://msdyn365-lxs-master-theme/./node_modules/@msdyn365-commerce-modules/order-management/node_modules/tslib/tslib.es6.js?cb0b"],"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\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IHeaderViewProps } from './components/header';\r\n\r\nconst headerView: React.FC = props => {\r\n const {\r\n HeaderTag,\r\n HeaderContainer,\r\n HeaderTopBarContainer,\r\n //MobileMenuContainer,\r\n //MobileMenuBodyContainer,\r\n //MobileMenuLinksContainer,\r\n Divider\r\n } = props;\r\n return (\r\n \r\n \r\n \r\n {props.logo}\r\n {_renderReactFragment(props.menuBar)}\r\n \r\n {props.preferredStore}\r\n {_renderReactFragment(props.siteOptions)}\r\n {_renderDesktopAccountBlock(props)}\r\n {props.cartIcon}\r\n \r\n {/* This creates hidden modal menus\r\n \r\n \r\n {props.MobileMenuHeader}\r\n \r\n {props.accountLinks ? props.accountLinks.map(link => link) : false}\r\n {props.siteOptions}\r\n {props.signInLink}\r\n {props.signOutLink}\r\n \r\n \r\n {_renderReactFragment(props.menuBar)}\r\n \r\n */}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction _renderDesktopAccountBlock(props: IHeaderViewProps): JSX.Element | null {\r\n const {\r\n AccountInfoDropdownParentContainer,\r\n AccountInfoDropdownPopoverConentContainer,\r\n accountInfoDropdownButton,\r\n signOutLink,\r\n signInLink,\r\n accountLinks\r\n } = props;\r\n\r\n if (AccountInfoDropdownParentContainer && !props.config.shouldHideShowSignInSignOutLink) {\r\n if (AccountInfoDropdownPopoverConentContainer) {\r\n return (\r\n \r\n {accountInfoDropdownButton}\r\n \r\n {accountLinks ? accountLinks.map(link => link) : false}\r\n {signOutLink}\r\n \r\n \r\n );\r\n } else if (signInLink) {\r\n return {signInLink};\r\n }\r\n }\r\n props.context.telemetry.error('Header content is empty, module wont render.');\r\n return null;\r\n}\r\n\r\nfunction _renderReactFragment(items: React.ReactNode[]): JSX.Element | null {\r\n return (\r\n <>\r\n {items && items.length > 0\r\n ? items.map((slot: React.ReactNode, index: number) => {\r\n return {slot};\r\n })\r\n : null}\r\n \r\n );\r\n}\r\n\r\nexport default headerView;\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 * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { INavigationMenuViewProps } from '@msdyn365-commerce-modules/navigation-menu/src/modules/navigation-menu/./navigation-menu';\r\nimport { generateImageUrl } from '@msdyn365-commerce-modules/retail-actions';\r\nimport * as React from 'react';\r\n\r\nimport { INavigationMenuProps } from '../../definition-extensions/navigation-menu.ext.props.autogenerated';\r\n\r\nexport interface INosNavigationMenuViewRootProps {\r\n navProps: INavigationMenuViewProps & INavigationMenuProps<{}>;\r\n}\r\n\r\n/**\r\n * Represent navigation menu state interface.\r\n */\r\nexport interface INavigationState {\r\n parentMenu?: number;\r\n activeMenu?: number;\r\n categoryImage?: Msdyn365.IImageData[] | null;\r\n mobileViewLabelText?: string;\r\n drawerKeyValue: Msdyn365.IDictionary;\r\n isOnlyMobile: boolean;\r\n isNavOpen: boolean;\r\n menuItemId?: number;\r\n}\r\n\r\n/**\r\n * NavMenuConstants enum.\r\n */\r\nexport enum NavMenuConstants {\r\n zero = 0,\r\n one = 1,\r\n two = 2,\r\n three = 3,\r\n four = 4,\r\n escapeKey = 27,\r\n rootMenu = 1\r\n}\r\n\r\n/**\r\n * GridSizes.\r\n */\r\nexport type GridSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\r\n\r\n/**\r\n * Get category image.\r\n * @param props - Navigation menu props.\r\n * @param categoryImage - Category Image.\r\n * @param alttext - AltText String.\r\n * @returns Returns Node.\r\n */\r\n\r\nexport const getCategoryImage = (\r\n props: INosNavigationMenuViewRootProps,\r\n categoryImage: string,\r\n alttext: string\r\n): React.ReactNode | null => {\r\n const categoryImageUrl = generateImageUrl(`${categoryImage}`, props.navProps.context.actionContext.requestContext.apiSettings);\r\n const defaultImageSettings: Msdyn365.IImageSettings = {\r\n viewports: {\r\n xs: { q: 'w=162&h=162&m=8', w: 0, h: 0 },\r\n sm: { q: 'w=162&h=162&m=8', w: 0, h: 0 },\r\n md: { q: 'w=203&h=203&m=8', w: 0, h: 0 },\r\n lg: { q: 'w=203&h=203&m=8', w: 0, h: 0 }\r\n },\r\n lazyload: true\r\n };\r\n if (categoryImageUrl !== undefined) {\r\n const imageData: Msdyn365.IImageData = { src: categoryImageUrl };\r\n return (\r\n \r\n );\r\n }\r\n return null;\r\n\r\n};\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 * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { IMenuItemData, MenuTypeIndexId } from '@msdyn365-commerce-modules/navigation-menu';\r\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport {\r\n addThrottledEvent,\r\n Button,\r\n Collapse,\r\n Drawer,\r\n getPayloadObject,\r\n getTelemetryAttributes,\r\n getTelemetryObject,\r\n ICollapseProps,\r\n IPayLoad,\r\n isMobile,\r\n ITelemetryContent,\r\n Module,\r\n Node,\r\n onTelemetryClick,\r\n VariantType\r\n} from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport { computed } from 'mobx';\r\nimport * as React from 'react';\r\n\r\nimport { getCategoryImage, INosNavigationMenuViewRootProps, INavigationState, NavMenuConstants } from './navigation-menu-utilities';\r\n\r\n/**\r\n *\r\n * NavigationMenuRootDisabled component.\r\n * @extends {React.PureComponent}\r\n */\r\nexport class NavigationMenuRootDisabled extends React.PureComponent {\r\n private static isBackTrack: boolean = false;\r\n\r\n private readonly supportedLevel: number = NavMenuConstants.four;\r\n\r\n private currentLevel: number = NavMenuConstants.zero;\r\n\r\n private readonly menuNode: React.RefObject;\r\n\r\n private readonly menuItemRef: React.RefObject;\r\n\r\n private readonly escapeKey: number = NavMenuConstants.escapeKey;\r\n\r\n private readonly telemetryContent: ITelemetryContent;\r\n\r\n private readonly promotionalImage: Msdyn365.IImageData[] = [];\r\n\r\n private readonly payLoad: IPayLoad;\r\n\r\n private readonly attributes?: Msdyn365.IDictionary;\r\n\r\n private customResizeThrottledEventHandler?: (event: Event) => void;\r\n\r\n public constructor(props: INosNavigationMenuViewRootProps) {\r\n super(props);\r\n this.menuNode = React.createRef();\r\n this.menuItemRef = React.createRef();\r\n const { menuItemData } = this.props.navProps;\r\n if (ArrayExtensions.hasElements(menuItemData) && ArrayExtensions.hasElements(menuItemData[0].subMenu)) {\r\n const imagesource = menuItemData[0].subMenu[0].imageSource ? menuItemData[0].subMenu[0].imageSource : '';\r\n const linkText = menuItemData[0].subMenu[0].linkText ? menuItemData[0].subMenu[0].linkText : '';\r\n this.promotionalImage = [{ src: imagesource, altText: linkText }];\r\n\r\n // Read category and promotional image in one array\r\n if (ArrayExtensions.hasElements(menuItemData[0].subMenu[0].promotionalContent)) {\r\n menuItemData[0].subMenu[0].promotionalContent.map(item => {\r\n const imageSource = item.image.src;\r\n this.promotionalImage.push({\r\n src: imageSource,\r\n altText: item.text,\r\n additionalProperties: { linkUrl: item.linkUrl.destinationUrl }\r\n });\r\n return null;\r\n });\r\n }\r\n }\r\n\r\n this.state = {\r\n activeMenu: 1,\r\n mobileViewLabelText: '',\r\n parentMenu: undefined,\r\n drawerKeyValue: {},\r\n isOnlyMobile: false,\r\n categoryImage: this.promotionalImage,\r\n isNavOpen: false,\r\n menuItemId: -1\r\n };\r\n this.telemetryContent = getTelemetryObject(\r\n this.props.navProps.context.request.telemetryPageName!,\r\n this.props.navProps.friendlyName,\r\n this.props.navProps.telemetry\r\n );\r\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\r\n this.attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\r\n }\r\n\r\n @computed public get isOnlyMobile(): boolean {\r\n const screenMode = isMobile({ variant: VariantType.Browser, context: this.props.navProps.context.request });\r\n return ['xs', 'sm', 'md'].includes(screenMode);\r\n }\r\n\r\n public componentDidMount(): void {\r\n this.customResizeThrottledEventHandler = addThrottledEvent(window, 'resize', this._customUpdateViewport as EventListener);\r\n document.addEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\r\n this._customUpdateViewport();\r\n document.body.addEventListener('mousedown', this._handleClickOutside);\r\n }\r\n\r\n public componentDidUpdate(): void {\r\n if (this.menuItemRef.current?.children[0] && this.props.navProps.isMobileView) {\r\n (this.menuItemRef.current.children[0] as HTMLElement).focus();\r\n }\r\n }\r\n\r\n public componentWillUnmount(): void {\r\n window.removeEventListener('resize', this.customResizeThrottledEventHandler!, false);\r\n document.body.removeEventListener('mousedown', this._handleClickOutside, false);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n this.currentLevel = 1;\r\n const navbarKey = 'header-nav-mobile';\r\n\r\n return (\r\n
\r\n \r\n {this.state.isOnlyMobile ? (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {this._renderCollapseMenu()}\r\n \r\n ) : (\r\n <>\r\n {this._createDesktopHeaderLinks()}\r\n {this._renderCollapseMenu()}\r\n \r\n )}\r\n \r\n
\r\n );\r\n }\r\n\r\n /**\r\n * Function to handle nav bar toggle.\r\n */\r\n private readonly _toggleNavBar = (): void => {\r\n this.setState(previousState => ({\r\n activeMenu: undefined,\r\n isNavOpen: !previousState.isNavOpen\r\n }));\r\n };\r\n\r\n private _createDesktopHeaderLinks = () => {\r\n return this.props.navProps?.menuItemData?.length ? (\r\n
    \r\n {this.props.navProps.menuItemData.map((link, index) => {\r\n return link?.subMenu?.length ? (\r\n
  • \r\n {\r\n this._toggleNavBar();\r\n this.setState({ menuItemId: link.id });\r\n }}\r\n key={index}\r\n className={` ${this.state.isNavOpen ? 'open' : ''} ${this.state.isNavOpen ? 'active' : ''}`}\r\n >\r\n {link.linkText}\r\n \r\n
  • \r\n ) : (\r\n
  • {this._createLink(link, index)}
  • \r\n );\r\n })}\r\n
\r\n ) : null;\r\n };\r\n\r\n private _createLink = (link: IMenuItemData, index: number) => {\r\n const editableLink: Msdyn365.ILinksData = {\r\n ariaLabel: link.ariaLabel,\r\n className: 'ms-header__header-link',\r\n linkText: link.linkText,\r\n linkUrl: link.linkURL,\r\n openInNewTab: false,\r\n role: 'link'\r\n };\r\n return ;\r\n };\r\n\r\n private _renderCollapseMenu(): JSX.Element | null {\r\n return (\r\n \r\n {this.state.isOnlyMobile ? this._renderMobileMenu() : this._renderDesktopMenu()}\r\n \r\n );\r\n }\r\n\r\n private _renderMobileMenu(): JSX.Element {\r\n const { MenuList, MobileBackButton, MobileDescriptionContainer, MobileDescriptionLabel, Navigation } = this.props.navProps;\r\n\r\n this.currentLevel = 1;\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n \r\n {this.state.isOnlyMobile && 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\r\n private _renderDesktopMenu(): JSX.Element {\r\n const { MenuList, Navigation } = this.props.navProps;\r\n\r\n return (\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 private _renderDrawerLink(item: IMenuItemData): JSX.Element | null {\r\n if (item.linkURL && !StringExtensions.isNullOrWhitespace(item.linkURL)) {\r\n return this._renderLinkMenuItem(item);\r\n } else if (!item.linkURL) {\r\n return this._renderSpanMenuItem(item);\r\n }\r\n return null;\r\n }\r\n\r\n private _renderDisplay(): JSX.Element[] {\r\n const { ListItem } = this.props.navProps;\r\n const menuItemData: IMenuItemData[] = this.props.navProps.menuItemData;\r\n const { activeMenu } = this.state;\r\n const menuItemList: JSX.Element[] = [];\r\n\r\n if (ArrayExtensions.hasElements(menuItemData)) {\r\n menuItemData[0].id = 1;\r\n }\r\n\r\n if (this.state.isOnlyMobile && activeMenu !== undefined && ArrayExtensions.hasElements(menuItemData)) {\r\n const menuItem = this._getFromSubMenu(undefined, menuItemData);\r\n\r\n if (menuItem) {\r\n menuItemList.push(\r\n \r\n {this._createMenuItemList(menuItem)} {` `}\r\n \r\n );\r\n }\r\n } else {\r\n if (this.state.isOnlyMobile) {\r\n for (const [index, item] of menuItemData.entries()) {\r\n menuItemList.push(\r\n \r\n {this._createMenuItemList(item)}\r\n
\r\n );\r\n }\r\n } else {\r\n for (const [, menuItem] of menuItemData.entries()) {\r\n if (menuItem.id === this.state.menuItemId && menuItem.subMenu?.length) {\r\n for (const [index, subMenuItem] of menuItem.subMenu.entries()) {\r\n menuItemList.push(\r\n \r\n {this._createMenuItemList(subMenuItem)}\r\n \r\n );\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return menuItemList;\r\n }\r\n\r\n private _getFromSubMenu(parentMenuId?: number, menu?: IMenuItemData[]): IMenuItemData | null {\r\n if (!menu) {\r\n return null;\r\n }\r\n\r\n for (let index = 0; index <= menu.length - NavMenuConstants.one; index++) {\r\n const item: IMenuItemData = menu[Number(index)];\r\n\r\n if (item.id === this.state.activeMenu) {\r\n if (!NavigationMenuRootDisabled.isBackTrack) {\r\n this.setState({ parentMenu: parentMenuId });\r\n } else {\r\n this.setState({ parentMenu: parentMenuId, mobileViewLabelText: item.linkText });\r\n }\r\n return item;\r\n }\r\n const found = this._getFromSubMenu(item.id, item.subMenu);\r\n if (found) {\r\n return found;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private _createMenuItemList(menuItemData: IMenuItemData): JSX.Element | null {\r\n if (ArrayExtensions.hasElements(menuItemData.subMenu)) {\r\n if (this.state.isOnlyMobile && this.state.activeMenu !== undefined) {\r\n return this._renderSubMenu(menuItemData.subMenu, menuItemData.id, false);\r\n }\r\n\r\n return (\r\n <>\r\n {this._renderButtonMenuItem(menuItemData)}\r\n {this._renderSubMenu(menuItemData.subMenu, menuItemData.id)}\r\n \r\n );\r\n } else if (menuItemData.linkURL && !StringExtensions.isNullOrWhitespace(menuItemData.linkURL)) {\r\n return this._renderLinkMenuItem(menuItemData, menuItemData.id);\r\n } else if (!menuItemData.linkURL && !(this.state.isOnlyMobile && this.state.activeMenu !== undefined)) {\r\n return this._renderSpanMenuItem(menuItemData);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderSubMenu(subMenuArray?: IMenuItemData[], activeMenu?: number, isSubMenu?: boolean): JSX.Element | null {\r\n let subMenus: IMenuItemData[] | undefined = subMenuArray;\r\n if (activeMenu === NavMenuConstants.rootMenu) {\r\n subMenus = subMenuArray!.filter(subMenuItem => subMenuItem.id && subMenuItem.id >= MenuTypeIndexId.Retail);\r\n }\r\n\r\n const { ListItem } = this.props.navProps;\r\n const isEnableMultiSupportMenu = this.props.navProps.config.enableMultilevelMenu ?? false;\r\n const multiLevelSupportedMenu = this.props.navProps.config.menuLevelSupport ?? NavMenuConstants.three;\r\n\r\n if (activeMenu && this.state.activeMenu !== activeMenu) {\r\n this.props.navProps.context.telemetry.error('Navigation Active menu content is empty, module wont render.');\r\n return null;\r\n }\r\n\r\n if (!subMenus || !ArrayExtensions.hasElements(subMenus)) {\r\n this.props.navProps.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 = subMenus.map((option: IMenuItemData, index: number) => {\r\n const hasOptions = option.subMenu && ArrayExtensions.hasElements(option.subMenu);\r\n let menuItem: JSX.Element | null;\r\n if (hasOptions && this.state.isOnlyMobile) {\r\n menuItem = this._renderButtonMenuItem(option, activeMenu, index);\r\n } else if (this.currentLevel === NavMenuConstants.one || !hasOptions) {\r\n menuItem = this.getMenuItem(option, index);\r\n } else {\r\n menuItem = null;\r\n }\r\n let subMenu;\r\n const isHavingSubmenu =\r\n hasOptions && isEnableMultiSupportMenu && this.currentLevel <= Math.round(multiLevelSupportedMenu) - NavMenuConstants.one;\r\n\r\n if (hasOptions && !this.state.isOnlyMobile) {\r\n if (this.currentLevel >= NavMenuConstants.two) {\r\n subMenu = this._renderSubMenuDrawer(option);\r\n } else if (this.currentLevel <= this.supportedLevel) {\r\n this.currentLevel++;\r\n levelClassName = `level-${this.currentLevel.toString()}`;\r\n subMenu = this._renderSubMenu(option.subMenu, undefined, true);\r\n }\r\n }\r\n\r\n if (isHavingSubmenu && this.state.isOnlyMobile) {\r\n this.currentLevel++;\r\n levelClassName = isEnableMultiSupportMenu ? `level-${this.currentLevel.toString()}` : '';\r\n subMenu = this._renderSubMenu(option.subMenu, option.id, true);\r\n }\r\n const imagesource = option.imageSource ? option.imageSource : '';\r\n return (\r\n \r\n {menuItem}\r\n {subMenu}\r\n \r\n );\r\n });\r\n return this._renderMenu(levelClassName, menuOptions, isSubMenu);\r\n }\r\n\r\n private getMenuItem(option: IMenuItemData, index: number): JSX.Element | null {\r\n let menuItem: JSX.Element | null;\r\n if (this.currentLevel === NavMenuConstants.one) {\r\n menuItem = option.linkURL ? this._renderLinkMenuItemLevelOne(option, index) : this._renderSpanMenuItem(option);\r\n } else {\r\n menuItem = option.linkURL ? this._renderLinkMenuItem(option, index) : this._renderSpanMenuItem(option);\r\n }\r\n return menuItem;\r\n }\r\n\r\n private _renderSubMenuDrawer(menuItem: IMenuItemData): JSX.Element | null {\r\n const levelClassName = `level-${this.currentLevel.toString()}`;\r\n const toggleButtonText = menuItem.linkText;\r\n const keyValue = this.state.drawerKeyValue;\r\n const buttonText = toggleButtonText !== undefined ? toggleButtonText : '';\r\n const keys = keyValue;\r\n const multiLevelSupportedMenu = this.props.navProps.config.menuLevelSupport ?? NavMenuConstants.three;\r\n\r\n let isDrawerOpen = false;\r\n if (keys[menuItem.id!]) {\r\n isDrawerOpen = true;\r\n }\r\n const colProps: ICollapseProps = { timeout: 0, isOpen: isDrawerOpen };\r\n\r\n return (\r\n \r\n
\r\n {menuItem.subMenu!.map((menuSubItem: IMenuItemData) => {\r\n if (ArrayExtensions.hasElements(menuSubItem.subMenu)) {\r\n this.currentLevel++;\r\n if (this.currentLevel < multiLevelSupportedMenu) {\r\n return this._renderSubMenuDrawer(menuSubItem);\r\n }\r\n }\r\n return this._renderDrawerLink(menuSubItem);\r\n })}\r\n
\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Method to handle escape key event.\r\n * @param menuId -Number.\r\n * @param isDrawerOpen -Boolean.\r\n * @returns Void.\r\n */\r\n private readonly _bindDesktopCategoryClick = (menuId: number | undefined, isDrawerOpen: boolean) => (): void => {\r\n const { drawerKeyValue } = this.state;\r\n const newPair = { [menuId!]: !isDrawerOpen };\r\n this.setState({ drawerKeyValue: { ...drawerKeyValue, ...newPair } });\r\n };\r\n\r\n private _renderButtonMenuItem(option: IMenuItemData, activeMenu?: number, index?: number): JSX.Element | null {\r\n return (\r\n \r\n {option.linkText}\r\n \r\n );\r\n }\r\n\r\n private _renderLinkMenuItem(option: IMenuItemData, index?: number): JSX.Element | null {\r\n const { Link } = this.props.navProps;\r\n const linkText = option.linkText ? option.linkText : '';\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 _renderLinkMenuItemLevelOne(option: IMenuItemData, index?: number, isHoverEffect: boolean = true): JSX.Element | null {\r\n const { Link } = this.props.navProps;\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.navProps;\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): JSX.Element | null {\r\n const { Span } = this.props.navProps;\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[], isSubmenu?: boolean): JSX.Element | null {\r\n const { DivContainer, MenuList, ImageDivContainer, showCategoryImage, showPromotionalContent } = this.props.navProps;\r\n const isCategoryImageDisplay =\r\n !this.state.isOnlyMobile &&\r\n showCategoryImage &&\r\n this.state.categoryImage !== null &&\r\n this.state.categoryImage !== undefined &&\r\n !isSubmenu;\r\n const isPromotionalContentDisplay =\r\n !this.state.isOnlyMobile && showPromotionalContent && ArrayExtensions.hasElements(this.state.categoryImage) && !isSubmenu;\r\n const divContainerClass =\r\n this.currentLevel > NavMenuConstants.two || isCategoryImageDisplay ? DivContainer!.className : 'ms-nav__default';\r\n this.currentLevel = NavMenuConstants.one;\r\n const menuLevelSupportClassName =\r\n isCategoryImageDisplay &&\r\n this.props.navProps.config.menuLevelSupport &&\r\n this.props.navProps.config.menuLevelSupport > NavMenuConstants.two &&\r\n 'navmenu-multi-level';\r\n\r\n const categoryImages = this.state.categoryImage?.filter(image => !StringExtensions.isNullOrWhitespace(image.src));\r\n const imagesContainerKey = categoryImages?.map(item => item.src).join('-');\r\n return (\r\n \r\n \r\n {menuOptions}\r\n \r\n
\r\n {isCategoryImageDisplay &&\r\n ArrayExtensions.hasElements(categoryImages) &&\r\n categoryImages.map(item => (\r\n \r\n {getCategoryImage(this.props, item.src ?? '', item.altText!.toString())}\r\n {isPromotionalContentDisplay &&\r\n this._renderPromotionalLink(item.altText, item.additionalProperties?.linkUrl)}\r\n \r\n ))}\r\n
\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handle Category image update.\r\n * @param categoryImageSource - Image source.\r\n * @param option - Menu Item data.\r\n * @returns Returns empty.\r\n */\r\n private readonly _updateCategoryImage = (categoryImageSource: string, option: IMenuItemData) => () => {\r\n const linkText = option.linkText ? option.linkText : '';\r\n const promotionalImage: Msdyn365.IImageData[] = [{ src: categoryImageSource, altText: linkText }];\r\n\r\n // Read category and promotional image in one array\r\n if (ArrayExtensions.hasElements(option.promotionalContent)) {\r\n for (const item of option.promotionalContent) {\r\n const imageSource = item.image.src;\r\n promotionalImage.push({\r\n src: imageSource,\r\n altText: item.text,\r\n additionalProperties: { linkUrl: item.linkUrl.destinationUrl }\r\n });\r\n }\r\n }\r\n this.setState({\r\n categoryImage: ArrayExtensions.hasElements(promotionalImage) ? promotionalImage : [{ src: 'empty' }]\r\n });\r\n };\r\n\r\n /**\r\n * Handle dropdown toggle.\r\n * @param data - Menu Item data.\r\n * @param parentId - Number.\r\n * @returns Returns empty.\r\n */\r\n private readonly _handleDropdownToggle = (data: IMenuItemData, parentId?: number) => () => {\r\n if (!this.state.isOnlyMobile) {\r\n this.setState({\r\n activeMenu: data.id,\r\n parentMenu: parentId\r\n });\r\n if (this.props.navProps.showCategoryImage) {\r\n this._updateCategoryImage(data.imageSource!, data)();\r\n }\r\n } else {\r\n NavigationMenuRootDisabled.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 /**\r\n * Handle back navigation for menu items for mobile view.\r\n * @returns Returns empty.\r\n */\r\n private readonly _handleGoBack = () => () => {\r\n NavigationMenuRootDisabled.isBackTrack = true;\r\n this.setState(previousState => ({ activeMenu: previousState.parentMenu }));\r\n };\r\n\r\n /**\r\n * Function to close the nav menu on click on body.\r\n * @param event - MouseEvent.\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 if (!this.state.isOnlyMobile) {\r\n this.setState({ activeMenu: 1, mobileViewLabelText: '', isNavOpen: false });\r\n } else {\r\n this.setState({ activeMenu: undefined, mobileViewLabelText: '', isNavOpen: false });\r\n }\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 -Mobile view label text.\r\n * @param optionLinkText -Sub menu item link text.\r\n * @returns Boolean.\r\n */\r\n private readonly _shouldAddFocusMenuRef = (index: number, mobileViewLabelText?: string, optionLinkText?: string) => {\r\n const firstIndex: number = 0;\r\n if (!NavigationMenuRootDisabled.isBackTrack && index === firstIndex) {\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 /**\r\n * Function to handle nav menu close.\r\n */\r\n private readonly _closeNavMenu = (): void => {\r\n if (!this.state.isOnlyMobile) {\r\n this.setState({ activeMenu: 1, mobileViewLabelText: '', isNavOpen: false });\r\n } else {\r\n this.setState({ activeMenu: undefined, mobileViewLabelText: '', isNavOpen: false });\r\n }\r\n (this.menuNode.current?.children[0] as HTMLElement).focus();\r\n };\r\n\r\n /**\r\n * Function to close the nav menu on esc key.\r\n * @param event - Event.\r\n */\r\n private readonly _escFunction = (event: React.KeyboardEvent) => {\r\n if (event.keyCode === this.escapeKey && !this.state.isOnlyMobile && this.state.isNavOpen) {\r\n this.setState({ activeMenu: 1, mobileViewLabelText: '', isNavOpen: false });\r\n (this.menuNode.current?.children[0] as HTMLElement).focus();\r\n }\r\n };\r\n\r\n /**\r\n * Custom update viewport.\r\n */\r\n private readonly _customUpdateViewport = (): void => {\r\n this.setState({ isOnlyMobile: this.isOnlyMobile });\r\n };\r\n}\r\n\r\nexport default NavigationMenuRootDisabled;\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 * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { IMenuItemData, MenuSource, MenuTypeIndexId } from '@msdyn365-commerce-modules/navigation-menu';\r\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport {\r\n addThrottledEvent,\r\n Button,\r\n Collapse,\r\n Drawer,\r\n getPayloadObject,\r\n getTelemetryAttributes,\r\n getTelemetryObject,\r\n ICollapseProps,\r\n IPayLoad,\r\n isMobile,\r\n ITelemetryContent,\r\n Module,\r\n Node,\r\n onTelemetryClick,\r\n VariantType\r\n} from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport { computed } from 'mobx';\r\nimport * as React from 'react';\r\n\r\nimport { getCategoryImage, INosNavigationMenuViewRootProps, INavigationState, NavMenuConstants } from './navigation-menu-utilities';\r\n\r\n/**\r\n *\r\n * NavigationMenuRootEnabled component.\r\n * @extends {React.PureComponent}\r\n */\r\nexport class NavigationMenuRootEnabled extends React.PureComponent {\r\n private static isBackTrack: boolean = false;\r\n\r\n private readonly supportedLevel: number = NavMenuConstants.four;\r\n\r\n private currentLevel: number = NavMenuConstants.zero;\r\n\r\n private readonly menuNode: React.RefObject;\r\n\r\n private readonly menuItemRef: React.RefObject;\r\n\r\n private readonly escapeKey: number = NavMenuConstants.escapeKey;\r\n\r\n private readonly telemetryContent: ITelemetryContent;\r\n\r\n private readonly promotionalImage: Msdyn365.IImageData[] = [];\r\n\r\n private menuItemData: IMenuItemData[] = [];\r\n\r\n private readonly payLoad: IPayLoad;\r\n\r\n private readonly attributes?: Msdyn365.IDictionary;\r\n\r\n private customResizeThrottledEventHandler?: (event: Event) => void;\r\n\r\n public constructor(props: INosNavigationMenuViewRootProps) {\r\n super(props);\r\n this.menuNode = React.createRef();\r\n this.menuItemRef = React.createRef();\r\n const { menuItemData } = this.props.navProps;\r\n if (ArrayExtensions.hasElements(menuItemData) && ArrayExtensions.hasElements(menuItemData[0].subMenu)) {\r\n const imagesource = menuItemData[0].subMenu[0].imageSource ? menuItemData[0].subMenu[0].imageSource : '';\r\n const linkText = menuItemData[0].subMenu[0].linkText ? menuItemData[0].subMenu[0].linkText : '';\r\n this.promotionalImage = [{ src: imagesource, altText: linkText }];\r\n\r\n // Read category and promotional image in one array\r\n if (ArrayExtensions.hasElements(menuItemData[0].subMenu[0].promotionalContent)) {\r\n menuItemData[0].subMenu[0].promotionalContent.map(item => {\r\n const imageSource = item.image.src;\r\n this.promotionalImage.push({\r\n src: imageSource,\r\n altText: item.text,\r\n additionalProperties: { linkUrl: item.linkUrl.destinationUrl }\r\n });\r\n return null;\r\n });\r\n }\r\n }\r\n this.state = {\r\n activeMenu: NavMenuConstants.rootMenu,\r\n mobileViewLabelText: '',\r\n parentMenu: undefined,\r\n drawerKeyValue: {},\r\n isOnlyMobile: this.isOnlyMobile,\r\n categoryImage: this.promotionalImage,\r\n isNavOpen: false\r\n };\r\n\r\n this.telemetryContent = getTelemetryObject(\r\n this.props.navProps.context.request.telemetryPageName!,\r\n this.props.navProps.friendlyName,\r\n this.props.navProps.telemetry\r\n );\r\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\r\n this.attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\r\n }\r\n\r\n @computed public get isOnlyMobile(): boolean {\r\n return isMobile({ variant: VariantType.Browser, context: this.props.navProps.context.request }) === 'xs';\r\n }\r\n\r\n public componentDidMount(): void {\r\n this.customResizeThrottledEventHandler = addThrottledEvent(window, 'resize', this._customUpdateViewport as EventListener);\r\n document.addEventListener('keydown', (this._escFunction as unknown) as EventListener, false);\r\n this._customUpdateViewport();\r\n document.body.addEventListener('mousedown', this._handleClickOutside);\r\n this._addShopAllLink();\r\n }\r\n\r\n public componentDidUpdate(): void {\r\n if (this.menuItemRef.current?.children[0] && this.props.navProps.isMobileView) {\r\n (this.menuItemRef.current.children[0] as HTMLElement).focus();\r\n }\r\n }\r\n\r\n public componentWillUnmount(): void {\r\n window.removeEventListener('resize', this.customResizeThrottledEventHandler!, false);\r\n document.body.removeEventListener('mousedown', this._handleClickOutside, false);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n this.currentLevel = NavMenuConstants.one;\r\n const navbarKey = 'header-nav-mobile';\r\n return (\r\n \r\n {this.state.isOnlyMobile ? (\r\n this._renderMobileMenu()\r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n\r\n {this._renderCollapseMenu()}\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Function to handle nav bar toggle.\r\n */\r\n private readonly _toggleNavBar = (): void => {\r\n this.setState(previousState => ({\r\n activeMenu: NavMenuConstants.rootMenu,\r\n isNavOpen: !previousState.isNavOpen\r\n }));\r\n };\r\n\r\n private _renderCollapseMenu(): JSX.Element | null {\r\n return (\r\n \r\n {this.state.isOnlyMobile ? this._renderMobileMenu() : this._renderDesktopMenu()}\r\n \r\n );\r\n }\r\n\r\n private _renderMobileMenu(): JSX.Element {\r\n const { MobileBackButton, MobileDescriptionContainer, MobileDescriptionLabel, Navigation } = this.props.navProps;\r\n\r\n this.currentLevel = NavMenuConstants.one;\r\n return (\r\n \r\n \r\n {this.state.isOnlyMobile && 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 private _renderDesktopMenu(): JSX.Element {\r\n const { Navigation } = this.props.navProps;\r\n return (\r\n \r\n \r\n {this._renderDisplay()}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _renderDrawerLink(item: IMenuItemData): JSX.Element | null {\r\n if (item.linkURL && !StringExtensions.isNullOrWhitespace(item.linkURL)) {\r\n return this._renderLinkMenuItem(item);\r\n } else if (!item.linkURL) {\r\n return this._renderSpanMenuItem(item);\r\n }\r\n return null;\r\n }\r\n\r\n private _renderDisplay(): JSX.Element[] {\r\n const { ListItem } = this.props.navProps;\r\n let menuItemData: IMenuItemData[] = [];\r\n if (this.state.isOnlyMobile) {\r\n menuItemData = this.menuItemData;\r\n } else {\r\n menuItemData = this.props.navProps.menuItemData;\r\n }\r\n const { activeMenu } = this.state;\r\n const menuItemList: JSX.Element[] = [];\r\n let cmsMenuData: IMenuItemData[] | undefined = [];\r\n let retailMenuItemData: IMenuItemData[] | undefined = [];\r\n const retailMenuData = JSON.parse(JSON.stringify(menuItemData)) as IMenuItemData[];\r\n\r\n for (const item of retailMenuData) {\r\n retailMenuItemData = item.subMenu!.filter(subMenuItem => subMenuItem.id && subMenuItem.id >= MenuTypeIndexId.Retail);\r\n item.subMenu = retailMenuItemData;\r\n }\r\n\r\n for (const item of menuItemData) {\r\n cmsMenuData = item.subMenu!.filter(subMenuItem => subMenuItem.id && subMenuItem.id < MenuTypeIndexId.Retail);\r\n }\r\n\r\n if (this.state.isOnlyMobile && activeMenu !== undefined && ArrayExtensions.hasElements(menuItemData)) {\r\n let menuItem: IMenuItemData | null = {};\r\n for (const menuItemDatum of menuItemData) {\r\n if (menuItemDatum.id === activeMenu) {\r\n menuItem = menuItemDatum;\r\n if (!NavigationMenuRootEnabled.isBackTrack) {\r\n this.setState({\r\n parentMenu: undefined\r\n });\r\n } else {\r\n this.setState({\r\n parentMenu: undefined,\r\n mobileViewLabelText: menuItemDatum.linkText\r\n });\r\n }\r\n break;\r\n }\r\n menuItem = this._getFromSubMenu(menuItemDatum);\r\n if (menuItem && menuItem.id === activeMenu) {\r\n break;\r\n }\r\n }\r\n\r\n if (menuItem) {\r\n menuItemList.push(\r\n \r\n {` `}\r\n {this._createMenuItemList(menuItem)} {` `}\r\n \r\n );\r\n }\r\n } else {\r\n for (const [index, item] of retailMenuData.entries()) {\r\n menuItemList.push(\r\n \r\n {this._createMenuItemList(item)}\r\n
\r\n );\r\n }\r\n\r\n for (const [index, item] of cmsMenuData.entries()) {\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?.subMenu;\r\n if (subMenus && ArrayExtensions.hasElements(subMenus)) {\r\n for (let index = 0; index <= subMenus.length - NavMenuConstants.one; index++) {\r\n const subMenu: IMenuItemData = subMenus[Number(index)];\r\n let parentMenuId = item?.id;\r\n\r\n if (subMenu.id === this.state.activeMenu) {\r\n if (parentMenuId === NavMenuConstants.rootMenu && subMenu.id! < MenuTypeIndexId.Retail) {\r\n parentMenuId = undefined;\r\n }\r\n\r\n if (!NavigationMenuRootEnabled.isBackTrack) {\r\n this.setState({ parentMenu: parentMenuId });\r\n } else {\r\n this.setState({ parentMenu: parentMenuId, mobileViewLabelText: subMenu.linkText });\r\n }\r\n return subMenu;\r\n }\r\n const found = this._getFromSubMenu(subMenu);\r\n if (found) {\r\n return found;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private _createMenuItemList(menuItemData: IMenuItemData): JSX.Element | null {\r\n if (ArrayExtensions.hasElements(menuItemData.subMenu)) {\r\n if (this.state.isOnlyMobile && this.state.activeMenu !== undefined) {\r\n return this._renderSubMenu(menuItemData.subMenu, menuItemData.id, false);\r\n }\r\n return (\r\n <>\r\n {this._renderButtonMenuItem(menuItemData)}\r\n {this._renderSubMenu(menuItemData.subMenu, menuItemData.id)}\r\n \r\n );\r\n } else if (menuItemData.linkURL && !StringExtensions.isNullOrWhitespace(menuItemData.linkURL)) {\r\n return this._renderLinkMenuItem(menuItemData, menuItemData.id);\r\n } else if (!menuItemData.linkURL) {\r\n return this._renderSpanMenuItem(menuItemData);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderSubMenu(subMenuArray?: IMenuItemData[], activeMenu?: number, isSubMenu?: boolean): JSX.Element | null {\r\n let subMenus: IMenuItemData[] | undefined = subMenuArray;\r\n if (activeMenu === NavMenuConstants.rootMenu) {\r\n subMenus = subMenuArray!.filter(subMenuItem => subMenuItem.id && subMenuItem.id >= MenuTypeIndexId.Retail);\r\n }\r\n\r\n const { ListItem } = this.props.navProps;\r\n const isEnableMultiSupportMenu = this.props.navProps.config.enableMultilevelMenu ?? false;\r\n const multiLevelSupportedMenu = this.props.navProps.config.menuLevelSupport ?? NavMenuConstants.three;\r\n\r\n if (activeMenu && this.state.activeMenu !== activeMenu) {\r\n this.props.navProps.context.telemetry.error('Navigation Active menu content is empty, module wont render.');\r\n return null;\r\n }\r\n\r\n if (!subMenus || !ArrayExtensions.hasElements(subMenus)) {\r\n this.props.navProps.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 = subMenus.map((option: IMenuItemData, index: number) => {\r\n const hasOptions = option.subMenu && ArrayExtensions.hasElements(option.subMenu);\r\n let menuItem: JSX.Element | null;\r\n if (hasOptions && this.state.isOnlyMobile) {\r\n menuItem = this._renderButtonMenuItem(option, activeMenu, index);\r\n } else if (this.currentLevel === NavMenuConstants.one || !hasOptions) {\r\n menuItem = this.getMenuItem(option, index);\r\n } else {\r\n menuItem = null;\r\n }\r\n let subMenu;\r\n const isHavingSubmenu =\r\n hasOptions && isEnableMultiSupportMenu && this.currentLevel <= Math.round(multiLevelSupportedMenu) - NavMenuConstants.one;\r\n\r\n if (hasOptions && !this.state.isOnlyMobile) {\r\n if (this.currentLevel >= NavMenuConstants.two) {\r\n subMenu = this._renderSubMenuDrawer(option);\r\n } else if (this.currentLevel <= this.supportedLevel - NavMenuConstants.one) {\r\n this.currentLevel++;\r\n levelClassName = `level-${this.currentLevel.toString()}`;\r\n subMenu = this._renderSubMenu(option.subMenu, undefined, true);\r\n }\r\n }\r\n if (isHavingSubmenu && this.state.isOnlyMobile) {\r\n this.currentLevel++;\r\n levelClassName = isEnableMultiSupportMenu ? `level-${this.currentLevel.toString()}` : '';\r\n subMenu = this._renderSubMenu(option.subMenu, option.id, true);\r\n }\r\n const imagesource = option.imageSource ? option.imageSource : '';\r\n return (\r\n \r\n {menuItem}\r\n {subMenu}\r\n \r\n );\r\n });\r\n return this._renderMenu(levelClassName, menuOptions, isSubMenu);\r\n }\r\n\r\n private getMenuItem(option: IMenuItemData, index: number): JSX.Element | null {\r\n let menuItem: JSX.Element | null;\r\n if (this.currentLevel === NavMenuConstants.one) {\r\n menuItem = option.linkURL ? this._renderLinkMenuItemLevelOne(option, index) : this._renderSpanMenuItem(option);\r\n } else {\r\n menuItem = option.linkURL ? this._renderLinkMenuItem(option, index) : this._renderSpanMenuItem(option);\r\n }\r\n return menuItem;\r\n }\r\n\r\n private _renderSubMenuDrawer(menuItem: IMenuItemData): JSX.Element | null {\r\n const levelClassName = `level-${this.currentLevel.toString()}`;\r\n const toggleButtonText = menuItem.linkText;\r\n const keyValue = this.state.drawerKeyValue;\r\n const buttonText = toggleButtonText !== undefined ? toggleButtonText : '';\r\n const keys = keyValue;\r\n const multiLevelSupportedMenu = this.props.navProps.config.menuLevelSupport ?? NavMenuConstants.three;\r\n\r\n let isDrawerOpen = false;\r\n if (keys[menuItem.id!]) {\r\n isDrawerOpen = true;\r\n }\r\n const colProps: ICollapseProps = { timeout: 0, isOpen: isDrawerOpen };\r\n return (\r\n \r\n
\r\n {menuItem.subMenu!.map((menuSubItem: IMenuItemData) => {\r\n if (ArrayExtensions.hasElements(menuSubItem.subMenu)) {\r\n this.currentLevel++;\r\n if (this.currentLevel < multiLevelSupportedMenu) {\r\n return this._renderSubMenuDrawer(menuSubItem);\r\n }\r\n }\r\n return this._renderDrawerLink(menuSubItem);\r\n })}\r\n
\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Method to handle escape key event.\r\n * @param menuId -Number.\r\n * @param isDrawerOpen -Boolean.\r\n * @returns Void.\r\n */\r\n private readonly _bindDesktopCategoryClick = (menuId: number | undefined, isDrawerOpen: boolean) => (): void => {\r\n const { drawerKeyValue } = this.state;\r\n const newPair = { [menuId!]: !isDrawerOpen };\r\n this.setState({ drawerKeyValue: { ...drawerKeyValue, ...newPair } });\r\n };\r\n\r\n private _renderButtonMenuItem(option: IMenuItemData, activeMenu?: number, index?: number): JSX.Element | null {\r\n return (\r\n \r\n {option.linkText}\r\n \r\n );\r\n }\r\n\r\n private _renderLinkMenuItem(option: IMenuItemData, index?: number): JSX.Element | null {\r\n const { Link } = this.props.navProps;\r\n const linkText = option.linkText ? option.linkText : '';\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 _renderLinkMenuItemLevelOne(option: IMenuItemData, index?: number, isHoverEffect: boolean = true): JSX.Element | null {\r\n const { Link } = this.props.navProps;\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.navProps;\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): JSX.Element | null {\r\n const { Span } = this.props.navProps;\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[], isSubmenu?: boolean): JSX.Element | null {\r\n const { DivContainer, ImageDivContainer, showCategoryImage, showPromotionalContent } = this.props.navProps;\r\n const isCategoryImageDisplay =\r\n !this.state.isOnlyMobile &&\r\n showCategoryImage &&\r\n this.state.categoryImage !== null &&\r\n this.state.categoryImage !== undefined &&\r\n !isSubmenu;\r\n const isPromotionalContentDisplay =\r\n !this.state.isOnlyMobile && showPromotionalContent && ArrayExtensions.hasElements(this.state.categoryImage) && !isSubmenu;\r\n const divContainerClass =\r\n this.currentLevel > NavMenuConstants.two || isCategoryImageDisplay ? DivContainer!.className : 'ms-nav__default';\r\n this.currentLevel = NavMenuConstants.one;\r\n const menuLevelSupportClassName =\r\n isCategoryImageDisplay &&\r\n this.props.navProps.config.menuLevelSupport &&\r\n this.props.navProps.config.menuLevelSupport > NavMenuConstants.two &&\r\n 'navmenu-multi-level';\r\n\r\n const categoryImages = this.state.categoryImage?.filter(image => !StringExtensions.isNullOrWhitespace(image.src));\r\n const imagesContainerKey = categoryImages?.map(item => item.src).join('-');\r\n return (\r\n \r\n \r\n {menuOptions}\r\n \r\n
\r\n {isCategoryImageDisplay &&\r\n ArrayExtensions.hasElements(categoryImages) &&\r\n categoryImages.map(item => (\r\n \r\n {getCategoryImage(this.props, item.src ?? '', item.altText!.toString())}\r\n {isPromotionalContentDisplay &&\r\n this._renderPromotionalLink(item.altText, item.additionalProperties?.linkUrl)}\r\n \r\n ))}\r\n
\r\n \r\n );\r\n }\r\n\r\n /**\r\n * Handle Category image update.\r\n * @param categoryImageSource - Image source.\r\n * @param option - Menu Item data.\r\n * @returns Returns empty.\r\n */\r\n private readonly _updateCategoryImage = (categoryImageSource: string, option: IMenuItemData) => () => {\r\n const linkText = option.linkText ? option.linkText : '';\r\n const promotionalImage: Msdyn365.IImageData[] = [{ src: categoryImageSource, altText: linkText }];\r\n\r\n // Read category and promotional image in one array\r\n if (ArrayExtensions.hasElements(option.promotionalContent)) {\r\n for (const item of option.promotionalContent) {\r\n const imageSource = item.image.src;\r\n promotionalImage.push({\r\n src: imageSource,\r\n altText: item.text,\r\n additionalProperties: { linkUrl: item.linkUrl.destinationUrl }\r\n });\r\n }\r\n }\r\n this.setState({\r\n categoryImage: ArrayExtensions.hasElements(promotionalImage) ? promotionalImage : [{ src: 'empty' }]\r\n });\r\n };\r\n\r\n /**\r\n * Handle dropdown toggle.\r\n * @param data - Menu Item data.\r\n * @param parentId - Number.\r\n * @returns Returns empty.\r\n */\r\n private readonly _handleDropdownToggle = (data: IMenuItemData, parentId?: number) => () => {\r\n if (!this.state.isOnlyMobile) {\r\n this.setState({\r\n activeMenu: data.id,\r\n parentMenu: parentId\r\n });\r\n if (this.props.navProps.showCategoryImage) {\r\n this._updateCategoryImage(data.imageSource!, data)();\r\n }\r\n } else {\r\n NavigationMenuRootEnabled.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 /**\r\n * Handle back navigation for menu items for mobile view.\r\n * @returns Returns empty.\r\n */\r\n private readonly _handleGoBack = () => () => {\r\n NavigationMenuRootEnabled.isBackTrack = true;\r\n this.setState(previousState => ({ activeMenu: previousState.parentMenu }));\r\n };\r\n\r\n /**\r\n * Function to close the nav menu on click on body.\r\n * @param event - MouseEvent.\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 if (!this.state.isOnlyMobile) {\r\n this.setState({ activeMenu: NavMenuConstants.rootMenu, mobileViewLabelText: '', isNavOpen: false });\r\n } else {\r\n this.setState({ activeMenu: undefined, mobileViewLabelText: '', isNavOpen: false });\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Add shop all link for Mobile submenu.\r\n */\r\n private readonly _addShopAllLink = (): void => {\r\n const { menuItemData } = this.props.navProps;\r\n this.menuItemData = menuItemData;\r\n if (ArrayExtensions.hasElements(menuItemData) && ArrayExtensions.hasElements(menuItemData[0].subMenu)) {\r\n this.menuItemData[0].subMenu?.map(item => {\r\n const shopAllObject = {};\r\n Object.assign(shopAllObject, { imageSource: item.imageSource });\r\n Object.assign(shopAllObject, { linkText: this.props.navProps.resources.allCategoryMenuText });\r\n Object.assign(shopAllObject, { linkURL: item.linkURL });\r\n if (ArrayExtensions.hasElements(item.subMenu) && item.menuSource === MenuSource.Retail) {\r\n item.subMenu.unshift(shopAllObject);\r\n }\r\n return item;\r\n });\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 -Mobile view label text.\r\n * @param optionLinkText -Sub menu item link text.\r\n * @returns Boolean.\r\n */\r\n private readonly _shouldAddFocusMenuRef = (index: number, mobileViewLabelText?: string, optionLinkText?: string) => {\r\n const firstIndex: number = 0;\r\n if (!NavigationMenuRootEnabled.isBackTrack && index === firstIndex) {\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 /**\r\n * Function to handle nav menu close.\r\n */\r\n private readonly _closeNavMenu = (): void => {\r\n if (!this.state.isOnlyMobile) {\r\n this.setState({ activeMenu: NavMenuConstants.rootMenu, mobileViewLabelText: '', isNavOpen: false });\r\n } else {\r\n this.setState({ activeMenu: undefined, mobileViewLabelText: '', isNavOpen: false });\r\n }\r\n };\r\n\r\n /**\r\n * Function to close the nav menu on esc key.\r\n * @param event - Event.\r\n */\r\n private readonly _escFunction = (event: React.KeyboardEvent) => {\r\n if (event.keyCode === this.escapeKey && !this.state.isOnlyMobile && this.state.isNavOpen) {\r\n this.setState({ activeMenu: NavMenuConstants.rootMenu, mobileViewLabelText: '', isNavOpen: false });\r\n }\r\n };\r\n\r\n /**\r\n * Custom update viewport.\r\n */\r\n private readonly _customUpdateViewport = (): void => {\r\n this.setState({ isOnlyMobile: this.isOnlyMobile });\r\n };\r\n}\r\n\r\nexport default NavigationMenuRootEnabled;\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 { INavigationMenuViewProps } from '@msdyn365-commerce-modules/navigation-menu';\r\nimport * as React from 'react';\r\nimport { INavigationMenuProps } from '../definition-extensions/navigation-menu.ext.props.autogenerated';\r\nimport NavigationMenuRootDisabled from './components/navigation-menu-root-disabled';\r\nimport NavigationMenuRootEnabled from './components/navigation-menu-root-enabled';\r\n\r\n/**\r\n * Render the Navigation menu.\r\n * @param props - The navigation menu view props.\r\n * @returns Return HTML having INavigationMenuViewProps props with navigation menu.\r\n */\r\nconst navigationMenuView = (props: INavigationMenuViewProps & INavigationMenuProps<{}>): JSX.Element => {\r\n return props.config.enabletopMenu ? : ;\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, IModuleProps } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ISitePickerViewProps } from '@msdyn365-commerce-modules/site-picker';\r\n\r\nimport { ISiteOptionsData, ISitePickerConfig } from '../../master/definition-extensions/site-picker.ext.props.autogenerated';\r\n\r\ninterface IExtendedSitePickerViewProps extends Omit {\r\n store: IModuleProps;\r\n config: ISitePickerConfig;\r\n}\r\n\r\nexport default (props: IExtendedSitePickerViewProps) => {\r\n return <>{_renderSitePicker(props)};\r\n};\r\n\r\nconst _renderDesktopView = (\r\n props: IExtendedSitePickerViewProps,\r\n currentLanguage?: ISiteOptionsData,\r\n showShortSiteNameLargeScreen?: boolean\r\n) => {\r\n const { SitePickerMenu, SitePickerMenuSpan } = props;\r\n\r\n return (\r\n <>\r\n \r\n {showShortSiteNameLargeScreen ? currentLanguage?.shortSiteName : currentLanguage?.siteName}\r\n \r\n \r\n {props.siteOptionsState ? _renderSiteOptionsList(props, currentLanguage) : null}\r\n \r\n );\r\n};\r\n\r\nconst _renderSiteOptionsList = (props: IExtendedSitePickerViewProps, currentLanguage?: ISiteOptionsData): React.ReactNode => {\r\n const { SitePickerMenuList, SitePickerMenuListItem, SitePickerMenuListItemArray } = props;\r\n\r\n const options = SitePickerMenuListItemArray!\r\n .filter(\r\n item =>\r\n !(\r\n React.isValidElement(item) &&\r\n item.props.href.toLowerCase() === currentLanguage?.siteRedirectUrl.destinationUrl.toLowerCase()\r\n )\r\n )\r\n .map((item, index) => (\r\n \r\n {item}\r\n \r\n ));\r\n\r\n return (\r\n \r\n {options}\r\n \r\n );\r\n};\r\n\r\nconst _renderMobileView = (props: IExtendedSitePickerViewProps, currentLanguage?: ISiteOptionsData): React.ReactNode => {\r\n const { SitePickerMobileContainer } = props;\r\n SitePickerMobileContainer.toggleButtonText = currentLanguage?.shortSiteName;\r\n\r\n return (\r\n \r\n \r\n
\r\n {props.SitePickerMenuListItemArray?.filter(\r\n item =>\r\n !(\r\n React.isValidElement(item) &&\r\n item.props.href.toLowerCase() === currentLanguage?.siteRedirectUrl.destinationUrl.toLocaleLowerCase()\r\n )\r\n ).map((item, index) => {\r\n return
{item}
;\r\n })}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderSitePicker = (props: IExtendedSitePickerViewProps): React.ReactNode => {\r\n // Extends the original site picker behavior\r\n // Checks for current site path value and evaluates set language\r\n const { sitePath } = props.store.requestContext;\r\n const { siteOptions, showShortSiteNameLargeScreen } = props.config;\r\n\r\n let defaultLanguage: ISiteOptionsData = {\r\n siteRedirectUrl: { destinationUrl: sitePath },\r\n shortSiteName: props.config.heading?.text ?? ''\r\n };\r\n\r\n let currentLanguage: ISiteOptionsData = {\r\n ...(siteOptions?.find(\r\n (option): option is ISiteOptionsData => option.siteRedirectUrl.destinationUrl.toLowerCase() === sitePath.toLowerCase()\r\n ) ?? defaultLanguage)\r\n };\r\n\r\n const { isMobileView, SitePicker } = props;\r\n return (\r\n \r\n {isMobileView\r\n ? _renderMobileView(props, currentLanguage)\r\n : _renderDesktopView(props, currentLanguage, showShortSiteNameLargeScreen)}\r\n \r\n );\r\n};\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 { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IAccountGenericTileConfig, IAccountGenericTileProps } from './account-generic-tile.props.autogenerated';\nimport LinksComponent from './components/account-generic-tile-links';\n\nexport interface IAccountGenericTileViewProps extends IAccountGenericTileProps {\n AccountGenericTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * AccountGeneric component.\n * @extends {React.PureComponent>}\n */\nclass AccountGenericTile extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IAccountGenericTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element {\n const { config } = this.props;\n const { className, heading, links } = config;\n\n const viewProps = {\n ...this.props,\n className,\n AccountGenericTile: {\n moduleProps: this.props,\n className: classnames('ms-account-generic-tile', config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: links && links.length > 0 && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default AccountGenericTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAccountGenericTileViewProps } from './account-generic-tile';\n\nconst AccountGenericTileView: React.FC = props => {\n const { AccountGenericTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default AccountGenericTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../account-generic-tile.props.autogenerated';\n\nexport interface IAccountGenericTileLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst AccountGenericTileLinks: React.FC = ({ links, telemetryContent, requestContext, onTextChange }) => {\n if (links.length === 0) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n linkdata.forEach((link, index) => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-account-generic-tile__link',\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n};\n\nexport default AccountGenericTileLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../../..';\n\nexport interface IB2bRequestsTileLinksProps {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n\n /**\n * The telemetry content\n */\n telemetryContent?: ITelemetryContent;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\nconst defaultClassName = 'ms-account-b2b-requests-tile';\n\nexport const B2bRequestsTileLinks: React.FC = ({ links, telemetryContent, onTextChange, requestContext }) => {\n if (!ArrayExtensions.hasElements(links)) {\n return null;\n }\n const editableLinks = _mapEditableLinks(links, telemetryContent);\n return (\n
\n {ArrayExtensions.hasElements(editableLinks) ? (\n \n ) : null}\n
\n );\n};\n\nconst _mapEditableLinks = (linkdata: ILinksData[], telemetryContent?: ITelemetryContent): Msdyn365.ILinksData[] | null => {\n if (!ArrayExtensions.hasElements(linkdata)) {\n return null;\n }\n\n const payLoad = getPayloadObject('click', telemetryContent!, '');\n\n return linkdata.map(link => {\n payLoad.contentAction.etext = link.linkText;\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return {\n ariaLabel: link.ariaLabel,\n className: `${defaultClassName}__link`,\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: attributes\n } as Msdyn365.ILinksData;\n });\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IB2bRequestsTileData } from './b2b-requests-tile.data';\nimport { IB2bRequestsTileProps } from './b2b-requests-tile.props.autogenerated';\nimport { B2bRequestsTileLinks } from './components/account-b2b-requests-tile-links';\n\nexport interface IB2bRequestsTileViewProps extends IB2bRequestsTileProps {\n b2bRequestsTile: IModuleProps;\n className: string;\n heading?: React.ReactNode;\n links?: React.ReactNode;\n}\n\n/**\n *\n * B2bRequestsTile component.\n * @extends {React.PureComponent>}\n */\nclass B2bRequestsTile extends React.PureComponent> {\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IB2bRequestsTileProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n const { config } = this.props;\n const { className, heading, links } = config;\n\n const defaultClassName = 'ms-account-b2b-requests-tile';\n\n if (!isChannelTypeB2B(this.props.context.actionContext.requestContext)) {\n return null;\n }\n\n const viewProps = {\n ...this.props,\n className,\n b2bRequestsTile: {\n moduleProps: this.props,\n className: classnames(defaultClassName, config.className)\n },\n heading: heading && heading.text && (\n \n ),\n links: ArrayExtensions.hasElements(links) && (\n \n )\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading.text = event.target.value);\n\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[linkIndex]) {\n this.props.config.links[linkIndex].linkText = event.target.value;\n }\n };\n}\n\nexport default B2bRequestsTile;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IB2bRequestsTileViewProps } from './b2b-requests-tile';\n\nconst B2bRequestsTileView: React.FC = props => {\n const { b2bRequestsTile, heading, links } = props;\n\n return (\n \n {heading}\n {links}\n \n );\n};\n\nexport default B2bRequestsTileView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\ninterface ILink {\n className?: string;\n text?: string;\n href?: string;\n ariaLabel?: string;\n index: string;\n noclick?: boolean;\n telemetryContent: ITelemetryContent;\n}\n\nexport const Link: React.FC = ({ text, className, href, ariaLabel, index, noclick, telemetryContent }) => {\n const payLoad = getPayloadObject('click', telemetryContent, '', '');\n\n const linkText = text !== undefined ? text : '';\n payLoad.contentAction.etext = linkText;\n\n // Construct telemetry attribute to render\n const attribute = getTelemetryAttributes(telemetryContent, payLoad);\n\n return (\n \n {linkText}\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 React from 'react';\n\ninterface ISeparator {\n separator: string;\n}\n\nexport const Separator: React.FC = ({ separator }) => (\n \n);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { CategoryHierarchy } from '@msdyn365-commerce/commerce-entities';\nimport MsDyn365 from '@msdyn365-commerce/core';\nimport { ICategoryUrl } from '@msdyn365-commerce/core-internal/dist/types/interfaces/ICategoryPathInterfaces';\nimport { TextValueTranslation } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBreadcrumbData } from './breadcrumb.data';\nimport { IBreadcrumbProps, ILinksData } from './breadcrumb.props.autogenerated';\nimport { Link } from './components/link';\nimport { Separator } from './components/separator';\n\nexport interface IBreadcrumbViewProps extends IBreadcrumbProps {\n root?: React.ReactNode;\n links?: React.ReactNode[];\n backButton?: React.ReactNode;\n separator?: React.ReactNode;\n BreadcrumbContainer: IModuleProps;\n BreadcrumbList: INodeProps;\n BreadcrumbListItem: INodeProps;\n}\n\n/**\n *\n * Breadcrumb component.\n * @extends {React.PureComponent>}\n */\nclass Breadcrumb extends React.PureComponent> {\n private readonly _pageType: string | undefined = this.props.context.request.urlTokens.pageType;\n\n private readonly telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public render(): JSX.Element | null {\n const { className } = this.props.config;\n let rootLink = null;\n let breadcrumbLinks = null;\n let backButtonComponent = null;\n rootLink = this._getRootLink();\n const itemPosition = rootLink ? 1 : 0;\n if (this._pageType === 'Category') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n breadcrumbLinks = this._getCategoryHierarchy(itemPosition);\n }\n } else if (this._pageType === 'Product') {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n if (!breadcrumbLinks) {\n const breaCrumbType = this.props.context.app.config.breadcrumbType;\n if (breaCrumbType === 'category') {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'categoryAndBack') {\n backButtonComponent = this._getPDPBackButton();\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n if (breaCrumbType === 'back') {\n backButtonComponent = this._getPDPBackButton();\n if (backButtonComponent === null) {\n breadcrumbLinks = this._getPDPLinks(itemPosition);\n }\n }\n }\n } else {\n breadcrumbLinks = this._getCustomBreadcrumbLinks(itemPosition);\n }\n const linkSeparator = ;\n\n const breadcrumbViewProps = {\n ...this.props,\n BreadcrumbContainer: {\n moduleProps: this.props,\n className: classnames('ms-breadcrumb', className),\n tag: 'nav',\n role: 'navigation'\n },\n BreadcrumbList: {\n tag: 'ol' as NodeTag,\n className: 'ms-breadcrumb_list'\n },\n BreadcrumbListItem: {\n tag: 'li',\n className: 'ms-breadcrumb_item'\n },\n root: rootLink,\n links: breadcrumbLinks,\n backButton: backButtonComponent,\n separator: linkSeparator\n };\n return this.props.renderView(breadcrumbViewProps) as React.ReactElement;\n }\n\n private readonly _getRootLink = (): JSX.Element | null => {\n const { root } = this.props.config;\n if (!root || !root.linkUrl || !root.linkUrl.destinationUrl) {\n this.props.context.telemetry.error('BreadCrumb link url content is empty, link wont render');\n return null;\n }\n return (\n \n );\n };\n\n private readonly _getCustomBreadcrumbLinks = (itemPosition: number): JSX.Element[] | null => {\n const { links } = this.props.config;\n\n if (!links || links.length === 0) {\n this.props.context.telemetry.error('BreadCrumb links content is empty, links wont render');\n return null;\n }\n const defaultValueToSubtract = 1;\n return links.map((value: ILinksData, index: number) => {\n itemPosition++;\n const keyIndex = index;\n return index !== links.length - defaultValueToSubtract ? (\n \n ) : (\n
\n {value.linkText}\n
\n );\n });\n };\n\n private readonly _getCategoryHierarchy = (itemPosition: number): JSX.Element[] | null => {\n const { data } = this.props;\n const categoryHierarchy = data.categoryHierarchy.result;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category Hierarchy content is empty, module wont render');\n return null;\n }\n return categoryHierarchy.map((value: CategoryHierarchy, index: number) => {\n itemPosition++;\n\n const friendlyName = this._getFriendlyName(this.props.context.request.locale, value.NameTranslations);\n\n return (\n \n );\n });\n };\n\n /**\n * The function to get translation name for the locale.\n * @param locale - The locale information.\n * @param nameTranslations - The name translations names.\n * @returns - The translation name for the locale.\n */\n private readonly _getFriendlyName = (locale: string, nameTranslations?: TextValueTranslation[]): string | undefined => {\n let nameTranslation: TextValueTranslation | undefined;\n if (locale && nameTranslations && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations.find(item => item.Language!.toLowerCase() === locale.toLowerCase());\n }\n\n // If friendly name for current locale is null, should use default locale.\n if (nameTranslation === undefined && ArrayExtensions.hasElements(nameTranslations)) {\n nameTranslation = nameTranslations[0];\n }\n\n return nameTranslation?.Text;\n };\n\n private readonly _getPDPLinks = (itemPosition: number): JSX.Element[] | null => {\n const { data, config } = this.props;\n const categoryHierarchy = data.categoryPaths.result;\n const product = data.product.result;\n const url = this.props.context.request.url.requestUrl.href;\n if (!categoryHierarchy) {\n this.props.context.telemetry.error('Category path content is empty for the product');\n return null;\n }\n const links: JSX.Element[] = [];\n\n categoryHierarchy.map((value: ICategoryUrl, index: number) => {\n itemPosition++;\n links.push(\n \n );\n });\n if (product && !config.hideProductName) {\n itemPosition++;\n links.push(\n \n );\n }\n return links;\n };\n\n private readonly _goBack = (): void => {\n window.history.back();\n };\n\n private readonly _getPDPBackButton = (): JSX.Element | null => {\n const isBackAllowed =\n this.props.context && this.props.context.request && this.props.context.request.query && this.props.context.request.query.back;\n if (!isBackAllowed) {\n return null;\n }\n if (MsDyn365.isBrowser && (document.referrer === '' || window.history.length < 2)) {\n return null;\n }\n return (\n \n {this.props.resources.backToResultsText}\n \n );\n };\n}\n\nexport default Breadcrumb;\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 { IBreadcrumbViewProps } from './breadcrumb';\n\nconst BreadCrumbView: React.FC = props => {\n const { root, links, backButton, BreadcrumbContainer, BreadcrumbList, BreadcrumbListItem, separator } = props;\n if (!root && !links && !backButton) {\n props.context.telemetry.error('BreadCrumb content is empty, module wont render');\n return null;\n }\n return (\n \n \n {root && (\n \n {root}\n {links && separator}\n \n )}\n {backButton && {backButton}}\n {links &&\n links.map((link, index) => (\n \n \n {link}\n {links[index + 1] && separator}\n \n \n ))}\n
\n \n );\n};\n\nexport default BreadCrumbView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Button, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IBusinessSignUpButtonProps {\n id?: string;\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n link?: string;\n telemetryContent: ITelemetryContent;\n onClick?(event: React.MouseEvent): void;\n}\n\nexport const SignUpButton: React.FC = ({\n id,\n className,\n text,\n ariaLabel,\n telemetryContent,\n disabled,\n link,\n onClick\n}) => {\n const payLoad = getPayloadObject('click', telemetryContent, text);\n const attributes = getTelemetryAttributes(telemetryContent, payLoad);\n return (\n \n {text}\n \n );\n};\n\nexport default SignUpButton;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface IBusinessSignUpErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nexport const SignUpError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n

{message}

\n \n );\n};\n\nexport default SignUpError;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { InputType } from '../business-sign-up';\n\nexport interface IBusinessSignUpInputProps {\n id?: string;\n type: InputType;\n value?: string;\n pattern?: string;\n className: string;\n maxLength?: string;\n isRequired: boolean;\n fieldReference?: React.RefObject;\n onChange?(event: React.ChangeEvent): void;\n}\n\nexport interface IBusinessSignUpInput {\n key: string;\n AddressItem: INodeProps;\n label: React.ReactNode;\n alert: React.ReactNode;\n input: React.ReactNode;\n}\n\nconst GetMaxLength = (maxLength?: string): number | undefined => {\n if (maxLength) {\n const parsedMaxLength = Number.parseInt(maxLength, 10);\n if (!isNaN(parsedMaxLength)) {\n return parsedMaxLength;\n }\n }\n\n return undefined;\n};\n\nexport const SignUpInput: React.FC = ({\n id,\n type,\n value,\n pattern,\n className,\n maxLength,\n isRequired,\n onChange,\n fieldReference\n}) => {\n if (type === InputType.TextArea) {\n return (\n \n );\n }\n\n return (\n \n );\n};\n\nexport default SignUpInput;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IBusinessSignUpLabelProps {\n id: string;\n forId: string;\n className: string;\n text: string;\n}\n\nexport const SignUpLabel: React.FC = ({ id, forId, className, text }) => (\n \n);\n\nexport default SignUpLabel;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IBusinessSignUpRadioButtonProps {\n id: string;\n isRequired: boolean;\n options: IBusinessSignUpRadioButtonOptionProps[];\n}\n\nexport interface IBusinessSignUpRadioButtonOptionProps {\n id: string;\n name: string;\n value: string;\n label: string;\n className: string;\n onChange(event: React.ChangeEvent): void;\n}\n\nexport const BusinessSignUpRadioButtonOption: React.FC = props => {\n const { id, name, value, label, className, onChange } = props;\n return (\n
\n \n \n
\n );\n};\n\nexport default BusinessSignUpRadioButtonOption;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ContentEditableEvent, getUrlSync, RichTextComponent, Text } from '@msdyn365-commerce/core';\nimport { Address, BusinessPartnerProspect } from '@msdyn365-commerce/retail-proxy';\nimport { createProspectAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/BusinessPartnersDataActions.g';\nimport { EmailRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBusinessSignUpConfig, IBusinessSignUpProps } from './business-sign-up.props.autogenerated';\nimport { SignUpButton, SignUpError, SignUpInput, SignUpLabel } from './components';\nimport { IBusinessSignUpRadioButtonOptionProps, BusinessSignUpRadioButtonOption } from './components/sign-up-radio-button';\n\nexport interface IBusinessSignUpExtendedProps extends IBusinessSignUpProps {\n formItems?: IFormItem[];\n}\n\nexport interface IBusinessSignUpItem {\n wrapper: INodeProps;\n isAddressInput?: boolean;\n id: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input?: React.ReactNode;\n}\n\nexport interface IBusinessState {\n isReady: boolean;\n formItems: IFormItem[];\n addressHasErrors: boolean;\n showAddressErrors: boolean;\n hasSubmitErrors: boolean;\n}\n\nexport interface IBusinessSignUpLocalAccount {\n FormWrapper: INodeProps;\n items: IBusinessSignUpItem[];\n buttons: React.ReactNode[];\n errorMessage: React.ReactNode[];\n disclaimer: React.ReactNode;\n}\n\nexport interface IBusinessSignUpViewProps {\n className: string;\n businessSignUp: IModuleProps;\n ContainerWrapper: INodeProps;\n heading: React.ReactNode;\n businessSignUpForm: IBusinessSignUpLocalAccount;\n formItems: IFormItem[];\n}\n\nexport interface IFormItem {\n id: string;\n type: InputType;\n label: string;\n value: string;\n maxChars?: string;\n isRequired: boolean;\n pattern?: string;\n address?: Address;\n customClass?: string;\n fieldReference?: React.RefObject;\n radioButtonOptions?: IBusinessSignUpRadioButtonOptionProps[];\n radioButtonGroupClass?: string;\n}\n\nexport enum InputType {\n // eslint-disable-next-line @typescript-eslint/no-shadow -- Text enum doesn't override the imported Text\n Text = 'text',\n Address = 'address',\n Email = 'email',\n TextArea = 'textarea',\n RadioButton = 'radiobutton'\n}\n\nexport enum InputID {\n FirstName = 'FirstName',\n LastName = 'LastName',\n Email = 'CompanyEmail',\n CompanyName = 'CompanyName',\n Address = 'CompanyAddress',\n JobTitle = 'JobTitle',\n Size = 'CompanySize',\n Department = 'Department',\n Comment = 'Comment',\n ProspectType = 'ProspectType'\n}\n\nexport const renderInputSection = (\n inputs: IFormItem[],\n className: string,\n needToReset: boolean,\n onInputChange: (event: React.ChangeEvent) => void,\n showErrors: boolean,\n addressForm?: React.ReactNode,\n updateAddress?: (errors: boolean, currAddress?: Address) => void\n): IBusinessSignUpItem[] => {\n return inputs.map((element, index) => {\n const {\n id,\n type,\n label,\n maxChars,\n isRequired,\n pattern,\n customClass,\n value,\n fieldReference,\n radioButtonOptions,\n radioButtonGroupClass\n } = element;\n\n const baseSignUpItem: IBusinessSignUpItem = {\n wrapper: {\n className: classnames(className, `${className}-${id}`, customClass)\n },\n id,\n label: ,\n errorMessage: \n };\n\n if (type === InputType.Address) {\n if (addressForm) {\n baseSignUpItem.isAddressInput = true;\n baseSignUpItem.input = (\n <>\n {React.cloneElement(addressForm as React.ReactElement, {\n updateForm: updateAddress,\n hasError: showErrors,\n isRequired: isRequired === undefined ? false : isRequired,\n resetAddress: needToReset\n })}\n \n );\n } else {\n // If the address slot is not filled, remove this input from the form\n inputs.splice(index, 1);\n }\n } else if (type === InputType.RadioButton) {\n baseSignUpItem.input = (\n
\n {radioButtonOptions &&\n radioButtonOptions.map((element, index) => {\n return ;\n })}\n
\n );\n } else {\n baseSignUpItem.input = (\n \n );\n }\n\n return baseSignUpItem;\n });\n};\n\n/**\n *\n * Business Request Form Modules\n * Form that a business can use to submit a request to become a partner with Microsoft.\n * @extends {React.Component>}\n */\nclass BusinessSignUp extends React.Component {\n private readonly moduleClassName: string = 'ms-business-sign-up';\n private readonly prospectRadioButtonName: string = 'business-sign-up-radio-button';\n\n // Used as default data\n // eslint-disable-next-line @typescript-eslint/member-ordering\n public BusinessSignUpDefaultInputs: IFormItem[] = [\n {\n id: InputID.ProspectType,\n type: InputType.RadioButton,\n label: this.props.resources.prospectTypeLabel,\n value: '',\n isRequired: true,\n customClass: 'width-100',\n radioButtonGroupClass: 'radio-option-container',\n radioButtonOptions: [\n {\n id: `${InputID.ProspectType}-buyer`,\n name: this.prospectRadioButtonName,\n value: '1', // Buyer\n label: this.props.resources.prospectTypeBuyerLabel,\n className: `${this.moduleClassName}__form-item-radio-button-option`,\n onChange: this._onInputChange.bind(this)\n },\n {\n id: `${InputID.ProspectType}-seller`,\n name: this.prospectRadioButtonName,\n value: '2', // Seller\n className: `${this.moduleClassName}__form-item-radio-button-option`,\n label: this.props.resources.prospectTypeSellerLabel,\n onChange: this._onInputChange.bind(this)\n }\n ]\n },\n {\n id: InputID.FirstName,\n type: InputType.Text,\n label: this.props.resources.firstNameLabel,\n value: '',\n isRequired: true,\n customClass: 'width-25'\n },\n {\n id: InputID.LastName,\n type: InputType.Text,\n label: this.props.resources.lastNameLabel,\n value: '',\n isRequired: true,\n customClass: 'width-25'\n },\n {\n id: InputID.Email,\n type: InputType.Email,\n label: this.props.resources.emailAddressLabel,\n value: '',\n isRequired: true,\n pattern: EmailRegex.defaultRegex.source,\n customClass: 'width-50'\n },\n {\n id: InputID.CompanyName,\n type: InputType.Text,\n label: this.props.resources.companyLabel,\n value: '',\n isRequired: true,\n customClass: 'width-50'\n },\n {\n id: InputID.Department,\n type: InputType.Text,\n label: this.props.resources.departmentLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.JobTitle,\n type: InputType.Text,\n label: this.props.resources.jobTitleLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.Size,\n type: InputType.Text,\n label: this.props.resources.companySizeLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.Address,\n type: InputType.Address,\n label: this.props.resources.companyAddressLabel,\n value: '',\n isRequired: false,\n customClass: 'width-100'\n },\n {\n id: InputID.Comment,\n type: InputType.TextArea,\n label: this.props.resources.commentLabel,\n value: '',\n isRequired: false,\n customClass: 'width-100'\n }\n ];\n\n private readonly formChildReference: React.RefObject = React.createRef();\n\n private needsToReset: boolean = false;\n\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IBusinessSignUpExtendedProps) {\n super(props);\n\n this.state = {\n isReady: false,\n formItems: this.props.formItems || this._addedReference(),\n addressHasErrors: false,\n showAddressErrors: false,\n hasSubmitErrors: false\n };\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public componentDidMount(): void {\n this.formChildReference.current?.focus();\n }\n\n public shouldComponentUpdate(nextProps: IBusinessSignUpExtendedProps, nextState: IBusinessState): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { config } = this.props;\n const { formItems } = this.state;\n const { className, heading } = config;\n\n const viewProps = {\n ...this.props,\n businessSignUp: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, className)\n },\n ContainerWrapper: {\n className: `${this.moduleClassName}__container`\n },\n heading: (\n \n ),\n businessSignUpForm: this._renderForm(),\n formItems\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Handle the heading change event.\n * @param event - Content Editable Event.\n */\n public handleHeadingChange = (event: ContentEditableEvent): void => {\n this.props.config.heading.text = event.target.value;\n };\n\n private _renderForm(): IBusinessSignUpLocalAccount {\n const { config, resources, slots } = this.props;\n const { showAddressErrors, hasSubmitErrors, isReady, formItems } = this.state;\n const {\n signUpButtonArialabel,\n signUpButtonText,\n cancelButtonArialabel,\n cancelButtonText,\n errorMessage,\n partialAddressErrorMessage\n } = resources;\n const addressForm = (slots && slots.addressSlot && slots.addressSlot.length > 0 && slots.addressSlot[0]) || undefined;\n\n const form = {\n FormWrapper: {\n className: `${this.moduleClassName}__form `\n },\n items: renderInputSection(\n formItems,\n `${this.moduleClassName}__form-item`,\n this.needsToReset,\n this._onInputChange.bind(this),\n showAddressErrors,\n addressForm,\n this._onAddressChange\n ),\n buttons: [\n ,\n \n ],\n errorMessage: [\n hasSubmitErrors && ,\n showAddressErrors && (\n \n )\n ],\n disclaimer: config.disclaimer && (\n \n )\n };\n\n if (this.needsToReset) {\n this.needsToReset = false;\n }\n\n return form;\n }\n\n private _onInputChange(event: React.ChangeEvent): void {\n const newForm = this.state.formItems;\n newForm.forEach(item => {\n if (item.type === InputType.RadioButton && event.target.name === this.prospectRadioButtonName) {\n item.value = event.target.value;\n } else if (item.id === event.target.id) {\n item.value = event.target.value;\n }\n });\n\n // Check if form is ready, update state object with latest values, values have changed so reset hasSubmitErrros\n this.setState({\n isReady: this._isFormReady(),\n formItems: newForm,\n hasSubmitErrors: false\n });\n }\n\n private _addedReference(): IFormItem[] {\n const newFormFields = this.BusinessSignUpDefaultInputs;\n newFormFields[0].fieldReference = this.formChildReference;\n return newFormFields;\n }\n\n private readonly _onAddressChange = (errors: boolean, currentAddress?: Address): void => {\n // Find address item\n const newForm = this.state.formItems;\n const addressItem = newForm.find(item => {\n return item.type === InputType.Address;\n });\n\n // If found --> set to currentAddress\n if (addressItem) {\n addressItem.address = currentAddress;\n\n // Update state with new values and set errors to false if address is not required field\n this.setState(\n {\n formItems: newForm,\n addressHasErrors: errors,\n showAddressErrors: false\n },\n () => {\n this.setState({ isReady: this._isFormReady() });\n }\n );\n }\n };\n\n private readonly _isFormReady = (): boolean => {\n const { formItems } = this.state;\n\n for (const currentInput of formItems) {\n // Will return FALSE if:\n // - input field is required\n // IF is address AND addressHasErrors === true\n // ELSE value is undefined OR empty\n // OR\n // - pattern provided and value does not match pattern\n\n if (currentInput.isRequired) {\n if (currentInput.type === InputType.Address) {\n if (this.state.addressHasErrors) {\n return false;\n }\n } else if (currentInput.value === undefined || currentInput.value === '') {\n return false;\n }\n }\n if (currentInput.pattern !== undefined && currentInput.value.match(currentInput.pattern) === null) {\n return false;\n }\n }\n\n return true;\n };\n\n private readonly _onSubmit = (event: React.MouseEvent) => {\n if (this.state.addressHasErrors) {\n this.setState({\n showAddressErrors: true\n });\n\n event.preventDefault();\n return;\n }\n\n const { config, context } = this.props;\n\n // Check for matching id and if not empty\n const firstName = this._getItem(InputID.FirstName);\n const lastName = this._getItem(InputID.LastName);\n const companyName = this._getItem(InputID.CompanyName);\n const companyEmail = this._getItem(InputID.Email);\n const companyAddress = this._getItem(InputID.Address, true);\n const jobTitle = this._getItem(InputID.JobTitle);\n const department = this._getItem(InputID.Department);\n const companySize = this._getItem(InputID.Size);\n const comments = this._getItem(InputID.Comment);\n const prospectType = this._getItem(InputID.ProspectType);\n\n // API gets email as part of the address object, but I do not use the email input from the address component, thus we need to copy it over\n if (companyEmail && companyEmail.value && companyAddress && companyAddress.address) {\n companyAddress.address.Email = companyEmail.value;\n }\n\n const newPartner: BusinessPartnerProspect = {\n FirstName: firstName && firstName.value,\n LastName: lastName && lastName.value,\n CompanyName: companyName && companyName.value,\n Address: companyAddress && companyAddress.address && companyAddress.address,\n JobTitle: jobTitle && jobTitle.value,\n Department: department && department.value,\n CompanySize: (companySize && Number.parseInt(companySize.value, 10)) || 0,\n Comments: comments && comments.value,\n ProspectTypeValue: (prospectType && Number.parseInt(prospectType.value, 10)) || 0\n };\n\n this.setState({\n isReady: false\n });\n\n // Create business partner request\n createProspectAsync({ callerContext: context.actionContext }, newPartner)\n .then(() => {\n const successPageURL =\n (config.confirmationLink && config.confirmationLink.linkUrl && config.confirmationLink.linkUrl.destinationUrl) ||\n getUrlSync('home', this.props.context.actionContext) ||\n '';\n window.location.href = successPageURL;\n })\n .catch(() => {\n this.setState({\n hasSubmitErrors: true\n });\n });\n };\n\n private readonly _onCancel = () => {\n // Reset values of the form\n const cleanForm = this.state.formItems;\n cleanForm.forEach(input => {\n input.value = '';\n });\n\n // Set reset flag so address input will get reset on next renderInputSection() call\n this.needsToReset = true;\n\n this.setState({\n isReady: false,\n formItems: cleanForm,\n addressHasErrors: true,\n showAddressErrors: false,\n hasSubmitErrors: false\n });\n };\n\n private readonly _getItem = (id: string, isAddress: boolean = false) => {\n if (isAddress) {\n return this.state.formItems.find(item => {\n return item.id === id && item.address;\n });\n }\n return this.state.formItems.find(item => {\n return item.id === id && item.value !== '';\n });\n };\n}\n\nexport default BusinessSignUp;\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 { IBusinessSignUpItem, IBusinessSignUpViewProps } from './business-sign-up';\n\nconst BusinessSignUpItem: React.FC = ({ wrapper, label, errorMessage, input, isAddressInput }) => {\n // Hide label and error message if rendering address section\n return (\n \n {!isAddressInput && label}\n {!isAddressInput && errorMessage}\n {input}\n \n );\n};\n\nconst BusinesSignUpView: React.FC = props => {\n const { businessSignUp, ContainerWrapper, heading, businessSignUpForm } = props;\n\n const { FormWrapper, buttons, items, errorMessage, disclaimer } = businessSignUpForm;\n\n return (\n \n \n {heading}\n \n {items &&\n items.map((item: IBusinessSignUpItem) => {\n return ;\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n {disclaimer}\n \n \n \n );\n};\n\nexport default BusinesSignUpView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport React from 'react';\nimport { KeyCodes } from '@msdyn365-commerce-modules/utilities';\n\nexport interface ISearchBarProps {\n className: string;\n searchPlaceholderLabel: string;\n onSearch(searchText: string): void;\n}\n\nexport interface ISearchBarState {\n searchText: string;\n}\n\nexport class SearchBar extends React.Component {\n constructor(props: ISearchBarProps) {\n super(props);\n this.state = {\n searchText: ''\n };\n }\n\n public render(): JSX.Element {\n const { className, searchPlaceholderLabel } = this.props;\n return (\n
\n \n
\n );\n }\n\n private readonly onSearchTextChange = (ev: React.ChangeEvent): void => {\n this.setState({\n searchText: ev.target.value\n });\n };\n\n private readonly onSearch = (): void => {\n this.props.onSearch(this.state.searchText);\n };\n\n private readonly handleKeyUp = (event: React.KeyboardEvent): void => {\n if (event.keyCode === KeyCodes.Enter) {\n this.onSearch();\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 { IComponentProps } from '@msdyn365-commerce/core';\nimport { CommerceException } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Alert, Button } from '@msdyn365-commerce-modules/utilities';\nimport React from 'react';\n\nimport { moduleClassName } from '../business-partners';\nimport { IBusinessPartnersResources } from '../business-partners.props.autogenerated';\nimport { SearchBar } from './search-bar';\n\n/**\n * Props of DataGrid component.\n */\nexport interface IDataGridProps extends IComponentProps {\n className: string;\n pageSize?: number;\n searchPlaceholderLabel: string;\n defaultSorting?: ISortingInfo;\n resources: IBusinessPartnersResources;\n columns: IDataGridColumn[];\n loadData(): Promise;\n}\n\n/**\n * State of DataGrid component.\n */\nexport interface IDataGridState {\n data: Tdata[];\n paging: IPagingInfo;\n filter: IFilterInfo;\n sorting?: ISortingInfo;\n isLoading: boolean;\n errorMessage: string;\n}\n\nexport interface IPagingInfo {\n index: number;\n}\n\nexport interface IFilterInfo {\n searchText: string;\n}\n\nexport interface ISortingInfo {\n fieldName: string;\n ascending: boolean;\n}\n\n/**\n * Column definition of DataGrid component.\n */\nexport interface IDataGridColumn {\n /**\n * A unique key for identifying the column.\n */\n reactKey: string;\n\n /**\n * Name to render on the column header.\n */\n name: string;\n\n /**\n * Class name added to table cell.\n */\n className?: string;\n\n /**\n * The field to pull the text value from for the column.Can be unset if a custom `onRender` method is provided.\n */\n fieldName?: string;\n\n /**\n * Whether the user can search this column by text.\n */\n isSearchable?: boolean;\n\n /**\n * Custom renderer for cell content, instead of the default text rendering.\n */\n onRender?(item: Tdata): JSX.Element;\n\n /**\n * Event when the table cell is clicked.\n */\n onClick?(item: Tdata): void;\n}\n\nconst defaultPageSize = 10;\n\n/**\n * DataGrid component encapsulates common table functionalities.\n */\nexport class DataGrid extends React.Component, IDataGridState> {\n constructor(props: IDataGridProps) {\n super(props);\n this.state = {\n data: [],\n sorting: props.defaultSorting,\n paging: { index: 0 },\n filter: { searchText: '' },\n isLoading: true,\n errorMessage: ''\n };\n }\n\n public componentDidMount(): void {\n this.loadDataInternal();\n }\n\n public shouldComponentUpdate(nextProps: Readonly>, nextState: Readonly>): boolean {\n return (\n this.props.id !== nextProps.id ||\n this.props.columns !== nextProps.columns ||\n this.state.data !== nextState.data ||\n this.state.paging !== nextState.paging ||\n this.state.filter !== nextState.filter ||\n this.state.isLoading !== nextState.isLoading ||\n this.state.errorMessage !== nextState.errorMessage\n );\n }\n\n public render(): JSX.Element | null {\n const data = this.getDataToDisplay();\n const hasMore = this.hasMore();\n if (this.state.errorMessage) {\n return {this.state.errorMessage};\n }\n if (this.state.isLoading) {\n return {this.props.resources.loadingLabel};\n }\n if (!ArrayExtensions.hasElements(data)) {\n return (\n <>\n \n

{this.props.resources.noDataMessage}

\n \n );\n }\n return (\n <>\n \n \n {this.renderGridHeader()}\n {data.map((item, index) => this.renderGridRow(item, index))}\n
\n {hasMore && (\n
\n \n
\n )}\n \n );\n }\n\n /**\n * Renders the TH header in the table.\n * @returns - Header react node.\n */\n private readonly renderGridHeader = () => {\n const className = `${this.props.className}__header`;\n const rowClassName = `${className}__row`;\n return (\n \n \n {this.props.columns.map(column => (\n \n {column.name}\n \n ))}\n \n \n );\n };\n\n /**\n * Renders table row.\n * @param item - Data item for this row.\n * @param index - Index of the row.\n * @returns - Row react node.\n */\n private readonly renderGridRow = (item: Tdata, index: number) => {\n const rowClassName = `${this.props.className}__row`;\n return (\n \n {this.props.columns.map(column => {\n let cell: JSX.Element = <>;\n if (column.onRender) {\n cell = column.onRender(item);\n } else if (column.fieldName) {\n cell = {((item as unknown) as { [key: string]: string })[column.fieldName]};\n }\n return (\n column.onClick?.(item)}>\n {cell}\n \n );\n })}\n \n );\n };\n\n /**\n * Load data for the table.\n * @returns Promise.\n */\n private readonly loadDataInternal = async () => {\n if (!this.props.context.actionContext.requestContext.user.isAuthenticated) {\n this.setState({\n isLoading: false\n });\n return;\n }\n try {\n const result = await this.props.loadData();\n this.setState({\n isLoading: false,\n data: result\n });\n } catch (e) {\n this.setState({\n isLoading: false,\n errorMessage: (e as { data: CommerceException })?.data?.LocalizedMessage || this.props.resources.genericErrorMessage\n });\n }\n };\n\n private readonly onSearch = (searchText: string): void => {\n this.setState({\n paging: { index: 0 },\n filter: { searchText }\n });\n };\n\n private readonly loadMore = (): void => {\n this.setState({\n paging: { index: this.state.paging.index + 1 }\n });\n };\n\n private readonly sortData = (): Tdata[] => {\n const sorting = this.state.sorting;\n if (!sorting) {\n return this.state.data;\n }\n const { fieldName, ascending } = sorting;\n return this.state.data.sort((item1: Tdata, item2: Tdata) => {\n let value1 = ((item1 as unknown) as { [key: string]: string })[fieldName];\n let value2 = ((item2 as unknown) as { [key: string]: string })[fieldName];\n if (typeof value1 === 'string' && typeof value2 === 'string') {\n value1 = value1.toLowerCase();\n value2 = value2.toLowerCase();\n }\n const compareResult = value1 > value2 ? 1 : value1 < value2 ? -1 : 0;\n return ascending ? compareResult : compareResult * -1;\n });\n };\n\n private readonly filterData = (): Tdata[] => {\n const column = this.props.columns.find(c => c.isSearchable);\n const searchText = this.state.filter.searchText;\n return this.sortData().filter(item => {\n if (!column?.fieldName || !searchText) {\n return true;\n }\n const columnValue = ((item as unknown) as { [key: string]: string })[column.fieldName];\n return columnValue && columnValue.toLowerCase().indexOf(searchText.trim().toLowerCase()) >= 0;\n });\n };\n\n private readonly getDataToDisplay = (): Tdata[] => {\n const itemsCount = (this.props.pageSize || defaultPageSize) * (this.state.paging.index + 1);\n const filteredItems = this.filterData();\n return filteredItems.slice(0, itemsCount);\n };\n\n private readonly hasMore = (): boolean => {\n const itemsCount = (this.props.pageSize || defaultPageSize) * (this.state.paging.index + 1);\n const filteredItems = this.filterData();\n return filteredItems.length > itemsCount;\n };\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IComponentProps } from '@msdyn365-commerce/core';\nimport { ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport React, { ReactNode } from 'react';\nimport { isMobile, Node, VariantType } from '@msdyn365-commerce-modules/utilities';\n\nimport { BusinessPartner, BusinessPartnerUser, BusinessPartnersDataActions } from '@msdyn365-commerce/retail-proxy';\nimport { IBusinessPartnersResources } from '../business-partners.props.autogenerated';\nimport { DataGrid, IDataGridColumn } from './data-grid';\n\n/**\n * View model of business partner user, used to display.\n */\nexport interface IBusinessPartnerUserViewModel extends BusinessPartnerUser {\n name: string;\n spendingLimit: ReactNode;\n}\n\n/**\n * Props of BusinessPartnerUsersTable.\n */\nexport interface IBusinessPartnerUsersTableProps extends IComponentProps {\n className: string;\n pageSize?: number;\n businessPartner: BusinessPartner;\n resources: IBusinessPartnersResources;\n onSelect(businessPartnerUser: BusinessPartnerUser): void;\n}\n\n/**\n * BusinessPartnerUsersTable component.\n */\nexport class BusinessPartnerUsersTable extends React.Component {\n public shouldComponentUpdate(nextProps: Readonly): boolean {\n return this.props.id !== nextProps.id;\n }\n\n public render(): JSX.Element {\n return (\n \n );\n }\n\n /**\n * Get column definition of the table.\n * @returns - Columns.\n */\n private readonly getColumns = (): IDataGridColumn[] => {\n const isMobileDevice = isMobile({ variant: VariantType.Viewport, context: this.props.context.request }) === 'xs';\n\n return [\n {\n reactKey: 'name',\n name: this.props.resources.businessUserTableNameHeadingText,\n isSearchable: true,\n fieldName: 'name',\n onClick: this.props.onSelect,\n onRender: (data: IBusinessPartnerUserViewModel) => {data.name}\n },\n {\n reactKey: 'email',\n name: this.props.resources.businessUserTableEmailHeadingText,\n fieldName: 'Email',\n onClick: this.props.onSelect\n },\n {\n reactKey: 'spendingLimit',\n name: this.props.resources.businessUserTableSpendingLimitHeadingText,\n className: `${this.props.className}__row__column-with-number`,\n fieldName: 'spendingLimit',\n onClick: !isMobileDevice ? this.props.onSelect : undefined\n }\n ];\n };\n\n /**\n * Call retail proxy to get business partner users.\n * @returns - Business partner users view model.\n */\n private readonly getBusinessPartnerUsers = async (): Promise => {\n const businessPartners = await BusinessPartnersDataActions.getUsersAsync(\n {\n callerContext: this.props.context.actionContext,\n bypassCache: 'get',\n queryResultSettings: {}\n },\n this.props.businessPartner.BusinessPartnerId\n );\n return businessPartners\n .filter(user => user.StatusValue === 1)\n .map(user => {\n return {\n ...user,\n name: `${user.FirstName} ${user.LastName}`,\n spendingLimit: (\n \n {!ObjectExtensions.isNullOrUndefined(user.SpendingLimit)\n ? this.props.context.cultureFormatter.formatCurrency(user.SpendingLimit.toString())\n : ''}\n {!ObjectExtensions.isNullOrUndefined(user.SpendingLimit) && user.SpendingLimit === 0 ? (\n \n