{"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","referrerPolicy","noCookie","rel","showinfo","iv_load_policy","modestbranding","providers","types","noop","Console","console","Fullscreen","property","scrollPosition","x","y","forceFallback","closest","el","parentElement","nodeType","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","proxy","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_large","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 var poster = player.poster;\n\n if (premium) {\n iframe.setAttribute('data-poster', poster);\n player.media = replaceElement(iframe, player.media);\n } else {\n var wrapper = createElement('div', {\n class: player.config.classNames.embedContainer,\n 'data-poster': poster\n });\n wrapper.appendChild(iframe);\n player.media = replaceElement(wrapper, player.media);\n } // Get poster image\n\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 () {\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 setTimeout(function () {\n return ui.build.call(player);\n }, 0);\n }\n };\n\n // ==========================================================================\n\n function parseId$1(url) {\n if (is$1.empty(url)) {\n return null;\n }\n\n var regex = /^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|&v=)([^#&?]*).*/;\n return url.match(regex) ? RegExp.$2 : url;\n } // Set playback state and trigger change (only on actual change)\n\n\n function assurePlaybackState$1(play) {\n if (play && !this.embed.hasPlayed) {\n this.embed.hasPlayed = true;\n }\n\n if (this.media.paused === play) {\n this.media.paused = !play;\n triggerEvent.call(this, this.media, play ? 'play' : 'pause');\n }\n }\n\n function getHost(config) {\n if (config.noCookie) {\n return 'https://www.youtube-nocookie.com';\n }\n\n if (window.location.protocol === 'http:') {\n return 'http://www.youtube.com';\n } // Use YouTube's default\n\n\n return undefined;\n }\n\n var youtube = {\n setup: function setup() {\n var _this = this;\n\n // Add embed class for responsive\n toggleClass(this.elements.wrapper, this.config.classNames.embed, true); // Setup API\n\n if (is$1.object(window.YT) && is$1.function(window.YT.Player)) {\n youtube.ready.call(this);\n } else {\n // Reference current global callback\n var callback = window.onYouTubeIframeAPIReady; // Set callback to process queue\n\n window.onYouTubeIframeAPIReady = function () {\n // Call global callback if set\n if (is$1.function(callback)) {\n callback();\n }\n\n youtube.ready.call(_this);\n }; // Load the SDK\n\n\n loadScript(this.config.urls.youtube.sdk).catch(function (error) {\n _this.debug.warn('YouTube API failed to load', error);\n });\n }\n },\n // Get the media title\n getTitle: function getTitle(videoId) {\n var _this2 = this;\n\n var url = format(this.config.urls.youtube.api, videoId);\n fetch(url).then(function (data) {\n if (is$1.object(data)) {\n var title = data.title,\n height = data.height,\n width = data.width; // Set title\n\n _this2.config.title = title;\n ui.setTitle.call(_this2); // Set aspect ratio\n\n _this2.embed.ratio = [width, height];\n }\n\n setAspectRatio.call(_this2);\n }).catch(function () {\n // Set aspect ratio\n setAspectRatio.call(_this2);\n });\n },\n // API ready\n ready: function ready() {\n var player = this; // Ignore already setup (race condition)\n\n var currentId = player.media && player.media.getAttribute('id');\n\n if (!is$1.empty(currentId) && currentId.startsWith('youtube-')) {\n return;\n } // Get the source URL or ID\n\n\n var source = player.media.getAttribute('src'); // Get from
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(this.config.attributes.embed.id);\n } // Replace the