{"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","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/events.js","src/js/utils/elements.js","src/js/utils/animation.js","src/js/utils/browser.js","src/js/support.js","src/js/utils/style.js","src/js/html5.js","src/js/utils/arrays.js","src/js/utils/objects.js","src/js/utils/strings.js","src/js/utils/i18n.js","src/js/storage.js","src/js/utils/fetch.js","src/js/utils/loadSprite.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/loadImage.js","src/js/ui.js","src/js/listeners.js","node_modules/loadjs/dist/loadjs.umd.js","src/js/utils/loadScript.js","src/js/plugins/vimeo.js","src/js/plugins/youtube.js","src/js/media.js","src/js/plugins/ads.js","src/js/plugins/previewThumbnails.js","src/js/source.js","src/js/plyr.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","RangeTouch","options","document","querySelector","rangeTouch","config","assign","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","toggle","_this","method","forEach","type","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","supportsPassiveListeners","supported","addEventListener","removeEventListener","toggleListener","callback","passive","capture","events","split","eventListeners","on","off","once","_this2","onceCallback","_len","args","_key","apply","triggerEvent","bubbles","detail","CustomEvent","plyr","wrap","elements","wrapper","reverse","index","child","cloneNode","parent","parentNode","sibling","nextSibling","appendChild","insertBefore","setAttributes","attributes","entries","_ref","_ref3","_ref4","setAttribute","createElement","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","hidden","hide","removeAttribute","toggleClass","force","classList","contains","hasClass","matches","getElements","container","getElement","setFocus","tabFocus","focus","preventScroll","classNames","transitionEndEvent","WebkitTransition","MozTransition","OTransition","transition","find","repaint","setTimeout","offsetHeight","range","browser","isIE","documentMode","isEdge","userAgent","isWebkit","test","isIPhone","platform","isIos","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","getAspectRatio","parse","ratio","embed","setAspectRatio","isVideo","_ref2","padding","paddingBottom","isVimeo","offset","transform","videoFixedRatio","html5","getSources","source","getQualityOptions","extend","player","_player$media","currentTime","paused","preload","readyState","src","play","load","quality","cancelRequests","blankVideo","debug","log","dedupe","item","indexOf","getDeep","path","reduce","sources","shift","format","replaceAll","RegExp","toTitleCase","toUpperCase","substr","toLowerCase","toCamelCase","toPascalCase","slice","getHTML","innerHTML","resources","vimeo","youtube","i18n","{seektime}","seekTime","{title}","title","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","control","button","createRange","autocomplete","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","updateRangeFill","setup","createProgress","aria-hidden","suffixKey","played","suffix","createTime","bindMenuItemShortcuts","menuItem","which","stopPropagation","isRadioButton","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","list","_ref$badge","_ref$checked","checked","aria-checked","flex","children","bind","currentTrack","speed","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","_this3","current","getElementsByTagName","nodeValue","setProgress","buffered","setProperty","updateSeekTooltip","_this4","tooltips","visible","pageX","timeUpdate","invert","invertTime","seeking","durationUpdate","pow","hasDuration","displayDuration","toggleMenuButton","setting","updateSetting","pane","panels","default","getLabel","setQualityMenu","_this5","checkMenu","getBadge","sort","a","b","sorting","setCaptionsMenu","_this6","tracks","getTracks","toggled","language","unshift","setSpeedMenu","_this7","values","some","popup","firstItem","toggleMenu","show","isMenuItem","getMenuSize","tab","clone","position","opacity","scrollWidth","height","scrollHeight","_this8","size","restore","propertyName","setDownloadLink","download","create","_this9","aria-haspopup","aria-controls","aria-expanded","inner","home","backButton","href","urls","isEmbed","inject","_this10","floor","random","seektime","addProperty","controlPressed","_this$config","labels","parseUrl","parser","buildUrlParams","params","URLSearchParams","isYouTube","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","google","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","recentTouchSeek","lastSeekTime","Date","now","Listeners","lastKey","focusTimer","lastKeyDown","handleKey","setTabFocus","firstTouch","code","repeat","altKey","ctrlKey","metaKey","togglePlay","increaseVolume","decreaseVolume","forward","toggleCaptions","usingNative","timeStamp","wasKeyDown","delay","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","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","fn","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","getPaused","seconds","parseInt","getHost","YT","onYouTubeReadyCallbacks","onYouTubeIframeAPIReady","getTitle","videoId","getVideoData","items","snippet","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","ima","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","ALL_ADS_COMPLETED","loadAds","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","STARTED","MIDPOINT","COMPLETE","IMPRESSION","CLICK","LOG","adError","getMessage","cancel","addCuePoints","contentComplete","seekedTime","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","_this11","destroy","_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","w","h","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","updateStorage","prev","curr","closest","_ratio","divider","getDivider","reduceAspectRatio","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 // 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 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 = 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 var key = parts[0];\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.object(existing) && is$1.string(existing.class)) {\n existing.class += \" \".concat(className);\n }\n\n attributes.class = className;\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 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 }\n\n if (hide) {\n element.setAttribute('hidden', '');\n } else {\n element.removeAttribute('hidden');\n }\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 matches = match;\n return matches.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 // ==========================================================================\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) {\n setTimeout(function () {\n try {\n toggleHidden(element, true);\n element.offsetHeight; // eslint-disable-line\n\n toggleHidden(element, false);\n } catch (e) {// Do nothing\n }\n }, 0);\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 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 if (!validateRatio(ratio)) {\n return null;\n }\n\n return ratio.split(':').map(Number);\n }; // 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.string(this.embed.ratio)) {\n ratio = parse(this.embed.ratio);\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 set\n\n setAspectRatio.call(player); // Quality\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 (source) {\n return source.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 (source) {\n return Number(source.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 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 // ==========================================================================\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 key = _ref2[0],\n value = _ref2[1];\n\n string = replaceAll(string, key, value);\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 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.setDownloadLink.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 = \"\".concat(width, \":\").concat(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); // Set aspect ratio\n\n setAspectRatio.call(this); // Setup API\n\n if (is$1.object(window.YT) && is$1.function(window.YT.Player)) {\n youtube.ready.call(this);\n } else {\n // Load the API\n loadScript(this.config.urls.youtube.sdk).catch(function (error) {\n _this.debug.warn('YouTube API failed to load', error);\n }); // Setup callback for the API\n // YouTube has it's own system of course...\n\n window.onYouTubeReadyCallbacks = window.onYouTubeReadyCallbacks || []; // Add to queue\n\n window.onYouTubeReadyCallbacks.push(function () {\n youtube.ready.call(_this);\n }); // Set callback to process queue\n\n window.onYouTubeIframeAPIReady = function () {\n window.onYouTubeReadyCallbacks.forEach(function (callback) {\n callback();\n });\n };\n }\n },\n // Get the media title\n getTitle: function getTitle(videoId) {\n var _this2 = this;\n\n // Try via undocumented API method first\n // This method disappears now and then though...\n // https://github.com/sampotts/plyr/issues/709\n if (is$1.function(this.embed.getVideoData)) {\n var _this$embed$getVideoD = this.embed.getVideoData(),\n title = _this$embed$getVideoD.title;\n\n if (is$1.empty(title)) {\n this.config.title = title;\n ui.setTitle.call(this);\n return;\n }\n } // Or via Google API\n\n\n var key = this.config.keys.google;\n\n if (is$1.string(key) && !is$1.empty(key)) {\n var url = format(this.config.urls.youtube.api, videoId, key);\n fetch(url).then(function (result) {\n if (is$1.object(result)) {\n _this2.config.title = result.items[0].snippet.title;\n ui.setTitle.call(_this2);\n }\n }).catch(function () {});\n }\n },\n // API ready\n ready: function ready() {\n var player = this; // Ignore already setup (race condition)\n\n var currentId = 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