From 64b7375c82b446aafcc39bd61f62707e34191035 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs?= Date: Fri, 22 Feb 2019 22:13:45 -0500 Subject: [PATCH] update plyr player to v2.0.1 --- content/vendor/plyr/plyr.min.mjs | 1 + content/vendor/plyr/plyr.min.mjs.map | 1 + content/vendor/plyr/plyr.mjs | 8884 +++++++++++ content/vendor/plyr/plyr.polyfilled.min.mjs | 1 + .../vendor/plyr/plyr.polyfilled.min.mjs.map | 1 + content/vendor/plyr/plyr.polyfilled.mjs | 12288 ++++++++++++++++ 6 files changed, 21176 insertions(+) create mode 100644 content/vendor/plyr/plyr.min.mjs create mode 100644 content/vendor/plyr/plyr.min.mjs.map create mode 100644 content/vendor/plyr/plyr.mjs create mode 100644 content/vendor/plyr/plyr.polyfilled.min.mjs create mode 100644 content/vendor/plyr/plyr.polyfilled.min.mjs.map create mode 100644 content/vendor/plyr/plyr.polyfilled.mjs diff --git a/content/vendor/plyr/plyr.min.mjs b/content/vendor/plyr/plyr.min.mjs new file mode 100644 index 0000000..c589cf2 --- /dev/null +++ b/content/vendor/plyr/plyr.min.mjs @@ -0,0 +1 @@ +function _defineProperties(e,t){for(var i=0;i100&&(i=100),i<50?i-=(100-2*i)*u:i>50&&(i+=2*(i-50)*u),a+round(l*(i/100),o)}},{key:"set",value:function(t){e.enabled&&is.event(t)&&!t.target.disabled&&(t.preventDefault(),t.target.value=this.get(t),trigger(t.target,"touchend"===t.type?"change":"input"))}}],[{key:"setup",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=null;if(is.empty(t)||is.string(t)?n=Array.from(document.querySelectorAll(is.string(t)?t:'input[type="range"]')):is.element(t)?n=[t]:is.nodeList(t)?n=Array.from(t):is.array(t)&&(n=t.filter(is.element)),is.empty(n))return null;var s=Object.assign({},defaults,i);is.string(t)&&s.watch&&new MutationObserver(function(i){Array.from(i).forEach(function(i){Array.from(i.addedNodes).forEach(function(i){if(is.element(i)&&matches(i,t))new e(i,s)})})}).observe(document.body,{childList:!0,subtree:!0});return n.map(function(t){return new e(t,i)})}},{key:"enabled",get:function(){return"ontouchstart"in document.documentElement}}]),e}(),getConstructor$1=function(e){return null!=e?e.constructor:null},instanceOf$1=function(e,t){return Boolean(e&&t&&e instanceof t)},isNullOrUndefined$1=function(e){return null==e},isObject$1=function(e){return getConstructor$1(e)===Object},isNumber$1=function(e){return getConstructor$1(e)===Number&&!Number.isNaN(e)},isString$1=function(e){return getConstructor$1(e)===String},isBoolean$1=function(e){return getConstructor$1(e)===Boolean},isFunction$1=function(e){return getConstructor$1(e)===Function},isArray$1=function(e){return Array.isArray(e)},isWeakMap=function(e){return instanceOf$1(e,WeakMap)},isNodeList$1=function(e){return instanceOf$1(e,NodeList)},isElement$1=function(e){return instanceOf$1(e,Element)},isTextNode=function(e){return getConstructor$1(e)===Text},isEvent$1=function(e){return instanceOf$1(e,Event)},isKeyboardEvent=function(e){return instanceOf$1(e,KeyboardEvent)},isCue=function(e){return instanceOf$1(e,window.TextTrackCue)||instanceOf$1(e,window.VTTCue)},isTrack=function(e){return instanceOf$1(e,TextTrack)||!isNullOrUndefined$1(e)&&isString$1(e.kind)},isPromise=function(e){return instanceOf$1(e,Promise)},isEmpty$1=function(e){return isNullOrUndefined$1(e)||(isString$1(e)||isArray$1(e)||isNodeList$1(e))&&!e.length||isObject$1(e)&&!Object.keys(e).length},isUrl=function(e){if(instanceOf$1(e,window.URL))return!0;if(!isString$1(e))return!1;var t=e;e.startsWith("http://")&&e.startsWith("https://")||(t="http://".concat(e));try{return!isEmpty$1(new URL(t).hostname)}catch(e){return!1}},is$1={nullOrUndefined:isNullOrUndefined$1,object:isObject$1,number:isNumber$1,string:isString$1,boolean:isBoolean$1,function:isFunction$1,array:isArray$1,weakMap:isWeakMap,nodeList:isNodeList$1,element:isElement$1,textNode:isTextNode,event:isEvent$1,keyboardEvent:isKeyboardEvent,cue:isCue,track:isTrack,promise:isPromise,url:isUrl,empty:isEmpty$1},supportsPassiveListeners=function(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){return e=!0,null}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(e){}return e}();function toggleListener(e,t,i){var n=this,s=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=arguments.length>5&&void 0!==arguments[5]&&arguments[5];if(e&&"addEventListener"in e&&!is$1.empty(t)&&is$1.function(i)){var o=t.split(" "),l=r;supportsPassiveListeners&&(l={passive:a,capture:r}),o.forEach(function(t){n&&n.eventListeners&&s&&n.eventListeners.push({element:e,type:t,callback:i,options:l}),e[s?"addEventListener":"removeEventListener"](t,i,l)})}}function on(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2?arguments[2]:void 0,n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];toggleListener.call(this,e,t,i,!0,n,s)}function off(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2?arguments[2]:void 0,n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];toggleListener.call(this,e,t,i,!1,n,s)}function once(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];toggleListener.call(this,e,i,function r(){off(e,i,r,s,a);for(var o=arguments.length,l=new Array(o),c=0;c1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(is$1.element(e)&&!is$1.empty(t)){var s=new CustomEvent(t,{bubbles:i,detail:Object.assign({},n,{plyr:this})});e.dispatchEvent(s)}}function unbindListeners(){this&&this.eventListeners&&(this.eventListeners.forEach(function(e){var t=e.element,i=e.type,n=e.callback,s=e.options;t.removeEventListener(i,n,s)}),this.eventListeners=[])}function ready(){var e=this;return new Promise(function(t){return e.ready?setTimeout(t,0):on.call(e,e.elements.container,"ready",t)}).then(function(){})}function wrap(e,t){var i=e.length?e:[e];Array.from(i).reverse().forEach(function(e,i){var n=i>0?t.cloneNode(!0):t,s=e.parentNode,a=e.nextSibling;n.appendChild(e),a?s.insertBefore(n,a):s.appendChild(n)})}function setAttributes(e,t){is$1.element(e)&&!is$1.empty(t)&&Object.entries(t).filter(function(e){var t=_slicedToArray(e,2)[1];return!is$1.nullOrUndefined(t)}).forEach(function(t){var i=_slicedToArray(t,2),n=i[0],s=i[1];return e.setAttribute(n,s)})}function createElement(e,t,i){var n=document.createElement(e);return is$1.object(t)&&setAttributes(n,t),is$1.string(i)&&(n.innerText=i),n}function insertAfter(e,t){is$1.element(e)&&is$1.element(t)&&t.parentNode.insertBefore(e,t.nextSibling)}function insertElement(e,t,i,n){is$1.element(t)&&t.appendChild(createElement(e,i,n))}function removeElement(e){is$1.nodeList(e)||is$1.array(e)?Array.from(e).forEach(removeElement):is$1.element(e)&&is$1.element(e.parentNode)&&e.parentNode.removeChild(e)}function emptyElement(e){if(is$1.element(e))for(var t=e.childNodes.length;t>0;)e.removeChild(e.lastChild),t-=1}function replaceElement(e,t){return is$1.element(t)&&is$1.element(t.parentNode)&&is$1.element(e)?(t.parentNode.replaceChild(e,t),e):null}function getAttributesFromSelector(e,t){if(!is$1.string(e)||is$1.empty(e))return{};var i={},n=t;return e.split(",").forEach(function(e){var t=e.trim(),s=t.replace(".",""),a=t.replace(/[[\]]/g,"").split("="),r=a[0],o=a.length>1?a[1].replace(/["']/g,""):"";switch(t.charAt(0)){case".":is$1.object(n)&&is$1.string(n.class)&&(n.class+=" ".concat(s)),i.class=s;break;case"#":i.id=t.replace("#","");break;case"[":i[r]=o}}),i}function toggleHidden(e,t){if(is$1.element(e)){var i=t;is$1.boolean(i)||(i=!e.hidden),i?e.setAttribute("hidden",""):e.removeAttribute("hidden")}}function toggleClass(e,t,i){if(is$1.nodeList(e))return Array.from(e).map(function(e){return toggleClass(e,t,i)});if(is$1.element(e)){var n="toggle";return void 0!==i&&(n=i?"add":"remove"),e.classList[n](t),e.classList.contains(t)}return!1}function hasClass(e,t){return is$1.element(e)&&e.classList.contains(t)}function matches$1(e,t){return function(){return Array.from(document.querySelectorAll(t)).includes(this)}.call(e,t)}function getElements(e){return this.elements.container.querySelectorAll(e)}function getElement(e){return this.elements.container.querySelector(e)}function trapFocus(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(is$1.element(e)){var i=getElements.call(this,"button:not(:disabled), input:not(:disabled), [tabindex]"),n=i[0],s=i[i.length-1];toggleListener.call(this,this.elements.container,"keydown",function(e){if("Tab"===e.key&&9===e.keyCode){var t=document.activeElement;t!==s||e.shiftKey?t===n&&e.shiftKey&&(s.focus(),e.preventDefault()):(n.focus(),e.preventDefault())}},t,!1)}}function setFocus(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];is$1.element(e)&&(e.focus({preventScroll:!0}),t&&toggleClass(e,this.config.classNames.tabFocus))}var transitionEndEvent=function(){var e=document.createElement("span"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"},i=Object.keys(t).find(function(t){return void 0!==e.style[t]});return!!is$1.string(i)&&t[i]}();function repaint(e){setTimeout(function(){try{toggleHidden(e,!0),e.offsetHeight,toggleHidden(e,!1)}catch(e){}},0)}var browser={isIE:!!document.documentMode,isEdge:window.navigator.userAgent.includes("Edge"),isWebkit:"WebkitAppearance"in document.documentElement.style&&!/Edge/.test(navigator.userAgent),isIPhone:/(iPhone|iPod)/gi.test(navigator.platform),isIos:/(iPad|iPhone|iPod)/gi.test(navigator.platform)},defaultCodecs={"audio/ogg":"vorbis","audio/wav":"1","video/webm":"vp8, vorbis","video/mp4":"avc1.42E01E, mp4a.40.2","video/ogg":"theora"},support={audio:"canPlayType"in document.createElement("audio"),video:"canPlayType"in document.createElement("video"),check:function(e,t,i){var n=browser.isIPhone&&i&&support.playsinline,s=support[e]||"html5"!==t;return{api:s,ui:s&&support.rangeInput&&("video"!==e||!browser.isIPhone||n)}},pip:!(browser.isIPhone||!is$1.function(createElement("video").webkitSetPresentationMode)&&(!document.pictureInPictureEnabled||createElement("video").disablePictureInPicture)),airplay:is$1.function(window.WebKitPlaybackTargetAvailabilityEvent),playsinline:"playsInline"in document.createElement("video"),mime:function(e){if(is$1.empty(e))return!1;var t=_slicedToArray(e.split("/"),1)[0],i=e;if(!this.isHTML5||t!==this.type)return!1;Object.keys(defaultCodecs).includes(i)&&(i+='; codecs="'.concat(defaultCodecs[e],'"'));try{return Boolean(i&&this.media.canPlayType(i).replace(/no/,""))}catch(e){return!1}},textTracks:"textTracks"in document.createElement("video"),rangeInput:function(){var e=document.createElement("input");return e.type="range","range"===e.type}(),touch:"ontouchstart"in document.documentElement,transitions:!1!==transitionEndEvent,reducedMotion:"matchMedia"in window&&window.matchMedia("(prefers-reduced-motion)").matches},html5={getSources:function(){var e=this;return this.isHTML5?Array.from(this.media.querySelectorAll("source")).filter(function(t){var i=t.getAttribute("type");return!!is$1.empty(i)||support.mime.call(e,i)}):[]},getQualityOptions:function(){return html5.getSources.call(this).map(function(e){return Number(e.getAttribute("data-res"))}).filter(Boolean)},extend:function(){if(this.isHTML5){var e=this;Object.defineProperty(e.media,"quality",{get:function(){var t=html5.getSources.call(e).find(function(t){return t.getAttribute("src")===e.source});return t&&Number(t.getAttribute("data-res"))},set:function(t){var i=html5.getSources.call(e).find(function(e){return Number(e.getAttribute("data-res"))===t});if(i){var n=e.media,s=n.currentTime,a=n.paused,r=n.preload,o=n.readyState;e.media.src=i.getAttribute("src"),("none"!==r||o)&&(e.once("loadedmetadata",function(){e.currentTime=s,a||e.play()}),e.media.load()),triggerEvent.call(e,e.media,"qualitychange",!1,{quality:t})}}})}},cancelRequests:function(){this.isHTML5&&(removeElement(html5.getSources.call(this)),this.media.setAttribute("src",this.config.blankVideo),this.media.load(),this.debug.log("Cancelled network requests"))}};function dedupe(e){return is$1.array(e)?e.filter(function(t,i){return e.indexOf(t)===i}):e}function closest(e,t){return is$1.array(e)&&e.length?e.reduce(function(e,i){return Math.abs(i-t)0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length,i=new Array(t>1?t-1:0),n=1;n1?t-1:0),n=1;n0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return e.replace(new RegExp(t.toString().replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1"),"g"),i.toString())}function toTitleCase(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").toString().replace(/\w\S*/g,function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})}function toPascalCase(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").toString();return e=replaceAll(e,"-"," "),e=replaceAll(e,"_"," "),replaceAll(e=toTitleCase(e)," ","")}function toCamelCase(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"").toString();return(e=toPascalCase(e)).charAt(0).toLowerCase()+e.slice(1)}function stripHTML(e){var t=document.createDocumentFragment(),i=document.createElement("div");return t.appendChild(i),i.innerHTML=e,t.firstChild.innerText}function getHTML(e){var t=document.createElement("div");return t.appendChild(e),t.innerHTML}var resources={pip:"PIP",airplay:"AirPlay",html5:"HTML5",vimeo:"Vimeo",youtube:"YouTube"},i18n={get:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(is$1.empty(e)||is$1.empty(t))return"";var i=getDeep(t.i18n,e);if(is$1.empty(i))return Object.keys(resources).includes(e)?resources[e]:"";var n={"{seektime}":t.seekTime,"{title}":t.title};return Object.entries(n).forEach(function(e){var t=_slicedToArray(e,2),n=t[0],s=t[1];i=replaceAll(i,n,s)}),i}},Storage=function(){function e(t){_classCallCheck(this,e),this.enabled=t.config.storage.enabled,this.key=t.config.storage.key}return _createClass(e,[{key:"get",value:function(t){if(!e.supported||!this.enabled)return null;var i=window.localStorage.getItem(this.key);if(is$1.empty(i))return null;var n=JSON.parse(i);return is$1.string(t)&&t.length?n[t]:n}},{key:"set",value:function(t){if(e.supported&&this.enabled&&is$1.object(t)){var i=this.get();is$1.empty(i)&&(i={}),extend(i,t),window.localStorage.setItem(this.key,JSON.stringify(i))}}}],[{key:"supported",get:function(){try{if(!("localStorage"in window))return!1;return window.localStorage.setItem("___test","___test"),window.localStorage.removeItem("___test"),!0}catch(e){return!1}}}]),e}();function fetch(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"text";return new Promise(function(i,n){try{var s=new XMLHttpRequest;if(!("withCredentials"in s))return;s.addEventListener("load",function(){if("text"===t)try{i(JSON.parse(s.responseText))}catch(e){i(s.responseText)}else i(s.response)}),s.addEventListener("error",function(){throw new Error(s.status)}),s.open("GET",e,!0),s.responseType=t,s.send()}catch(e){n(e)}})}function loadSprite(e,t){if(is$1.string(e)){var i=is$1.string(t),n=function(){return null!==document.getElementById(t)},s=function(e,t){e.innerHTML=t,i&&n()||document.body.insertAdjacentElement("afterbegin",e)};if(!i||!n()){var a=Storage.supported,r=document.createElement("div");if(r.setAttribute("hidden",""),i&&r.setAttribute("id",t),a){var o=window.localStorage.getItem("".concat("cache","-").concat(t));if(null!==o){var l=JSON.parse(o);s(r,l.content)}}fetch(e).then(function(e){is$1.empty(e)||(a&&window.localStorage.setItem("".concat("cache","-").concat(t),JSON.stringify({content:e})),s(r,e))}).catch(function(){})}}}var getHours=function(e){return Math.trunc(e/60/60%60,10)},getMinutes=function(e){return Math.trunc(e/60%60,10)},getSeconds=function(e){return Math.trunc(e%60,10)};function formatTime(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!is$1.number(e))return formatTime(null,t,i);var n=function(e){return"0".concat(e).slice(-2)},s=getHours(e),a=getMinutes(e),r=getSeconds(e);return s=t||s>0?"".concat(s,":"):"","".concat(i&&e>0?"-":"").concat(s).concat(n(a),":").concat(n(r))}var controls={getIconUrl:function(){var e=new URL(this.config.iconUrl,window.location).host!==window.location.host||browser.isIE&&!window.svg4everybody;return{url:this.config.iconUrl,cors:e}},findElements:function(){try{return this.elements.controls=getElement.call(this,this.config.selectors.controls.wrapper),this.elements.buttons={play:getElements.call(this,this.config.selectors.buttons.play),pause:getElement.call(this,this.config.selectors.buttons.pause),restart:getElement.call(this,this.config.selectors.buttons.restart),rewind:getElement.call(this,this.config.selectors.buttons.rewind),fastForward:getElement.call(this,this.config.selectors.buttons.fastForward),mute:getElement.call(this,this.config.selectors.buttons.mute),pip:getElement.call(this,this.config.selectors.buttons.pip),airplay:getElement.call(this,this.config.selectors.buttons.airplay),settings:getElement.call(this,this.config.selectors.buttons.settings),captions:getElement.call(this,this.config.selectors.buttons.captions),fullscreen:getElement.call(this,this.config.selectors.buttons.fullscreen)},this.elements.progress=getElement.call(this,this.config.selectors.progress),this.elements.inputs={seek:getElement.call(this,this.config.selectors.inputs.seek),volume:getElement.call(this,this.config.selectors.inputs.volume)},this.elements.display={buffer:getElement.call(this,this.config.selectors.display.buffer),currentTime:getElement.call(this,this.config.selectors.display.currentTime),duration:getElement.call(this,this.config.selectors.display.duration)},is$1.element(this.elements.progress)&&(this.elements.display.seekTooltip=this.elements.progress.querySelector(".".concat(this.config.classNames.tooltip))),!0}catch(e){return this.debug.warn("It looks like there is a problem with your custom controls HTML",e),this.toggleNativeControls(!0),!1}},createIcon:function(e,t){var i=controls.getIconUrl.call(this),n="".concat(i.cors?"":i.url,"#").concat(this.config.iconPrefix),s=document.createElementNS("http://www.w3.org/2000/svg","svg");setAttributes(s,extend(t,{role:"presentation",focusable:"false"}));var a=document.createElementNS("http://www.w3.org/2000/svg","use"),r="".concat(n,"-").concat(e);return"href"in a&&a.setAttributeNS("http://www.w3.org/1999/xlink","href",r),a.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",r),s.appendChild(a),s},createLabel:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=i18n.get(e,this.config);return createElement("span",Object.assign({},t,{class:[t.class,this.config.classNames.hidden].filter(Boolean).join(" ")}),i)},createBadge:function(e){if(is$1.empty(e))return null;var t=createElement("span",{class:this.config.classNames.menu.value});return t.appendChild(createElement("span",{class:this.config.classNames.menu.badge},e)),t},createButton:function(e,t){var i=Object.assign({},t),n=toCamelCase(e),s={element:"button",toggle:!1,label:null,icon:null,labelPressed:null,iconPressed:null};switch(["element","icon","label"].forEach(function(e){Object.keys(i).includes(e)&&(s[e]=i[e],delete i[e])}),"button"!==s.element||Object.keys(i).includes("type")||(i.type="button"),Object.keys(i).includes("class")?i.class.includes(this.config.classNames.control)||(i.class+=" ".concat(this.config.classNames.control)):i.class=this.config.classNames.control,e){case"play":s.toggle=!0,s.label="play",s.labelPressed="pause",s.icon="play",s.iconPressed="pause";break;case"mute":s.toggle=!0,s.label="mute",s.labelPressed="unmute",s.icon="volume",s.iconPressed="muted";break;case"captions":s.toggle=!0,s.label="enableCaptions",s.labelPressed="disableCaptions",s.icon="captions-off",s.iconPressed="captions-on";break;case"fullscreen":s.toggle=!0,s.label="enterFullscreen",s.labelPressed="exitFullscreen",s.icon="enter-fullscreen",s.iconPressed="exit-fullscreen";break;case"play-large":i.class+=" ".concat(this.config.classNames.control,"--overlaid"),n="play",s.label="play",s.icon="play";break;default:is$1.empty(s.label)&&(s.label=n),is$1.empty(s.icon)&&(s.icon=e)}var a=createElement(s.element);return s.toggle?(a.appendChild(controls.createIcon.call(this,s.iconPressed,{class:"icon--pressed"})),a.appendChild(controls.createIcon.call(this,s.icon,{class:"icon--not-pressed"})),a.appendChild(controls.createLabel.call(this,s.labelPressed,{class:"label--pressed"})),a.appendChild(controls.createLabel.call(this,s.label,{class:"label--not-pressed"}))):(a.appendChild(controls.createIcon.call(this,s.icon)),a.appendChild(controls.createLabel.call(this,s.label))),extend(i,getAttributesFromSelector(this.config.selectors.buttons[n],i)),setAttributes(a,i),"play"===n?(is$1.array(this.elements.buttons[n])||(this.elements.buttons[n]=[]),this.elements.buttons[n].push(a)):this.elements.buttons[n]=a,a},createRange:function(e,t){var i=createElement("input",extend(getAttributesFromSelector(this.config.selectors.inputs[e]),{type:"range",min:0,max:100,step:.01,value:0,autocomplete:"off",role:"slider","aria-label":i18n.get(e,this.config),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":0},t));return this.elements.inputs[e]=i,controls.updateRangeFill.call(this,i),RangeTouch.setup(i),i},createProgress:function(e,t){var i=createElement("progress",extend(getAttributesFromSelector(this.config.selectors.display[e]),{min:0,max:100,value:0,role:"progressbar","aria-hidden":!0},t));if("volume"!==e){i.appendChild(createElement("span",null,"0"));var n={played:"played",buffer:"buffered"}[e],s=n?i18n.get(n,this.config):"";i.innerText="% ".concat(s.toLowerCase())}return this.elements.display[e]=i,i},createTime:function(e){var t=getAttributesFromSelector(this.config.selectors.display[e]),i=createElement("div",extend(t,{class:"".concat(this.config.classNames.display.time," ").concat(t.class?t.class:"").trim(),"aria-label":i18n.get(e,this.config)}),"00:00");return this.elements.display[e]=i,i},bindMenuItemShortcuts:function(e,t){var i=this;on(e,"keydown keyup",function(n){if([32,38,39,40].includes(n.which)&&(n.preventDefault(),n.stopPropagation(),"keydown"!==n.type)){var s,a=matches$1(e,'[role="menuitemradio"]');if(!a&&[32,39].includes(n.which))controls.showMenuPanel.call(i,t,!0);else 32!==n.which&&(40===n.which||a&&39===n.which?(s=e.nextElementSibling,is$1.element(s)||(s=e.parentNode.firstElementChild)):(s=e.previousElementSibling,is$1.element(s)||(s=e.parentNode.lastElementChild)),setFocus.call(i,s,!0))}},!1),on(e,"keyup",function(e){13===e.which&&controls.focusFirstMenuItem.call(i,null,!0)})},createMenuItem:function(e){var t=this,i=e.value,n=e.list,s=e.type,a=e.title,r=e.badge,o=void 0===r?null:r,l=e.checked,c=void 0!==l&&l,u=getAttributesFromSelector(this.config.selectors.inputs[s]),d=createElement("button",extend(u,{type:"button",role:"menuitemradio",class:"".concat(this.config.classNames.control," ").concat(u.class?u.class:"").trim(),"aria-checked":c,value:i})),h=createElement("span");h.innerHTML=a,is$1.element(o)&&h.appendChild(o),d.appendChild(h),Object.defineProperty(d,"checked",{enumerable:!0,get:function(){return"true"===d.getAttribute("aria-checked")},set:function(e){e&&Array.from(d.parentNode.children).filter(function(e){return matches$1(e,'[role="menuitemradio"]')}).forEach(function(e){return e.setAttribute("aria-checked","false")}),d.setAttribute("aria-checked",e?"true":"false")}}),this.listeners.bind(d,"click keyup",function(e){if(!is$1.keyboardEvent(e)||32===e.which){switch(e.preventDefault(),e.stopPropagation(),d.checked=!0,s){case"language":t.currentTrack=Number(i);break;case"quality":t.quality=i;break;case"speed":t.speed=parseFloat(i)}controls.showMenuPanel.call(t,"home",is$1.keyboardEvent(e))}},s,!1),controls.bindMenuItemShortcuts.call(this,d,s),n.appendChild(d)},formatTime:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return is$1.number(e)?formatTime(e,getHours(this.duration)>0,t):e},updateTimeDisplay:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];is$1.element(e)&&is$1.number(t)&&(e.innerText=controls.formatTime(t,i))},updateVolume:function(){this.supported.ui&&(is$1.element(this.elements.inputs.volume)&&controls.setRange.call(this,this.elements.inputs.volume,this.muted?0:this.volume),is$1.element(this.elements.buttons.mute)&&(this.elements.buttons.mute.pressed=this.muted||0===this.volume))},setRange:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;is$1.element(e)&&(e.value=t,controls.updateRangeFill.call(this,e))},updateProgress:function(e){var t=this;if(this.supported.ui&&is$1.event(e)){var i=0;if(e)switch(e.type){case"timeupdate":case"seeking":case"seeked":i=getPercentage(this.currentTime,this.duration),"timeupdate"===e.type&&controls.setRange.call(this,this.elements.inputs.seek,i);break;case"playing":case"progress":!function(e,i){var n=is$1.number(i)?i:0,s=is$1.element(e)?e:t.elements.display.buffer;if(is$1.element(s)){s.value=n;var a=s.getElementsByTagName("span")[0];is$1.element(a)&&(a.childNodes[0].nodeValue=n)}}(this.elements.display.buffer,100*this.buffered)}}},updateRangeFill:function(e){var t=is$1.event(e)?e.target:e;if(is$1.element(t)&&"range"===t.getAttribute("type")){if(matches$1(t,this.config.selectors.inputs.seek)){t.setAttribute("aria-valuenow",this.currentTime);var i=controls.formatTime(this.currentTime),n=controls.formatTime(this.duration),s=i18n.get("seekLabel",this.config);t.setAttribute("aria-valuetext",s.replace("{currentTime}",i).replace("{duration}",n))}else if(matches$1(t,this.config.selectors.inputs.volume)){var a=100*t.value;t.setAttribute("aria-valuenow",a),t.setAttribute("aria-valuetext","".concat(a.toFixed(1),"%"))}else t.setAttribute("aria-valuenow",t.value);browser.isWebkit&&t.style.setProperty("--value","".concat(t.value/t.max*100,"%"))}},updateSeekTooltip:function(e){var t=this;if(this.config.tooltips.seek&&is$1.element(this.elements.inputs.seek)&&is$1.element(this.elements.display.seekTooltip)&&0!==this.duration){var i=0,n=this.elements.progress.getBoundingClientRect(),s="".concat(this.config.classNames.tooltip,"--visible"),a=function(e){toggleClass(t.elements.display.seekTooltip,s,e)};if(this.touch)a(!1);else{if(is$1.event(e))i=100/n.width*(e.pageX-n.left);else{if(!hasClass(this.elements.display.seekTooltip,s))return;i=parseFloat(this.elements.display.seekTooltip.style.left,10)}i<0?i=0:i>100&&(i=100),controls.updateTimeDisplay.call(this,this.elements.display.seekTooltip,this.duration/100*i),this.elements.display.seekTooltip.style.left="".concat(i,"%"),is$1.event(e)&&["mouseenter","mouseleave"].includes(e.type)&&a("mouseenter"===e.type)}}},timeUpdate:function(e){var t=!is$1.element(this.elements.display.duration)&&this.config.invertTime;controls.updateTimeDisplay.call(this,this.elements.display.currentTime,t?this.duration-this.currentTime:this.currentTime,t),e&&"timeupdate"===e.type&&this.media.seeking||controls.updateProgress.call(this,e)},durationUpdate:function(){if(this.supported.ui&&(this.config.invertTime||!this.currentTime)){if(this.duration>=Math.pow(2,32))return toggleHidden(this.elements.display.currentTime,!0),void toggleHidden(this.elements.progress,!0);is$1.element(this.elements.inputs.seek)&&this.elements.inputs.seek.setAttribute("aria-valuemax",this.duration);var e=is$1.element(this.elements.display.duration);!e&&this.config.displayDuration&&this.paused&&controls.updateTimeDisplay.call(this,this.elements.display.currentTime,this.duration),e&&controls.updateTimeDisplay.call(this,this.elements.display.duration,this.duration),controls.updateSeekTooltip.call(this)}},toggleMenuButton:function(e,t){toggleHidden(this.elements.settings.buttons[e],!t)},updateSetting:function(e,t,i){var n=this.elements.settings.panels[e],s=null,a=t;if("captions"===e)s=this.currentTrack;else{if(s=is$1.empty(i)?this[e]:i,is$1.empty(s)&&(s=this.config[e].default),!is$1.empty(this.options[e])&&!this.options[e].includes(s))return void this.debug.warn("Unsupported value of '".concat(s,"' for ").concat(e));if(!this.config[e].options.includes(s))return void this.debug.warn("Disabled value of '".concat(s,"' for ").concat(e))}if(is$1.element(a)||(a=n&&n.querySelector('[role="menu"]')),is$1.element(a)){this.elements.settings.buttons[e].querySelector(".".concat(this.config.classNames.menu.value)).innerHTML=controls.getLabel.call(this,e,s);var r=a&&a.querySelector('[value="'.concat(s,'"]'));is$1.element(r)&&(r.checked=!0)}},getLabel:function(e,t){switch(e){case"speed":return 1===t?i18n.get("normal",this.config):"".concat(t,"×");case"quality":if(is$1.number(t)){var i=i18n.get("qualityLabel.".concat(t),this.config);return i.length?i:"".concat(t,"p")}return toTitleCase(t);case"captions":return captions.getLabel.call(this);default:return null}},setQualityMenu:function(e){var t=this;if(is$1.element(this.elements.settings.panels.quality)){var i=this.elements.settings.panels.quality.querySelector('[role="menu"]');is$1.array(e)&&(this.options.quality=dedupe(e).filter(function(e){return t.config.quality.options.includes(e)}));var n=!is$1.empty(this.options.quality)&&this.options.quality.length>1;if(controls.toggleMenuButton.call(this,"quality",n),emptyElement(i),controls.checkMenu.call(this),n){var s=function(e){var i=i18n.get("qualityBadge.".concat(e),t.config);return i.length?controls.createBadge.call(t,i):null};this.options.quality.sort(function(e,i){var n=t.config.quality.options;return n.indexOf(e)>n.indexOf(i)?1:-1}).forEach(function(e){controls.createMenuItem.call(t,{value:e,list:i,type:"quality",title:controls.getLabel.call(t,"quality",e),badge:s(e)})}),controls.updateSetting.call(this,"quality",i)}}},setCaptionsMenu:function(){var e=this;if(is$1.element(this.elements.settings.panels.captions)){var t=this.elements.settings.panels.captions.querySelector('[role="menu"]'),i=captions.getTracks.call(this),n=Boolean(i.length);if(controls.toggleMenuButton.call(this,"captions",n),emptyElement(t),controls.checkMenu.call(this),n){var s=i.map(function(i,n){return{value:n,checked:e.captions.toggled&&e.currentTrack===n,title:captions.getLabel.call(e,i),badge:i.language&&controls.createBadge.call(e,i.language.toUpperCase()),list:t,type:"language"}});s.unshift({value:-1,checked:!this.captions.toggled,title:i18n.get("disabled",this.config),list:t,type:"language"}),s.forEach(controls.createMenuItem.bind(this)),controls.updateSetting.call(this,"captions",t)}}},setSpeedMenu:function(e){var t=this;if(is$1.element(this.elements.settings.panels.speed)){var i=this.elements.settings.panels.speed.querySelector('[role="menu"]');is$1.array(e)?this.options.speed=e:(this.isHTML5||this.isVimeo)&&(this.options.speed=[.5,.75,1,1.25,1.5,1.75,2]),this.options.speed=this.options.speed.filter(function(e){return t.config.speed.options.includes(e)});var n=!is$1.empty(this.options.speed)&&this.options.speed.length>1;controls.toggleMenuButton.call(this,"speed",n),emptyElement(i),controls.checkMenu.call(this),n&&(this.options.speed.forEach(function(e){controls.createMenuItem.call(t,{value:e,list:i,type:"speed",title:controls.getLabel.call(t,"speed",e)})}),controls.updateSetting.call(this,"speed",i))}},checkMenu:function(){var e=this.elements.settings.buttons,t=!is$1.empty(e)&&Object.values(e).some(function(e){return!e.hidden});toggleHidden(this.elements.settings.menu,!t)},focusFirstMenuItem:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this.elements.settings.popup.hidden){var i=e;is$1.element(i)||(i=Object.values(this.elements.settings.panels).find(function(e){return!e.hidden}));var n=i.querySelector('[role^="menuitem"]');setFocus.call(this,n,t)}},toggleMenu:function(e){var t=this.elements.settings.popup,i=this.elements.buttons.settings;if(is$1.element(t)&&is$1.element(i)){var n=t.hidden,s=n;if(is$1.boolean(e))s=e;else if(is$1.keyboardEvent(e)&&27===e.which)s=!1;else if(is$1.event(e)){var a=t.contains(e.target);if(a||!a&&e.target!==i&&s)return}i.setAttribute("aria-expanded",s),toggleHidden(t,!s),toggleClass(this.elements.container,this.config.classNames.menu.open,s),s&&is$1.keyboardEvent(e)?controls.focusFirstMenuItem.call(this,null,!0):s||n||setFocus.call(this,i,is$1.keyboardEvent(e))}},getMenuSize:function(e){var t=e.cloneNode(!0);t.style.position="absolute",t.style.opacity=0,t.removeAttribute("hidden"),e.parentNode.appendChild(t);var i=t.scrollWidth,n=t.scrollHeight;return removeElement(t),{width:i,height:n}},showMenuPanel:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=document.getElementById("plyr-settings-".concat(this.id,"-").concat(t));if(is$1.element(n)){var s=n.parentNode,a=Array.from(s.children).find(function(e){return!e.hidden});if(support.transitions&&!support.reducedMotion){s.style.width="".concat(a.scrollWidth,"px"),s.style.height="".concat(a.scrollHeight,"px");var r=controls.getMenuSize.call(this,n);on.call(this,s,transitionEndEvent,function t(i){i.target===s&&["width","height"].includes(i.propertyName)&&(s.style.width="",s.style.height="",off.call(e,s,transitionEndEvent,t))}),s.style.width="".concat(r.width,"px"),s.style.height="".concat(r.height,"px")}toggleHidden(a,!0),toggleHidden(n,!1),controls.focusFirstMenuItem.call(this,n,i)}},setDownloadLink:function(){var e=this.elements.buttons.download;is$1.element(e)&&e.setAttribute("href",this.download)},create:function(e){var t=this,i=createElement("div",getAttributesFromSelector(this.config.selectors.controls.wrapper));if(this.config.controls.includes("restart")&&i.appendChild(controls.createButton.call(this,"restart")),this.config.controls.includes("rewind")&&i.appendChild(controls.createButton.call(this,"rewind")),this.config.controls.includes("play")&&i.appendChild(controls.createButton.call(this,"play")),this.config.controls.includes("fast-forward")&&i.appendChild(controls.createButton.call(this,"fast-forward")),this.config.controls.includes("progress")){var n=createElement("div",getAttributesFromSelector(this.config.selectors.progress));if(n.appendChild(controls.createRange.call(this,"seek",{id:"plyr-seek-".concat(e.id)})),n.appendChild(controls.createProgress.call(this,"buffer")),this.config.tooltips.seek){var s=createElement("span",{class:this.config.classNames.tooltip},"00:00");n.appendChild(s),this.elements.display.seekTooltip=s}this.elements.progress=n,i.appendChild(this.elements.progress)}if(this.config.controls.includes("current-time")&&i.appendChild(controls.createTime.call(this,"currentTime")),this.config.controls.includes("duration")&&i.appendChild(controls.createTime.call(this,"duration")),this.config.controls.includes("mute")||this.config.controls.includes("volume")){var a=createElement("div",{class:"plyr__volume"});if(this.config.controls.includes("mute")&&a.appendChild(controls.createButton.call(this,"mute")),this.config.controls.includes("volume")){var r={max:1,step:.05,value:this.config.volume};a.appendChild(controls.createRange.call(this,"volume",extend(r,{id:"plyr-volume-".concat(e.id)}))),this.elements.volume=a}i.appendChild(a)}if(this.config.controls.includes("captions")&&i.appendChild(controls.createButton.call(this,"captions")),this.config.controls.includes("settings")&&!is$1.empty(this.config.settings)){var o=createElement("div",{class:"plyr__menu",hidden:""});o.appendChild(controls.createButton.call(this,"settings",{"aria-haspopup":!0,"aria-controls":"plyr-settings-".concat(e.id),"aria-expanded":!1}));var l=createElement("div",{class:"plyr__menu__container",id:"plyr-settings-".concat(e.id),hidden:""}),c=createElement("div"),u=createElement("div",{id:"plyr-settings-".concat(e.id,"-home")}),d=createElement("div",{role:"menu"});u.appendChild(d),c.appendChild(u),this.elements.settings.panels.home=u,this.config.settings.forEach(function(i){var n=createElement("button",extend(getAttributesFromSelector(t.config.selectors.buttons.settings),{type:"button",class:"".concat(t.config.classNames.control," ").concat(t.config.classNames.control,"--forward"),role:"menuitem","aria-haspopup":!0,hidden:""}));controls.bindMenuItemShortcuts.call(t,n,i),on(n,"click",function(){controls.showMenuPanel.call(t,i,!1)});var s=createElement("span",null,i18n.get(i,t.config)),a=createElement("span",{class:t.config.classNames.menu.value});a.innerHTML=e[i],s.appendChild(a),n.appendChild(s),d.appendChild(n);var r=createElement("div",{id:"plyr-settings-".concat(e.id,"-").concat(i),hidden:""}),o=createElement("button",{type:"button",class:"".concat(t.config.classNames.control," ").concat(t.config.classNames.control,"--back")});o.appendChild(createElement("span",{"aria-hidden":!0},i18n.get(i,t.config))),o.appendChild(createElement("span",{class:t.config.classNames.hidden},i18n.get("menuBack",t.config))),on(r,"keydown",function(e){37===e.which&&(e.preventDefault(),e.stopPropagation(),controls.showMenuPanel.call(t,"home",!0))},!1),on(o,"click",function(){controls.showMenuPanel.call(t,"home",!1)}),r.appendChild(o),r.appendChild(createElement("div",{role:"menu"})),c.appendChild(r),t.elements.settings.buttons[i]=n,t.elements.settings.panels[i]=r}),l.appendChild(c),o.appendChild(l),i.appendChild(o),this.elements.settings.popup=l,this.elements.settings.menu=o}if(this.config.controls.includes("pip")&&support.pip&&i.appendChild(controls.createButton.call(this,"pip")),this.config.controls.includes("airplay")&&support.airplay&&i.appendChild(controls.createButton.call(this,"airplay")),this.config.controls.includes("download")){var h={element:"a",href:this.download,target:"_blank"},m=this.config.urls.download;!is$1.url(m)&&this.isEmbed&&extend(h,{icon:"logo-".concat(this.provider),label:this.provider}),i.appendChild(controls.createButton.call(this,"download",h))}return this.config.controls.includes("fullscreen")&&i.appendChild(controls.createButton.call(this,"fullscreen")),this.config.controls.includes("play-large")&&this.elements.container.appendChild(controls.createButton.call(this,"play-large")),this.elements.controls=i,this.isHTML5&&controls.setQualityMenu.call(this,html5.getQualityOptions.call(this)),controls.setSpeedMenu.call(this),i},inject:function(){var e=this;if(this.config.loadSprite){var t=controls.getIconUrl.call(this);t.cors&&loadSprite(t.url,"sprite-plyr")}this.id=Math.floor(1e4*Math.random());var i=null;this.elements.controls=null;var n={id:this.id,seektime:this.config.seekTime,title:this.config.title},s=!0;is$1.function(this.config.controls)&&(this.config.controls=this.config.controls.call(this,n)),this.config.controls||(this.config.controls=[]),is$1.element(this.config.controls)||is$1.string(this.config.controls)?i=this.config.controls:(i=controls.create.call(this,{id:this.id,seektime:this.config.seekTime,speed:this.speed,quality:this.quality,captions:captions.getLabel.call(this)}),s=!1);var a,r=function(e){var t=e;return Object.entries(n).forEach(function(e){var i=_slicedToArray(e,2),n=i[0],s=i[1];t=replaceAll(t,"{".concat(n,"}"),s)}),t};if(s&&(is$1.string(this.config.controls)?i=r(i):is$1.element(i)&&(i.innerHTML=r(i.innerHTML))),is$1.string(this.config.selectors.controls.container)&&(a=document.querySelector(this.config.selectors.controls.container)),is$1.element(a)||(a=this.elements.container),a[is$1.element(i)?"insertAdjacentElement":"insertAdjacentHTML"]("afterbegin",i),is$1.element(this.elements.controls)||controls.findElements.call(this),!is$1.empty(this.elements.buttons)){var o=function(t){var i=e.config.classNames.controlPressed;Object.defineProperty(t,"pressed",{enumerable:!0,get:function(){return hasClass(t,i)},set:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];toggleClass(t,i,e)}})};Object.values(this.elements.buttons).filter(Boolean).forEach(function(e){is$1.array(e)||is$1.nodeList(e)?Array.from(e).filter(Boolean).forEach(o):o(e)})}if(browser.isEdge&&repaint(a),this.config.tooltips.controls){var l=this.config,c=l.classNames,u=l.selectors,d="".concat(u.controls.wrapper," ").concat(u.labels," .").concat(c.hidden),h=getElements.call(this,d);Array.from(h).forEach(function(t){toggleClass(t,e.config.classNames.hidden,!1),toggleClass(t,e.config.classNames.tooltip,!0)})}}};function parseUrl(e){var t=e;if(!(arguments.length>1&&void 0!==arguments[1])||arguments[1]){var i=document.createElement("a");i.href=t,t=i.href}try{return new URL(t)}catch(e){return null}}function buildUrlParams(e){var t=new URLSearchParams;return is$1.object(e)&&Object.entries(e).forEach(function(e){var i=_slicedToArray(e,2),n=i[0],s=i[1];t.set(n,s)}),t}var captions={setup:function(){if(this.supported.ui)if(!this.isVideo||this.isYouTube||this.isHTML5&&!support.textTracks)is$1.array(this.config.controls)&&this.config.controls.includes("settings")&&this.config.settings.includes("captions")&&controls.setCaptionsMenu.call(this);else{if(is$1.element(this.elements.captions)||(this.elements.captions=createElement("div",getAttributesFromSelector(this.config.selectors.captions)),insertAfter(this.elements.captions,this.elements.wrapper)),browser.isIE&&window.URL){var e=this.media.querySelectorAll("track");Array.from(e).forEach(function(e){var t=e.getAttribute("src"),i=parseUrl(t);null!==i&&i.hostname!==window.location.href.hostname&&["http:","https:"].includes(i.protocol)&&fetch(t,"blob").then(function(t){e.setAttribute("src",window.URL.createObjectURL(t))}).catch(function(){removeElement(e)})})}var t=dedupe((navigator.languages||[navigator.language||navigator.userLanguage||"en"]).map(function(e){return e.split("-")[0]})),i=(this.storage.get("language")||this.config.captions.language||"auto").toLowerCase();if("auto"===i)i=_slicedToArray(t,1)[0];var n=this.storage.get("captions");if(is$1.boolean(n)||(n=this.config.captions.active),Object.assign(this.captions,{toggled:!1,active:n,language:i,languages:t}),this.isHTML5){var s=this.config.captions.update?"addtrack removetrack":"removetrack";on.call(this,this.media.textTracks,s,captions.update.bind(this))}setTimeout(captions.update.bind(this),0)}},update:function(){var e=this,t=captions.getTracks.call(this,!0),i=this.captions,n=i.active,s=i.language,a=i.meta,r=i.currentTrackNode,o=Boolean(t.find(function(e){return e.language===s}));this.isHTML5&&this.isVideo&&t.filter(function(e){return!a.get(e)}).forEach(function(t){e.debug.log("Track added",t),a.set(t,{default:"showing"===t.mode}),t.mode="hidden",on.call(e,t,"cuechange",function(){return captions.updateCues.call(e)})}),(o&&this.language!==s||!t.includes(r))&&(captions.setLanguage.call(this,s),captions.toggle.call(this,n&&o)),toggleClass(this.elements.container,this.config.classNames.captions.enabled,!is$1.empty(t)),(this.config.controls||[]).includes("settings")&&this.config.settings.includes("captions")&&controls.setCaptionsMenu.call(this)},toggle:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(this.supported.ui){var i=this.captions.toggled,n=this.config.classNames.captions.active,s=is$1.nullOrUndefined(e)?!i:e;if(s!==i){if(t||(this.captions.active=s,this.storage.set({captions:s})),!this.language&&s&&!t){var a=captions.getTracks.call(this),r=captions.findTrack.call(this,[this.captions.language].concat(_toConsumableArray(this.captions.languages)),!0);return this.captions.language=r.language,void captions.set.call(this,a.indexOf(r))}this.elements.buttons.captions&&(this.elements.buttons.captions.pressed=s),toggleClass(this.elements.container,n,s),this.captions.toggled=s,controls.updateSetting.call(this,"captions"),triggerEvent.call(this,this.media,s?"captionsenabled":"captionsdisabled")}}},set:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=captions.getTracks.call(this);if(-1!==e)if(is$1.number(e))if(e in i){if(this.captions.currentTrack!==e){this.captions.currentTrack=e;var n=i[e],s=(n||{}).language;this.captions.currentTrackNode=n,controls.updateSetting.call(this,"captions"),t||(this.captions.language=s,this.storage.set({language:s})),this.isVimeo&&this.embed.enableTextTrack(s),triggerEvent.call(this,this.media,"languagechange")}captions.toggle.call(this,!0,t),this.isHTML5&&this.isVideo&&captions.updateCues.call(this)}else this.debug.warn("Track not found",e);else this.debug.warn("Invalid caption argument",e);else captions.toggle.call(this,!1,t)},setLanguage:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(is$1.string(e)){var i=e.toLowerCase();this.captions.language=i;var n=captions.getTracks.call(this),s=captions.findTrack.call(this,[i]);captions.set.call(this,n.indexOf(s),t)}else this.debug.warn("Invalid language argument",e)},getTracks:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return Array.from((this.media||{}).textTracks||[]).filter(function(i){return!e.isHTML5||t||e.captions.meta.has(i)}).filter(function(e){return["captions","subtitles"].includes(e.kind)})},findTrack:function(e){var t,i=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=captions.getTracks.call(this),a=function(e){return Number((i.captions.meta.get(e)||{}).default)},r=Array.from(s).sort(function(e,t){return a(t)-a(e)});return e.every(function(e){return!(t=r.find(function(t){return t.language===e}))}),t||(n?r[0]:void 0)},getCurrentTrack:function(){return captions.getTracks.call(this)[this.currentTrack]},getLabel:function(e){var t=e;return!is$1.track(t)&&support.textTracks&&this.captions.toggled&&(t=captions.getCurrentTrack.call(this)),is$1.track(t)?is$1.empty(t.label)?is$1.empty(t.language)?i18n.get("enabled",this.config):e.language.toUpperCase():t.label:i18n.get("disabled",this.config)},updateCues:function(e){if(this.supported.ui)if(is$1.element(this.elements.captions))if(is$1.nullOrUndefined(e)||Array.isArray(e)){var t=e;if(!t){var i=captions.getCurrentTrack.call(this);t=Array.from((i||{}).activeCues||[]).map(function(e){return e.getCueAsHTML()}).map(getHTML)}var n=t.map(function(e){return e.trim()}).join("\n");if(n!==this.elements.captions.innerHTML){emptyElement(this.elements.captions);var s=createElement("span",getAttributesFromSelector(this.config.selectors.caption));s.innerHTML=n,this.elements.captions.appendChild(s),triggerEvent.call(this,this.media,"cuechange")}}else this.debug.warn("updateCues: Invalid input",e);else this.debug.warn("No captions element to render to")}},defaults$1={enabled:!0,title:"",debug:!1,autoplay:!1,autopause:!0,playsinline:!0,seekTime:10,volume:1,muted:!1,duration:null,displayDuration:!0,invertTime:!0,toggleInvert:!0,ratio:"16:9",clickToPlay:!0,hideControls:!0,resetOnEnd:!1,disableContextMenu:!0,loadSprite:!0,iconPrefix:"plyr",iconUrl:"../vendor/plyr/plyr.svg",blankVideo:"../vendor/plyr/blank.mp4",quality:{default:576,options:[4320,2880,2160,1440,1080,720,576,480,360,240]},loop:{active:!1},speed:{selected:1,options:[.5,.75,1,1.25,1.5,1.75,2]},keyboard:{focused:!0,global:!1},tooltips:{controls:!1,seek:!0},captions:{active:!1,language:"auto",update:!1},fullscreen:{enabled:!0,fallback:!0,iosNative:!1},storage:{enabled:!0,key:"plyr"},controls:["play-large","play","progress","current-time","mute","volume","captions","settings","pip","airplay","fullscreen"],settings:["captions","quality","speed"],i18n:{restart:"Restart",rewind:"Rewind {seektime}s",play:"Play",pause:"Pause",fastForward:"Forward {seektime}s",seek:"Seek",seekLabel:"{currentTime} of {duration}",played:"Played",buffered:"Buffered",currentTime:"Current time",duration:"Duration",volume:"Volume",mute:"Mute",unmute:"Unmute",enableCaptions:"Enable captions",disableCaptions:"Disable captions",download:"Download",enterFullscreen:"Enter fullscreen",exitFullscreen:"Exit fullscreen",frameTitle:"Player for {title}",captions:"Captions",settings:"Settings",menuBack:"Go back to previous menu",speed:"Speed",normal:"Normal",quality:"Quality",loop:"Loop",start:"Start",end:"End",all:"All",reset:"Reset",disabled:"Disabled",enabled:"Enabled",advertisement:"Ad",qualityBadge:{2160:"4K",1440:"HD",1080:"HD",720:"HD",576:"SD",480:"SD"}},urls:{download:null,vimeo:{sdk:"https://player.vimeo.com/api/player.js",iframe:"https://player.vimeo.com/video/{0}?{1}",api:"https://vimeo.com/api/v2/video/{0}.json"},youtube:{sdk:"https://www.youtube.com/iframe_api",api:"https://www.googleapis.com/youtube/v3/videos?id={0}&key={1}&fields=items(snippet(title))&part=snippet"},googleIMA:{sdk:"https://imasdk.googleapis.com/js/sdkloader/ima3.js"}},listeners:{seek:null,play:null,pause:null,restart:null,rewind:null,fastForward:null,mute:null,volume:null,captions:null,download:null,fullscreen:null,pip:null,airplay:null,speed:null,quality:null,loop:null,language:null},events:["ended","progress","stalled","playing","waiting","canplay","canplaythrough","loadstart","loadeddata","loadedmetadata","timeupdate","volumechange","play","pause","error","seeking","seeked","emptied","ratechange","cuechange","download","enterfullscreen","exitfullscreen","captionsenabled","captionsdisabled","languagechange","controlshidden","controlsshown","ready","statechange","qualitychange","adsloaded","adscontentpause","adscontentresume","adstarted","adsmidpoint","adscomplete","adsallcomplete","adsimpression","adsclick"],selectors:{editable:"input, textarea, select, [contenteditable]",container:".plyr",controls:{container:null,wrapper:".plyr__controls"},labels:"[data-plyr]",buttons:{play:'[data-plyr="play"]',pause:'[data-plyr="pause"]',restart:'[data-plyr="restart"]',rewind:'[data-plyr="rewind"]',fastForward:'[data-plyr="fast-forward"]',mute:'[data-plyr="mute"]',captions:'[data-plyr="captions"]',download:'[data-plyr="download"]',fullscreen:'[data-plyr="fullscreen"]',pip:'[data-plyr="pip"]',airplay:'[data-plyr="airplay"]',settings:'[data-plyr="settings"]',loop:'[data-plyr="loop"]'},inputs:{seek:'[data-plyr="seek"]',volume:'[data-plyr="volume"]',speed:'[data-plyr="speed"]',language:'[data-plyr="language"]',quality:'[data-plyr="quality"]'},display:{currentTime:".plyr__time--current",duration:".plyr__time--duration",buffer:".plyr__progress__buffer",loop:".plyr__progress__loop",volume:".plyr__volume--display"},progress:".plyr__progress",captions:".plyr__captions",caption:".plyr__caption",menu:{quality:".js-plyr__menu__list--quality"}},classNames:{type:"plyr--{0}",provider:"plyr--{0}",video:"plyr__video-wrapper",embed:"plyr__video-embed",embedContainer:"plyr__video-embed__container",poster:"plyr__poster",posterEnabled:"plyr__poster-enabled",ads:"plyr__ads",control:"plyr__control",controlPressed:"plyr__control--pressed",playing:"plyr--playing",paused:"plyr--paused",stopped:"plyr--stopped",loading:"plyr--loading",hover:"plyr--hover",tooltip:"plyr__tooltip",cues:"plyr__cues",hidden:"plyr__sr-only",hideControls:"plyr--hide-controls",isIos:"plyr--is-ios",isTouch:"plyr--is-touch",uiSupported:"plyr--full-ui",noTransition:"plyr--no-transition",display:{time:"plyr__time"},menu:{value:"plyr__menu__value",badge:"plyr__badge",open:"plyr--menu-open"},captions:{enabled:"plyr--captions-enabled",active:"plyr--captions-active"},fullscreen:{enabled:"plyr--fullscreen-enabled",fallback:"plyr--fullscreen-fallback"},pip:{supported:"plyr--pip-supported",active:"plyr--pip-active"},airplay:{supported:"plyr--airplay-supported",active:"plyr--airplay-active"},tabFocus:"plyr__tab-focus",previewThumbnails:{thumbContainer:"plyr__preview-thumb",thumbContainerShown:"plyr__preview-thumb--is-shown",imageContainer:"plyr__preview-thumb__image-container",timeContainer:"plyr__preview-thumb__time-container",scrubbingContainer:"plyr__preview-scrubbing",scrubbingContainerShown:"plyr__preview-scrubbing--is-shown"}},attributes:{embed:{provider:"data-plyr-provider",id:"data-plyr-embed-id"}},keys:{google:null},ads:{enabled:!1,publisherId:"",tagUrl:""},previewThumbnails:{enabled:!1,src:""},vimeo:{byline:!1,portrait:!1,title:!1,speed:!0,transparent:!1},youtube:{noCookie:!1,rel:0,showinfo:0,iv_load_policy:3,modestbranding:1}},pip={active:"picture-in-picture",inactive:"inline"},providers={html5:"html5",youtube:"youtube",vimeo:"vimeo"},types={audio:"audio",video:"video"};function getProviderByUrl(e){return/^(https?:\/\/)?(www\.)?(youtube\.com|youtube-nocookie\.com|youtu\.?be)\/.+$/.test(e)?providers.youtube:/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(e)?providers.vimeo:null}var noop=function(){},Console=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];_classCallCheck(this,e),this.enabled=window.console&&t,this.enabled&&this.log("Debugging enabled")}return _createClass(e,[{key:"log",get:function(){return this.enabled?Function.prototype.bind.call(console.log,console):noop}},{key:"warn",get:function(){return this.enabled?Function.prototype.bind.call(console.warn,console):noop}},{key:"error",get:function(){return this.enabled?Function.prototype.bind.call(console.error,console):noop}}]),e}();function onChange(){if(this.enabled){var e=this.player.elements.buttons.fullscreen;is$1.element(e)&&(e.pressed=this.active),triggerEvent.call(this.player,this.target,this.active?"enterfullscreen":"exitfullscreen",!0),browser.isIos||trapFocus.call(this.player,this.target,this.active)}}function toggleFallback(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(t?this.scrollPosition={x:window.scrollX||0,y:window.scrollY||0}:window.scrollTo(this.scrollPosition.x,this.scrollPosition.y),document.body.style.overflow=t?"hidden":"",toggleClass(this.target,this.player.config.classNames.fullscreen.fallback,t),browser.isIos){var i=document.head.querySelector('meta[name="viewport"]'),n="viewport-fit=cover";i||(i=document.createElement("meta")).setAttribute("name","viewport");var s=is$1.string(i.content)&&i.content.includes(n);t?(this.cleanupViewport=!s,s||(i.content+=",".concat(n))):this.cleanupViewport&&(i.content=i.content.split(",").filter(function(e){return e.trim()!==n}).join(",")),setTimeout(function(){return repaint(e.target)},100)}onChange.call(this)}var Fullscreen=function(){function e(t){var i=this;_classCallCheck(this,e),this.player=t,this.prefix=e.prefix,this.property=e.property,this.scrollPosition={x:0,y:0},this.forceFallback="force"===t.config.fullscreen.fallback,on.call(this.player,document,"ms"===this.prefix?"MSFullscreenChange":"".concat(this.prefix,"fullscreenchange"),function(){onChange.call(i)}),on.call(this.player,this.player.elements.container,"dblclick",function(e){is$1.element(i.player.elements.controls)&&i.player.elements.controls.contains(e.target)||i.toggle()}),this.update()}return _createClass(e,[{key:"update",value:function(){var t;this.enabled?(t=this.forceFallback?"Fallback (forced)":e.native?"Native":"Fallback",this.player.debug.log("".concat(t," fullscreen enabled"))):this.player.debug.log("Fullscreen not supported and fallback disabled");toggleClass(this.player.elements.container,this.player.config.classNames.fullscreen.enabled,this.enabled)}},{key:"enter",value:function(){this.enabled&&(browser.isIos&&this.player.config.fullscreen.iosNative?this.target.webkitEnterFullscreen():!e.native||this.forceFallback?toggleFallback.call(this,!0):this.prefix?is$1.empty(this.prefix)||this.target["".concat(this.prefix,"Request").concat(this.property)]():this.target.requestFullscreen())}},{key:"exit",value:function(){if(this.enabled)if(browser.isIos&&this.player.config.fullscreen.iosNative)this.target.webkitExitFullscreen(),this.player.play();else if(!e.native||this.forceFallback)toggleFallback.call(this,!1);else if(this.prefix){if(!is$1.empty(this.prefix)){var t="moz"===this.prefix?"Cancel":"Exit";document["".concat(this.prefix).concat(t).concat(this.property)]()}}else(document.cancelFullScreen||document.exitFullscreen).call(document)}},{key:"toggle",value:function(){this.active?this.exit():this.enter()}},{key:"usingNative",get:function(){return e.native&&!this.forceFallback}},{key:"enabled",get:function(){return(e.native||this.player.config.fullscreen.fallback)&&this.player.config.fullscreen.enabled&&this.player.supported.ui&&this.player.isVideo}},{key:"active",get:function(){return!!this.enabled&&(!e.native||this.forceFallback?hasClass(this.target,this.player.config.classNames.fullscreen.fallback):(this.prefix?document["".concat(this.prefix).concat(this.property,"Element")]:document.fullscreenElement)===this.target)}},{key:"target",get:function(){return browser.isIos&&this.player.config.fullscreen.iosNative?this.player.media:this.player.elements.container}}],[{key:"native",get:function(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}},{key:"prefix",get:function(){if(is$1.function(document.exitFullscreen))return"";var e="";return["webkit","moz","ms"].some(function(t){return!(!is$1.function(document["".concat(t,"ExitFullscreen")])&&!is$1.function(document["".concat(t,"CancelFullScreen")]))&&(e=t,!0)}),e}},{key:"property",get:function(){return"moz"===this.prefix?"FullScreen":"Fullscreen"}}]),e}();function loadImage(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return new Promise(function(i,n){var s=new Image,a=function(){delete s.onload,delete s.onerror,(s.naturalWidth>=t?i:n)(s)};Object.assign(s,{onload:a,onerror:a,src:e})})}var ui={addStyleHook:function(){toggleClass(this.elements.container,this.config.selectors.container.replace(".",""),!0),toggleClass(this.elements.container,this.config.classNames.uiSupported,this.supported.ui)},toggleNativeControls:function(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]&&this.isHTML5?this.media.setAttribute("controls",""):this.media.removeAttribute("controls")},build:function(){var e=this;if(this.listeners.media(),!this.supported.ui)return this.debug.warn("Basic support only for ".concat(this.provider," ").concat(this.type)),void ui.toggleNativeControls.call(this,!0);is$1.element(this.elements.controls)||(controls.inject.call(this),this.listeners.controls()),ui.toggleNativeControls.call(this),this.isHTML5&&captions.setup.call(this),this.volume=null,this.muted=null,this.speed=null,this.loop=null,this.quality=null,controls.updateVolume.call(this),controls.timeUpdate.call(this),ui.checkPlaying.call(this),toggleClass(this.elements.container,this.config.classNames.pip.supported,support.pip&&this.isHTML5&&this.isVideo),toggleClass(this.elements.container,this.config.classNames.airplay.supported,support.airplay&&this.isHTML5),toggleClass(this.elements.container,this.config.classNames.isIos,browser.isIos),toggleClass(this.elements.container,this.config.classNames.isTouch,this.touch),this.ready=!0,setTimeout(function(){triggerEvent.call(e,e.media,"ready")},0),ui.setTitle.call(this),this.poster&&ui.setPoster.call(this,this.poster,!1).catch(function(){}),this.config.duration&&controls.durationUpdate.call(this)},setTitle:function(){var e=i18n.get("play",this.config);if(is$1.string(this.config.title)&&!is$1.empty(this.config.title)&&(e+=", ".concat(this.config.title)),Array.from(this.elements.buttons.play||[]).forEach(function(t){t.setAttribute("aria-label",e)}),this.isEmbed){var t=getElement.call(this,"iframe");if(!is$1.element(t))return;var i=is$1.empty(this.config.title)?"video":this.config.title,n=i18n.get("frameTitle",this.config);t.setAttribute("title",n.replace("{title}",i))}},togglePoster:function(e){toggleClass(this.elements.container,this.config.classNames.posterEnabled,e)},setPoster:function(e){var t=this;return arguments.length>1&&void 0!==arguments[1]&&!arguments[1]||!this.poster?(this.media.setAttribute("poster",e),ready.call(this).then(function(){return loadImage(e)}).catch(function(i){throw e===t.poster&&ui.togglePoster.call(t,!1),i}).then(function(){if(e!==t.poster)throw new Error("setPoster cancelled by later call to setPoster")}).then(function(){return Object.assign(t.elements.poster.style,{backgroundImage:"url('".concat(e,"')"),backgroundSize:""}),ui.togglePoster.call(t,!0),e})):Promise.reject(new Error("Poster already set"))},checkPlaying:function(e){var t=this;toggleClass(this.elements.container,this.config.classNames.playing,this.playing),toggleClass(this.elements.container,this.config.classNames.paused,this.paused),toggleClass(this.elements.container,this.config.classNames.stopped,this.stopped),Array.from(this.elements.buttons.play||[]).forEach(function(e){e.pressed=t.playing}),is$1.event(e)&&"timeupdate"===e.type||ui.toggleControls.call(this)},checkLoading:function(e){var t=this;this.loading=["stalled","waiting"].includes(e.type),clearTimeout(this.timers.loading),this.timers.loading=setTimeout(function(){toggleClass(t.elements.container,t.config.classNames.loading,t.loading),ui.toggleControls.call(t)},this.loading?250:0)},toggleControls:function(e){var t=this.elements.controls;if(t&&this.config.hideControls){var i=this.touch&&this.lastSeekTime+2e3>Date.now();this.toggleControls(Boolean(e||this.loading||this.paused||t.pressed||t.hover||i))}}};function setAspectRatio(e){var t=e;is$1.string(t)||is$1.nullOrUndefined(this.embed)||(t=this.embed.ratio),is$1.string(t)||(t=this.config.ratio);var i=_slicedToArray(t.split(":").map(Number),2),n=100/i[0]*i[1];if(this.elements.wrapper.style.paddingBottom="".concat(n,"%"),this.isVimeo&&this.supported.ui){var s=(240-n)/4.8;this.media.style.transform="translateY(-".concat(s,"%)")}return{padding:n,ratio:t}}var Listeners=function(){function e(t){_classCallCheck(this,e),this.player=t,this.lastKey=null,this.focusTimer=null,this.lastKeyDown=null,this.handleKey=this.handleKey.bind(this),this.toggleMenu=this.toggleMenu.bind(this),this.setTabFocus=this.setTabFocus.bind(this),this.firstTouch=this.firstTouch.bind(this)}return _createClass(e,[{key:"handleKey",value:function(e){var t=this.player,i=t.elements,n=e.keyCode?e.keyCode:e.which,s="keydown"===e.type,a=s&&n===this.lastKey;if(!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)&&is$1.number(n)){if(s){var r=document.activeElement;if(is$1.element(r)){var o=t.config.selectors.editable;if(r!==i.inputs.seek&&matches$1(r,o))return;if(32===e.which&&matches$1(r,'button, [role^="menuitem"]'))return}switch([32,37,38,39,40,48,49,50,51,52,53,54,56,57,67,70,73,75,76,77,79].includes(n)&&(e.preventDefault(),e.stopPropagation()),n){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:a||(t.currentTime=t.duration/10*(n-48));break;case 32:case 75:a||t.togglePlay();break;case 38:t.increaseVolume(.1);break;case 40:t.decreaseVolume(.1);break;case 77:a||(t.muted=!t.muted);break;case 39:t.forward();break;case 37:t.rewind();break;case 70:t.fullscreen.toggle();break;case 67:a||t.toggleCaptions();break;case 76:t.loop=!t.loop}27===n&&!t.fullscreen.usingNative&&t.fullscreen.active&&t.fullscreen.toggle(),this.lastKey=n}else this.lastKey=null}}},{key:"toggleMenu",value:function(e){controls.toggleMenu.call(this.player,e)}},{key:"firstTouch",value:function(){var e=this.player,t=e.elements;e.touch=!0,toggleClass(t.container,e.config.classNames.isTouch,!0)}},{key:"setTabFocus",value:function(e){var t=this.player,i=t.elements;if(clearTimeout(this.focusTimer),"keydown"!==e.type||9===e.which){"keydown"===e.type&&(this.lastKeyDown=e.timeStamp);var n,s=e.timeStamp-this.lastKeyDown<=20;if("focus"!==e.type||s)n=t.config.classNames.tabFocus,toggleClass(getElements.call(t,".".concat(n)),n,!1),this.focusTimer=setTimeout(function(){var e=document.activeElement;i.container.contains(e)&&toggleClass(document.activeElement,t.config.classNames.tabFocus,!0)},10)}}},{key:"global",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=this.player;t.config.keyboard.global&&toggleListener.call(t,window,"keydown keyup",this.handleKey,e,!1),toggleListener.call(t,document.body,"click",this.toggleMenu,e),once.call(t,document.body,"touchstart",this.firstTouch),toggleListener.call(t,document.body,"keydown focus blur",this.setTabFocus,e,!1,!0)}},{key:"container",value:function(){var e=this.player,t=e.config,i=e.elements,n=e.timers;!t.keyboard.global&&t.keyboard.focused&&on.call(e,i.container,"keydown keyup",this.handleKey,!1),on.call(e,i.container,"mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen",function(t){var s=i.controls;s&&"enterfullscreen"===t.type&&(s.pressed=!1,s.hover=!1);var a=0;["touchstart","touchmove","mousemove"].includes(t.type)&&(ui.toggleControls.call(e,!0),a=e.touch?3e3:2e3),clearTimeout(n.controls),n.controls=setTimeout(function(){return ui.toggleControls.call(e,!1)},a)});var s=function(t){if(!t)return setAspectRatio.call(e);var n=i.container.getBoundingClientRect(),s=n.width,a=n.height;return setAspectRatio.call(e,"".concat(s,":").concat(a))},a=function(){window.clearTimeout(n.resized),n.resized=window.setTimeout(s,50)};on.call(e,i.container,"enterfullscreen exitfullscreen",function(t){var n=e.fullscreen,r=n.target,o=n.usingNative;if(e.isEmbed&&r===i.container){var l="enterfullscreen"===t.type,c=s(l);c.padding;!function(t,i,n){if(e.isVimeo){var s=e.elements.wrapper.firstChild,a=_slicedToArray(t.split(":").map(Number),2)[1],r=_slicedToArray(e.embed.ratio.split(":").map(Number),2),o=r[0],l=r[1];s.style.maxWidth=n?"".concat(a/l*o,"px"):null,s.style.margin=n?"0 auto":null}}(c.ratio,0,l),o||(l?on.call(e,window,"resize",a):off.call(e,window,"resize",a))}})}},{key:"media",value:function(){var e=this,t=this.player,i=t.elements;if(on.call(t,t.media,"timeupdate seeking seeked",function(e){return controls.timeUpdate.call(t,e)}),on.call(t,t.media,"durationchange loadeddata loadedmetadata",function(e){return controls.durationUpdate.call(t,e)}),on.call(t,t.media,"canplay loadeddata",function(){toggleHidden(i.volume,!t.hasAudio),toggleHidden(i.buttons.mute,!t.hasAudio)}),on.call(t,t.media,"ended",function(){t.isHTML5&&t.isVideo&&t.config.resetOnEnd&&t.restart()}),on.call(t,t.media,"progress playing seeking seeked",function(e){return controls.updateProgress.call(t,e)}),on.call(t,t.media,"volumechange",function(e){return controls.updateVolume.call(t,e)}),on.call(t,t.media,"playing play pause ended emptied timeupdate",function(e){return ui.checkPlaying.call(t,e)}),on.call(t,t.media,"waiting canplay seeked playing",function(e){return ui.checkLoading.call(t,e)}),t.supported.ui&&t.config.clickToPlay&&!t.isAudio){var n=getElement.call(t,".".concat(t.config.classNames.video));if(!is$1.element(n))return;on.call(t,i.container,"click",function(s){([i.container,n].includes(s.target)||n.contains(s.target))&&(t.touch&&t.config.hideControls||(t.ended?(e.proxy(s,t.restart,"restart"),e.proxy(s,t.play,"play")):e.proxy(s,t.togglePlay,"play")))})}t.supported.ui&&t.config.disableContextMenu&&on.call(t,i.wrapper,"contextmenu",function(e){e.preventDefault()},!1),on.call(t,t.media,"volumechange",function(){t.storage.set({volume:t.volume,muted:t.muted})}),on.call(t,t.media,"ratechange",function(){controls.updateSetting.call(t,"speed"),t.storage.set({speed:t.speed})}),on.call(t,t.media,"qualitychange",function(e){controls.updateSetting.call(t,"quality",null,e.detail.quality)}),on.call(t,t.media,"ready qualitychange",function(){controls.setDownloadLink.call(t)});var s=t.config.events.concat(["keyup","keydown"]).join(" ");on.call(t,t.media,s,function(e){var n=e.detail,s=void 0===n?{}:n;"error"===e.type&&(s=t.media.error),triggerEvent.call(t,i.container,e.type,!0,s)})}},{key:"proxy",value:function(e,t,i){var n=this.player,s=n.config.listeners[i],a=!0;is$1.function(s)&&(a=s.call(n,e)),a&&is$1.function(t)&&t.call(n,e)}},{key:"bind",value:function(e,t,i,n){var s=this,a=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.player,o=r.config.listeners[n],l=is$1.function(o);on.call(r,e,t,function(e){return s.proxy(e,i,n)},a&&!l)}},{key:"controls",value:function(){var e=this,t=this.player,i=t.elements,n=browser.isIE?"change":"input";if(i.buttons.play&&Array.from(i.buttons.play).forEach(function(i){e.bind(i,"click",t.togglePlay,"play")}),this.bind(i.buttons.restart,"click",t.restart,"restart"),this.bind(i.buttons.rewind,"click",t.rewind,"rewind"),this.bind(i.buttons.fastForward,"click",t.forward,"fastForward"),this.bind(i.buttons.mute,"click",function(){t.muted=!t.muted},"mute"),this.bind(i.buttons.captions,"click",function(){return t.toggleCaptions()}),this.bind(i.buttons.download,"click",function(){triggerEvent.call(t,t.media,"download")},"download"),this.bind(i.buttons.fullscreen,"click",function(){t.fullscreen.toggle()},"fullscreen"),this.bind(i.buttons.pip,"click",function(){t.pip="toggle"},"pip"),this.bind(i.buttons.airplay,"click",t.airplay,"airplay"),this.bind(i.buttons.settings,"click",function(e){e.stopPropagation(),controls.toggleMenu.call(t,e)}),this.bind(i.buttons.settings,"keyup",function(e){var i=e.which;[13,32].includes(i)&&(13!==i?(e.preventDefault(),e.stopPropagation(),controls.toggleMenu.call(t,e)):controls.focusFirstMenuItem.call(t,null,!0))},null,!1),this.bind(i.settings.menu,"keydown",function(e){27===e.which&&controls.toggleMenu.call(t,e)}),this.bind(i.inputs.seek,"mousedown mousemove",function(e){var t=i.progress.getBoundingClientRect(),n=100/t.width*(e.pageX-t.left);e.currentTarget.setAttribute("seek-value",n)}),this.bind(i.inputs.seek,"mousedown mouseup keydown keyup touchstart touchend",function(e){var i=e.currentTarget,n=e.keyCode?e.keyCode:e.which;if(!is$1.keyboardEvent(e)||39===n||37===n){t.lastSeekTime=Date.now();var s=i.hasAttribute("play-on-seeked"),a=["mouseup","touchend","keyup"].includes(e.type);s&&a?(i.removeAttribute("play-on-seeked"),t.play()):!a&&t.playing&&(i.setAttribute("play-on-seeked",""),t.pause())}}),browser.isIos){var s=getElements.call(t,'input[type="range"]');Array.from(s).forEach(function(t){return e.bind(t,n,function(e){return repaint(e.target)})})}this.bind(i.inputs.seek,n,function(e){var i=e.currentTarget,n=i.getAttribute("seek-value");is$1.empty(n)&&(n=i.value),i.removeAttribute("seek-value"),t.currentTime=n/i.max*t.duration},"seek"),this.bind(i.progress,"mouseenter mouseleave mousemove",function(e){return controls.updateSeekTooltip.call(t,e)}),this.bind(i.progress,"mousemove touchmove",function(e){var i=t.previewThumbnails;i&&i.loaded&&i.startMove(e)}),this.bind(i.progress,"mouseleave click",function(){var e=t.previewThumbnails;e&&e.loaded&&e.endMove(!1,!0)}),this.bind(i.progress,"mousedown touchstart",function(e){var i=t.previewThumbnails;i&&i.loaded&&i.startScrubbing(e)}),this.bind(i.progress,"mouseup touchend",function(e){var i=t.previewThumbnails;i&&i.loaded&&i.endScrubbing(e)}),browser.isWebkit&&Array.from(getElements.call(t,'input[type="range"]')).forEach(function(i){e.bind(i,"input",function(e){return controls.updateRangeFill.call(t,e.target)})}),t.config.toggleInvert&&!is$1.element(i.display.duration)&&this.bind(i.display.currentTime,"click",function(){0!==t.currentTime&&(t.config.invertTime=!t.config.invertTime,controls.timeUpdate.call(t))}),this.bind(i.inputs.volume,n,function(e){t.volume=e.target.value},"volume"),this.bind(i.controls,"mouseenter mouseleave",function(e){i.controls.hover=!t.touch&&"mouseenter"===e.type}),this.bind(i.controls,"mousedown mouseup touchstart touchend touchcancel",function(e){i.controls.pressed=["mousedown","touchstart"].includes(e.type)}),this.bind(i.controls,"focusin",function(){var i=t.config,n=t.elements,s=t.timers;toggleClass(n.controls,i.classNames.noTransition,!0),ui.toggleControls.call(t,!0),setTimeout(function(){toggleClass(n.controls,i.classNames.noTransition,!1)},0);var a=e.touch?3e3:4e3;clearTimeout(s.controls),s.controls=setTimeout(function(){return ui.toggleControls.call(t,!1)},a)}),this.bind(i.inputs.volume,"wheel",function(e){var i=e.webkitDirectionInvertedFromDevice,n=_slicedToArray([e.deltaX,-e.deltaY].map(function(e){return i?-e:e}),2),s=n[0],a=n[1],r=Math.sign(Math.abs(s)>Math.abs(a)?s:a);t.increaseVolume(r/50);var o=t.media.volume;(1===r&&o<1||-1===r&&o>0)&&e.preventDefault()},"volume",!1)}}]),e}(),commonjsGlobal="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function createCommonjsModule(e,t){return e(t={exports:{}},t.exports),t.exports}var loadjs_umd=createCommonjsModule(function(e,t){e.exports=function(){var e=function(){},t={},i={},n={};function s(e,t){if(e){var s=n[e];if(i[e]=t,s)for(;s.length;)s[0](e,t),s.splice(0,1)}}function a(t,i){t.call&&(t={success:t}),i.length?(t.error||e)(i):(t.success||e)(t)}function r(t,i,n,s){var a,o,l=document,c=n.async,u=(n.numRetries||0)+1,d=n.before||e,h=t.replace(/^(css|img)!/,"");s=s||0,/(^css!|\.css$)/.test(t)?(a=!0,(o=l.createElement("link")).rel="stylesheet",o.href=h):/(^img!|\.(png|gif|jpg|svg)$)/.test(t)?(o=l.createElement("img")).src=h:((o=l.createElement("script")).src=t,o.async=void 0===c||c),o.onload=o.onerror=o.onbeforeload=function(e){var l=e.type[0];if(a&&"hideFocus"in o)try{o.sheet.cssText.length||(l="e")}catch(e){18!=e.code&&(l="e")}if("e"==l&&(s+=1)0&&void 0!==arguments[0]&&arguments[0]))return clearInterval(this.countdownTimer),void this.elements.container.removeAttribute("data-badge-text");this.countdownTimer=setInterval(function(){var t=formatTime(Math.max(e.manager.getRemainingTime(),0)),i="".concat(i18n.get("advertisement",e.player.config)," - ").concat(t);e.elements.container.setAttribute("data-badge-text",i)},100)}},{key:"onAdsManagerLoaded",value:function(e){var t=this;if(this.enabled){var i=new google.ima.AdsRenderingSettings;i.restoreCustomPlaybackStateOnAdBreakComplete=!0,i.enablePreloading=!0,this.manager=e.getAdsManager(this.player,i),this.cuePoints=this.manager.getCuePoints(),this.manager.setVolume(this.player.volume),this.manager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,function(e){return t.onAdError(e)}),Object.keys(google.ima.AdEvent.Type).forEach(function(e){t.manager.addEventListener(google.ima.AdEvent.Type[e],function(e){return t.onAdEvent(e)})}),this.trigger("loaded")}}},{key:"addCuePoints",value:function(){var e=this;is$1.empty(this.cuePoints)||this.cuePoints.forEach(function(t){if(0!==t&&-1!==t&&t1?i-1:0),s=1;s ?)([0-9]{2}):([0-9]{2}):([0-9]{2}).([0-9]{2,3})/);a&&(i.startTime=60*Number(a[1])*60+60*Number(a[2])+Number(a[3])+Number("0.".concat(a[4])),i.endTime=60*Number(a[6])*60+60*Number(a[7])+Number(a[8])+Number("0.".concat(a[9])))}}),i.text&&t.push(i)}),t},PreviewThumbnails=function(){function e(t){_classCallCheck(this,e),this.player=t,this.thumbnails=[],this.loaded=!1,this.lastMouseMoveTime=Date.now(),this.mouseDown=!1,this.loadedImages=[],this.elements={thumb:{},scrubbing:{}},this.load()}return _createClass(e,[{key:"load",value:function(){var e=this;this.player.elements.display.seekTooltip&&(this.player.elements.display.seekTooltip.hidden=this.enabled),this.enabled&&this.getThumbnails().then(function(){e.render(),e.determineContainerAutoSizing(),e.loaded=!0})}},{key:"getThumbnails",value:function(){var e=this;return new Promise(function(t){var i=e.player.config.previewThumbnails.src;if(is$1.empty(i))throw new Error("Missing previewThumbnails.src config attribute");var n=(is$1.string(i)?[i]:i).map(function(t){return e.getThumbnail(t)});Promise.all(n).then(function(){e.thumbnails.sort(function(e,t){return e.height-t.height}),e.player.debug.log("Preview thumbnails",e.thumbnails),t()})})}},{key:"getThumbnail",value:function(e){var t=this;return new Promise(function(i){fetch(e).then(function(n){var s={frames:parseVtt(n),height:null,urlPrefix:""};s.frames[0].text.startsWith("/")||(s.urlPrefix=e.substring(0,e.lastIndexOf("/")+1));var a=new Image;a.onload=function(){s.height=a.naturalHeight,s.width=a.naturalWidth,t.thumbnails.push(s),i()},a.src=s.urlPrefix+s.frames[0].text})})}},{key:"startMove",value:function(e){if(this.loaded&&is$1.event(e)&&["touchmove","mousemove"].includes(e.type)&&this.player.media.duration){if("touchmove"===e.type)this.seekTime=this.player.media.duration*(this.player.elements.inputs.seek.value/100);else{var t=this.player.elements.progress.getBoundingClientRect(),i=100/t.width*(e.pageX-t.left);this.seekTime=this.player.media.duration*(i/100),this.seekTime<0&&(this.seekTime=0),this.seekTime>this.player.media.duration-1&&(this.seekTime=this.player.media.duration-1),this.mousePosX=e.pageX,this.elements.thumb.time.innerText=formatTime(this.seekTime)}this.showImageAtCurrentTime()}}},{key:"endMove",value:function(){this.toggleThumbContainer(!1,!0)}},{key:"startScrubbing",value:function(e){!1!==e.button&&0!==e.button||(this.mouseDown=!0,this.player.media.duration&&(this.toggleScrubbingContainer(!0),this.toggleThumbContainer(!1,!0),this.showImageAtCurrentTime()))}},{key:"endScrubbing",value:function(){var e=this;this.mouseDown=!1,Math.ceil(this.lastTime)===Math.ceil(this.player.media.currentTime)?this.toggleScrubbingContainer(!1):once.call(this.player,this.player.media,"timeupdate",function(){e.mouseDown||e.toggleScrubbingContainer(!1)})}},{key:"listeners",value:function(){var e=this;this.player.on("play",function(){e.toggleThumbContainer(!1,!0)}),this.player.on("seeked",function(){e.toggleThumbContainer(!1)}),this.player.on("timeupdate",function(){e.lastTime=e.player.media.currentTime})}},{key:"render",value:function(){this.elements.thumb.container=createElement("div",{class:this.player.config.classNames.previewThumbnails.thumbContainer}),this.elements.thumb.imageContainer=createElement("div",{class:this.player.config.classNames.previewThumbnails.imageContainer}),this.elements.thumb.container.appendChild(this.elements.thumb.imageContainer);var e=createElement("div",{class:this.player.config.classNames.previewThumbnails.timeContainer});this.elements.thumb.time=createElement("span",{},"00:00"),e.appendChild(this.elements.thumb.time),this.elements.thumb.container.appendChild(e),this.player.elements.progress.appendChild(this.elements.thumb.container),this.elements.scrubbing.container=createElement("div",{class:this.player.config.classNames.previewThumbnails.scrubbingContainer}),this.player.elements.wrapper.appendChild(this.elements.scrubbing.container)}},{key:"showImageAtCurrentTime",value:function(){var e=this;this.mouseDown?this.setScrubbingContainerSize():(this.toggleThumbContainer(!0),this.setThumbContainerSizeAndPos());var t=this.thumbnails[0].frames.findIndex(function(t){return e.seekTime>=t.startTime&&e.seekTime<=t.endTime}),i=t>=0,n=0;this.toggleThumbContainer(i),i&&(this.thumbnails.forEach(function(i,s){e.loadedImages.includes(i.frames[t].text)&&(n=s)}),t!==this.showingThumb&&(this.showingThumb=t,this.loadImage(n)))}},{key:"loadImage",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=this.showingThumb,n=this.thumbnails[t],s=n.urlPrefix,a=n.frames[i],r=n.frames[i].text,o=s+r;if(this.currentImageElement&&this.currentImageElement.dataset.filename===r)this.showImage(this.currentImageElement,a,t,i,r,!1),this.currentImageElement.dataset.index=i,this.removeOldImages(this.currentImageElement);else{this.loadingImage&&this.usingSprites&&(this.loadingImage.onload=null);var l=new Image;l.src=o,l.dataset.index=i,l.dataset.filename=r,this.showingThumbFilename=r,this.player.debug.log("Loading image: ".concat(o)),l.onload=function(){return e.showImage(l,a,t,i,r,!0)},this.loadingImage=l,this.removeOldImages(l)}}},{key:"showImage",value:function(e,t,i,n,s){var a=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];this.player.debug.log("Showing thumb: ".concat(s,". num: ").concat(n,". qual: ").concat(i,". newimg: ").concat(a)),this.setImageSizeAndOffset(e,t),a&&(this.currentImageContainer.appendChild(e),this.currentImageElement=e,this.loadedImages.includes(s)||this.loadedImages.push(s)),this.preloadNearby(n,!0).then(this.preloadNearby(n,!1)).then(this.getHigherQuality(i,e,t,s))}},{key:"removeOldImages",value:function(e){var t=this;Array.from(this.currentImageContainer.children).forEach(function(i){if("img"===i.tagName.toLowerCase()){var n=t.usingSprites?500:1e3;if(i.dataset.index!==e.dataset.index&&!i.dataset.deleting){i.dataset.deleting=!0;var s=t.currentImageContainer;setTimeout(function(){s.removeChild(i),t.player.debug.log("Removing thumb: ".concat(i.dataset.filename))},n)}}})}},{key:"preloadNearby",value:function(e){var t=this,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return new Promise(function(n){setTimeout(function(){var s=t.thumbnails[0].frames[e].text;if(t.showingThumbFilename===s){var a;a=i?t.thumbnails[0].frames.slice(e):t.thumbnails[0].frames.slice(0,e).reverse();var r=!1;a.forEach(function(e){var i=e.text;if(i!==s&&!t.loadedImages.includes(i)){r=!0,t.player.debug.log("Preloading thumb filename: ".concat(i));var a=t.thumbnails[0].urlPrefix+i,o=new Image;o.src=a,o.onload=function(){t.player.debug.log("Preloaded thumb filename: ".concat(i)),t.loadedImages.includes(i)||t.loadedImages.push(i),n()}}}),r||n()}},300)})}},{key:"getHigherQuality",value:function(e,t,i,n){var s=this;if(e0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.player.config.classNames.previewThumbnails.thumbContainerShown;this.elements.thumb.container.classList.toggle(i,e),!e&&t&&(this.showingThumb=null,this.showingThumbFilename=null)}},{key:"toggleScrubbingContainer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.player.config.classNames.previewThumbnails.scrubbingContainerShown;this.elements.scrubbing.container.classList.toggle(t,e),e||(this.showingThumb=null,this.showingThumbFilename=null)}},{key:"determineContainerAutoSizing",value:function(){this.elements.thumb.imageContainer.clientHeight>20&&(this.sizeSpecifiedInCSS=!0)}},{key:"setThumbContainerSizeAndPos",value:function(){if(!this.sizeSpecifiedInCSS){var e=Math.floor(this.thumbContainerHeight*this.thumbAspectRatio);this.elements.thumb.imageContainer.style.height="".concat(this.thumbContainerHeight,"px"),this.elements.thumb.imageContainer.style.width="".concat(e,"px")}this.setThumbContainerPos()}},{key:"setThumbContainerPos",value:function(){var e=this.player.elements.progress.getBoundingClientRect(),t=this.player.elements.container.getBoundingClientRect(),i=this.elements.thumb.container,n=t.left-e.left+10,s=t.right-e.left-i.clientWidth-10,a=this.mousePosX-e.left-i.clientWidth/2;as&&(a=s),i.style.left="".concat(a,"px")}},{key:"setScrubbingContainerSize",value:function(){this.elements.scrubbing.container.style.width="".concat(this.player.media.clientWidth,"px"),this.elements.scrubbing.container.style.height="".concat(this.player.media.clientWidth/this.thumbAspectRatio,"px")}},{key:"setImageSizeAndOffset",value:function(e,t){if(this.usingSprites){var i=this.thumbContainerHeight/t.h;e.style.height="".concat(Math.floor(e.naturalHeight*i),"px"),e.style.width="".concat(Math.floor(e.naturalWidth*i),"px"),e.style.left="-".concat(t.x*i,"px"),e.style.top="-".concat(t.y*i,"px")}}},{key:"enabled",get:function(){return this.player.isHTML5&&this.player.isVideo&&this.player.config.previewThumbnails.enabled}},{key:"currentImageContainer",get:function(){return this.mouseDown?this.elements.scrubbing.container:this.elements.thumb.imageContainer}},{key:"usingSprites",get:function(){return Object.keys(this.thumbnails[0].frames[0]).includes("w")}},{key:"thumbAspectRatio",get:function(){return this.usingSprites?this.thumbnails[0].frames[0].w/this.thumbnails[0].frames[0].h:this.thumbnails[0].width/this.thumbnails[0].height}},{key:"thumbContainerHeight",get:function(){return this.mouseDown?Math.floor(this.player.media.clientWidth/this.thumbAspectRatio):Math.floor(this.player.media.clientWidth/this.thumbAspectRatio/4)}},{key:"currentImageElement",get:function(){return this.mouseDown?this.currentScrubbingImageElement:this.currentThumbnailImageElement},set:function(e){this.mouseDown?this.currentScrubbingImageElement=e:this.currentThumbnailImageElement=e}}]),e}(),source={insertElements:function(e,t){var i=this;is$1.string(t)?insertElement(e,this.media,{src:t}):is$1.array(t)&&t.forEach(function(t){insertElement(e,i.media,t)})},change:function(e){var t=this;getDeep(e,"sources.length")?(html5.cancelRequests.call(this),this.destroy.call(this,function(){t.options.quality=[],removeElement(t.media),t.media=null,is$1.element(t.elements.container)&&t.elements.container.removeAttribute("class");var i=e.sources,n=e.type,s=_slicedToArray(i,1)[0],a=s.provider,r=void 0===a?providers.html5:a,o=s.src,l="html5"===r?n:"div",c="html5"===r?{}:{src:o};Object.assign(t,{provider:r,type:n,supported:support.check(n,r,t.config.playsinline),media:createElement(l,c)}),t.elements.container.appendChild(t.media),is$1.boolean(e.autoplay)&&(t.config.autoplay=e.autoplay),t.isHTML5&&(t.config.crossorigin&&t.media.setAttribute("crossorigin",""),t.config.autoplay&&t.media.setAttribute("autoplay",""),is$1.empty(e.poster)||(t.poster=e.poster),t.config.loop.active&&t.media.setAttribute("loop",""),t.config.muted&&t.media.setAttribute("muted",""),t.config.playsinline&&t.media.setAttribute("playsinline","")),ui.addStyleHook.call(t),t.isHTML5&&source.insertElements.call(t,"source",i),t.config.title=e.title,media.setup.call(t),t.isHTML5&&Object.keys(e).includes("tracks")&&source.insertElements.call(t,"track",e.tracks),(t.isHTML5||t.isEmbed&&!t.supported.ui)&&ui.build.call(t),t.isHTML5&&t.media.load(),t.previewThumbnails&&t.previewThumbnails.load(),t.fullscreen.update()},!0)):this.debug.warn("Invalid source format")}},Plyr=function(){function e(t,i){var n=this;if(_classCallCheck(this,e),this.timers={},this.ready=!1,this.loading=!1,this.failed=!1,this.touch=support.touch,this.media=t,is$1.string(this.media)&&(this.media=document.querySelectorAll(this.media)),(window.jQuery&&this.media instanceof jQuery||is$1.nodeList(this.media)||is$1.array(this.media))&&(this.media=this.media[0]),this.config=extend({},defaults$1,e.defaults,i||{},function(){try{return JSON.parse(n.media.getAttribute("data-plyr-config"))}catch(e){return{}}}()),this.elements={container:null,captions:null,buttons:{},display:{},progress:{},inputs:{},settings:{popup:null,menu:null,panels:{},buttons:{}}},this.captions={active:null,currentTrack:-1,meta:new WeakMap},this.fullscreen={active:!1},this.options={speed:[],quality:[]},this.debug=new Console(this.config.debug),this.debug.log("Config",this.config),this.debug.log("Support",support),!is$1.nullOrUndefined(this.media)&&is$1.element(this.media))if(this.media.plyr)this.debug.warn("Target already setup");else if(this.config.enabled)if(support.check().api){var s=this.media.cloneNode(!0);s.autoplay=!1,this.elements.original=s;var a=this.media.tagName.toLowerCase(),r=null,o=null;switch(a){case"div":if(r=this.media.querySelector("iframe"),is$1.element(r)){if(o=parseUrl(r.getAttribute("src")),this.provider=getProviderByUrl(o.toString()),this.elements.container=this.media,this.media=r,this.elements.container.className="",o.search.length){var l=["1","true"];l.includes(o.searchParams.get("autoplay"))&&(this.config.autoplay=!0),l.includes(o.searchParams.get("loop"))&&(this.config.loop.active=!0),this.isYouTube?(this.config.playsinline=l.includes(o.searchParams.get("playsinline")),this.config.youtube.hl=o.searchParams.get("hl")):this.config.playsinline=!0}}else this.provider=this.media.getAttribute(this.config.attributes.embed.provider),this.media.removeAttribute(this.config.attributes.embed.provider);if(is$1.empty(this.provider)||!Object.keys(providers).includes(this.provider))return void this.debug.error("Setup failed: Invalid provider");this.type=types.video;break;case"video":case"audio":this.type=a,this.provider=providers.html5,this.media.hasAttribute("crossorigin")&&(this.config.crossorigin=!0),this.media.hasAttribute("autoplay")&&(this.config.autoplay=!0),(this.media.hasAttribute("playsinline")||this.media.hasAttribute("webkit-playsinline"))&&(this.config.playsinline=!0),this.media.hasAttribute("muted")&&(this.config.muted=!0),this.media.hasAttribute("loop")&&(this.config.loop.active=!0);break;default:return void this.debug.error("Setup failed: unsupported type")}this.supported=support.check(this.type,this.provider,this.config.playsinline),this.supported.api?(this.eventListeners=[],this.listeners=new Listeners(this),this.storage=new Storage(this),this.media.plyr=this,is$1.element(this.elements.container)||(this.elements.container=createElement("div",{tabindex:0}),wrap(this.media,this.elements.container)),ui.addStyleHook.call(this),media.setup.call(this),this.config.debug&&on.call(this,this.elements.container,this.config.events.join(" "),function(e){n.debug.log("event: ".concat(e.type))}),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&ui.build.call(this),this.listeners.container(),this.listeners.global(),this.fullscreen=new Fullscreen(this),this.config.ads.enabled&&(this.ads=new Ads(this)),this.config.autoplay&&this.play(),this.lastSeekTime=0,this.config.previewThumbnails.enabled&&(this.previewThumbnails=new PreviewThumbnails(this))):this.debug.error("Setup failed: no support")}else this.debug.error("Setup failed: no support");else this.debug.error("Setup failed: disabled by config");else this.debug.error("Setup failed: no suitable element passed")}return _createClass(e,[{key:"play",value:function(){var e=this;return is$1.function(this.media.play)?(this.ads&&this.ads.enabled&&this.ads.managerPromise.then(function(){return e.ads.play()}).catch(function(){return e.media.play()}),this.media.play()):null}},{key:"pause",value:function(){this.playing&&is$1.function(this.media.pause)&&this.media.pause()}},{key:"togglePlay",value:function(e){(is$1.boolean(e)?e:!this.playing)?this.play():this.pause()}},{key:"stop",value:function(){this.isHTML5?(this.pause(),this.restart()):is$1.function(this.media.stop)&&this.media.stop()}},{key:"restart",value:function(){this.currentTime=0}},{key:"rewind",value:function(e){this.currentTime=this.currentTime-(is$1.number(e)?e:this.config.seekTime)}},{key:"forward",value:function(e){this.currentTime=this.currentTime+(is$1.number(e)?e:this.config.seekTime)}},{key:"increaseVolume",value:function(e){var t=this.media.muted?0:this.volume;this.volume=t+(is$1.number(e)?e:0)}},{key:"decreaseVolume",value:function(e){this.increaseVolume(-e)}},{key:"toggleCaptions",value:function(e){captions.toggle.call(this,e,!1)}},{key:"airplay",value:function(){support.airplay&&this.media.webkitShowPlaybackTargetPicker()}},{key:"toggleControls",value:function(e){if(this.supported.ui&&!this.isAudio){var t=hasClass(this.elements.container,this.config.classNames.hideControls),i=void 0===e?void 0:!e,n=toggleClass(this.elements.container,this.config.classNames.hideControls,i);if(n&&this.config.controls.includes("settings")&&!is$1.empty(this.config.settings)&&controls.toggleMenu.call(this,!1),n!==t){var s=n?"controlshidden":"controlsshown";triggerEvent.call(this,this.media,s)}return!n}return!1}},{key:"on",value:function(e,t){on.call(this,this.elements.container,e,t)}},{key:"once",value:function(e,t){once.call(this,this.elements.container,e,t)}},{key:"off",value:function(e,t){off(this.elements.container,e,t)}},{key:"destroy",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.ready){var n=function(){document.body.style.overflow="",t.embed=null,i?(Object.keys(t.elements).length&&(removeElement(t.elements.buttons.play),removeElement(t.elements.captions),removeElement(t.elements.controls),removeElement(t.elements.wrapper),t.elements.buttons.play=null,t.elements.captions=null,t.elements.controls=null,t.elements.wrapper=null),is$1.function(e)&&e()):(unbindListeners.call(t),replaceElement(t.elements.original,t.elements.container),triggerEvent.call(t,t.elements.original,"destroyed",!0),is$1.function(e)&&e.call(t.elements.original),t.ready=!1,setTimeout(function(){t.elements=null,t.media=null},200))};this.stop(),this.isHTML5?(clearTimeout(this.timers.loading),ui.toggleNativeControls.call(this,!0),n()):this.isYouTube?(clearInterval(this.timers.buffering),clearInterval(this.timers.playing),null!==this.embed&&is$1.function(this.embed.destroy)&&this.embed.destroy(),n()):this.isVimeo&&(null!==this.embed&&this.embed.unload().then(n),setTimeout(n,200))}}},{key:"supports",value:function(e){return support.mime.call(this,e)}},{key:"isHTML5",get:function(){return Boolean(this.provider===providers.html5)}},{key:"isEmbed",get:function(){return Boolean(this.isYouTube||this.isVimeo)}},{key:"isYouTube",get:function(){return Boolean(this.provider===providers.youtube)}},{key:"isVimeo",get:function(){return Boolean(this.provider===providers.vimeo)}},{key:"isVideo",get:function(){return Boolean(this.type===types.video)}},{key:"isAudio",get:function(){return Boolean(this.type===types.audio)}},{key:"playing",get:function(){return Boolean(this.ready&&!this.paused&&!this.ended)}},{key:"paused",get:function(){return Boolean(this.media.paused)}},{key:"stopped",get:function(){return Boolean(this.paused&&0===this.currentTime)}},{key:"ended",get:function(){return Boolean(this.media.ended)}},{key:"currentTime",set:function(e){if(this.duration){var t=is$1.number(e)&&e>0;this.media.currentTime=t?Math.min(e,this.duration):0,this.debug.log("Seeking to ".concat(this.currentTime," seconds"))}},get:function(){return Number(this.media.currentTime)}},{key:"buffered",get:function(){var e=this.media.buffered;return is$1.number(e)?e:e&&e.length&&this.duration>0?e.end(0)/this.duration:0}},{key:"seeking",get:function(){return Boolean(this.media.seeking)}},{key:"duration",get:function(){var e=parseFloat(this.config.duration),t=(this.media||{}).duration,i=is$1.number(t)&&t!==1/0?t:0;return e||i}},{key:"volume",set:function(e){var t=e;is$1.string(t)&&(t=Number(t)),is$1.number(t)||(t=this.storage.get("volume")),is$1.number(t)||(t=this.config.volume),t>1&&(t=1),t<0&&(t=0),this.config.volume=t,this.media.volume=t,!is$1.empty(e)&&this.muted&&t>0&&(this.muted=!1)},get:function(){return Number(this.media.volume)}},{key:"muted",set:function(e){var t=e;is$1.boolean(t)||(t=this.storage.get("muted")),is$1.boolean(t)||(t=this.config.muted),this.config.muted=t,this.media.muted=t},get:function(){return Boolean(this.media.muted)}},{key:"hasAudio",get:function(){return!this.isHTML5||(!!this.isAudio||(Boolean(this.media.mozHasAudio)||Boolean(this.media.webkitAudioDecodedByteCount)||Boolean(this.media.audioTracks&&this.media.audioTracks.length)))}},{key:"speed",set:function(e){var t=null;is$1.number(e)&&(t=e),is$1.number(t)||(t=this.storage.get("speed")),is$1.number(t)||(t=this.config.speed.selected),t<.1&&(t=.1),t>2&&(t=2),this.config.speed.options.includes(t)?(this.config.speed.selected=t,this.media.playbackRate=t):this.debug.warn("Unsupported speed (".concat(t,")"))},get:function(){return Number(this.media.playbackRate)}},{key:"quality",set:function(e){var t=this.config.quality,i=this.options.quality;if(i.length){var n=[!is$1.empty(e)&&Number(e),this.storage.get("quality"),t.selected,t.default].find(is$1.number),s=!0;if(!i.includes(n)){var a=closest(i,n);this.debug.warn("Unsupported quality option: ".concat(n,", using ").concat(a," instead")),n=a,s=!1}t.selected=n,this.media.quality=n,s&&this.storage.set({quality:n})}},get:function(){return this.media.quality}},{key:"loop",set:function(e){var t=is$1.boolean(e)?e:this.config.loop.active;this.config.loop.active=t,this.media.loop=t},get:function(){return Boolean(this.media.loop)}},{key:"source",set:function(e){source.change.call(this,e)},get:function(){return this.media.currentSrc}},{key:"download",get:function(){var e=this.config.urls.download;return is$1.url(e)?e:this.source}},{key:"poster",set:function(e){this.isVideo?ui.setPoster.call(this,e,!1).catch(function(){}):this.debug.warn("Poster can only be set for video")},get:function(){return this.isVideo?this.media.getAttribute("poster"):null}},{key:"autoplay",set:function(e){var t=is$1.boolean(e)?e:this.config.autoplay;this.config.autoplay=t},get:function(){return Boolean(this.config.autoplay)}},{key:"currentTrack",set:function(e){captions.set.call(this,e,!1)},get:function(){var e=this.captions,t=e.toggled,i=e.currentTrack;return t?i:-1}},{key:"language",set:function(e){captions.setLanguage.call(this,e,!1)},get:function(){return(captions.getCurrentTrack.call(this)||{}).language}},{key:"pip",set:function(e){if(support.pip){var t=is$1.boolean(e)?e:!this.pip;is$1.function(this.media.webkitSetPresentationMode)&&this.media.webkitSetPresentationMode(t?pip.active:pip.inactive),is$1.function(this.media.requestPictureInPicture)&&(!this.pip&&t?this.media.requestPictureInPicture():this.pip&&!t&&document.exitPictureInPicture())}},get:function(){return support.pip?is$1.empty(this.media.webkitPresentationMode)?this.media===document.pictureInPictureElement:this.media.webkitPresentationMode===pip.active:null}}],[{key:"supported",value:function(e,t,i){return support.check(e,t,i)}},{key:"loadSprite",value:function(e,t){return loadSprite(e,t)}},{key:"setup",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=null;return is$1.string(t)?n=Array.from(document.querySelectorAll(t)):is$1.nodeList(t)?n=Array.from(t):is$1.array(t)&&(n=t.filter(is$1.element)),is$1.empty(n)?null:n.map(function(t){return new e(t,i)})}}]),e}();Plyr.defaults=cloneDeep(defaults$1);export default Plyr; \ No newline at end of file diff --git a/content/vendor/plyr/plyr.min.mjs.map b/content/vendor/plyr/plyr.min.mjs.map new file mode 100644 index 0000000..4f2a6df --- /dev/null +++ b/content/vendor/plyr/plyr.min.mjs.map @@ -0,0 +1 @@ +{"version":3,"sources":["plyr.mjs","node_modules/rangetouch/src/js/config.js","node_modules/rangetouch/src/js/utils/css.js","node_modules/rangetouch/src/js/utils/events.js","node_modules/rangetouch/src/js/utils/is.js","node_modules/rangetouch/src/js/utils/numbers.js","node_modules/rangetouch/src/js/rangetouch.js","src/js/utils/is.js","src/js/utils/events.js","src/js/utils/elements.js","src/js/utils/animation.js","src/js/utils/browser.js","src/js/support.js","src/js/html5.js","src/js/utils/arrays.js","src/js/utils/objects.js","src/js/utils/strings.js","src/js/utils/i18n.js","src/js/storage.js","src/js/utils/fetch.js","src/js/utils/loadSprite.js","src/js/utils/time.js","src/js/controls.js","src/js/utils/urls.js","src/js/captions.js","src/js/config/defaults.js","src/js/config/states.js","src/js/config/types.js","src/js/console.js","src/js/fullscreen.js","src/js/utils/loadImage.js","src/js/ui.js","src/js/utils/style.js","src/js/listeners.js","node_modules/loadjs/dist/loadjs.umd.js","src/js/utils/loadScript.js","src/js/plugins/vimeo.js","src/js/plugins/youtube.js","src/js/media.js","src/js/plugins/ads.js","src/js/plugins/previewThumbnails.js","src/js/source.js","src/js/plyr.js"],"names":["_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","Constructor","protoProps","staticProps","prototype","_defineProperty","obj","value","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","Array","isArray","arr2","iter","Symbol","iterator","toString","call","from","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","err","TypeError","defaults","addCSS","thumbWidth","watch","matches","element","selector","document","querySelectorAll","includes","this","trigger","type","event","Event","dispatchEvent","getConstructor","input","constructor","instanceOf","Boolean","isNullOrUndefined","isObject","isNumber","Number","isNaN","isString","String","isBoolean","isFunction","Function","isNodeList","NodeList","isElement","Element","isEvent","isEmpty","keys","is","nullOrUndefined","object","number","string","boolean","function","array","nodeList","empty","getDecimalPlaces","match","concat","Math","max","round","step","places","parseFloat","toFixed","RangeTouch","options","_classCallCheck","querySelector","rangeTouch","config","assign","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","toggle","_this","method","forEach","set","percent","touch","changedTouches","min","getAttribute","delta","clientRect","getBoundingClientRect","width","clientX","left","disabled","preventDefault","get","arguments","targets","filter","MutationObserver","mutations","mutation","addedNodes","node","observe","body","childList","subtree","map","t","documentElement","isWeakMap","WeakMap","isTextNode","Text","isKeyboardEvent","KeyboardEvent","isCue","window","TextTrackCue","VTTCue","isTrack","TextTrack","kind","isPromise","Promise","isUrl","URL","startsWith","hostname","e","is$1","weakMap","textNode","keyboardEvent","cue","track","promise","url","supportsPassiveListeners","supported","addEventListener","removeEventListener","toggleListener","callback","passive","capture","events","split","eventListeners","on","off","once","_this2","onceCallback","_len","args","_key","apply","triggerEvent","bubbles","detail","CustomEvent","plyr","unbindListeners","item","ready","_this3","resolve","setTimeout","elements","container","then","wrap","wrapper","reverse","index","child","cloneNode","parent","parentNode","sibling","nextSibling","appendChild","insertBefore","setAttributes","attributes","entries","_ref","_ref3","_ref4","setAttribute","createElement","text","innerText","insertAfter","insertElement","removeElement","removeChild","emptyElement","childNodes","lastChild","replaceElement","newChild","oldChild","replaceChild","getAttributesFromSelector","sel","existingAttributes","existing","s","trim","className","replace","parts","charAt","class","id","toggleHidden","hidden","hide","removeAttribute","toggleClass","force","classList","contains","hasClass","getElements","getElement","trapFocus","focusable","first","last","keyCode","focused","activeElement","shiftKey","focus","setFocus","tabFocus","preventScroll","classNames","transitionEndEvent","WebkitTransition","MozTransition","OTransition","transition","find","repaint","offsetHeight","browser","isIE","documentMode","isEdge","navigator","userAgent","isWebkit","test","isIPhone","platform","isIos","defaultCodecs","audio/ogg","audio/wav","video/webm","video/mp4","video/ogg","support","audio","video","check","provider","playsinline","canPlayInline","api","ui","rangeInput","pip","webkitSetPresentationMode","pictureInPictureEnabled","disablePictureInPicture","airplay","WebKitPlaybackTargetAvailabilityEvent","mime","mediaType","isHTML5","media","canPlayType","textTracks","range","transitions","reducedMotion","matchMedia","html5","getSources","source","getQualityOptions","extend","player","_player$media","currentTime","paused","preload","readyState","src","play","load","quality","cancelRequests","blankVideo","debug","log","dedupe","indexOf","closest","reduce","prev","curr","abs","cloneDeep","JSON","parse","stringify","getDeep","path","sources","shift","generateId","prefix","floor","random","format","getPercentage","current","replaceAll","RegExp","toTitleCase","toUpperCase","substr","toLowerCase","toPascalCase","toCamelCase","slice","stripHTML","fragment","createDocumentFragment","innerHTML","firstChild","getHTML","resources","vimeo","youtube","i18n","{seektime}","seekTime","{title}","title","_ref2","Storage","storage","store","localStorage","getItem","json","setItem","removeItem","fetch","responseType","reject","request","XMLHttpRequest","responseText","response","Error","status","open","send","loadSprite","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","fullscreen","progress","inputs","seek","volume","display","buffer","duration","seekTooltip","tooltip","error","warn","toggleNativeControls","createIcon","iconPath","iconPrefix","icon","createElementNS","role","use","setAttributeNS","createLabel","attr","join","createBadge","badge","menu","createButton","buttonType","label","labelPressed","iconPressed","control","button","createRange","autocomplete","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","updateRangeFill","setup","createProgress","aria-hidden","suffixKey","played","suffix","createTime","bindMenuItemShortcuts","menuItem","which","stopPropagation","isRadioButton","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","list","_ref$badge","_ref$checked","checked","aria-checked","flex","children","bind","currentTrack","speed","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","getElementsByTagName","nodeValue","setProgress","buffered","setProperty","updateSeekTooltip","_this4","tooltips","visible","pageX","timeUpdate","invert","invertTime","seeking","durationUpdate","pow","hasDuration","displayDuration","toggleMenuButton","setting","updateSetting","pane","panels","default","getLabel","setQualityMenu","_this5","checkMenu","getBadge","sort","a","b","sorting","setCaptionsMenu","_this6","tracks","getTracks","toggled","language","unshift","setSpeedMenu","_this7","isVimeo","values","some","popup","firstItem","toggleMenu","show","isMenuItem","getMenuSize","tab","clone","position","opacity","scrollWidth","height","scrollHeight","_this8","size","restore","propertyName","setDownloadLink","download","create","_this9","aria-haspopup","aria-controls","aria-expanded","inner","home","backButton","href","urls","isEmbed","inject","_this10","seektime","addProperty","controlPressed","_this$config","labels","parseUrl","parser","buildUrlParams","params","URLSearchParams","isVideo","isYouTube","protocol","blob","createObjectURL","languages","userLanguage","active","trackEvents","_this$captions","meta","currentTrackNode","languageExists","mode","updateCues","setLanguage","activeClass","findTrack","embed","enableTextTrack","has","sortIsDefault","sorted","every","getCurrentTrack","cues","activeCues","getCueAsHTML","cueText","caption","autoplay","autopause","toggleInvert","ratio","clickToPlay","hideControls","resetOnEnd","disableContextMenu","loop","selected","keyboard","global","fallback","iosNative","seekLabel","unmute","enableCaptions","disableCaptions","enterFullscreen","exitFullscreen","frameTitle","menuBack","normal","start","end","all","reset","advertisement","qualityBadge","2160","1440","1080","720","576","480","sdk","iframe","googleIMA","editable","embedContainer","poster","posterEnabled","ads","playing","stopped","loading","hover","isTouch","uiSupported","noTransition","previewThumbnails","thumbContainer","thumbContainerShown","imageContainer","timeContainer","scrubbingContainer","scrubbingContainerShown","google","publisherId","tagUrl","byline","portrait","transparent","noCookie","rel","showinfo","iv_load_policy","modestbranding","inactive","providers","types","getProviderByUrl","noop","Console","console","onChange","toggleFallback","scrollPosition","x","scrollX","y","scrollY","scrollTo","overflow","viewport","head","property","hasProperty","cleanupViewport","part","Fullscreen","forceFallback","native","webkitEnterFullscreen","requestFullscreen","webkitExitFullscreen","action","cancelFullScreen","exit","enter","fullscreenElement","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","pre","loadImage","minWidth","image","Image","handler","onload","onerror","naturalWidth","addStyleHook","build","checkPlaying","setTitle","setPoster","togglePoster","enable","backgroundImage","backgroundSize","toggleControls","checkLoading","clearTimeout","timers","recentTouchSeek","lastSeekTime","Date","now","setAspectRatio","_ratio$split$map2","padding","paddingBottom","offset","transform","Listeners","lastKey","focusTimer","lastKeyDown","handleKey","setTabFocus","firstTouch","code","repeat","altKey","ctrlKey","metaKey","togglePlay","increaseVolume","decreaseVolume","forward","toggleCaptions","usingNative","timeStamp","wasKeyDown","delay","setPlayerSize","measure","rect","resized","_player$fullscreen","isEnter","_setPlayerSize","_player$embed$ratio$s2","videoWidth","videoHeight","maxWidth","margin","setGutter","hasAudio","isAudio","ended","proxy","proxyEvents","_event$detail","defaultHandler","customHandlerKey","customHandler","returned","hasCustomHandler","inputEvent","currentTarget","hasAttribute","seekTo","loaded","startMove","endMove","startScrubbing","endScrubbing","webkitDirectionInvertedFromDevice","_map2","deltaX","deltaY","direction","sign","commonjsGlobal","self","createCommonjsModule","fn","module","exports","loadjs_umd","devnull","bundleIdCache","bundleResultCache","bundleCallbackQueue","publish","bundleId","pathsNotFound","q","splice","executeCallbacks","depsNotFound","success","loadFile","callbackFn","numTries","isCss","doc","async","maxTries","numRetries","beforeCallbackFn","before","pathStripped","onbeforeload","ev","sheet","cssText","defaultPrevented","loadjs","paths","arg1","arg2","numWaiting","loadFiles","deps","bundleIds","r","subscribe","isDefined","factory","loadScript","parseId","$2","assurePlaybackState","hasPlayed","Vimeo","gesture","thumbnail_large","pathname","Player","disableTextTrack","stop","restorePause","setVolume","setCurrentTime","setPlaybackRate","name","currentSrc","setLoop","getVideoUrl","getVideoWidth","getVideoHeight","dimensions","_dimensions","setAutopause","state","getVideoTitle","getCurrentTime","getDuration","getTextTracks","_ref$cues","strippedCues","getPaused","seconds","parseInt","YT","onYouTubeReadyCallbacks","onYouTubeIframeAPIReady","getTitle","videoId","getVideoData","items","snippet","currentId","posterSrc","playerVars","hl","disablekb","cc_load_policy","cc_lang_pref","widget_referrer","onError","message","2","5","100","101","150","onPlaybackRateChange","instance","playbackRate","getPlaybackRate","onReady","playVideo","pauseVideo","stopVideo","getAvailablePlaybackRates","clearInterval","buffering","setInterval","getVideoLoadedFraction","lastBuffered","onStateChange","unMute","Ads","initialized","displayContainer","manager","loader","cuePoints","safetyTimer","countdownTimer","managerPromise","ima","startSafetyTimer","clearSafetyTimer","setupIMA","setVpaidMode","ImaSdkSettings","VpaidMode","ENABLED","setLocale","setDisableCustomPlaybackForIOS10Plus","AdDisplayContainer","requestAds","AdsLoader","AdsManagerLoadedEvent","Type","ADS_MANAGER_LOADED","onAdsManagerLoaded","AdErrorEvent","AD_ERROR","onAdError","AdsRequest","adTagUrl","linearAdSlotWidth","offsetWidth","linearAdSlotHeight","nonLinearAdSlotWidth","nonLinearAdSlotHeight","forceNonLinearFullSlot","setAdWillPlayMuted","getRemainingTime","AdsRenderingSettings","restoreCustomPlaybackStateOnAdBreakComplete","enablePreloading","getAdsManager","getCuePoints","AdEvent","onAdEvent","cuePoint","seekElement","cuePercentage","ad","getAd","adData","getAdData","LOADED","pollCountdown","isLinear","ALL_ADS_COMPLETED","loadAds","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","STARTED","MIDPOINT","COMPLETE","IMPRESSION","CLICK","LOG","adError","getMessage","cancel","addCuePoints","contentComplete","seekedTime","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","_this11","destroy","_this12","handlers","_this13","AV_PUBLISHERID","AV_CHANNELID","AV_URL","cb","AV_WIDTH","AV_HEIGHT","AV_CDIM2","parseVtt","vttDataString","processedList","frame","line","startTime","lineSplit","_lineSplit","_lineSplit$1$split2","w","h","matchTimes","endTime","PreviewThumbnails","thumbnails","lastMouseMoveTime","mouseDown","loadedImages","thumb","scrubbing","getThumbnails","render","determineContainerAutoSizing","promises","u","getThumbnail","thumbnail","frames","urlPrefix","substring","lastIndexOf","tempImage","naturalHeight","percentage","mousePosX","showImageAtCurrentTime","toggleThumbContainer","toggleScrubbingContainer","ceil","lastTime","setScrubbingContainerSize","setThumbContainerSizeAndPos","thumbNum","findIndex","hasThumb","qualityIndex","showingThumb","thumbFilename","thumbUrl","currentImageElement","dataset","filename","showImage","removeOldImages","loadingImage","usingSprites","previewImage","showingThumbFilename","newImage","setImageSizeAndOffset","currentImageContainer","preloadNearby","getHigherQuality","currentImage","tagName","removeDelay","deleting","oldThumbFilename","thumbnailsClone","foundOne","newThumbFilename","thumbURL","currentQualityIndex","previewImageHeight","thumbContainerHeight","clearShowing","clientHeight","sizeSpecifiedInCSS","thumbAspectRatio","setThumbContainerPos","seekbarRect","plyrRect","minVal","maxVal","right","clientWidth","previewPos","multiplier","top","currentScrubbingImageElement","currentThumbnailImageElement","insertElements","attribute","change","_sources$","_sources$$provider","crossorigin","Plyr","failed","jQuery","original","search","truthy","searchParams","tabindex","webkitShowPlaybackTargetPicker","isHidden","hiding","eventName","soft","unload","inputIsValid","fauxDuration","realDuration","Infinity","mozHasAudio","webkitAudioDecodedByteCount","audioTracks","updateStorage","requestPictureInPicture","exitPictureInPicture","webkitPresentationMode","pictureInPictureElement","inline"],"mappings":"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","file":"plyr.min.mjs","sourcesContent":["typeof navigator === \"object\" && function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _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\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _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\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}\n\nvar defaults = {\n addCSS: true,\n // Add CSS to the element to improve usability (required here or in your CSS!)\n thumbWidth: 15,\n // The width of the thumb handle\n watch: true // Watch for new elements that match a string target\n\n};\n\n// Element matches a selector\nfunction matches(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var matches = match;\n return matches.call(element, selector);\n}\n\n// Trigger event\nfunction trigger(element, type) {\n if (!element || !type) {\n return;\n } // Create and dispatch the event\n\n\n var event = new Event(type); // Dispatch the event\n\n element.dispatchEvent(event);\n}\n\n// ==========================================================================\n// Type checking utils\n// ==========================================================================\nvar getConstructor = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n};\n\nvar instanceOf = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n};\n\nvar isNullOrUndefined = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n};\n\nvar isObject = function isObject(input) {\n return getConstructor(input) === Object;\n};\n\nvar isNumber = function isNumber(input) {\n return getConstructor(input) === Number && !Number.isNaN(input);\n};\n\nvar isString = function isString(input) {\n return getConstructor(input) === String;\n};\n\nvar isBoolean = function isBoolean(input) {\n return getConstructor(input) === Boolean;\n};\n\nvar isFunction = function isFunction(input) {\n return getConstructor(input) === Function;\n};\n\nvar isArray = function isArray(input) {\n return Array.isArray(input);\n};\n\nvar isNodeList = function isNodeList(input) {\n return instanceOf(input, NodeList);\n};\n\nvar isElement = function isElement(input) {\n return instanceOf(input, Element);\n};\n\nvar isEvent = function isEvent(input) {\n return instanceOf(input, Event);\n};\n\nvar isEmpty = function isEmpty(input) {\n return isNullOrUndefined(input) || (isString(input) || isArray(input) || isNodeList(input)) && !input.length || isObject(input) && !Object.keys(input).length;\n};\n\nvar is = {\n nullOrUndefined: isNullOrUndefined,\n object: isObject,\n number: isNumber,\n string: isString,\n boolean: isBoolean,\n function: isFunction,\n array: isArray,\n nodeList: isNodeList,\n element: isElement,\n event: isEvent,\n empty: isEmpty\n};\n\n// Get the number of decimal places\nfunction getDecimalPlaces(value) {\n var match = \"\".concat(value).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n\n if (!match) {\n return 0;\n }\n\n return Math.max(0, // Number of digits right of decimal point.\n (match[1] ? match[1].length : 0) - ( // Adjust for scientific notation.\n match[2] ? +match[2] : 0));\n} // Round to the nearest step\n\nfunction round(number, step) {\n if (step < 1) {\n var places = getDecimalPlaces(step);\n return parseFloat(number.toFixed(places));\n }\n\n return Math.round(number / step) * step;\n}\n\nvar RangeTouch =\n/*#__PURE__*/\nfunction () {\n /**\n * Setup a new instance\n * @param {String|Element} target\n * @param {Object} options\n */\n function RangeTouch(target, options) {\n _classCallCheck(this, RangeTouch);\n\n if (is.element(target)) {\n // An Element is passed, use it directly\n this.element = target;\n } else if (is.string(target)) {\n // A CSS Selector is passed, fetch it from the DOM\n this.element = document.querySelector(target);\n }\n\n if (!is.element(this.element) || !is.empty(this.element.rangeTouch)) {\n return;\n }\n\n this.config = Object.assign({}, defaults, options);\n this.init();\n }\n\n _createClass(RangeTouch, [{\n key: \"init\",\n value: function init() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n } // Add useful CSS\n\n\n if (this.config.addCSS) {\n // TODO: Restore original values on destroy\n this.element.style.userSelect = 'none';\n this.element.style.webKitUserSelect = 'none';\n this.element.style.touchAction = 'manipulation';\n }\n\n this.listeners(true);\n this.element.rangeTouch = this;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n }\n\n this.listeners(false);\n this.element.rangeTouch = null;\n }\n }, {\n key: \"listeners\",\n value: function listeners(toggle) {\n var _this = this;\n\n var method = toggle ? 'addEventListener' : 'removeEventListener'; // Listen for events\n\n ['touchstart', 'touchmove', 'touchend'].forEach(function (type) {\n _this.element[method](type, function (event) {\n return _this.set(event);\n }, false);\n });\n }\n /**\n * Get the value based on touch position\n * @param {Event} event\n */\n\n }, {\n key: \"get\",\n value: function get(event) {\n if (!RangeTouch.enabled || !is.event(event)) {\n return null;\n }\n\n var input = event.target;\n var touch = event.changedTouches[0];\n var min = parseFloat(input.getAttribute('min')) || 0;\n var max = parseFloat(input.getAttribute('max')) || 100;\n var step = parseFloat(input.getAttribute('step')) || 1;\n var delta = max - min; // Calculate percentage\n\n var percent;\n var clientRect = input.getBoundingClientRect();\n var thumbWidth = 100 / clientRect.width * (this.config.thumbWidth / 2) / 100; // Determine left percentage\n\n percent = 100 / clientRect.width * (touch.clientX - clientRect.left); // Don't allow outside bounds\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 100) {\n percent = 100;\n } // Factor in the thumb offset\n\n\n if (percent < 50) {\n percent -= (100 - percent * 2) * thumbWidth;\n } else if (percent > 50) {\n percent += (percent - 50) * 2 * thumbWidth;\n } // Find the closest step to the mouse position\n\n\n return min + round(delta * (percent / 100), step);\n }\n /**\n * Update range value based on position\n * @param {Event} event\n */\n\n }, {\n key: \"set\",\n value: function set(event) {\n if (!RangeTouch.enabled || !is.event(event) || event.target.disabled) {\n return;\n } // Prevent text highlight on iOS\n\n\n event.preventDefault(); // Set value\n\n event.target.value = this.get(event); // Trigger event\n\n trigger(event.target, event.type === 'touchend' ? 'change' : 'input');\n }\n }], [{\n key: \"setup\",\n\n /**\n * Setup multiple instances\n * @param {String|Element|NodeList|Array} target\n * @param {Object} options\n */\n value: function setup(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var targets = null;\n\n if (is.empty(target) || is.string(target)) {\n targets = Array.from(document.querySelectorAll(is.string(target) ? target : 'input[type=\"range\"]'));\n } else if (is.element(target)) {\n targets = [target];\n } else if (is.nodeList(target)) {\n targets = Array.from(target);\n } else if (is.array(target)) {\n targets = target.filter(is.element);\n }\n\n if (is.empty(targets)) {\n return null;\n }\n\n var config = Object.assign({}, defaults, options);\n\n if (is.string(target) && config.watch) {\n // Create an observer instance\n var observer = new MutationObserver(function (mutations) {\n Array.from(mutations).forEach(function (mutation) {\n Array.from(mutation.addedNodes).forEach(function (node) {\n if (!is.element(node) || !matches(node, target)) {\n return;\n } // eslint-disable-next-line no-unused-vars\n\n\n var range = new RangeTouch(node, config);\n });\n });\n }); // Pass in the target node, as well as the observer options\n\n observer.observe(document.body, {\n childList: true,\n subtree: true\n });\n }\n\n return targets.map(function (t) {\n return new RangeTouch(t, options);\n });\n }\n }, {\n key: \"enabled\",\n get: function get() {\n return 'ontouchstart' in document.documentElement;\n }\n }]);\n\n return RangeTouch;\n}();\n\n// ==========================================================================\n// Type checking utils\n// ==========================================================================\nvar getConstructor$1 = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n};\n\nvar instanceOf$1 = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n};\n\nvar isNullOrUndefined$1 = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n};\n\nvar isObject$1 = function isObject(input) {\n return getConstructor$1(input) === Object;\n};\n\nvar isNumber$1 = function isNumber(input) {\n return getConstructor$1(input) === Number && !Number.isNaN(input);\n};\n\nvar isString$1 = function isString(input) {\n return getConstructor$1(input) === String;\n};\n\nvar isBoolean$1 = function isBoolean(input) {\n return getConstructor$1(input) === Boolean;\n};\n\nvar isFunction$1 = function isFunction(input) {\n return getConstructor$1(input) === Function;\n};\n\nvar isArray$1 = function isArray(input) {\n return Array.isArray(input);\n};\n\nvar isWeakMap = function isWeakMap(input) {\n return instanceOf$1(input, WeakMap);\n};\n\nvar isNodeList$1 = function isNodeList(input) {\n return instanceOf$1(input, NodeList);\n};\n\nvar isElement$1 = function isElement(input) {\n return instanceOf$1(input, Element);\n};\n\nvar isTextNode = function isTextNode(input) {\n return getConstructor$1(input) === Text;\n};\n\nvar isEvent$1 = function isEvent(input) {\n return instanceOf$1(input, Event);\n};\n\nvar isKeyboardEvent = function isKeyboardEvent(input) {\n return instanceOf$1(input, KeyboardEvent);\n};\n\nvar isCue = function isCue(input) {\n return instanceOf$1(input, window.TextTrackCue) || instanceOf$1(input, window.VTTCue);\n};\n\nvar isTrack = function isTrack(input) {\n return instanceOf$1(input, TextTrack) || !isNullOrUndefined$1(input) && isString$1(input.kind);\n};\n\nvar isPromise = function isPromise(input) {\n return instanceOf$1(input, Promise);\n};\n\nvar 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\nvar 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\nvar is$1 = {\n nullOrUndefined: isNullOrUndefined$1,\n object: isObject$1,\n number: isNumber$1,\n string: isString$1,\n boolean: isBoolean$1,\n function: isFunction$1,\n array: isArray$1,\n weakMap: isWeakMap,\n nodeList: isNodeList$1,\n element: isElement$1,\n textNode: isTextNode,\n event: isEvent$1,\n keyboardEvent: isKeyboardEvent,\n cue: isCue,\n track: isTrack,\n promise: isPromise,\n url: isUrl,\n empty: isEmpty$1\n};\n\n// ==========================================================================\n// https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n// https://www.youtube.com/watch?v=NPM6172J22g\n\nvar 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction triggerEvent(element) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var bubbles = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var detail = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n // Bail if no element\n if (!is$1.element(element) || is$1.empty(type)) {\n return;\n } // Create and dispatch the event\n\n\n var event = new CustomEvent(type, {\n bubbles: bubbles,\n detail: Object.assign({}, detail, {\n plyr: this\n })\n }); // Dispatch the event\n\n element.dispatchEvent(event);\n} // Unbind all cached event listeners\n\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction getAttributesFromSelector(sel, existingAttributes) {\n // For example:\n // '.test' to { class: 'test' }\n // '#test' to { id: 'test' }\n // '[data-test=\"test\"]' to { 'data-test': 'test' }\n if (!is$1.string(sel) || is$1.empty(sel)) {\n return {};\n }\n\n var attributes = {};\n var existing = existingAttributes;\n sel.split(',').forEach(function (s) {\n // Remove whitespace\n var selector = s.trim();\n var className = selector.replace('.', '');\n var stripped = selector.replace(/[[\\]]/g, ''); // Get the parts and value\n\n var parts = stripped.split('=');\n var key = parts[0];\n var value = parts.length > 1 ? parts[1].replace(/[\"']/g, '') : ''; // Get the first character\n\n var start = selector.charAt(0);\n\n switch (start) {\n case '.':\n // Add to existing classname\n if (is$1.object(existing) && is$1.string(existing.class)) {\n existing.class += \" \".concat(className);\n }\n\n attributes.class = className;\n break;\n\n case '#':\n // ID selector\n attributes.id = selector.replace('#', '');\n break;\n\n case '[':\n // Attribute selector\n attributes[key] = value;\n break;\n\n default:\n break;\n }\n });\n return attributes;\n} // Toggle hidden\n\nfunction toggleHidden(element, hidden) {\n if (!is$1.element(element)) {\n return;\n }\n\n var hide = hidden;\n\n if (!is$1.boolean(hide)) {\n hide = !element.hidden;\n }\n\n if (hide) {\n element.setAttribute('hidden', '');\n } else {\n element.removeAttribute('hidden');\n }\n} // Mirror Element.classList.toggle, with IE compatibility for \"force\" argument\n\nfunction 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\nfunction hasClass(element, className) {\n return is$1.element(element) && element.classList.contains(className);\n} // Element matches selector\n\nfunction matches$1(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var matches = match;\n return matches.call(element, selector);\n} // Find all elements\n\nfunction getElements(selector) {\n return this.elements.container.querySelectorAll(selector);\n} // Find a single element\n\nfunction getElement(selector) {\n return this.elements.container.querySelector(selector);\n} // Trap focus inside container\n\nfunction trapFocus() {\n var element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var toggle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!is$1.element(element)) {\n return;\n }\n\n var focusable = getElements.call(this, 'button:not(:disabled), input:not(:disabled), [tabindex]');\n var first = focusable[0];\n var last = focusable[focusable.length - 1];\n\n var trap = function trap(event) {\n // Bail if not tab key or not fullscreen\n if (event.key !== 'Tab' || event.keyCode !== 9) {\n return;\n } // Get the current focused element\n\n\n var focused = document.activeElement;\n\n if (focused === last && !event.shiftKey) {\n // Move focus to first element that can be tabbed if Shift isn't used\n first.focus();\n event.preventDefault();\n } else if (focused === first && event.shiftKey) {\n // Move focus to last element that can be tabbed if Shift is used\n last.focus();\n event.preventDefault();\n }\n };\n\n toggleListener.call(this, this.elements.container, 'keydown', trap, toggle, false);\n} // Set focus and tab focus class\n\nfunction 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// ==========================================================================\nvar 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\nfunction repaint(element) {\n setTimeout(function () {\n try {\n toggleHidden(element, true);\n element.offsetHeight; // eslint-disable-line\n\n toggleHidden(element, false);\n } catch (e) {// Do nothing\n }\n }, 0);\n}\n\n// ==========================================================================\n// Browser sniffing\n// Unfortunately, due to mixed support, UA sniffing is required\n// ==========================================================================\nvar 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\nvar 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\nvar 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// ==========================================================================\nvar html5 = {\n getSources: function getSources() {\n var _this = this;\n\n if (!this.isHTML5) {\n return [];\n }\n\n var sources = Array.from(this.media.querySelectorAll('source')); // Filter out unsupported sources (if type is specified)\n\n return sources.filter(function (source) {\n var type = source.getAttribute('type');\n\n if (is$1.empty(type)) {\n return true;\n }\n\n return support.mime.call(_this, type);\n });\n },\n // Get quality levels\n getQualityOptions: function getQualityOptions() {\n // Get sizes from elements\n return html5.getSources.call(this).map(function (source) {\n return Number(source.getAttribute('data-res'));\n }).filter(Boolean);\n },\n extend: function extend() {\n if (!this.isHTML5) {\n return;\n }\n\n var player = this; // Quality\n\n Object.defineProperty(player.media, 'quality', {\n get: function get() {\n // Get sources\n var sources = html5.getSources.call(player);\n var source = sources.find(function (source) {\n return source.getAttribute('src') === player.source;\n }); // Return size, if match is found\n\n return source && Number(source.getAttribute('data-res'));\n },\n set: function set(input) {\n // Get sources\n var sources = html5.getSources.call(player); // Get first match for requested size\n\n var source = sources.find(function (source) {\n return Number(source.getAttribute('data-res')) === input;\n }); // No matching source found\n\n if (!source) {\n return;\n } // Get current state\n\n\n var _player$media = player.media,\n currentTime = _player$media.currentTime,\n paused = _player$media.paused,\n preload = _player$media.preload,\n readyState = _player$media.readyState; // Set new source\n\n player.media.src = source.getAttribute('src'); // Prevent loading if preload=\"none\" and the current source isn't loaded (#1044)\n\n if (preload !== 'none' || readyState) {\n // Restore time\n player.once('loadedmetadata', function () {\n player.currentTime = currentTime; // Resume playing\n\n if (!paused) {\n player.play();\n }\n }); // Load new source\n\n player.media.load();\n } // Trigger change event\n\n\n triggerEvent.call(player, player.media, 'qualitychange', false, {\n quality: input\n });\n }\n });\n },\n // Cancel current network requests\n // See https://github.com/sampotts/plyr/issues/174\n cancelRequests: function cancelRequests() {\n if (!this.isHTML5) {\n return;\n } // Remove child sources\n\n\n removeElement(html5.getSources.call(this)); // Set blank video src attribute\n // This is to prevent a MEDIA_ERR_SRC_NOT_SUPPORTED error\n // Info: http://stackoverflow.com/questions/32231579/how-to-properly-dispose-of-an-html5-video-and-close-socket-or-connection\n\n this.media.setAttribute('src', this.config.blankVideo); // Load the new empty source\n // This will cancel existing requests\n // See https://github.com/sampotts/plyr/issues/174\n\n this.media.load(); // Debugging\n\n this.debug.log('Cancelled network requests');\n }\n};\n\n// ==========================================================================\n\nfunction 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\nfunction closest(array, value) {\n if (!is$1.array(array) || !array.length) {\n return null;\n }\n\n return array.reduce(function (prev, curr) {\n return Math.abs(curr - value) < Math.abs(prev - value) ? curr : prev;\n });\n}\n\nfunction cloneDeep(object) {\n return JSON.parse(JSON.stringify(object));\n} // Get a nested value in an object\n\nfunction 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\nfunction extend() {\n var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n\n if (!sources.length) {\n return target;\n }\n\n var source = sources.shift();\n\n if (!is$1.object(source)) {\n return target;\n }\n\n Object.keys(source).forEach(function (key) {\n if (is$1.object(source[key])) {\n if (!Object.keys(target).includes(key)) {\n Object.assign(target, _defineProperty({}, key, {}));\n }\n\n extend(target[key], source[key]);\n } else {\n Object.assign(target, _defineProperty({}, key, source[key]));\n }\n });\n return extend.apply(void 0, [target].concat(sources));\n}\n\n// ==========================================================================\n\nfunction generateId(prefix) {\n return \"\".concat(prefix, \"-\").concat(Math.floor(Math.random() * 10000));\n} // Format string\n\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction 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\nfunction getHTML(element) {\n var wrapper = document.createElement('div');\n wrapper.appendChild(element);\n return wrapper.innerHTML;\n}\n\nvar resources = {\n pip: 'PIP',\n airplay: 'AirPlay',\n html5: 'HTML5',\n vimeo: 'Vimeo',\n youtube: 'YouTube'\n};\nvar i18n = {\n get: function get() {\n var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (is$1.empty(key) || is$1.empty(config)) {\n return '';\n }\n\n var string = getDeep(config.i18n, key);\n\n if (is$1.empty(string)) {\n if (Object.keys(resources).includes(key)) {\n return resources[key];\n }\n\n return '';\n }\n\n var replace = {\n '{seektime}': config.seekTime,\n '{title}': config.title\n };\n Object.entries(replace).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n\n string = replaceAll(string, key, value);\n });\n return string;\n }\n};\n\nvar Storage =\n/*#__PURE__*/\nfunction () {\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// ==========================================================================\nfunction 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\nfunction loadSprite(url, id) {\n if (!is$1.string(url)) {\n return;\n }\n\n var prefix = 'cache';\n var hasId = is$1.string(id);\n var isCached = false;\n\n var exists = function exists() {\n return document.getElementById(id) !== null;\n };\n\n var update = function update(container, data) {\n container.innerHTML = data; // Check again incase of race condition\n\n if (hasId && exists()) {\n return;\n } // Inject the SVG to the body\n\n\n document.body.insertAdjacentElement('afterbegin', container);\n }; // Only load once if ID set\n\n\n if (!hasId || !exists()) {\n var useStorage = Storage.supported; // Create container\n\n var container = document.createElement('div');\n container.setAttribute('hidden', '');\n\n if (hasId) {\n container.setAttribute('id', id);\n } // Check in cache\n\n\n if (useStorage) {\n var cached = window.localStorage.getItem(\"\".concat(prefix, \"-\").concat(id));\n isCached = cached !== null;\n\n if (isCached) {\n var data = JSON.parse(cached);\n update(container, data.content);\n }\n } // Get the sprite\n\n\n fetch(url).then(function (result) {\n if (is$1.empty(result)) {\n return;\n }\n\n if (useStorage) {\n window.localStorage.setItem(\"\".concat(prefix, \"-\").concat(id), JSON.stringify({\n content: result\n }));\n }\n\n update(container, result);\n }).catch(function () {});\n }\n}\n\n// ==========================================================================\n\nvar getHours = function getHours(value) {\n return Math.trunc(value / 60 / 60 % 60, 10);\n};\nvar getMinutes = function getMinutes(value) {\n return Math.trunc(value / 60 % 60, 10);\n};\nvar getSeconds = function getSeconds(value) {\n return Math.trunc(value % 60, 10);\n}; // Format time to UI friendly string\n\nfunction formatTime() {\n var time = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var displayHours = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var inverted = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n // Bail if the value isn't a number\n if (!is$1.number(time)) {\n return formatTime(null, displayHours, inverted);\n } // Format time component to add leading zero\n\n\n var format = function format(value) {\n return \"0\".concat(value).slice(-2);\n }; // Breakdown to hours, mins, secs\n\n\n var hours = getHours(time);\n var mins = getMinutes(time);\n var secs = getSeconds(time); // Do we need to display hours?\n\n if (displayHours || hours > 0) {\n hours = \"\".concat(hours, \":\");\n } else {\n hours = '';\n } // Render\n\n\n return \"\".concat(inverted && time > 0 ? '-' : '').concat(hours).concat(format(mins), \":\").concat(format(secs));\n}\n\nvar controls = {\n // Get icon URL\n getIconUrl: function getIconUrl() {\n var url = new URL(this.config.iconUrl, window.location);\n var cors = url.host !== window.location.host || browser.isIE && !window.svg4everybody;\n return {\n url: this.config.iconUrl,\n cors: cors\n };\n },\n // Find the UI controls\n findElements: function findElements() {\n try {\n this.elements.controls = getElement.call(this, this.config.selectors.controls.wrapper); // Buttons\n\n this.elements.buttons = {\n play: getElements.call(this, this.config.selectors.buttons.play),\n pause: getElement.call(this, this.config.selectors.buttons.pause),\n restart: getElement.call(this, this.config.selectors.buttons.restart),\n rewind: getElement.call(this, this.config.selectors.buttons.rewind),\n fastForward: getElement.call(this, this.config.selectors.buttons.fastForward),\n mute: getElement.call(this, this.config.selectors.buttons.mute),\n pip: getElement.call(this, this.config.selectors.buttons.pip),\n airplay: getElement.call(this, this.config.selectors.buttons.airplay),\n settings: getElement.call(this, this.config.selectors.buttons.settings),\n captions: getElement.call(this, this.config.selectors.buttons.captions),\n fullscreen: getElement.call(this, this.config.selectors.buttons.fullscreen)\n }; // Progress\n\n this.elements.progress = getElement.call(this, this.config.selectors.progress); // Inputs\n\n this.elements.inputs = {\n seek: getElement.call(this, this.config.selectors.inputs.seek),\n volume: getElement.call(this, this.config.selectors.inputs.volume)\n }; // Display\n\n this.elements.display = {\n buffer: getElement.call(this, this.config.selectors.display.buffer),\n currentTime: getElement.call(this, this.config.selectors.display.currentTime),\n duration: getElement.call(this, this.config.selectors.display.duration)\n }; // Seek tooltip\n\n if (is$1.element(this.elements.progress)) {\n this.elements.display.seekTooltip = this.elements.progress.querySelector(\".\".concat(this.config.classNames.tooltip));\n }\n\n return true;\n } catch (error) {\n // Log it\n this.debug.warn('It looks like there is a problem with your custom controls HTML', error); // Restore native video controls\n\n this.toggleNativeControls(true);\n return false;\n }\n },\n // Create icon\n createIcon: function createIcon(type, attributes) {\n var namespace = 'http://www.w3.org/2000/svg';\n var iconUrl = controls.getIconUrl.call(this);\n var iconPath = \"\".concat(!iconUrl.cors ? iconUrl.url : '', \"#\").concat(this.config.iconPrefix); // Create \n\n var icon = document.createElementNS(namespace, 'svg');\n setAttributes(icon, extend(attributes, {\n role: 'presentation',\n focusable: 'false'\n })); // Create the to reference sprite\n\n var use = document.createElementNS(namespace, 'use');\n var path = \"\".concat(iconPath, \"-\").concat(type); // Set `href` attributes\n // https://github.com/sampotts/plyr/issues/460\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlink:href\n\n if ('href' in use) {\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'href', path);\n } // Always set the older attribute even though it's \"deprecated\" (it'll be around for ages)\n\n\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', path); // Add to \n\n icon.appendChild(use);\n return icon;\n },\n // Create hidden text label\n createLabel: function createLabel(key) {\n var attr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var text = i18n.get(key, this.config);\n var attributes = Object.assign({}, attr, {\n class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' ')\n });\n return createElement('span', attributes, text);\n },\n // Create a badge\n createBadge: function createBadge(text) {\n if (is$1.empty(text)) {\n return null;\n }\n\n var badge = createElement('span', {\n class: this.config.classNames.menu.value\n });\n badge.appendChild(createElement('span', {\n class: this.config.classNames.menu.badge\n }, text));\n return badge;\n },\n // Create a
to hide the standard controls and UI\n\n if (this.isVimeo && this.supported.ui) {\n var height = 240;\n var offset = (height - padding) / (height / 50);\n this.media.style.transform = \"translateY(-\".concat(offset, \"%)\");\n }\n\n return {\n padding: padding,\n ratio: ratio\n };\n}\n\nvar Listeners =\n/*#__PURE__*/\nfunction () {\n function Listeners(player) {\n _classCallCheck(this, Listeners);\n\n this.player = player;\n this.lastKey = null;\n this.focusTimer = null;\n this.lastKeyDown = null;\n this.handleKey = this.handleKey.bind(this);\n this.toggleMenu = this.toggleMenu.bind(this);\n this.setTabFocus = this.setTabFocus.bind(this);\n this.firstTouch = this.firstTouch.bind(this);\n } // Handle key presses\n\n\n _createClass(Listeners, [{\n key: \"handleKey\",\n value: function handleKey(event) {\n var player = this.player;\n var elements = player.elements;\n var code = event.keyCode ? event.keyCode : event.which;\n var pressed = event.type === 'keydown';\n var repeat = pressed && code === this.lastKey; // Bail if a modifier key is set\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) {\n return;\n } // If the event is bubbled from the media element\n // Firefox doesn't get the keycode for whatever reason\n\n\n if (!is$1.number(code)) {\n return;\n } // Seek by the number keys\n\n\n var seekByKey = function seekByKey() {\n // Divide the max duration into 10th's and times by the number value\n player.currentTime = player.duration / 10 * (code - 48);\n }; // Handle the key on keydown\n // Reset on keyup\n\n\n if (pressed) {\n // Check focused element\n // and if the focused element is not editable (e.g. text input)\n // and any that accept key input http://webaim.org/techniques/keyboard/\n var focused = document.activeElement;\n\n if (is$1.element(focused)) {\n var editable = player.config.selectors.editable;\n var seek = elements.inputs.seek;\n\n if (focused !== seek && matches$1(focused, editable)) {\n return;\n }\n\n if (event.which === 32 && matches$1(focused, 'button, [role^=\"menuitem\"]')) {\n return;\n }\n } // Which keycodes should we prevent default\n\n\n var preventDefault = [32, 37, 38, 39, 40, 48, 49, 50, 51, 52, 53, 54, 56, 57, 67, 70, 73, 75, 76, 77, 79]; // If the code is found prevent default (e.g. prevent scrolling for arrows)\n\n if (preventDefault.includes(code)) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n switch (code) {\n case 48:\n case 49:\n case 50:\n case 51:\n case 52:\n case 53:\n case 54:\n case 55:\n case 56:\n case 57:\n // 0-9\n if (!repeat) {\n seekByKey();\n }\n\n break;\n\n case 32:\n case 75:\n // Space and K key\n if (!repeat) {\n player.togglePlay();\n }\n\n break;\n\n case 38:\n // Arrow up\n player.increaseVolume(0.1);\n break;\n\n case 40:\n // Arrow down\n player.decreaseVolume(0.1);\n break;\n\n case 77:\n // M key\n if (!repeat) {\n player.muted = !player.muted;\n }\n\n break;\n\n case 39:\n // Arrow forward\n player.forward();\n break;\n\n case 37:\n // Arrow back\n player.rewind();\n break;\n\n case 70:\n // F key\n player.fullscreen.toggle();\n break;\n\n case 67:\n // C key\n if (!repeat) {\n player.toggleCaptions();\n }\n\n break;\n\n case 76:\n // L key\n player.loop = !player.loop;\n break;\n\n default:\n break;\n } // Escape is handle natively when in full screen\n // So we only need to worry about non native\n\n\n if (code === 27 && !player.fullscreen.usingNative && player.fullscreen.active) {\n player.fullscreen.toggle();\n } // Store last code for next cycle\n\n\n this.lastKey = code;\n } else {\n this.lastKey = null;\n }\n } // Toggle menu\n\n }, {\n key: \"toggleMenu\",\n value: function toggleMenu(event) {\n controls.toggleMenu.call(this.player, event);\n } // Device is touch enabled\n\n }, {\n key: \"firstTouch\",\n value: function firstTouch() {\n var player = this.player;\n var elements = player.elements;\n player.touch = true; // Add touch class\n\n toggleClass(elements.container, player.config.classNames.isTouch, true);\n }\n }, {\n key: \"setTabFocus\",\n value: function setTabFocus(event) {\n var player = this.player;\n var elements = player.elements;\n clearTimeout(this.focusTimer); // Ignore any key other than tab\n\n if (event.type === 'keydown' && event.which !== 9) {\n return;\n } // Store reference to event timeStamp\n\n\n if (event.type === 'keydown') {\n this.lastKeyDown = event.timeStamp;\n } // Remove current classes\n\n\n var removeCurrent = function removeCurrent() {\n var className = player.config.classNames.tabFocus;\n var current = getElements.call(player, \".\".concat(className));\n toggleClass(current, className, false);\n }; // Determine if a key was pressed to trigger this event\n\n\n var wasKeyDown = event.timeStamp - this.lastKeyDown <= 20; // Ignore focus events if a key was pressed prior\n\n if (event.type === 'focus' && !wasKeyDown) {\n return;\n } // Remove all current\n\n\n removeCurrent(); // Delay the adding of classname until the focus has changed\n // This event fires before the focusin event\n\n this.focusTimer = setTimeout(function () {\n var focused = document.activeElement; // Ignore if current focus element isn't inside the player\n\n if (!elements.container.contains(focused)) {\n return;\n }\n\n toggleClass(document.activeElement, player.config.classNames.tabFocus, true);\n }, 10);\n } // Global window & document listeners\n\n }, {\n key: \"global\",\n value: function global() {\n var toggle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;\n var player = this.player; // Keyboard shortcuts\n\n if (player.config.keyboard.global) {\n toggleListener.call(player, window, 'keydown keyup', this.handleKey, toggle, false);\n } // Click anywhere closes menu\n\n\n toggleListener.call(player, document.body, 'click', this.toggleMenu, toggle); // Detect touch by events\n\n once.call(player, document.body, 'touchstart', this.firstTouch); // Tab focus detection\n\n toggleListener.call(player, document.body, 'keydown focus blur', this.setTabFocus, toggle, false, true);\n } // Container listeners\n\n }, {\n key: \"container\",\n value: function container() {\n var player = this.player;\n var config = player.config,\n elements = player.elements,\n timers = player.timers; // Keyboard shortcuts\n\n if (!config.keyboard.global && config.keyboard.focused) {\n on.call(player, elements.container, 'keydown keyup', this.handleKey, false);\n } // Toggle controls on mouse events and entering fullscreen\n\n\n on.call(player, elements.container, 'mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen', function (event) {\n var controls$$1 = elements.controls; // Remove button states for fullscreen\n\n if (controls$$1 && event.type === 'enterfullscreen') {\n controls$$1.pressed = false;\n controls$$1.hover = false;\n } // Show, then hide after a timeout unless another control event occurs\n\n\n var show = ['touchstart', 'touchmove', 'mousemove'].includes(event.type);\n var delay = 0;\n\n if (show) {\n ui.toggleControls.call(player, true); // Use longer timeout for touch devices\n\n delay = player.touch ? 3000 : 2000;\n } // Clear timer\n\n\n clearTimeout(timers.controls); // Set new timer to prevent flicker when seeking\n\n timers.controls = setTimeout(function () {\n return ui.toggleControls.call(player, false);\n }, delay);\n }); // Force edge to repaint on exit fullscreen\n // TODO: Fix weird bug where Edge doesn't re-draw when exiting fullscreen\n\n /* if (browser.isEdge) {\n on.call(player, elements.container, 'exitfullscreen', () => {\n setTimeout(() => repaint(elements.container), 100);\n });\n } */\n // Set a gutter for Vimeo\n\n var setGutter = function setGutter(ratio, padding, toggle) {\n if (!player.isVimeo) {\n return;\n }\n\n var target = player.elements.wrapper.firstChild;\n\n var _ratio$split$map = ratio.split(':').map(Number),\n _ratio$split$map2 = _slicedToArray(_ratio$split$map, 2),\n height = _ratio$split$map2[1];\n\n var _player$embed$ratio$s = player.embed.ratio.split(':').map(Number),\n _player$embed$ratio$s2 = _slicedToArray(_player$embed$ratio$s, 2),\n videoWidth = _player$embed$ratio$s2[0],\n videoHeight = _player$embed$ratio$s2[1];\n\n target.style.maxWidth = toggle ? \"\".concat(height / videoHeight * videoWidth, \"px\") : null;\n target.style.margin = toggle ? '0 auto' : null;\n }; // Resize on fullscreen change\n\n\n var setPlayerSize = function setPlayerSize(measure) {\n // If we don't need to measure the viewport\n if (!measure) {\n return setAspectRatio.call(player);\n }\n\n var rect = elements.container.getBoundingClientRect();\n var width = rect.width,\n height = rect.height;\n return setAspectRatio.call(player, \"\".concat(width, \":\").concat(height));\n };\n\n var resized = function resized() {\n window.clearTimeout(timers.resized);\n timers.resized = window.setTimeout(setPlayerSize, 50);\n };\n\n on.call(player, elements.container, 'enterfullscreen exitfullscreen', function (event) {\n var _player$fullscreen = player.fullscreen,\n target = _player$fullscreen.target,\n usingNative = _player$fullscreen.usingNative; // Ignore for iOS native\n\n if (!player.isEmbed || target !== elements.container) {\n return;\n }\n\n var isEnter = event.type === 'enterfullscreen'; // Set the player size when entering fullscreen to viewport size\n\n var _setPlayerSize = setPlayerSize(isEnter),\n padding = _setPlayerSize.padding,\n ratio = _setPlayerSize.ratio; // Set Vimeo gutter\n\n\n setGutter(ratio, padding, isEnter); // If not using native fullscreen, we need to check for resizes of viewport\n\n if (!usingNative) {\n if (isEnter) {\n on.call(player, window, 'resize', resized);\n } else {\n off.call(player, window, 'resize', resized);\n }\n }\n });\n } // Listen for media events\n\n }, {\n key: \"media\",\n value: function media() {\n var _this = this;\n\n var player = this.player;\n var elements = player.elements; // Time change on media\n\n on.call(player, player.media, 'timeupdate seeking seeked', function (event) {\n return controls.timeUpdate.call(player, event);\n }); // Display duration\n\n on.call(player, player.media, 'durationchange loadeddata loadedmetadata', function (event) {\n return controls.durationUpdate.call(player, event);\n }); // Check for audio tracks on load\n // We can't use `loadedmetadata` as it doesn't seem to have audio tracks at that point\n\n on.call(player, player.media, 'canplay loadeddata', function () {\n toggleHidden(elements.volume, !player.hasAudio);\n toggleHidden(elements.buttons.mute, !player.hasAudio);\n }); // Handle the media finishing\n\n on.call(player, player.media, 'ended', function () {\n // Show poster on end\n if (player.isHTML5 && player.isVideo && player.config.resetOnEnd) {\n // Restart\n player.restart();\n }\n }); // Check for buffer progress\n\n on.call(player, player.media, 'progress playing seeking seeked', function (event) {\n return controls.updateProgress.call(player, event);\n }); // Handle volume changes\n\n on.call(player, player.media, 'volumechange', function (event) {\n return controls.updateVolume.call(player, event);\n }); // Handle play/pause\n\n on.call(player, player.media, 'playing play pause ended emptied timeupdate', function (event) {\n return ui.checkPlaying.call(player, event);\n }); // Loading state\n\n on.call(player, player.media, 'waiting canplay seeked playing', function (event) {\n return ui.checkLoading.call(player, event);\n }); // Click video\n\n if (player.supported.ui && player.config.clickToPlay && !player.isAudio) {\n // Re-fetch the wrapper\n var wrapper = getElement.call(player, \".\".concat(player.config.classNames.video)); // Bail if there's no wrapper (this should never happen)\n\n if (!is$1.element(wrapper)) {\n return;\n } // On click play, pause or restart\n\n\n on.call(player, elements.container, 'click', function (event) {\n var targets = [elements.container, wrapper]; // Ignore if click if not container or in video wrapper\n\n if (!targets.includes(event.target) && !wrapper.contains(event.target)) {\n return;\n } // Touch devices will just show controls (if hidden)\n\n\n if (player.touch && player.config.hideControls) {\n return;\n }\n\n if (player.ended) {\n _this.proxy(event, player.restart, 'restart');\n\n _this.proxy(event, player.play, 'play');\n } else {\n _this.proxy(event, player.togglePlay, 'play');\n }\n });\n } // Disable right click\n\n\n if (player.supported.ui && player.config.disableContextMenu) {\n on.call(player, elements.wrapper, 'contextmenu', function (event) {\n event.preventDefault();\n }, false);\n } // Volume change\n\n\n on.call(player, player.media, 'volumechange', function () {\n // Save to storage\n player.storage.set({\n volume: player.volume,\n muted: player.muted\n });\n }); // Speed change\n\n on.call(player, player.media, 'ratechange', function () {\n // Update UI\n controls.updateSetting.call(player, 'speed'); // Save to storage\n\n\n player.storage.set({\n speed: player.speed\n });\n }); // Quality change\n\n on.call(player, player.media, 'qualitychange', function (event) {\n // Update UI\n controls.updateSetting.call(player, 'quality', null, event.detail.quality);\n }); // Update download link when ready and if quality changes\n\n on.call(player, player.media, 'ready qualitychange', function () {\n controls.setDownloadLink.call(player);\n }); // Proxy events to container\n // Bubble up key events for Edge\n\n var proxyEvents = player.config.events.concat(['keyup', 'keydown']).join(' ');\n on.call(player, player.media, proxyEvents, function (event) {\n var _event$detail = event.detail,\n detail = _event$detail === void 0 ? {} : _event$detail; // Get error details from media\n\n if (event.type === 'error') {\n detail = player.media.error;\n }\n\n triggerEvent.call(player, elements.container, event.type, true, detail);\n });\n } // Run default and custom handlers\n\n }, {\n key: \"proxy\",\n value: function proxy(event, defaultHandler, customHandlerKey) {\n var player = this.player;\n var customHandler = player.config.listeners[customHandlerKey];\n var hasCustomHandler = is$1.function(customHandler);\n var returned = true; // Execute custom handler\n\n if (hasCustomHandler) {\n returned = customHandler.call(player, event);\n } // Only call default handler if not prevented in custom handler\n\n\n if (returned && is$1.function(defaultHandler)) {\n defaultHandler.call(player, event);\n }\n } // Trigger custom and default handlers\n\n }, {\n key: \"bind\",\n value: function bind(element, type, defaultHandler, customHandlerKey) {\n var _this2 = this;\n\n var passive = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var player = this.player;\n var customHandler = player.config.listeners[customHandlerKey];\n var hasCustomHandler = is$1.function(customHandler);\n on.call(player, element, type, function (event) {\n return _this2.proxy(event, defaultHandler, customHandlerKey);\n }, passive && !hasCustomHandler);\n } // Listen for control events\n\n }, {\n key: \"controls\",\n value: function controls$$1() {\n var _this3 = this;\n\n var player = this.player;\n var elements = player.elements; // IE doesn't support input event, so we fallback to change\n\n var inputEvent = browser.isIE ? 'change' : 'input'; // Play/pause toggle\n\n if (elements.buttons.play) {\n Array.from(elements.buttons.play).forEach(function (button) {\n _this3.bind(button, 'click', player.togglePlay, 'play');\n });\n } // Pause\n\n\n this.bind(elements.buttons.restart, 'click', player.restart, 'restart'); // Rewind\n\n this.bind(elements.buttons.rewind, 'click', player.rewind, 'rewind'); // Rewind\n\n this.bind(elements.buttons.fastForward, 'click', player.forward, 'fastForward'); // Mute toggle\n\n this.bind(elements.buttons.mute, 'click', function () {\n player.muted = !player.muted;\n }, 'mute'); // Captions toggle\n\n this.bind(elements.buttons.captions, 'click', function () {\n return player.toggleCaptions();\n }); // Download\n\n this.bind(elements.buttons.download, 'click', function () {\n triggerEvent.call(player, player.media, 'download');\n }, 'download'); // Fullscreen toggle\n\n this.bind(elements.buttons.fullscreen, 'click', function () {\n player.fullscreen.toggle();\n }, 'fullscreen'); // Picture-in-Picture\n\n this.bind(elements.buttons.pip, 'click', function () {\n player.pip = 'toggle';\n }, 'pip'); // Airplay\n\n this.bind(elements.buttons.airplay, 'click', player.airplay, 'airplay'); // Settings menu - click toggle\n\n this.bind(elements.buttons.settings, 'click', function (event) {\n // Prevent the document click listener closing the menu\n event.stopPropagation();\n\n controls.toggleMenu.call(player, event);\n }); // Settings menu - keyboard toggle\n // We have to bind to keyup otherwise Firefox triggers a click when a keydown event handler shifts focus\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1220143\n\n this.bind(elements.buttons.settings, 'keyup', function (event) {\n var code = event.which; // We only care about space and return\n\n if (![13, 32].includes(code)) {\n return;\n } // Because return triggers a click anyway, all we need to do is set focus\n\n\n if (code === 13) {\n controls.focusFirstMenuItem.call(player, null, true);\n\n return;\n } // Prevent scroll\n\n\n event.preventDefault(); // Prevent playing video (Firefox)\n\n event.stopPropagation(); // Toggle menu\n\n controls.toggleMenu.call(player, event);\n }, null, false // Can't be passive as we're preventing default\n ); // Escape closes menu\n\n this.bind(elements.settings.menu, 'keydown', function (event) {\n if (event.which === 27) {\n controls.toggleMenu.call(player, event);\n }\n }); // Set range input alternative \"value\", which matches the tooltip time (#954)\n\n this.bind(elements.inputs.seek, 'mousedown mousemove', function (event) {\n var rect = elements.progress.getBoundingClientRect();\n var percent = 100 / rect.width * (event.pageX - rect.left);\n event.currentTarget.setAttribute('seek-value', percent);\n }); // Pause while seeking\n\n this.bind(elements.inputs.seek, 'mousedown mouseup keydown keyup touchstart touchend', function (event) {\n var seek = event.currentTarget;\n var code = event.keyCode ? event.keyCode : event.which;\n var attribute = 'play-on-seeked';\n\n if (is$1.keyboardEvent(event) && code !== 39 && code !== 37) {\n return;\n } // Record seek time so we can prevent hiding controls for a few seconds after seek\n\n\n player.lastSeekTime = Date.now(); // Was playing before?\n\n var play = seek.hasAttribute(attribute); // Done seeking\n\n var done = ['mouseup', 'touchend', 'keyup'].includes(event.type); // If we're done seeking and it was playing, resume playback\n\n if (play && done) {\n seek.removeAttribute(attribute);\n player.play();\n } else if (!done && player.playing) {\n seek.setAttribute(attribute, '');\n player.pause();\n }\n }); // Fix range inputs on iOS\n // Super weird iOS bug where after you interact with an ,\n // it takes over further interactions on the page. This is a hack\n\n if (browser.isIos) {\n var inputs = getElements.call(player, 'input[type=\"range\"]');\n Array.from(inputs).forEach(function (input) {\n return _this3.bind(input, inputEvent, function (event) {\n return repaint(event.target);\n });\n });\n } // Seek\n\n\n this.bind(elements.inputs.seek, inputEvent, function (event) {\n var seek = event.currentTarget; // If it exists, use seek-value instead of \"value\" for consistency with tooltip time (#954)\n\n var seekTo = seek.getAttribute('seek-value');\n\n if (is$1.empty(seekTo)) {\n seekTo = seek.value;\n }\n\n seek.removeAttribute('seek-value');\n player.currentTime = seekTo / seek.max * player.duration;\n }, 'seek'); // Seek tooltip\n\n this.bind(elements.progress, 'mouseenter mouseleave mousemove', function (event) {\n return controls.updateSeekTooltip.call(player, event);\n }); // Preview thumbnails plugin\n // TODO: Really need to work on some sort of plug-in wide event bus or pub-sub for this\n\n this.bind(elements.progress, 'mousemove touchmove', function (event) {\n var previewThumbnails = player.previewThumbnails;\n\n if (previewThumbnails && previewThumbnails.loaded) {\n previewThumbnails.startMove(event);\n }\n }); // Hide thumbnail preview - on mouse click, mouse leave, and video play/seek. All four are required, e.g., for buffering\n\n this.bind(elements.progress, 'mouseleave click', function () {\n var previewThumbnails = player.previewThumbnails;\n\n if (previewThumbnails && previewThumbnails.loaded) {\n previewThumbnails.endMove(false, true);\n }\n }); // Show scrubbing preview\n\n this.bind(elements.progress, 'mousedown touchstart', function (event) {\n var previewThumbnails = player.previewThumbnails;\n\n if (previewThumbnails && previewThumbnails.loaded) {\n previewThumbnails.startScrubbing(event);\n }\n });\n this.bind(elements.progress, 'mouseup touchend', function (event) {\n var previewThumbnails = player.previewThumbnails;\n\n if (previewThumbnails && previewThumbnails.loaded) {\n previewThumbnails.endScrubbing(event);\n }\n }); // Polyfill for lower fill in for webkit\n\n if (browser.isWebkit) {\n Array.from(getElements.call(player, 'input[type=\"range\"]')).forEach(function (element) {\n _this3.bind(element, 'input', function (event) {\n return controls.updateRangeFill.call(player, event.target);\n });\n });\n } // Current time invert\n // Only if one time element is used for both currentTime and duration\n\n\n if (player.config.toggleInvert && !is$1.element(elements.display.duration)) {\n this.bind(elements.display.currentTime, 'click', function () {\n // Do nothing if we're at the start\n if (player.currentTime === 0) {\n return;\n }\n\n player.config.invertTime = !player.config.invertTime;\n\n controls.timeUpdate.call(player);\n });\n } // Volume\n\n\n this.bind(elements.inputs.volume, inputEvent, function (event) {\n player.volume = event.target.value;\n }, 'volume'); // Update controls.hover state (used for ui.toggleControls to avoid hiding when interacting)\n\n this.bind(elements.controls, 'mouseenter mouseleave', function (event) {\n elements.controls.hover = !player.touch && event.type === 'mouseenter';\n }); // Update controls.pressed state (used for ui.toggleControls to avoid hiding when interacting)\n\n this.bind(elements.controls, 'mousedown mouseup touchstart touchend touchcancel', function (event) {\n elements.controls.pressed = ['mousedown', 'touchstart'].includes(event.type);\n }); // Show controls when they receive focus (e.g., when using keyboard tab key)\n\n this.bind(elements.controls, 'focusin', function () {\n var config = player.config,\n elements = player.elements,\n timers = player.timers; // Skip transition to prevent focus from scrolling the parent element\n\n toggleClass(elements.controls, config.classNames.noTransition, true); // Toggle\n\n ui.toggleControls.call(player, true); // Restore transition\n\n setTimeout(function () {\n toggleClass(elements.controls, config.classNames.noTransition, false);\n }, 0); // Delay a little more for mouse users\n\n var delay = _this3.touch ? 3000 : 4000; // Clear timer\n\n clearTimeout(timers.controls); // Hide again after delay\n\n timers.controls = setTimeout(function () {\n return ui.toggleControls.call(player, false);\n }, delay);\n }); // Mouse wheel for volume\n\n this.bind(elements.inputs.volume, 'wheel', function (event) {\n // Detect \"natural\" scroll - suppored on OS X Safari only\n // Other browsers on OS X will be inverted until support improves\n var inverted = event.webkitDirectionInvertedFromDevice; // Get delta from event. Invert if `inverted` is true\n\n var _map = [event.deltaX, -event.deltaY].map(function (value) {\n return inverted ? -value : value;\n }),\n _map2 = _slicedToArray(_map, 2),\n x = _map2[0],\n y = _map2[1]; // Using the biggest delta, normalize to 1 or -1 (or 0 if no delta)\n\n\n var direction = Math.sign(Math.abs(x) > Math.abs(y) ? x : y); // Change the volume by 2%\n\n player.increaseVolume(direction / 50); // Don't break page scrolling at max and min\n\n var volume = player.media.volume;\n\n if (direction === 1 && volume < 1 || direction === -1 && volume > 0) {\n event.preventDefault();\n }\n }, 'volume', false);\n }\n }]);\n\n return Listeners;\n}();\n\nvar commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar loadjs_umd = createCommonjsModule(function (module, exports) {\n (function (root, factory) {\n {\n module.exports = factory();\n }\n })(commonjsGlobal, function () {\n /**\n * Global dependencies.\n * @global {Object} document - DOM\n */\n var devnull = function devnull() {},\n bundleIdCache = {},\n bundleResultCache = {},\n bundleCallbackQueue = {};\n /**\n * Subscribe to bundle load event.\n * @param {string[]} bundleIds - Bundle ids\n * @param {Function} callbackFn - The callback function\n */\n\n\n function subscribe(bundleIds, callbackFn) {\n // listify\n bundleIds = bundleIds.push ? bundleIds : [bundleIds];\n var depsNotFound = [],\n i = bundleIds.length,\n numWaiting = i,\n fn,\n bundleId,\n r,\n q; // define callback function\n\n fn = function fn(bundleId, pathsNotFound) {\n if (pathsNotFound.length) depsNotFound.push(bundleId);\n numWaiting--;\n if (!numWaiting) callbackFn(depsNotFound);\n }; // register callback\n\n\n while (i--) {\n bundleId = bundleIds[i]; // execute callback if in result cache\n\n r = bundleResultCache[bundleId];\n\n if (r) {\n fn(bundleId, r);\n continue;\n } // add to callback queue\n\n\n q = bundleCallbackQueue[bundleId] = bundleCallbackQueue[bundleId] || [];\n q.push(fn);\n }\n }\n /**\n * Publish bundle load event.\n * @param {string} bundleId - Bundle id\n * @param {string[]} pathsNotFound - List of files not found\n */\n\n\n function publish(bundleId, pathsNotFound) {\n // exit if id isn't defined\n if (!bundleId) return;\n var q = bundleCallbackQueue[bundleId]; // cache result\n\n bundleResultCache[bundleId] = pathsNotFound; // exit if queue is empty\n\n if (!q) return; // empty callback queue\n\n while (q.length) {\n q[0](bundleId, pathsNotFound);\n q.splice(0, 1);\n }\n }\n /**\n * Execute callbacks.\n * @param {Object or Function} args - The callback args\n * @param {string[]} depsNotFound - List of dependencies not found\n */\n\n\n function executeCallbacks(args, depsNotFound) {\n // accept function as argument\n if (args.call) args = {\n success: args\n }; // success and error callbacks\n\n if (depsNotFound.length) (args.error || devnull)(depsNotFound);else (args.success || devnull)(args);\n }\n /**\n * Load individual file.\n * @param {string} path - The file path\n * @param {Function} callbackFn - The callback function\n */\n\n\n function loadFile(path, callbackFn, args, numTries) {\n var doc = document,\n async = args.async,\n maxTries = (args.numRetries || 0) + 1,\n beforeCallbackFn = args.before || devnull,\n pathStripped = path.replace(/^(css|img)!/, ''),\n isCss,\n e;\n numTries = numTries || 0;\n\n if (/(^css!|\\.css$)/.test(path)) {\n isCss = true; // css\n\n e = doc.createElement('link');\n e.rel = 'stylesheet';\n e.href = pathStripped; //.replace(/^css!/, ''); // remove \"css!\" prefix\n } else if (/(^img!|\\.(png|gif|jpg|svg)$)/.test(path)) {\n // image\n e = doc.createElement('img');\n e.src = pathStripped;\n } else {\n // javascript\n e = doc.createElement('script');\n e.src = path;\n e.async = async === undefined ? true : async;\n }\n\n e.onload = e.onerror = e.onbeforeload = function (ev) {\n var result = ev.type[0]; // Note: The following code isolates IE using `hideFocus` and treats empty\n // stylesheets as failures to get around lack of onerror support\n\n if (isCss && 'hideFocus' in e) {\n try {\n if (!e.sheet.cssText.length) result = 'e';\n } catch (x) {\n // sheets objects created from load errors don't allow access to\n // `cssText` (unless error is Code:18 SecurityError)\n if (x.code != 18) result = 'e';\n }\n } // handle retries in case of load failure\n\n\n if (result == 'e') {\n // increment counter\n numTries += 1; // exit function and try again\n\n if (numTries < maxTries) {\n return loadFile(path, callbackFn, args, numTries);\n }\n } // execute callback\n\n\n callbackFn(path, result, ev.defaultPrevented);\n }; // add to document (unless callback returns `false`)\n\n\n if (beforeCallbackFn(path, e) !== false) doc.head.appendChild(e);\n }\n /**\n * Load multiple files.\n * @param {string[]} paths - The file paths\n * @param {Function} callbackFn - The callback function\n */\n\n\n function loadFiles(paths, callbackFn, args) {\n // listify paths\n paths = paths.push ? paths : [paths];\n var numWaiting = paths.length,\n x = numWaiting,\n pathsNotFound = [],\n fn,\n i; // define callback function\n\n fn = function fn(path, result, defaultPrevented) {\n // handle error\n if (result == 'e') pathsNotFound.push(path); // handle beforeload event. If defaultPrevented then that means the load\n // will be blocked (ex. Ghostery/ABP on Safari)\n\n if (result == 'b') {\n if (defaultPrevented) pathsNotFound.push(path);else return;\n }\n\n numWaiting--;\n if (!numWaiting) callbackFn(pathsNotFound);\n }; // load scripts\n\n\n for (i = 0; i < x; i++) {\n loadFile(paths[i], fn, args);\n }\n }\n /**\n * Initiate script load and register bundle.\n * @param {(string|string[])} paths - The file paths\n * @param {(string|Function)} [arg1] - The bundleId or success callback\n * @param {Function} [arg2] - The success or error callback\n * @param {Function} [arg3] - The error callback\n */\n\n\n function loadjs(paths, arg1, arg2) {\n var bundleId, args; // bundleId (if string)\n\n if (arg1 && arg1.trim) bundleId = arg1; // args (default is {})\n\n args = (bundleId ? arg2 : arg1) || {}; // throw error if bundle is already defined\n\n if (bundleId) {\n if (bundleId in bundleIdCache) {\n throw \"LoadJS\";\n } else {\n bundleIdCache[bundleId] = true;\n }\n } // load scripts\n\n\n loadFiles(paths, function (pathsNotFound) {\n // execute callbacks\n executeCallbacks(args, pathsNotFound); // publish bundle load event\n\n publish(bundleId, pathsNotFound);\n }, args);\n }\n /**\n * Execute callbacks when dependencies have been satisfied.\n * @param {(string|string[])} deps - List of bundle ids\n * @param {Object} args - success/error arguments\n */\n\n\n loadjs.ready = function ready(deps, args) {\n // subscribe to bundle load event\n subscribe(deps, function (depsNotFound) {\n // execute callbacks\n executeCallbacks(args, depsNotFound);\n });\n return loadjs;\n };\n /**\n * Manually satisfy bundle dependencies.\n * @param {string} bundleId - The bundle id\n */\n\n\n loadjs.done = function done(bundleId) {\n publish(bundleId, []);\n };\n /**\n * Reset loadjs dependencies statuses\n */\n\n\n loadjs.reset = function reset() {\n bundleIdCache = {};\n bundleResultCache = {};\n bundleCallbackQueue = {};\n };\n /**\n * Determine if bundle has already been defined\n * @param String} bundleId - The bundle id\n */\n\n\n loadjs.isDefined = function isDefined(bundleId) {\n return bundleId in bundleIdCache;\n }; // export\n\n\n return loadjs;\n });\n});\n\n// ==========================================================================\nfunction loadScript(url) {\n return new Promise(function (resolve, reject) {\n loadjs_umd(url, {\n success: resolve,\n error: reject\n });\n });\n}\n\nfunction parseId(url) {\n if (is$1.empty(url)) {\n return null;\n }\n\n if (is$1.number(Number(url))) {\n return url;\n }\n\n var regex = /^.*(vimeo.com\\/|video\\/)(\\d+).*/;\n return url.match(regex) ? RegExp.$2 : url;\n} // Set playback state and trigger change (only on actual change)\n\n\nfunction assurePlaybackState(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\nvar vimeo = {\n setup: function setup() {\n var _this = this;\n\n // Add embed class for responsive\n toggleClass(this.elements.wrapper, this.config.classNames.embed, true); // Set intial ratio\n\n setAspectRatio.call(this); // Load the API if not already\n\n if (!is$1.object(window.Vimeo)) {\n loadScript(this.config.urls.vimeo.sdk).then(function () {\n vimeo.ready.call(_this);\n }).catch(function (error) {\n _this.debug.warn('Vimeo API failed to load', error);\n });\n } else {\n vimeo.ready.call(this);\n }\n },\n // API Ready\n ready: function ready$$1() {\n var _this2 = this;\n\n var player = this;\n var config = player.config.vimeo; // Get Vimeo params for the iframe\n\n var params = buildUrlParams(extend({}, {\n loop: player.config.loop.active,\n autoplay: player.autoplay,\n muted: player.muted,\n gesture: 'media',\n playsinline: !this.config.fullscreen.iosNative\n }, config)); // Get the source URL or ID\n\n var source = player.media.getAttribute('src'); // Get from
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(player.config.attributes.embed.id);\n }\n\n var id = parseId(source); // Build an iframe\n\n var iframe = createElement('iframe');\n var src = format(player.config.urls.vimeo.iframe, id, params);\n iframe.setAttribute('src', src);\n iframe.setAttribute('allowfullscreen', '');\n iframe.setAttribute('allowtransparency', '');\n iframe.setAttribute('allow', 'autoplay'); // Get poster, if already set\n\n var poster = player.poster; // Inject the package\n\n var wrapper = createElement('div', {\n poster: poster,\n class: player.config.classNames.embedContainer\n });\n wrapper.appendChild(iframe);\n player.media = replaceElement(wrapper, player.media); // Get poster image\n\n fetch(format(player.config.urls.vimeo.api, id), 'json').then(function (response) {\n if (is$1.empty(response)) {\n return;\n } // Get the URL for thumbnail\n\n\n var url = new URL(response[0].thumbnail_large); // Get original image\n\n url.pathname = \"\".concat(url.pathname.split('_')[0], \".jpg\"); // Set and show poster\n\n ui.setPoster.call(player, url.href).catch(function () {});\n }); // Setup instance\n // https://github.com/vimeo/player.js\n\n player.embed = new window.Vimeo.Player(iframe, {\n autopause: player.config.autopause,\n muted: player.muted\n });\n player.media.paused = true;\n player.media.currentTime = 0; // Disable native text track rendering\n\n if (player.supported.ui) {\n player.embed.disableTextTrack();\n } // Create a faux HTML5 API using the Vimeo API\n\n\n player.media.play = function () {\n assurePlaybackState.call(player, true);\n return player.embed.play();\n };\n\n player.media.pause = function () {\n assurePlaybackState.call(player, false);\n return player.embed.pause();\n };\n\n player.media.stop = function () {\n player.pause();\n player.currentTime = 0;\n }; // Seeking\n\n\n var currentTime = player.media.currentTime;\n Object.defineProperty(player.media, 'currentTime', {\n get: function get() {\n return currentTime;\n },\n set: function set(time) {\n // Vimeo will automatically play on seek if the video hasn't been played before\n // Get current paused state and volume etc\n var embed = player.embed,\n media = player.media,\n paused = player.paused,\n volume = player.volume;\n var restorePause = paused && !embed.hasPlayed; // Set seeking state and trigger event\n\n media.seeking = true;\n triggerEvent.call(player, media, 'seeking'); // If paused, mute until seek is complete\n\n Promise.resolve(restorePause && embed.setVolume(0)) // Seek\n .then(function () {\n return embed.setCurrentTime(time);\n }) // Restore paused\n .then(function () {\n return restorePause && embed.pause();\n }) // Restore volume\n .then(function () {\n return restorePause && embed.setVolume(volume);\n }).catch(function () {// Do nothing\n });\n }\n }); // Playback speed\n\n var speed = player.config.speed.selected;\n Object.defineProperty(player.media, 'playbackRate', {\n get: function get() {\n return speed;\n },\n set: function set(input) {\n player.embed.setPlaybackRate(input).then(function () {\n speed = input;\n triggerEvent.call(player, player.media, 'ratechange');\n }).catch(function (error) {\n // Hide menu item (and menu if empty)\n if (error.name === 'Error') {\n controls.setSpeedMenu.call(player, []);\n }\n });\n }\n }); // Volume\n\n var volume = player.config.volume;\n Object.defineProperty(player.media, 'volume', {\n get: function get() {\n return volume;\n },\n set: function set(input) {\n player.embed.setVolume(input).then(function () {\n volume = input;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Muted\n\n var muted = player.config.muted;\n Object.defineProperty(player.media, 'muted', {\n get: function get() {\n return muted;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : false;\n player.embed.setVolume(toggle ? 0 : player.config.volume).then(function () {\n muted = toggle;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Loop\n\n var loop = player.config.loop;\n Object.defineProperty(player.media, 'loop', {\n get: function get() {\n return loop;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : player.config.loop.active;\n player.embed.setLoop(toggle).then(function () {\n loop = toggle;\n });\n }\n }); // Source\n\n var currentSrc;\n player.embed.getVideoUrl().then(function (value) {\n currentSrc = value;\n controls.setDownloadLink.call(player);\n }).catch(function (error) {\n _this2.debug.warn(error);\n });\n Object.defineProperty(player.media, 'currentSrc', {\n get: function get() {\n return currentSrc;\n }\n }); // Ended\n\n Object.defineProperty(player.media, 'ended', {\n get: function get() {\n return player.currentTime === player.duration;\n }\n }); // Set aspect ratio based on video size\n\n Promise.all([player.embed.getVideoWidth(), player.embed.getVideoHeight()]).then(function (dimensions) {\n var _dimensions = _slicedToArray(dimensions, 2),\n width = _dimensions[0],\n height = _dimensions[1];\n\n player.embed.ratio = \"\".concat(width, \":\").concat(height);\n setAspectRatio.call(_this2, player.embed.ratio);\n }); // Set autopause\n\n player.embed.setAutopause(player.config.autopause).then(function (state) {\n player.config.autopause = state;\n }); // Get title\n\n player.embed.getVideoTitle().then(function (title) {\n player.config.title = title;\n ui.setTitle.call(_this2);\n }); // Get current time\n\n player.embed.getCurrentTime().then(function (value) {\n currentTime = value;\n triggerEvent.call(player, player.media, 'timeupdate');\n }); // Get duration\n\n player.embed.getDuration().then(function (value) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }); // Get captions\n\n player.embed.getTextTracks().then(function (tracks) {\n player.media.textTracks = tracks;\n captions.setup.call(player);\n });\n player.embed.on('cuechange', function (_ref) {\n var _ref$cues = _ref.cues,\n cues = _ref$cues === void 0 ? [] : _ref$cues;\n var strippedCues = cues.map(function (cue) {\n return stripHTML(cue.text);\n });\n captions.updateCues.call(player, strippedCues);\n });\n player.embed.on('loaded', function () {\n // Assure state and events are updated on autoplay\n player.embed.getPaused().then(function (paused) {\n assurePlaybackState.call(player, !paused);\n\n if (!paused) {\n triggerEvent.call(player, player.media, 'playing');\n }\n });\n\n if (is$1.element(player.embed.element) && player.supported.ui) {\n var frame = player.embed.element; // Fix keyboard focus issues\n // https://github.com/sampotts/plyr/issues/317\n\n frame.setAttribute('tabindex', -1);\n }\n });\n player.embed.on('play', function () {\n assurePlaybackState.call(player, true);\n triggerEvent.call(player, player.media, 'playing');\n });\n player.embed.on('pause', function () {\n assurePlaybackState.call(player, false);\n });\n player.embed.on('timeupdate', function (data) {\n player.media.seeking = false;\n currentTime = data.seconds;\n triggerEvent.call(player, player.media, 'timeupdate');\n });\n player.embed.on('progress', function (data) {\n player.media.buffered = data.percent;\n triggerEvent.call(player, player.media, 'progress'); // Check all loaded\n\n if (parseInt(data.percent, 10) === 1) {\n triggerEvent.call(player, player.media, 'canplaythrough');\n } // Get duration as if we do it before load, it gives an incorrect value\n // https://github.com/sampotts/plyr/issues/891\n\n\n player.embed.getDuration().then(function (value) {\n if (value !== player.media.duration) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }\n });\n });\n player.embed.on('seeked', function () {\n player.media.seeking = false;\n triggerEvent.call(player, player.media, 'seeked');\n });\n player.embed.on('ended', function () {\n player.media.paused = true;\n triggerEvent.call(player, player.media, 'ended');\n });\n player.embed.on('error', function (detail) {\n player.media.error = detail;\n triggerEvent.call(player, player.media, 'error');\n }); // Rebuild UI\n\n setTimeout(function () {\n return ui.build.call(player);\n }, 0);\n }\n};\n\n// ==========================================================================\n\nfunction 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\nfunction 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\nvar youtube = {\n setup: function setup() {\n var _this = this;\n\n // Add embed class for responsive\n toggleClass(this.elements.wrapper, this.config.classNames.embed, true); // Set aspect ratio\n\n setAspectRatio.call(this); // Setup API\n\n if (is$1.object(window.YT) && is$1.function(window.YT.Player)) {\n youtube.ready.call(this);\n } else {\n // Load the API\n loadScript(this.config.urls.youtube.sdk).catch(function (error) {\n _this.debug.warn('YouTube API failed to load', error);\n }); // Setup callback for the API\n // YouTube has it's own system of course...\n\n window.onYouTubeReadyCallbacks = window.onYouTubeReadyCallbacks || []; // Add to queue\n\n window.onYouTubeReadyCallbacks.push(function () {\n youtube.ready.call(_this);\n }); // Set callback to process queue\n\n window.onYouTubeIframeAPIReady = function () {\n window.onYouTubeReadyCallbacks.forEach(function (callback) {\n callback();\n });\n };\n }\n },\n // Get the media title\n getTitle: function getTitle(videoId) {\n var _this2 = this;\n\n // Try via undocumented API method first\n // This method disappears now and then though...\n // https://github.com/sampotts/plyr/issues/709\n if (is$1.function(this.embed.getVideoData)) {\n var _this$embed$getVideoD = this.embed.getVideoData(),\n title = _this$embed$getVideoD.title;\n\n if (is$1.empty(title)) {\n this.config.title = title;\n ui.setTitle.call(this);\n return;\n }\n } // Or via Google API\n\n\n var key = this.config.keys.google;\n\n if (is$1.string(key) && !is$1.empty(key)) {\n var url = format(this.config.urls.youtube.api, videoId, key);\n fetch(url).then(function (result) {\n if (is$1.object(result)) {\n _this2.config.title = result.items[0].snippet.title;\n ui.setTitle.call(_this2);\n }\n }).catch(function () {});\n }\n },\n // API ready\n ready: function ready$$1() {\n var player = this; // Ignore already setup (race condition)\n\n var currentId = player.media.getAttribute('id');\n\n if (!is$1.empty(currentId) && currentId.startsWith('youtube-')) {\n return;\n } // Get the source URL or ID\n\n\n var source = player.media.getAttribute('src'); // Get from
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(this.config.attributes.embed.id);\n } // Replace the