{"version":3,"file":"static/js/8.e1a720910256ee93ae12.chunk.js","mappings":"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EAAkB9W,GAC/D,OAAK6G,EAID7G,GAAmB,KAAVA,OACH6G,EAAS9c,MAAM+sB,GAAY9W,IAI7B7K,EAFJ6K,EAAc6G,EAAS9c,MAAM+sB,MAIzB9W,GADAA,EAAQ+lB,iBAAiBlf,IACXiQ,IAGX9W,GAbA,KAqBR,SAASgmB,EAAgBC,GACxBA,IACAA,EAAc9P,UAAY,IAU3B,SAAS+P,EAAmBX,EAAkBzQ,GACjD,MAAMqR,EAAmBX,EAA6BD,EAAUzQ,GAChE,OAASqR,GAAqBA,EAAiBvxB,OAAiBuxB,EAAiB,GAAxB,MFnJ7D,SAAYntB,GACR,mBACA,iBACA,sBACA,sBACA,oBACA,kBACA,sBACA,4BACA,wBACA,sBACA,wBACA,4BACA,kBACA,oBACA,8BACA,0BACA,gCACA,8BACA,sBACA,wBACA,wBACA,wBACA,0BACA,2BACA,yBACA,yBACA,kCACA,oCACA,qCACA,oBACA,0BACA,0BACA,0BACA,0BACA,2BACA,2BACA,2BACA,2BACA,2BACA,2BACA,yCACA,iCACA,mCACA,+BACA,qCACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,+BACA,iCACA,iCACA,iCACA,qCACA,yCACA,yCACA,2CACA,6CACA,2BACA,iCACA,uBACA,yBACA,uBACA,uBACA,qCACA,uBACA,6BACA,6BACA,6BACA,6BACA,iDACA,+CACA,iDACA,mDACA,uCACA,2CACA,2CACA,6CACA,uCACA,qCACA,uDACA,yDACA,2DACA,+DACA,iEACA,+DACA,6DACA,iEACA,mEACA,iEACA,mCACA,+BACA,qCACA,uBAlGJ,CAAYA,IAAAA,EAAQ,KGWb,MAAMotB,EAiBS,YAAC90B,EAAa+0B,EAAgBC,GAC5C,IAAKh1B,EACD,OAGJ,IAAIi1B,EAAmB,KAGnBxsB,OAAOysB,gBACPD,EAAc,IAAIC,eAElBD,EAAYryB,iBAAiB,QAAQ,KACjCmyB,GAAQA,EAAKE,EAAYE,cACzBL,EAAcM,+BAA+BH,MAMjDH,EAAcO,oBAAoB/mB,KAAK2mB,IAChCxsB,OAAO6sB,iBACdL,EAAc,IAAIK,eAEl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","sources":["webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/player.tsx?8176","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/action-toggle/action-toggle.tsx?246b","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/age-gate/age-gate.tsx?96c8","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/video-closed-captions-settings.ts?2fc2","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/ttml-settings.ts?ff45","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/ttml-context.ts?2af4","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/ttml-time-parser.ts?72f5","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/ttml-parser.ts?6362","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/closed-captions/video-closed-captions.tsx?4d40","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/data/player-constants.ts?0a75","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/data/player-metadata.ts?24d6","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/helper/localization-helper.ts?26d0","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/helper/closed-caption-helper.ts?8eff","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/helper/player-helper.ts?800e","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/menu-item/menu-item.tsx?471c","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/menu/menu.tsx?4ce6","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/play-pause-trigger/play-pause-trigger.tsx?3fa4","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/utilities/key-codes.ts?1004","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/utilities/string-extensions.ts?3689","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/utilities/html-extensions.ts?9642","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/utilities/player-utility.ts?33e3","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/utilities/utilities.ts?65c9","webpack://@msdyn365-commerce-partners/fabrikam/./src/video-player-utilities/components/video-controls/video-controls.tsx?32a5","webpack://@msdyn365-commerce-partners/fabrikam/./src/modules/video-player/components/additional-content.tsx?b368","webpack://@msdyn365-commerce-partners/fabrikam/./src/modules/video-player/video-player.tsx?53e5","webpack://@msdyn365-commerce-partners/fabrikam/./src/modules/video-player/video-player.view.tsx?fedb"],"sourcesContent":["/*--------------------------------------------------------------\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