{"version":3,"sources":["plyr.js","node_modules/rangetouch/src/js/config.js","node_modules/rangetouch/src/js/utils/is.js","node_modules/rangetouch/src/js/utils/numbers.js","src/js/utils/animation.js","node_modules/rangetouch/src/js/rangetouch.js","node_modules/rangetouch/src/js/utils/events.js","node_modules/rangetouch/src/js/utils/css.js","src/js/utils/is.js","src/js/utils/browser.js","src/js/utils/events.js","src/js/utils/objects.js","src/js/utils/elements.js","src/js/support.js","src/js/utils/style.js","src/js/html5.js","src/js/utils/arrays.js","src/js/utils/strings.js","src/js/utils/i18n.js","src/js/storage.js","src/js/utils/fetch.js","src/js/utils/load-sprite.js","src/js/utils/time.js","src/js/controls.js","src/js/utils/urls.js","src/js/captions.js","src/js/config/defaults.js","src/js/config/states.js","src/js/config/types.js","src/js/console.js","src/js/fullscreen.js","src/js/utils/load-image.js","src/js/ui.js","src/js/listeners.js","node_modules/loadjs/dist/loadjs.umd.js","src/js/utils/load-script.js","src/js/plugins/vimeo.js","src/js/plugins/youtube.js","src/js/media.js","src/js/plugins/ads.js","src/js/plugins/preview-thumbnails.js","src/js/source.js","src/js/plyr.js","src/js/utils/numbers.js"],"names":["navigator","global","factory","exports","module","define","amd","self","Plyr","this","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","protoProps","staticProps","prototype","_defineProperty","obj","value","_slicedToArray","arr","Array","isArray","_arrayWithHoles","_arr","_n","_d","_e","undefined","_s","_i","Symbol","iterator","next","done","push","err","_iterableToArrayLimit","_nonIterableRest","_toConsumableArray","arr2","_arrayWithoutHoles","iter","toString","call","from","_iterableToArray","_nonIterableSpread","defaults","addCSS","thumbWidth","watch","getConstructor","input","constructor","instanceOf","Boolean","isNullOrUndefined","isObject","isString","String","isNodeList","NodeList","is","nullOrUndefined","object","number","Number","isNaN","string","boolean","function","Function","array","nodeList","element","Element","event","Event","empty","keys","round","step","places","match","concat","Math","max","parseFloat","toFixed","events","type","RangeTouch","options","document","querySelector","rangeTouch","config","assign","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","toggle","_this","method","forEach","set","percent","touch","changedTouches","min","getAttribute","delta","clientRect","getBoundingClientRect","width","clientX","left","disabled","preventDefault","get","dispatchEvent","trigger","arguments","targets","querySelectorAll","filter","MutationObserver","mutations","mutation","addedNodes","node","selector","includes","observe","body","childList","subtree","map","t","documentElement","isEmpty","is$1","weakMap","WeakMap","textNode","Text","keyboardEvent","KeyboardEvent","cue","window","TextTrackCue","VTTCue","track","TextTrack","kind","promise","Promise","url","URL","startsWith","hostname","e","transitionEndEvent","createElement","WebkitTransition","MozTransition","OTransition","transition","find","repaint","delay","setTimeout","hidden","offsetHeight","browser","isIE","documentMode","isEdge","userAgent","isWebkit","test","isIPhone","platform","isIos","supportsPassiveListeners","supported","addEventListener","removeEventListener","toggleListener","callback","passive","capture","split","eventListeners","on","off","once","_this2","onceCallback","_len","args","_key","apply","triggerEvent","bubbles","detail","CustomEvent","plyr","getDeep","path","reduce","extend","sources","source","shift","wrap","elements","wrapper","reverse","index","child","cloneNode","parent","parentNode","sibling","nextSibling","appendChild","insertBefore","setAttributes","attributes","entries","_ref","_ref3","_ref4","setAttribute","text","innerText","insertElement","removeElement","removeChild","emptyElement","childNodes","lastChild","replaceElement","newChild","oldChild","replaceChild","getAttributesFromSelector","sel","existingAttributes","existing","s","trim","className","replace","parts","charAt","class","id","toggleHidden","hide","toggleClass","force","classList","contains","hasClass","matches","getElements","container","getElement","setFocus","tabFocus","focus","preventScroll","classNames","range","defaultCodecs","audio/ogg","audio/wav","video/webm","video/mp4","video/ogg","support","audio","video","check","provider","playsinline","canPlayInline","api","ui","rangeInput","pip","webkitSetPresentationMode","pictureInPictureEnabled","disablePictureInPicture","airplay","WebKitPlaybackTargetAvailabilityEvent","mime","mediaType","isHTML5","media","canPlayType","textTracks","transitions","reducedMotion","matchMedia","validateRatio","every","reduceAspectRatio","ratio","_ratio","height","divider","getDivider","w","h","getAspectRatio","parse","embed","_this$media","videoWidth","videoHeight","setAspectRatio","isVideo","_ref2","padding","paddingBottom","isVimeo","offset","transform","videoFixedRatio","html5","getSources","getQualityOptions","player","_player$media","currentTime","paused","preload","readyState","src","play","load","quality","cancelRequests","blankVideo","debug","log","dedupe","item","indexOf","format","replaceAll","RegExp","toTitleCase","toUpperCase","substr","toLowerCase","toCamelCase","toPascalCase","slice","getHTML","innerHTML","resources","vimeo","youtube","i18n","{seektime}","seekTime","{title}","title","k","v","Storage","storage","store","localStorage","getItem","json","JSON","setItem","stringify","removeItem","fetch","responseType","resolve","reject","request","XMLHttpRequest","responseText","response","Error","status","open","send","loadSprite","hasId","exists","getElementById","update","data","insertAdjacentElement","useStorage","cached","content","then","result","catch","getHours","trunc","getMinutes","getSeconds","formatTime","time","displayHours","inverted","hours","mins","secs","controls","getIconUrl","cors","iconUrl","location","host","svg4everybody","findElements","selectors","buttons","pause","restart","rewind","fastForward","mute","settings","captions","fullscreen","progress","inputs","seek","volume","display","buffer","duration","seekTooltip","tooltip","error","warn","toggleNativeControls","createIcon","iconPath","iconPrefix","icon","createElementNS","role","focusable","use","setAttributeNS","createLabel","attr","join","createBadge","badge","menu","createButton","buttonType","label","labelPressed","iconPressed","some","c","control","button","createRange","autocomplete","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","updateRangeFill","setup","createProgress","aria-hidden","suffixKey","played","suffix","createTime","attrs","bindMenuItemShortcuts","menuItem","which","stopPropagation","isRadioButton","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","_this3","list","_ref$badge","_ref$checked","checked","aria-checked","flex","children","bind","currentTrack","speed","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","_this4","current","val","getElementsByTagName","nodeValue","setProgress","buffered","setProperty","updateSeekTooltip","_this5","tooltips","visible","show","pageX","timeUpdate","invert","invertTime","seeking","durationUpdate","pow","hasDuration","displayDuration","toggleMenuButton","setting","updateSetting","pane","panels","default","getLabel","setQualityMenu","_this6","checkMenu","getBadge","sort","a","b","sorting","setCaptionsMenu","_this7","tracks","getTracks","toggled","language","unshift","setSpeedMenu","_this8","values","popup","p","firstItem","toggleMenu","composedPath","isMenuItem","getMenuSize","tab","clone","position","opacity","removeAttribute","scrollWidth","scrollHeight","_this9","size","restore","propertyName","setDownloadUrl","download","create","_this10","defaultAttributes","progressContainer","aria-haspopup","aria-controls","aria-expanded","inner","home","backButton","href","urls","isEmbed","inject","_this11","floor","random","seektime","addProperty","controlPressed","_this$config","labels","parseUrl","parser","buildUrlParams","params","URLSearchParams","isYouTube","insertAfter","protocol","blob","createObjectURL","languages","userLanguage","active","trackEvents","_this$captions","meta","currentTrackNode","languageExists","mode","updateCues","setLanguage","activeClass","findTrack","enableTextTrack","has","sortIsDefault","sorted","getCurrentTrack","cues","activeCues","getCueAsHTML","cueText","caption","autoplay","autopause","toggleInvert","clickToPlay","hideControls","resetOnEnd","disableContextMenu","loop","selected","keyboard","focused","fallback","iosNative","seekLabel","unmute","enableCaptions","disableCaptions","enterFullscreen","exitFullscreen","frameTitle","menuBack","normal","start","end","all","reset","advertisement","qualityBadge","2160","1440","1080","720","576","480","sdk","iframe","googleIMA","editable","embedContainer","poster","posterEnabled","ads","playing","stopped","loading","hover","isTouch","uiSupported","noTransition","previewThumbnails","thumbContainer","thumbContainerShown","imageContainer","timeContainer","scrubbingContainer","scrubbingContainerShown","publisherId","tagUrl","byline","portrait","transparent","noCookie","rel","showinfo","iv_load_policy","modestbranding","providers","types","noop","Console","console","onChange","first","last","keyCode","activeElement","shiftKey","toggleFallback","scrollPosition","x","scrollX","y","scrollY","scrollTo","overflow","viewport","head","property","hasProperty","cleanupViewport","part","Fullscreen","prefix","forceFallback","native","webkitEnterFullscreen","requestFullscreen","webkitExitFullscreen","action","cancelFullScreen","exit","enter","fullscreenElement","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","pre","loadImage","minWidth","image","Image","handler","onload","onerror","naturalWidth","addStyleHook","build","checkPlaying","ready","setTitle","setPoster","togglePoster","enable","backgroundImage","backgroundSize","toggleControls","checkLoading","clearTimeout","timers","controlsElement","recentTouchSeek","lastSeekTime","Date","now","Listeners","lastKey","focusTimer","lastKeyDown","handleKey","setTabFocus","firstTouch","code","repeat","altKey","ctrlKey","metaKey","togglePlay","increaseVolume","decreaseVolume","forward","toggleCaptions","usingNative","timeStamp","wasKeyDown","setPlayerSize","measure","rect","resized","_player$fullscreen","isEnter","_setPlayerSize","firstChild","_getAspectRatio$call2","videoX","videoY","maxWidth","margin","setGutter","hasAudio","isAudio","ended","proxy","proxyEvents","_event$detail","defaultHandler","customHandlerKey","customHandler","returned","hasCustomHandler","inputEvent","currentTarget","hasAttribute","seekTo","loaded","startMove","endMove","startScrubbing","endScrubbing","webkitDirectionInvertedFromDevice","_map2","deltaX","deltaY","direction","sign","abs","globalThis","loadjs_umd","fn","createCommonjsModule","devnull","bundleIdCache","bundleResultCache","bundleCallbackQueue","publish","bundleId","pathsNotFound","q","splice","executeCallbacks","depsNotFound","success","loadFile","callbackFn","numTries","isLegacyIECss","doc","async","maxTries","numRetries","beforeCallbackFn","before","pathStripped","relList","as","onbeforeload","ev","sheet","cssText","defaultPrevented","loadjs","paths","arg1","arg2","loadFn","numWaiting","loadFiles","returnPromise","deps","bundleIds","r","subscribe","isDefined","loadScript","assurePlaybackState","hasPlayed","Vimeo","gesture","$2","thumbnail_large","pathname","Player","disableTextTrack","stop","restorePause","setVolume","setCurrentTime","setPlaybackRate","name","currentSrc","setLoop","getVideoUrl","getVideoWidth","getVideoHeight","dimensions","_dimensions","setAutopause","state","getVideoTitle","getCurrentTime","getDuration","getTextTracks","_ref$cues","strippedCues","fragment","createDocumentFragment","stripHTML","getPaused","seconds","parseInt","getHost","YT","onYouTubeIframeAPIReady","getTitle","videoId","currentId","posterSrc","playerVars","hl","disablekb","cc_load_policy","cc_lang_pref","widget_referrer","onError","message","2","5","100","101","150","onPlaybackRateChange","playbackRate","getPlaybackRate","onReady","playVideo","pauseVideo","stopVideo","getAvailablePlaybackRates","clearInterval","buffering","setInterval","getVideoLoadedFraction","lastBuffered","onStateChange","unMute","Ads","initialized","displayContainer","manager","loader","cuePoints","safetyTimer","countdownTimer","managerPromise","google","ima","destroy","remove","startSafetyTimer","clearSafetyTimer","setupIMA","setVpaidMode","ImaSdkSettings","VpaidMode","ENABLED","setLocale","setDisableCustomPlaybackForIOS10Plus","AdDisplayContainer","requestAds","AdsLoader","AdsManagerLoadedEvent","Type","ADS_MANAGER_LOADED","onAdsManagerLoaded","AdErrorEvent","AD_ERROR","onAdError","AdsRequest","adTagUrl","linearAdSlotWidth","offsetWidth","linearAdSlotHeight","nonLinearAdSlotWidth","nonLinearAdSlotHeight","forceNonLinearFullSlot","setAdWillPlayMuted","getRemainingTime","AdsRenderingSettings","restoreCustomPlaybackStateOnAdBreakComplete","enablePreloading","getAdsManager","getCuePoints","AdEvent","onAdEvent","cuePoint","seekElement","cuePercentage","ad","getAd","adData","getAdData","LOADED","pollCountdown","isLinear","STARTED","ALL_ADS_COMPLETED","loadAds","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","LOG","adError","getMessage","cancel","addCuePoints","contentComplete","seekedTime","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","_this12","handlers","_this13","AV_PUBLISHERID","AV_CHANNELID","AV_URL","cb","AV_WIDTH","AV_HEIGHT","AV_CDIM2","PreviewThumbnails","thumbnails","lastMouseMoveTime","mouseDown","loadedImages","thumb","scrubbing","getThumbnails","render","determineContainerAutoSizing","promises","u","getThumbnail","vttDataString","processedList","thumbnail","frames","frame","line","startTime","lineSplit","_lineSplit","_lineSplit$1$split2","matchTimes","endTime","urlPrefix","substring","lastIndexOf","tempImage","naturalHeight","percentage","mousePosX","showImageAtCurrentTime","toggleThumbContainer","toggleScrubbingContainer","ceil","lastTime","setScrubbingContainerSize","setThumbContainerSizeAndPos","thumbNum","findIndex","hasThumb","qualityIndex","showingThumb","thumbFilename","thumbUrl","currentImageElement","dataset","filename","showImage","removeOldImages","loadingImage","usingSprites","previewImage","showingThumbFilename","newImage","setImageSizeAndOffset","currentImageContainer","preloadNearby","getHigherQuality","currentImage","tagName","removeDelay","deleting","oldThumbFilename","thumbnailsClone","foundOne","newThumbFilename","thumbURL","currentQualityIndex","previewImageHeight","thumbContainerHeight","clearShowing","clientHeight","sizeSpecifiedInCSS","thumbAspectRatio","setThumbContainerPos","seekbarRect","plyrRect","minVal","maxVal","right","clientWidth","previewPos","multiplier","top","currentScrubbingImageElement","currentThumbnailImageElement","insertElements","attribute","change","_sources$","_sources$$provider","crossorigin","failed","jQuery","original","getProviderByUrl","search","truthy","searchParams","tabindex","webkitShowPlaybackTargetPicker","isHidden","hiding","eventName","soft","unload","inputIsValid","fauxDuration","realDuration","Infinity","mozHasAudio","webkitAudioDecodedByteCount","audioTracks","minimumSpeed","maximumSpeed","clamp","updateStorage","prev","curr","closest","requestPictureInPicture","exitPictureInPicture","webkitPresentationMode","pictureInPictureElement","inline"],"mappings":"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","file":"plyr.min.js","sourcesContent":["typeof navigator === \"object\" && (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define('Plyr', factory) :\n (global = global || self, global.Plyr = factory());\n}(this, function () { 'use strict';\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n }\n\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n }\n\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n }\n\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n\n function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n }\n\n function _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n }\n\n function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n\n var defaults = {\n addCSS: true,\n // Add CSS to the element to improve usability (required here or in your CSS!)\n thumbWidth: 15,\n // The width of the thumb handle\n watch: true // Watch for new elements that match a string target\n\n };\n\n // Element matches a selector\n function matches(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var matches = match;\n return matches.call(element, selector);\n }\n\n // Trigger event\n function trigger(element, type) {\n if (!element || !type) {\n return;\n } // Create and dispatch the event\n\n\n var event = new Event(type); // Dispatch the event\n\n element.dispatchEvent(event);\n }\n\n // ==========================================================================\n // Type checking utils\n // ==========================================================================\n var getConstructor = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n };\n\n var instanceOf = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n };\n\n var isNullOrUndefined = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n };\n\n var isObject = function isObject(input) {\n return getConstructor(input) === Object;\n };\n\n var isNumber = function isNumber(input) {\n return getConstructor(input) === Number && !Number.isNaN(input);\n };\n\n var isString = function isString(input) {\n return getConstructor(input) === String;\n };\n\n var isBoolean = function isBoolean(input) {\n return getConstructor(input) === Boolean;\n };\n\n var isFunction = function isFunction(input) {\n return getConstructor(input) === Function;\n };\n\n var isArray = function isArray(input) {\n return Array.isArray(input);\n };\n\n var isNodeList = function isNodeList(input) {\n return instanceOf(input, NodeList);\n };\n\n var isElement = function isElement(input) {\n return instanceOf(input, Element);\n };\n\n var isEvent = function isEvent(input) {\n return instanceOf(input, Event);\n };\n\n var isEmpty = function isEmpty(input) {\n return isNullOrUndefined(input) || (isString(input) || isArray(input) || isNodeList(input)) && !input.length || isObject(input) && !Object.keys(input).length;\n };\n\n var is = {\n nullOrUndefined: isNullOrUndefined,\n object: isObject,\n number: isNumber,\n string: isString,\n boolean: isBoolean,\n function: isFunction,\n array: isArray,\n nodeList: isNodeList,\n element: isElement,\n event: isEvent,\n empty: isEmpty\n };\n\n // Get the number of decimal places\n function getDecimalPlaces(value) {\n var match = \"\".concat(value).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n\n if (!match) {\n return 0;\n }\n\n return Math.max(0, // Number of digits right of decimal point.\n (match[1] ? match[1].length : 0) - ( // Adjust for scientific notation.\n match[2] ? +match[2] : 0));\n } // Round to the nearest step\n\n function round(number, step) {\n if (step < 1) {\n var places = getDecimalPlaces(step);\n return parseFloat(number.toFixed(places));\n }\n\n return Math.round(number / step) * step;\n }\n\n var RangeTouch =\n /*#__PURE__*/\n function () {\n /**\n * Setup a new instance\n * @param {String|Element} target\n * @param {Object} options\n */\n function RangeTouch(target, options) {\n _classCallCheck(this, RangeTouch);\n\n if (is.element(target)) {\n // An Element is passed, use it directly\n this.element = target;\n } else if (is.string(target)) {\n // A CSS Selector is passed, fetch it from the DOM\n this.element = document.querySelector(target);\n }\n\n if (!is.element(this.element) || !is.empty(this.element.rangeTouch)) {\n return;\n }\n\n this.config = Object.assign({}, defaults, options);\n this.init();\n }\n\n _createClass(RangeTouch, [{\n key: \"init\",\n value: function init() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n } // Add useful CSS\n\n\n if (this.config.addCSS) {\n // TODO: Restore original values on destroy\n this.element.style.userSelect = 'none';\n this.element.style.webKitUserSelect = 'none';\n this.element.style.touchAction = 'manipulation';\n }\n\n this.listeners(true);\n this.element.rangeTouch = this;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n }\n\n this.listeners(false);\n this.element.rangeTouch = null;\n }\n }, {\n key: \"listeners\",\n value: function listeners(toggle) {\n var _this = this;\n\n var method = toggle ? 'addEventListener' : 'removeEventListener'; // Listen for events\n\n ['touchstart', 'touchmove', 'touchend'].forEach(function (type) {\n _this.element[method](type, function (event) {\n return _this.set(event);\n }, false);\n });\n }\n /**\n * Get the value based on touch position\n * @param {Event} event\n */\n\n }, {\n key: \"get\",\n value: function get(event) {\n if (!RangeTouch.enabled || !is.event(event)) {\n return null;\n }\n\n var input = event.target;\n var touch = event.changedTouches[0];\n var min = parseFloat(input.getAttribute('min')) || 0;\n var max = parseFloat(input.getAttribute('max')) || 100;\n var step = parseFloat(input.getAttribute('step')) || 1;\n var delta = max - min; // Calculate percentage\n\n var percent;\n var clientRect = input.getBoundingClientRect();\n var thumbWidth = 100 / clientRect.width * (this.config.thumbWidth / 2) / 100; // Determine left percentage\n\n percent = 100 / clientRect.width * (touch.clientX - clientRect.left); // Don't allow outside bounds\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 100) {\n percent = 100;\n } // Factor in the thumb offset\n\n\n if (percent < 50) {\n percent -= (100 - percent * 2) * thumbWidth;\n } else if (percent > 50) {\n percent += (percent - 50) * 2 * thumbWidth;\n } // Find the closest step to the mouse position\n\n\n return min + round(delta * (percent / 100), step);\n }\n /**\n * Update range value based on position\n * @param {Event} event\n */\n\n }, {\n key: \"set\",\n value: function set(event) {\n if (!RangeTouch.enabled || !is.event(event) || event.target.disabled) {\n return;\n } // Prevent text highlight on iOS\n\n\n event.preventDefault(); // Set value\n\n event.target.value = this.get(event); // Trigger event\n\n trigger(event.target, event.type === 'touchend' ? 'change' : 'input');\n }\n }], [{\n key: \"setup\",\n\n /**\n * Setup multiple instances\n * @param {String|Element|NodeList|Array} target\n * @param {Object} options\n */\n value: function setup(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var targets = null;\n\n if (is.empty(target) || is.string(target)) {\n targets = Array.from(document.querySelectorAll(is.string(target) ? target : 'input[type=\"range\"]'));\n } else if (is.element(target)) {\n targets = [target];\n } else if (is.nodeList(target)) {\n targets = Array.from(target);\n } else if (is.array(target)) {\n targets = target.filter(is.element);\n }\n\n if (is.empty(targets)) {\n return null;\n }\n\n var config = Object.assign({}, defaults, options);\n\n if (is.string(target) && config.watch) {\n // Create an observer instance\n var observer = new MutationObserver(function (mutations) {\n Array.from(mutations).forEach(function (mutation) {\n Array.from(mutation.addedNodes).forEach(function (node) {\n if (!is.element(node) || !matches(node, target)) {\n return;\n } // eslint-disable-next-line no-unused-vars\n\n\n var range = new RangeTouch(node, config);\n });\n });\n }); // Pass in the target node, as well as the observer options\n\n observer.observe(document.body, {\n childList: true,\n subtree: true\n });\n }\n\n return targets.map(function (t) {\n return new RangeTouch(t, options);\n });\n }\n }, {\n key: \"enabled\",\n get: function get() {\n return 'ontouchstart' in document.documentElement;\n }\n }]);\n\n return RangeTouch;\n }();\n\n // ==========================================================================\n // Type checking utils\n // ==========================================================================\n var getConstructor$1 = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n };\n\n var instanceOf$1 = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n };\n\n var isNullOrUndefined$1 = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n };\n\n var isObject$1 = function isObject(input) {\n return getConstructor$1(input) === Object;\n };\n\n var isNumber$1 = function isNumber(input) {\n return getConstructor$1(input) === Number && !Number.isNaN(input);\n };\n\n var isString$1 = function isString(input) {\n return getConstructor$1(input) === String;\n };\n\n var isBoolean$1 = function isBoolean(input) {\n return getConstructor$1(input) === Boolean;\n };\n\n var isFunction$1 = function isFunction(input) {\n return getConstructor$1(input) === Function;\n };\n\n var isArray$1 = function isArray(input) {\n return Array.isArray(input);\n };\n\n var isWeakMap = function isWeakMap(input) {\n return instanceOf$1(input, WeakMap);\n };\n\n var isNodeList$1 = function isNodeList(input) {\n return instanceOf$1(input, NodeList);\n };\n\n var isElement$1 = function isElement(input) {\n return instanceOf$1(input, Element);\n };\n\n var isTextNode = function isTextNode(input) {\n return getConstructor$1(input) === Text;\n };\n\n var isEvent$1 = function isEvent(input) {\n return instanceOf$1(input, Event);\n };\n\n var isKeyboardEvent = function isKeyboardEvent(input) {\n return instanceOf$1(input, KeyboardEvent);\n };\n\n var isCue = function isCue(input) {\n return instanceOf$1(input, window.TextTrackCue) || instanceOf$1(input, window.VTTCue);\n };\n\n var isTrack = function isTrack(input) {\n return instanceOf$1(input, TextTrack) || !isNullOrUndefined$1(input) && isString$1(input.kind);\n };\n\n var isPromise = function isPromise(input) {\n return instanceOf$1(input, Promise);\n };\n\n var isEmpty$1 = function isEmpty(input) {\n return isNullOrUndefined$1(input) || (isString$1(input) || isArray$1(input) || isNodeList$1(input)) && !input.length || isObject$1(input) && !Object.keys(input).length;\n };\n\n var isUrl = function isUrl(input) {\n // Accept a URL object\n if (instanceOf$1(input, window.URL)) {\n return true;\n } // Must be string from here\n\n\n if (!isString$1(input)) {\n return false;\n } // Add the protocol if required\n\n\n var string = input;\n\n if (!input.startsWith('http://') || !input.startsWith('https://')) {\n string = \"http://\".concat(input);\n }\n\n try {\n return !isEmpty$1(new URL(string).hostname);\n } catch (e) {\n return false;\n }\n };\n\n var is$1 = {\n nullOrUndefined: isNullOrUndefined$1,\n object: isObject$1,\n number: isNumber$1,\n string: isString$1,\n boolean: isBoolean$1,\n function: isFunction$1,\n array: isArray$1,\n weakMap: isWeakMap,\n nodeList: isNodeList$1,\n element: isElement$1,\n textNode: isTextNode,\n event: isEvent$1,\n keyboardEvent: isKeyboardEvent,\n cue: isCue,\n track: isTrack,\n promise: isPromise,\n url: isUrl,\n empty: isEmpty$1\n };\n\n // ==========================================================================\n var transitionEndEvent = function () {\n var element = document.createElement('span');\n var events = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'oTransitionEnd otransitionend',\n transition: 'transitionend'\n };\n var type = Object.keys(events).find(function (event) {\n return element.style[event] !== undefined;\n });\n return is$1.string(type) ? events[type] : false;\n }(); // Force repaint of element\n\n function repaint(element, delay) {\n setTimeout(function () {\n try {\n // eslint-disable-next-line no-param-reassign\n element.hidden = true; // eslint-disable-next-line no-unused-expressions\n\n element.offsetHeight; // eslint-disable-next-line no-param-reassign\n\n element.hidden = false;\n } catch (e) {// Do nothing\n }\n }, delay);\n }\n\n // ==========================================================================\n // Browser sniffing\n // Unfortunately, due to mixed support, UA sniffing is required\n // ==========================================================================\n var browser = {\n isIE:\n /* @cc_on!@ */\n !!document.documentMode,\n isEdge: window.navigator.userAgent.includes('Edge'),\n isWebkit: 'WebkitAppearance' in document.documentElement.style && !/Edge/.test(navigator.userAgent),\n isIPhone: /(iPhone|iPod)/gi.test(navigator.platform),\n isIos: /(iPad|iPhone|iPod)/gi.test(navigator.platform)\n };\n\n // ==========================================================================\n // https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n // https://www.youtube.com/watch?v=NPM6172J22g\n\n var supportsPassiveListeners = function () {\n // Test via a getter in the options object to see if the passive property is accessed\n var supported = false;\n\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function get() {\n supported = true;\n return null;\n }\n });\n window.addEventListener('test', null, options);\n window.removeEventListener('test', null, options);\n } catch (e) {// Do nothing\n }\n\n return supported;\n }(); // Toggle event listener\n\n\n function toggleListener(element, event, callback) {\n var _this = this;\n\n var toggle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var passive = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var capture = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n\n // Bail if no element, event, or callback\n if (!element || !('addEventListener' in element) || is$1.empty(event) || !is$1.function(callback)) {\n return;\n } // Allow multiple events\n\n\n var events = event.split(' '); // Build options\n // Default to just the capture boolean for browsers with no passive listener support\n\n var options = capture; // If passive events listeners are supported\n\n if (supportsPassiveListeners) {\n options = {\n // Whether the listener can be passive (i.e. default never prevented)\n passive: passive,\n // Whether the listener is a capturing listener or not\n capture: capture\n };\n } // If a single node is passed, bind the event listener\n\n\n events.forEach(function (type) {\n if (_this && _this.eventListeners && toggle) {\n // Cache event listener\n _this.eventListeners.push({\n element: element,\n type: type,\n callback: callback,\n options: options\n });\n }\n\n element[toggle ? 'addEventListener' : 'removeEventListener'](type, callback, options);\n });\n } // Bind event handler\n\n function on(element) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n toggleListener.call(this, element, events, callback, true, passive, capture);\n } // Unbind event handler\n\n function off(element) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n toggleListener.call(this, element, events, callback, false, passive, capture);\n } // Bind once-only event handler\n\n function once(element) {\n var _this2 = this;\n\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n var onceCallback = function onceCallback() {\n off(element, events, onceCallback, passive, capture);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(_this2, args);\n };\n\n toggleListener.call(this, element, events, onceCallback, true, passive, capture);\n } // Trigger event\n\n function triggerEvent(element) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var bubbles = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var detail = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n // Bail if no element\n if (!is$1.element(element) || is$1.empty(type)) {\n return;\n } // Create and dispatch the event\n\n\n var event = new CustomEvent(type, {\n bubbles: bubbles,\n detail: Object.assign({}, detail, {\n plyr: this\n })\n }); // Dispatch the event\n\n element.dispatchEvent(event);\n } // Unbind all cached event listeners\n\n function unbindListeners() {\n if (this && this.eventListeners) {\n this.eventListeners.forEach(function (item) {\n var element = item.element,\n type = item.type,\n callback = item.callback,\n options = item.options;\n element.removeEventListener(type, callback, options);\n });\n this.eventListeners = [];\n }\n } // Run method when / if player is ready\n\n function ready() {\n var _this3 = this;\n\n return new Promise(function (resolve) {\n return _this3.ready ? setTimeout(resolve, 0) : on.call(_this3, _this3.elements.container, 'ready', resolve);\n }).then(function () {});\n }\n\n function cloneDeep(object) {\n return JSON.parse(JSON.stringify(object));\n } // Get a nested value in an object\n\n function getDeep(object, path) {\n return path.split('.').reduce(function (obj, key) {\n return obj && obj[key];\n }, object);\n } // Deep extend destination object with N more objects\n\n function extend() {\n var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n\n if (!sources.length) {\n return target;\n }\n\n var source = sources.shift();\n\n if (!is$1.object(source)) {\n return target;\n }\n\n Object.keys(source).forEach(function (key) {\n if (is$1.object(source[key])) {\n if (!Object.keys(target).includes(key)) {\n Object.assign(target, _defineProperty({}, key, {}));\n }\n\n extend(target[key], source[key]);\n } else {\n Object.assign(target, _defineProperty({}, key, source[key]));\n }\n });\n return extend.apply(void 0, [target].concat(sources));\n }\n\n function wrap(elements, wrapper) {\n // Convert `elements` to an array, if necessary.\n var targets = elements.length ? elements : [elements]; // Loops backwards to prevent having to clone the wrapper on the\n // first element (see `child` below).\n\n Array.from(targets).reverse().forEach(function (element, index) {\n var child = index > 0 ? wrapper.cloneNode(true) : wrapper; // Cache the current parent and sibling.\n\n var parent = element.parentNode;\n var sibling = element.nextSibling; // Wrap the element (is automatically removed from its current\n // parent).\n\n child.appendChild(element); // If the element had a sibling, insert the wrapper before\n // the sibling to maintain the HTML structure; otherwise, just\n // append it to the parent.\n\n if (sibling) {\n parent.insertBefore(child, sibling);\n } else {\n parent.appendChild(child);\n }\n });\n } // Set attributes\n\n function setAttributes(element, attributes) {\n if (!is$1.element(element) || is$1.empty(attributes)) {\n return;\n } // Assume null and undefined attributes should be left out,\n // Setting them would otherwise convert them to \"null\" and \"undefined\"\n\n\n Object.entries(attributes).filter(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n value = _ref2[1];\n\n return !is$1.nullOrUndefined(value);\n }).forEach(function (_ref3) {\n var _ref4 = _slicedToArray(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n\n return element.setAttribute(key, value);\n });\n } // Create a DocumentFragment\n\n function createElement(type, attributes, text) {\n // Create a new \n var element = document.createElement(type); // Set all passed attributes\n\n if (is$1.object(attributes)) {\n setAttributes(element, attributes);\n } // Add text node\n\n\n if (is$1.string(text)) {\n element.innerText = text;\n } // Return built element\n\n\n return element;\n } // Inaert an element after another\n\n function insertAfter(element, target) {\n if (!is$1.element(element) || !is$1.element(target)) {\n return;\n }\n\n target.parentNode.insertBefore(element, target.nextSibling);\n } // Insert a DocumentFragment\n\n function insertElement(type, parent, attributes, text) {\n if (!is$1.element(parent)) {\n return;\n }\n\n parent.appendChild(createElement(type, attributes, text));\n } // Remove element(s)\n\n function removeElement(element) {\n if (is$1.nodeList(element) || is$1.array(element)) {\n Array.from(element).forEach(removeElement);\n return;\n }\n\n if (!is$1.element(element) || !is$1.element(element.parentNode)) {\n return;\n }\n\n element.parentNode.removeChild(element);\n } // Remove all child elements\n\n function emptyElement(element) {\n if (!is$1.element(element)) {\n return;\n }\n\n var length = element.childNodes.length;\n\n while (length > 0) {\n element.removeChild(element.lastChild);\n length -= 1;\n }\n } // Replace element\n\n function replaceElement(newChild, oldChild) {\n if (!is$1.element(oldChild) || !is$1.element(oldChild.parentNode) || !is$1.element(newChild)) {\n return null;\n }\n\n oldChild.parentNode.replaceChild(newChild, oldChild);\n return newChild;\n } // Get an attribute object from a string selector\n\n function getAttributesFromSelector(sel, existingAttributes) {\n // For example:\n // '.test' to { class: 'test' }\n // '#test' to { id: 'test' }\n // '[data-test=\"test\"]' to { 'data-test': 'test' }\n if (!is$1.string(sel) || is$1.empty(sel)) {\n return {};\n }\n\n var attributes = {};\n var existing = extend({}, existingAttributes);\n sel.split(',').forEach(function (s) {\n // Remove whitespace\n var selector = s.trim();\n var className = selector.replace('.', '');\n var stripped = selector.replace(/[[\\]]/g, ''); // Get the parts and value\n\n var parts = stripped.split('=');\n\n var _parts = _slicedToArray(parts, 1),\n key = _parts[0];\n\n var value = parts.length > 1 ? parts[1].replace(/[\"']/g, '') : ''; // Get the first character\n\n var start = selector.charAt(0);\n\n switch (start) {\n case '.':\n // Add to existing classname\n if (is$1.string(existing.class)) {\n attributes.class = \"\".concat(existing.class, \" \").concat(className);\n } else {\n attributes.class = className;\n }\n\n break;\n\n case '#':\n // ID selector\n attributes.id = selector.replace('#', '');\n break;\n\n case '[':\n // Attribute selector\n attributes[key] = value;\n break;\n\n default:\n break;\n }\n });\n return extend(existing, attributes);\n } // Toggle hidden\n\n function toggleHidden(element, hidden) {\n if (!is$1.element(element)) {\n return;\n }\n\n var hide = hidden;\n\n if (!is$1.boolean(hide)) {\n hide = !element.hidden;\n } // eslint-disable-next-line no-param-reassign\n\n\n element.hidden = hide;\n } // Mirror Element.classList.toggle, with IE compatibility for \"force\" argument\n\n function toggleClass(element, className, force) {\n if (is$1.nodeList(element)) {\n return Array.from(element).map(function (e) {\n return toggleClass(e, className, force);\n });\n }\n\n if (is$1.element(element)) {\n var method = 'toggle';\n\n if (typeof force !== 'undefined') {\n method = force ? 'add' : 'remove';\n }\n\n element.classList[method](className);\n return element.classList.contains(className);\n }\n\n return false;\n } // Has class name\n\n function hasClass(element, className) {\n return is$1.element(element) && element.classList.contains(className);\n } // Element matches selector\n\n function matches$1(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var method = match;\n return method.call(element, selector);\n } // Find all elements\n\n function getElements(selector) {\n return this.elements.container.querySelectorAll(selector);\n } // Find a single element\n\n function getElement(selector) {\n return this.elements.container.querySelector(selector);\n } // Trap focus inside container\n\n function trapFocus() {\n var element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var toggle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!is$1.element(element)) {\n return;\n }\n\n var focusable = getElements.call(this, 'button:not(:disabled), input:not(:disabled), [tabindex]');\n var first = focusable[0];\n var last = focusable[focusable.length - 1];\n\n var trap = function trap(event) {\n // Bail if not tab key or not fullscreen\n if (event.key !== 'Tab' || event.keyCode !== 9) {\n return;\n } // Get the current focused element\n\n\n var focused = document.activeElement;\n\n if (focused === last && !event.shiftKey) {\n // Move focus to first element that can be tabbed if Shift isn't used\n first.focus();\n event.preventDefault();\n } else if (focused === first && event.shiftKey) {\n // Move focus to last element that can be tabbed if Shift is used\n last.focus();\n event.preventDefault();\n }\n };\n\n toggleListener.call(this, this.elements.container, 'keydown', trap, toggle, false);\n } // Set focus and tab focus class\n\n function setFocus() {\n var element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var tabFocus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!is$1.element(element)) {\n return;\n } // Set regular focus\n\n\n element.focus({\n preventScroll: true\n }); // If we want to mimic keyboard focus via tab\n\n if (tabFocus) {\n toggleClass(element, this.config.classNames.tabFocus);\n }\n }\n\n var defaultCodecs = {\n 'audio/ogg': 'vorbis',\n 'audio/wav': '1',\n 'video/webm': 'vp8, vorbis',\n 'video/mp4': 'avc1.42E01E, mp4a.40.2',\n 'video/ogg': 'theora'\n }; // Check for feature support\n\n var support = {\n // Basic support\n audio: 'canPlayType' in document.createElement('audio'),\n video: 'canPlayType' in document.createElement('video'),\n // Check for support\n // Basic functionality vs full UI\n check: function check(type, provider, playsinline) {\n var canPlayInline = browser.isIPhone && playsinline && support.playsinline;\n var api = support[type] || provider !== 'html5';\n var ui = api && support.rangeInput && (type !== 'video' || !browser.isIPhone || canPlayInline);\n return {\n api: api,\n ui: ui\n };\n },\n // Picture-in-picture support\n // Safari & Chrome only currently\n pip: function () {\n if (browser.isIPhone) {\n return false;\n } // Safari\n // https://developer.apple.com/documentation/webkitjs/adding_picture_in_picture_to_your_safari_media_controls\n\n\n if (is$1.function(createElement('video').webkitSetPresentationMode)) {\n return true;\n } // Chrome\n // https://developers.google.com/web/updates/2018/10/watch-video-using-picture-in-picture\n\n\n if (document.pictureInPictureEnabled && !createElement('video').disablePictureInPicture) {\n return true;\n }\n\n return false;\n }(),\n // Airplay support\n // Safari only currently\n airplay: is$1.function(window.WebKitPlaybackTargetAvailabilityEvent),\n // Inline playback support\n // https://webkit.org/blog/6784/new-video-policies-for-ios/\n playsinline: 'playsInline' in document.createElement('video'),\n // Check for mime type support against a player instance\n // Credits: http://diveintohtml5.info/everything.html\n // Related: http://www.leanbackplayer.com/test/h5mt.html\n mime: function mime(input) {\n if (is$1.empty(input)) {\n return false;\n }\n\n var _input$split = input.split('/'),\n _input$split2 = _slicedToArray(_input$split, 1),\n mediaType = _input$split2[0];\n\n var type = input; // Verify we're using HTML5 and there's no media type mismatch\n\n if (!this.isHTML5 || mediaType !== this.type) {\n return false;\n } // Add codec if required\n\n\n if (Object.keys(defaultCodecs).includes(type)) {\n type += \"; codecs=\\\"\".concat(defaultCodecs[input], \"\\\"\");\n }\n\n try {\n return Boolean(type && this.media.canPlayType(type).replace(/no/, ''));\n } catch (e) {\n return false;\n }\n },\n // Check for textTracks support\n textTracks: 'textTracks' in document.createElement('video'),\n // Sliders\n rangeInput: function () {\n var range = document.createElement('input');\n range.type = 'range';\n return range.type === 'range';\n }(),\n // Touch\n // NOTE: Remember a device can be mouse + touch enabled so we check on first touch event\n touch: 'ontouchstart' in document.documentElement,\n // Detect transitions support\n transitions: transitionEndEvent !== false,\n // Reduced motion iOS & MacOS setting\n // https://webkit.org/blog/7551/responsive-design-for-motion/\n reducedMotion: 'matchMedia' in window && window.matchMedia('(prefers-reduced-motion)').matches\n };\n\n function validateRatio(input) {\n if (!is$1.array(input) && (!is$1.string(input) || !input.includes(':'))) {\n return false;\n }\n\n var ratio = is$1.array(input) ? input : input.split(':');\n return ratio.map(Number).every(is$1.number);\n }\n function reduceAspectRatio(ratio) {\n if (!is$1.array(ratio) || !ratio.every(is$1.number)) {\n return null;\n }\n\n var _ratio = _slicedToArray(ratio, 2),\n width = _ratio[0],\n height = _ratio[1];\n\n var getDivider = function getDivider(w, h) {\n return h === 0 ? w : getDivider(h, w % h);\n };\n\n var divider = getDivider(width, height);\n return [width / divider, height / divider];\n }\n function getAspectRatio(input) {\n var parse = function parse(ratio) {\n return validateRatio(ratio) ? ratio.split(':').map(Number) : null;\n }; // Try provided ratio\n\n\n var ratio = parse(input); // Get from config\n\n if (ratio === null) {\n ratio = parse(this.config.ratio);\n } // Get from embed\n\n\n if (ratio === null && !is$1.empty(this.embed) && is$1.array(this.embed.ratio)) {\n ratio = this.embed.ratio;\n } // Get from HTML5 video\n\n\n if (ratio === null && this.isHTML5) {\n var _this$media = this.media,\n videoWidth = _this$media.videoWidth,\n videoHeight = _this$media.videoHeight;\n ratio = reduceAspectRatio([videoWidth, videoHeight]);\n }\n\n return ratio;\n } // Set aspect ratio for responsive container\n\n function setAspectRatio(input) {\n if (!this.isVideo) {\n return {};\n }\n\n var ratio = getAspectRatio.call(this, input);\n\n var _ref = is$1.array(ratio) ? ratio : [0, 0],\n _ref2 = _slicedToArray(_ref, 2),\n w = _ref2[0],\n h = _ref2[1];\n\n var padding = 100 / w * h;\n this.elements.wrapper.style.paddingBottom = \"\".concat(padding, \"%\"); // For Vimeo we have an extra
to hide the standard controls and UI\n\n if (this.isVimeo && this.supported.ui) {\n var height = 240;\n var offset = (height - padding) / (height / 50);\n this.media.style.transform = \"translateY(-\".concat(offset, \"%)\");\n } else if (this.isHTML5) {\n this.elements.wrapper.classList.toggle(this.config.classNames.videoFixedRatio, ratio !== null);\n }\n\n return {\n padding: padding,\n ratio: ratio\n };\n }\n\n // ==========================================================================\n var html5 = {\n getSources: function getSources() {\n var _this = this;\n\n if (!this.isHTML5) {\n return [];\n }\n\n var sources = Array.from(this.media.querySelectorAll('source')); // Filter out unsupported sources (if type is specified)\n\n return sources.filter(function (source) {\n var type = source.getAttribute('type');\n\n if (is$1.empty(type)) {\n return true;\n }\n\n return support.mime.call(_this, type);\n });\n },\n // Get quality levels\n getQualityOptions: function getQualityOptions() {\n // Get sizes from elements\n return html5.getSources.call(this).map(function (source) {\n return Number(source.getAttribute('size'));\n }).filter(Boolean);\n },\n extend: function extend() {\n if (!this.isHTML5) {\n return;\n }\n\n var player = this; // Set aspect ratio if fixed\n\n if (!is$1.empty(this.config.ratio)) {\n setAspectRatio.call(player);\n } // Quality\n\n\n Object.defineProperty(player.media, 'quality', {\n get: function get() {\n // Get sources\n var sources = html5.getSources.call(player);\n var source = sources.find(function (s) {\n return s.getAttribute('src') === player.source;\n }); // Return size, if match is found\n\n return source && Number(source.getAttribute('size'));\n },\n set: function set(input) {\n // Get sources\n var sources = html5.getSources.call(player); // Get first match for requested size\n\n var source = sources.find(function (s) {\n return Number(s.getAttribute('size')) === input;\n }); // No matching source found\n\n if (!source) {\n return;\n } // Get current state\n\n\n var _player$media = player.media,\n currentTime = _player$media.currentTime,\n paused = _player$media.paused,\n preload = _player$media.preload,\n readyState = _player$media.readyState; // Set new source\n\n player.media.src = source.getAttribute('src'); // Prevent loading if preload=\"none\" and the current source isn't loaded (#1044)\n\n if (preload !== 'none' || readyState) {\n // Restore time\n player.once('loadedmetadata', function () {\n player.currentTime = currentTime; // Resume playing\n\n if (!paused) {\n player.play();\n }\n }); // Load new source\n\n player.media.load();\n } // Trigger change event\n\n\n triggerEvent.call(player, player.media, 'qualitychange', false, {\n quality: input\n });\n }\n });\n },\n // Cancel current network requests\n // See https://github.com/sampotts/plyr/issues/174\n cancelRequests: function cancelRequests() {\n if (!this.isHTML5) {\n return;\n } // Remove child sources\n\n\n removeElement(html5.getSources.call(this)); // Set blank video src attribute\n // This is to prevent a MEDIA_ERR_SRC_NOT_SUPPORTED error\n // Info: http://stackoverflow.com/questions/32231579/how-to-properly-dispose-of-an-html5-video-and-close-socket-or-connection\n\n this.media.setAttribute('src', this.config.blankVideo); // Load the new empty source\n // This will cancel existing requests\n // See https://github.com/sampotts/plyr/issues/174\n\n this.media.load(); // Debugging\n\n this.debug.log('Cancelled network requests');\n }\n };\n\n // ==========================================================================\n\n function dedupe(array) {\n if (!is$1.array(array)) {\n return array;\n }\n\n return array.filter(function (item, index) {\n return array.indexOf(item) === index;\n });\n } // Get the closest value in an array\n\n function closest(array, value) {\n if (!is$1.array(array) || !array.length) {\n return null;\n }\n\n return array.reduce(function (prev, curr) {\n return Math.abs(curr - value) < Math.abs(prev - value) ? curr : prev;\n });\n }\n\n // ==========================================================================\n\n function generateId(prefix) {\n return \"\".concat(prefix, \"-\").concat(Math.floor(Math.random() * 10000));\n } // Format string\n\n function format(input) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (is$1.empty(input)) {\n return input;\n }\n\n return input.toString().replace(/{(\\d+)}/g, function (match, i) {\n return args[i].toString();\n });\n } // Get percentage\n\n function getPercentage(current, max) {\n if (current === 0 || max === 0 || Number.isNaN(current) || Number.isNaN(max)) {\n return 0;\n }\n\n return (current / max * 100).toFixed(2);\n } // Replace all occurances of a string in a string\n\n function replaceAll() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var find = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var replace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n return input.replace(new RegExp(find.toString().replace(/([.*+?^=!:${}()|[\\]/\\\\])/g, '\\\\$1'), 'g'), replace.toString());\n } // Convert to title case\n\n function toTitleCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return input.toString().replace(/\\w\\S*/g, function (text) {\n return text.charAt(0).toUpperCase() + text.substr(1).toLowerCase();\n });\n } // Convert string to pascalCase\n\n function toPascalCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var string = input.toString(); // Convert kebab case\n\n string = replaceAll(string, '-', ' '); // Convert snake case\n\n string = replaceAll(string, '_', ' '); // Convert to title case\n\n string = toTitleCase(string); // Convert to pascal case\n\n return replaceAll(string, ' ', '');\n } // Convert string to pascalCase\n\n function toCamelCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var string = input.toString(); // Convert to pascal case\n\n string = toPascalCase(string); // Convert first character to lowercase\n\n return string.charAt(0).toLowerCase() + string.slice(1);\n } // Remove HTML from a string\n\n function stripHTML(source) {\n var fragment = document.createDocumentFragment();\n var element = document.createElement('div');\n fragment.appendChild(element);\n element.innerHTML = source;\n return fragment.firstChild.innerText;\n } // Like outerHTML, but also works for DocumentFragment\n\n function getHTML(element) {\n var wrapper = document.createElement('div');\n wrapper.appendChild(element);\n return wrapper.innerHTML;\n }\n\n var resources = {\n pip: 'PIP',\n airplay: 'AirPlay',\n html5: 'HTML5',\n vimeo: 'Vimeo',\n youtube: 'YouTube'\n };\n var i18n = {\n get: function get() {\n var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (is$1.empty(key) || is$1.empty(config)) {\n return '';\n }\n\n var string = getDeep(config.i18n, key);\n\n if (is$1.empty(string)) {\n if (Object.keys(resources).includes(key)) {\n return resources[key];\n }\n\n return '';\n }\n\n var replace = {\n '{seektime}': config.seekTime,\n '{title}': config.title\n };\n Object.entries(replace).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n k = _ref2[0],\n v = _ref2[1];\n\n string = replaceAll(string, k, v);\n });\n return string;\n }\n };\n\n var Storage =\n /*#__PURE__*/\n function () {\n function Storage(player) {\n _classCallCheck(this, Storage);\n\n this.enabled = player.config.storage.enabled;\n this.key = player.config.storage.key;\n } // Check for actual support (see if we can use it)\n\n\n _createClass(Storage, [{\n key: \"get\",\n value: function get(key) {\n if (!Storage.supported || !this.enabled) {\n return null;\n }\n\n var store = window.localStorage.getItem(this.key);\n\n if (is$1.empty(store)) {\n return null;\n }\n\n var json = JSON.parse(store);\n return is$1.string(key) && key.length ? json[key] : json;\n }\n }, {\n key: \"set\",\n value: function set(object) {\n // Bail if we don't have localStorage support or it's disabled\n if (!Storage.supported || !this.enabled) {\n return;\n } // Can only store objectst\n\n\n if (!is$1.object(object)) {\n return;\n } // Get current storage\n\n\n var storage = this.get(); // Default to empty object\n\n if (is$1.empty(storage)) {\n storage = {};\n } // Update the working copy of the values\n\n\n extend(storage, object); // Update storage\n\n window.localStorage.setItem(this.key, JSON.stringify(storage));\n }\n }], [{\n key: \"supported\",\n get: function get() {\n try {\n if (!('localStorage' in window)) {\n return false;\n }\n\n var test = '___test'; // Try to use it (it might be disabled, e.g. user is in private mode)\n // see: https://github.com/sampotts/plyr/issues/131\n\n window.localStorage.setItem(test, test);\n window.localStorage.removeItem(test);\n return true;\n } catch (e) {\n return false;\n }\n }\n }]);\n\n return Storage;\n }();\n\n // ==========================================================================\n // Fetch wrapper\n // Using XHR to avoid issues with older browsers\n // ==========================================================================\n function fetch(url) {\n var responseType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'text';\n return new Promise(function (resolve, reject) {\n try {\n var request = new XMLHttpRequest(); // Check for CORS support\n\n if (!('withCredentials' in request)) {\n return;\n }\n\n request.addEventListener('load', function () {\n if (responseType === 'text') {\n try {\n resolve(JSON.parse(request.responseText));\n } catch (e) {\n resolve(request.responseText);\n }\n } else {\n resolve(request.response);\n }\n });\n request.addEventListener('error', function () {\n throw new Error(request.status);\n });\n request.open('GET', url, true); // Set the required response type\n\n request.responseType = responseType;\n request.send();\n } catch (e) {\n reject(e);\n }\n });\n }\n\n // ==========================================================================\n\n function loadSprite(url, id) {\n if (!is$1.string(url)) {\n return;\n }\n\n var prefix = 'cache';\n var hasId = is$1.string(id);\n var isCached = false;\n\n var exists = function exists() {\n return document.getElementById(id) !== null;\n };\n\n var update = function update(container, data) {\n // eslint-disable-next-line no-param-reassign\n container.innerHTML = data; // Check again incase of race condition\n\n if (hasId && exists()) {\n return;\n } // Inject the SVG to the body\n\n\n document.body.insertAdjacentElement('afterbegin', container);\n }; // Only load once if ID set\n\n\n if (!hasId || !exists()) {\n var useStorage = Storage.supported; // Create container\n\n var container = document.createElement('div');\n container.setAttribute('hidden', '');\n\n if (hasId) {\n container.setAttribute('id', id);\n } // Check in cache\n\n\n if (useStorage) {\n var cached = window.localStorage.getItem(\"\".concat(prefix, \"-\").concat(id));\n isCached = cached !== null;\n\n if (isCached) {\n var data = JSON.parse(cached);\n update(container, data.content);\n }\n } // Get the sprite\n\n\n fetch(url).then(function (result) {\n if (is$1.empty(result)) {\n return;\n }\n\n if (useStorage) {\n window.localStorage.setItem(\"\".concat(prefix, \"-\").concat(id), JSON.stringify({\n content: result\n }));\n }\n\n update(container, result);\n }).catch(function () {});\n }\n }\n\n // ==========================================================================\n\n var getHours = function getHours(value) {\n return Math.trunc(value / 60 / 60 % 60, 10);\n };\n var getMinutes = function getMinutes(value) {\n return Math.trunc(value / 60 % 60, 10);\n };\n var getSeconds = function getSeconds(value) {\n return Math.trunc(value % 60, 10);\n }; // Format time to UI friendly string\n\n function formatTime() {\n var time = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var displayHours = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var inverted = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n // Bail if the value isn't a number\n if (!is$1.number(time)) {\n return formatTime(null, displayHours, inverted);\n } // Format time component to add leading zero\n\n\n var format = function format(value) {\n return \"0\".concat(value).slice(-2);\n }; // Breakdown to hours, mins, secs\n\n\n var hours = getHours(time);\n var mins = getMinutes(time);\n var secs = getSeconds(time); // Do we need to display hours?\n\n if (displayHours || hours > 0) {\n hours = \"\".concat(hours, \":\");\n } else {\n hours = '';\n } // Render\n\n\n return \"\".concat(inverted && time > 0 ? '-' : '').concat(hours).concat(format(mins), \":\").concat(format(secs));\n }\n\n var controls = {\n // Get icon URL\n getIconUrl: function getIconUrl() {\n var url = new URL(this.config.iconUrl, window.location);\n var cors = url.host !== window.location.host || browser.isIE && !window.svg4everybody;\n return {\n url: this.config.iconUrl,\n cors: cors\n };\n },\n // Find the UI controls\n findElements: function findElements() {\n try {\n this.elements.controls = getElement.call(this, this.config.selectors.controls.wrapper); // Buttons\n\n this.elements.buttons = {\n play: getElements.call(this, this.config.selectors.buttons.play),\n pause: getElement.call(this, this.config.selectors.buttons.pause),\n restart: getElement.call(this, this.config.selectors.buttons.restart),\n rewind: getElement.call(this, this.config.selectors.buttons.rewind),\n fastForward: getElement.call(this, this.config.selectors.buttons.fastForward),\n mute: getElement.call(this, this.config.selectors.buttons.mute),\n pip: getElement.call(this, this.config.selectors.buttons.pip),\n airplay: getElement.call(this, this.config.selectors.buttons.airplay),\n settings: getElement.call(this, this.config.selectors.buttons.settings),\n captions: getElement.call(this, this.config.selectors.buttons.captions),\n fullscreen: getElement.call(this, this.config.selectors.buttons.fullscreen)\n }; // Progress\n\n this.elements.progress = getElement.call(this, this.config.selectors.progress); // Inputs\n\n this.elements.inputs = {\n seek: getElement.call(this, this.config.selectors.inputs.seek),\n volume: getElement.call(this, this.config.selectors.inputs.volume)\n }; // Display\n\n this.elements.display = {\n buffer: getElement.call(this, this.config.selectors.display.buffer),\n currentTime: getElement.call(this, this.config.selectors.display.currentTime),\n duration: getElement.call(this, this.config.selectors.display.duration)\n }; // Seek tooltip\n\n if (is$1.element(this.elements.progress)) {\n this.elements.display.seekTooltip = this.elements.progress.querySelector(\".\".concat(this.config.classNames.tooltip));\n }\n\n return true;\n } catch (error) {\n // Log it\n this.debug.warn('It looks like there is a problem with your custom controls HTML', error); // Restore native video controls\n\n this.toggleNativeControls(true);\n return false;\n }\n },\n // Create icon\n createIcon: function createIcon(type, attributes) {\n var namespace = 'http://www.w3.org/2000/svg';\n var iconUrl = controls.getIconUrl.call(this);\n var iconPath = \"\".concat(!iconUrl.cors ? iconUrl.url : '', \"#\").concat(this.config.iconPrefix); // Create \n\n var icon = document.createElementNS(namespace, 'svg');\n setAttributes(icon, extend(attributes, {\n role: 'presentation',\n focusable: 'false'\n })); // Create the to reference sprite\n\n var use = document.createElementNS(namespace, 'use');\n var path = \"\".concat(iconPath, \"-\").concat(type); // Set `href` attributes\n // https://github.com/sampotts/plyr/issues/460\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlink:href\n\n if ('href' in use) {\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'href', path);\n } // Always set the older attribute even though it's \"deprecated\" (it'll be around for ages)\n\n\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', path); // Add to \n\n icon.appendChild(use);\n return icon;\n },\n // Create hidden text label\n createLabel: function createLabel(key) {\n var attr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var text = i18n.get(key, this.config);\n var attributes = Object.assign({}, attr, {\n class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' ')\n });\n return createElement('span', attributes, text);\n },\n // Create a badge\n createBadge: function createBadge(text) {\n if (is$1.empty(text)) {\n return null;\n }\n\n var badge = createElement('span', {\n class: this.config.classNames.menu.value\n });\n badge.appendChild(createElement('span', {\n class: this.config.classNames.menu.badge\n }, text));\n return badge;\n },\n // Create a
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(player.config.attributes.embed.id);\n }\n\n var id = parseId(source); // Build an iframe\n\n var iframe = createElement('iframe');\n var src = format(player.config.urls.vimeo.iframe, id, params);\n iframe.setAttribute('src', src);\n iframe.setAttribute('allowfullscreen', '');\n iframe.setAttribute('allowtransparency', '');\n iframe.setAttribute('allow', 'autoplay'); // Get poster, if already set\n\n var poster = player.poster; // Inject the package\n\n var wrapper = createElement('div', {\n poster: poster,\n class: player.config.classNames.embedContainer\n });\n wrapper.appendChild(iframe);\n player.media = replaceElement(wrapper, player.media); // Get poster image\n\n fetch(format(player.config.urls.vimeo.api, id), 'json').then(function (response) {\n if (is$1.empty(response)) {\n return;\n } // Get the URL for thumbnail\n\n\n var url = new URL(response[0].thumbnail_large); // Get original image\n\n url.pathname = \"\".concat(url.pathname.split('_')[0], \".jpg\"); // Set and show poster\n\n ui.setPoster.call(player, url.href).catch(function () {});\n }); // Setup instance\n // https://github.com/vimeo/player.js\n\n player.embed = new window.Vimeo.Player(iframe, {\n autopause: player.config.autopause,\n muted: player.muted\n });\n player.media.paused = true;\n player.media.currentTime = 0; // Disable native text track rendering\n\n if (player.supported.ui) {\n player.embed.disableTextTrack();\n } // Create a faux HTML5 API using the Vimeo API\n\n\n player.media.play = function () {\n assurePlaybackState.call(player, true);\n return player.embed.play();\n };\n\n player.media.pause = function () {\n assurePlaybackState.call(player, false);\n return player.embed.pause();\n };\n\n player.media.stop = function () {\n player.pause();\n player.currentTime = 0;\n }; // Seeking\n\n\n var currentTime = player.media.currentTime;\n Object.defineProperty(player.media, 'currentTime', {\n get: function get() {\n return currentTime;\n },\n set: function set(time) {\n // Vimeo will automatically play on seek if the video hasn't been played before\n // Get current paused state and volume etc\n var embed = player.embed,\n media = player.media,\n paused = player.paused,\n volume = player.volume;\n var restorePause = paused && !embed.hasPlayed; // Set seeking state and trigger event\n\n media.seeking = true;\n triggerEvent.call(player, media, 'seeking'); // If paused, mute until seek is complete\n\n Promise.resolve(restorePause && embed.setVolume(0)) // Seek\n .then(function () {\n return embed.setCurrentTime(time);\n }) // Restore paused\n .then(function () {\n return restorePause && embed.pause();\n }) // Restore volume\n .then(function () {\n return restorePause && embed.setVolume(volume);\n }).catch(function () {// Do nothing\n });\n }\n }); // Playback speed\n\n var speed = player.config.speed.selected;\n Object.defineProperty(player.media, 'playbackRate', {\n get: function get() {\n return speed;\n },\n set: function set(input) {\n player.embed.setPlaybackRate(input).then(function () {\n speed = input;\n triggerEvent.call(player, player.media, 'ratechange');\n }).catch(function (error) {\n // Hide menu item (and menu if empty)\n if (error.name === 'Error') {\n controls.setSpeedMenu.call(player, []);\n }\n });\n }\n }); // Volume\n\n var volume = player.config.volume;\n Object.defineProperty(player.media, 'volume', {\n get: function get() {\n return volume;\n },\n set: function set(input) {\n player.embed.setVolume(input).then(function () {\n volume = input;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Muted\n\n var muted = player.config.muted;\n Object.defineProperty(player.media, 'muted', {\n get: function get() {\n return muted;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : false;\n player.embed.setVolume(toggle ? 0 : player.config.volume).then(function () {\n muted = toggle;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Loop\n\n var loop = player.config.loop;\n Object.defineProperty(player.media, 'loop', {\n get: function get() {\n return loop;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : player.config.loop.active;\n player.embed.setLoop(toggle).then(function () {\n loop = toggle;\n });\n }\n }); // Source\n\n var currentSrc;\n player.embed.getVideoUrl().then(function (value) {\n currentSrc = value;\n controls.setDownloadUrl.call(player);\n }).catch(function (error) {\n _this2.debug.warn(error);\n });\n Object.defineProperty(player.media, 'currentSrc', {\n get: function get() {\n return currentSrc;\n }\n }); // Ended\n\n Object.defineProperty(player.media, 'ended', {\n get: function get() {\n return player.currentTime === player.duration;\n }\n }); // Set aspect ratio based on video size\n\n Promise.all([player.embed.getVideoWidth(), player.embed.getVideoHeight()]).then(function (dimensions) {\n var _dimensions = _slicedToArray(dimensions, 2),\n width = _dimensions[0],\n height = _dimensions[1];\n\n player.embed.ratio = [width, height];\n setAspectRatio.call(_this2);\n }); // Set autopause\n\n player.embed.setAutopause(player.config.autopause).then(function (state) {\n player.config.autopause = state;\n }); // Get title\n\n player.embed.getVideoTitle().then(function (title) {\n player.config.title = title;\n ui.setTitle.call(_this2);\n }); // Get current time\n\n player.embed.getCurrentTime().then(function (value) {\n currentTime = value;\n triggerEvent.call(player, player.media, 'timeupdate');\n }); // Get duration\n\n player.embed.getDuration().then(function (value) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }); // Get captions\n\n player.embed.getTextTracks().then(function (tracks) {\n player.media.textTracks = tracks;\n captions.setup.call(player);\n });\n player.embed.on('cuechange', function (_ref) {\n var _ref$cues = _ref.cues,\n cues = _ref$cues === void 0 ? [] : _ref$cues;\n var strippedCues = cues.map(function (cue) {\n return stripHTML(cue.text);\n });\n captions.updateCues.call(player, strippedCues);\n });\n player.embed.on('loaded', function () {\n // Assure state and events are updated on autoplay\n player.embed.getPaused().then(function (paused) {\n assurePlaybackState.call(player, !paused);\n\n if (!paused) {\n triggerEvent.call(player, player.media, 'playing');\n }\n });\n\n if (is$1.element(player.embed.element) && player.supported.ui) {\n var frame = player.embed.element; // Fix keyboard focus issues\n // https://github.com/sampotts/plyr/issues/317\n\n frame.setAttribute('tabindex', -1);\n }\n });\n player.embed.on('play', function () {\n assurePlaybackState.call(player, true);\n triggerEvent.call(player, player.media, 'playing');\n });\n player.embed.on('pause', function () {\n assurePlaybackState.call(player, false);\n });\n player.embed.on('timeupdate', function (data) {\n player.media.seeking = false;\n currentTime = data.seconds;\n triggerEvent.call(player, player.media, 'timeupdate');\n });\n player.embed.on('progress', function (data) {\n player.media.buffered = data.percent;\n triggerEvent.call(player, player.media, 'progress'); // Check all loaded\n\n if (parseInt(data.percent, 10) === 1) {\n triggerEvent.call(player, player.media, 'canplaythrough');\n } // Get duration as if we do it before load, it gives an incorrect value\n // https://github.com/sampotts/plyr/issues/891\n\n\n player.embed.getDuration().then(function (value) {\n if (value !== player.media.duration) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }\n });\n });\n player.embed.on('seeked', function () {\n player.media.seeking = false;\n triggerEvent.call(player, player.media, 'seeked');\n });\n player.embed.on('ended', function () {\n player.media.paused = true;\n triggerEvent.call(player, player.media, 'ended');\n });\n player.embed.on('error', function (detail) {\n player.media.error = detail;\n triggerEvent.call(player, player.media, 'error');\n }); // Rebuild UI\n\n setTimeout(function () {\n return ui.build.call(player);\n }, 0);\n }\n };\n\n // ==========================================================================\n\n function parseId$1(url) {\n if (is$1.empty(url)) {\n return null;\n }\n\n var regex = /^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|&v=)([^#&?]*).*/;\n return url.match(regex) ? RegExp.$2 : url;\n } // Set playback state and trigger change (only on actual change)\n\n\n function assurePlaybackState$1(play) {\n if (play && !this.embed.hasPlayed) {\n this.embed.hasPlayed = true;\n }\n\n if (this.media.paused === play) {\n this.media.paused = !play;\n triggerEvent.call(this, this.media, play ? 'play' : 'pause');\n }\n }\n\n function getHost(config) {\n if (config.noCookie) {\n return 'https://www.youtube-nocookie.com';\n }\n\n if (window.location.protocol === 'http:') {\n return 'http://www.youtube.com';\n } // Use YouTube's default\n\n\n return undefined;\n }\n\n var youtube = {\n setup: function setup() {\n var _this = this;\n\n // Add embed class for responsive\n toggleClass(this.elements.wrapper, this.config.classNames.embed, true); // Setup API\n\n if (is$1.object(window.YT) && is$1.function(window.YT.Player)) {\n youtube.ready.call(this);\n } else {\n // Reference current global callback\n var callback = window.onYouTubeIframeAPIReady; // Set callback to process queue\n\n window.onYouTubeIframeAPIReady = function () {\n // Call global callback if set\n if (is$1.function(callback)) {\n callback();\n }\n\n youtube.ready.call(_this);\n }; // Load the SDK\n\n\n loadScript(this.config.urls.youtube.sdk).catch(function (error) {\n _this.debug.warn('YouTube API failed to load', error);\n });\n }\n },\n // Get the media title\n getTitle: function getTitle(videoId) {\n var _this2 = this;\n\n var url = format(this.config.urls.youtube.api, videoId);\n fetch(url).then(function (data) {\n if (is$1.object(data)) {\n var title = data.title,\n height = data.height,\n width = data.width; // Set title\n\n _this2.config.title = title;\n ui.setTitle.call(_this2); // Set aspect ratio\n\n _this2.embed.ratio = [width, height];\n }\n\n setAspectRatio.call(_this2);\n }).catch(function () {\n // Set aspect ratio\n setAspectRatio.call(_this2);\n });\n },\n // API ready\n ready: function ready() {\n var player = this; // Ignore already setup (race condition)\n\n var currentId = player.media && player.media.getAttribute('id');\n\n if (!is$1.empty(currentId) && currentId.startsWith('youtube-')) {\n return;\n } // Get the source URL or ID\n\n\n var source = player.media.getAttribute('src'); // Get from
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(this.config.attributes.embed.id);\n } // Replace the