{"version":3,"sources":["webpack:///src/video-player-utilities/components/utilities/key-codes.ts?8feb","webpack:///src/video-player-utilities/components/utilities/string-extensions.ts?345d","webpack:///src/video-player-utilities/components/utilities/html-extensions.ts?aa23","webpack:///src/video-player-utilities/components/utilities/player-utility.ts?3a35","webpack:///src/video-player-utilities/components/utilities/utilities.ts?0ca0","webpack:///src/video-player-utilities/components/closed-captions/video-closed-captions-settings.ts?25da","webpack:///src/video-player-utilities/components/data/index.ts?c501","webpack:///src/video-player-utilities/components/age-gate/index.ts?54b3","webpack:///src/video-player-utilities/components/index.ts?652d","webpack:///src/video-player-utilities/components/menu/menu.tsx?5ade","webpack:///src/video-player-utilities/components/data/player-metadata.ts?4bb7","webpack:///src/video-player-utilities/components/data/player-options.ts?2e22","webpack:///src/video-player-utilities/components/age-gate/age-gate.tsx?cc6e","webpack:///src/video-player-utilities/components/menu/index.ts?567c","webpack:///src/video-player-utilities/components/menu-item/index.ts?b108","webpack:///src/video-player-utilities/index.ts?3f27","webpack:///src/video-player-utilities/components/closed-captions/ttml-settings.ts?49bb","webpack:///src/video-player-utilities/components/closed-captions/ttml-context.ts?eae7","webpack:///src/video-player-utilities/components/closed-captions/ttml-time-parser.ts?318d","webpack:///src/video-player-utilities/components/closed-captions/ttml-parser.ts?b1e5","webpack:///src/video-player-utilities/components/closed-captions/video-closed-captions.tsx?e44a","webpack:///src/video-player-utilities/components/menu-item/menu-item.tsx?a24a","webpack:///src/video-player-utilities/components/video-controls/index.ts?5121","webpack:///src/video-player-utilities/components/play-pause-trigger/play-pause-trigger.tsx?15b0","webpack:///src/video-player-utilities/components/closed-captions/index.ts?a53e","webpack:///src/video-player-utilities/components/data/player-constants.ts?585a","webpack:///src/video-player-utilities/components/action-toggle/index.ts?8852","webpack:///src/video-player-utilities/components/helper/localization-helper.ts?5ff4","webpack:///src/video-player-utilities/components/helper/closed-caption-helper.ts?fff3","webpack:///src/video-player-utilities/components/helper/player-helper.ts?eb20","webpack:///src/video-player-utilities/components/video-controls/video-controls.tsx?23aa","webpack:///src/index.ts?c6ae","webpack:///src/video-player-utilities/components/action-toggle/action-toggle.tsx?fd4f","webpack:///src/video-player-utilities/components/play-pause-trigger/index.ts?51e3","webpack:///src/video-player-utilities/player.tsx?18a1"],"names":["KeyCodes","format","formatSpecifier","parameters","replace","match","index","length","value","toString","isNullOrWhiteSpace","trim","startsWith","prefix","ignoreCase","toLocaleLowerCase","getText","element","textContent","addClass","cssClass","classList","contains","className","includes","hasClass","add","nodeListToArray","nodeList","elements","n","push","selectElements","selector","context","selectElementsT","currentContext","document","test","getElementsByClassName","slice","querySelectorAll","querySelector","getElementsByTagName","css","property","style","getComputedStyle","removeInnerHtml","parentElement","innerHTML","selectFirstElement","elementsSelected","PlayerUtility","url","done","failed","ajaxRequest","window","XDomainRequest","addEventListener","responseText","_removeFromPendingAjaxRequests","pendingAjaxRequests","XMLHttpRequest","onreadystatechange","readyState","result","status","ontimeout","open","send","obj","i","splice","createElement","extend","recursive","target","paramIndex","undefined","key","Object","keys","hasOwnProperty","source","isSourceArray","Array","isArray","call","isTargetArray","isSourceObject","isTargetObject","arrayIndex","entries","getDimensions","containerElement","width","clientWidth","height","clientHeight","isSafari","navigator","vendor","userAgent","videoClosedCaptionsConstant","presetKey","closedCaptionsSettingDefaults","preset","text_font","text_color","text_opacity","text_size","text_edge_style","text_background_color","text_background_opacity","window_color","window_opacity","closedCaptionsSettingsMap","option","closedCaptionsPresetMap","preset1","preset2","preset3","preset4","preset5","closedCaptionsSettingsOptions","font","pre","map","casual","cursive","monospacedsansserif","monospacedserif","proportionalsansserif","proportionalserif","smallcapitals","percent","0","50","75","100","small","default","large","extralarge","maximum","color","white","black","blue","cyan","green","grey","magenta","red","yellow","none","depressed","dropshadow","raised","uniform","Menu","React","constructor","props","super","this","handleDocumentClick","bind","_onKeyDown","_onKeyUp","componentDidMount","forEach","event","componentWillUnmount","removeEventListener","getMenuWidth","current","offsetWidth","shouldComponentUpdate","nextProps","shouldRender","playerMenu","render","menuItems","items","count","ref","category","role","onKeyDown","onKeyUp","menuItem","MenuItem","id","label","language","data","isBackButton","image","imageAlt","itemCount","itemIndex","glyph","selected","selectable","persistOnClick","ariaLabel","subMenu","hasMouseHoverEvents","hasChildren","onClick","onMenuItemClick","onFocus","onBlur","onMouseOver","onMouseOut","hasFocus","e","onDocumentClick","MediaTypes","MediaQuality","ClosedCaptionTypes","DownloadableMediaTypes","MobileVideoQuality","AgeGate","ageGateDiv","getCalculatedAge","day","Number","state","dayValue","month","monthValue","year","yearValue","today","Date","age","getFullYear","birthdayMonthHasNotHappenedYet","getMonth","birthdayDayHasNotHappenedYet","getDate","minmumAge","renderSelectMonth","allMonth","monthList","toFixed","VideoPlayerNames","videoplayerContainer","onChange","_filterDateMonthYear","name","renderSelectDay","allDay","dayList","renderSelectYear","thisYear","allYear","yearList","enabled","PlayerConstants","regxForAgeGateInputValidation","disabled","onSubmitClick","setState","xmlNS","TtmlSettings","settingsOverrides","ttmlNamespace","ttmlStyleNamespace","ttmlParameterNamespace","ttmlMetaNamespace","idPrefix","mediaFrameRate","mediaFrameRateMultiplier","mediaSubFrameRate","mediaTickRate","supportedTimeBase","rootContainerRegionDimensions","relatedMediaObjectRegion","cellResolution","rows","columns","defaultRegionStyle","backgroundColor","direction","display","displayAlign","extent","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","opacity","origin","overflow","padding","showBackground","textAlign","textDecoration","textOutline","unicodeBidi","visibility","wrapOption","writingMode","fontMap","monospaceSerif","proportionalSerif","monospaceSansSerif","proportionalSansSerif","smallCaps","monospace","sansSerif","serif","TtmlContext","translateToHtml","applicableStyleSet","preserveSpace","translation","innerNode","_getTagNameEquivalent","htmlName","htmlClass","TtmlParser","getAttributeNS","settings","agent","_defaultStyle","ownerDocument","title","setAttribute","appendChild","_translateStyle","outerNode","ttmlTextDecoration","parts","split","mappedColor","toLowerCase","rgbaRegEx","exec","alpha","parseInt","Math","round","substr","TtmlNamedColorMap","transparent","setOwnerDocument","updateRelatedMediaObjectRegion","dimensions","hasEvents","events","resetCurrentEvents","currentEvents","updateCurrentEvents","time","timeEvents","_getTemporallyActiveEvents","currentEventsLength","currentEventsTime","getCues","cues","root","regions","layout","getElementsByTagNameNS","region","regionId","anonymousId","getAttribute","_translate","_isInRegion","pruneResult","_prune","inheritableStyleSet","cueBody","prunedElement","hasPreservedContent","showAlways","children","removeAttribute","rcr","rootContainerRegion","cue","filter","_isTemporallyActive","inheritedStyleSet","translator","computedStyleSet","tag","_getComputedStyleSet","_getApplicableStyleSet","_getInheritableStyleSet","tagName","_applyStyle","ignoreAncestors","child","childNodes","nodeType","Node","COMMENT_NODE","TEXT_NODE","createTextNode","childPreserveSpace","spaceAttr","pruneRecord","ancestor","parentNode","ELEMENT_NODE","body","styleSetCache","sets","set","applyInlineStyles","fontSizes","_appendSpanFontSizes","_isStyleApplicable","elemRegion","_getRegionId","node","namespaceURI","getLocalTagName","nameSpace","mappedValue","_ttmlToCssColor","coords","_ttmlToCssUnits","size","_ttmlToCssFontSize","values","max","indexOf","parseFloat","isNaN","contextRect","first","second","third","forth","_ttmlToCssTextDecoration","defaultColor","_ttmlToCssTextOutline","ttmlUnits","cssUnits","unit","charAt","container","containerSize","scaleFactor","isRegion","floor","textShadow","thickness","blur","firstChar","lengthRegEx","units","x","y","silver","gray","maroon","purple","fuchsia","lime","olive","navy","teal","aqua","TtmlTimeParser","_mediaFrameRate","_mediaTickRate","parse","ttmlTime","absoluteTime","absoluteTimeRegex","hours","minutes","seconds","subseconds","_getTimeUnitMultiplier","relativeTime","relativeTimeRegex","timeUnit","localName","baseName","namespace","attribute","attributes","lookupNamespaceURI","ttmlDocument","_parseXml","ttmlContext","_verifyRoot","_getFirstElementByTagNameNS","_parseTtAttrs","head","_ensureRegions","timeBase","_processAnonymousSpans","timeParser","_applyTiming","start","mediaStart","end","mediaEnd","_applyStyling","sort","event1","event2","styleSet","nodeValue","xmlString","xml","DOMParser","parseFromString","domParser","ActiveXObject","async","loadXML","candidate","documentElement","cellRes","cellGrid","createElementNS","extents","setAttributeNS","anonymousRegion","_isTagNS","textNodeGroups","prevNodeType","group","anonSpan","replaceChild","bound","isParallelContext","beginAttribute","startTime","endTime","duration","durationAttribute","endAttribute","minEnd","min","styling","styles","_applyStylesheet","empty","styleAttribute","ids","styleId","matches","ClosedCaptions","userPreferences","text","closedCaptionDiv","lastPlayPosition","resetCaptions","clicked","closedCaptionDivStyle","bottom","isVideoControlVisible","transition","showClosedCaptions","onClosedCaptionClick","ccURL","_setCcLanguage","updateCaptions","currentTime","componentDidUpdate","prevProps","ccLanguage","applySettings","setTimeout","showSampleCaptions","mockCaptions","_onClosedCaptionsLoaded","playPosition","output","tick","_applyUserPreferencesOverrides","outerHTML","prefs","currentSettings","tempClosedCaptionsSettings","currentClosedCaptionsSettings","settingKey","optionValue","_getOptionValue","_getPrefsCss","_loadClosedCaptions","href","ajax","errorCallback","errorType","errorDesc","error","message","winElement","optionKey","setting","prefsCss","pref","propVal","pVal","colorValue","opacityValue","_formatAsRgba","cssColor","colorStart","fullColorString","colorLenght","PureComponent","createRef","_onClick","_onFocus","_onMouseOver","_onMouseOut","_onBlur","lang","src","alt","focus","stopPropagation","PlayPauseTrigger","playRef","pauseRef","payLoad","getPayloadObject","telemetryContent","playAriaLabel","pauseAriaLabel","contentAction","etext","toggled","LocalizationConstants","getTelemetryAttributes","ActionToggle","UncontrolledTooltip","trigger","defaultVolume","defaultVolumeSliderSteps","defaultVideoSliderSteps","defaultControlPanelTimeout","defaultPositionUpdateThreshold","defaultMaskLevel","defaultPlayGlyphIcon","defaultPauseGlyphIcon","defaultMuteGlyphIcon","defaultUnMuteGlyphIcon","defaultFullScreenGlyphIcon","defaultExitFullScreenGlyphIcon","closedCaptionGlyphClassName","thumbnailFullWidth","thumbnailFullHeight","ccLangPrefKey","seekBarLabel","mutePrefKey","volumePrefKey","mediaType","MenuCategories","AudioTracks","ClosedCaption","ClosedCaptionSettings","PlaybackSpeed","Quality","Share","Download","Options","MediaEvents","VideoErrorCodes","ccCultureLocStrings","ccLanguageCodes","PlayerLocKeys","playVideoAriaLabel","closeAriaLabel","optionAriaLabel","muteAriaLabel","unMuteAriaLabel","fullScreenAriaLabel","exitFullScreenAriaLabel","playingAriaLabel","pausedAriaLabel","sliderThumbLabel","volumeThumbLabel","videoTimeDurationLabel","closedCaptionLabel","audio_tracks","descriptive_audio","closecaption_off","audio_tracks_default","cc_customize","cc_text_font","cc_text_color","cc_color_black","cc_color_blue","cc_color_cyan","cc_color_green","cc_color_grey","cc_color_magenta","cc_color_red","cc_color_white","cc_color_yellow","cc_font_name_casual","cc_font_name_cursive","cc_font_name_monospacedsansserif","cc_font_name_monospacedserif","cc_font_name_proportionalserif","cc_font_name_proportionalsansserif","cc_font_name_smallcapitals","cc_text_size","cc_text_size_default","cc_text_size_extralarge","cc_text_size_large","cc_text_size_maximum","cc_text_size_small","cc_appearance","cc_preset1","cc_preset2","cc_preset3","cc_preset4","cc_preset5","cc_presettings","cc_text_background_color","cc_text_background_opacity","cc_text_opacity","cc_percent_0","cc_percent_100","cc_percent_25","cc_percent_50","cc_percent_75","cc_text_edge_color","cc_text_edge_style","cc_text_edge_style_depressed","cc_text_edge_style_dropshadow","cc_text_edge_style_none","cc_text_edge_style_raised","cc_text_edge_style_uniform","cc_window_color","cc_window_opacity","cc_reset","LocalizationHelper","playerResources","getLocalizedValue","getLanguageCodeFromLocale","locale","getLanguageNameFromLocale","ClosedCaptionHelper","playerHelper","localizationHelper","playerMetaData","checkClosedCaptionsFiles","ccFiles","getClosedCaptionMenu","ccMenuItems","ccFile","ccType","TTML","ccMenuItem","addIdPrefix","_getClosedCaptionsSettingsMenu","unshift","getUpdatedClosedCaptionSetting","currentClosedCaptionsSetting","presetValue","getClosedCaptionURLFromLocale","settingsMenuItems","optionMenuItem","_getCCMenuItemId","_getCCSettingsMenuId","settingsMenu","presetItems","presetSetting","ariaLabelValue","settingId","optionId","PlayerHelper","isMobileDevice","onErrorCallback","console","log","playerProps","_isMobileDevice","getMetadata","_mapVideoFiles","_setCCFiles","_setAudioTracks","playerData","metaData","updatePlayerProps","_clearVideoPlayerMetaData","getOptionMenu","audioTracks","_getAudioTracksMenu","optionMenuItems","getPosterFrameUrl","posterFrameUrl","options","hidePosterFrame","posterframeUrl","_removeProtocolFromUrl","getVideoFileToPlay","videoFile","MP4","quality","LO","videoMetaData","mpVideoFiles","_getVideoFileByType","videoFiles","mobileVideoQuality","mobileVideoFile","_getVideoFileByQuality","toUpperCase","hdVideoFile","HDX","hqVideoFile","HQ","sdVideoFile","SD","loVideoFile","isEmptyOrUndefined","childId","playerId","removeIdPrefix","substring","audioTracksMenuItems","descriptiveAudioTrackCount","track","isDescriptiveAudio","trackIndex","audioTrack","languageCode","descriptiveAudioLabel","audioMenuItem","videoBinaryReferences","binaryRef","extension","$type","sourceHref","audioType","bitrate","alias","clientHref","videoBinaryFiles","mediaTypeAndQuality","_getMediaTypeAndQuality","urlRef","formatCode","mType","mQuality","HD","SMOOTH","HLS","DASH","file","ButtonMenuTypes","VideoControls","selectedMenuItems","volumeButtonDiv","playButtonRef","pauseButtonRef","closedCaptionRef","optionButtonRef","fullscreenButtonRef","exitFullScreenButtonRef","videoControlDiv","closedCaptionButtonDiv","optionButtonDiv","menuRef","muteButtonRef","unMuteButtonRef","_fullScreenReference","showVolumeControl","autohide","offsetPosition","_getOffsetPosition","clearTimeout","volumeAutoHideTimer","showVolumeSlider","volumeSliderLeftPosition","offsetLeft","volumeSliderTopPosition","offsetTop","activeElement","firstChild","_hideVolumeControl","volumeAutoHideTimeout","_onDocumentClick","currentMenu","showMenu","_renderClosedCaptionButton","videoControlsClassName","resources","_onClosedCaptionClick","_renderOptionButton","optionButtonLabel","_onOptionsButtonClick","_renderFullScreenButton","isInFullScreen","toggleFullScreen","_renderVolumeButton","isMuted","volumeButtonProps","onMuteClick","_renderVideoSlider","videoProps","inForm","fillTrackValue","bufferedDuration","step","videoSeekSteps","orientation","showProgressBar","onProgressChange","showLabels","showTooltip","shouldSliderAdjustToRTL","handleTooltipText","_handleProgressToolTipText","sliderThumbs","ariaValueText","Slider","_renderVolumeSlider","volumeSliderProps","volumeSeekSteps","onVolumeChange","currentVolume","tooltip","_toElapsedTimeString","focusedMenuItemIndex","_onMenuItemClick","_reevaluateWidth","_onMenuBlur","_onMenuFocus","_onMenuKeyDown","_onMenuKeyUp","menuLeftPosition","closedCaptionMenu","toolTipClass","nextState","isControlPanelVisible","previousProps","currentClosedCaptionLanguage","currentAudioTrack","_updateSelectedMenu","volumeDivStyle","top","left","menuDivStyle","playing","handleControlsKeyDownHandler","onPlayClick","optionMenu","setFocusOnPlay","setFocusOnMenuButton","_isIPhone","rowDiv","controlBarButtonsWidth","sliderWidth","videoControlWidth","viewportMax","innerWidth","_applyTooltipClassOnWidthChange","button","onMenuItemFocus","onMenuItemBlur","_onMenuKeyPressed","keyCode","Space","preventDefault","currentMenuItem","_resetFocusForCurrentMenu","ArrowLeft","ArrowRight","Enter","ArrowUp","ArrowDown","forceUpdate","PageUp","Home","End","PageDown","Escape","Tab","shiftKey","currentTarget","_getSelectedMenuFromList","pop","JSON","stringify","item","refDiv","buttonWidth","elementwidth","negative","remainder","elapsedTime","viewportMin","_divRef","_focusElement","getSnapshotBeforeUpdate","focusTarget","classes","hidden","actionToggle","Player","controlPanelTimer","player","audio","playerContainer","videoControl","ageGateContainer","videoUrl","seekFrom","closedCaptionHelper","optionsMenu","selectedClosedCaptionsLocale","isPlayerManuallyPaused","isPlayerLoaded","_renderClosedCaptions","closedCaptionLanguage","closedCaptionsURL","doControlsHaveFocus","_onTriggerClicked","_renderPlayPauseTrigger","maskLevelStyle","autoplay","shouldAutoPlay","playPauseTrigger","isPlayPauseTrigger","controls","isControlsEnabled","shouldDisableAutoPlayOnMobile","MsDyn365","isBrowser","isTriggerEnabled","isAgegateEnabled","mouseHovered","_onTriggerFocus","_onTriggerBlur","_renderVideoControls","_setMuted","_onVolumeChange","_onProgressChange","_toggleFullScreen","_handleControlsKeyDownEvent","_onVideoControlsFocus","_onVideoControlsBlur","_onPlayerMenuItemClick","_onPlayerMenuItemFocus","_onPlayerMenuItemBlur","currentAudioTrackURL","_renderAgeGate","_validateAgeSubmitHandler","minimumAge","isAutoPlay","ageGate","isAgeGateEnabled","mute","lazyLoad","isLazyLoaded","_isMobile","_shouldAutoPlay","previousVolume","showSpinner","showErrorMessage","screenReaderText","mounted","videoErrorMessage","playerState","_onMouseEvent","_onPlay","_onPause","_triggerEvents","_triggerAudioEvents","_onFullScreenChanged","_showControlBar","_onFullscreenError","_onPlayerKeyDown","_onContextMenuClicked","doc","fullscreenEnabled","mozFullScreenEnabled","webkitFullscreenEnabled","webkitSupportsFullscreen","msFullscreenEnabled","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","loop","isLoop","_getMaskLevelStyle","isEditor","_loadPlayer","loadMetaData","onMouseEnter","onMouseLeave","preload","muted","autoPlay","onPlay","onPause","onContextMenu","poster","playsInline","Waiting","play","catch","_onVideoError","_onAudioError","pause","_onVideoLoadedData","mediaEvent","volume","load","autoCaptionsLang","autoCaptions","autoCaptionsLocale","_displayErrorMessage","notification","_setCCSettings","_setCC","ccLanguageId","selectedOption","updatePreferences","dataSplit","currentSetting","paused","type","_updateState","seeking","currentPlayer","_onTimeUpdate","_stop","_getError","errorMessage","errorCode","MediaErrorAborted","MediaErrorNetwork","MediaErrorDecode","MediaErrorSourceNotSupported","_stopMedia","msgToDisplay","contentErrorCode","code","MEDIA_ERR_ABORTED","MEDIA_ERR_NETWORK","MEDIA_ERR_DECODE","MEDIA_ERR_SRC_NOT_SUPPORTED","MediaErrorUnknown","keycode","jumpToTime","firstThumbValue","newVolume","_updateScreenReaderElement","onTelemetryClick","_showControlsBasedOnState","autoHide","_hideControlBar","_onFullscreenExit","_onFullscreenEnter","_exitFullScreen","_enterFullScreen","_isNativeFullscreenEnabled","elementInFullScreen","_getElementInFullScreen","requestFullscreen","msRequestFullscreen","mozRequestFullScreen","webkitRequestFullscreen","webkitEnterFullScreen","cancelFullScreen","msExitFullscreen","mozCancelFullScreen","webkitCancelFullScreen","position","_getPlayPosition","_getBufferedDuration","buffered","abs","playFullScreen","_seek","maskLevel","newState","_showSpinnerBasedOnState","_hideSpinner","_showSpinner","isIphone","isSilk","isWindowsPhone","isAndroid","playerName","videoId","description","shareUrl","externalPlayerUrl","externalSourceId"],"mappings":"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","file":"static/js/7.0e94d64844de5001357f.chunk.js","sourcesContent":["/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\n/**\n * KeyCodes Enum.\n */\nexport enum KeyCodes {\n Back = 8,\n Tab = 9,\n Enter = 13,\n Shift = 16,\n Ctrl = 17,\n Alt = 18,\n Break = 19,\n CapsLock = 20,\n Escape = 27,\n Space = 32,\n PageUp = 33,\n PageDown = 34,\n End = 35,\n Home = 36,\n ArrowLeft = 37,\n ArrowUp = 38,\n ArrowRight = 39,\n ArrowDown = 40,\n Print = 44,\n Insert = 45,\n Delete = 46,\n Colon2 = 59, // Opera and Firefox\n Equals2 = 61, // Opera\n Equals3 = 107, // Firefox\n Minus2 = 109, // Opera and Firefox\n Period = 190,\n WindowsLeft = 91,\n WindowsRight = 92,\n WindowsOpera = 219, // Opera\n Menu = 93,\n NumPad0 = 96,\n NumPad1 = 97,\n NumPad2 = 98,\n NumPad3 = 99,\n NumPad4 = 100,\n NumPad5 = 101,\n NumPad6 = 102,\n NumPad7 = 103,\n NumPad8 = 104,\n NumPad9 = 105,\n NumPadMultiply = 106,\n NumPadPlus = 107,\n NumPadMinus = 109,\n NumPadDot = 110,\n NumPadDivide = 111,\n Function1 = 112,\n Function2 = 113,\n Function3 = 114,\n Function4 = 115,\n Function5 = 116,\n Function6 = 117,\n Function7 = 118,\n Function8 = 119,\n Function9 = 120,\n Function10 = 121,\n Function11 = 122,\n Function12 = 123,\n NavigationUp = 138,\n NavigationDown = 139,\n NavigationLeft = 140,\n NavigationRight = 141,\n NavigationAccept = 142,\n NumLock = 144,\n ScrollLock = 145,\n Colon = 186,\n Equals = 187,\n Comma = 188,\n Minus = 189,\n ForwardSlash = 191,\n Tilde = 192,\n GamepadA = 195,\n GamepadB = 196,\n GamepadX = 197,\n GamepadY = 198,\n GamepadRightButton = 199,\n GamepadLeftButton = 200,\n GamepadLeftTrigger = 201,\n GamepadRightTrigger = 202,\n GamepadDPadUp = 203,\n GamepadDPadDown = 204,\n GamepadDPadLeft = 205,\n GamepadDPadRight = 206,\n GamepadSelect = 207,\n GamepadStart = 208,\n GamepadLeftThumbstick = 209,\n GamepadRightThumbstick = 210,\n GamepadLeftThumbstickUp = 211,\n GamepadLeftThumbstickDown = 212,\n GamepadLeftThumbstickRight = 213,\n GamepadLeftThumbstickLeft = 214,\n GamepadRightThumbstickUp = 215,\n GamepadRightThumbstickDown = 216,\n GamepadRightThumbstickRight = 217,\n GamepadRightThumbstickLeft = 218,\n OpenBracket = 219,\n BackSlash = 220,\n CloseBracket = 221,\n Quote = 222\n}\n\n/**\n * Here for test coverage.\n */\nexport class KeycodesClass {\n public testCoverage(): string {\n return ':(';\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 * Format the passed string.\n * @param formatSpecifier - FormatSpecifier.\n * @param parameters -- Any number of parameters.\n * @returns The formated string.\n */\nexport function format(formatSpecifier: string, ...parameters: any[]): string {\n if (!formatSpecifier) {\n return '';\n }\n\n return formatSpecifier.replace(/{(\\d+)}/g, (match: string, index: number) => {\n\n if (index >= parameters.length) {\n return match;\n }\n\n const value = parameters[index];\n\n if (typeof value !== 'number' && !value) {\n return '';\n }\n\n if (typeof value === 'string') {\n return value;\n }\n\n return value.toString();\n });\n}\n\n/**\n * Determines if the specified string is undefined, null, empty, or whitespace.\n * @param value - The string to examine.\n * @returns - True if the value is undefined, null, empty, or whitespace, otherwise false.\n */\nexport function isNullOrWhiteSpace(value: string): boolean {\n return (!value) || (typeof value !== 'string') || (!trim(value));\n}\n\n/**\n * Trims leading and trailing whitespace from the string.\n * @param value - The string to examine.\n * @returns - The trimmed string.\n */\nexport function trim(value: string): string {\n // Any flavor of !value (ie. null/undefined/'') should return itself.\n if (!value || (typeof value !== 'string')) {\n return value;\n }\n\n if (value.trim) {\n return value.trim();\n }\n\n return value.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determines if the specified string starts with the specified value.\n * @param value - The string to look in.\n * @param prefix - The prefix to look for.\n * @param ignoreCase - Ignore Case.\n * @returns - True if the string starts with the prefix, otherwise false.\n */\nexport function startsWith(value: string, prefix: string, ignoreCase: boolean = true): boolean {\n if (!value || !prefix) {\n return false;\n }\n\n if (ignoreCase) {\n value = value.toLocaleLowerCase();\n prefix = prefix.toLocaleLowerCase();\n }\n\n // @ts-expect-error -- Checking startsWith function exists.\n if ((value).startsWith) {\n return (value).startsWith(prefix);\n }\n\n return value.startsWith(prefix);\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { isNullOrWhiteSpace, trim } from './string-extensions';\n\n/**\n * Get the text of the element.\n * @param element - HTML element.\n * @returns The content of the element.\n */\nexport function getText(element?: HTMLElement | Element): string {\n return element ? element.textContent || '' : '';\n}\n\n/**\n * Add a css class to an element.\n * @param element - The element to add the css class to.\n * @param cssClass - The css class to add.\n */\nexport function addClass(element: HTMLElement, cssClass: string): void {\n if ((element) && (!isNullOrWhiteSpace(cssClass)) && (!hasClass(element, cssClass))) {\n if (element.classList) {\n element.classList.add(cssClass);\n } else {\n element.className = trim(`${element.className} ${cssClass}`);\n }\n }\n}\n\n/**\n * Checks for the presence of a css class on an element.\n * @param element - The element to check the css class of.\n * @param cssClass - The css class to check for.\n * @returns True if the element's className has the specified class, otherwise false.\n */\nexport function hasClass(element: HTMLElement, cssClass: string): boolean {\n if ((!element) || isNullOrWhiteSpace(cssClass)) {\n return false;\n } else if (element.classList) {\n return element.classList.contains(cssClass);\n }\n return (`' ' ${element.className} ' '`).includes(`' ' ${trim(cssClass)} ' '`);\n\n}\n\n/**\n * Convert node list to array.\n * @param nodeList - Node List.\n * @returns Array of the node list.\n */\nexport function nodeListToArray(nodeList: NodeListOf | NodeListOf |\nHTMLCollection | NodeList | NamedNodeMap): T[] {\n if (!nodeList) {\n return [];\n }\n\n const elements: T[] = [];\n\n // eslint-disable-next-line unicorn/no-for-loop -- Suppressed as NodeList is not iterative.\n for (let n = 0; n < nodeList.length; n++) {\n elements.push(nodeList[n]);\n }\n\n return elements;\n}\n\n/**\n * Select elements in a context.\n * @param selector - Can be class, id or tag selector.\n * @param [context] - Any element to scope the selection. It's optional. If not provided document will be assumed.\n * @returns HTMLElement[].\n */\nexport function selectElements(selector: string, context?: HTMLElement): HTMLElement[] {\n return selectElementsT(selector, context);\n}\n\n/**\n * Select elements in a context.\n * @param selector - Can be class, id or tag selector.\n * @param [context] - Any element to scope the selection. It's optional. If not provided document will be assumed.\n * @returns T[].\n */\nexport function selectElementsT(selector: string, context?: HTMLElement): T[] {\n if (isNullOrWhiteSpace(selector) || selector === '#') {\n return [];\n }\n\n const currentContext: HTMLElement | Document = context || document;\n\n // Check if the first character is class or id.\n if (/^[#.]?[\\w-]+$/.test(selector)) {\n switch (selector[0]) {\n case '.':\n if (currentContext.getElementsByClassName) {\n return nodeListToArray(currentContext.getElementsByClassName(selector.slice(1)));\n }\n return nodeListToArray(currentContext.querySelectorAll(selector));\n\n case '#':\n const element = currentContext.querySelector(selector);\n return (element ? [element] : []);\n }\n\n return nodeListToArray(currentContext.getElementsByTagName(selector));\n }\n\n return nodeListToArray(currentContext.querySelectorAll(selector));\n}\n\n/**\n * Sets or gets CSS properties.\n * @param element - HTML Element.\n * @param property - The CSS property name.\n * @param [value] - The value to set on the CSS property.\n * @returns - The value of the CSS property.\n */\nexport function css(element: HTMLElement | Node, property: string, value?: any): any {\n if (!element) {\n return null;\n }\n\n if (value || value === '') {\n (element).style[property] = value;\n } else {\n value = (element).style[property];\n\n if (isNullOrWhiteSpace(value)) {\n value = getComputedStyle(element as any);\n value = value[property];\n }\n\n return value;\n }\n}\n\n/**\n * Remove all inner HTML from a parent element - used to delete child elements.\n * @param parentElement - The parent element from which all children should be removed.\n */\nexport function removeInnerHtml(parentElement: HTMLElement): void {\n if (parentElement) {\n parentElement.innerHTML = '';\n }\n}\n\n/**\n * Select first element from the selected elements using provided selector.\n * @param selector - Element selector.\n * @param [context] - An optional context to scope the selection.\n * @returns - The first element from the match.\n */\nexport function selectFirstElement(selector: string, context?: HTMLElement): HTMLElement | null {\n const elementsSelected = selectElementsT(selector, context);\n return (!elementsSelected || !elementsSelected.length) ? null : elementsSelected[0];\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\ndeclare let window: any;\n\n/**\n * @name - XDomainRequest\n * @description - typescript declaration for XDomainRequest object.\n * @type {object}\n */\ndeclare let XDomainRequest: any;\n\n/**\n * PlayerUtilities class.\n * @classdesc - The PlayerOptions class is used to pass player options settings to the player.\n * It supplies default values which can be overridden via overrides passed to the constructor.\n */\nexport class PlayerUtility {\n\n /**\n * @name - pendingAjaxRequests\n * @description - array to hold pending ajax requests.\n * @private\n * @static\n * @returns {any}\n */\n private static readonly pendingAjaxRequests: any = [];\n\n /**\n * Gets request data using ajax call.\n * @param url - Url from where to fetch data.\n * @param done - On success callback function.\n * @param failed - On failed callback function.\n */\n public static ajax(url: string, done: Function, failed?: Function): void {\n if (!url) {\n return;\n }\n\n let ajaxRequest: any = null;\n\n // For IE 9 and below use XDomainRequest\n if (window.XDomainRequest) {\n ajaxRequest = new XDomainRequest();\n\n ajaxRequest.addEventListener('load', () => {\n done && done(ajaxRequest.responseText);\n PlayerUtility._removeFromPendingAjaxRequests(ajaxRequest);\n });\n\n // IE8 and IE9 have a bug where garbage collector will clear XDomainRequest object\n // before the call is completed. Thus add a reference to the object so that request\n // is not aborted by garbage collector.\n PlayerUtility.pendingAjaxRequests.push(ajaxRequest);\n } else if (window.XMLHttpRequest) {\n ajaxRequest = new XMLHttpRequest();\n\n ajaxRequest.onreadystatechange = () => {\n if (ajaxRequest.readyState === 4) {\n let result: any = null;\n if (ajaxRequest.status === 200) {\n result = ajaxRequest.responseText;\n }\n done && done(result);\n } else {\n // The following console.log useful for debugging and is left in commented out for easy restoration.\n // console.log('Localization-helper: readystate(' + xhttp.readyState + ') status(' + xhttp.status + ')');\n }\n };\n }\n\n // Attach common event handlers and make the request.\n if (ajaxRequest) {\n ajaxRequest.ontimeout = ajaxRequest.addEventListener('error', () => {\n PlayerUtility._removeFromPendingAjaxRequests(ajaxRequest);\n failed && failed();\n });\n ajaxRequest.open('GET', url, true);\n ajaxRequest.send();\n }\n }\n\n /**\n * Removes object from array to hold pending ajax requests.\n * @param obj - Object.\n */\n private static _removeFromPendingAjaxRequests(obj: any): void {\n // When the call is completed remove it from the array\n let index = -1;\n for (let i = 0; i < PlayerUtility.pendingAjaxRequests.length; i++) {\n if (obj === PlayerUtility.pendingAjaxRequests[i]) {\n index = i;\n break;\n }\n }\n if (index >= 0) {\n PlayerUtility.pendingAjaxRequests.splice(index, 1);\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\n/**\n * Client Dimension Interface.\n */\nexport interface IClientDimension {\n width: number;\n height: number;\n}\n\n/**\n * Dictionary String Interface.\n */\nexport interface IDictionaryStringString {\n [key: string]: string;\n}\n\n/**\n * @interface IGrid\n * @classdesc - The IGrid interface contract.\n */\nexport interface IGrid {\n rows: number;\n columns: number;\n}\n\n/**\n * Clamp position between a range.\n * @param value - Value to be clamped.\n * @param min - Minimum value in range.\n * @param max - Maximum value in range.\n * @returns The clap value if min passed is less than max else returns 0.\n */\nexport function clamp(value: number, min: number, max: number): number {\n if (min <= max) {\n return Math.min(Math.max(value, min), max);\n }\n return 0;\n\n}\n\n/**\n * Upper case the first letter of the string, if only one char exists on the string, uppercase it.\n * @param value - Value to be upper cased.\n * @returns The upper cased string of the passed value, if it has just one char uppercase it.\n */\nexport function toUpperCaseFirstChar(value: string): string {\n if (value.length > 1) {\n return value.charAt(0).toUpperCase() + value.substr(1);\n }\n if (value.length === 1) {\n return value.charAt(0).toUpperCase();\n }\n return '';\n\n}\n\n/**\n * HTML collectio to Array.\n * @param nodeList - Html Collection.\n * @returns - An array of the HTML Element.\n */\nexport function htmlCollectionToArray(nodeList: HTMLCollection): HTMLElement[] {\n return Array.prototype.slice.call(nodeList);\n}\n\n/**\n * Get CSS for the Element.\n * @param element - The HTML Element.\n * @param property - The HTML property.\n * @returns - The value of the required property.\n */\nexport function getCSS(element: HTMLElement, property: string): string {\n let style = element.style[property];\n\n if (!style) {\n style = getComputedStyle(element)[property];\n }\n\n return style;\n}\n\n/**\n * Create Throttled Event.\n * @param listener - The Event Listener.\n * @param threshold - The threshold number.\n * @returns The event.\n */\nexport function createThrottledEvent(listener: EventListener, threshold: number):\n(event: Event) => void {\n let timer: any;\n let last = 0;\n\n return (event: Event) => {\n const now = Date.now();\n\n if (timer) {\n clearTimeout(timer);\n timer = undefined;\n }\n\n if (last && (now < last + threshold)) {\n timer = setTimeout(() => {\n last = Date.now();\n listener(event);\n },\n threshold - (now - last));\n } else {\n last = now;\n listener(event);\n }\n };\n}\n\n/**\n * Add the Throrrled Event.\n * @param target - Event Targer.\n * @param name - Name of the Event.\n * @param listener - The Event Listener.\n * @param threshold - The Threshold number.\n * @returns - Returns the Throttled Event.\n */\nexport function addThrottledEvent(target: EventTarget, name: string, listener: EventListener, threshold: number = 150):\n(event: Event) => void {\n\n const throttledEventHandler = createThrottledEvent(listener, threshold);\n target.addEventListener(name, throttledEventHandler, false);\n\n return throttledEventHandler;\n}\n\n/**\n * Map the CSS to the modules.\n * @param className - Class name.\n * @param cssModule - CSS modules.\n * @returns - Returns the map CSS.\n */\nexport function mapToCssModules(className: string = '', cssModule: any): string {\n if (!cssModule) {\n return className;\n }\n\n return className\n .split(' ')\n .map((c: string) => cssModule[c] || c)\n .join(' ');\n}\n\n/**\n * Check the raget object is reference.\n * @param target - Target object.\n * @returns Returns boolean.\n */\nexport function isRef(target: any): boolean {\n if (!target) {\n return false;\n }\n\n return (>target).current !== undefined;\n}\n\n/**\n * Check if the passed target is element.\n * @param target - Target element.\n * @returns Returns boolean.\n */\nexport function isElement(target: any): boolean {\n if (!target) {\n return false;\n }\n\n return (target).addEventListener !== undefined;\n}\n\n/**\n * KeyCodes Enum.\n */\nexport const keyCodes = {\n esc: 27,\n space: 32,\n tab: 9,\n up: 38,\n down: 40,\n enter: 13\n};\n\n/**\n * Map Interface.\n */\ninterface IMap {\n [key: string]: T;\n}\nconst warned: IMap = {};\n\n/**\n * Warn once.\n * @param message - Message to warned.\n */\nexport function warnOnce(message: string): void {\n if (!warned[message]) {\n if (typeof console !== 'undefined') {\n throw new Error(message);\n }\n warned[message] = true;\n }\n}\n\n/**\n * Can use DOM..\n */\nexport const canUseDOM = !!(\n typeof window !== 'undefined' &&\n window.document &&\n window.document.createElement\n);\n\n/**\n * Find the required DOM element.\n * @param target - Targert Dom Element.\n * @returns - The DOM Element or string or null.\n */\nexport function findDOMElements(target: string): NodeListOf | string | null {\n try {\n if (typeof target === 'string' && canUseDOM) {\n let selection = document.querySelectorAll(target);\n\n if (!selection.length) {\n selection = document.querySelectorAll(`#${target}`);\n }\n\n if (!selection.length) {\n throw new Error();\n }\n return selection;\n }\n\n return target;\n } catch {\n console.error(`The target '${target}' could not be identified in the dom, tip: check spelling`);\n return null;\n }\n}\n\n/**\n * Get the Target element.\n * @param target - Target Element.\n * @returns - Returns the HTMLElement or null or string.\n */\nexport function getTarget(target: string | HTMLElement | React.Ref): HTMLElement | React.Ref | null | string {\n const selection = findDOMElements(target);\n if (selection && selection.length) {\n return selection[0];\n }\n\n return target;\n}\n\n/**\n * Get the Target element.\n * @param target - Target Element.\n * @returns - Returns the HTMLElement or null or string.\n */\nexport function getTargetElement(target: string | HTMLElement | React.Ref): HTMLElement | null {\n const targetElement = getTarget(target);\n if (isRef(targetElement)) {\n return (>targetElement).current;\n }\n if (isElement(targetElement)) {\n return targetElement;\n }\n\n return null;\n}\n\n/**\n * Transition Timeouts.\n */\nexport const TransitionTimeouts = {\n Fade: 150,\n Collapse: 350,\n Modal: 300,\n Carousel: 600\n};\n\n/**\n * Transition Statuses.\n */\nexport type TransitionStatuses = 'entering' | 'entered' | 'exiting' | 'exited';\n\n/**\n * Focusable Elements.\n */\nexport const focusableElements = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([type=hidden])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n 'button:not([disabled])',\n 'iframe',\n 'object',\n 'embed',\n '[tabindex]:not(.modal)',\n 'audio[controls]',\n 'video[controls]',\n '[contenteditable]:not([contenteditable=\"false\"])'\n];\n\n/**\n * Extends an object with properties/values from one or more others.\n * @param parameters - The objects to merge together.\n * @returns - The extended object.\n */\nexport function extend(...parameters: any[]): any {\n if (!parameters || !parameters.length) {\n return null;\n }\n\n const recursive = (typeof (parameters[0]) === 'boolean') && parameters[0];\n\n if (parameters.length < 2) {\n return recursive ? null : parameters[0];\n }\n\n if (recursive && (parameters.length < 3)) {\n return parameters[1];\n }\n\n const target = recursive ? parameters[1] : parameters[0];\n\n for (let paramIndex = recursive ? 2 : 1; paramIndex < parameters.length; paramIndex++) {\n if (parameters[paramIndex] !== undefined) {\n for (const key of Object.keys(parameters[paramIndex])) {\n if (parameters[paramIndex].hasOwnProperty(key)) {\n const source = parameters[paramIndex][key];\n\n if (recursive) {\n let isSourceArray = Array.isArray ?\n Array.isArray(source) :\n ({}).toString.call(source) === '[object Array]';\n let isTargetArray = !!target[key] && (Array.isArray ?\n Array.isArray(target[key]) :\n ({}).toString.call(target[key]) === '[object Array]');\n let isSourceObject = !isSourceArray && (typeof source === 'object');\n let isTargetObject = !isTargetArray && !!target[key] && (typeof target[key] === 'object');\n\n if (isSourceArray && isTargetArray) {\n for (const [arrayIndex, element] of source.entries()) {\n isSourceArray = Array.isArray ?\n Array.isArray(element) :\n ({}).toString.call(element) === '[object Array]';\n isTargetArray = !!target[key][arrayIndex] && (Array.isArray ?\n Array.isArray(target[key][arrayIndex]) :\n ({}).toString.call(target[key][arrayIndex]) === '[object Array]');\n isSourceObject = !isSourceArray && (typeof element === 'object');\n isTargetObject = !isTargetArray && !!target[key][arrayIndex] && (typeof target[key][arrayIndex] === 'object');\n\n if (isSourceArray) {\n target[key][arrayIndex] = extend(true, isTargetArray ? target[key][arrayIndex] : [], element);\n } else if (isSourceObject) {\n target[key][arrayIndex] = extend(true, isTargetObject ? target[key][arrayIndex] : {}, element);\n } else {\n target[key][arrayIndex] = element;\n }\n }\n continue;\n } else if (isSourceArray) {\n target[key] = extend(true, [], source);\n continue;\n } else if (isSourceObject) {\n target[key] = extend(true, isTargetObject ? target[key] : {}, source);\n continue;\n }\n }\n\n target[key] = source;\n }\n }\n }\n }\n\n return target;\n}\n\n/**\n * Gets the dimension of an element.\n * @param containerElement - The container element.\n * @returns - {IClientDimension} - The client dimension.\n * {IClientDimension.width} - The client width.\n * {IClientDimension.height} - The client height.\n */\nexport function getDimensions(containerElement: HTMLElement): IClientDimension | null {\n if (containerElement === null) {\n return null;\n }\n return {\n width: containerElement.clientWidth,\n height: containerElement.clientHeight\n };\n}\n\n/**\n * Check if the browser is Safari or not.\n * @returns Ture or false.\n */\nexport function isSafari(): boolean {\n if (navigator.vendor && navigator.userAgent) {\n return navigator.vendor.includes('Apple') &&\n !navigator.userAgent.includes('CriOS') &&\n !navigator.userAgent.includes('FxiOS');\n }\n return false;\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ICurrentClosedCaptionsSettings } from '../data';\nimport { IDictionaryStringString } from '../utilities';\n\n/**\n * Video closed captions constant.\n */\nexport const videoClosedCaptionsConstant = {\n presetKey: 'preset'\n};\n\n/**\n * @name - closedCaptionsSettinsDefaults\n * @description - The default value for closed captions settings.\n */\nexport const closedCaptionsSettingDefaults: ICurrentClosedCaptionsSettings = {\n preset: 'preset1',\n text_font: 'proportionalsansserif',\n text_color: 'white',\n text_opacity: '100',\n text_size: 'default',\n text_edge_style: 'none',\n text_background_color: 'black',\n text_background_opacity: '100',\n window_color: 'black',\n window_opacity: '0'\n};\n\n/**\n * @name - closedCaptionsSettingsMap\n * @description - The closed captions settings map.\n */\nexport const closedCaptionsSettingsMap: IClosedCaptionsSettingsMap = {\n text_font: { value: 'font-family:', option: 'font' },\n text_color: { value: 'color:', option: 'color' },\n text_size: { value: 'font-size:', option: 'text_size' },\n text_edge_style: { value: 'text-shadow:', option: 'text_edge_style' },\n text_opacity: { value: 'color:', option: 'percent' },\n text_background_color: { value: 'background:', option: 'color' },\n text_background_opacity: { value: 'background:', option: 'percent' },\n window_color: { value: 'background:', option: 'color' },\n window_opacity: { value: 'background:', option: 'percent' }\n};\n\n/**\n * @interface IClosedCaptionsSettingsMap\n * @description - The data contract interface used for storing closed caption setting map.\n */\nexport interface IClosedCaptionsSettingsMap {\n [key: string]: IClosedCaptionsSettings;\n}\n\n/**\n * @interface IClosedCaptionsSettings\n * @description - The data contract interface used for storing closed caption setting values.\n */\nexport interface IClosedCaptionsSettings {\n value: string;\n option: string;\n}\n\n/**\n * Closed Captions Preset Map Interface.\n */\nexport interface IClosedCaptionsPresetMap {\n [key: string]: IDictionaryStringString;\n}\n\n/**\n * @name - closedCaptionsPresetMap\n * @description - The closed captions preset settings map.\n */\nexport const closedCaptionsPresetMap: IClosedCaptionsPresetMap = {\n preset1: {\n text_font: 'proportionalsansserif',\n text_color: 'white',\n text_opacity: '100',\n text_background_color: 'black',\n text_background_opacity: '100'\n },\n preset2: {\n text_font: 'monospacedserif',\n text_color: 'white',\n text_opacity: '100',\n text_background_color: 'black',\n text_background_opacity: '100'\n },\n preset3: {\n text_font: 'proportionalsansserif',\n text_color: 'yellow',\n text_opacity: '100',\n text_background_color: 'black',\n text_background_opacity: '100'\n },\n preset4: {\n text_font: 'proportionalsansserif',\n text_color: 'blue',\n text_opacity: '100',\n text_background_color: 'grey',\n text_background_opacity: '100'\n },\n preset5: {\n text_font: 'casual',\n text_color: 'white',\n text_opacity: '100',\n text_background_color: 'black',\n text_background_opacity: '100'\n }\n};\n\n/**\n * @name - closedCaptionsSettingsOptions\n * @description - The closed captions settings options and value map.\n */\nexport const closedCaptionsSettingsOptions: IClosedCaptionsOptionsMap = {\n font: {\n pre: 'cc_font_name_', // Key prefix for the localization\n map: {\n casual: 'Verdana;font-variant:normal',\n cursive: 'Zapf-Chancery,Segoe script,Cursive;font-variant:normal',\n monospacedsansserif: 'Lucida sans typewriter,Lucida console,Consolas;font-variant:normal',\n monospacedserif: 'Courier;font-variant:normal',\n proportionalsansserif: 'Arial,Sans-serif;font-variant:normal',\n proportionalserif: 'Times New Roman,Serif;font-variant:normal',\n smallcapitals: 'Arial,Helvetica,Sans-serif;font-variant:small-caps'\n }\n },\n percent: {\n pre: 'cc_percent_', // Key prefix for the options\n map: {\n 0: '0',\n 50: '0.5',\n 75: '0.75',\n 100: '1'\n }\n },\n text_size: {\n pre: 'cc_text_size_', // Key prefix for the options\n map: {\n small: '75%',\n default: '100%',\n large: '125%',\n extralarge: '150%',\n maximum: '200%'\n }\n },\n color: {\n pre: 'cc_color_', // Key prefix for the options\n map: {\n white: '#FFFFFF',\n black: '#000000',\n blue: '#0000FF',\n cyan: '#00FFFF',\n green: '#00FF00',\n grey: '#BCBCBC',\n magenta: '#FF00FF',\n red: '#FF0000',\n yellow: '#FFFF00'\n }\n },\n text_edge_style: {\n pre: 'cc_text_edge_style_', // Key prefix for the options\n map: {\n none: 'none',\n depressed: '1px 1px 0 #FFF,-1px -1px 0 #000',\n dropshadow: '1px 1px 0 #000',\n raised: '1px 1px 0 #000,-1px -1px 0x #FFF',\n uniform: '1px 1px 0 #000,-1px 1px 0 #000,1px -1px 0 #000,-1px -1px 0 #000'\n }\n }\n};\n\n/**\n * @interface IClosedCaptionOptionsMap\n * @description - The data contract interface used for storing player closed captions options map.\n */\nexport interface IClosedCaptionsOptionsMap {\n [key: string]: IClosedCaptionsOptions;\n}\n\n/**\n * @interface IClosedCaptionsOptions\n * @description - The data contract interface used for storing closed captions options values.\n */\nexport interface IClosedCaptionsOptions {\n pre: string;\n map: IDictionaryStringString;\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nexport * from './player-constants';\nexport * from './player-data';\nexport * from './player-interface';\nexport * from './player-metadata';\nexport * from './player-options';\nexport * from './player-resources';\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport AgeGate from './age-gate';\n\nexport * from './age-gate.props';\n\n/**\n * Exporting the AgeGate components.\n */\nexport { AgeGate };\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nexport * from './action-toggle';\nexport * from './age-gate';\nexport * from './closed-captions';\nexport * from './data';\nexport * from './helper';\nexport * from './menu';\nexport * from './menu-item';\nexport * from './play-pause-trigger';\nexport * from './utilities';\nexport * from './video-controls';\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 { IMenuItemProps, MenuItem } from '../menu-item';\nimport { IMenuProps } from './menu-props';\n\n/**\n *\n * Menu React component for video player.\n *\n */\nexport default class Menu extends React.Component {\n private readonly target: React.RefObject = React.createRef();\n\n public constructor(props: IMenuProps) {\n super(props);\n this.handleDocumentClick = this.handleDocumentClick.bind(this);\n this._onKeyDown = this._onKeyDown.bind(this);\n this._onKeyUp = this._onKeyUp.bind(this);\n }\n\n public componentDidMount(): void {\n ['click', 'touchstart'].forEach((event: string) => {\n window && window.addEventListener(event, this.handleDocumentClick, true);\n });\n }\n\n public componentWillUnmount(): void {\n ['click', 'touchstart'].forEach((event: string) => {\n window && window.removeEventListener(event, this.handleDocumentClick, true);\n });\n }\n\n public getMenuWidth(): number {\n return this.target.current!.offsetWidth;\n }\n\n public shouldComponentUpdate(nextProps: IMenuProps): boolean {\n let shouldRender = false;\n if (nextProps.playerMenu !== this.props.playerMenu) {\n shouldRender = true;\n }\n return shouldRender;\n }\n\n public render(): JSX.Element {\n const { className, style } = this.props;\n const menuItems: IMenuItemProps[] = this.props.playerMenu.items;\n const count: number = menuItems.length;\n return (\n \n \n {menuItems.map(\n (menuItem: IMenuItemProps, index: number) => {\n return (\n 0)}\n onClick={this.props.onMenuItemClick}\n onFocus={this.props.onFocus}\n onBlur={this.props.onBlur}\n onKeyDown={this.props.onKeyDown}\n onKeyUp={this.props.onKeyUp}\n onMouseOver={this.props.onMouseOver}\n onMouseOut={this.props.onMouseOut}\n hasFocus={menuItem.hasFocus}\n />\n );\n }\n )}\n \n \n );\n }\n\n public handleDocumentClick(e: Event): void {\n const target = e.target as HTMLElement;\n if (this.target !== undefined && !(this.target.current !== null && (e.target === this.target.current || this.target.current.contains(target)))) {\n this.props.onDocumentClick(e);\n }\n }\n\n private _onKeyDown(event: React.KeyboardEvent): void {\n this.props.onKeyDown!(event as unknown as Event);\n }\n\n private _onKeyUp(event: React.KeyboardEvent): void {\n this.props.onKeyUp!(event as unknown as 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 { IAudioTrack } from './player-interface';\n\n/**\n * @interface ICCFile\n * @description - The data contract interface used for storing references to closed caption files.\n */\nexport interface ICCFile {\n url: string;\n locale: string;\n ccType?: ClosedCaptionTypes;\n}\n\n/**\n * @interface IDownloadableFile\n * @description - The data contract interface used for storing references downloadable media files.\n */\nexport interface IDownloadableFile {\n mediaType: DownloadableMediaTypes;\n url: string;\n locale: string;\n}\n\n/**\n * @enum MediaTypes\n * @description - Enum for supported media types.\n */\nexport enum MediaTypes {\n MP4 = 'MP4',\n DASH = 'DASH',\n SMOOTH = 'SMOOTH',\n HLS = 'HLS'\n}\n\n/**\n * @enum MediaQuality\n * @description - Enum for supported media quality.\n */\nexport enum MediaQuality {\n HD = 'HD',\n HDX = 'HDX',\n HQ = 'HQ',\n SD = 'SD',\n LO = 'LO'\n}\n\n/**\n * @enum ClosedCaptionTypes\n * @description - Enum for supported closed caption types.\n */\nexport enum ClosedCaptionTypes {\n VTT = 'VTT',\n TTML = 'TTML'\n}\n\n/**\n * @enum DownloadableMediaTypes\n * @description - Enum for supported downloadable media types.\n */\nexport enum DownloadableMediaTypes {\n transcript = 'transcript',\n audio = 'audio',\n video = 'video',\n videoWithCC = 'videoWithCC'\n}\n\n/**\n * Cms datatype of video binary reference.\n */\nexport interface IVideoBinaryReference {\n\n /// Gets the video binary file format.\n format: string;\n\n /// Gets the video bit rate.\n frameRate: number;\n\n /// Gets the URL used on the clients to play the video.\n ClientHref: string;\n}\n\n/**\n * Cms datatype of video transcript binary reference.\n */\nexport interface IVideoTranscriptBinaryReference {\n\n /// Gets the locale.\n locale: string;\n\n /// Gets the URL used on the clients to play the video.\n clientHref: string;\n}\n\n/**\n * Cms datatype of video closed captions binary reference.\n */\nexport interface IVideoClosedCaptionBinaryReference {\n\n /// Gets the locale.\n locale: string;\n\n /// Gets the URL used on the clients to play the video.\n clientHref: string;\n}\n\n/**\n * Cms datatype of video closed captions binary reference.\n */\nexport interface IAudioBinaryReference {\n\n /// Gets the locale.\n locale: string;\n\n /// Gets the audio type.\n audioType: string;\n\n /// Gets the URL used on the clients to play the video.\n clientHref: string;\n}\n\n/**\n * IVideoMetadata.\n * @description - The data contract interface used for storing references to video metadata.\n */\nexport interface IVideoMetadata {\n playerName?: string;\n videoId?: string;\n title?: string;\n description?: string;\n duration?: number;\n posterframeUrl?: string;\n shareUrl?: string;\n videoFiles?: IVideoFile[];\n externalPlayerUrl?: string;\n externalSourceId?: string;\n interactiveTriggersEnabled?: boolean;\n interactiveTriggersUrl?: string;\n minimumAge?: number;\n videoBinaryReferences?: IBinaryReference[];\n ccFiles?: ICCFile[];\n audioTracks?: IAudioTrack[];\n}\n\n/**\n * @description - The data contract interface used for storing references to video files.\n */\nexport interface IVideoFile {\n url: string;\n mediaType: MediaTypes;\n quality: MediaQuality;\n width?: number;\n height?: number;\n formatCode?: string;\n}\n\n/**\n * Cms datatype of BinaryReference.\n */\nexport interface IBinaryReference {\n format?: string;\n bitrate?: number;\n clientHref?: string;\n height?: number;\n width?: number;\n alias?: string;\n contentType?: string;\n description?: string;\n extension?: string;\n sizeInBytes?: number;\n sourceHref?: string;\n href?: string;\n locale?: string;\n $type?: string;\n audioType?: string;\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 * Player Options Interface.\n */\nexport interface IPlayerOptions {\n autoplay?: boolean;\n mute?: boolean;\n loop?: boolean;\n playPauseTrigger?: boolean;\n controls?: boolean;\n maskLevel?: number;\n market?: string;\n playbackSpeed?: boolean;\n download?: boolean;\n playFullScreen?: boolean;\n hidePosterFrame?: boolean;\n autoCaptions?: string;\n flexSize?: boolean;\n aspectRatio?: number;\n userMinimumAge?: number;\n showEndImage?: boolean;\n showImageForVideoError?: boolean;\n inviewPlay?: boolean;\n inviewThreshold?: number;\n inViewWidthFraction?: number;\n inViewHeightFraction?: number;\n controlPanelTimeout?: number;\n thumbnailFullWidth?: boolean;\n ageGate?: boolean;\n lazyLoad?: boolean;\n mobileVideoQuality?: MobileVideoQuality;\n shouldDisableAutoPlayOnMobile?: boolean;\n isMobileDevice?: boolean;\n}\n\n/**\n * Mobile video quality.\n */\nexport enum MobileVideoQuality {\n hdx = 'hdx',\n hq = 'hq',\n sd = 'sd',\n lo = 'lo'\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