{"version":3,"file":"static/js/12.11504aa68f72062337ee.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/pva-chat-connector.tsx?def7","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/proactive-chat-trigger.ts?734c","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/cart-amount-trigger.ts?742f","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/cart-number-of-items-trigger.ts?d5f8","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/cart-specific-product-trigger.ts?2cd6","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/helpers/consts.ts?02a5","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/date-range-trigger.ts?8bfc","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/from-specific-page-trigger.ts?fd6f","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/page-visits-trigger.ts?cce7","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/specific-CountryRegion-trigger.ts?e87a","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/specific-page-trigger.ts?6e03","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/triggers/wait-on-time-trigger.ts?d898","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/proactive/index.ts?36a2","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/helpers/ContextProvider.ts?4518","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/helpers/StyleComposers.ts?0192","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/helpers/CommerceChatStore.ts?5b45","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/components/ChatCore.tsx?a412","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/components/Chat.tsx?1581","webpack://Msdyn365.Commerce.Online/./src/modules/pva-chat-connector/pva-chat-connector.view.tsx?3d5c","webpack://Msdyn365.Commerce.Online/./src/services/featureToggleService.ts?d980","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/content-block.view.tsx?0a66","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/loyalty-terms.view.tsx?71d6","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/ratings-histogram.view.tsx?62be","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/sign-up.view.tsx?e5d6","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/definition-extensions/video-player.ext.props.autogenerated.ts?fe23","webpack://Msdyn365.Commerce.Online/./src/themes/venchi/views/video-player.view.tsx?a1ba","webpack://Msdyn365.Commerce.Online/./src/common/address-autosuggest.ts?f5a2","webpack://Msdyn365.Commerce.Online/./src/common/address-common.ts?cf4b","webpack://Msdyn365.Commerce.Online/./src/common/address-format.data.ts?6cbf","webpack://Msdyn365.Commerce.Online/./src/common/address-format.ts?4f04","webpack://Msdyn365.Commerce.Online/./src/common/address-meta-data.ts?c6e6","webpack://Msdyn365.Commerce.Online/./src/common/address-module.data.ts?697a","webpack://Msdyn365.Commerce.Online/./src/common/components/address-checkbox.tsx?eb1a","webpack://Msdyn365.Commerce.Online/./src/common/components/address-add.tsx?e6a6","webpack://Msdyn365.Commerce.Online/./src/common/components/address-alert.tsx?10d1","webpack://Msdyn365.Commerce.Online/./src/common/components/address-button.tsx?7f7b","webpack://Msdyn365.Commerce.Online/./src/common/components/address-detail-item.tsx?5209","webpack://Msdyn365.Commerce.Online/./src/common/components/address-dropdown.tsx?f24b","webpack://Msdyn365.Commerce.Online/./src/common/components/address-error-message.tsx?89ad","webpack://Msdyn365.Commerce.Online/./src/common/components/address-error-title.tsx?3926","webpack://Msdyn365.Commerce.Online/./src/common/components/address-input.tsx?8073","webpack://Msdyn365.Commerce.Online/./src/common/components/address-label.tsx?6864","webpack://Msdyn365.Commerce.Online/./src/common/components/address-list.tsx?a628","webpack://Msdyn365.Commerce.Online/./src/common/components/address-show.tsx?3f60","webpack://Msdyn365.Commerce.Online/./src/modules/account-management-address/account-management-address.tsx?27e7","webpack://Msdyn365.Commerce.Online/./src/modules/account-management-address/account-management-address.view.tsx?8c9f","webpack://Msdyn365.Commerce.Online/./src/modules/business-account-address/business-account-address.tsx?299e","webpack://Msdyn365.Commerce.Online/./src/modules/business-account-address/business-account-address.view.tsx?5078","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/components/sign-up-button.tsx?e1d9","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/components/sign-up-error.tsx?7f8a","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/components/sign-up-input.tsx?5bbe","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/components/sign-up-label.tsx?4988","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/components/sign-up-radio-button.tsx?f8c1","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/business-sign-up.tsx?13a2","webpack://Msdyn365.Commerce.Online/./src/modules/business-sign-up/business-sign-up.view.tsx?e2f8","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/components/search-bar.tsx?63c1","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/components/data-grid.tsx?ddec","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/components/business-partner-users-table.tsx?c677","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/components/business-partners-table.tsx?8b1d","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/business-partners.tsx?57a6","webpack://Msdyn365.Commerce.Online/./src/modules/business-partners/business-partners.view.tsx?b34e","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/search-result-container.view.tsx?89df","webpack://Msdyn365.Commerce.Online/./src/modules/subscribe/subscribe.tsx?9fea","webpack://Msdyn365.Commerce.Online/./src/modules/subscribe/subscribe.view.tsx?19c8","webpack://Msdyn365.Commerce.Online/./src/modules/tab-item/tab-item.tsx?b1b8","webpack://Msdyn365.Commerce.Online/./src/modules/tab-item/tab-item.view.tsx?ee3b","webpack://Msdyn365.Commerce.Online/./src/modules/tab/tab.tsx?9ac6","webpack://Msdyn365.Commerce.Online/./src/modules/tab/tab.view.tsx?a99d","webpack://Msdyn365.Commerce.Online/./src/modules/tile-list-item/components/links.tsx?c969","webpack://Msdyn365.Commerce.Online/./src/modules/tile-list-item/tile-list-item.tsx?114a","webpack://Msdyn365.Commerce.Online/./src/modules/tile-list-item/tile-list-item.view.tsx?19a8","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/components/carticon.component.tsx?3c7c","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/components/promocode.component.tsx?c06b","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/content-block.view.tsx?0db4","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/write-review.view.tsx?c67c"],"sourcesContent":["/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\nimport { isOboRequest } from '@msdyn365-commerce/core-internal';\r\nimport { IPvaChatConnectorData } from './pva-chat-connector.data';\r\nimport { IPvaChatConnectorConfig, IPvaChatConnectorProps } from './pva-chat-connector.props.autogenerated';\r\n\r\nexport interface IPvaChatConnectorViewProps extends IPvaChatConnectorProps {\r\n config: IPvaChatConnectorConfig;\r\n}\r\n\r\n/**\r\n * PvaChatConnector component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass PvaChatConnector extends React.PureComponent> {\r\n // Loads CDN version of Botframework-Webchat library\r\n public componentDidMount(): void {\r\n if (isOboRequest(this.props.context.request)) {\r\n return;\r\n }\r\n\r\n const url = this.props.config.botFrameworkCDNURL || this.props.context.app.config.pvaChatConnectorBotFrameworkCDNURL;\r\n const script = document.createElement('script');\r\n script.src = url;\r\n script.async = true;\r\n script.crossOrigin = 'anonymous';\r\n document.body.appendChild(script);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n if (isOboRequest(this.props.context.request)) {\r\n return null;\r\n }\r\n\r\n return this.props.renderView(this.props);\r\n }\r\n}\r\n\r\nexport default PvaChatConnector;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { IProactiveChatTrigger } from '../../interfaces';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\n\r\n/**\r\n * ProactiveChatTrigger class - checks if Proactive Chat should be triggered, starts the chat and sets context\r\n */\r\nabstract class ProactiveChatTrigger implements IProactiveChatTrigger {\r\n public props: IPvaChatConnectorViewProps;\r\n public context: IChatContext;\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n this.props = props;\r\n this.context = context;\r\n }\r\n\r\n /**\r\n * Generates Chat Context with included properties related to Proactive Chat\r\n * @returns TContextProvider - Chat Context\r\n */\r\n public abstract getContextProvider(): TContextProvider;\r\n\r\n /**\r\n * Generates chat welcome message to be used if Proactive Chat is triggered\r\n * @returns string - chat welcome message\r\n */\r\n public abstract getMessage(): string;\r\n\r\n /**\r\n * Validate specific trigger conditions if Proactive Chat should be initiated\r\n * @returns boolean (TRUE if Proactive Chat should be triggered)\r\n */\r\n public abstract validate(): Promise;\r\n}\r\n\r\nexport default ProactiveChatTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n// @ts-ignore\r\n/* eslint-disable no-duplicate-imports */\r\nimport { getCartState, ICartState } from '@msdyn365-commerce/global-state';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * CartAmountTrigger class - proactive chat is triggered if cArt amount is in preset boundaries (config.proactiveOnCartAmountMin, config.proactiveOnCartAmountMax)\r\n */\r\nclass CartAmountTrigger extends ProactiveChatTrigger {\r\n private min?: number;\r\n private max?: number;\r\n private totalInCart: number = 0;\r\n\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n this.min = this.props.config.proactiveOnCartAmountMin;\r\n this.max = this.props.config.proactiveOnCartAmountMax;\r\n this.props.context.telemetry.debug(\r\n `[Chat][${CartAmountTrigger.name}] Cart amount proactive chat initialized with min: '${this.min}'; max: '${this.max}'.`\r\n );\r\n }\r\n\r\n public async validate(): Promise {\r\n const cart = await this._getCart();\r\n if (cart.isEmpty) {\r\n this.props.context.telemetry.debug(`[Chat][${CartAmountTrigger.name}] Cart was empty. Validation returning 'false'.`);\r\n return false;\r\n }\r\n\r\n this.totalInCart = cart.cart.TotalAmount || 0;\r\n let retVal = false;\r\n if (this.min) {\r\n if (this.max) {\r\n retVal = this.min <= this.totalInCart && this.totalInCart <= this.max;\r\n } else {\r\n retVal = this.min <= this.totalInCart;\r\n }\r\n } else {\r\n if (this.max) {\r\n retVal = this.totalInCart <= this.max;\r\n } else {\r\n retVal = false;\r\n }\r\n }\r\n this.props.context.telemetry.debug(\r\n `[Chat][${CartAmountTrigger.name}] Validation result: '${retVal}'; Cart total: '${this.totalInCart}'.`\r\n );\r\n return retVal;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: 'Cart Amount',\r\n eCommerceCustProactiveShoppingCartAmount: `${this.totalInCart}`\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnCartAmountMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n\r\n private async _getCart(): Promise {\r\n return getCartState(this.props.context.actionContext);\r\n }\r\n}\r\n\r\nexport default CartAmountTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n// @ts-ignore\r\n/* eslint-disable no-duplicate-imports */\r\nimport { getCartState, ICartState } from '@msdyn365-commerce/global-state';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * CartNumberOfItemsTrigger class - proactive chat is triggered if Cart Number of Items is in preset boundaries (config.proactiveOnCartNoOfItemsMin, config.proactiveOnCartNoOfItemsMax)\r\n */\r\nclass CartNumberOfItemsTrigger extends ProactiveChatTrigger {\r\n private min?: number;\r\n private max?: number;\r\n private numberOfItems: number = 0;\r\n\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n this.min = this.props.config.proactiveOnCartNoOfItemsMin;\r\n this.max = this.props.config.proactiveOnCartNoOfItemsMax;\r\n\r\n this.props.context.telemetry.debug(\r\n `[${CartNumberOfItemsTrigger.name}] Cart number of items proactive chat initialized with min: '${this.min}'; max: '${this.max}'.`\r\n );\r\n }\r\n\r\n public async validate(): Promise {\r\n const cart = await this._getCart();\r\n if (cart.isEmpty) {\r\n this.props.context.telemetry.debug(`[Chat][${CartNumberOfItemsTrigger.name}] Cart was empty. Validation returning 'false'.`);\r\n return false;\r\n }\r\n\r\n this.numberOfItems = cart.cart.TotalItems || 0;\r\n\r\n let retVal = false;\r\n if (this.min) {\r\n if (this.max) {\r\n retVal = this.min <= this.numberOfItems && this.numberOfItems <= this.max;\r\n } else {\r\n retVal = this.min <= this.numberOfItems;\r\n }\r\n } else {\r\n if (this.max) {\r\n retVal = this.numberOfItems <= this.max;\r\n } else {\r\n retVal = false;\r\n }\r\n }\r\n this.props.context.telemetry.debug(\r\n `[${CartNumberOfItemsTrigger.name}] Validation result: '${retVal}'; Number of items in cart: '${this.numberOfItems}'.`\r\n );\r\n return retVal;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: 'Cart Number of Items',\r\n eCommerceCustProactiveShoppingCartNumberOfItems: `${this.numberOfItems}`\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnCartNoOfItemsMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n\r\n private async _getCart(): Promise {\r\n return getCartState(this.props.context.actionContext);\r\n }\r\n}\r\n\r\nexport default CartNumberOfItemsTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n// @ts-ignore\r\n/* eslint-disable no-duplicate-imports */\r\nimport { getCartState, ICartState } from '@msdyn365-commerce/global-state';\r\nimport { TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * CartSpecificProductTrigger class - proactive chat is triggered if a Product in the Cart is in preset list of products (config.proactiveOnCartSpecificProductList)\r\n */\r\nclass CartSpecificProductTrigger extends ProactiveChatTrigger {\r\n private product: string = '';\r\n\r\n public async validate(): Promise {\r\n let isValid = false;\r\n const cart = await this._getCart();\r\n if (!cart.isEmpty) {\r\n if (cart.cart.CartLines) {\r\n this.props.context.telemetry.debug(\r\n `[${CartSpecificProductTrigger.name}] Number of cart line items was '${cart.cart.CartLines?.length}'`\r\n );\r\n for (let i = 0; i < cart.cart.CartLines?.length; i++) {\r\n if (cart.cart.CartLines[i]) {\r\n if (this.props.config.proactiveOnCartSpecificProductList) {\r\n this.props.context.telemetry.debug(\r\n `[${CartSpecificProductTrigger.name}] Number of cart specific products was configured for proactive chat was '${this.props.config.proactiveOnCartSpecificProductList?.length}'`\r\n );\r\n // Find first item, from user-defined list of products, that matches the cart lines' itemId in the cart.\r\n for (let j = 0; j < (this.props.config.proactiveOnCartSpecificProductList?.length || 0); j++) {\r\n if (\r\n this.props.config.proactiveOnCartSpecificProductList &&\r\n cart.cart.CartLines[i].ItemId &&\r\n this.props.config.proactiveOnCartSpecificProductList[j] === cart.cart.CartLines[i].ItemId\r\n ) {\r\n this.props.context.telemetry.debug(\r\n `[${CartSpecificProductTrigger.name}] Matched cart line item ID '${cart.cart.CartLines[i].ItemId}' against user-defined list of specific products for proactive chat.`\r\n );\r\n isValid = true;\r\n break;\r\n }\r\n }\r\n }\r\n } else {\r\n // Rest of the CartLines are undefined\r\n break;\r\n }\r\n }\r\n } else {\r\n this.props.context.telemetry.debug(`[Chat][${CartSpecificProductTrigger.name}] Cart did not contain any cart lines.`);\r\n }\r\n } else {\r\n this.props.context.telemetry.debug(`[Chat][${CartSpecificProductTrigger.name}] Cart was empty.`);\r\n }\r\n this.props.context.telemetry.debug(`[Chat][${CartSpecificProductTrigger.name}] Validation returning '${isValid}'.`);\r\n return isValid;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: 'Cart Specific Product',\r\n eCommerceCustProactiveShoppingCartSpecificProduct: `${this.product}`\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnCartSpecificProductMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n\r\n private async _getCart(): Promise {\r\n return getCartState(this.props.context.actionContext);\r\n }\r\n}\r\n\r\nexport default CartSpecificProductTrigger;\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\nexport enum ProactiveChatNames {\r\n DateRange = 'Date Range',\r\n FromSpecificPage = 'From Specific Page',\r\n PageVisits = 'Page Visits',\r\n SpecificLocation = 'Specific Location',\r\n SpecificPage = 'Specific Page',\r\n WaitOnTime = 'Wait On Time'\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\n/* eslint-disable no-duplicate-imports */\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * DateRangeTrigger class - proactive chat is triggered if current date is in preset date boundaries (config.proactiveOnDateRangeStart, config.proactiveOnDateRangeEnd)\r\n */\r\nclass DateRangeTrigger extends ProactiveChatTrigger {\r\n private start?: Date;\r\n private end?: Date;\r\n\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n this.start = this._toDate(this.props.config.proactiveOnDateRangeStart);\r\n this.end = this._toDate(this.props.config.proactiveOnDateRangeEnd);\r\n\r\n this.props.context.telemetry.debug(\r\n `[${DateRangeTrigger.name}] Proactive chat initialized with startDate: '${this.start}'; max: '${this.end}'.`\r\n );\r\n }\r\n\r\n public async validate(): Promise {\r\n const now = new Date();\r\n now.setHours(0, 0, 0, 0);\r\n\r\n let retVal = false;\r\n if (this.start) {\r\n if (this.end) {\r\n retVal = this.start.getTime() <= now.getTime() && now.getTime() <= this.end.getTime();\r\n } else {\r\n retVal = this.start.getTime() <= now.getTime();\r\n }\r\n } else if (this.end) {\r\n retVal = now.getTime() <= this.end.getTime();\r\n }\r\n\r\n this.props.context.telemetry.debug(\r\n `[${DateRangeTrigger.name}] Validation result: '${retVal}'; Current date used to compare: '${now}'.`\r\n );\r\n return retVal;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: ProactiveChatNames.DateRange,\r\n eCommerceCustProactiveFromDate: this.start ? this.start.toUTCString() : '',\r\n eCommerceCustProactiveToDate: this.end ? this.end.toUTCString() : ''\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnDateRangeMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n\r\n /**\r\n * Converts string(us-en) to date\r\n * @param date string (mm/dd/yyyy)\r\n * @returns Date or undefined\r\n */\r\n private _toDate(date?: string): Date | undefined {\r\n if (date) {\r\n const dateParts = date.split('/');\r\n return new Date(+dateParts[2], +dateParts[1] - 1, +dateParts[0]);\r\n } else {\r\n return undefined;\r\n }\r\n }\r\n}\r\n\r\nexport default DateRangeTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * FromSpecificPageTrigger class - proactive chat is triggered if user has come from specific page (the one listed in config.proactiveOnFromSpecificPageList)\r\n */\r\nclass FromSpecificPageTrigger extends ProactiveChatTrigger {\r\n public async validate(): Promise {\r\n let isValid = false;\r\n if (this.props.config.proactiveOnFromSpecificPageList) {\r\n this.props.context.telemetry.debug(\r\n `[${FromSpecificPageTrigger.name}] Number of items in user-defined list of 'From Specific Page' was '${this.props.config.proactiveOnFromSpecificPageList?.length}'.`\r\n );\r\n for (let i = 0; i < (this.props.config.proactiveOnFromSpecificPageList?.length || 0); i++) {\r\n const fromSpecificPageTrimmed: string = this.props.config.proactiveOnFromSpecificPageList[i].trim();\r\n this.props.context.telemetry.debug(\r\n `[Chat][${FromSpecificPageTrigger.name}] Current page URL: '${window.document.referrer}'.`\r\n );\r\n this.props.context.telemetry.debug(\r\n `[${FromSpecificPageTrigger.name}] Current item from user-defined list of 'From Specific Page': '${fromSpecificPageTrimmed}'.`\r\n );\r\n\r\n if (window.document.referrer.indexOf(fromSpecificPageTrimmed) > -1) {\r\n isValid = true;\r\n break;\r\n }\r\n }\r\n } else {\r\n this.props.context.telemetry.debug(\r\n `[Chat][${FromSpecificPageTrigger.name}] User-defined 'From Specific Page' list was undefined.`\r\n );\r\n }\r\n this.props.context.telemetry.debug(`[Chat][${FromSpecificPageTrigger.name}] Validation returning '${isValid}'.`);\r\n return isValid;\r\n }\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: ProactiveChatNames.FromSpecificPage,\r\n eCommerceCustProactiveCameFromPage: window.document.referrer\r\n };\r\n };\r\n }\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnFromSpecificPageMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n}\r\n\r\nexport default FromSpecificPageTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { ICookieContext } from '@msdyn365-commerce/core-internal/dist/types/interfaces/context/ICookieContext';\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * PageVisitTrigger class - proactive chat is triggered if user has visited current page for (config.proactiveOnPageVisitNumber) or more times\r\n */\r\nclass PageVisitTrigger extends ProactiveChatTrigger {\r\n public visits: number = 0;\r\n private cookieName: string = 'TimesPageVisited';\r\n private expdate: Date;\r\n private cookies: ICookieContext;\r\n\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n this.cookies = this.props.context.request.cookies;\r\n this.expdate = new Date();\r\n // Set expiry date to 365 days.\r\n this.expdate.setTime(this.expdate.getTime() + 24 * 60 * 60 * 1000 * 365);\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Cookie expiry date set to: '${this.expdate}'.`);\r\n\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Cookie context is given: '${this.cookies.isConsentGiven()}'.`);\r\n if (this.cookies.isConsentGiven()) {\r\n this.cookies.setConsentCookie();\r\n }\r\n\r\n this._updateVisitCounter();\r\n }\r\n\r\n public async validate(): Promise {\r\n let retVal: boolean = false;\r\n\r\n if (this.props.config.proactiveOnPageVisitNumber) {\r\n retVal = this.visits >= this.props.config.proactiveOnPageVisitNumber;\r\n }\r\n\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Validation result: '${retVal}'.`);\r\n return retVal;\r\n }\r\n\r\n public clear(): void {\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Clearing cookie for page visit counter.`);\r\n this.cookies.set(this.cookieName, 0, {\r\n domain: window.location.hostname,\r\n path: window.location.pathname,\r\n expires: this.expdate\r\n });\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: ProactiveChatNames.PageVisits,\r\n eCommerceCustProactiveNumberOfVisits: `${this.visits}`\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnPageVisitMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n\r\n private _updateVisitCounter(): void {\r\n this.visits = this.cookies.get(this.cookieName).value || 0;\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Page visit counter BEFORE update: '${this.visits}.`);\r\n ++this.visits;\r\n this.props.context.telemetry.debug(`[Chat][${PageVisitTrigger.name}] Page visit counter AFTER update: '${this.visits}.`);\r\n\r\n this.cookies.set(this.cookieName, this.visits, {\r\n domain: window.location.hostname,\r\n path: window.location.pathname,\r\n expires: this.expdate\r\n });\r\n }\r\n}\r\n\r\nexport default PageVisitTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { IExtendedRequest } from '../../interfaces';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * SpecificPageTrigger class - proactive chat is triggered if user geographically uses the website from specific country/regions(config.proactiveOnSpecificCountryRegionCountry)\r\n */\r\nclass SpecificCountryRegionTrigger extends ProactiveChatTrigger {\r\n private customerCountryCode: string;\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n this.customerCountryCode = (this.props.context.request).suggestedMarket || 'n/a';\r\n this.props.context.telemetry.debug(\r\n `[${SpecificCountryRegionTrigger.name}] Customer country code set to: '${this.customerCountryCode}.'`\r\n );\r\n }\r\n\r\n public async validate(): Promise {\r\n const retVal: boolean = this.props.config.proactiveOnSpecificLocation\r\n ? this.props.config.proactiveOnSpecificLocation.toLowerCase().indexOf(this.customerCountryCode.toLowerCase()) > -1\r\n : false;\r\n this.props.context.telemetry.debug(`[Chat][${SpecificCountryRegionTrigger.name}] Validation returning '${retVal}'.`);\r\n return retVal;\r\n }\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveCountryCode: this.props.config.proactiveOnSpecificLocation || '',\r\n eCommerceCustProactiveType: ProactiveChatNames.SpecificLocation\r\n };\r\n };\r\n }\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnSpecificCountryRegionMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n}\r\n\r\nexport default SpecificCountryRegionTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * SpecificPageTrigger class - proactive chat is triggered if current page is listed in config.proactiveOnSpecificPageList\r\n */\r\nclass SpecificPageTrigger extends ProactiveChatTrigger {\r\n public async validate(): Promise {\r\n let isValid = false;\r\n if (this.props.config.proactiveOnSpecificPageList) {\r\n this.props.context.telemetry.debug(\r\n `[${SpecificPageTrigger.name}] Number of items in user-defined list of 'Specific Pages' was '${this.props.config.proactiveOnSpecificPageList?.length}'.`\r\n );\r\n for (let i = 0; i < (this.props.config.proactiveOnSpecificPageList?.length || 0); i++) {\r\n const specificPageTrimmed: string = this.props.config.proactiveOnSpecificPageList[i].trim();\r\n this.props.context.telemetry.debug(`[] Current location URL: ${window.location.href}.`);\r\n this.props.context.telemetry.debug(`[] Current item from user-defined list of 'Specific Page': ${specificPageTrimmed}.`);\r\n if (window.location.href.indexOf(specificPageTrimmed) > -1) {\r\n isValid = true;\r\n break;\r\n }\r\n }\r\n } else {\r\n this.props.context.telemetry.debug(`[Chat][${SpecificPageTrigger.name}] User-defined 'Specific Page' list was undefined.`);\r\n }\r\n this.props.context.telemetry.debug(`[Chat][${SpecificPageTrigger.name}] Validation returning '${isValid}'.`);\r\n return isValid;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: ProactiveChatNames.SpecificPage\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnSpecificPageMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n}\r\n\r\nexport default SpecificPageTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport { ProactiveChatNames } from '../../helpers/consts';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../../pva-chat-connector';\r\nimport ProactiveChatTrigger from './proactive-chat-trigger';\r\n\r\n/**\r\n * WaitOnTimeTrigger - proactive chat is triggered if user stays on current page for more than (config.proactiveOnWaitTimeSeconds) seconds\r\n */\r\nclass WaitOnTimeTrigger extends ProactiveChatTrigger {\r\n private waitTimeInMilliseconds: number | undefined;\r\n\r\n constructor(props: IPvaChatConnectorViewProps, context: IChatContext) {\r\n super(props, context);\r\n if (this.props.config.proactiveOnWaitTimeSeconds && !isNaN(this.props.config.proactiveOnWaitTimeSeconds)) {\r\n this.waitTimeInMilliseconds = Number(this.props.config.proactiveOnWaitTimeSeconds) * 1000;\r\n this.props.context.telemetry.debug(\r\n `[Chat][${WaitOnTimeTrigger.name}] Wait time (ms) set to: '${this.waitTimeInMilliseconds}'.`\r\n );\r\n }\r\n }\r\n\r\n public async validate(): Promise {\r\n const retVal: boolean = this.waitTimeInMilliseconds !== undefined;\r\n this.props.context.telemetry.debug(`[Chat][${WaitOnTimeTrigger.name}] Validation returning '${retVal}'.`);\r\n return retVal;\r\n }\r\n\r\n public getContextProvider(): TContextProvider {\r\n const triggerTime = Date.now() + (this.waitTimeInMilliseconds || 0);\r\n return () => {\r\n return triggerTime > Date.now()\r\n ? this.context\r\n : {\r\n ...this.context,\r\n eCommerceCustIsProactiveChat: 'True',\r\n eCommerceCustProactiveType: ProactiveChatNames.WaitOnTime,\r\n eCommerceCustProactiveTimeOnPage: `${this.waitTimeInMilliseconds ? this.waitTimeInMilliseconds : 0}`\r\n };\r\n };\r\n }\r\n\r\n public getMessage(): string {\r\n // @TODO: Add message processing if needed\r\n return this.props.config.proactiveOnWaitTimeMessage || this.props.config.proactiveDefaultMessage;\r\n }\r\n}\r\n\r\nexport default WaitOnTimeTrigger;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport CartAmountTrigger from './triggers/cart-amount-trigger';\r\nimport CartNumberOfItemsTrigger from './triggers/cart-number-of-items-trigger';\r\nimport CartSpecificProductTrigger from './triggers/cart-specific-product-trigger';\r\nimport DateRangeTrigger from './triggers/date-range-trigger';\r\nimport FromSpecificPageTrigger from './triggers/from-specific-page-trigger';\r\nimport PageVisitTrigger from './triggers/page-visits-trigger';\r\nimport SpecificCountryRegionTrigger from './triggers/specific-CountryRegion-trigger';\r\nimport SpecificPageTrigger from './triggers/specific-page-trigger';\r\nimport WaitOnTimeTrigger from './triggers/wait-on-time-trigger';\r\n\r\ntype ProactiveChat =\r\n | typeof DateRangeTrigger\r\n | typeof SpecificPageTrigger\r\n | typeof FromSpecificPageTrigger\r\n | typeof PageVisitTrigger\r\n | typeof SpecificCountryRegionTrigger\r\n | typeof CartAmountTrigger\r\n | typeof CartNumberOfItemsTrigger\r\n | typeof CartSpecificProductTrigger\r\n | typeof WaitOnTimeTrigger;\r\n\r\n/**\r\n * List of Proactive Chat Validators in order of validation (first proactive chat that pass validation is triggered, the rest are ommited)\r\n */\r\nexport const ProactiveTriggers: ProactiveChat[] = [\r\n DateRangeTrigger,\r\n SpecificPageTrigger,\r\n FromSpecificPageTrigger,\r\n PageVisitTrigger,\r\n SpecificCountryRegionTrigger,\r\n CartAmountTrigger,\r\n CartNumberOfItemsTrigger,\r\n CartSpecificProductTrigger,\r\n WaitOnTimeTrigger\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\n/* eslint-disable no-duplicate-imports */\r\nimport { IRequestContextUser } from '@msdyn365-commerce/core-internal/dist/types/interfaces/context/IRequestContext';\r\nimport { v4 as uuidv4 } from 'uuid';\r\nimport { ProactiveTriggers } from '../proactive';\r\nimport ProactiveChatTrigger from '../proactive/triggers/proactive-chat-trigger';\r\nimport { IPvaChatConnectorViewProps } from '../pva-chat-connector';\r\nimport { IProactiveData } from './../interfaces';\r\nimport { IChatContext, TContextProvider } from '@msdyn365-commerce-modules/chat';\r\n\r\n/**\r\n *\r\n * ContextProvider class - generates chat context, and checks for proactive triggers\r\n */\r\nclass ContextProvider {\r\n public data: IProactiveData;\r\n public props: IPvaChatConnectorViewProps;\r\n private user: IRequestContextUser;\r\n private userId: string;\r\n private context: IChatContext;\r\n private provider: TContextProvider | undefined;\r\n\r\n constructor(props: IPvaChatConnectorViewProps) {\r\n this.props = props;\r\n this.user = this.props.context.request.user;\r\n this.userId = `dl_${uuidv4()}`;\r\n this.context = this._getContext();\r\n // Proactive Chat related data\r\n this.data = {\r\n enabled: false,\r\n timeout: this.props.config.proactiveOnWaitTimeSeconds || 0,\r\n message: this.props.config.proactiveDefaultMessage\r\n };\r\n }\r\n\r\n /**\r\n * Executes Proactive Chat validation\r\n * @returns TContextProvider - a function returning IChatContext object\r\n */\r\n public async init(): Promise {\r\n try {\r\n await this._proactiveCheck();\r\n } catch (e) {\r\n // Use ?debug=true to see telemetry\r\n // If previous block fails, chat will still be available (no need to display any errors to user)\r\n this.props.telemetry.exception(e);\r\n }\r\n return this.provider || this._getProvider();\r\n }\r\n\r\n /**\r\n * Returns TContextProvider - a function returning IChatContext object\r\n */\r\n private _getProvider(): TContextProvider {\r\n return () => {\r\n return {\r\n eCommerceOperatingUnitNumber: this.props.context.request.apiSettings.oun,\r\n eCommerceBaseUrl: this.props.context.request.apiSettings.baseUrl,\r\n eCommerceDataAreaId: this.props.context.request.channel?.InventLocationDataAreaId,\r\n UserId: this.userId,\r\n // eCommerceCust...\r\n AccountNumber: this.user.customerAccountNumber ? this.user.customerAccountNumber : 'N/A',\r\n Email: this.user.emailAddress ? this.user.emailAddress : 'N/A',\r\n FirstName: this.user.firstName ? this.user.firstName : this.props.config.anonymousUserName,\r\n LastName: this.user.lastName ? this.user.lastName : 'N/A',\r\n Name: this.user.name ? this.user.name : this.props.config.anonymousUserName,\r\n eCommerceCustPageURL: window.location.href,\r\n eCommerceCustChatType: 'pva',\r\n // Proactive chat\r\n eCommerceCustIsProactiveChat: 'False',\r\n eCommerceCustProactiveType: 'N/A',\r\n // Date Range\r\n eCommerceCustProactiveFromDate: 'N/A',\r\n eCommerceCustProactiveToDate: 'N/A',\r\n // From Specific Page\r\n eCommerceCustProactiveCameFromPage: 'N/A',\r\n // No. Page Visits\r\n eCommerceCustProactiveNumberOfVisits: 'N/A',\r\n // Specific CountryRegion\r\n eCommerceCustProactiveCountryCode: 'N/A',\r\n // Specific Page => eCommerceCustPageURL\r\n // eCommerceCustProactiveSpecificPage: 'N/A',\r\n // Wait On Time\r\n eCommerceCustProactiveTimeOnPage: 'N/A',\r\n // Shopping cart amount\r\n eCommerceCustProactiveShoppingCartAmount: 'N/A',\r\n // Shopping cart number of items\r\n eCommerceCustProactiveShoppingCartNumberOfItems: 'N/A',\r\n // Shopping cart specific product\r\n eCommerceCustProactiveShoppingCartSpecificProduct: 'N/A'\r\n };\r\n };\r\n }\r\n\r\n /**\r\n * Returns default IChatContext object\r\n */\r\n private _getContext(): IChatContext {\r\n return this._getProvider()();\r\n }\r\n\r\n /**\r\n * Validates proactive triggers to check if proactive chat should be initialized\r\n */\r\n private async _proactiveCheck(): Promise {\r\n if (this.props.config.proactiveChatEnabled) {\r\n for (let i = 0; i < ProactiveTriggers.length; i++) {\r\n const proactive = new ProactiveTriggers[i](this.props, this.context);\r\n // Only first detected proactive trigger gets executed\r\n if (await this._isProactive(proactive)) {\r\n this.props.context.telemetry.debug(`First detected proactive trigger to be executed: ${proactive}`);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Validates if proactive chat should be triggered for given ProactiveTrigger\r\n * @param proactive ProactiveChatTrigger\r\n * @returns boolean\r\n */\r\n private async _isProactive(proactive: ProactiveChatTrigger): Promise {\r\n this.data.enabled = await proactive.validate();\r\n if (this.data.enabled) {\r\n this.provider = proactive.getContextProvider();\r\n this.data.message = proactive.getMessage();\r\n }\r\n return this.data.enabled;\r\n }\r\n}\r\n\r\nexport default ContextProvider;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/**\r\n * Style generating functions\r\n */\r\n/* eslint-disable no-duplicate-imports */\r\nimport { IAvatarStyling, IBubbleStyling, IChatCustomStyle, IChatStyling, IOtherStyling, ISuggestedActionStyling } from '../interfaces';\r\nimport { IPvaChatConnectorConfig } from '../pva-chat-connector.props.autogenerated';\r\n\r\nconst getChatWrapperStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n position: config.position || 'inherit',\r\n top: config.top ? config.top : 'inherit',\r\n right: config.right ? config.right : 'inherit',\r\n bottom: config.bottom ? config.bottom : 'inherit',\r\n left: config.left ? config.left : 'inherit',\r\n zIndex: 1000,\r\n display: 'flex',\r\n justifyContent: 'flex-end'\r\n };\r\n};\r\n\r\nconst getMaximizedChatWrapperStyle = (config: IPvaChatConnectorConfig, isMobileDevice: boolean): React.CSSProperties => {\r\n if (isMobileDevice) {\r\n return {\r\n height: '90%',\r\n width: '100%',\r\n bottom: '0.5em',\r\n right: '0',\r\n padding: '5px'\r\n };\r\n }\r\n return {\r\n height: config.chatHeight ? config.chatHeight : '80%',\r\n width: config.chatWidth ? config.chatWidth : 'inherit'\r\n };\r\n};\r\n\r\nconst getChatButtonStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n display: 'flex',\r\n alignItems: 'center',\r\n backgroundColor: config.startChatButtonBackgroundColor || 'white',\r\n color: config.startChatButtonTextColor || 'inherit',\r\n borderColor: config.startChatButtonBorderColor || 'inherit',\r\n borderRadius: config.startChatButtonBorderRadius || '0px',\r\n borderStyle: config.startChatButtonBorderStyle || 'solid',\r\n borderWidth: config.startChatButtonBorderWidth ? config.startChatButtonBorderWidth : '0px',\r\n padding: config.storeLogoURL ? '2px 20px 2px 2px' : '10px 20px 10px 20px',\r\n cursor: 'pointer',\r\n outlineStyle: 'none',\r\n alignSelf: 'flex-end',\r\n boxShadow: '0 0 4px rgba(102,102,102,.5)',\r\n WebkitBoxShadow: '0 0 4px rgba(102,102,102,.5)',\r\n MozBoxShadow: '0 0 4px rgba(102,102,102,.5)'\r\n };\r\n};\r\n\r\nconst getButtonStoreLogoStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n backgroundColor: config.headerBackgroundColor || 'inherit',\r\n color: config.headerTextColor || 'inherit',\r\n borderRadius: '50%',\r\n padding: '11px',\r\n width: '30px',\r\n height: '30px',\r\n marginRight: '12px',\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n boxSizing: 'content-box'\r\n };\r\n};\r\n\r\nconst getChatStoreLogoStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n backgroundColor: config.headerBackgroundColor || 'inherit',\r\n color: config.headerTextColor || 'inherit',\r\n borderRadius: '50%',\r\n padding: '11px',\r\n width: '30px',\r\n height: '30px',\r\n margin: '5px 12px 5px 5px',\r\n alignSelf: 'center',\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n boxSizing: 'content-box'\r\n };\r\n};\r\n\r\nconst getChatMessagesStyle = (config: IPvaChatConnectorConfig, minimized: boolean): React.CSSProperties => {\r\n return {\r\n display: minimized ? 'none' : 'block',\r\n backgroundColor: config.backgroundColor || 'White',\r\n height: '100%',\r\n width: '100%',\r\n boxSizing: 'border-box',\r\n position: 'relative'\r\n };\r\n};\r\n\r\nconst getChatMessageHeader = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n backgroundColor: config.headerBackgroundColor || 'inherit',\r\n backgroundImage: `url(\"${config.headerBackgroundImageURL}\")` || 'none',\r\n color: config.headerTextColor || 'inherit',\r\n backgroundRepeat: 'no-repeat',\r\n display: 'flex',\r\n alignItems: 'flex-start',\r\n flexDirection: 'row',\r\n width: '100%',\r\n position: 'absolute',\r\n top: config.chatHeaderHeight ? `-${config.chatHeaderHeight}` : '',\r\n height: config.chatHeaderHeight,\r\n borderColor: config.headerBackgroundColor ? config.headerBackgroundColor : 'inherit',\r\n borderStyle: config.chatBorderStyle ? config.chatBorderStyle : 'none',\r\n borderWidth: config.chatBorderWidth ? config.chatBorderWidth : '0px'\r\n };\r\n};\r\n\r\nconst getMinimizeButtonStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n borderTop: 'none',\r\n borderLeft: 'none',\r\n borderRight: 'none',\r\n borderBottom: `solid 2px ${config.headerTextColor || 'White'}`,\r\n backgroundColor: 'transparent',\r\n padding: '5px 10px 3px 10px',\r\n cursor: 'pointer',\r\n outlineStyle: 'none',\r\n marginTop: '7px',\r\n marginRight: '7px'\r\n };\r\n};\r\n\r\nconst getCloseButtonStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n border: 'none',\r\n color: config.headerTextColor || 'White',\r\n backgroundColor: 'transparent',\r\n padding: '0px 0px 0px 7px',\r\n cursor: 'pointer',\r\n outlineStyle: 'none',\r\n marginTop: '7px',\r\n marginRight: '7px'\r\n };\r\n};\r\n\r\nconst getChatMessageContent = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n height: '100%',\r\n width: '100%',\r\n borderColor: config.chatBorderColor ? config.chatBorderColor : 'inherit',\r\n borderStyle: config.chatBorderStyle ? config.chatBorderStyle : 'none',\r\n borderWidth: config.chatBorderWidth ? config.chatBorderWidth : '0px'\r\n };\r\n};\r\n\r\nconst getProactiveWrapperStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n flexDirection: 'column',\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n backgroundColor: config.backgroundColor || 'White'\r\n };\r\n};\r\n\r\nconst getProactiveMessageHeader = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n backgroundColor: config.headerBackgroundColor || 'inherit',\r\n backgroundImage: `url(\"${config.headerBackgroundImageURL}\")` || 'none',\r\n color: config.headerTextColor || 'inherit',\r\n backgroundRepeat: 'no-repeat',\r\n display: 'flex',\r\n alignItems: 'flex-start',\r\n flexDirection: 'row',\r\n boxSizing: 'border-box',\r\n width: '100%',\r\n height: config.chatHeaderHeight,\r\n borderColor: config.headerBackgroundColor ? config.headerBackgroundColor : 'inherit',\r\n borderStyle: config.chatBorderStyle ? config.chatBorderStyle : 'none',\r\n borderWidth: config.chatBorderWidth ? config.chatBorderWidth : '0px'\r\n };\r\n};\r\n\r\nconst getProactiveMessageContent = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n width: '100%',\r\n padding: '10px 20px',\r\n boxSizing: 'border-box',\r\n borderColor: config.chatBorderColor ? config.chatBorderColor : 'inherit',\r\n borderStyle: config.chatBorderStyle ? config.chatBorderStyle : 'none',\r\n borderWidth: config.chatBorderWidth ? config.chatBorderWidth : '0px'\r\n };\r\n};\r\n\r\nconst getProactiveButtonStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n config.chatHeaderHeight = config.chatHeaderHeight || '70px';\r\n return {\r\n color: config.headerTextColor || 'inherit',\r\n cursor: 'pointer',\r\n padding: '5px 10px',\r\n outline: 'none',\r\n border: 'none',\r\n backgroundColor: config.headerBackgroundColor || 'inherit',\r\n borderRadius: '25px'\r\n };\r\n};\r\n\r\nconst getRedDotStyle = (config: IPvaChatConnectorConfig): React.CSSProperties => {\r\n return {\r\n background: 'Red',\r\n borderRadius: '50%',\r\n height: '5px',\r\n width: '5px',\r\n position: 'absolute',\r\n right: '10px',\r\n bottom: '33px'\r\n };\r\n};\r\n\r\n/**\r\n * Generates styles for the chat wrapper, and proactive chat parts\r\n * @param config IPvaChatConnectorConfig\r\n * @param minimized boolean\r\n * @returns IChatCustomStyle\r\n */\r\nexport const getChatStyling = (config: IPvaChatConnectorConfig, minimized: boolean, isMobileDevice: boolean): IChatCustomStyle => {\r\n return {\r\n ChatWrapperStyle: getChatWrapperStyle(config),\r\n MaximizedChatWrapperStyle: getMaximizedChatWrapperStyle(config, isMobileDevice),\r\n ChatButtonStyle: getChatButtonStyle(config),\r\n ButtonStoreLogoStyle: getButtonStoreLogoStyle(config),\r\n ChatStoreLogoStyle: getChatStoreLogoStyle(config),\r\n ChatMessagesStyle: getChatMessagesStyle(config, minimized),\r\n ChatMessageHeader: getChatMessageHeader(config),\r\n MinimizeButtonStyle: getMinimizeButtonStyle(config),\r\n CloseButtonStyle: getCloseButtonStyle(config),\r\n ChatMessageContent: getChatMessageContent(config),\r\n ProactiveWrapperStyle: getProactiveWrapperStyle(config),\r\n ProactiveMessageHeader: getProactiveMessageHeader(config),\r\n ProactiveMessageContent: getProactiveMessageContent(config),\r\n ProactiveButtonStyle: getProactiveButtonStyle(config),\r\n RedDotStyle: getRedDotStyle(config)\r\n };\r\n};\r\n\r\nconst fontFormat = (font?: string): string | undefined => {\r\n if (font && font.length > 0) {\r\n const arr = font.split(',');\r\n for (let i = 0; i < arr.length; i++) {\r\n arr[i] = `'${arr[i].trim()}'`;\r\n }\r\n font = arr.join(', ');\r\n } else {\r\n font = \"'Calibri', 'Helvetica Neue', 'Arial', 'sans-serif'\";\r\n }\r\n\r\n return font;\r\n};\r\n\r\nconst getBubbleStyling = (config: IPvaChatConnectorConfig): IBubbleStyling => {\r\n return {\r\n bubbleBackground: config.bubbleBackground || 'White',\r\n bubbleTextColor: config.bubbleTextColor || 'Black',\r\n bubbleBorderColor: config.bubbleBorderColor || '#e6e6e6',\r\n bubbleBorderRadius: config.bubbleBorderRadius || '2',\r\n bubbleBorderStyle: config.bubbleBorderStyle || 'solid',\r\n bubbleBorderWidth: config.bubbleBorderWidth || '1',\r\n bubbleFromUserBackground: config.bubbleFromUserBackground || 'White',\r\n bubbleFromUserTextColor: config.bubbleFromUserTextColor || 'Black',\r\n bubbleFromUserBorderColor: config.bubbleFromUserBorderColor || '#e6e6e6',\r\n bubbleFromUserBorderRadius: config.bubbleFromUserBorderRadius || '2',\r\n bubbleFromUserBorderStyle: config.bubbleFromUserBorderStyle || 'solid',\r\n bubbleFromUserBorderWidth: config.bubbleFromUserBorderWidth || '1'\r\n };\r\n};\r\n\r\n// eslint-disable-next-line complexity\r\nconst getOtherStyling = (config: IPvaChatConnectorConfig): IOtherStyling => {\r\n return {\r\n groupTimestamp: config.groupTimestamp || true,\r\n sendTimeout: config.sendTimeout || '20000',\r\n sendTimeoutForAttachments: config.sendTimeoutForAttachments || '120000',\r\n timestampColor: config.timestampColor || 'undefined',\r\n timestampFormat: config.timestampFormat || 'undefined',\r\n notificationDebounceTimeout: config.notificationDebounceTimeout || '400',\r\n hideToaster: config.hideToaster || true,\r\n toasterHeight: config.toasterHeight || '32',\r\n toasterMaxHeight: config.toasterMaxHeight || '32 * 5',\r\n toasterSingularMaxHeight: config.toasterSingularMaxHeight || '50',\r\n toastFontSize: config.toastFontSize || '87.5%',\r\n toastIconWidth: config.toastIconWidth || '36',\r\n toastSeparatorColor: config.toastSeparatorColor || '#E8EAEC',\r\n toastTextPadding: config.toastTextPadding || '6',\r\n toastErrorBackgroundColor: config.toastErrorBackgroundColor || '#FDE7E9',\r\n toastErrorColor: config.toastErrorColor || '#A80000',\r\n toastInfoBackgroundColor: config.toastInfoBackgroundColor || '#CEF1FF',\r\n toastInfoColor: config.toastInfoColor || '#105E7D',\r\n toastSuccessBackgroundColor: config.toastSuccessBackgroundColor || '#DFF6DD',\r\n toastSuccessColor: config.toastSuccessColor || '#107C10',\r\n toastWarnBackgroundColor: config.toastWarnBackgroundColor || '#FFF4CE',\r\n toastWarnColor: config.toastWarnColor || '#3B3A39',\r\n typingAnimationBackgroundImage: config.typingAnimationBackgroundImage || 'undefined',\r\n typingAnimationDuration: config.typingAnimationDuration || '5000',\r\n typingAnimationHeight: config.typingAnimationHeight || '20',\r\n typingAnimationWidth: config.typingAnimationWidth || '64',\r\n videoHeight: config.videoHeight || '270',\r\n markdownExternalLinkIconImage:\r\n config.markdownExternalLinkIconImage ||\r\n 'url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIzIDMgMTggMTgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcuMjUwMSA0LjUwMDE3SDEwLjc0OTVDMTEuMTYzNyA0LjUwMDE3IDExLjQ5OTUgNC44MzU5NiAxMS40OTk1IDUuMjUwMTdDMTEuNDk5NSA1LjYyOTg2IDExLjIxNzMgNS45NDM2NiAxMC44NTEzIDUuOTkzMzJMMTAuNzQ5NSA2LjAwMDE3SDcuMjQ5NzRDNi4wNzA3OSA1Ljk5OTYxIDUuMTAzNDkgNi45MDY1NiA1LjAwNzg2IDguMDYxMTJMNS4wMDAyOCA4LjIyMDAzTDUuMDAzMTIgMTYuNzUwN0M1LjAwMzQzIDE3Ljk0MTUgNS45Mjg4NSAxOC45MTYxIDcuMDk5NjYgMTguOTk0OUw3LjI1MzcxIDE5LjAwMDFMMTUuNzUxOCAxOC45ODg0QzE2Ljk0MTUgMTguOTg2OCAxNy45MTQ1IDE4LjA2MiAxNy45OTM1IDE2Ljg5MjNMMTcuOTk4NyAxNi43Mzg0VjEzLjIzMjFDMTcuOTk4NyAxMi44MTc5IDE4LjMzNDUgMTIuNDgyMSAxOC43NDg3IDEyLjQ4MjFDMTkuMTI4NCAxMi40ODIxIDE5LjQ0MjIgMTIuNzY0MyAxOS40OTE4IDEzLjEzMDNMMTkuNDk4NyAxMy4yMzIxVjE2LjczODRDMTkuNDk4NyAxOC43NDA3IDE3LjkyOTMgMjAuMzc2OSAxNS45NTI4IDIwLjQ4MjlMMTUuNzUzOCAyMC40ODg0TDcuMjU4MjcgMjAuNTAwMUw3LjA1NDk1IDIwLjQ5NDlDNS4xNDIzOSAyMC4zOTU0IDMuNjA4OTUgMTguODYyNyAzLjUwODM3IDE2Ljk1MDJMMy41MDMxMiAxNi43NTExTDMuNTAwODkgOC4yNTI3TDMuNTA1MjkgOC4wNTAyQzMuNjA1MzkgNi4xMzc0OSA1LjEzODY3IDQuNjA0NDkgNy4wNTA5NiA0LjUwNTI3TDcuMjUwMSA0LjUwMDE3SDEwLjc0OTVINy4yNTAxWk0xMy43NDgxIDMuMDAxNDZMMjAuMzAxOCAzLjAwMTk3TDIwLjQwMTQgMy4wMTU3NUwyMC41MDIyIDMuMDQzOTNMMjAuNTU5IDMuMDY4MDNDMjAuNjEyMiAzLjA5MTIyIDIwLjY2MzQgMy4xMjE2MyAyMC43MTExIDMuMTU4ODVMMjAuNzgwNCAzLjIyMTU2TDIwLjg2NDEgMy4zMjAxNEwyMC45MTgzIDMuNDEwMjVMMjAuOTU3IDMuNTAwNTdMMjAuOTc2MiAzLjU2NDc2TDIwLjk4OTggMy42Mjg2MkwyMC45OTkyIDMuNzIyODJMMjAuOTk5NyAxMC4yNTU0QzIwLjk5OTcgMTAuNjY5NiAyMC42NjM5IDExLjAwNTQgMjAuMjQ5NyAxMS4wMDU0QzE5Ljg3IDExLjAwNTQgMTkuNTU2MiAxMC43MjMyIDE5LjUwNjUgMTAuMzU3MUwxOS40OTk3IDEwLjI1NTRMMTkuNDk4OSA1LjU2MTQ3TDEyLjI3OTcgMTIuNzg0N0MxMi4wMTM0IDEzLjA1MSAxMS41OTY4IDEzLjA3NTMgMTEuMzAzMSAxMi44NTc1TDExLjIxOSAxMi43ODQ5QzEwLjk1MjcgMTIuNTE4NyAxMC45Mjg0IDEyLjEwMjEgMTEuMTQ2MiAxMS44MDg0TDExLjIxODggMTEuNzI0M0wxOC40MzY5IDQuNTAxNDZIMTMuNzQ4MUMxMy4zNjg0IDQuNTAxNDYgMTMuMDU0NiA0LjIxOTMxIDEzLjAwNSAzLjg1MzI0TDEyLjk5ODEgMy43NTE0NkMxMi45OTgxIDMuMzcxNzcgMTMuMjgwMyAzLjA1Nzk3IDEzLjY0NjQgMy4wMDgzMUwxMy43NDgxIDMuMDAxNDZaIiBmaWxsPSIjMjEyMTIxIiAvPjwvc3ZnPg==)',\r\n markdownRespectCRLF: config.markdownRespectCRLF || 'true',\r\n internalLiveRegionFadeAfter: config.internalLiveRegionFadeAfter || '1000',\r\n accent: config.accent || '#0063B1',\r\n subtle: config.subtle || '#767676'\r\n };\r\n};\r\n\r\nconst getAvatarStyling = (config: IPvaChatConnectorConfig): IAvatarStyling => {\r\n return {\r\n avatarBorderRadius: config.avatarBorderRadius || '50%',\r\n avatarSize: config.avatarSize || '40',\r\n botAvatarBackgroundColor: config.botAvatarBackgroundColor || 'undefined',\r\n botAvatarImage: config.botAvatarImage || '',\r\n botAvatarInitials: config.botAvatarInitials || '',\r\n userAvatarBackgroundColor: config.userAvatarBackgroundColor || 'undefined',\r\n userAvatarImage: config.userAvatarImage || '',\r\n userAvatarInitials: config.userAvatarInitials || '',\r\n showAvatarInGroup: config.showAvatarInGroup || 'status'\r\n };\r\n};\r\n\r\nconst getSuggestedActionStyling = (config: IPvaChatConnectorConfig): ISuggestedActionStyling => {\r\n return {\r\n suggestedActionLayout: config.suggestedActionLayout || 'carousel',\r\n suggestedActionBackground: config.suggestedActionBackground || 'White',\r\n suggestedActionTextColor: config.suggestedActionTextColor || '',\r\n suggestedActionBorderColor: config.suggestedActionBorderColor || '',\r\n suggestedActionBorderRadius: config.suggestedActionBorderRadius || '0',\r\n suggestedActionBorderStyle: config.suggestedActionBorderStyle || 'solid',\r\n suggestedActionBorderWidth: config.suggestedActionBorderWidth || '2',\r\n suggestedActionDisabledBorderStyle: config.suggestedActionDisabledBorderStyle || 'solid',\r\n suggestedActionDisabledBorderWidth: config.suggestedActionDisabledBorderWidth || '2',\r\n suggestedActionDisabledTextColor: config.suggestedActionDisabledTextColor || '',\r\n suggestedActionHeight: config.suggestedActionHeight || '40',\r\n suggestedActionImageHeight: config.suggestedActionImageHeight || '20',\r\n suggestedActionsCarouselFlipperCursor: config.suggestedActionsCarouselFlipperCursor || '',\r\n suggestedActionsCarouselFlipperBoxWidth: config.suggestedActionsCarouselFlipperBoxWidth || '40',\r\n suggestedActionsCarouselFlipperSize: config.suggestedActionsCarouselFlipperSize || '20',\r\n suggestedActionsFlowMaxHeight: config.suggestedActionsFlowMaxHeight || '',\r\n suggestedActionsStackedHeight: config.suggestedActionsStackedHeight || '',\r\n suggestedActionsStackedOverflow: config.suggestedActionsStackedOverflow || '2',\r\n suggestedActionsStackedLayoutButtonMaxHeight: config.suggestedActionsStackedLayoutButtonMaxHeight || '',\r\n suggestedActionsStackedLayoutButtonTextWrap: config.suggestedActionsStackedLayoutButtonTextWrap || false\r\n };\r\n};\r\n\r\n/**\r\n * Generates style options for the Botframework-WebChat widget\r\n * @param config IPvaChatConnectorConfig\r\n * @returns IChatStyling\r\n */\r\nexport const getChatStyleOptions = (config: IPvaChatConnectorConfig): IChatStyling => {\r\n const bubbleStyling = getBubbleStyling(config);\r\n const avatarStyling = getAvatarStyling(config);\r\n const suggestedActionStyling = getSuggestedActionStyling(config);\r\n const otherStyling = getOtherStyling(config);\r\n return {\r\n hideUploadButton: true,\r\n primaryFont: fontFormat(config.primaryFont),\r\n backgroundColor: config.backgroundColor || 'White',\r\n ...bubbleStyling,\r\n ...avatarStyling,\r\n ...suggestedActionStyling,\r\n ...otherStyling\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\n/* eslint-disable no-duplicate-imports */\r\nimport React from 'react';\r\nimport { IAction, IDispatch, INext } from '../interfaces';\r\nimport { TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../pva-chat-connector';\r\n\r\nexport class CommerceChatStore {\r\n private props: IPvaChatConnectorViewProps;\r\n private setNewMessageAction: React.Dispatch>;\r\n private provider?: TContextProvider;\r\n\r\n /**\r\n * Gets conversation token\r\n * @param props IPvaChatConnectorViewProps\r\n */\r\n public static async getDirectLineToken(props: IPvaChatConnectorViewProps): Promise {\r\n if (props.config.powervaDirectlineTokenURL && props.config.botID && props.config.tenantID) {\r\n // use direct line token url, bot id and tenant id from module config to get conversation token\r\n const url = `${props.config.powervaDirectlineTokenURL}?botId=${props.config.botID}&tenantId=${props.config.tenantID}`;\r\n const options = { method: 'GET' };\r\n return fetch(url, options)\r\n .then(r => r.json())\r\n .then(r => {\r\n if (r.token) {\r\n return r.token;\r\n } else {\r\n throw r;\r\n }\r\n });\r\n }\r\n\r\n // use direct line token url, bot id and tenant id from app config to get conversation token\r\n const url = `${props.context.app.config.pvaChatConnectorPowervaDirectlineTokenURL}?botId=${props.context.app.config.pvaChatConnectorBotID}&tenantId=${props.context.app.config.pvaChatConnectorTenantID}`;\r\n const options = {\r\n method: 'GET'\r\n };\r\n return fetch(url, options)\r\n .then(r => r.json())\r\n .then(r => {\r\n if (r.token) {\r\n return r.token;\r\n } else {\r\n throw r;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Creates a new instance of commerce store for WebChat\r\n * @param props IPvaChatConnectorViewProps\r\n * @param provider TContextProvider\r\n * @param setNewMessage React.Dispatch>\r\n */\r\n constructor(\r\n props: IPvaChatConnectorViewProps,\r\n provider: TContextProvider | undefined,\r\n setNewMessage: React.Dispatch>\r\n ) {\r\n this.props = props;\r\n this.provider = provider;\r\n this.setNewMessageAction = setNewMessage;\r\n }\r\n\r\n /**\r\n * Handles custom chat actions\r\n * @param param0 {\r\n * dispatch: IDispatch;\r\n * next: INext;\r\n * action: IAction;\r\n * }\r\n */\r\n public async actionHandler({ dispatch, next, action }: { dispatch: IDispatch; next: INext; action: IAction }): Promise {\r\n const atype = action.type;\r\n\r\n switch (atype) {\r\n case 'DIRECT_LINE/CONNECT_FULFILLED': {\r\n // sets language\r\n dispatch({\r\n type: 'WEB_CHAT/SEND_EVENT',\r\n payload: {\r\n name: 'webchat/join',\r\n value: { language: window.navigator.language }\r\n }\r\n });\r\n break;\r\n }\r\n case 'DIRECT_LINE/INCOMING_ACTIVITY': {\r\n const activity = action.payload.activity;\r\n if (activity?.from?.role === 'bot') {\r\n // Sets flag for new message (will be use to indicate new messages from bot when chat is minimized)\r\n this.setNewMessageAction(true);\r\n }\r\n break;\r\n }\r\n case 'DIRECT_LINE/POST_ACTIVITY_FULFILLED': {\r\n switch (action.payload.activity.name) {\r\n case 'webchat/join':\r\n {\r\n if (this.provider !== undefined) {\r\n // Sets Chat Context\r\n dispatch({\r\n type: 'WEB_CHAT/SEND_EVENT',\r\n payload: {\r\n name: 'pvaSetContext',\r\n value: this.provider()\r\n }\r\n });\r\n }\r\n }\r\n break;\r\n case 'pvaSetContext':\r\n {\r\n if (this.props.config.triggerQuery) {\r\n // Initialize chat after Chat Context is set\r\n dispatch({\r\n type: 'WEB_CHAT/SEND_MESSAGE_BACK',\r\n payload: {\r\n text: this.props.config.triggerQuery\r\n }\r\n });\r\n }\r\n }\r\n break;\r\n default: {\r\n // default nothing\r\n }\r\n }\r\n break;\r\n }\r\n default: {\r\n // default nothing\r\n }\r\n }\r\n\r\n return next(action);\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\n/* eslint-disable no-duplicate-imports */\r\nimport React, { FunctionComponent, useMemo, useState } from 'react';\r\nimport { getChatStyleOptions } from '../helpers/StyleComposers';\r\nimport { IChatCoreProps, IAction, IDispatch } from '../interfaces';\r\nimport { CommerceChatStore } from '../helpers/CommerceChatStore';\r\nimport { IPvaChatConnectorConfig } from '../pva-chat-connector.props.autogenerated';\r\n\r\n/**\r\n * Just a core Chat component\r\n * @param props\r\n */\r\n\r\nconst TermsAndConditionsLink = ({ href }: { href?: string }) => {\r\n return (\r\n

\r\n By using this bot, you agree to these \r\n \r\n terms and conditions\r\n \r\n

\r\n );\r\n};\r\n\r\nconst CustomWebChat = ({ config }: { config: IPvaChatConnectorConfig }) => {\r\n const { Components } = window.WebChat;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst ChatCore: FunctionComponent = (props: IChatCoreProps) => {\r\n const { Components } = window.WebChat;\r\n\r\n const [userId, setUserId] = useState('');\r\n useMemo(() => {\r\n if (props.provider) {\r\n const ctx = props.provider();\r\n if (ctx.UserId) {\r\n setUserId(typeof ctx.UserId === 'string' ? ctx.UserId : ctx.UserId.value.toString());\r\n }\r\n }\r\n }, [props.provider]);\r\n\r\n const directLine = useMemo(() => {\r\n return window.WebChat.createDirectLine({ token: props.directLineToken });\r\n }, [props.directLineToken]);\r\n\r\n const commerceChatStore = useMemo(() => {\r\n if (directLine && props.provider) {\r\n return new CommerceChatStore(props.config, props.provider, props.setNewMessage);\r\n }\r\n return undefined;\r\n }, [props.provider, directLine]);\r\n\r\n const store = useMemo(() => {\r\n return window.WebChat.createStore(\r\n {},\r\n ({ dispatch }: { dispatch: IDispatch }) => (next: (action: IAction) => IDispatch) => (action: IAction) => {\r\n commerceChatStore?.actionHandler({ dispatch, next, action });\r\n }\r\n );\r\n }, [commerceChatStore]);\r\n const styleOptions = getChatStyleOptions(props.config.config);\r\n\r\n return props.directLineToken !== '' ? (\r\n \r\n \r\n \r\n ) : (\r\n

Please wait while we are connecting.

\r\n );\r\n};\r\n\r\nexport default ChatCore;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport React, { FunctionComponent, useEffect, useState } from 'react';\r\nimport { isMobile, VariantType } from '@msdyn365-commerce-modules/utilities';\r\nimport ContextProvider from '../helpers/ContextProvider';\r\nimport { getChatStyling } from '../helpers/StyleComposers';\r\nimport { TContextProvider } from '@msdyn365-commerce-modules/chat';\r\nimport { IPvaChatConnectorViewProps } from '../pva-chat-connector';\r\nimport { CommerceChatStore } from '../helpers';\r\nimport ChatCore from './ChatCore';\r\n\r\nconst INVALID_TOKEN = 'INVALID_TOKEN';\r\nconst CLOSE_IMG_DATA =\r\n 'M443.6,387.1L312.4,255.4l131.5-130c5.4-5.4,5.4-14.2,0-19.6l-37.4-37.6c-2.6-2.6-6.1-4-9.8-4c-3.7,0-7.2,1.5-9.8,4 L256,197.8L124.9,68.3c-2.6-2.6-6.1-4-9.8-4c-3.7,0-7.2,1.5-9.8,4L68,105.9c-5.4,5.4-5.4,14.2,0,19.6l131.5,130L68.4,387.1 c-2.6,2.6-4.1,6.1-4.1,9.8c0,3.7,1.4,7.2,4.1,9.8l37.4,37.6c2.7,2.7,6.2,4.1,9.8,4.1c3.5,0,7.1-1.3,9.8-4.1L256,313.1l130.7,131.1 c2.7,2.7,6.2,4.1,9.8,4.1c3.5,0,7.1-1.3,9.8-4.1l37.4-37.6c2.6-2.6,4.1-6.1,4.1-9.8C447.7,393.2,446.2,389.7,443.6,387.1z';\r\n\r\n/**\r\n * Outer chat component, displays chat button, and proactive chat, and handles custom actions\r\n * @param props IPvaChatConnectorViewProps\r\n */\r\nconst Chat: FunctionComponent = (props: IPvaChatConnectorViewProps) => {\r\n const [loaded, setLoaded] = useState(false); // loaded & minimized are needed as ChatWidget should not be removed from DOM (it resets chat)\r\n const [minimized, setMinimized] = useState(true);\r\n const [newMessage, setNewMessage] = useState(false); // TODO: use this to indicate new message in minimized chat\r\n const [token, setToken] = useState(''); // holds conversation token for WebChat\r\n const [isProactive, setIsProactive] = useState(false); // if proactive chat is triggered\r\n const [proactiveMessage, setProactiveMessage] = useState(props.config.proactiveDefaultMessage);\r\n const [closed, setClosed] = useState(false);\r\n const [provider, setProvider] = useState();\r\n const isMobileDevice =\r\n isMobile({ variant: VariantType.Browser, context: props.context.request }) === 'xs' ||\r\n isMobile({ variant: VariantType.Viewport, context: props.context.request }) === 'xs';\r\n const chatStyle = getChatStyling(props.config, minimized, isMobileDevice); // generates chat style objects based on configuration\r\n const handleMaximizeButtonClick = () => {\r\n setLoaded(true);\r\n setMinimized(false);\r\n setNewMessage(false);\r\n };\r\n const handleMinimizeButtonClick = () => {\r\n setMinimized(true);\r\n setNewMessage(false);\r\n };\r\n const handleCloseButtonClick = () => {\r\n setClosed(true);\r\n setLoaded(false);\r\n setMinimized(true);\r\n setNewMessage(false);\r\n setIsProactive(false);\r\n };\r\n useEffect(() => {\r\n if (loaded) {\r\n CommerceChatStore.getDirectLineToken(props)\r\n .then(directLineToken => {\r\n setToken(directLineToken);\r\n })\r\n .catch(e => {\r\n setToken(INVALID_TOKEN);\r\n props.telemetry.exception(e);\r\n });\r\n }\r\n }, [loaded]);\r\n useEffect(() => {\r\n (async () => {\r\n const contextProvider = new ContextProvider(props); // Generates context (provider) and checks for proactive chat triggers\r\n const prov = await contextProvider.init();\r\n if (contextProvider.data.enabled) {\r\n props.context.telemetry.debug(`[Chat] Proactive chat was enabled: '${contextProvider.data.enabled}'.`);\r\n // if proactive chat is triggered\r\n const timeout = contextProvider.data.timeout * 1000; // timeout is there only for WaitOnTime trigger\r\n setTimeout(() => {\r\n if (!loaded) {\r\n props.context.telemetry.debug(`[Chat] Proactive chat was loaded: ${loaded}.`);\r\n setProactiveMessage(contextProvider.data.message);\r\n setIsProactive(true);\r\n }\r\n }, timeout);\r\n }\r\n setProvider(() => prov);\r\n })().catch(e => props.telemetry.exception(e));\r\n }, []);\r\n useEffect(() => {\r\n if (closed) {\r\n setClosed(false);\r\n }\r\n }, [token, provider]);\r\n const isValidToken = (): boolean => {\r\n return `${token}` !== INVALID_TOKEN;\r\n };\r\n return (\r\n \r\n {minimized && (!isProactive || (isProactive && loaded)) && (\r\n \r\n )}\r\n {minimized && isProactive && !loaded && (\r\n
\r\n
\r\n {props.config.storeLogoURL && (\r\n logo\r\n )}\r\n
\r\n
\r\n
\r\n

{proactiveMessage}

\r\n \r\n
\r\n
\r\n )}\r\n {loaded && isValidToken() && (\r\n
\r\n
\r\n {props.config.storeLogoURL && (\r\n logo\r\n )}\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n )}\r\n {!isValidToken() &&
{props.config.unableToLoadChatMessage}
}\r\n
\r\n );\r\n};\r\n\r\nexport default Chat;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\n/* eslint-disable no-duplicate-imports */\r\nimport * as React from 'react';\r\nimport Chat from './components/Chat';\r\nimport { IPvaChatConnectorViewProps } from './pva-chat-connector';\r\n\r\nexport default (props: IPvaChatConnectorViewProps) => {\r\n // Only for CDN loading check, won't be needed with npm package of Botframework-WebChat\r\n const [loaded, setLoaded] = React.useState(false);\r\n\r\n // Just to verify that CDN Chat Widget js lib is loaded\r\n // Remove this block if moving to npm package of Botframework-WebChat\r\n const interval = setInterval(() => {\r\n const t = typeof window;\r\n if (t !== 'undefined' && window.WebChat) {\r\n setLoaded(true);\r\n clearInterval(interval);\r\n }\r\n }, 100);\r\n\r\n return
{loaded && }
;\r\n};\r\n","import { ICookieContext } from '@msdyn365-commerce/core-internal/dist/types';\r\nconst FEATURE_COOKIE_KEY = 'features';\r\n\r\nexport const getFeatureToggleService = (cookieContext: ICookieContext, serverFeatures: string[]) => {\r\n const getFeaturesCookie = (cookieContext: ICookieContext) => cookieContext.get(FEATURE_COOKIE_KEY);\r\n\r\n const getEnabledFeatures = (): string[] => {\r\n const featuresCookie = getFeaturesCookie(cookieContext).value;\r\n const clientFeatures = featuresCookie ? featuresCookie.split(',').map(feature => feature.trim()) : [];\r\n return clientFeatures.concat(serverFeatures);\r\n };\r\n\r\n const isFeatureEnabled = (featureName: string): boolean => getEnabledFeatures().includes(featureName);\r\n return {\r\n getEnabledFeatures,\r\n isFeatureEnabled\r\n };\r\n};\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/src/modules/content-block/./content-block';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { Image, /*IImageSettings, IImageProps*/ } from \"@msdyn365-commerce/core\";\r\nimport { getFeatureToggleService } from '../../../services/featureToggleService';\r\nimport { IContentBlockConfig } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\n\r\nconst DEFAULT_IMAGE_MODE = 2\r\n\r\ntype IContentBlockFullConfig = IContentBlockConfig & {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- This field comes from SDK.\r\n msdyn365__moduleLayout?: string;\r\n}\r\n\r\nconst ContentBlockView: React.FC = props => {\r\n const { contentBlockContainer, imageContainer, detailsContainer, title, text, links, image : imageProp } = props;\r\n const { image } = props.config;\r\n //@ts-ignore\r\n const imageProps = {\r\n gridSettings: props.context.request.gridSettings ?? {},\r\n imageSettings: {\r\n ...image?.imageSettings,\r\n mode: image?.imageSettings?.mode || DEFAULT_IMAGE_MODE\r\n }\r\n };\r\n //@ts-ignore\r\n const htmlImage = imageProp && {imageProp.props.altText};\r\n //@ts-ignore\r\n const msdynImage = ;\r\n const { isFeatureEnabled } = getFeatureToggleService(props.context.request.cookies, props.context.app.config.features);\r\n\r\n const contentBlockImage = isFeatureEnabled('msdyn-image') ? msdynImage : htmlImage;\r\n\r\n const entireLink = contentBlockContainer.className.includes('linkplacement__entirebanner');\r\n // @ts-ignore\r\n const link = links && 'props' in links ? links.props.links[0].linkUrl.destinationUrl : '';\r\n return (\r\n \r\n {entireLink ? (\r\n \r\n {contentBlockImage}\r\n \r\n {title}\r\n {text}\r\n \r\n \r\n ) : (\r\n <>\r\n {image && {contentBlockImage}}\r\n \r\n {title}\r\n {text}\r\n {links}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default ContentBlockView;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { ILoyaltyTermsViewProps } from '@msdyn365-commerce-modules/account-management/src/modules/loyalty-terms/./loyalty-terms';\r\nimport { ILoyaltyTermsProps } from '../definition-extensions/loyalty-terms.ext.props.autogenerated';\r\n\r\n\r\nconst LoyaltyTermsView: React.FC> = props => {\r\n\r\n // The user does NOT have a customer number yet, they still have a tmp_guid\r\n let tmp_account = false;\r\n if (props.context.request.user.customerAccountNumber?.length === 36) {\r\n tmp_account = true;\r\n }\r\n\r\n const auth = props.context.request.user.isAuthenticated;\r\n\r\n // const hostname = props?.context?.request?.url?.requestUrl?.hostname || ''; // Protip: this does NOT keep the /de or whatever, so make sure to fix it if used in the future\r\n\r\n const { LoyaltyTerms, modalToggle, modal, loading } = props;\r\n\r\n if (tmp_account && auth) {\r\n return (\r\n
\r\n {props.resources.joinedLoyaltyThankYouHeader && (

{props.resources.joinedLoyaltyThankYouHeader}

)}\r\n {props.resources.joinedLoyaltyParagraphContent && (

{props.resources.joinedLoyaltyParagraphContent}

)}\r\n {/* {props.resources.loyaltyBalanceCheckURL && props.resources.joinedLoyaltyBalanceCheckLinkText && ({props.resources.joinedLoyaltyBalanceCheckLinkText})} */}\r\n
\r\n );\r\n // User is NOT temp but IS auth --> old/synced user\r\n } else if (!loading && modal && !tmp_account && auth) {\r\n if (props.config.layout === 'wideLayout') {\r\n return (\r\n \r\n {props.config.showImages && props.config.marketingImage ? (\r\n
\r\n
\r\n {props.config.marketingImage.altText}\r\n
\r\n
\r\n {props.config.marketingText &&

{props.config.marketingText}

}\r\n {modalToggle}\r\n
\r\n
\r\n {props.config.marketingImage.altText}\r\n
\r\n
\r\n ) : (\r\n
\r\n {props.config.marketingText &&

{props.config.marketingText}

}\r\n {modalToggle}\r\n
\r\n )}\r\n \r\n {modal.heading}\r\n \r\n {modal.terms}\r\n \r\n {modal.checkbox}\r\n {modal.agreeText}\r\n \r\n \r\n \r\n {modal.submitButton}\r\n {modal.cancelButton}\r\n \r\n \r\n
\r\n );\r\n } else {\r\n return (\r\n \r\n
\r\n {props.config.showImages && props.config.marketingImage && {props.config.marketingImage.altText}}\r\n {props.config.marketingText &&

{props.config.marketingText}

}\r\n {modalToggle}\r\n
\r\n \r\n {modal.heading}\r\n \r\n {modal.terms}\r\n \r\n {modal.checkbox}\r\n {modal.agreeText}\r\n \r\n \r\n \r\n {modal.submitButton}\r\n {modal.cancelButton}\r\n \r\n \r\n
\r\n );\r\n }\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nexport default LoyaltyTermsView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { IHistogramItemViewProps, IRatingsHistogramViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nconst RatingsHistogramView: React.FC = props => {\r\n const { /* heading, */ histogramItems, histogramProps, moduleProps } = props;\r\n // @ts-ignore\r\n const title = props.resources.ratingReviewsText ?? '';\r\n return (\r\n \r\n

{title}

\r\n {_averageRating(props)}\r\n \r\n {histogramItems.map((item, index) => {\r\n return histogramItem(item, 5 - index);\r\n })}\r\n \r\n
\r\n );\r\n};\r\n\r\nconst getStar = (star: number, value: number): string => {\r\n if (star - value <= 0) return '__star';\r\n else if (star - value > 0 && star - value < 1) return '__half-star';\r\n else return '__empty-star';\r\n};\r\n\r\nconst _renderStars = (value: number, className?: string) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst _averageRating = (props: IRatingsHistogramViewProps) => {\r\n // @ts-ignore\r\n const avRating = props?.averageRating?.props?.avgRating ?? 0;\r\n // @ts-ignore\r\n const totalReviews = props?.averageNumber?.props?.summary?.reviewsCount ?? 0;\r\n const ratingsLabel = props?.resources?.ratingReviewsText ?? '';\r\n return (\r\n
\r\n
\r\n {props.context.cultureFormatter.formatNumber(avRating)}\r\n /5\r\n
\r\n
\r\n {`${totalReviews} ${ratingsLabel}`}\r\n {_renderStars(avRating, 'heading')}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst histogramItem = (props: IHistogramItemViewProps, starsNumber: number) => {\r\n return (\r\n \r\n {/* {props.starLabel} */}\r\n {_renderStars(starsNumber, 'histogram')}\r\n {props.bar}\r\n {/* {props.percentage} */}\r\n \r\n );\r\n};\r\n\r\nexport default RatingsHistogramView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport {\r\n ISignUpEmailVerification,\r\n ISignUpItem,\r\n ISignUpLoading,\r\n ISignUpLocalAccount,\r\n ISignUpViewProps\r\n} from '@msdyn365-commerce-modules/account-management/src/modules/sign-up/sign-up';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\n\r\nconst SignUpItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\r\n return (\r\n \r\n {label}\r\n {errorMessage}\r\n {input}\r\n \r\n );\r\n};\r\n\r\nconst SignUpEmailVerification: React.FC = ({ email, buttonWrapper, buttons, successMessage, errorMessage }) => {\r\n return (\r\n <>\r\n \r\n {successMessage &&\r\n successMessage.map((message: React.ReactNode) => {\r\n return <>{message};\r\n })}\r\n {errorMessage &&\r\n errorMessage.map((message: React.ReactNode) => {\r\n return <>{message};\r\n })}\r\n \r\n {buttons &&\r\n buttons.map((button: React.ReactNode) => {\r\n return <>{button};\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nconst LocalAccount: React.FC = (\r\n { localAccount, items, emailVerification, buttons, errorMessage, disclaimer },\r\n props\r\n) => {\r\n const europe = ['/fr', '/de'];\r\n const locale = props?.context?.request?.locale;\r\n const uiLocales = props?.context?.request?.query.ui_locales;\r\n const regionCRM = europe.includes(uiLocales) ? uiLocales : props.config.RegionCRM;\r\n\r\n const [birthDate, setBirthDate] = React.useState('');\r\n const [formatDateState, setFormatDateState] = React.useState(true);\r\n const pattern = /^((1[6789]|[2-9][0-9])[0-9]{2}\\/(0[13578]|1[02])\\/(0[1-9]|[12][0-9]|3[01]))$|^((1[6789]|[2-9][0-9])[0-9]{2}\\/(0[469]|11)\\/(0[1-9]|[12][0-9]|30))$|^((16|[248][048]|[3579][26])00)|(1[6789]|[2-9][0-9])(0[48]|[13579][26]|[2468][048])\\/02\\/(0[1-9]|1[0-9]|2[0-9])$|^(1[6789]|[2-9][0-9])[0-9]{2}\\/02\\/(0[1-9]|1[0-9]|2[0-8])$/gm;\r\n const patternUS = /^((0[13578]|1[02])\\/(0[1-9]|[12][0-9]|3[01]))$|^((0[469]|11)\\/(0[1-9]|[12][0-9]|30))$|^02\\/(0[1-9]|1[0-9]|2[0-9])$/gm;\r\n\r\n const checkDate = (event: React.KeyboardEvent) => {\r\n const value = event.currentTarget.value;\r\n const today = new Date();\r\n if (value !== '' && (!value.match(locale !== 'en-US' ? pattern : patternUS) || today < new Date(value))) {\r\n setFormatDateState(false);\r\n } else {\r\n setFormatDateState(true);\r\n }\r\n if (locale === 'en-US') {\r\n setBirthDate(`1900/${value}`);\r\n }\r\n };\r\n if (typeof window !== 'undefined') {\r\n const signUpButton: HTMLElement = document.getElementById('continue') as HTMLElement;\r\n console.log(document.getElementById('continue'));\r\n if (signUpButton !== undefined) {\r\n signUpButton.onclick = e => {\r\n if (!formatDateState) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n }\r\n };\r\n }\r\n }\r\n\r\n return (\r\n \r\n {items &&\r\n items.map((item: ISignUpItem) => {\r\n if (item.key === 'email' && emailVerification.isRequired) {\r\n return (\r\n \r\n \r\n
\r\n \r\n {formatDateState === false ? (\r\n

{props.resources.birthdayErrorText}

\r\n ) : (\r\n ''\r\n )}\r\n {locale !== 'en-US' ? (\r\n checkDate(e)}\r\n onPaste={e => e.preventDefault()}\r\n />\r\n ) : (\r\n <>\r\n checkDate(e)}\r\n onPaste={e => e.preventDefault()}\r\n />\r\n \r\n \r\n )}\r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {props.config.renderThirdPartyPrivacy && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n );\r\n }\r\n return ;\r\n })}\r\n {errorMessage &&\r\n errorMessage.map((error: React.ReactNode, index: number) => {\r\n return {error};\r\n })}\r\n {buttons &&\r\n buttons.map((button: React.ReactNode, index: number) => {\r\n return {button};\r\n })}\r\n {disclaimer}\r\n
\r\n );\r\n};\r\n\r\nconst SignUpLoading: React.FC = ({ modal, modalBody, icon, message }) => {\r\n return (\r\n \r\n \r\n {icon}\r\n {message}\r\n \r\n \r\n );\r\n};\r\n\r\nconst SignUpView: React.FC = props => {\r\n const { signUp, viewState, loading, defaultAADConainer, aadConainer, heading, signUpLocalAccount } = props;\r\n\r\n return (\r\n \r\n {viewState.isShowLoading && }\r\n {viewState.isShowLoading && }\r\n \r\n {heading}\r\n {LocalAccount(signUpLocalAccount, props)}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default SignUpView;\r\n","/**\r\n * Copyright (c) Microsoft Corporation\r\n * All rights reserved. See License.txt in the project root for license information.\r\n * IVideoPlayer contentModule Interface Properties\r\n * THIS FILE IS AUTO-GENERATED - MANUAL MODIFICATIONS WILL BE LOST\r\n */\r\n\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nexport const enum layout {\r\n column = 'column',\r\n row = 'row'\r\n}\r\n\r\nexport const enum mobileVideoQuality {\r\n hdx = 'hdx',\r\n hq = 'hq',\r\n sd = 'sd',\r\n lo = 'lo'\r\n}\r\n\r\nexport interface IVideoPlayerConfig extends Msdyn365.IModuleConfig {\r\n video: Msdyn365.IVideoData;\r\n heading?: IHeadingData;\r\n paragraph?: Msdyn365.RichText;\r\n links?: ILinksData[];\r\n additionalContent?: IAdditionalContentData;\r\n autoplay?: boolean;\r\n mute?: boolean;\r\n loop?: boolean;\r\n autoCaptions?: string;\r\n playPauseTrigger?: boolean;\r\n controls?: boolean;\r\n playFullScreen?: boolean;\r\n hidePosterFrame?: boolean;\r\n maskLevel?: number;\r\n thumbnailFullWidth?: boolean;\r\n lazyLoad?: boolean;\r\n clientRender?: boolean;\r\n layout: layout;\r\n cta?: ICtaData;\r\n mobileVideoQuality?: mobileVideoQuality;\r\n shouldDisableAutoPlayOnMobile?: boolean;\r\n}\r\n\r\nexport interface IVideoPlayerResources {\r\n playLabel: string;\r\n pauseLabel: string;\r\n pausedLabel: string;\r\n playingLabel: string;\r\n unMuteLabel: string;\r\n muteLabel: string;\r\n fullScreenLabel: string;\r\n exitFullScreenLabel: string;\r\n seekBarLabel: string;\r\n videoTimeDurationLabel: string;\r\n closedCaptionLabel: string;\r\n optionButtonLabel: string;\r\n sliderThumbLabel: string;\r\n volumeThumbLabel: string;\r\n}\r\n\r\nexport const enum HeadingTag {\r\n h1 = 'h1',\r\n h2 = 'h2',\r\n h3 = 'h3',\r\n h4 = 'h4',\r\n h5 = 'h5',\r\n h6 = 'h6'\r\n}\r\n\r\nexport interface IHeadingData {\r\n text: string;\r\n tag?: HeadingTag;\r\n}\r\n\r\nexport interface ILinksData {\r\n linkText?: string;\r\n linkUrl: Msdyn365.ILinkData;\r\n ariaLabel?: string;\r\n openInNewTab?: boolean;\r\n}\r\n\r\nexport interface IAdditionalContentData {\r\n heading?: string;\r\n subtext?: string;\r\n links?: ILinksData[];\r\n}\r\n\r\nexport interface ICtaData {\r\n label?: string;\r\n link?: string;\r\n}\r\n\r\nexport interface ILinksData {\r\n linkText?: string;\r\n linkUrl: Msdyn365.ILinkData;\r\n ariaLabel?: string;\r\n openInNewTab?: boolean;\r\n}\r\n\r\nexport interface IVideoPlayerProps extends Msdyn365.IModule {\r\n resources: IVideoPlayerResources;\r\n config: IVideoPlayerConfig;\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 React from 'react';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nimport { IVideoPlayerViewProps } from '@msdyn365-commerce-modules/video-player/src/modules/video-player/./video-player';\r\nimport { IVideoPlayerProps, layout } from '../definition-extensions/video-player.ext.props.autogenerated';\r\nimport { getFeatureToggleService } from '../../../services/featureToggleService';\r\n\r\n/**\r\n * Render Additional Content.\r\n * @param additionalContent - Additional content view props.\r\n * @returns JSX Element.\r\n */\r\n\r\nconst VideoPlayerView: React.FC> = props => {\r\n const { isFeatureEnabled } = getFeatureToggleService(props.context.request.cookies, props.context.app.config.features);\r\n const isAccessibleVideoPlayerEnabled = isFeatureEnabled('accessible-video')\r\n\r\n const getPlayer = (video_src ?: string) => isAccessibleVideoPlayerEnabled ? props.player : \r\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