{"version":3,"file":"static/js/df7241164abc5cf765c2.bundle.js","mappings":"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","sources":["webpack://mattressfirm/./src/modules/notification-components/base/base-notification-component.tsx?47ca","webpack://mattressfirm/./src/modules/notification-components/base/closable-notification-component.tsx?aac5","webpack://mattressfirm/./src/modules/notification-components/base/dismissible-notification-component.tsx?5826","webpack://mattressfirm/./src/modules/notification-components/base/notification-close-button-component.tsx?a90a","webpack://mattressfirm/./src/modules/notification-components/base/notification-content-component.tsx?6476","webpack://mattressfirm/./src/modules/notification-components/base/notification-description-component.tsx?fb91","webpack://mattressfirm/./src/modules/notification-components/base/notification-footer-component.tsx?e051","webpack://mattressfirm/./src/modules/notification-components/base/notification-header-component.tsx?6866","webpack://mattressfirm/./src/modules/notification-components/base/notification-instance-component.tsx?e395","webpack://mattressfirm/./src/modules/notification-components/base/notification-title-component.tsx?c4e8","webpack://mattressfirm/./src/modules/notification-components/notification-components-lists-manager.ts?8bd2","webpack://mattressfirm/./src/modules/notification-components/system-notifications/error-notification-component.tsx?96e4","webpack://mattressfirm/./src/modules/notification-components/system-notifications/loading-notification-component.tsx?bf13","webpack://mattressfirm/./src/modules/notification-components/system-notifications/success-notification-component.tsx?dfb0","webpack://mattressfirm/./src/modules/notification-components/system-notifications/system-notification-component.tsx?60e2","webpack://mattressfirm/./src/modules/notification-components/system-notifications/warning-notification-component.tsx?8b88","webpack://mattressfirm/./src/modules/notifications-data-instances/base/base-notification.ts?d830","webpack://mattressfirm/./src/modules/notifications-data-instances/base/dismissible-notification.ts?f9b7","webpack://mattressfirm/./src/modules/notifications-data-instances/base/events/notification-events.ts?8fd5","webpack://mattressfirm/./src/modules/notifications-data-instances/base/with-notification-component-decorator.ts?485e","webpack://mattressfirm/./src/modules/notifications-data-instances/system-notifications/system-notification.ts?bd82","webpack://mattressfirm/./src/modules/notifications-data-instances/system-notifications/error-notification.ts?5a19","webpack://mattressfirm/./src/modules/notifications-data-instances/system-notifications/loading-notification.ts?4441","webpack://mattressfirm/./src/modules/notifications-data-instances/system-notifications/success-notification.ts?d3e3","webpack://mattressfirm/./src/modules/notifications-data-instances/system-notifications/warning-notification.ts?d9bf","webpack://mattressfirm/./src/modules/notifications-manager/notification-feeds.ts?12a2","webpack://mattressfirm/./src/modules/notifications-manager/notifications-manager.ts?3350","webpack://mattressfirm/./src/video-player-utilities/player.tsx?8176","webpack://mattressfirm/./src/video-player-utilities/components/action-toggle/action-toggle.tsx?246b","webpack://mattressfirm/./src/video-player-utilities/components/age-gate/age-gate.tsx?96c8","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/video-closed-captions-settings.ts?2fc2","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/ttml-settings.ts?ff45","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/ttml-context.ts?2af4","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/ttml-time-parser.ts?72f5","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/ttml-parser.ts?6362","webpack://mattressfirm/./src/video-player-utilities/components/closed-captions/video-closed-captions.tsx?4d40","webpack://mattressfirm/./src/video-player-utilities/components/data/player-constants.ts?0a75","webpack://mattressfirm/./src/video-player-utilities/components/data/player-metadata.ts?24d6","webpack://mattressfirm/./src/video-player-utilities/components/helper/localization-helper.ts?26d0","webpack://mattressfirm/./src/video-player-utilities/components/helper/closed-caption-helper.ts?8eff","webpack://mattressfirm/./src/video-player-utilities/components/helper/player-helper.ts?800e","webpack://mattressfirm/./src/video-player-utilities/components/menu-item/menu-item.tsx?471c","webpack://mattressfirm/./src/video-player-utilities/components/menu/menu.tsx?4ce6","webpack://mattressfirm/./src/video-player-utilities/components/play-pause-trigger/play-pause-trigger.tsx?3fa4","webpack://mattressfirm/./src/video-player-utilities/components/utilities/key-codes.ts?1004","webpack://mattressfirm/./src/video-player-utilities/components/utilities/string-extensions.ts?3689","webpack://mattressfirm/./src/video-player-utilities/components/utilities/html-extensions.ts?9642","webpack://mattressfirm/./src/video-player-utilities/components/utilities/player-utility.ts?33e3","webpack://mattressfirm/./src/video-player-utilities/components/utilities/utilities.ts?65c9","webpack://mattressfirm/./src/video-player-utilities/components/video-controls/video-controls.tsx?32a5"],"sourcesContent":["/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React from 'react';\n\nimport { BaseNotification } from '../../notifications-data-instances';\n\n/**\n * Default props for a component responsible for rendering the given notification.\n * @remark Modify carefully as it's initialized by the notifications manager to provide dynamic rendering.\n */\nexport interface INotificationProps {\n notification: NotificationType;\n}\n\n/**\n * Default props for a component responsible for rendering some part of notification, but not the whole notification (e.g. @see NotificationTitle).\n */\nexport interface INotificationElementProps extends INotificationProps {\n}\n\n/**\n * Represents a base class which renders a notification or a part of notification.\n */\nexport abstract class BaseNotificationComponent<\n NotificationType extends BaseNotification,\n PropsType extends INotificationProps = INotificationProps,\n StateType = {}> extends React.PureComponent {\n\n public constructor(props: PropsType) {\n super(props);\n }\n\n public abstract render(): React.ReactNode;\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { Random } from '@msdyn365-commerce-modules/retail-actions';\nimport classnames from 'classnames';\nimport React, { ReactNode } from 'react';\n\nimport { BaseNotification, IClosableNotification } from '../../notifications-data-instances';\nimport { NotificationEvents } from '../../notifications-data-instances/base/events';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Represents state for closable wrapper.\n */\nexport interface IClosableNotificationWrapperState {\n isClosed: boolean;\n}\n\n/**\n * Wraps children into closable wrapper which hides the children (notification body) when the notification is closed.\n */\nexport class ClosableNotificationWrapper\n extends BaseNotificationComponent, IClosableNotificationWrapperState> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-closable-notification';\n\n /**\n * Unique id of the component.\n */\n private readonly _instanceId: string;\n\n public constructor(props: INotificationElementProps) {\n super(props);\n\n this._instanceId = `ClosableNotificationWrapper-${Random.Guid.generateGuid()}`;\n\n this.state = {\n isClosed: false\n };\n\n this._close = this._close.bind(this);\n this._unsubscribeFromEvents = this._unsubscribeFromEvents.bind(this);\n }\n\n public componentDidMount(): void {\n this._subscribeToEvents(this.props.notification);\n }\n\n public componentDidUpdate(previousProps: INotificationElementProps): void {\n this._unsubscribeFromEvents(previousProps.notification);\n this._subscribeToEvents(this.props.notification);\n }\n\n public componentWillUnmount(): void {\n this._unsubscribeFromEvents(this.props.notification);\n }\n\n public render(): ReactNode {\n let className = ClosableNotificationWrapper.className;\n if (this.state.isClosed) {\n className = classnames(className, `${ClosableNotificationWrapper.className}__closed`);\n }\n\n return (\n
\n {this.props.children}\n
\n );\n }\n\n private _subscribeToEvents(notification: NotificationType): void {\n notification.events.getValue(NotificationEvents.Close)!.subscribe({\n instanceId: this._instanceId,\n handler: this._close\n });\n notification.events.getValue(NotificationEvents.RemovedFromList)!.subscribe({\n instanceId: this._instanceId,\n handler: () => {\n this._unsubscribeFromEvents(notification);\n }\n });\n }\n\n private _unsubscribeFromEvents(notification: NotificationType): void {\n notification.unsubscribeFromEvents(this._instanceId);\n }\n\n private _close(): void {\n this._unsubscribeFromEvents(this.props.notification);\n\n this.setState({ isClosed: this.props.notification.isClosed });\n\n // Wait for the animation before removing completely.\n setTimeout(() => {\n this.props.notification.remove();\n }, 100);\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ObjectExtensions, Random } from '@msdyn365-commerce-modules/retail-actions';\nimport classnames from 'classnames';\nimport React, { ReactNode } from 'react';\n\nimport { DismissibleNotification, NotificationEvents } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\nexport interface IDismissibleNotificationWrapperState {\n isDismissing: boolean;\n isDismissed: boolean;\n}\n\n/**\n * Wrapper over notification body which allows dismissing of the notification.\n * It setups timeouts and hides the notification body when the notification should be dismissed.\n */\nexport class DismissibleNotificationWrapper\n extends BaseNotificationComponent, IDismissibleNotificationWrapperState> {\n\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-dismissible-notification';\n\n /**\n * Waiting for dismissing timer.\n */\n private _timer?: NodeJS.Timeout;\n\n /**\n * Unique id of the component.\n */\n private readonly _instanceId: string;\n\n public constructor(props: INotificationElementProps) {\n super(props);\n\n this.state = {\n isDismissing: false,\n isDismissed: false\n };\n\n this._instanceId = `DismissibleNotificationWrapper-${Random.Guid.generateGuid()}`;\n\n this._setTimer = this._setTimer.bind(this);\n this._clearTimer = this._clearTimer.bind(this);\n this._startDismissing = this._startDismissing.bind(this);\n this._preventDismissing = this._preventDismissing.bind(this);\n this._preventDismissingHandler = this._preventDismissingHandler.bind(this);\n this._finishDismissing = this._finishDismissing.bind(this);\n this._updateState = this._updateState.bind(this);\n this._unsubscribeFromEvents = this._unsubscribeFromEvents.bind(this);\n }\n\n public componentDidMount(): void {\n if (this.props.notification.autoDismissTimeout !== null) {\n this._setTimer();\n }\n this._subscribeToEvents(this.props.notification);\n }\n\n public componentDidUpdate(previousProps: INotificationElementProps): void {\n this._unsubscribeFromEvents(previousProps.notification);\n this._subscribeToEvents(this.props.notification);\n }\n\n public componentWillUnmount(): void {\n this._unsubscribeFromEvents(this.props.notification);\n }\n\n public render(): ReactNode {\n let className = DismissibleNotificationWrapper.className;\n if (this.state.isDismissing) {\n className = classnames(className, `${DismissibleNotificationWrapper.className}__dismissing`);\n }\n if (this.state.isDismissed) {\n className = classnames(className, `${DismissibleNotificationWrapper.className}__dismissed`);\n }\n\n const onMouseEnter = this.props.notification.shouldResetOnHover ? this._preventDismissing : undefined;\n const onMouseLeave = this.props.notification.shouldResetOnHover ? this._setTimer : undefined;\n\n return (\n \n {this.props.children}\n \n );\n }\n\n private _subscribeToEvents(notification: NotificationType): void {\n notification.events.getValue(NotificationEvents.StartDismissing)!.subscribe({\n instanceId: this._instanceId,\n handler: this._updateState\n });\n notification.events.getValue(NotificationEvents.PreventDismissing)!.subscribe({\n instanceId: this._instanceId,\n handler: this._preventDismissingHandler\n });\n notification.events.getValue(NotificationEvents.FinishDismissing)!.subscribe({\n instanceId: this._instanceId,\n handler: () => this._updateState\n });\n notification.events.getValue(NotificationEvents.RemovedFromList)!.subscribe({\n instanceId: this._instanceId,\n handler: () => {\n this._unsubscribeFromEvents(notification);\n }\n });\n }\n\n private _unsubscribeFromEvents(notification: NotificationType): void {\n notification.unsubscribeFromEvents(this._instanceId);\n }\n\n private _setTimer(): void {\n this._timer = setTimeout(() => {\n this._startDismissing();\n }, this.props.notification.autoDismissTimeout!);\n }\n\n private _clearTimer(): void {\n if (!ObjectExtensions.isNullOrUndefined(this._timer)) {\n clearTimeout(this._timer);\n }\n }\n\n private _startDismissing(): void {\n this.props.notification.startDismissing();\n }\n\n private _preventDismissingHandler(): void {\n this._clearTimer();\n this._updateState();\n }\n\n private _preventDismissing(): void {\n this.props.notification.preventDismissing();\n }\n\n private _finishDismissing(): void {\n this.props.notification.finishDismissing();\n this._updateState();\n }\n\n private _updateState(): void {\n this.setState({ isDismissing: this.props.notification.isDismissing, isDismissed: this.props.notification.isDismissed });\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as React from 'react';\n\nimport { BaseNotification, IClosableNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\nexport interface INotificationCloseButtonState {\n isClosed: boolean;\n}\n\nexport interface INotificationCloseButtonProps extends INotificationElementProps { }\n\n/**\n * Represents a close button for the notification which triggers notification.close().\n */\nexport class NotificationCloseButton\n extends BaseNotificationComponent, INotificationCloseButtonState> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-close';\n\n public constructor(props: INotificationCloseButtonProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n this.state = {\n isClosed: false\n };\n }\n\n public render(): React.ReactNode {\n return (\n \n );\n }\n\n /**\n * Sends a message to close the notification.\n */\n private readonly _close: () => void = () => {\n this.props.notification.close();\n };\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as React from 'react';\n\nimport { BaseNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Represents the component which composes the body of a notification.\n */\nexport class NotificationContent extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-content';\n\n public constructor(props: INotificationElementProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): React.ReactNode {\n return (\n
\n {this.props.children}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { RichTextComponent } from '@msdyn365-commerce/core';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport * as React from 'react';\n\nimport { BaseNotification, IDescriptiveNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Displays notification description lines.\n */\nexport class NotificationDescription extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-description';\n\n public constructor(props: INotificationElementProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): React.ReactNode {\n if (!ArrayExtensions.hasElements(this.props.notification.descriptionLines)) {\n return null;\n }\n\n return (\n
\n {\n this.props.notification.descriptionLines.map((line, index) => {\n if (StringExtensions.isNullOrWhitespace(line.toString())) {\n return null;\n }\n return (\n \n );\n })\n }\n {this.props.children}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as React from 'react';\n\nimport { BaseNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Displays footer of the notification.\n * Usually footer is used for extra actions.\n */\nexport class NotificationFooter extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-footer';\n\n public constructor(props: INotificationElementProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): React.ReactNode {\n return (\n
\n {this.props.children}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React, { ReactNode } from 'react';\n\nimport { BaseNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Displays header of the notification.\n * Usually header is used for displaying the title and close X button.\n */\nexport class NotificationHeader extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-header';\n\n public constructor(props: INotificationElementProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): ReactNode {\n return (\n
\n {this.props.children}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React, { ReactNode } from 'react';\n\nimport { BaseNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Represents the notification body which is displayed to the user.\n * It should include header, content, footer.\n */\nexport class NotificationInstance extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-instance';\n\n public constructor(props: INotificationElementProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): ReactNode {\n return (\n
\n {this.props.children}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { RichTextComponent } from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { BaseNotification, ITitledNotification } from '../../notifications-data-instances';\nimport { BaseNotificationComponent, INotificationElementProps } from './base-notification-component';\n\n/**\n * Props for the notification title component.\n */\nexport interface INotificationTitleProps extends INotificationElementProps {\n\n /**\n * Represents a node which should be displayed before the title. Optional field.\n */\n preChildren?: React.ReactNode;\n\n /**\n * Represents a node which should be displayed after the title. Optional field.\n */\n postChildren?: React.ReactNode;\n}\n\n/**\n * Renders notification title.\n */\nexport class NotificationTitle extends BaseNotificationComponent> {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-title';\n\n public constructor(props: INotificationTitleProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n public render(): React.ReactNode {\n return (\n
\n {this.props.preChildren}\n \n {this.props.postChildren}\n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { Dictionary } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { NotificationFeeds, NotificationFeedType } from '../notifications-manager/notification-feeds';\nimport { INotificationComponentsList } from './base-notification-component-list';\n\n/**\n * A notification list which is operated by notification manager.\n * It is responsible for rendering the received notifications.\n */\nexport class NotificationComponentsListsManager {\n /**\n * Instances of the lists currently shown on the page.\n * Dictionary of lists by the feed.\n */\n private static readonly _instances: Dictionary = new Dictionary();\n\n /**\n * Retrieve the lists which are displayed currently on the page for the given feed.\n * @param {NotificationFeeds} [feed] The feed to filter the lists. Global feed by default.\n */\n public static getNotificationLists(feed: NotificationFeeds): INotificationComponentsList[] {\n return NotificationComponentsListsManager._instances.getValueWithDefaultValue(feed, []);\n }\n\n /**\n * Registers notification components list to listen to notification manager.\n * @param {INotificationComponentsList} notificationComponentsList The component which renders the notifications.\n */\n public static subscribe(notificationComponentsList: INotificationComponentsList): void {\n NotificationComponentsListsManager._instances.getValueWithDefaultValue(notificationComponentsList.feed, []).push(notificationComponentsList);\n }\n\n /**\n * Removes the notification components list from the instances which listen to notification manager.\n * @param {INotificationComponentsList} notificationComponentsList The component which renders the notifications.\n */\n public static unsubscribe(notificationComponentsList: INotificationComponentsList): void {\n const instances = NotificationComponentsListsManager._instances.getValueWithDefaultValue(notificationComponentsList.feed, []);\n const newInstances = instances.filter(list => list !== notificationComponentsList);\n NotificationComponentsListsManager._instances.setValue(notificationComponentsList.feed, newInstances);\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React from 'react';\n\nimport { ErrorNotification } from '../../notifications-data-instances/system-notifications';\nimport { INotificationCloseButtonProps } from '../base';\nimport { BaseNotificationComponent, INotificationProps } from '../base/base-notification-component';\nimport { SystemNotificationComponent } from './system-notification-component';\n\n/**\n * Props for error notification.\n */\nexport interface IErrorNotificationProps extends INotificationProps, INotificationCloseButtonProps {}\n\n/**\n * Component responsible for rendering an error notification.\n */\nexport class ErrorNotificationComponent extends BaseNotificationComponent {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-error';\n\n /**\n * Initializes the component with the given configuration.\n * @param {IErrorNotificationProps} props Configuration of the component.\n */\n public constructor(props: IErrorNotificationProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n /**\n * Renders the given error notification.\n */\n public render(): React.ReactNode {\n return (\n \n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Spinner } from 'office-ui-fabric-react';\nimport React from 'react';\n\nimport { LoadingNotification } from '../../notifications-data-instances/system-notifications';\nimport { DismissibleNotificationWrapper, NotificationContent, NotificationDescription, NotificationHeader, NotificationInstance, NotificationTitle } from '../base';\nimport { BaseNotificationComponent, INotificationProps } from '../base/base-notification-component';\n\n/**\n * Props for loading notification.\n */\nexport interface ILoadingNotificationProps extends INotificationProps {}\n\n/**\n * Component responsible for rendering a loading notification.\n */\nexport class LoadingNotificationComponent extends BaseNotificationComponent {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-loading';\n\n /**\n * Initializes the component with the given configuration.\n * @param {ILoadingNotificationProps} props Configuration of the component.\n */\n public constructor(props: ILoadingNotificationProps) {\n super(props);\n }\n\n /**\n * Renders the given notification.\n */\n public render(): React.ReactNode {\n return (\n
\n \n \n \n \n \n {\n ArrayExtensions.hasElements(this.props.notification.descriptionLines) ? (\n \n \n \n ) : null\n }\n \n \n
\n );\n }\n\n /**\n * Renders a loading spinner.\n * @returns Spinner.\n */\n private readonly _renderSpinner = () => {\n return (\n \n );\n };\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React from 'react';\n\nimport { SuccessNotification } from '../../notifications-data-instances/system-notifications';\nimport { INotificationCloseButtonProps } from '../base';\nimport { BaseNotificationComponent, INotificationProps } from '../base/base-notification-component';\nimport { SystemNotificationComponent } from './system-notification-component';\n\n/**\n * Props for success notification.\n */\nexport interface ISuccessNotificationProps extends INotificationProps, INotificationCloseButtonProps {}\n\n/**\n * Component responsible for rendering a success notification.\n */\nexport class SuccessNotificationComponent extends BaseNotificationComponent {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-success';\n\n /**\n * Initializes the component with the given configuration.\n * @param {ISuccessNotificationProps} props Configuration of the component.\n */\n public constructor(props: ISuccessNotificationProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n /**\n * Renders the given success notification.\n */\n public render(): React.ReactNode {\n return (\n \n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport React from 'react';\n\nimport { SystemNotification } from '../../notifications-data-instances/system-notifications';\nimport { ClosableNotificationWrapper, DismissibleNotificationWrapper, INotificationCloseButtonProps, NotificationCloseButton, NotificationContent, NotificationDescription, NotificationHeader, NotificationInstance, NotificationTitle } from '../base';\nimport { BaseNotificationComponent, INotificationElementProps } from '../base/base-notification-component';\n\n/**\n * Props for system notification.\n */\nexport interface ISystemNotificationProps extends INotificationElementProps, INotificationCloseButtonProps {\n\n /**\n * The class for the styles.\n */\n className: string;\n}\n\n/**\n * Component responsible for rendering a system notification.\n */\nexport class SystemNotificationComponent extends BaseNotificationComponent {\n\n /**\n * Initializes the component with the given configuration.\n * @param {ISuccessNotificationProps} props Configuration of the component.\n */\n public constructor(props: ISystemNotificationProps) {\n super(props);\n }\n\n /**\n * Renders the given success notification.\n */\n public render(): React.ReactNode {\n return (\n
\n \n \n \n \n \n \n \n {\n ArrayExtensions.hasElements(this.props.notification.descriptionLines) ? (\n \n \n \n ) : null\n }\n \n \n \n
\n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport React from 'react';\n\nimport { WarningNotification } from '../../notifications-data-instances/system-notifications/warning-notification';\nimport { INotificationCloseButtonProps } from '../base';\nimport { BaseNotificationComponent, INotificationProps } from '../base/base-notification-component';\nimport { SystemNotificationComponent } from './system-notification-component';\n\n/**\n * Component responsible for rendering a warning notification.\n */\nexport interface IWarningNotificationProps extends INotificationProps, INotificationCloseButtonProps {}\n\n/**\n * Component responsible for rendering a success notification.\n */\nexport class WarningNotificationComponent extends BaseNotificationComponent {\n /**\n * The class for the styles.\n */\n public static readonly className: string = 'msc-notification-warning';\n\n /**\n * Initializes the component with the given configuration.\n * @param {ISuccessNotificationProps} props Configuration of the component.\n */\n public constructor(props: IWarningNotificationProps) {\n // Disable jest test coverage due to the issue in jest processing super calls.\n /* istanbul ignore next */\n super(props);\n }\n\n /**\n * Renders the given success notification.\n */\n public render(): React.ReactNode {\n return (\n \n );\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { Dictionary, Event, Random } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { INotificationProps } from '../../notification-components/base/base-notification-component';\nimport { NotificationEvents } from './events';\n\n/**\n * Represents a react component class which renders a notification.\n */\nexport type NotificationComponentClass = React.ComponentClass, {}>;\n\n/**\n * Represents base functionality of a notification.\n */\nexport abstract class BaseNotification {\n /**\n * Notification events for the current notification.\n */\n public readonly events: Dictionary;\n\n /**\n * The local date set when the instance was created.\n */\n public readonly receivedDate: Date;\n\n /**\n * Unique identifier of the notification.\n * Represents a GUID that is automatically generated during the object initialization.\n */\n public readonly id: string;\n\n /**\n * The react class which is responsible for rendering the current instance of notification.\n * Should be set using @withNotificationComponent decorator.\n */\n public readonly notificationComponentConstructor!: NotificationComponentClass;\n\n /**\n * Specifies if the notification instance was removed from a notification list.\n */\n public get isRemoved(): boolean {\n return this._isRemoved;\n }\n\n /**\n * Specifies if the notification instance was removed from a notification list.\n */\n protected _isRemoved: boolean;\n\n /**\n * Initializes a notification with base information such as id, events, date when initialized.\n */\n public constructor() {\n this.receivedDate = new Date();\n this._isRemoved = false;\n this.events = new Dictionary({ key: NotificationEvents.RemovedFromList, value: new Event() });\n this.id = `Notification-${Random.Guid.generateGuid()}`;\n }\n\n /**\n * Updates the notification instance when it's removed from a notification list.\n * Should be called from a notification component once the notification can be disposed.\n */\n public remove(): void {\n this._isRemoved = true;\n this.events.getValue(NotificationEvents.RemovedFromList)?.trigger();\n this._dispose();\n }\n\n /**\n * Unsubscribes given instance from all the events for the notification.\n * @param {string} instanceId Unique id which represents the event handler.\n * @remarks Does nothing in case the instance was not subscribed to any event.\n */\n public unsubscribeFromEvents(instanceId: string): void {\n this.events.getValues().forEach(event => {\n event.unsubscribe(instanceId);\n });\n }\n\n /**\n * Disposes the events by unsubscribing all members.\n */\n protected _dispose(): void {\n this.events.getValues().forEach(event => {\n event.unsubscribeAll();\n });\n this.events.clear();\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { Event } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { BaseNotification } from './base-notification';\nimport { NotificationEvents } from './events';\n\n/**\n * Specifies the timeouts in milliseconds used for the dismissing.\n */\nexport enum DismissTimeout {\n\n /**\n * Default timeout which should be used for most of the notification.\n */\n Default = 10_000\n}\n\n/**\n * Represents a notification which can be automatically dismissed.\n * @remark Dismissing means automatically hiding the notification after some specific delay.\n */\nexport abstract class DismissibleNotification extends BaseNotification {\n /**\n * Shows that the notification is in progress of dismissing when dismissing animation is in progress.\n * @remark The process can be prevented by hovering on a notification.\n */\n public get isDismissing(): boolean {\n return this._isDismissing;\n }\n\n /**\n * Shows that the notification is fully dismissed and is hidden to user now.\n * The notification can be removed from the list and disposed.\n */\n public get isDismissed(): boolean {\n return this._isDismissed;\n }\n\n /**\n * Specifies the delay in milliseconds for the notification.\n * @remarks Using `DismissTimeout` is preferable.\n */\n public readonly autoDismissTimeout: DismissTimeout | number | null;\n\n /**\n * Specifies if the dismissing should be delayed (the timer should be reset) when user hovers on the notification.\n * True by default. Use false when notification should be dismissed regardless if user wants to interact with it or not (e.g. For limited time offers).\n */\n public readonly shouldResetOnHover: boolean;\n\n /**\n * Shows that the notification is in progress of dismissing when dismissing animation is in progress.\n * @remark The process can be prevented by hovering on a notification.\n */\n protected _isDismissing: boolean;\n\n /**\n * Shows that the notification is fully dismissed and is hidden to user now.\n * The notification can be removed from the list and disposed.\n */\n protected _isDismissed: boolean;\n\n /**\n * Initializes events and sets the delays for the dismissing.\n * @param {DismissTimeout | number} autoDismissTimeout The delay in milliseconds after which the notification should start play the hiding animation.\n * By default refers to `DismissTimeout.Default`.\n * Prefer using `DismissTimeout` than specifying the number.\n * @param {boolean} shouldResetOnHover Flag which specifies if the dismissing should be delayed (the timer should be reset) when user hovers on the notification.\n * True by default. Use false when notification should be dismissed regardless if user wants to interact with it or not (e.g. for limited time offers).\n */\n public constructor(autoDismissTimeout: DismissTimeout | number | null = DismissTimeout.Default, shouldResetOnHover: boolean = true) {\n if (autoDismissTimeout === null && shouldResetOnHover) {\n throw new Error('Invalid parameters passed for dismissible notification. shouldResetOnHover = true is incompatible with autoDismissTimeout = null.');\n }\n\n super();\n\n this.autoDismissTimeout = autoDismissTimeout;\n this.shouldResetOnHover = shouldResetOnHover;\n\n this._isDismissed = false;\n this._isDismissing = false;\n\n this.events.setValue(NotificationEvents.StartDismissing, new Event());\n this.events.setValue(NotificationEvents.PreventDismissing, new Event());\n this.events.setValue(NotificationEvents.FinishDismissing, new Event());\n }\n\n /**\n * Starts dismissing process by updating the `isDismissing` field and triggering the start dismissing event.\n */\n public startDismissing(): void {\n this._isDismissing = true;\n this.events.getValue(NotificationEvents.StartDismissing)?.trigger();\n }\n\n /**\n * Prevents dismissing process by updating the `isDismissing` field and triggering the prevent dismissing event.\n */\n public preventDismissing(): void {\n this._isDismissing = false;\n this.events.getValue(NotificationEvents.PreventDismissing)?.trigger();\n }\n\n /**\n * Finishes dismissing process by updating the `isDismissing` and `isDismissed` fields,\n * triggers the finish dismissing event,\n * removes the notification from the list as it should be hidden already.\n */\n public finishDismissing(): void {\n this._isDismissing = false;\n this._isDismissed = true;\n this.events.getValue(NotificationEvents.FinishDismissing)?.trigger();\n this.remove();\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\n/**\n * Enum with the possible notification UI events.\n */\nexport enum NotificationEvents {\n Close = 'Close',\n StartDismissing = 'StartDismissing',\n FinishDismissing = 'FinishDismissing',\n PreventDismissing = 'PreventDismissing',\n RemovedFromList = 'RemovedFromList'\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { INotificationProps } from '../../notification-components';\nimport { BaseNotification } from './base-notification';\n\n/**\n * Decorator which should be used to specify the react component class for a notification data instances.\n * @param {React.ComponentClass} componentClass The component class responsible for rendering all the data instances of this notification class.\n */\nexport const withNotificationComponent = <\n NotificationType extends BaseNotification,\n PropsType extends INotificationProps,\n StateType extends {}>(\n componentClass: React.ComponentClass) => {\n\n return {}>(constructor: T) => {\n return class extends constructor {\n public readonly notificationComponentConstructor: React.ComponentClass = componentClass;\n };\n };\n};\n\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { RichText } from '@msdyn365-commerce/core';\nimport { Event, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { DismissibleNotification, IClosableNotification, IDescriptiveNotification, ITitledNotification, NotificationEvents } from '../base';\n\n/**\n * Represents a system notification data instance.\n * By default, all system notification should have a title, be closable, auto-dismissible.\n * You can specify some optional description text for the main message.\n */\nexport abstract class SystemNotification extends DismissibleNotification implements ITitledNotification, IDescriptiveNotification, IClosableNotification {\n /**\n * Aria label which should be used for the close button. Should be localized.\n * @see IClosableNotification\n */\n public readonly closeAriaLabel: string;\n\n /**\n * Specifies if the notification is closed or not. True if it's closed, false otherwise.\n * @remark Use only to get information about the 'close' event, dismissible notifications do not use this field.\n * @see IClosableNotification\n */\n public isClosed: boolean;\n\n /**\n * The text with the title of notification. The text should be localized.\n * @see ITitledNotification\n */\n public readonly title: RichText;\n\n /**\n * The lines of text which are displayed to user. The text should be localized. Empty by default.\n * @see IDescriptiveNotification\n */\n public readonly descriptionLines: RichText[];\n\n /**\n * Initializes system notification with the given data.\n * @param {string} title The text with the title of notification. The text should be localized.\n * @param {string} closeAriaLabel Aria label which should be used for the close button. Should be localized.\n * @param {(string | undefined)[]} [descriptionLines] Description for the notification. Optional parameter.\n * The data will be filtered to include only non-null/non-whitespace text.\n */\n public constructor(title: RichText, closeAriaLabel: string, descriptionLines?: (RichText | undefined)[]) {\n super();\n\n this.title = title;\n this.closeAriaLabel = closeAriaLabel;\n this.descriptionLines = (descriptionLines ?? []).filter(value => !StringExtensions.isNullOrWhitespace(value?.toString()));\n this.isClosed = false;\n\n this.events.setValue(NotificationEvents.Close, new Event());\n }\n\n /**\n * Triggers close event and marks that the notification is closed now.\n * Implementation should modify the `isClosed` field first and then trigger the `NotificationEvents.Close` event.\n * @see IClosableNotification\n */\n public close(): void {\n this.isClosed = true;\n this.events.getValue(NotificationEvents.Close)?.trigger();\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ErrorNotificationComponent } from '../../notification-components/system-notifications/error-notification-component';\nimport { withNotificationComponent } from '../base';\nimport { SystemNotification } from './system-notification';\n\n/**\n * Represents an error notification.\n * Use this notification when some flow fails and you want to display a simple message to the user.\n * This is one of the types of system notifications.\n */\n@withNotificationComponent(ErrorNotificationComponent)\nexport class ErrorNotification extends SystemNotification {}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { RichText } from '@msdyn365-commerce/core';\nimport { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { LoadingNotificationComponent } from '../../notification-components/system-notifications/loading-notification-component';\nimport { DismissibleNotification, IDescriptiveNotification, ITitledNotification, withNotificationComponent } from '../base';\n\n/**\n * Represents a loading notification.\n * Use this notification when a process takes some time to be completed.\n * This type of notification should be used to show the user that the flow is in process.\n * @remark Do not use the notification for quick actions.\n */\n@withNotificationComponent(LoadingNotificationComponent)\nexport class LoadingNotification extends DismissibleNotification implements ITitledNotification, IDescriptiveNotification {\n /**\n * The text with the title of notification. The text should be localized.\n * @see ITitledNotification\n */\n public readonly title: RichText;\n\n /**\n * The lines of text which are displayed to user. The text should be localized. Empty by default.\n * @see IDescriptiveNotification\n */\n public readonly descriptionLines: RichText[];\n\n /**\n * Represents loading state when some flow is in progress.\n */\n public get isLoading(): boolean {\n return this._isLoading;\n }\n\n /**\n * Represents loading state when some flow is in progress.\n */\n private _isLoading: boolean;\n\n /**\n * Initializes system notification with the given data.\n * @param {string} title The text with the title of notification. The text should be localized.\n * @param {string} closeAriaLabel Aria label which should be used for the close button. Should be localized.\n * @param {(string | undefined)[]} [descriptionLines] Description for the notification. Optional parameter.\n * The data will be filtered to include only non-null/non-whitespace text.\n */\n public constructor(title: RichText, descriptionLines?: (RichText | undefined)[]) {\n super(null, false);\n\n this._isLoading = true;\n this.title = title;\n this.descriptionLines = (descriptionLines ?? []).filter(value => !StringExtensions.isNullOrWhitespace(value?.toString()));\n }\n\n /**\n * Tells notification instance that the loading is completed.\n */\n public finishLoading(): void {\n this._isLoading = false;\n this.startDismissing();\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { SuccessNotificationComponent } from '../../notification-components/system-notifications/success-notification-component';\nimport { withNotificationComponent } from '../base';\nimport { SystemNotification } from './system-notification';\n\n/**\n * Represents a success notification.\n * Use this notification for the successful scenarios when you want to display a simple message to the user.\n * This is one of the types of system notifications.\n */\n@withNotificationComponent(SuccessNotificationComponent)\nexport class SuccessNotification extends SystemNotification {}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { WarningNotificationComponent } from '../../notification-components/system-notifications/warning-notification-component';\nimport { withNotificationComponent } from '../base';\nimport { SystemNotification } from './system-notification';\n\n/**\n * Represents a warning notification.\n * Use this notification when you want to provide some additional information or hints to the user.\n * For the success or error scenarios, please use `SuccessNotification` or `ErrorNotification` instead.\n * This is one of the types of system notifications.\n */\n@withNotificationComponent(WarningNotificationComponent)\nexport class WarningNotification extends SystemNotification {}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\n/**\n * Specifies different feeds for the notification lists.\n * Denotes the purpose of a notification list and what kind of notifications should be passed to the list.\n * By default is global (the global notification lists which is used to show most notifications).\n */\nexport enum NotificationFeeds {\n Global = 'global'\n}\n\n/**\n * Represents a type of each notification feed. Is used for notification lists components.\n * @see NotificationFeeds\n */\nexport type NotificationFeedType = string;\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ArrayExtensions, Event } from '@msdyn365-commerce-modules/retail-actions';\n\nimport { INotificationComponentType } from '../notification-components/notification-component-type';\nimport { NotificationComponentsListsManager } from '../notification-components/notification-components-lists-manager';\nimport { BaseNotification, NotificationComponentClass } from '../notifications-data-instances';\nimport { NotificationFeeds } from './notification-feeds';\n\n/**\n * Notification manager is a singleton.\n * It is responsible for receiving a notification,\n * retrieving notification component class,\n * and passing the component class to the notification components lists.\n * @see NotificationComponentsList which renders the list of notifications.\n */\nexport class NotificationsManager {\n /**\n * Singleton global instance of the notification manager.\n */\n private static _applicationNotificationManager?: NotificationsManager;\n\n /**\n * Event which is triggered after the notification was added to the lists.\n * @see addNotification method.\n * @remark is not triggered in case of any errors.\n */\n public readonly notificationAddedEvent: Event;\n\n /**\n * Retrieves global singleton instance of the notifications manager.\n * @returns {NotificationsManager} Instance of the manager which is used throughout the whole application.\n */\n public static instance(): NotificationsManager {\n if (!this._applicationNotificationManager) {\n this._applicationNotificationManager = new NotificationsManager();\n }\n\n return this._applicationNotificationManager;\n }\n\n /**\n * Adds given notifications to the notification component lists.\n * It receives a notification, retrieves notification component class,\n * and passes the component class to the notification components lists.\n * @see NotificationComponentsList which renders the list of notifications.\n * Then it triggers the notification added event.\n * @remark In case of any errors, suppress the error and write it in the console.\n * @param {NotificationType} notification Notification instance with the data.\n * @param {NotificationFeeds} feed The configuration of the notification component list. By default is global.\n */\n public addNotification(\n notification: NotificationType, feed: NotificationFeeds = NotificationFeeds.Global): void {\n\n const component = this._getNotificationComponent(notification);\n\n try {\n const componentType: INotificationComponentType = {\n componentClass: component,\n props: {\n notification\n }\n };\n const lists = NotificationComponentsListsManager.getNotificationLists(feed);\n\n if (!ArrayExtensions.hasElements(lists)) {\n notification.remove();\n return;\n }\n\n lists.forEach(\n componentManager => {\n componentManager.addNotificationComponent(componentType);\n });\n\n this.notificationAddedEvent.trigger();\n } catch (error) {\n console.error('Error while adding a notification');\n console.error(notification);\n console.error(error);\n }\n }\n\n /**\n * Initializes the instance with the notification event.\n */\n private constructor() {\n this.notificationAddedEvent = new Event();\n }\n\n /**\n * Retrieves the component responsible for rendering the given notification.\n * @param {NotificationType} notification The data instance of the notification which should be added.\n * @returns {NotificationComponentClass} The react class which should render the given notification.\n */\n private _getNotificationComponent(notification: NotificationType): NotificationComponentClass {\n const componentClass = notification.notificationComponentConstructor;\n if (!componentClass) {\n const notificationName = (notification).constructor.name;\n throw new Error(`No notification component found for the given notification ${notificationName}. ` +\n 'Please use \\'withNotificationComponent\\' decorator on the notification and specify the type to use');\n }\n\n return componentClass;\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as MsDyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, IPayLoad, ISliderChangeNotification, onTelemetryClick, Waiting } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n AgeGate, ClosedCaptionHelper, ClosedCaptions, closedCaptionsSettingDefaults, ClosedCaptionTypes, format, ICCFile, ICurrentClosedCaptionsSettings,\n IPlayerMenu, IPlayerMenuItemClickNotification, IPlayerProps, IPlayPosition, isNullOrWhiteSpace, isSafari, IVideoErrorData, IVideoErrorMessageData,\n IVideoMetadata, KeyCodes, LocalizationConstants, LocalizationHelper, MediaEvents, MenuCategories, PlayerConstants, PlayerHelper,\n PlayerStates, PlayPauseTrigger, videoClosedCaptionsConstant, VideoControls, VideoErrorCodes, VideoPlayerNames } from './components';\n\n/**\n * Player state interface.\n */\nexport interface IPlayerState {\n playing: boolean;\n mouseHovered: boolean;\n isControlPanelVisible: boolean;\n doControlsHaveFocus: boolean;\n playPosition: IPlayPosition;\n currentVolume: number;\n isTriggerEnabled: boolean;\n previousVolume: number;\n isMuted: boolean;\n isInFullScreen: boolean;\n showSpinner: boolean;\n showErrorMessage: boolean;\n videoErrorMessage: IVideoErrorMessageData;\n screenReaderText: string;\n showClosedCaptions: boolean;\n isAgegateEnabled: boolean;\n currentAudioTrack: string;\n currentAudioTrackURL: string;\n closedCaptionLanguage: string;\n closedCaptionsURL: string;\n currentClosedCaptionsSettings: ICurrentClosedCaptionsSettings;\n mounted: boolean;\n tempClosedCaptionsSettings?: {};\n}\n\n/**\n *\n * Player component.\n *\n */\nexport default class Player extends React.Component {\n public static defaultProps: Partial = {\n playerData: {\n options: {\n autoplay: true,\n ageGate: false,\n mute: true,\n loop: false,\n playPauseTrigger: false,\n controls: true,\n hidePosterFrame: false,\n lazyLoad: true\n },\n metaData: {\n playerName: 'videoPlayer',\n videoId: '',\n title: '',\n description: '',\n duration: 0,\n posterframeUrl: '',\n shareUrl: '',\n videoFiles: [],\n externalPlayerUrl: '',\n externalSourceId: '',\n videoBinaryReferences: []\n }\n },\n playerResources: {\n playAriaLabel: LocalizationConstants.playAriaLabel,\n pauseAriaLabel: LocalizationConstants.pauseAriaLabel,\n closeAriaLabel: LocalizationConstants.closeAriaLabel,\n muteAriaLabel: LocalizationConstants.muteAriaLabel,\n unMuteAriaLabel: LocalizationConstants.unMuteAriaLabel,\n fullScreenAriaLabel: LocalizationConstants.fullScreenAriaLabel,\n exitFullScreenAriaLabel: LocalizationConstants.exitFullScreenAriaLabel,\n pausedAriaLabel: LocalizationConstants.pausedAriaLabel,\n playingAriaLabel: LocalizationConstants.playingAriaLabel,\n seekBarLabel: LocalizationConstants.seekBarLabel,\n videoTimeDurationLabel: LocalizationConstants.videoTimeDurationLabel,\n closedCaptionLabel: LocalizationConstants.closedCaptionLabel,\n sliderThumbLabel: LocalizationConstants.sliderThumbLabel,\n volumeThumbLabel: LocalizationConstants.volumeThumbLabel\n }\n };\n\n private controlPanelTimer: number = 0;\n\n private readonly playerId: string;\n\n private readonly player: React.RefObject = React.createRef();\n\n private readonly audio: React.RefObject = React.createRef();\n\n private readonly playerContainer: React.RefObject = React.createRef();\n\n private readonly videoControl: React.RefObject = React.createRef();\n\n private readonly ClosedCaptions: React.RefObject = React.createRef();\n\n private readonly ageGateContainer: React.RefObject = React.createRef();\n\n private videoUrl: string = '';\n\n private posterFrameUrl: string = '';\n\n private seekFrom: number | null = null;\n\n private playerState: PlayerStates;\n\n private readonly playerHelper: PlayerHelper;\n\n private readonly localizationHelper: LocalizationHelper;\n\n private closedCaptionHelper: ClosedCaptionHelper | null = null;\n\n private closedCaptionMenu: IPlayerMenu | null = null;\n\n private optionsMenu: IPlayerMenu | null = null;\n\n private selectedClosedCaptionsLocale: string | null = '';\n\n private isPlayerManuallyPaused: boolean = false;\n\n private isPlayerLoaded: boolean = false;\n\n private playerMetaData: IVideoMetadata;\n\n private readonly isMobileDevice: boolean;\n\n private readonly payLoad: IPayLoad;\n\n public constructor(props: IPlayerProps) {\n super(props);\n this.isMobileDevice = this._isMobile();\n const state = {\n playing: false,\n mouseHovered: this.props.playerData.options.playPauseTrigger! || !this.props.playerData.options.autoplay!,\n isControlPanelVisible: !this.props.playerData.options.playPauseTrigger,\n doControlsHaveFocus: false,\n isTriggerEnabled: this.props.playerData.options.playPauseTrigger! && !this.props.playerData.options.autoplay! && this.props.playerData.options.controls!,\n currentVolume: this.props.playerData.options.mute && !this.isMobileDevice ? 0 : PlayerConstants.defaultVolume * 100,\n previousVolume: 0,\n isMuted: this.props.playerData.options.mute || false,\n isInFullScreen: false,\n showSpinner: false,\n isAgegateEnabled: this.props.playerData.options.ageGate! && !this.props.playerData.options.autoplay!,\n showErrorMessage: false,\n screenReaderText: '',\n closedCaptionLanguage: 'off',\n currentAudioTrack: 'default',\n currentAudioTrackURL: '',\n showClosedCaptions: false,\n mounted: false,\n currentClosedCaptionsSettings: {\n preset: closedCaptionsSettingDefaults.preset,\n text_font: closedCaptionsSettingDefaults.text_font,\n text_color: closedCaptionsSettingDefaults.text_color,\n text_opacity: closedCaptionsSettingDefaults.text_opacity,\n text_size: closedCaptionsSettingDefaults.text_size,\n text_edge_style: closedCaptionsSettingDefaults.text_edge_style,\n text_background_color: closedCaptionsSettingDefaults.text_background_color,\n text_background_opacity: closedCaptionsSettingDefaults.text_background_opacity,\n window_color: closedCaptionsSettingDefaults.window_color,\n window_opacity: closedCaptionsSettingDefaults.window_opacity\n },\n closedCaptionsURL: '',\n videoErrorMessage: {\n title: '',\n message: ''\n },\n playPosition: {\n currentTime: 0,\n startTime: 0,\n endTime: 0,\n bufferedDuration: 0\n },\n tempClosedCaptionsSettings: undefined\n };\n\n this.playerState = 'init';\n this._onTriggerClicked = this._onTriggerClicked.bind(this);\n this._onMouseEvent = this._onMouseEvent.bind(this);\n this._onPlay = this._onPlay.bind(this);\n this._onPause = this._onPause.bind(this);\n this._triggerEvents = this._triggerEvents.bind(this);\n this._triggerAudioEvents = this._triggerAudioEvents.bind(this);\n this._onProgressChange = this._onProgressChange.bind(this);\n this._setMuted = this._setMuted.bind(this);\n this._onVolumeChange = this._onVolumeChange.bind(this);\n this._onFullScreenChanged = this._onFullScreenChanged.bind(this);\n this._toggleFullScreen = this._toggleFullScreen.bind(this);\n this._showControlBar = this._showControlBar.bind(this);\n this._handleControlsKeyDownEvent = this._handleControlsKeyDownEvent.bind(this);\n this._onFullscreenError = this._onFullscreenError.bind(this);\n this._onPlayerKeyDown = this._onPlayerKeyDown.bind(this);\n this._onTriggerFocus = this._onTriggerFocus.bind(this);\n this._onTriggerBlur = this._onTriggerBlur.bind(this);\n this._onVideoControlsFocus = this._onVideoControlsFocus.bind(this);\n this._onVideoControlsBlur = this._onVideoControlsBlur.bind(this);\n this._onPlayerMenuItemClick = this._onPlayerMenuItemClick.bind(this);\n this._onPlayerMenuItemFocus = this._onPlayerMenuItemFocus.bind(this);\n this._onPlayerMenuItemBlur = this._onPlayerMenuItemBlur.bind(this);\n this._validateAgeSubmitHandler = this._validateAgeSubmitHandler.bind(this);\n this._onContextMenuClicked = this._onContextMenuClicked.bind(this);\n this.localizationHelper = new LocalizationHelper(this.props.playerResources!);\n this.playerHelper = new PlayerHelper(this.props, this.localizationHelper);\n this.playerId = this.playerHelper.isEmptyOrUndefined(this.props.playerId) ? 'vid-0' : this.props.playerId!;\n this.playerMetaData = this.playerHelper.getMetadata();\n this.state = state;\n this.posterFrameUrl = this.playerHelper.getPosterFrameUrl();\n this.payLoad = getPayloadObject('click', this.props.telemetryContent!, '');\n\n if (!this.props.playerData.options.lazyLoad) {\n this.videoUrl = this.playerHelper.getVideoFileToPlay().url;\n }\n }\n\n /**\n * Checks if fullscreen is supported by browser or not.\n * @returns - If native fullscreen enabled.\n */\n private static _isNativeFullscreenEnabled(): boolean {\n const doc = document as any;\n return doc.fullscreenEnabled || doc.mozFullScreenEnabled || doc.webkitFullscreenEnabled || doc.webkitSupportsFullscreen ||\n doc.msFullscreenEnabled;\n }\n\n /**\n * Gets the current fullscreen element.\n * @returns - The element in full screen.\n */\n private static _getElementInFullScreen(): any {\n const doc = document as any;\n return doc.fullscreenElement || doc.mozFullScreenElement || doc.webkitFullscreenElement || doc.msFullscreenElement;\n }\n\n public shouldComponentUpdate(nextProps: IPlayerProps, nextState: IPlayerState): boolean {\n if (this.state === nextState && this.props.playerData.options === nextProps.playerData.options) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const {\n playerData: {\n options: {\n loop: isLoop,\n autoplay: isAutoPlay\n }\n }\n } = this.props;\n\n const maskLevelStyle = {} as React.CSSProperties;\n if (this.state.isTriggerEnabled) {\n maskLevelStyle.backgroundColor = this._getMaskLevelStyle();\n }\n\n if (this.props.isEditor) {\n this.playerHelper.updatePlayerProps(this.props);\n this.playerMetaData = this.playerHelper.getMetadata();\n if (this.posterFrameUrl !== this.playerHelper.getPosterFrameUrl()) {\n this.posterFrameUrl = this.playerHelper.getPosterFrameUrl();\n }\n if (this.isPlayerLoaded && this.videoUrl !== this.playerHelper.getVideoFileToPlay().url) {\n this._loadPlayer();\n }\n }\n\n const loadMetatData = isAutoPlay ? 'auto' : 'metadata';\n\n // Set play aria label\n let playAriaLabel: string = '';\n if (this.playerMetaData.title) {\n playAriaLabel = `${this.localizationHelper.getLocalizedValue('playAriaLabel')} ${this.playerMetaData.title}`;\n } else {\n playAriaLabel = LocalizationConstants.playVideoAriaLabel;\n }\n\n return (\n \n
\n {(this.state.currentAudioTrack !== '' && this.state.currentAudioTrackURL !== '') && (\n \n )}\n
\n {(this.props.playerData.options.ageGate) && (\n this._renderAgeGate()\n )}\n {(this.props.playerData.options.playPauseTrigger && !this.props.playerData.options.controls ||\n this.state.isTriggerEnabled && !this.state.isAgegateEnabled) && (\n this._renderPlayPauseTrigger(playAriaLabel, maskLevelStyle)\n )}\n {(this.state.showClosedCaptions) && this._renderClosedCaptions()}\n {(this.props.playerData.options.controls &&\n !this.state.isTriggerEnabled && !this.state.isAgegateEnabled) && (\n this._renderVideoControls(playAriaLabel)\n )}\n \n \n );\n }\n\n /**\n * Play the video.\n */\n public play(): void {\n this.player.current!.play().catch(() => {\n this._onVideoError();\n });\n if (this.audio.current) {\n this.audio.current.play().catch(() => {\n this._onAudioError();\n });\n }\n }\n\n /**\n * Pause the video.\n */\n public pause(): void {\n this.player.current!.pause();\n if (this.audio.current) {\n this.audio.current.pause();\n }\n }\n\n public componentDidMount(): void {\n if ((this.props.playerData.options.autoplay) || (this.props.playerData.options.lazyLoad && !this.props.playerData.options.playPauseTrigger) ||\n !this.props.playerData.options.lazyLoad) {\n this._loadPlayer();\n }\n document.addEventListener('fullscreenchange', this._onFullScreenChanged);\n document.addEventListener('mozfullscreenchange', this._onFullScreenChanged);\n document.addEventListener('webkitfullscreenchange', this._onFullScreenChanged);\n document.addEventListener('MSFullscreenChange', this._onFullScreenChanged);\n\n document.addEventListener('fullscreenerror', this._onFullscreenError);\n document.addEventListener('mozfullscreenerror', this._onFullscreenError);\n document.addEventListener('webkitfullscreenerror', this._onFullscreenError);\n document.addEventListener('MSFullscreenError', this._onFullscreenError);\n }\n\n public componentWillUnmount(): void {\n if (this.player.current) {\n for (const mediaEvent of MediaEvents) {\n this.player.current.removeEventListener(mediaEvent, this._triggerEvents);\n }\n }\n document.removeEventListener('fullscreenchange', this._onFullScreenChanged);\n document.removeEventListener('mozfullscreenchange', this._onFullScreenChanged);\n document.removeEventListener('webkitfullscreenchange', this._onFullScreenChanged);\n document.removeEventListener('MSFullscreenChange', this._onFullScreenChanged);\n\n document.removeEventListener('fullscreenerror', this._onFullscreenError);\n document.removeEventListener('mozfullscreenerror', this._onFullscreenError);\n document.removeEventListener('webkitfullscreenerror', this._onFullscreenError);\n document.removeEventListener('MSFullscreenError', this._onFullscreenError);\n }\n\n /**\n * Renders closed captions.\n * @returns Retruns closed captions.\n */\n private readonly _renderClosedCaptions = (): JSX.Element => {\n return (\n \n );\n };\n\n /**\n * Renders the play pause trigger.\n * @param playAriaLabel - Aria label for the play button.\n * @param maskLevelStyle - Mask level.\n * @returns Returns play pause trigger.\n */\n private readonly _renderPlayPauseTrigger = (playAriaLabel: string, maskLevelStyle: React.CSSProperties): JSX.Element => {\n return (\n \n );\n };\n\n /**\n * Renders the video controls.\n * @param playAriaLabel - Arial label for the play button.\n * @returns Returns the video control.\n */\n private readonly _renderVideoControls = (playAriaLabel: string): JSX.Element => {\n return (\n \n );\n };\n\n /**\n * Renders the age gate module.\n * @returns Renders the age gate module.\n */\n private readonly _renderAgeGate = (): JSX.Element => {\n return (\n \n );\n };\n\n private _loadPlayer(): void {\n if (this.player.current) {\n this.player.current.volume = this.state.currentVolume / 100;\n\n // Register the media events\n for (const mediaEvent of MediaEvents) {\n this.player.current.addEventListener(mediaEvent, this._triggerEvents);\n }\n }\n\n if (this.props.playerData.options.lazyLoad || this.props.isEditor) {\n this.videoUrl = this.playerHelper.getVideoFileToPlay().url;\n if (this.player.current) {\n this.player.current.src = this.videoUrl;\n this.player.current.load();\n }\n }\n\n this.isPlayerLoaded = true;\n\n if (this.props.playerData.options.controls) {\n this.closedCaptionHelper = new ClosedCaptionHelper(this.playerMetaData, this.playerHelper, this.localizationHelper);\n this.closedCaptionMenu = this.closedCaptionHelper.getClosedCaptionMenu()!;\n this.optionsMenu = this.playerHelper.getOptionMenu();\n const ccFiles = this.playerMetaData.ccFiles!;\n if (ccFiles !== undefined && ccFiles.length > 0) {\n const autoCaptionsLang = this.props.playerData && this.props.playerData.options.autoCaptions;\n let autoCaptionsLocale: string | null = null;\n for (const ccFile of ccFiles) {\n\n if (!autoCaptionsLocale && autoCaptionsLang && ccFile.locale.includes(autoCaptionsLang)) {\n autoCaptionsLocale = ccFile.locale;\n }\n\n }\n this.selectedClosedCaptionsLocale = autoCaptionsLocale;\n if (!isNullOrWhiteSpace(this.selectedClosedCaptionsLocale!)) {\n this.setState({\n closedCaptionLanguage: this.selectedClosedCaptionsLocale!,\n closedCaptionsURL: this.closedCaptionHelper.getClosedCaptionURLFromLocale(this.selectedClosedCaptionsLocale!),\n showClosedCaptions: true\n });\n }\n }\n }\n }\n\n /**\n * Validates the age submitted by the user.\n */\n private _validateAgeSubmitHandler(): void {\n if (this.ageGateContainer.current!.getCalculatedAge()) {\n this.videoUrl = this.playerHelper.getVideoFileToPlay().url;\n this.setState({ isAgegateEnabled: false });\n } else {\n this.setState({ isAgegateEnabled: true });\n this._displayErrorMessage({ title: 'you are not allowed to watch video' });\n }\n }\n\n private _onVideoControlsFocus(): void {\n // No need to call showControlBar, this will make sure it shows\n this.setState({ doControlsHaveFocus: true });\n }\n\n private _onVideoControlsBlur(): void {\n // Call showControlBar to give it the 6 second timeout\n this._showControlBar(true);\n\n this.setState({ doControlsHaveFocus: false });\n }\n\n private _onPlayerMenuItemFocus(notification: IPlayerMenuItemClickNotification): void {\n\n if (notification.data && notification.data.indexOf(':') > 0) {\n const dataSplit = notification.data.split(':');\n const settingKey = dataSplit[0];\n if (settingKey === videoClosedCaptionsConstant.presetKey) {\n if (this.state.closedCaptionLanguage === 'off') {\n this.setState({\n showClosedCaptions: true\n }, () => {\n this.ClosedCaptions.current!.showSampleCaptions();\n this._setCCSettings(notification, false);\n });\n } else {\n this._setCCSettings(notification, false);\n }\n }\n } else if (this.state.closedCaptionLanguage === 'off') {\n this.setState({\n showClosedCaptions: false\n });\n }\n }\n\n private _onPlayerMenuItemBlur(): void {\n this._setCCSettings({\n category: MenuCategories.ClosedCaptionSettings,\n id: '',\n data: 'current'\n });\n\n }\n\n private _onPlayerMenuItemClick(notification: IPlayerMenuItemClickNotification): void {\n switch (notification.category) {\n case MenuCategories.ClosedCaption: {\n this._setCC(notification.id);\n break;\n }\n\n case MenuCategories.ClosedCaptionSettings: {\n this._setCCSettings(notification);\n break;\n }\n\n case MenuCategories.AudioTracks: {\n this._setAudioTracks(notification);\n }\n }\n }\n\n /**\n * Sets the close captioning language/locale.\n * @param ccLanguageId - The desired new cc value.\n */\n private _setCC(ccLanguageId: string): void {\n ccLanguageId = this.playerHelper.removeIdPrefix(ccLanguageId);\n let selectedOption: ICCFile | null = null;\n\n if (ccLanguageId && this.playerMetaData.ccFiles) {\n for (const ccFile of this.playerMetaData.ccFiles) {\n if ((ccFile.locale === ccLanguageId) && (!ccFile.ccType || ccFile.ccType === ClosedCaptionTypes.TTML)) {\n selectedOption = ccFile;\n break;\n }\n }\n }\n\n if (ccLanguageId === 'off') {\n this.setState({\n closedCaptionLanguage: 'off',\n closedCaptionsURL: '',\n showClosedCaptions: false\n });\n } else {\n this.setState({\n closedCaptionLanguage: selectedOption!.locale,\n closedCaptionsURL: selectedOption!.url,\n showClosedCaptions: true\n });\n }\n }\n\n /**\n * Sets the close caption settings.\n * @param notification - The desired new cc value.\n * @param updatePreferences - Update Preferences.\n */\n private _setCCSettings(notification: IPlayerMenuItemClickNotification, updatePreferences?: boolean): void {\n if (notification.data === 'reset') {\n this.setState({\n currentClosedCaptionsSettings: closedCaptionsSettingDefaults\n }, () => {\n if (this.ClosedCaptions.current !== null) {\n this.ClosedCaptions.current.applySettings();\n this.ClosedCaptions.current.resetCaptions();\n this.ClosedCaptions.current.updateCaptions(this.state.playPosition.currentTime);\n }\n });\n } else if (notification.data === 'current') {\n this.setState({\n tempClosedCaptionsSettings: undefined\n });\n\n if (this.state.closedCaptionLanguage === 'off') {\n this.setState({\n showClosedCaptions: false\n });\n }\n } else {\n const dataSplit = notification.data!.split(':');\n if (!dataSplit) {\n return;\n }\n const settingKey = dataSplit[0];\n const optionKey = dataSplit[1];\n const currentSetting = this.closedCaptionHelper!.getUpdatedClosedCaptionSetting(this.state.currentClosedCaptionsSettings, settingKey, optionKey);\n if (updatePreferences === undefined || updatePreferences) {\n this.setState({\n tempClosedCaptionsSettings: undefined,\n currentClosedCaptionsSettings: currentSetting\n }, () => {\n if (this.ClosedCaptions.current) {\n this.ClosedCaptions.current.applySettings();\n this.ClosedCaptions.current.resetCaptions();\n this.ClosedCaptions.current.updateCaptions(this.state.playPosition.currentTime);\n }\n });\n } else {\n this.setState({\n tempClosedCaptionsSettings: currentSetting\n });\n }\n }\n }\n\n private _setAudioTracks(notification: IPlayerMenuItemClickNotification): void {\n const data = JSON.parse(notification.data!);\n if (data.lang === 'default') {\n this.setState({\n currentAudioTrack: 'default',\n currentAudioTrackURL: ''\n }, () => {\n this.player.current!.volume = this.state.currentVolume / 100;\n });\n } else {\n this.setState({\n currentAudioTrack: data.lang,\n currentAudioTrackURL: data.url\n }, () => {\n this.audio.current!.currentTime = this.player.current!.currentTime;\n this.audio.current!.volume = this.state.currentVolume / 100;\n this.player.current!.volume = 0;\n if (!this.player.current!.paused) {\n this.audio.current!.load();\n for (const mediaEvent of MediaEvents) {\n this.audio.current!.addEventListener(mediaEvent, this._triggerAudioEvents);\n }\n }\n });\n }\n }\n\n private _triggerAudioEvents(event: Event): void {\n switch (event.type.toLowerCase()) {\n\n case 'error':\n this._onAudioError();\n break;\n case 'waiting':\n if (this.playerState === 'playing') {\n this.isPlayerManuallyPaused = true;\n this.pause();\n }\n break;\n\n case 'loadeddata':\n if (this.isPlayerManuallyPaused) {\n this.isPlayerManuallyPaused = false;\n this.play();\n }\n if (!this.player.current!.paused) {\n this.play();\n }\n break;\n\n default:\n }\n }\n\n private _triggerEvents(event: Event): void {\n switch (event.type.toLowerCase()) {\n case 'canplay':\n case 'canplaythrough':\n break;\n\n case 'error':\n this._onVideoError();\n break;\n\n case 'play':\n break;\n\n case 'pause':\n this._updateState('paused');\n if (this.props.playerData.options.playPauseTrigger) {\n this.setState({\n mouseHovered: true\n });\n }\n break;\n\n case 'seeking':\n if (this.playerState !== 'ended' && this.player.current!.seeking) {\n this.seekFrom = this.player.current!.currentTime;\n this._updateState('seeking');\n }\n break;\n\n case 'seeked':\n const currentPlayer = this.player.current;\n const currentTime = currentPlayer!.currentTime;\n if (this.playerState !== 'ended' && this.player.current!.seeking && this.seekFrom !== currentTime) {\n this.seekFrom = null;\n }\n this._updateState(currentPlayer!.paused ? 'paused' : 'playing');\n break;\n\n case 'waiting':\n this._updateState('buffering');\n break;\n\n case 'loadedmetadata':\n break;\n\n case 'loadeddata':\n this._onVideoLoadedData();\n if (!this.props.playerData.options.autoplay) {\n this._showControlBar(false);\n }\n break;\n\n case 'timeupdate':\n this._onTimeUpdate();\n break;\n\n case 'ended':\n this._updateState('ended');\n this._stop();\n break;\n\n case 'playing':\n this._updateState('playing');\n break;\n\n case 'volumechange':\n break;\n\n default:\n }\n }\n\n private _onAudioError(): void {\n this.pause();\n const errorMessage: IVideoErrorMessageData = { title: 'Error while playing audio Track. Switching back to default track' };\n this._displayErrorMessage(errorMessage);\n this._setAudioTracks({ category: 'audioTracks', data: '{ \"lang\": \"default\", \"url\": \"\"}', id: '' });\n setTimeout(() => {\n this.setState({\n showErrorMessage: false\n }, () => {\n this.play();\n });\n }, 2000);\n }\n\n private _onVideoError(): void {\n this._updateState('error');\n const error: IVideoErrorData | null = this._getError();\n let errorMessage = '';\n if (error?.errorCode) {\n switch (error.errorCode) {\n case VideoErrorCodes.MediaErrorAborted:\n errorMessage = 'video playback was aborted';\n break;\n case VideoErrorCodes.MediaErrorNetwork:\n errorMessage = 'video failed to download';\n break;\n case VideoErrorCodes.MediaErrorDecode:\n errorMessage = 'video is not readable';\n break;\n case VideoErrorCodes.MediaErrorSourceNotSupported:\n errorMessage = 'video format is not supported';\n break;\n default:\n errorMessage = 'unknown error occurred';\n }\n\n this._stopMedia(errorMessage);\n } else {\n this._stopMedia();\n }\n }\n\n private _stopMedia(msgToDisplay?: string): void {\n if (msgToDisplay) {\n this._displayErrorMessage({ title: msgToDisplay });\n this._updateState('stopped');\n }\n }\n\n /**\n * Create an error message overlay.\n * @param errorMessage - Error message content.\n */\n private _displayErrorMessage(errorMessage: IVideoErrorMessageData): void {\n this.setState({ videoErrorMessage: { title: errorMessage.title, message: errorMessage.message } });\n this.setState({ showErrorMessage: true });\n }\n\n /**\n * Gets the video error code of the current error.\n * @returns : Returns the video error code.\n */\n private _getError(): IVideoErrorData | null {\n let contentErrorCode: VideoErrorCodes;\n if (this.player.current!.error) {\n // Video playback failed - show a message saying why\n switch (this.player.current!.error.code) {\n case this.player.current!.error.MEDIA_ERR_ABORTED:\n contentErrorCode = VideoErrorCodes.MediaErrorAborted;\n break;\n case this.player.current!.error.MEDIA_ERR_NETWORK:\n contentErrorCode = VideoErrorCodes.MediaErrorNetwork;\n break;\n case this.player.current!.error.MEDIA_ERR_DECODE:\n contentErrorCode = VideoErrorCodes.MediaErrorDecode;\n break;\n case this.player.current!.error.MEDIA_ERR_SRC_NOT_SUPPORTED:\n contentErrorCode = VideoErrorCodes.MediaErrorSourceNotSupported;\n break;\n default:\n contentErrorCode = VideoErrorCodes.MediaErrorUnknown;\n }\n return { errorCode: contentErrorCode };\n }\n return null;\n }\n\n private _handleControlsKeyDownEvent(e: React.KeyboardEvent): void {\n const keyBrdEvent = (e as unknown) as KeyboardEvent;\n const keycode = keyBrdEvent.keyCode;\n this._showControlBar(true);\n\n // Const castTarget = e.target as HTMLElement;\n\n switch (keycode) {\n case KeyCodes.Home:\n e.stopPropagation();\n e.preventDefault();\n this.player.current!.currentTime = 0;\n if (this.audio.current) {\n this.audio.current.currentTime = 0;\n }\n break;\n case KeyCodes.End:\n e.stopPropagation();\n e.preventDefault();\n this.player.current!.currentTime = this.state.playPosition.endTime;\n if (this.audio.current) {\n this.audio.current.currentTime = this.state.playPosition.endTime;\n }\n break;\n case KeyCodes.ArrowLeft:\n case KeyCodes.ArrowRight:\n e.stopPropagation();\n e.preventDefault();\n let jumpToTime =\n keycode === KeyCodes.ArrowLeft ?\n this.state.playPosition.currentTime - PlayerConstants.defaultVideoSliderSteps :\n this.state.playPosition.currentTime + PlayerConstants.defaultVideoSliderSteps;\n jumpToTime = Math.min(Math.max(this.state.playPosition.startTime, jumpToTime), this.state.playPosition.endTime);\n this.player.current!.currentTime = jumpToTime;\n if (this.audio.current) {\n this.audio.current.currentTime = jumpToTime;\n }\n break;\n case KeyCodes.ArrowUp:\n case KeyCodes.ArrowDown:\n e.stopPropagation();\n e.preventDefault();\n this.videoControl.current!.showVolumeControl(true).call(this);\n const volume =\n keycode === KeyCodes.ArrowDown ?\n Math.max((this.state.currentVolume - PlayerConstants.defaultVolumeSliderSteps) / 100, 0) :\n Math.min((this.state.currentVolume + PlayerConstants.defaultVolumeSliderSteps) / 100, 1);\n this.setState({ currentVolume: Math.round(volume * 100) });\n if (this.audio.current) {\n this.audio.current.volume = volume;\n } else {\n this.player.current!.volume = volume;\n }\n if (volume === 0) {\n this.setState({ isMuted: true });\n } else {\n this.setState({ isMuted: false });\n }\n break;\n default:\n }\n }\n\n private _onPlay(): void {\n this.setState({ playing: true });\n }\n\n private _onPause(): void {\n this.setState({ playing: false });\n }\n\n private _onVolumeChange(notification: ISliderChangeNotification): void {\n this.setState({ currentVolume: notification.firstThumbValue });\n if (this.audio.current) {\n this.audio.current.volume = notification.firstThumbValue / 100;\n } else {\n this.player.current!.volume = notification.firstThumbValue / 100;\n }\n\n if (notification.firstThumbValue === 0) {\n this.setState({ isMuted: true });\n } else if (this.state.isMuted && notification.firstThumbValue > 0) {\n this.setState({ isMuted: false });\n }\n }\n\n private _setMuted(): void {\n if (this.state.isMuted) {\n const newVolume = this.state.previousVolume === 0 ? PlayerConstants.defaultVolume * 100 : this.state.previousVolume;\n\n if (this.audio.current) {\n this.audio.current.volume = newVolume / 100;\n } else {\n this.player.current!.volume = newVolume / 100;\n }\n this.setState({ isMuted: false, currentVolume: newVolume });\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('unMuteAriaLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.unMuteAriaLabel).call(this);\n } else {\n this.setState({ isMuted: true, previousVolume: this.player.current!.volume * 100, currentVolume: 0 });\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('muteAriaLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.muteAriaLabel).call(this);\n }\n }\n\n private _onPlayerKeyDown(e: React.KeyboardEvent): void {\n const keyBrdEvent = (e as unknown) as KeyboardEvent;\n const keycode = keyBrdEvent.keyCode;\n\n if (keycode === KeyCodes.Tab) {\n this._showControlsBasedOnState();\n }\n }\n\n private _onMouseEvent(event: React.MouseEvent): void {\n if (this.props.playerData.options.controls) {\n this._showControlBar();\n }\n if (!this.state.isTriggerEnabled && this.state.playing) {\n this.setState({ mouseHovered: event.type === 'mouseenter' });\n }\n }\n\n private _showControlBar(autoHide: boolean = true): void {\n if (!this.state.isTriggerEnabled && !this.state.isAgegateEnabled) {\n if (!this.state.isControlPanelVisible) {\n this.setState({ isControlPanelVisible: true });\n }\n if (this.controlPanelTimer) {\n window && window.clearTimeout(this.controlPanelTimer);\n this.controlPanelTimer = 0;\n }\n if (autoHide) {\n this.controlPanelTimer = window && window.setTimeout(() => {\n this._hideControlBar();\n }, PlayerConstants.defaultControlPanelTimeout);\n }\n }\n }\n\n private _hideControlBar(): void {\n window && window.clearTimeout(this.controlPanelTimer);\n this.controlPanelTimer = 0;\n this.setState({ isControlPanelVisible: false });\n }\n\n private _onFullScreenChanged(): void {\n this.state.isInFullScreen ? this._onFullscreenExit() : this._onFullscreenEnter();\n }\n\n /**\n * Event handler for fullscreen enter.\n */\n private _onFullscreenEnter(): void {\n this.setState({\n isInFullScreen: true\n });\n }\n\n /**\n * Event handler for fullscreen exit.\n */\n private _onFullscreenExit(): void {\n this.setState({\n isInFullScreen: false\n });\n }\n\n private _toggleFullScreen(): void {\n this.state.isInFullScreen ? this._exitFullScreen() : this._enterFullScreen();\n }\n\n private _onFullscreenError(): void {\n this.setState({\n isInFullScreen: false\n });\n }\n\n private _enterFullScreen(): void {\n if (!Player._isNativeFullscreenEnabled()) {\n return;\n }\n\n const fullscreenElement = this.playerContainer.current! as any;\n const elementInFullScreen = Player._getElementInFullScreen();\n\n // We go to fullscreen only when there is no other element in fullscreen and browser supports fullscreen\n if (fullscreenElement && !elementInFullScreen) {\n const enterFullScreen = fullscreenElement.requestFullscreen ||\n fullscreenElement.msRequestFullscreen ||\n fullscreenElement.mozRequestFullScreen ||\n fullscreenElement.webkitRequestFullscreen ||\n fullscreenElement.webkitEnterFullScreen;\n\n enterFullScreen.call(fullscreenElement);\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('fullScreenLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.fullScreenAriaLabel).call(this);\n }\n }\n\n private _exitFullScreen(): void {\n if (!Player._isNativeFullscreenEnabled()) {\n return;\n }\n\n const fullscreenElement = this.playerContainer.current! as any;\n const elementInFullScreen = Player._getElementInFullScreen();\n\n // We only call cancel if we are in fullscreen. If another element went fullscreen that took the player with it then\n // we shouldn't call cancel fullscreen\n if (fullscreenElement && fullscreenElement === elementInFullScreen) {\n const doc = document as any;\n const cancelFullScreen = doc.cancelFullScreen ||\n doc.msExitFullscreen ||\n doc.mozCancelFullScreen ||\n doc.webkitCancelFullScreen;\n\n cancelFullScreen.call(doc);\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('exitFullScreenLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.exitFullScreenAriaLabel).call(this);\n }\n }\n\n private _onVideoLoadedData(): void {\n this._updateState('ready');\n if (this.props.playerData.options.controls) {\n const position = this._getPlayPosition();\n this.setState({ playPosition: position });\n }\n }\n\n private _onTimeUpdate(): void {\n if (this.props.playerData.options.controls) {\n const position = this._getPlayPosition();\n\n // EndTime changes after playing video for certain time. Keeping this constant.\n position.endTime = this.state.playPosition.endTime;\n this.setState({ playPosition: position });\n if (this.state.playing) {\n if (this.playerState === 'buffering') {\n this._updateState('playing');\n }\n }\n }\n }\n\n private _getBufferedDuration(): number {\n let buffered = 0;\n if (this.player.current!.buffered && this.player.current!.buffered.length) {\n buffered = this.player.current!.buffered.end(this.player.current!.buffered.length - 1);\n }\n return buffered;\n }\n\n private _getPlayPosition(): IPlayPosition {\n const bufferedDuration = this._getBufferedDuration();\n return {\n currentTime: this.player.current!.currentTime,\n startTime: 0,\n endTime: this.player.current!.duration,\n bufferedDuration\n };\n }\n\n private _onProgressChange(notification: ISliderChangeNotification): void {\n let time = notification.firstThumbValue;\n const position = this._getPlayPosition();\n time = Math.max(position.startTime, Math.min(time, position.endTime));\n\n if (Math.abs(time - position.currentTime) >= PlayerConstants.defaultPositionUpdateThreshold) {\n this.player.current!.currentTime = time;\n if (this.audio.current) {\n this.audio.current.currentTime = time;\n }\n }\n }\n\n private _onTriggerClicked(): void {\n const currentPlayer = this.player.current;\n if (!this.isPlayerLoaded) {\n this._loadPlayer();\n this.player.current!.autoplay = true;\n } else if (currentPlayer!.paused) {\n this.play();\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('playingAriaLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.playAriaLabel).call(this);\n } else {\n this.pause();\n this._updateScreenReaderElement(this.localizationHelper.getLocalizedValue('pausedAriaLabel'));\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.pauseAriaLabel).call(this);\n }\n\n if (this.state.isTriggerEnabled) {\n this.setState({ isTriggerEnabled: false }, () => {\n this.videoControl.current!.setFocusOnPlay();\n });\n onTelemetryClick(this.props.telemetryContent!, this.payLoad, LocalizationConstants.pauseAriaLabel).call(this);\n if (this.props.playerData.options.playFullScreen) {\n this._enterFullScreen();\n }\n }\n }\n\n private _stop(): void {\n const videoStartingTime: number = 0.1;\n if (isSafari()) {\n // Safari browser has issues with showing the poster frame of the video when ended. So setting the same to 0.1 seconds.\n this._seek(videoStartingTime);\n } else {\n this._seek(0);\n }\n\n if (this.props.playerData.options.controls) {\n this.pause();\n const playPosition = this._getPlayPosition();\n playPosition.endTime = this.state.playPosition.endTime;\n this.setState({ playPosition });\n if (this.audio.current) {\n this.audio.current.pause();\n }\n }\n }\n\n private _seek(time: number): void {\n const position = this._getPlayPosition();\n time = Math.max(position.startTime, Math.min(time, position.endTime));\n\n if (Math.abs(time - position.currentTime) >= PlayerConstants.defaultPositionUpdateThreshold) {\n this.seekFrom = position.currentTime;\n this.player.current!.currentTime = time;\n if (this.audio.current) {\n this.audio.current.currentTime = time;\n }\n }\n }\n\n /**\n * Returns the mask level style.\n * @returns Returns the mask level style.\n */\n private _getMaskLevelStyle(): string {\n let result: string;\n const maskLevel = this.props.playerData.options.maskLevel || PlayerConstants.defaultMaskLevel;\n result = format('rgba(0,0,0,{0})', Number(maskLevel) / 100);\n return result;\n }\n\n /**\n * Updates the current player state.\n * @param newState - Player state.\n */\n private _updateState(newState: PlayerStates): void {\n if (!newState || newState === this.playerState) {\n return;\n }\n\n this.playerState = newState;\n\n this._showControlsBasedOnState();\n this._showSpinnerBasedOnState();\n }\n\n /**\n * Shows or hides the spinner based on player state.\n */\n private _showSpinnerBasedOnState(): void {\n switch (this.playerState) {\n case 'ready':\n case 'playing':\n case 'paused':\n case 'ended':\n case 'stopped':\n case 'error':\n this._hideSpinner();\n break;\n default:\n this._showSpinner();\n }\n }\n\n /**\n * Shows or hides the player controls based on player state.\n */\n private _showControlsBasedOnState(): void {\n switch (this.playerState) {\n case 'error':\n case 'loading':\n case 'init':\n this._hideControlBar();\n break;\n case 'ended':\n this._showControlBar(false);\n break;\n case 'ready':\n case 'paused':\n case 'stopped':\n this._showControlBar(false);\n break;\n default:\n this._showControlBar(true);\n }\n }\n\n private _hideSpinner(): void {\n this.setState({ showSpinner: false });\n }\n\n private _showSpinner(): void {\n this.setState({ showSpinner: true });\n }\n\n /**\n * Play Trigger focus event.\n */\n private _onTriggerFocus(): void {\n this.setState({ mouseHovered: true });\n }\n\n /**\n * Play Trigger Blur event.\n */\n private _onTriggerBlur(): void {\n if (!this.state.isTriggerEnabled && this.state.playing) {\n this.setState({ mouseHovered: false });\n }\n }\n\n /**\n * Updates the screen reader element.\n * @param text - Update the screen reader element with the pased text.\n */\n private _updateScreenReaderElement(text: string): void {\n this.setState({\n screenReaderText: text\n });\n\n }\n\n /**\n * Avoid opening context menu on righ click.\n * @param e - Mouse Event.\n */\n private _onContextMenuClicked(e: React.MouseEvent): void {\n e.preventDefault();\n }\n\n /**\n * Check for mobile devices.\n * @returns - Return true or false.\n */\n private _isMobile(): boolean {\n if (MsDyn365.msdyn365Commerce.isBrowser) {\n const userAgent = window.navigator.userAgent;\n const isIphone = !!userAgent.match(/iphone/i);\n const isSilk = !!userAgent.match(/silk/i);\n const isWindowsPhone = !!userAgent.match(/windows phone/i);\n const isAndroid = !isWindowsPhone && (isSilk ||\n !!userAgent.match(/android/i));\n return isIphone || isWindowsPhone || isAndroid;\n }\n return false;\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as React from 'react';\n\nimport { IActionToggleProps } from './action-toggle.props';\n\n/**\n * ActionToggle - This component is toggle button which switches between states\n * and for accessibility reasons are 2 different buttons.\n */\nexport default class ActionToggle extends React.PureComponent {\n private readonly _divRef: React.RefObject = React.createRef();\n\n private _focusElement: HTMLElement | null = null;\n\n public constructor(props: Readonly) {\n super(props);\n this._onClick = this._onClick.bind(this);\n }\n\n public getSnapshotBeforeUpdate(): null {\n this._focusElement = null;\n if (this._divRef.current?.contains(document.activeElement)) {\n this._focusElement = document.activeElement as HTMLElement;\n }\n return null;\n }\n\n public componentDidUpdate(): void {\n if (this._divRef.current && this._focusElement) {\n const focusTarget = this._divRef.current.children[this.props.toggled ? 1 : 0] as HTMLElement;\n if (focusTarget !== document.activeElement) {\n focusTarget.focus();\n }\n }\n }\n\n public render(): JSX.Element | null {\n const { className, children, toggled, onChange, ...props } = this.props;\n const classes = `action-toggle${className ? ' ' : ''}${className || ''}`;\n return React.Children.count(children) !== 2 ? null : (\n
\n {React.Children.map(children, (child: React.ReactNode, index: number) => {\n const hidden = (!index && !!this.props.toggled) || (!!index && !this.props.toggled);\n\n return React.cloneElement(child as any, { 'aria-hidden': hidden, onClick: this._onClick });\n })}\n
\n );\n }\n\n private _onClick(event: React.KeyboardEvent): void {\n event.stopPropagation();\n if (this.props.onChange) {\n this.props.onChange({ id: this.props.id, actionToggle: this, toggled: !!this.props.toggled, event });\n }\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport * as React from 'react';\n\nimport { PlayerConstants, VideoPlayerNames } from '../data';\nimport { IAgeGateProps } from './age-gate.props';\n\n/**\n *\n * AgeGate React component for video player.\n *\n */\nexport interface IDropdownState {\n monthValue: string;\n dayValue: string;\n yearValue: string;\n}\n\n/**\n * AgeGate class.\n */\nexport default class AgeGate extends React.PureComponent {\n public static defaultProps: Partial = {\n minmumAge: 18\n };\n\n private readonly ageGateDiv: React.RefObject = React.createRef();\n\n public constructor(props: IAgeGateProps) {\n super(props);\n this._filterDateMonthYear = this._filterDateMonthYear.bind(this);\n this.state = {\n monthValue: 'Month',\n dayValue: 'Day',\n yearValue: 'Year'\n };\n }\n\n public render(): JSX.Element {\n const enabled = PlayerConstants.regxForAgeGateInputValidation.test(this.state.dayValue) &&\n PlayerConstants.regxForAgeGateInputValidation.test(this.state.monthValue) &&\n PlayerConstants.regxForAgeGateInputValidation.test(this.state.yearValue);\n return (\n
\n
\n
\n

Enter your date of birth

\n
\n
\n {this.renderSelectMonth()}\n
\n
\n {this.renderSelectDay()}\n
\n
\n {this.renderSelectYear()}\n
\n \n
\n
\n
\n
\n );\n }\n\n public getCalculatedAge = () => {\n const day: number = Number(this.state.dayValue);\n const month: number = Number(this.state.monthValue);\n const year: number = Number(this.state.yearValue);\n const today: Date = new Date();\n let age = today.getFullYear() - year;\n const birthdayMonthHasNotHappenedYet: boolean = today.getMonth() + 1 < month;\n const birthdayDayHasNotHappenedYet: boolean = (today.getMonth() + 1 === month && today.getDate() < day);\n if (birthdayMonthHasNotHappenedYet || birthdayDayHasNotHappenedYet) {\n // User has not reached their birth month and/or birth day-of-month in the current year\n age--;\n }\n const minimmumage = Number(this.props.minmumAge);\n if (age >= minimmumage) {\n return true;\n }\n return false;\n\n };\n\n private _filterDateMonthYear(event: any): void {\n switch (event.target.id) {\n case 'selectDay': {\n this.setState({ dayValue: event.target.value });\n break;\n }\n case 'selectMonth': {\n this.setState({ monthValue: event.target.value });\n break;\n }\n case 'selectYear': {\n this.setState({ yearValue: event.target.value });\n break;\n }\n }\n }\n\n private readonly renderSelectMonth = (): JSX.Element => {\n const maxOffset = 12;\n const allMonth = [];\n for (let month = 1; month <= maxOffset; month++) {\n allMonth.push(month);\n }\n const monthList = allMonth.map((month) => {\n return ();\n });\n return (\n