{"version":3,"sources":["plyr.js","node_modules/rangetouch/dist/rangetouch.mjs","src/js/utils/animation.js","src/js/utils/is.js","src/js/utils/browser.js","src/js/utils/objects.js","src/js/utils/elements.js","src/js/support.js","src/js/utils/events.js","src/js/utils/promise.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","globalThis","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","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","apply","_objectSpread2","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_slicedToArray","arr","Array","isArray","_arrayWithHoles","Symbol","iterator","_arr","_n","_d","_e","undefined","_s","_i","next","done","err","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_nonIterableSpread","o","minLen","n","toString","slice","constructor","name","test","len","arr2","e","t","r","defaults","addCSS","thumbWidth","watch","matches","document","querySelectorAll","includes","getConstructor","instanceOf","isNullOrUndefined","isObject","isString","String","isNodeList","NodeList","is","Element","Event","round","concat","match","Math","max","getDecimalPlaces","parseFloat","toFixed","element","events","type","RangeTouch","querySelector","rangeTouch","config","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","set","changedTouches","getAttribute","s","u","c","getBoundingClientRect","a","width","clientX","left","disabled","preventDefault","get","bubbles","dispatchEvent","trigger","MutationObserver","addedNodes","observe","body","childList","subtree","map","documentElement","input","Boolean","isFunction","Function","isEmpty","is$1","Number","isNaN","KeyboardEvent","TextTrack","kind","Promise","then","window","URL","string","startsWith","hostname","transitionEndEvent","createElement","WebkitTransition","MozTransition","OTransition","transition","find","event","repaint","delay","setTimeout","hidden","offsetHeight","browser","isIE","documentMode","isEdge","userAgent","isWebkit","isIPhone","platform","isIos","getDeep","path","split","reduce","extend","_len","sources","_key","shift","assign","wrap","elements","wrapper","targets","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","selector","trim","className","replace","parts","charAt","class","id","toggleHidden","hide","toggleClass","force","method","classList","contains","hasClass","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","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","touch","transitions","reducedMotion","matchMedia","supportsPassiveListeners","supported","options","addEventListener","removeEventListener","toggleListener","callback","_this","toggle","passive","capture","eventListeners","on","off","once","_this2","onceCallback","args","triggerEvent","detail","CustomEvent","plyr","unbindListeners","item","ready","_this3","resolve","silencePromise","validateRatio","every","reduceAspectRatio","ratio","_ratio","height","divider","getDivider","w","h","getAspectRatio","parse","embed","_this$media","videoWidth","videoHeight","setAspectRatio","isVideo","_ref2","padding","paddingBottom","isVimeo","vimeo","premium","offsetWidth","parseInt","getComputedStyle","offset","fullscreen","active","transform","videoFixedRatio","html5","getSources","getQualityOptions","quality","forced","setup","player","speed","onChange","_player$media","currentTime","paused","preload","readyState","playbackRate","src","play","load","cancelRequests","blankVideo","debug","log","dedupe","array","format","replaceAll","RegExp","toTitleCase","toUpperCase","substr","toLowerCase","toPascalCase","getHTML","innerHTML","resources","youtube","i18n","{seektime}","seekTime","{title}","title","k","v","Storage","storage","store","localStorage","getItem","json","JSON","setItem","stringify","removeItem","fetch","url","responseType","reject","request","XMLHttpRequest","responseText","response","Error","status","open","send","loadSprite","prefix","hasId","exists","getElementById","update","data","insertAdjacentElement","useStorage","cached","content","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","progress","inputs","seek","volume","display","buffer","duration","seekTooltip","tooltip","error","warn","toggleNativeControls","createIcon","namespace","iconPath","iconPrefix","icon","createElementNS","aria-hidden","focusable","use","setAttributeNS","createLabel","attr","join","createBadge","badge","menu","createButton","buttonType","toCamelCase","label","labelPressed","iconPressed","some","control","button","createRange","min","step","autocomplete","role","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","updateRangeFill","createProgress","suffixKey","played","suffix","createTime","attrs","bindMenuItemShortcuts","menuItem","which","stopPropagation","isRadioButton","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","list","_ref$badge","_ref$checked","checked","aria-checked","flex","children","node","bind","currentTrack","forceHours","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","_this4","current","val","getElementsByTagName","nodeValue","setProgress","buffered","percent","setProperty","updateSeekTooltip","_this5","tooltips","visible","show","clientRect","pageX","timeUpdate","invert","invertTime","seeking","durationUpdate","pow","hasDuration","displayDuration","toggleMenuButton","setting","updateSetting","pane","panels","default","getLabel","setQualityMenu","_this6","checkMenu","getBadge","sort","b","sorting","setCaptionsMenu","_this7","tracks","getTracks","track","toggled","language","unshift","setSpeedMenu","_this8","minimumSpeed","maximumSpeed","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","safe","parser","buildUrlParams","params","URLSearchParams","isYouTube","insertAfter","protocol","blob","createObjectURL","languages","userLanguage","trackEvents","_this$captions","meta","currentTrackNode","languageExists","mode","updateCues","setLanguage","activeClass","findTrack","enableTextTrack","has","sortIsDefault","sorted","getCurrentTrack","cues","activeCues","cue","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","customControls","referrerPolicy","rel","showinfo","iv_load_policy","modestbranding","noCookie","providers","types","noop","Console","console","Fullscreen","property","scrollPosition","x","y","forceFallback","closest","el","parentElement","nodeType","proxy","trapFocus","scrollX","scrollY","scrollTo","overflow","viewport","head","hasProperty","cleanupViewport","part","keyCode","activeElement","first","last","shiftKey","native","webkitEnterFullscreen","toggleFallback","requestFullscreen","navigationUI","webkitExitFullscreen","action","cancelFullScreen","exit","enter","fullscreenElement","shadowRoot","getRootNode","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","pre","loadImage","minWidth","image","Image","handler","onload","onerror","naturalWidth","addStyleHook","build","checkPlaying","setTitle","setPoster","togglePoster","enable","backgroundImage","backgroundSize","toggleControls","checkLoading","clearTimeout","timers","controlsElement","recentTouchSeek","lastSeekTime","Date","now","migrateStyles","getPropertyValue","removeProperty","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","isAudio","ended","proxyEvents","_event$detail","defaultHandler","customHandlerKey","customHandler","returned","hasCustomHandler","inputEvent","currentTarget","attribute","hasAttribute","seekTo","loaded","startMove","endMove","startScrubbing","endScrubbing","webkitDirectionInvertedFromDevice","_map2","deltaX","deltaY","direction","sign","abs","loadjs_umd","fn","createCommonjsModule","devnull","bundleIdCache","bundleResultCache","bundleCallbackQueue","subscribe","bundleIds","callbackFn","bundleId","depsNotFound","numWaiting","pathsNotFound","publish","q","splice","executeCallbacks","success","loadFile","numTries","isLegacyIECss","doc","async","maxTries","numRetries","beforeCallbackFn","before","pathname","pathStripped","relList","as","onbeforeload","ev","sheet","cssText","defaultPrevented","loadFiles","paths","loadjs","arg1","arg2","loadFn","returnPromise","deps","isDefined","loadScript","assurePlaybackState","hasPlayed","Vimeo","frameParams","sidedock","gesture","$2","data-poster","thumbnail_url","Player","disableTextTrack","stop","restorePause","setVolume","setCurrentTime","setPlaybackRate","currentSrc","setLoop","getVideoUrl","getVideoWidth","getVideoHeight","dimensions","_dimensions","setAutopause","state","getVideoTitle","getCurrentTime","getDuration","getTextTracks","_ref$cues","strippedCues","fragment","createDocumentFragment","stripHTML","getPaused","seconds","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","getPlaybackRate","onReady","playVideo","pauseVideo","stopVideo","speeds","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","AdsLoader","AdsManagerLoadedEvent","Type","ADS_MANAGER_LOADED","onAdsManagerLoaded","AdErrorEvent","AD_ERROR","onAdError","requestAds","AdsRequest","adTagUrl","linearAdSlotWidth","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","contentComplete","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","LOG","adError","getMessage","cancel","addCuePoints","seekedTime","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","_this12","handlers","_this13","AV_PUBLISHERID","AV_CHANNELID","AV_URL","cb","AV_WIDTH","AV_HEIGHT","AV_CDIM2","fitRatio","outer","PreviewThumbnails","thumbnails","lastMouseMoveTime","mouseDown","loadedImages","thumb","scrubbing","getThumbnails","render","determineContainerAutoSizing","sortAndResolve","promises","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","clientWidth","sizeSpecifiedInCSS","thumbAspectRatio","thumbHeight","setThumbContainerPos","seekbarRect","plyrRect","minVal","maxVal","right","previewPos","_fitRatio","multiplier","top","currentScrubbingImageElement","currentThumbnailImageElement","insertElements","change","_sources$","_sources$$provider","crossorigin","failed","jQuery","WeakMap","original","getProviderByUrl","search","truthy","searchParams","tabindex","webkitShowPlaybackTargetPicker","isHidden","hiding","eventName","soft","unload","inputIsValid","fauxDuration","realDuration","Infinity","mozHasAudio","webkitAudioDecodedByteCount","audioTracks","clamp","updateStorage","prev","curr","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 = typeof globalThis !== 'undefined' ? globalThis : 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 ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n }\n\n function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n }\n\n function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n }\n\n function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n }\n\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n }\n\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n }\n\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n }\n\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n\n function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n }\n\n function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\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 _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n }\n\n function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n\n function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n function _classCallCheck$1(e, t) {\n if (!(e instanceof t)) throw new TypeError(\"Cannot call a class as a function\");\n }\n\n function _defineProperties$1(e, t) {\n for (var n = 0; n < t.length; n++) {\n var r = t[n];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(e, r.key, r);\n }\n }\n\n function _createClass$1(e, t, n) {\n return t && _defineProperties$1(e.prototype, t), n && _defineProperties$1(e, n), e;\n }\n\n function _defineProperty$1(e, t, n) {\n return t in e ? Object.defineProperty(e, t, {\n value: n,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[t] = n, e;\n }\n\n function ownKeys$1(e, t) {\n var n = Object.keys(e);\n\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(e);\n t && (r = r.filter(function (t) {\n return Object.getOwnPropertyDescriptor(e, t).enumerable;\n })), n.push.apply(n, r);\n }\n\n return n;\n }\n\n function _objectSpread2$1(e) {\n for (var t = 1; t < arguments.length; t++) {\n var n = null != arguments[t] ? arguments[t] : {};\n t % 2 ? ownKeys$1(Object(n), !0).forEach(function (t) {\n _defineProperty$1(e, t, n[t]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ownKeys$1(Object(n)).forEach(function (t) {\n Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));\n });\n }\n\n return e;\n }\n\n var defaults = {\n addCSS: !0,\n thumbWidth: 15,\n watch: !0\n };\n\n function matches(e, t) {\n return function () {\n return Array.from(document.querySelectorAll(t)).includes(this);\n }.call(e, t);\n }\n\n function trigger(e, t) {\n if (e && t) {\n var n = new Event(t, {\n bubbles: !0\n });\n e.dispatchEvent(n);\n }\n }\n\n var getConstructor = function getConstructor(e) {\n return null != e ? e.constructor : null;\n },\n instanceOf = function instanceOf(e, t) {\n return !!(e && t && e instanceof t);\n },\n isNullOrUndefined = function isNullOrUndefined(e) {\n return null == e;\n },\n isObject = function isObject(e) {\n return getConstructor(e) === Object;\n },\n isNumber = function isNumber(e) {\n return getConstructor(e) === Number && !Number.isNaN(e);\n },\n isString = function isString(e) {\n return getConstructor(e) === String;\n },\n isBoolean = function isBoolean(e) {\n return getConstructor(e) === Boolean;\n },\n isFunction = function isFunction(e) {\n return getConstructor(e) === Function;\n },\n isArray = function isArray(e) {\n return Array.isArray(e);\n },\n isNodeList = function isNodeList(e) {\n return instanceOf(e, NodeList);\n },\n isElement = function isElement(e) {\n return instanceOf(e, Element);\n },\n isEvent = function isEvent(e) {\n return instanceOf(e, Event);\n },\n isEmpty = function isEmpty(e) {\n return isNullOrUndefined(e) || (isString(e) || isArray(e) || isNodeList(e)) && !e.length || isObject(e) && !Object.keys(e).length;\n },\n 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 function getDecimalPlaces(e) {\n var t = \"\".concat(e).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n return t ? Math.max(0, (t[1] ? t[1].length : 0) - (t[2] ? +t[2] : 0)) : 0;\n }\n\n function round(e, t) {\n if (1 > t) {\n var n = getDecimalPlaces(t);\n return parseFloat(e.toFixed(n));\n }\n\n return Math.round(e / t) * t;\n }\n\n var RangeTouch = function () {\n function e(t, n) {\n _classCallCheck$1(this, e), is.element(t) ? this.element = t : is.string(t) && (this.element = document.querySelector(t)), is.element(this.element) && is.empty(this.element.rangeTouch) && (this.config = _objectSpread2$1({}, defaults, {}, n), this.init());\n }\n\n return _createClass$1(e, [{\n key: \"init\",\n value: function value() {\n e.enabled && (this.config.addCSS && (this.element.style.userSelect = \"none\", this.element.style.webKitUserSelect = \"none\", this.element.style.touchAction = \"manipulation\"), this.listeners(!0), this.element.rangeTouch = this);\n }\n }, {\n key: \"destroy\",\n value: function value() {\n e.enabled && (this.config.addCSS && (this.element.style.userSelect = \"\", this.element.style.webKitUserSelect = \"\", this.element.style.touchAction = \"\"), this.listeners(!1), this.element.rangeTouch = null);\n }\n }, {\n key: \"listeners\",\n value: function value(e) {\n var t = this,\n n = e ? \"addEventListener\" : \"removeEventListener\";\n [\"touchstart\", \"touchmove\", \"touchend\"].forEach(function (e) {\n t.element[n](e, function (e) {\n return t.set(e);\n }, !1);\n });\n }\n }, {\n key: \"get\",\n value: function value(t) {\n if (!e.enabled || !is.event(t)) return null;\n var n,\n r = t.target,\n i = t.changedTouches[0],\n o = parseFloat(r.getAttribute(\"min\")) || 0,\n s = parseFloat(r.getAttribute(\"max\")) || 100,\n u = parseFloat(r.getAttribute(\"step\")) || 1,\n c = r.getBoundingClientRect(),\n a = 100 / c.width * (this.config.thumbWidth / 2) / 100;\n return 0 > (n = 100 / c.width * (i.clientX - c.left)) ? n = 0 : 100 < n && (n = 100), 50 > n ? n -= (100 - 2 * n) * a : 50 < n && (n += 2 * (n - 50) * a), o + round(n / 100 * (s - o), u);\n }\n }, {\n key: \"set\",\n value: function value(t) {\n e.enabled && is.event(t) && !t.target.disabled && (t.preventDefault(), t.target.value = this.get(t), trigger(t.target, \"touchend\" === t.type ? \"change\" : \"input\"));\n }\n }], [{\n key: \"setup\",\n value: function value(t) {\n var n = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : {},\n r = null;\n if (is.empty(t) || is.string(t) ? r = Array.from(document.querySelectorAll(is.string(t) ? t : 'input[type=\"range\"]')) : is.element(t) ? r = [t] : is.nodeList(t) ? r = Array.from(t) : is.array(t) && (r = t.filter(is.element)), is.empty(r)) return null;\n\n var i = _objectSpread2$1({}, defaults, {}, n);\n\n if (is.string(t) && i.watch) {\n var o = new MutationObserver(function (n) {\n Array.from(n).forEach(function (n) {\n Array.from(n.addedNodes).forEach(function (n) {\n is.element(n) && matches(n, t) && new e(n, i);\n });\n });\n });\n o.observe(document.body, {\n childList: !0,\n subtree: !0\n });\n }\n\n return r.map(function (t) {\n return new e(t, n);\n });\n }\n }, {\n key: \"enabled\",\n get: function get() {\n return \"ontouchstart\" in document.documentElement;\n }\n }]), e;\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) && isFunction$1(input.then);\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 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 });\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 var _Element = Element,\n prototype = _Element.prototype;\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var method = prototype.matches || prototype.webkitMatchesSelector || prototype.mozMatchesSelector || prototype.msMatchesSelector || match;\n return method.call(element, selector);\n } // Closest ancestor element matching selector (also tests element itself)\n\n function closest(element, selector) {\n var _Element2 = Element,\n prototype = _Element2.prototype; // https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill\n\n function closestElement() {\n var el = this;\n\n do {\n if (matches$1.matches(el, selector)) return el;\n el = el.parentElement || el.parentNode;\n } while (el !== null && el.nodeType === 1);\n\n return null;\n }\n\n var method = prototype.closest || closestElement;\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 } // 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 // 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: _objectSpread2(_objectSpread2({}, 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 /**\n * Silence a Promise-like object.\n * This is useful for avoiding non-harmful, but potentially confusing \"uncaught\n * play promise\" rejection error messages.\n * @param {Object} value An object that may or may not be `Promise`-like.\n */\n\n function silencePromise(value) {\n if (is$1.promise(value)) {\n value.then(null, function () {});\n }\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 wrapper = this.elements.wrapper;\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 wrapper.style.paddingBottom = \"\".concat(padding, \"%\"); // For Vimeo we have an extra
to hide the standard controls and UI\n\n if (this.isVimeo && !this.config.vimeo.premium && this.supported.ui) {\n var height = 100 / this.media.offsetWidth * parseInt(window.getComputedStyle(this.media).paddingBottom, 10);\n var offset = (height - padding) / (height / 50);\n\n if (this.fullscreen.active) {\n wrapper.style.paddingBottom = null;\n } else {\n this.media.style.transform = \"translateY(-\".concat(offset, \"%)\");\n }\n } else if (this.isHTML5) {\n 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 // Whether we're forcing all options (e.g. for streaming)\n if (this.config.quality.forced) {\n return this.config.quality.options;\n } // Get sizes from elements\n\n\n return html5.getSources.call(this).map(function (source) {\n return Number(source.getAttribute('size'));\n }).filter(Boolean);\n },\n setup: function setup() {\n if (!this.isHTML5) {\n return;\n }\n\n var player = this; // Set speed options from config\n\n player.options.speed = player.config.speed.options; // 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 if (player.quality === input) {\n return;\n } // If we're using an an external handler...\n\n\n if (player.config.quality.forced && is$1.function(player.config.quality.onChange)) {\n player.config.quality.onChange(input);\n } else {\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,\n playbackRate = _player$media.playbackRate; // 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.speed = playbackRate;\n player.currentTime = currentTime; // Resume playing\n\n if (!paused) {\n silencePromise(player.play());\n }\n }); // Load new source\n\n player.media.load();\n }\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$1(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 var replaceAll = 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 var toTitleCase = 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 = /*#__PURE__*/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(undefined, 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 'aria-hidden': 'true',\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\n var attributes = _objectSpread2(_objectSpread2({}, attr), {}, {\n class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' ')\n });\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('allow', 'autoplay,fullscreen,picture-in-picture'); // Set the referrer policy if required\n\n if (!is$1.empty(referrerPolicy)) {\n iframe.setAttribute('referrerPolicy', referrerPolicy);\n } // Inject the package\n\n\n if (premium || !config.customControls) {\n iframe.setAttribute('data-poster', player.poster);\n player.media = replaceElement(iframe, player.media);\n } else {\n var wrapper = createElement('div', {\n class: player.config.classNames.embedContainer,\n 'data-poster': player.poster\n });\n wrapper.appendChild(iframe);\n player.media = replaceElement(wrapper, player.media);\n } // Get poster image\n\n\n if (!config.customControls) {\n fetch(format(player.config.urls.vimeo.api, src)).then(function (response) {\n if (is$1.empty(response) || !response.thumbnail_url) {\n return;\n } // Set and show poster\n\n\n ui.setPoster.call(player, response.thumbnail_url).catch(function () {});\n });\n } // Setup instance\n // https://github.com/vimeo/player.js\n\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 () {\n // Cannot set Playback Rate, Video is probably not on Pro account\n player.options.speed = [1];\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 _this.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(_this);\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(_this);\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('bufferstart', function () {\n triggerEvent.call(player, player.media, 'waiting');\n });\n player.embed.on('bufferend', function () {\n triggerEvent.call(player, player.media, 'playing');\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 if (config.customControls) {\n setTimeout(function () {\n return ui.build.call(player);\n }, 0);\n }\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;\n var config = player.config.youtube; // 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