!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.videojs=e()}(this,function(){function t(t,e){xe(t).forEach(function(r){return e(t[r],r)})}function e(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return xe(t).reduce(function(r,n){return e(r,t[n],n)},r)}function r(e){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o0&&void 0!==arguments[0]?arguments[0]:"div",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments[3],o=Jt.createElement(t);return Object.getOwnPropertyNames(e).forEach(function(t){var r=e[t];-1!==t.indexOf("aria-")||"role"===t||"type"===t?(Me.warn(Ne(Ie,t,r)),o.setAttribute(t,r)):"textContent"===t?v(o,r):o[t]=r}),Object.getOwnPropertyNames(r).forEach(function(t){o.setAttribute(t,r[t])}),n&&I(o,n),o}function v(t,e){return void 0===t.textContent?t.innerText=e:t.textContent=e,t}function y(t,e){e.firstChild?e.insertBefore(t,e.firstChild):e.appendChild(t)}function g(t,e){return l(e),t.classList?t.classList.contains(e):c(e).test(t.className)}function m(t,e){return t.classList?t.classList.add(e):g(t,e)||(t.className=(t.className+" "+e).trim()),t}function _(t,e){return t.classList?t.classList.remove(e):(l(e),t.className=t.className.split(/\s+/).filter(function(t){return t!==e}).join(" ")),t}function b(t,e,r){var n=g(t,e);if("function"==typeof r&&(r=r(t,e)),"boolean"!=typeof r&&(r=!n),r!==n)return r?m(t,e):_(t,e),t}function T(t,e){Object.getOwnPropertyNames(e).forEach(function(r){var n=e[r];null===n||void 0===n||!1===n?t.removeAttribute(r):t.setAttribute(r,!0===n?"":n)})}function C(t){var e={};if(t&&t.attributes&&t.attributes.length>0)for(var r=t.attributes,n=r.length-1;n>=0;n--){var o=r[n].name,i=r[n].value;"boolean"!=typeof t[o]&&-1===",autoplay,controls,playsinline,loop,muted,default,defaultMuted,".indexOf(","+o+",")||(i=null!==i),e[o]=i}return e}function k(t,e){return t.getAttribute(e)}function E(t,e,r){t.setAttribute(e,r)}function S(t,e){t.removeAttribute(e)}function w(){Jt.body.focus(),Jt.onselectstart=function(){return!1}}function x(){Jt.onselectstart=function(){return!0}}function j(t){if(t&&t.getBoundingClientRect&&t.parentNode){var e=t.getBoundingClientRect(),r={};return["bottom","height","left","right","top","width"].forEach(function(t){void 0!==e[t]&&(r[t]=e[t])}),r.height||(r.height=parseFloat(s(t,"height"))),r.width||(r.width=parseFloat(s(t,"width"))),r}}function P(t){var e=void 0;if(t.getBoundingClientRect&&t.parentNode&&(e=t.getBoundingClientRect()),!e)return{left:0,top:0};var r=Jt.documentElement,n=Jt.body,o=r.clientLeft||n.clientLeft||0,i=Kt.pageXOffset||n.scrollLeft,s=e.left+i-o,a=r.clientTop||n.clientTop||0,l=Kt.pageYOffset||n.scrollTop,c=e.top+l-a;return{left:Math.round(s),top:Math.round(c)}}function A(t,e){var r={},n=P(t),o=t.offsetWidth,i=t.offsetHeight,s=n.top,a=n.left,l=e.pageY,c=e.pageX;return e.changedTouches&&(c=e.changedTouches[0].pageX,l=e.changedTouches[0].pageY),r.y=Math.max(0,Math.min(1,(s-l+i)/i)),r.x=Math.max(0,Math.min(1,(c-a)/o)),r}function O(t){return n(t)&&3===t.nodeType}function M(t){for(;t.firstChild;)t.removeChild(t.firstChild);return t}function N(t){return"function"==typeof t&&(t=t()),(Array.isArray(t)?t:[t]).map(function(t){return"function"==typeof t&&(t=t()),h(t)||O(t)?t:"string"==typeof t&&/\S/.test(t)?Jt.createTextNode(t):void 0}).filter(function(t){return t})}function I(t,e){return N(e).forEach(function(e){return t.appendChild(e)}),t}function D(t,e){return I(M(t),e)}function L(t){return void 0===t.button&&void 0===t.buttons||(0===t.button&&void 0===t.buttons||(9===ve||0===t.button&&1===t.buttons))}function R(){return Fe++}function F(t){var e=t[He];return e||(e=t[He]=R()),Be[e]||(Be[e]={}),Be[e]}function B(t){var e=t[He];return!!e&&!!Object.getOwnPropertyNames(Be[e]).length}function H(t){var e=t[He];if(e){delete Be[e];try{delete t[He]}catch(e){t.removeAttribute?t.removeAttribute(He):t[He]=null}}}function V(t,e){var r=F(t);0===r.handlers[e].length&&(delete r.handlers[e],t.removeEventListener?t.removeEventListener(e,r.dispatcher,!1):t.detachEvent&&t.detachEvent("on"+e,r.dispatcher)),Object.getOwnPropertyNames(r.handlers).length<=0&&(delete r.handlers,delete r.dispatcher,delete r.disabled),0===Object.getOwnPropertyNames(r).length&&H(t)}function z(t,e,r,n){r.forEach(function(r){t(e,r,n)})}function W(t){function e(){return!0}function r(){return!1}if(!t||!t.isPropagationStopped){var n=t||Kt.event;t={};for(var o in n)"layerX"!==o&&"layerY"!==o&&"keyLocation"!==o&&"webkitMovementX"!==o&&"webkitMovementY"!==o&&("returnValue"===o&&n.preventDefault||(t[o]=n[o]));if(t.target||(t.target=t.srcElement||Jt),t.relatedTarget||(t.relatedTarget=t.fromElement===t.target?t.toElement:t.fromElement),t.preventDefault=function(){n.preventDefault&&n.preventDefault(),t.returnValue=!1,n.returnValue=!1,t.defaultPrevented=!0},t.defaultPrevented=!1,t.stopPropagation=function(){n.stopPropagation&&n.stopPropagation(),t.cancelBubble=!0,n.cancelBubble=!0,t.isPropagationStopped=e},t.isPropagationStopped=r,t.stopImmediatePropagation=function(){n.stopImmediatePropagation&&n.stopImmediatePropagation(),t.isImmediatePropagationStopped=e,t.stopPropagation()},t.isImmediatePropagationStopped=r,null!==t.clientX&&void 0!==t.clientX){var i=Jt.documentElement,s=Jt.body;t.pageX=t.clientX+(i&&i.scrollLeft||s&&s.scrollLeft||0)-(i&&i.clientLeft||s&&s.clientLeft||0),t.pageY=t.clientY+(i&&i.scrollTop||s&&s.scrollTop||0)-(i&&i.clientTop||s&&s.clientTop||0)}t.which=t.charCode||t.keyCode,null!==t.button&&void 0!==t.button&&(t.button=1&t.button?0:4&t.button?1:2&t.button?2:0)}return t}function U(t,e,r){if(Array.isArray(e))return z(U,t,e,r);var n=F(t);if(n.handlers||(n.handlers={}),n.handlers[e]||(n.handlers[e]=[]),r.guid||(r.guid=R()),n.handlers[e].push(r),n.dispatcher||(n.disabled=!1,n.dispatcher=function(e,r){if(!n.disabled){e=W(e);var o=n.handlers[e.type];if(o)for(var i=o.slice(0),s=0,a=i.length;s-1&&(o={passive:!0}),t.addEventListener(e,n.dispatcher,o)}else t.attachEvent&&t.attachEvent("on"+e,n.dispatcher)}function q(t,e,r){if(B(t)){var n=F(t);if(n.handlers){if(Array.isArray(e))return z(q,t,e,r);var o=function(t,e){n.handlers[e]=[],V(t,e)};if(void 0!==e){var i=n.handlers[e];if(i){if(!r)return void o(t,e);if(r.guid)for(var s=0;s1&&void 0!==arguments[1]?arguments[1]:{},n=e.eventBusKey;if(n){if(!t[n].nodeName)throw new Error('The eventBusKey "'+n+'" does not refer to an element.');t.eventBusEl_=t[n]}else t.eventBusEl_=f("span",{className:"vjs-event-bus"});return r(t,sr),t.on("dispose",function(){t.off(),Kt.setTimeout(function(){t.eventBusEl_=null},0)}),t}function Y(t,e){return r(t,ar),t.state=r({},t.state,e),"function"==typeof t.handleStateChanged&&Ze(t)&&t.on("statechanged",t.handleStateChanged),t}function J(t){return"string"!=typeof t?t:t.charAt(0).toUpperCase()+t.slice(1)}function Q(t,e){return J(t)===J(e)}function Z(){for(var e={},r=arguments.length,n=Array(r),i=0;ir)throw new Error("Failed to execute '"+t+"' on 'TimeRanges': The index provided ("+e+") is non-numeric or out of bounds (0-"+r+").")}function et(t,e,r,n){return tt(t,n,r.length-1),r[n][e]}function rt(t){return void 0===t||0===t.length?{length:0,start:function(){throw new Error("This TimeRanges object is empty")},end:function(){throw new Error("This TimeRanges object is empty")}}:{length:t.length,start:et.bind(null,"start",0,t),end:et.bind(null,"end",1,t)}}function nt(t,e){return Array.isArray(t)?rt(t):void 0===t||void 0===e?rt():rt([[t,e]])}function ot(t,e){var r=0,n=void 0,o=void 0;if(!e)return 0;t&&t.length||(t=nt(0,0));for(var i=0;ie&&(o=e),r+=o-n;return r/e}function it(t){if(t instanceof it)return t;"number"==typeof t?this.code=t:"string"==typeof t?this.message=t:n(t)&&("number"==typeof t.code&&(this.code=t.code),r(this,t)),this.message||(this.message=it.defaultMessages[this.code]||"")}function st(t,e){var r,n=null;try{r=JSON.parse(t,e)}catch(t){n=t}return[n,r]}function at(t){return void 0!==t&&null!==t&&"function"==typeof t.then}function lt(t){at(t)&&t.then(null,function(t){})}function ct(t){var e=Wr.call(t);return"[object Function]"===e||"function"==typeof t&&"[object RegExp]"!==e||"undefined"!=typeof window&&(t===window.setTimeout||t===window.alert||t===window.confirm||t===window.prompt)}function ut(t,e,r){if(!zr(e))throw new TypeError("iterator must be a function");arguments.length<3&&(r=this),"[object Array]"===Kr.call(t)?ht(t,e,r):"string"==typeof t?pt(t,e,r):dt(t,e,r)}function ht(t,e,r){for(var n=0,o=t.length;n0&&(u=setTimeout(function(){if(!c){c=!0,a.abort("timeout");var t=new Error("XMLHttpRequest timeout");t.code="ETIMEDOUT",n(t)}},t.timeout)),a.setRequestHeader)for(l in f)f.hasOwnProperty(l)&&a.setRequestHeader(l,f[l]);else if(t.headers&&!vt(t.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in t&&(a.responseType=t.responseType),"beforeSend"in t&&"function"==typeof t.beforeSend&&t.beforeSend(a),a.send(d||null),a}function _t(t){if("document"===t.responseType)return t.responseXML;var e=t.responseXML&&"parsererror"===t.responseXML.documentElement.nodeName;return""!==t.responseType||e?null:t.responseXML}function bt(){}function Tt(t,e,r,n){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=t.textTracks();o.kind=e,r&&(o.label=r),n&&(o.language=n),o.tech=t;var s=new un.text.TrackClass(o);return i.addTrack(s),s}function Ct(t,e){dn[t]=dn[t]||[],dn[t].push(e)}function kt(t,e,r){t.setTimeout(function(){return Mt(e,dn[e.type],r,t)},1)}function Et(t,e){t.forEach(function(t){return t.setTech&&t.setTech(e)})}function St(t,e,r){return t.reduceRight(jt(r),e[r]())}function wt(t,e,r,n){return e[r](t.reduce(jt(r),n))}function xt(t,e,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o="call"+J(r),i=t.reduce(jt(o),n),s=i===vn,a=s?null:e[r](i);return Pt(t,r,a,s),a}function jt(t){return function(e,r){return e===vn?vn:r[t]?r[t](e):e}}function Pt(t,e,r,n){for(var o=t.length-1;o>=0;o--){var i=t[o];i[e]&&i[e](n,r)}}function At(t){fn[t.id()]=null}function Ot(t,e){var r=fn[t.id()],n=null;if(void 0===r||null===r)return n=e(t),fn[t.id()]=[[e,n]],n;for(var o=0;o0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments[2],o=arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],s=arguments.length>5&&void 0!==arguments[5]&&arguments[5],a=e[0],l=e.slice(1);if("string"==typeof a)Mt(t,dn[a],n,o,i,s);else if(a){var c=Ot(o,a);if(!c.setSource)return i.push(c),Mt(t,l,n,o,i,s);c.setSource(r({},t),function(e,r){if(e)return Mt(t,l,n,o,i,s);i.push(c),Mt(r,t.type===r.type?l:dn[r.type],n,o,i,s)})}else l.length?Mt(t,l,n,o,i,s):s?n(t,i):Mt(t,dn["*"],n,o,i,!0)}function Nt(t){var e=bn(t.src);return!t.type&&e&&(t.type=e),t}function It(t,e){var r=void 0;if(4===t.length)r=t[1]+t[1]+t[2]+t[2]+t[3]+t[3];else{if(7!==t.length)throw new Error("Invalid color code provided, "+t+"; must be formatted as e.g. #f0e or #f604e2.");r=t.slice(1)}return"rgba("+parseInt(r.slice(0,2),16)+","+parseInt(r.slice(2,4),16)+","+parseInt(r.slice(4,6),16)+","+e+")"}function Dt(t,e,r){try{t.style[e]=r}catch(t){return}}function Lt(t){In=t}function Rt(){In=Nn}function Ft(t,e){if(e&&(t=e(t)),t&&"none"!==t)return t}function Bt(t,e){return Ft(t.options[t.options.selectedIndex].value,e)}function Ht(t,e,r){if(e)for(var n=0;n2&&void 0!==arguments[2]?arguments[2]:!!ve&&ve<11,o=je.levels[Pe],i=new RegExp("^("+o+")$");if("log"!==t&&e.unshift(t.toUpperCase()+":"),Ae&&Ae.push([].concat(e)),e.unshift("VIDEOJS:"),Kt.console){var s=Kt.console[t];s||"debug"!==t||(s=Kt.console.info||Kt.console.log),s&&o&&i.test(t)&&(r&&(e=e.map(function(t){if(n(t)||Array.isArray(t))try{return JSON.stringify(t)}catch(e){return String(t)}return String(t)}).join(" ")),s.apply?s[Array.isArray(e)?"apply":"call"](Kt.console,e):s(e))}};je=function(){for(var t=arguments.length,e=Array(t),r=0;r0)for(var o=0,i=t.length;o0)for(var s=0,a=e.length;s0)for(var l=0,c=r.length;l0)for(var h=0,p=n.length;h=e&&(t.apply(void 0,arguments),r=n)}},Je=function(t,e,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Kt,o=void 0;return function(){var i=this,s=arguments,a=function(){o=null,a=null,r||t.apply(i,s)};!o&&r&&t.apply(i,s),n.clearTimeout(o),o=n.setTimeout(a,e)}},Qe=function(){};Qe.prototype.allowedEvents_={},Qe.prototype.on=function(t,e){var r=this.addEventListener;this.addEventListener=function(){},U(this,t,e),this.addEventListener=r},Qe.prototype.addEventListener=Qe.prototype.on,Qe.prototype.off=function(t,e){q(this,t,e)},Qe.prototype.removeEventListener=Qe.prototype.off,Qe.prototype.one=function(t,e){var r=this.addEventListener;this.addEventListener=function(){},X(this,t,e),this.addEventListener=r},Qe.prototype.trigger=function(t){var e=t.type||t;"string"==typeof t&&(t={type:e}),t=W(t),this.allowedEvents_[e]&&this["on"+e]&&this["on"+e](t),K(this,t)},Qe.prototype.dispatchEvent=Qe.prototype.trigger;var Ze=function(t){return t instanceof Qe||!!t.eventBusEl_&&["on","one","off","trigger"].every(function(e){return"function"==typeof t[e]})},tr=function(t){return"string"==typeof t&&/\S/.test(t)||Array.isArray(t)&&!!t.length},er=function(t){if(!t.nodeName&&!Ze(t))throw new Error("Invalid target; must be a DOM node or evented object.")},rr=function(t){if(!tr(t))throw new Error("Invalid event type; must be a non-empty string or array.")},nr=function(t){if("function"!=typeof t)throw new Error("Invalid listener; must be a function.")},or=function(t,e){var r=e.length<3||e[0]===t||e[0]===t.eventBusEl_,n=void 0,o=void 0,i=void 0;return r?(n=t.eventBusEl_,e.length>=3&&e.shift(),o=e[0],i=e[1]):(n=e[0],o=e[1],i=e[2]),er(n),rr(o),nr(i),i=Ge(t,i),{isTargetingSelf:r,target:n,type:o,listener:i}},ir=function(t,e,r,n){er(t),t.nodeName?We[e](t,r,n):t[e](r,n)},sr={on:function(){for(var t=this,e=arguments.length,r=Array(e),n=0;n=0;t--)this.children_[t].dispose&&this.children_[t].dispose();this.children_=null,this.childIndex_=null,this.childNameIndex_=null,this.el_&&(this.el_.parentNode&&this.el_.parentNode.removeChild(this.el_),H(this.el_),this.el_=null),this.player_=null},t.prototype.player=function(){return this.player_},t.prototype.options=function(t){return Me.warn("this.options() has been deprecated and will be moved to the constructor in 6.0"),t?(this.options_=Z(this.options_,t),this.options_):this.options_},t.prototype.el=function(){return this.el_},t.prototype.createEl=function(t,e,r){return f(t,e,r)},t.prototype.localize=function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t,n=this.player_.language&&this.player_.language(),o=this.player_.languages&&this.player_.languages(),i=o&&o[n],s=n&&n.split("-")[0],a=o&&o[s],l=r;return i&&i[t]?l=i[t]:a&&a[t]&&(l=a[t]),e&&(l=l.replace(/\{(\d+)\}/g,function(t,r){var n=e[r-1],o=n;return void 0===n&&(o=t),o})),l},t.prototype.contentEl=function(){return this.contentEl_||this.el_},t.prototype.id=function(){return this.id_},t.prototype.name=function(){return this.name_},t.prototype.children=function(){return this.children_},t.prototype.getChildById=function(t){return this.childIndex_[t]},t.prototype.getChild=function(t){if(t)return t=J(t),this.childNameIndex_[t]},t.prototype.addChild=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.children_.length,o=void 0,i=void 0;if("string"==typeof e){i=J(e);var s=r.componentClass||i;r.name=i;var a=t.getComponent(s);if(!a)throw new Error("Component "+s+" does not exist");if("function"!=typeof a)return null;o=new a(this.player_||this,r)}else o=e;if(this.children_.splice(n,0,o),"function"==typeof o.id&&(this.childIndex_[o.id()]=o),i=i||o.name&&J(o.name()),i&&(this.childNameIndex_[i]=o),"function"==typeof o.el&&o.el()){var l=this.contentEl().children,c=l[n]||null;this.contentEl().insertBefore(o.el(),c)}return o},t.prototype.removeChild=function(t){if("string"==typeof t&&(t=this.getChild(t)),t&&this.children_){for(var e=!1,r=this.children_.length-1;r>=0;r--)if(this.children_[r]===t){e=!0,this.children_.splice(r,1);break}if(e){this.childIndex_[t.id()]=null,this.childNameIndex_[t.name()]=null;var n=t.el();n&&n.parentNode===this.contentEl()&&this.contentEl().removeChild(t.el())}}},t.prototype.initChildren=function(){var e=this,r=this.options_.children;if(r){var n=this.options_,o=function(t){var r=t.name,o=t.opts;if(void 0!==n[r]&&(o=n[r]),!1!==o){!0===o&&(o={}),o.playerOptions=e.options_.playerOptions;var i=e.addChild(r,o);i&&(e[r]=i)}},i=void 0,s=t.getComponent("Tech");i=Array.isArray(r)?r:Object.keys(r),i.concat(Object.keys(this.options_).filter(function(t){return!i.some(function(e){return"string"==typeof e?t===e:t===e.name})})).map(function(t){var n=void 0,o=void 0;return"string"==typeof t?(n=t,o=r[n]||e.options_[n]||{}):(n=t.name,o=t),{name:n,opts:o}}).filter(function(e){var r=t.getComponent(e.opts.componentClass||J(e.name));return r&&!s.isTech(r)}).forEach(o)}},t.prototype.buildCSSClass=function(){return""},t.prototype.ready=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(t)return this.isReady_?void(e?t.call(this):this.setTimeout(t,1)):(this.readyQueue_=this.readyQueue_||[],void this.readyQueue_.push(t))},t.prototype.triggerReady=function(){this.isReady_=!0,this.setTimeout(function(){var t=this.readyQueue_;this.readyQueue_=[],t&&t.length>0&&t.forEach(function(t){t.call(this)},this),this.trigger("ready")},1)},t.prototype.$=function(t,e){return De(t,e||this.contentEl())},t.prototype.$$=function(t,e){return Le(t,e||this.contentEl())},t.prototype.hasClass=function(t){return g(this.el_,t)},t.prototype.addClass=function(t){m(this.el_,t)},t.prototype.removeClass=function(t){_(this.el_,t)},t.prototype.toggleClass=function(t,e){b(this.el_,t,e)},t.prototype.show=function(){this.removeClass("vjs-hidden")},t.prototype.hide=function(){this.addClass("vjs-hidden")},t.prototype.lockShowing=function(){this.addClass("vjs-lock-showing")},t.prototype.unlockShowing=function(){this.removeClass("vjs-lock-showing")},t.prototype.getAttribute=function(t){return k(this.el_,t)},t.prototype.setAttribute=function(t,e){E(this.el_,t,e)},t.prototype.removeAttribute=function(t){S(this.el_,t)},t.prototype.width=function(t,e){return this.dimension("width",t,e)},t.prototype.height=function(t,e){return this.dimension("height",t,e)},t.prototype.dimensions=function(t,e){this.width(t,!0),this.height(e)},t.prototype.dimension=function(t,e,r){if(void 0!==e)return null!==e&&e===e||(e=0),-1!==(""+e).indexOf("%")||-1!==(""+e).indexOf("px")?this.el_.style[t]=e:this.el_.style[t]="auto"===e?"":e+"px",void(r||this.trigger("componentresize"));if(!this.el_)return 0;var n=this.el_.style[t],o=n.indexOf("px");return-1!==o?parseInt(n.slice(0,o),10):parseInt(this.el_["offset"+J(t)],10)},t.prototype.currentDimension=function(t){var e=0;if("width"!==t&&"height"!==t)throw new Error("currentDimension only accepts width or height value");if("function"==typeof Kt.getComputedStyle){var r=Kt.getComputedStyle(this.el_);e=r.getPropertyValue(t)||r[t]}if(0===(e=parseFloat(e))){var n="offset"+J(t);e=this.el_[n]}return e}, t.prototype.currentDimensions=function(){return{width:this.currentDimension("width"),height:this.currentDimension("height")}},t.prototype.currentWidth=function(){return this.currentDimension("width")},t.prototype.currentHeight=function(){return this.currentDimension("height")},t.prototype.focus=function(){this.el_.focus()},t.prototype.blur=function(){this.el_.blur()},t.prototype.emitTapEvents=function(){var t=0,e=null,r=void 0;this.on("touchstart",function(n){1===n.touches.length&&(e={pageX:n.touches[0].pageX,pageY:n.touches[0].pageY},t=(new Date).getTime(),r=!0)}),this.on("touchmove",function(t){if(t.touches.length>1)r=!1;else if(e){var n=t.touches[0].pageX-e.pageX,o=t.touches[0].pageY-e.pageY,i=Math.sqrt(n*n+o*o);i>10&&(r=!1)}});var n=function(){r=!1};this.on("touchleave",n),this.on("touchcancel",n),this.on("touchend",function(n){if(e=null,!0===r){(new Date).getTime()-t<200&&(n.preventDefault(),this.trigger("tap"))}})},t.prototype.enableTouchActivity=function(){if(this.player()&&this.player().reportUserActivity){var t=Ge(this.player(),this.player().reportUserActivity),e=void 0;this.on("touchstart",function(){t(),this.clearInterval(e),e=this.setInterval(t,250)});var r=function(r){t(),this.clearInterval(e)};this.on("touchmove",t),this.on("touchend",r),this.on("touchcancel",r)}},t.prototype.setTimeout=function(t,e){var r,n,o=this;return t=Ge(this,t),r=Kt.setTimeout(function(){o.off("dispose",n),t()},e),n=function(){return o.clearTimeout(r)},n.guid="vjs-timeout-"+r,this.on("dispose",n),r},t.prototype.clearTimeout=function(t){Kt.clearTimeout(t);var e=function(){};return e.guid="vjs-timeout-"+t,this.off("dispose",e),t},t.prototype.setInterval=function(t,e){var r=this;t=Ge(this,t);var n=Kt.setInterval(t,e),o=function(){return r.clearInterval(n)};return o.guid="vjs-interval-"+n,this.on("dispose",o),n},t.prototype.clearInterval=function(t){Kt.clearInterval(t);var e=function(){};return e.guid="vjs-interval-"+t,this.off("dispose",e),t},t.prototype.requestAnimationFrame=function(t){var e,r,n=this;return this.supportsRaf_?(t=Ge(this,t),e=Kt.requestAnimationFrame(function(){n.off("dispose",r),t()}),r=function(){return n.cancelAnimationFrame(e)},r.guid="vjs-raf-"+e,this.on("dispose",r),e):this.setTimeout(t,1e3/60)},t.prototype.cancelAnimationFrame=function(t){if(this.supportsRaf_){Kt.cancelAnimationFrame(t);var e=function(){};return e.guid="vjs-raf-"+t,this.off("dispose",e),t}return this.clearTimeout(t)},t.registerComponent=function(e,r){if("string"!=typeof e||!e)throw new Error('Illegal component name, "'+e+'"; must be a non-empty string.');var n=t.getComponent("Tech"),o=n&&n.isTech(r),i=t===r||t.prototype.isPrototypeOf(r.prototype);if(o||!i){var s=void 0;throw s=o?"techs must be registered using Tech.registerTech()":"must be a Component subclass",new Error('Illegal component, "'+e+'"; '+s+".")}e=J(e),t.components_||(t.components_={});var a=t.getComponent("Player");if("Player"===e&&a&&a.players){var l=a.players,c=Object.keys(l);if(l&&c.length>0&&c.map(function(t){return l[t]}).every(Boolean))throw new Error("Can not register Player component after player has been created.")}return t.components_[e]=r,r},t.getComponent=function(e){if(e)return e=J(e),t.components_&&t.components_[e]?t.components_[e]:void 0},t}();lr.prototype.supportsRaf_="function"==typeof Kt.requestAnimationFrame&&"function"==typeof Kt.cancelAnimationFrame,lr.registerComponent("Component",lr);for(var cr={},ur=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],hr=ur[0],pr=void 0,dr=0;dr0&&void 0!==arguments[0]?arguments[0]:[],o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;Ce(this,e);var i=Ee(this,t.call(this));if(!o&&(o=i,fe)){o=Jt.createElement("custom");for(var s in e.prototype)"constructor"!==s&&(o[s]=e.prototype[s])}o.tracks_=[],Object.defineProperty(o,"length",{get:function(){return this.tracks_.length}});for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:[];Ce(this,e);for(var i=void 0,s=o.length-1;s>=0;s--)if(o[s].enabled){Sr(o,o[s]);break}if(fe){i=Jt.createElement("custom");for(var a in kr.prototype)"constructor"!==a&&(i[a]=kr.prototype[a]);for(var l in e.prototype)"constructor"!==l&&(i[l]=e.prototype[l])}return i=r=Ee(this,t.call(this,o,i)),i.changing_=!1,n=i,Ee(r,n)}return ke(e,t),e.prototype.addTrack=function(e){var r=this;e.enabled&&Sr(this,e),t.prototype.addTrack.call(this,e),e.addEventListener&&e.addEventListener("enabledchange",function(){r.changing_||(r.changing_=!0,Sr(r,e),r.changing_=!1,r.trigger("change"))})},e}(kr),xr=function(t,e){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:[];Ce(this,e);for(var i=void 0,s=o.length-1;s>=0;s--)if(o[s].selected){xr(o,o[s]);break}if(fe){i=Jt.createElement("custom");for(var a in kr.prototype)"constructor"!==a&&(i[a]=kr.prototype[a]);for(var l in e.prototype)"constructor"!==l&&(i[l]=e.prototype[l])}return i=r=Ee(this,t.call(this,o,i)),i.changing_=!1,Object.defineProperty(i,"selectedIndex",{get:function(){for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:[];Ce(this,e);var i=void 0;if(fe){i=Jt.createElement("custom");for(var s in kr.prototype)"constructor"!==s&&(i[s]=kr.prototype[s]);for(var a in e.prototype)"constructor"!==a&&(i[a]=e.prototype[a])}return i=r=Ee(this,t.call(this,o,i)),n=i,Ee(r,n)}return ke(e,t),e.prototype.addTrack=function(e){t.prototype.addTrack.call(this,e),e.addEventListener("modechange",Ge(this,function(){this.trigger("change")})),-1===["metadata","chapters"].indexOf(e.kind)&&e.addEventListener("modechange",Ge(this,function(){this.trigger("selectedlanguagechange")}))},e}(kr),Ar=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];Ce(this,t);var r=this;if(fe){r=Jt.createElement("custom");for(var n in t.prototype)"constructor"!==n&&(r[n]=t.prototype[n])}r.trackElements_=[],Object.defineProperty(r,"length",{get:function(){return this.trackElements_.length}});for(var o=0,i=e.length;o0&&void 0!==arguments[0]?arguments[0]:{};Ce(this,e);var o=Ee(this,t.call(this)),i=o;if(fe){i=Jt.createElement("custom");for(var s in e.prototype)"constructor"!==s&&(i[s]=e.prototype[s])}var a={id:n.id||"vjs_track_"+R(),kind:n.kind||"",label:n.label||"",language:n.language||""};for(var l in a)!function(t){Object.defineProperty(i,t,{get:function(){return a[t]},set:function(){}})}(l);return r=i,Ee(o,r)}return ke(e,t),e}(Qe),Rr=function(t){var e=["protocol","hostname","port","pathname","search","hash","host"],r=Jt.createElement("a");r.href=t;var n=""===r.host&&"file:"!==r.protocol,o=void 0;n&&(o=Jt.createElement("div"),o.innerHTML='',r=o.firstChild,o.setAttribute("style","display:none; position:absolute;"),Jt.body.appendChild(o));for(var i={},s=0;sx',t=e.firstChild.href}return t},Br=function(t){if("string"==typeof t){var e=/^(\/?)([\s\S]*?)((?:\.{1,2}|[^\/]+?)(\.([^\.\/\?]+)))(?:[\/]*|[\?].*)$/i,r=e.exec(t);if(r)return r.pop().toLowerCase()}return""},Hr=function(t){var e=Kt.location,r=Rr(t);return(":"===r.protocol?e.protocol:r.protocol)+r.host!==e.protocol+e.host},Vr=(Object.freeze||Object)({parseUrl:Rr,getAbsoluteURL:Fr,getFileExtension:Br,isCrossOrigin:Hr}),zr=ct,Wr=Object.prototype.toString,Ur=function(t,e){return e={exports:{}},t(e,e.exports),e.exports}(function(t,e){function r(t){return t.replace(/^\s*|\s*$/g,"")}e=t.exports=r,e.left=function(t){return t.replace(/^\s*/,"")},e.right=function(t){return t.replace(/\s*$/,"")}}),qr=ut,Kr=Object.prototype.toString,Xr=Object.prototype.hasOwnProperty,$r=function(t){return"[object Array]"===Object.prototype.toString.call(t)},Gr=function(t){if(!t)return{};var e={};return qr(Ur(t).split("\n"),function(t){var r=t.indexOf(":"),n=Ur(t.slice(0,r)).toLowerCase(),o=Ur(t.slice(r+1));void 0===e[n]?e[n]=o:$r(e[n])?e[n].push(o):e[n]=[e[n],o]}),e},Yr=ft,Jr=Object.prototype.hasOwnProperty,Qr=gt;gt.XMLHttpRequest=Kt.XMLHttpRequest||bt,gt.XDomainRequest="withCredentials"in new gt.XMLHttpRequest?gt.XMLHttpRequest:Kt.XDomainRequest,function(t,e){for(var r=0;r0&&(Kt.console&&Kt.console.groupCollapsed&&Kt.console.groupCollapsed("Text Track parsing errors for "+e.src),n.forEach(function(t){return Me.error(t)}),Kt.console&&Kt.console.groupEnd&&Kt.console.groupEnd()),r.flush()},tn=function(t,e){var r={uri:t},n=Hr(t);n&&(r.cors=n),Qr(r,Ge(this,function(t,r,n){if(t)return Me.error(t,r);if(e.loaded_=!0,"function"!=typeof Kt.WebVTT){if(e.tech_){var o=function(){return Zr(n,e)};e.tech_.on("vttjsloaded",o),e.tech_.on("vttjserror",function(){Me.error("vttjs failed to load, stopping trying to process "+e.src),e.tech_.off("vttjsloaded",o)})}}else Zr(n,e)}))},en=function(t){function e(){var r,n,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Ce(this,e),!o.tech)throw new Error("A tech was not provided.");var i=Z(o,{kind:Ir[o.kind]||"subtitles",language:o.language||o.srclang||""}),s=Dr[i.mode]||"disabled",a=i.default;"metadata"!==i.kind&&"chapters"!==i.kind||(s="hidden");var l=r=Ee(this,t.call(this,i));if(l.tech_=i.tech,fe)for(var c in e.prototype)"constructor"!==c&&(l[c]=e.prototype[c]);l.cues_=[],l.activeCues_=[];var u=new Or(l.cues_),h=new Or(l.activeCues_),p=!1,d=Ge(l,function(){this.activeCues=this.activeCues,p&&(this.trigger("cuechange"),p=!1)});return"disabled"!==s&&l.tech_.ready(function(){l.tech_.on("timeupdate",d)},!0),Object.defineProperty(l,"default",{get:function(){return a},set:function(){}}),Object.defineProperty(l,"mode",{get:function(){return s},set:function(t){var e=this;Dr[t]&&(s=t,"showing"===s&&this.tech_.ready(function(){e.tech_.on("timeupdate",d)},!0),this.trigger("modechange"))}}),Object.defineProperty(l,"cues",{get:function(){return this.loaded_?u:null},set:function(){}}),Object.defineProperty(l,"activeCues",{get:function(){if(!this.loaded_)return null;if(0===this.cues.length)return h;for(var t=this.tech_.currentTime(),e=[],r=0,n=this.cues.length;r=t?e.push(o):o.startTime===o.endTime&&o.startTime<=t&&o.startTime+.5>=t&&e.push(o)}if(p=!1,e.length!==this.activeCues_.length)p=!0;else for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{};Ce(this,e);var i=Z(o,{kind:Nr[o.kind]||""}),s=r=Ee(this,t.call(this,i)),a=!1;if(fe)for(var l in e.prototype)"constructor"!==l&&(s[l]=e.prototype[l]);return Object.defineProperty(s,"enabled",{get:function(){return a},set:function(t){"boolean"==typeof t&&t!==a&&(a=t,this.trigger("enabledchange"))}}),i.enabled&&(s.enabled=i.enabled),s.loaded_=!0,n=s,Ee(r,n)}return ke(e,t),e}(Lr),nn=function(t){function e(){var r,n,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Ce(this,e);var i=Z(o,{kind:Mr[o.kind]||""}),s=r=Ee(this,t.call(this,i)),a=!1;if(fe)for(var l in e.prototype)"constructor"!==l&&(s[l]=e.prototype[l]);return Object.defineProperty(s,"selected",{get:function(){return a},set:function(t){"boolean"==typeof t&&t!==a&&(a=t,this.trigger("selectedchange"))}}),i.selected&&(s.selected=i.selected),n=s,Ee(r,n)}return ke(e,t),e}(Lr),on=0,sn=2,an=function(t){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Ce(this,e);var n=Ee(this,t.call(this)),o=void 0,i=n;if(fe){i=Jt.createElement("custom");for(var s in e.prototype)"constructor"!==s&&(i[s]=e.prototype[s])}var a=new en(r);if(i.kind=a.kind,i.src=a.src,i.srclang=a.language,i.label=a.label,i.default=a.default,Object.defineProperty(i,"readyState",{get:function(){return o}}),Object.defineProperty(i,"track",{get:function(){return a}}),o=on,a.addEventListener("loadeddata",function(){o=sn,i.trigger({type:"load",target:i})}),fe){var l;return l=i,Ee(n,l)}return n}return ke(e,t),e}(Qe);an.prototype.allowedEvents_={load:"load"},an.NONE=on,an.LOADING=1,an.LOADED=sn,an.ERROR=3;var ln={audio:{ListClass:wr,TrackClass:rn,capitalName:"Audio"},video:{ListClass:jr,TrackClass:nn,capitalName:"Video"},text:{ListClass:Pr,TrackClass:en,capitalName:"Text"}};Object.keys(ln).forEach(function(t){ln[t].getterName=t+"Tracks",ln[t].privateName=t+"Tracks_"});var cn={remoteText:{ListClass:Pr,TrackClass:en,capitalName:"RemoteText",getterName:"remoteTextTracks",privateName:"remoteTextTracks_"},remoteTextEl:{ListClass:Ar,TrackClass:an,capitalName:"RemoteTextTrackEls",getterName:"remoteTextTrackEls",privateName:"remoteTextTrackEls_"}},un=Z(ln,cn);cn.names=Object.keys(cn),ln.names=Object.keys(ln),un.names=[].concat(cn.names).concat(ln.names);var hn={},pn=function(t){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){};Ce(this,e),r.reportTouchActivity=!1;var o=Ee(this,t.call(this,null,r,n));return o.hasStarted_=!1,o.on("playing",function(){this.hasStarted_=!0}),o.on("loadstart",function(){this.hasStarted_=!1}),un.names.forEach(function(t){var e=un[t];r&&r[e.getterName]&&(o[e.privateName]=r[e.getterName])}),o.featuresProgressEvents||o.manualProgressOn(),o.featuresTimeupdateEvents||o.manualTimeUpdatesOn(),["Text","Audio","Video"].forEach(function(t){!1===r["native"+t+"Tracks"]&&(o["featuresNative"+t+"Tracks"]=!1)}),!1===r.nativeCaptions||!1===r.nativeTextTracks?o.featuresNativeTextTracks=!1:!0!==r.nativeCaptions&&!0!==r.nativeTextTracks||(o.featuresNativeTextTracks=!0),o.featuresNativeTextTracks||o.emulateTextTracks(),o.autoRemoteTextTracks_=new un.text.ListClass,o.initTrackListeners(),r.nativeControlsForTouch||o.emitTapEvents(),o.constructor&&(o.name_=o.constructor.name||"Unknown Tech"),o}return ke(e,t),e.prototype.triggerSourceset=function(t){var e=this;this.isReady_||this.one("ready",function(){return e.setTimeout(function(){return e.triggerSourceset(t)},1)}),this.trigger({src:t,type:"sourceset"})},e.prototype.manualProgressOn=function(){this.on("durationchange",this.onDurationChange),this.manualProgress=!0,this.one("ready",this.trackProgress)},e.prototype.manualProgressOff=function(){this.manualProgress=!1,this.stopTrackingProgress(),this.off("durationchange",this.onDurationChange)},e.prototype.trackProgress=function(t){this.stopTrackingProgress(),this.progressInterval=this.setInterval(Ge(this,function(){var t=this.bufferedPercent();this.bufferedPercent_!==t&&this.trigger("progress"),this.bufferedPercent_=t,1===t&&this.stopTrackingProgress()}),500)},e.prototype.onDurationChange=function(t){this.duration_=this.duration()},e.prototype.buffered=function(){return nt(0,0)},e.prototype.bufferedPercent=function(){return ot(this.buffered(),this.duration_)},e.prototype.stopTrackingProgress=function(){this.clearInterval(this.progressInterval)},e.prototype.manualTimeUpdatesOn=function(){this.manualTimeUpdates=!0,this.on("play",this.trackCurrentTime),this.on("pause",this.stopTrackingCurrentTime)},e.prototype.manualTimeUpdatesOff=function(){this.manualTimeUpdates=!1,this.stopTrackingCurrentTime(),this.off("play",this.trackCurrentTime),this.off("pause",this.stopTrackingCurrentTime)},e.prototype.trackCurrentTime=function(){this.currentTimeInterval&&this.stopTrackingCurrentTime(),this.currentTimeInterval=this.setInterval(function(){this.trigger({type:"timeupdate",target:this,manuallyTriggered:!0})},250)},e.prototype.stopTrackingCurrentTime=function(){this.clearInterval(this.currentTimeInterval),this.trigger({type:"timeupdate",target:this,manuallyTriggered:!0})},e.prototype.dispose=function(){this.clearTracks(ln.names),this.manualProgress&&this.manualProgressOff(),this.manualTimeUpdates&&this.manualTimeUpdatesOff(),t.prototype.dispose.call(this)},e.prototype.clearTracks=function(t){var e=this;t=[].concat(t),t.forEach(function(t){for(var r=e[t+"Tracks"]()||[],n=r.length;n--;){var o=r[n];"text"===t&&e.removeRemoteTextTrack(o),r.removeTrack(o)}})},e.prototype.cleanupAutoTextTracks=function(){for(var t=this.autoRemoteTextTracks_||[],e=t.length;e--;){var r=t[e];this.removeRemoteTextTrack(r)}},e.prototype.reset=function(){},e.prototype.error=function(t){return void 0!==t&&(this.error_=new it(t),this.trigger("error")),this.error_},e.prototype.played=function(){return this.hasStarted_?nt(0,0):nt()},e.prototype.setCurrentTime=function(){this.manualTimeUpdates&&this.trigger({type:"timeupdate",target:this,manuallyTriggered:!0})},e.prototype.initTrackListeners=function(){var t=this;ln.names.forEach(function(e){var r=ln[e],n=function(){t.trigger(e+"trackchange")},o=t[r.getterName]();o.addEventListener("removetrack",n),o.addEventListener("addtrack",n),t.on("dispose",function(){o.removeEventListener("removetrack",n),o.removeEventListener("addtrack",n)})})},e.prototype.addWebVttScript_=function(){var t=this;if(!Kt.WebVTT)if(Jt.body.contains(this.el())){if(!this.options_["vtt.js"]&&o(hn)&&Object.keys(hn).length>0)return void this.trigger("vttjsloaded");var e=Jt.createElement("script");e.src=this.options_["vtt.js"]||"https://vjs.zencdn.net/vttjs/0.12.4/vtt.min.js",e.onload=function(){t.trigger("vttjsloaded")},e.onerror=function(){t.trigger("vttjserror")},this.on("dispose",function(){e.onload=null,e.onerror=null}),Kt.WebVTT=!0,this.el().parentNode.appendChild(e)}else this.ready(this.addWebVttScript_)},e.prototype.emulateTextTracks=function(){var t=this,e=this.textTracks(),r=this.remoteTextTracks(),n=function(t){return e.addTrack(t.track)},o=function(t){return e.removeTrack(t.track)};r.on("addtrack",n),r.on("removetrack",o),this.addWebVttScript_();var i=function(){return t.trigger("texttrackchange")},s=function(){i();for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:{},r=arguments[1],n=this.createRemoteTextTrack(e);return!0!==r&&!1!==r&&(Me.warn('Calling addRemoteTextTrack without explicitly setting the "manualCleanup" parameter to `true` is deprecated and default to `false` in future version of video.js'),r=!0),this.remoteTextTrackEls().addTrackElement_(n),this.remoteTextTracks().addTrack(n.track),!0!==r&&this.ready(function(){return t.autoRemoteTextTracks_.addTrack(n.track)}),n},e.prototype.removeRemoteTextTrack=function(t){var e=this.remoteTextTrackEls().getTrackElementByTrack_(t);this.remoteTextTrackEls().removeTrackElement_(e),this.remoteTextTracks().removeTrack(t),this.autoRemoteTextTracks_.removeTrack(t)},e.prototype.getVideoPlaybackQuality=function(){return{}},e.prototype.setPoster=function(){},e.prototype.playsinline=function(){},e.prototype.setPlaysinline=function(){},e.prototype.canPlayType=function(){return""},e.canPlayType=function(){return""},e.canPlaySource=function(t,r){return e.canPlayType(t.type)},e.isTech=function(t){return t.prototype instanceof e||t instanceof e||t===e},e.registerTech=function(t,r){if(e.techs_||(e.techs_={}),!e.isTech(r))throw new Error("Tech "+t+" must be a Tech");if(!e.canPlayType)throw new Error("Techs must have a static canPlayType method on them");if(!e.canPlaySource)throw new Error("Techs must have a static canPlaySource method on them");return t=J(t),e.techs_[t]=r,"Tech"!==t&&e.defaultTechOrder_.push(t),r},e.getTech=function(t){if(t)return t=J(t),e.techs_&&e.techs_[t]?e.techs_[t]:Kt&&Kt.videojs&&Kt.videojs[t]?(Me.warn("The "+t+" tech was added to the videojs object when it should be registered using videojs.registerTech(name, tech)"),Kt.videojs[t]):void 0},e}(lr);un.names.forEach(function(t){var e=un[t];pn.prototype[e.getterName]=function(){return this[e.privateName]=this[e.privateName]||new e.ListClass,this[e.privateName]}}),pn.prototype.featuresVolumeControl=!0,pn.prototype.featuresMuteControl=!0, pn.prototype.featuresFullscreenResize=!1,pn.prototype.featuresPlaybackRate=!1,pn.prototype.featuresProgressEvents=!1,pn.prototype.featuresSourceset=!1,pn.prototype.featuresTimeupdateEvents=!1,pn.prototype.featuresNativeTextTracks=!1,pn.withSourceHandlers=function(t){t.registerSourceHandler=function(e,r){var n=t.sourceHandlers;n||(n=t.sourceHandlers=[]),void 0===r&&(r=n.length),n.splice(r,0,e)},t.canPlayType=function(e){for(var r=t.sourceHandlers||[],n=void 0,o=0;o0&&void 0!==arguments[0]?arguments[0]:"",e=Br(t);return _n[e.toLowerCase()]||""},Tn=function(t,e){if(!e)return"";if(t.cache_.source.src===e&&t.cache_.source.type)return t.cache_.source.type;var r=t.cache_.sources.filter(function(t){return t.src===e});if(r.length)return r[0].type;for(var n=t.$$("source"),o=0;o0&&void 0!==arguments[0]?arguments[0]:"div",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=r({innerHTML:'',className:this.buildCSSClass(),tabIndex:0},n),"button"===e&&Me.error("Creating a ClickableComponent with an HTML element of "+e+" is not supported; use a Button instead."),o=r({role:"button"},o),this.tabIndex_=n.tabIndex;var i=t.prototype.createEl.call(this,e,n,o);return this.createControlTextEl(i),i},e.prototype.dispose=function(){this.controlTextEl_=null,t.prototype.dispose.call(this)},e.prototype.createControlTextEl=function(t){return this.controlTextEl_=f("span",{className:"vjs-control-text"},{"aria-live":"polite"}),t&&t.appendChild(this.controlTextEl_),this.controlText(this.controlText_,t),this.controlTextEl_},e.prototype.controlText=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.el();if(void 0===t)return this.controlText_||"Need Text";var r=this.localize(t);this.controlText_=t,v(this.controlTextEl_,r),this.nonIconControl||e.setAttribute("title",r)},e.prototype.buildCSSClass=function(){return"vjs-control vjs-button "+t.prototype.buildCSSClass.call(this)},e.prototype.enable=function(){this.enabled_||(this.enabled_=!0,this.removeClass("vjs-disabled"),this.el_.setAttribute("aria-disabled","false"),void 0!==this.tabIndex_&&this.el_.setAttribute("tabIndex",this.tabIndex_),this.on(["tap","click"],this.handleClick),this.on("focus",this.handleFocus),this.on("blur",this.handleBlur))},e.prototype.disable=function(){this.enabled_=!1,this.addClass("vjs-disabled"),this.el_.setAttribute("aria-disabled","true"),void 0!==this.tabIndex_&&this.el_.removeAttribute("tabIndex"),this.off(["tap","click"],this.handleClick),this.off("focus",this.handleFocus),this.off("blur",this.handleBlur)},e.prototype.handleClick=function(t){},e.prototype.handleFocus=function(t){U(Jt,"keydown",Ge(this,this.handleKeyPress))},e.prototype.handleKeyPress=function(e){32===e.which||13===e.which?(e.preventDefault(),this.trigger("click")):t.prototype.handleKeyPress&&t.prototype.handleKeyPress.call(this,e)},e.prototype.handleBlur=function(t){q(Jt,"keydown",Ge(this,this.handleKeyPress))},e}(lr);lr.registerComponent("ClickableComponent",En);var Sn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.update(),r.on("posterchange",Ge(o,o.update)),o}return ke(e,t),e.prototype.dispose=function(){this.player().off("posterchange",this.update),t.prototype.dispose.call(this)},e.prototype.createEl=function(){var t=f("div",{className:"vjs-poster",tabIndex:-1});return _e||(this.fallbackImg_=f("img"),t.appendChild(this.fallbackImg_)),t},e.prototype.update=function(t){var e=this.player().poster();this.setSrc(e),e?this.show():this.hide()},e.prototype.setSrc=function(t){if(this.fallbackImg_)this.fallbackImg_.src=t;else{var e="";t&&(e='url("'+t+'")'),this.el_.style.backgroundImage=e}},e.prototype.handleClick=function(t){this.player_.controls()&&(this.player_.paused()?lt(this.player_.play()):this.player_.pause())},e}(En);lr.registerComponent("PosterImage",Sn);var wn={monospace:"monospace",sansSerif:"sans-serif",serif:"serif",monospaceSansSerif:'"Andale Mono", "Lucida Console", monospace',monospaceSerif:'"Courier New", monospace',proportionalSansSerif:"sans-serif",proportionalSerif:"serif",casual:'"Comic Sans MS", Impact, fantasy',script:'"Monotype Corsiva", cursive',smallcaps:'"Andale Mono", "Lucida Console", monospace, sans-serif'},xn=function(t){function e(r,n,o){Ce(this,e);var i=Ee(this,t.call(this,r,n,o));return r.on("loadstart",Ge(i,i.toggleDisplay)),r.on("texttrackchange",Ge(i,i.updateDisplay)),r.on("loadstart",Ge(i,i.preselectTrack)),r.ready(Ge(i,function(){if(r.tech_&&r.tech_.featuresNativeTextTracks)return void this.hide();r.on("fullscreenchange",Ge(this,this.updateDisplay));for(var t=this.options_.playerOptions.tracks||[],e=0;e1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};t="button",e=r({innerHTML:'',className:this.buildCSSClass()},e),n=r({type:"button"},n);var o=lr.prototype.createEl.call(this,t,e,n);return this.createControlTextEl(o),o},e.prototype.addChild=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=this.constructor.name;return Me.warn("Adding an actionable (user controllable) child to a Button ("+r+") is not supported; use a ClickableComponent instead."),lr.prototype.addChild.call(this,t,e)},e.prototype.enable=function(){t.prototype.enable.call(this),this.el_.removeAttribute("disabled")},e.prototype.disable=function(){t.prototype.disable.call(this),this.el_.setAttribute("disabled","disabled")},e.prototype.handleKeyPress=function(e){32!==e.which&&13!==e.which&&t.prototype.handleKeyPress.call(this,e)},e}(En);lr.registerComponent("Button",Pn);var An=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.mouseused_=!1,o.on("mousedown",o.handleMouseDown),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-big-play-button"},e.prototype.handleClick=function(t){var e=this.player_.play();if(this.mouseused_&&t.clientX&&t.clientY)return void lt(e);var r=this.player_.getChild("controlBar"),n=r&&r.getChild("playToggle");if(!n)return void this.player_.focus();var o=function(){return n.focus()};at(e)?e.then(o,function(){}):this.setTimeout(o,1)},e.prototype.handleKeyPress=function(e){this.mouseused_=!1,t.prototype.handleKeyPress.call(this,e)},e.prototype.handleMouseDown=function(t){this.mouseused_=!0},e}(Pn);An.prototype.controlText_="Play Video",lr.registerComponent("BigPlayButton",An);var On=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.controlText(n&&n.controlText||o.localize("Close")),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-close-button "+t.prototype.buildCSSClass.call(this)},e.prototype.handleClick=function(t){this.trigger({type:"close",bubbles:!1})},e}(Pn);lr.registerComponent("CloseButton",On);var Mn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on(r,"play",o.handlePlay),o.on(r,"pause",o.handlePause),o.on(r,"ended",o.handleEnded),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-play-control "+t.prototype.buildCSSClass.call(this)},e.prototype.handleClick=function(t){this.player_.paused()?this.player_.play():this.player_.pause()},e.prototype.handleSeeked=function(t){this.removeClass("vjs-ended"),this.player_.paused()?this.handlePause(t):this.handlePlay(t)},e.prototype.handlePlay=function(t){this.removeClass("vjs-ended"),this.removeClass("vjs-paused"),this.addClass("vjs-playing"),this.controlText("Pause")},e.prototype.handlePause=function(t){this.removeClass("vjs-playing"),this.addClass("vjs-paused"),this.controlText("Play")},e.prototype.handleEnded=function(t){this.removeClass("vjs-playing"),this.addClass("vjs-ended"),this.controlText("Replay"),this.one(this.player_,"seeked",this.handleSeeked)},e}(Pn);Mn.prototype.controlText_="Play",lr.registerComponent("PlayToggle",Mn);var Nn=function(t,e){t=t<0?0:t;var r=Math.floor(t%60),n=Math.floor(t/60%60),o=Math.floor(t/3600),i=Math.floor(e/60%60),s=Math.floor(e/3600);return(isNaN(t)||t===1/0)&&(o=n=r="-"),o=o>0||s>0?o+":":"",n=((o||i>=10)&&n<10?"0"+n:n)+":",r=r<10?"0"+r:r,o+n+r},In=Nn,Dn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t;return In(t,e)},Ln=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.throttledUpdateContent=Ye(Ge(o,o.updateContent),25),o.on(r,"timeupdate",o.throttledUpdateContent),o}return ke(e,t),e.prototype.createEl=function(e){var r=this.buildCSSClass(),n=t.prototype.createEl.call(this,"div",{className:r+" vjs-time-control vjs-control",innerHTML:''+this.localize(this.labelText_)+" "});return this.contentEl_=f("span",{className:r+"-display"},{"aria-live":"off"}),this.updateTextNode_(),n.appendChild(this.contentEl_),n},e.prototype.dispose=function(){this.contentEl_=null,this.textNode_=null,t.prototype.dispose.call(this)},e.prototype.updateTextNode_=function(){if(this.contentEl_){for(;this.contentEl_.firstChild;)this.contentEl_.removeChild(this.contentEl_.firstChild);this.textNode_=Jt.createTextNode(this.formattedTime_||this.formatTime_(0)),this.contentEl_.appendChild(this.textNode_)}},e.prototype.formatTime_=function(t){return Dn(t)},e.prototype.updateFormattedTime_=function(t){var e=this.formatTime_(t);e!==this.formattedTime_&&(this.formattedTime_=e,this.requestAnimationFrame(this.updateTextNode_))},e.prototype.updateContent=function(t){},e}(lr);Ln.prototype.labelText_="Time",Ln.prototype.controlText_="Time",lr.registerComponent("TimeDisplay",Ln);var Rn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on(r,"ended",o.handleEnded),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-current-time"},e.prototype.updateContent=function(t){var e=this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime();this.updateFormattedTime_(e)},e.prototype.handleEnded=function(t){this.player_.duration()&&this.updateFormattedTime_(this.player_.duration())},e}(Ln);Rn.prototype.labelText_="Current Time",Rn.prototype.controlText_="Current Time",lr.registerComponent("CurrentTimeDisplay",Rn);var Fn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on(r,"durationchange",o.updateContent),o.on(r,"loadedmetadata",o.throttledUpdateContent),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-duration"},e.prototype.updateContent=function(t){var e=this.player_.duration();e&&this.duration_!==e&&(this.duration_=e,this.updateFormattedTime_(e))},e}(Ln);Fn.prototype.labelText_="Duration",Fn.prototype.controlText_="Duration",lr.registerComponent("DurationDisplay",Fn);var Bn=function(t){function e(){return Ce(this,e),Ee(this,t.apply(this,arguments))}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-time-control vjs-time-divider",innerHTML:"
/
"})},e}(lr);lr.registerComponent("TimeDivider",Bn);var Hn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on(r,"durationchange",o.throttledUpdateContent),o.on(r,"ended",o.handleEnded),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-remaining-time"},e.prototype.formatTime_=function(e){return"-"+t.prototype.formatTime_.call(this,e)},e.prototype.updateContent=function(t){this.player_.duration()&&(this.player_.remainingTimeDisplay?this.updateFormattedTime_(this.player_.remainingTimeDisplay()):this.updateFormattedTime_(this.player_.remainingTime()))},e.prototype.handleEnded=function(t){this.player_.duration()&&this.updateFormattedTime_(0)},e}(Ln);Hn.prototype.labelText_="Remaining Time",Hn.prototype.controlText_="Remaining Time",lr.registerComponent("RemainingTimeDisplay",Hn);var Vn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.updateShowing(),o.on(o.player(),"durationchange",o.updateShowing),o}return ke(e,t),e.prototype.createEl=function(){var e=t.prototype.createEl.call(this,"div",{className:"vjs-live-control vjs-control"});return this.contentEl_=f("div",{className:"vjs-live-display",innerHTML:''+this.localize("Stream Type")+" "+this.localize("LIVE")},{"aria-live":"off"}),e.appendChild(this.contentEl_),e},e.prototype.dispose=function(){this.contentEl_=null,t.prototype.dispose.call(this)},e.prototype.updateShowing=function(t){this.player().duration()===1/0?this.show():this.hide()},e}(lr);lr.registerComponent("LiveDisplay",Vn);var zn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.bar=o.getChild(o.options_.barName),o.vertical(!!o.options_.vertical),o.enable(),o}return ke(e,t),e.prototype.enabled=function(){return this.enabled_},e.prototype.enable=function(){this.enabled()||(this.on("mousedown",this.handleMouseDown),this.on("touchstart",this.handleMouseDown),this.on("focus",this.handleFocus),this.on("blur",this.handleBlur),this.on("click",this.handleClick),this.on(this.player_,"controlsvisible",this.update),this.playerEvent&&this.on(this.player_,this.playerEvent,this.update),this.removeClass("disabled"),this.setAttribute("tabindex",0),this.enabled_=!0)},e.prototype.disable=function(){if(this.enabled()){var t=this.bar.el_.ownerDocument;this.off("mousedown",this.handleMouseDown),this.off("touchstart",this.handleMouseDown),this.off("focus",this.handleFocus),this.off("blur",this.handleBlur),this.off("click",this.handleClick),this.off(this.player_,"controlsvisible",this.update),this.off(t,"mousemove",this.handleMouseMove),this.off(t,"mouseup",this.handleMouseUp),this.off(t,"touchmove",this.handleMouseMove),this.off(t,"touchend",this.handleMouseUp),this.removeAttribute("tabindex"),this.addClass("disabled"),this.playerEvent&&this.off(this.player_,this.playerEvent,this.update),this.enabled_=!1}},e.prototype.createEl=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return n.className=n.className+" vjs-slider",n=r({tabIndex:0},n),o=r({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},o),t.prototype.createEl.call(this,e,n,o)},e.prototype.handleMouseDown=function(t){var e=this.bar.el_.ownerDocument;"mousedown"===t.type&&t.preventDefault(),"touchstart"!==t.type||pe||t.preventDefault(),w(),this.addClass("vjs-sliding"),this.trigger("slideractive"),this.on(e,"mousemove",this.handleMouseMove),this.on(e,"mouseup",this.handleMouseUp),this.on(e,"touchmove",this.handleMouseMove),this.on(e,"touchend",this.handleMouseUp),this.handleMouseMove(t)},e.prototype.handleMouseMove=function(t){},e.prototype.handleMouseUp=function(){var t=this.bar.el_.ownerDocument;x(),this.removeClass("vjs-sliding"),this.trigger("sliderinactive"),this.off(t,"mousemove",this.handleMouseMove),this.off(t,"mouseup",this.handleMouseUp),this.off(t,"touchmove",this.handleMouseMove),this.off(t,"touchend",this.handleMouseUp),this.update()},e.prototype.update=function(){if(this.el_){var t=this.getPercent(),e=this.bar;if(e){("number"!=typeof t||t!==t||t<0||t===1/0)&&(t=0);var r=(100*t).toFixed(2)+"%",n=e.el().style;return this.vertical()?n.height=r:n.width=r,t}}},e.prototype.calculateDistance=function(t){var e=A(this.el_,t);return this.vertical()?e.y:e.x},e.prototype.handleFocus=function(){this.on(this.bar.el_.ownerDocument,"keydown",this.handleKeyPress)},e.prototype.handleKeyPress=function(t){37===t.which||40===t.which?(t.preventDefault(),this.stepBack()):38!==t.which&&39!==t.which||(t.preventDefault(),this.stepForward())},e.prototype.handleBlur=function(){this.off(this.bar.el_.ownerDocument,"keydown",this.handleKeyPress)},e.prototype.handleClick=function(t){t.stopImmediatePropagation(),t.preventDefault()},e.prototype.vertical=function(t){if(void 0===t)return this.vertical_||!1;this.vertical_=!!t,this.vertical_?this.addClass("vjs-slider-vertical"):this.addClass("vjs-slider-horizontal")},e}(lr);lr.registerComponent("Slider",zn);var Wn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.partEls_=[],o.on(r,"progress",o.update),o}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-load-progress",innerHTML:''+this.localize("Loaded")+": 0%"})},e.prototype.dispose=function(){this.partEls_=null,t.prototype.dispose.call(this)},e.prototype.update=function(t){var e=this.player_.buffered(),r=this.player_.duration(),n=this.player_.bufferedEnd(),o=this.partEls_,i=function(t,e){var r=t/e||0;return 100*(r>=1?1:r)+"%"};this.el_.style.width=i(n,r);for(var s=0;se.length;u--)this.el_.removeChild(o[u-1]);o.length=e.length},e}(lr);lr.registerComponent("LoadProgressBar",Wn);var Un=function(t){function e(){return Ce(this,e),Ee(this,t.apply(this,arguments))}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-time-tooltip"})},e.prototype.update=function(t,e,r){var n=j(this.el_),o=j(this.player_.el()),i=t.width*e;if(o&&n){var s=t.left-o.left+i,a=t.width-i+(o.right-t.right),l=n.width/2;sn.width&&(l=n.width),this.el_.style.right="-"+l+"px",v(this.el_,r)}},e}(lr);lr.registerComponent("TimeTooltip",Un);var qn=function(t){function e(){return Ce(this,e),Ee(this,t.apply(this,arguments))}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-play-progress vjs-slider-bar",innerHTML:''+this.localize("Progress")+": 0%"})},e.prototype.update=function(t,e){var r=this;this.rafId_&&this.cancelAnimationFrame(this.rafId_),this.rafId_=this.requestAnimationFrame(function(){var n=r.player_.scrubbing()?r.player_.getCache().currentTime:r.player_.currentTime(),o=Dn(n,r.player_.duration()),i=r.getChild("timeTooltip");i&&i.update(t,e,o)})},e}(lr);qn.prototype.options_={children:[]},ve&&!(ve>8)||oe||se||qn.prototype.options_.children.push("timeTooltip"),lr.registerComponent("PlayProgressBar",qn);var Kn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.update=Ye(Ge(o,o.update),25),o}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-mouse-display"})},e.prototype.update=function(t,e){var r=this;this.rafId_&&this.cancelAnimationFrame(this.rafId_),this.rafId_=this.requestAnimationFrame(function(){var n=r.player_.duration(),o=Dn(e*n,n);r.el_.style.left=t.width*e+"px",r.getChild("timeTooltip").update(t,e,o)})},e}(lr);Kn.prototype.options_={children:["timeTooltip"]},lr.registerComponent("MouseTimeDisplay",Kn);var Xn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.setEventHandlers_(),o}return ke(e,t),e.prototype.setEventHandlers_=function(){var t=this;this.update=Ye(Ge(this,this.update),30),this.on(this.player_,"timeupdate",this.update),this.on(this.player_,"ended",this.handleEnded),this.updateInterval=null,this.on(this.player_,["playing"],function(){t.clearInterval(t.updateInterval),t.updateInterval=t.setInterval(function(){t.requestAnimationFrame(function(){t.update()})},30)}),this.on(this.player_,["ended","pause","waiting"],function(){t.clearInterval(t.updateInterval)}),this.on(this.player_,["timeupdate","ended"],this.update)},e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-progress-holder"},{"aria-label":this.localize("Progress Bar")})},e.prototype.update_=function(t,e){var r=this.player_.duration();this.el_.setAttribute("aria-valuenow",(100*e).toFixed(2)),this.el_.setAttribute("aria-valuetext",this.localize("progress bar timing: currentTime={1} duration={2}",[Dn(t,r),Dn(r,r)],"{1} of {2}")),this.bar.update(j(this.el_),e)},e.prototype.update=function(e){var r=t.prototype.update.call(this);return this.update_(this.getCurrentTime_(),r),r},e.prototype.getCurrentTime_=function(){return this.player_.scrubbing()?this.player_.getCache().currentTime:this.player_.currentTime()},e.prototype.handleEnded=function(t){this.update_(this.player_.duration(),1)},e.prototype.getPercent=function(){var t=this.getCurrentTime_()/this.player_.duration();return t>=1?1:t},e.prototype.handleMouseDown=function(e){L(e)&&(e.stopPropagation(),this.player_.scrubbing(!0),this.videoWasPlaying=!this.player_.paused(),this.player_.pause(),t.prototype.handleMouseDown.call(this,e))},e.prototype.handleMouseMove=function(t){if(L(t)){var e=this.calculateDistance(t)*this.player_.duration();e===this.player_.duration()&&(e-=.1),this.player_.currentTime(e)}},e.prototype.enable=function(){t.prototype.enable.call(this);var e=this.getChild("mouseTimeDisplay");e&&e.show()},e.prototype.disable=function(){t.prototype.disable.call(this);var e=this.getChild("mouseTimeDisplay");e&&e.hide()},e.prototype.handleMouseUp=function(e){t.prototype.handleMouseUp.call(this,e),e&&e.stopPropagation(),this.player_.scrubbing(!1),this.player_.trigger({type:"timeupdate",target:this,manuallyTriggered:!0}),this.videoWasPlaying&<(this.player_.play())},e.prototype.stepForward=function(){this.player_.currentTime(this.player_.currentTime()+5)},e.prototype.stepBack=function(){this.player_.currentTime(this.player_.currentTime()-5)},e.prototype.handleAction=function(t){this.player_.paused()?this.player_.play():this.player_.pause()},e.prototype.handleKeyPress=function(e){32===e.which||13===e.which?(e.preventDefault(),this.handleAction(e)):t.prototype.handleKeyPress&&t.prototype.handleKeyPress.call(this,e)},e}(zn);Xn.prototype.options_={children:["loadProgressBar","playProgressBar"],barName:"playProgressBar"},ve&&!(ve>8)||oe||se||Xn.prototype.options_.children.splice(1,0,"mouseTimeDisplay"),Xn.prototype.playerEvent="timeupdate",lr.registerComponent("SeekBar",Xn);var $n=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.handleMouseMove=Ye(Ge(o,o.handleMouseMove),25),o.throttledHandleMouseSeek=Ye(Ge(o,o.handleMouseSeek),25),o.enable(),o}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-progress-control vjs-control"})},e.prototype.handleMouseMove=function(t){var e=this.getChild("seekBar");if(e){var r=e.getChild("mouseTimeDisplay"),n=e.el(),o=j(n),i=A(n,t).x;i>1?i=1:i<0&&(i=0),r&&r.update(o,i)}},e.prototype.handleMouseSeek=function(t){var e=this.getChild("seekBar");e&&e.handleMouseMove(t)},e.prototype.enabled=function(){return this.enabled_},e.prototype.disable=function(){this.children().forEach(function(t){return t.disable&&t.disable()}),this.enabled()&&(this.off(["mousedown","touchstart"],this.handleMouseDown),this.off(this.el_,"mousemove",this.handleMouseMove),this.handleMouseUp(),this.addClass("disabled"),this.enabled_=!1)},e.prototype.enable=function(){this.children().forEach(function(t){return t.enable&&t.enable()}),this.enabled()||(this.on(["mousedown","touchstart"],this.handleMouseDown),this.on(this.el_,"mousemove",this.handleMouseMove),this.removeClass("disabled"),this.enabled_=!0)},e.prototype.handleMouseDown=function(t){var e=this.el_.ownerDocument,r=this.getChild("seekBar");r&&r.handleMouseDown(t),this.on(e,"mousemove",this.throttledHandleMouseSeek),this.on(e,"touchmove",this.throttledHandleMouseSeek),this.on(e,"mouseup",this.handleMouseUp),this.on(e,"touchend",this.handleMouseUp)},e.prototype.handleMouseUp=function(t){var e=this.el_.ownerDocument,r=this.getChild("seekBar");r&&r.handleMouseUp(t),this.off(e,"mousemove",this.throttledHandleMouseSeek),this.off(e,"touchmove",this.throttledHandleMouseSeek),this.off(e,"mouseup",this.handleMouseUp),this.off(e,"touchend",this.handleMouseUp)},e}(lr);$n.prototype.options_={children:["seekBar"]},lr.registerComponent("ProgressControl",$n);var Gn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on(r,"fullscreenchange",o.handleFullscreenChange),!1===Jt[cr.fullscreenEnabled]&&o.disable(),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-fullscreen-control "+t.prototype.buildCSSClass.call(this)},e.prototype.handleFullscreenChange=function(t){this.player_.isFullscreen()?this.controlText("Non-Fullscreen"):this.controlText("Fullscreen")},e.prototype.handleClick=function(t){this.player_.isFullscreen()?this.player_.exitFullscreen():this.player_.requestFullscreen()},e}(Pn);Gn.prototype.controlText_="Fullscreen",lr.registerComponent("FullscreenToggle",Gn);var Yn=function(t,e){e.tech_&&!e.tech_.featuresVolumeControl&&t.addClass("vjs-hidden"),t.on(e,"loadstart",function(){e.tech_.featuresVolumeControl?t.removeClass("vjs-hidden"):t.addClass("vjs-hidden")})},Jn=function(t){function e(){return Ce(this,e),Ee(this,t.apply(this,arguments))}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-volume-level",innerHTML:''})},e}(lr);lr.registerComponent("VolumeLevel",Jn);var Qn=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.on("slideractive",o.updateLastVolume_),o.on(r,"volumechange",o.updateARIAAttributes),r.ready(function(){return o.updateARIAAttributes()}),o}return ke(e,t),e.prototype.createEl=function(){return t.prototype.createEl.call(this,"div",{className:"vjs-volume-bar vjs-slider-bar"},{"aria-label":this.localize("Volume Level"),"aria-live":"polite"})},e.prototype.handleMouseDown=function(e){L(e)&&t.prototype.handleMouseDown.call(this,e)},e.prototype.handleMouseMove=function(t){L(t)&&(this.checkMuted(),this.player_.volume(this.calculateDistance(t)))},e.prototype.checkMuted=function(){this.player_.muted()&&this.player_.muted(!1)},e.prototype.getPercent=function(){return this.player_.muted()?0:this.player_.volume()}, e.prototype.stepForward=function(){this.checkMuted(),this.player_.volume(this.player_.volume()+.1)},e.prototype.stepBack=function(){this.checkMuted(),this.player_.volume(this.player_.volume()-.1)},e.prototype.updateARIAAttributes=function(t){var e=this.player_.muted()?0:this.volumeAsPercentage_();this.el_.setAttribute("aria-valuenow",e),this.el_.setAttribute("aria-valuetext",e+"%")},e.prototype.volumeAsPercentage_=function(){return Math.round(100*this.player_.volume())},e.prototype.updateLastVolume_=function(){var t=this,e=this.player_.volume();this.one("sliderinactive",function(){0===t.player_.volume()&&t.player_.lastVolume_(e)})},e}(zn);Qn.prototype.options_={children:["volumeLevel"],barName:"volumeLevel"},Qn.prototype.playerEvent="volumechange",lr.registerComponent("VolumeBar",Qn);var Zn=function(t){function e(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Ce(this,e),n.vertical=n.vertical||!1,(void 0===n.volumeBar||o(n.volumeBar))&&(n.volumeBar=n.volumeBar||{},n.volumeBar.vertical=n.vertical);var i=Ee(this,t.call(this,r,n));return Yn(i,r),i.throttledHandleMouseMove=Ye(Ge(i,i.handleMouseMove),25),i.on("mousedown",i.handleMouseDown),i.on("touchstart",i.handleMouseDown),i.on(i.volumeBar,["focus","slideractive"],function(){i.volumeBar.addClass("vjs-slider-active"),i.addClass("vjs-slider-active"),i.trigger("slideractive")}),i.on(i.volumeBar,["blur","sliderinactive"],function(){i.volumeBar.removeClass("vjs-slider-active"),i.removeClass("vjs-slider-active"),i.trigger("sliderinactive")}),i}return ke(e,t),e.prototype.createEl=function(){var e="vjs-volume-horizontal";return this.options_.vertical&&(e="vjs-volume-vertical"),t.prototype.createEl.call(this,"div",{className:"vjs-volume-control vjs-control "+e})},e.prototype.handleMouseDown=function(t){var e=this.el_.ownerDocument;this.on(e,"mousemove",this.throttledHandleMouseMove),this.on(e,"touchmove",this.throttledHandleMouseMove),this.on(e,"mouseup",this.handleMouseUp),this.on(e,"touchend",this.handleMouseUp)},e.prototype.handleMouseUp=function(t){var e=this.el_.ownerDocument;this.off(e,"mousemove",this.throttledHandleMouseMove),this.off(e,"touchmove",this.throttledHandleMouseMove),this.off(e,"mouseup",this.handleMouseUp),this.off(e,"touchend",this.handleMouseUp)},e.prototype.handleMouseMove=function(t){this.volumeBar.handleMouseMove(t)},e}(lr);Zn.prototype.options_={children:["volumeBar"]},lr.registerComponent("VolumeControl",Zn);var to=function(t,e){e.tech_&&!e.tech_.featuresMuteControl&&t.addClass("vjs-hidden"),t.on(e,"loadstart",function(){e.tech_.featuresMuteControl?t.removeClass("vjs-hidden"):t.addClass("vjs-hidden")})},eo=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return to(o,r),o.on(r,["loadstart","volumechange"],o.update),o}return ke(e,t),e.prototype.buildCSSClass=function(){return"vjs-mute-control "+t.prototype.buildCSSClass.call(this)},e.prototype.handleClick=function(t){var e=this.player_.volume(),r=this.player_.lastVolume_();if(0===e){var n=r<.1?.1:r;this.player_.volume(n),this.player_.muted(!1)}else this.player_.muted(!this.player_.muted())},e.prototype.update=function(t){this.updateIcon_(),this.updateControlText_()},e.prototype.updateIcon_=function(){var t=this.player_.volume(),e=3;oe&&this.player_.muted(this.player_.tech_.el_.muted),0===t||this.player_.muted()?e=0:t<.33?e=1:t<.67&&(e=2);for(var r=0;r<4;r++)_(this.el_,"vjs-vol-"+r);m(this.el_,"vjs-vol-"+e)},e.prototype.updateControlText_=function(){var t=this.player_.muted()||0===this.player_.volume(),e=t?"Unmute":"Mute";this.controlText()!==e&&this.controlText(e)},e}(Pn);eo.prototype.controlText_="Mute",lr.registerComponent("MuteToggle",eo);var ro=function(t){function e(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Ce(this,e),void 0!==n.inline?n.inline=n.inline:n.inline=!0,(void 0===n.volumeControl||o(n.volumeControl))&&(n.volumeControl=n.volumeControl||{},n.volumeControl.vertical=!n.inline);var i=Ee(this,t.call(this,r,n));return i.on(r,["loadstart"],i.volumePanelState_),i.on(i.volumeControl,["slideractive"],i.sliderActive_),i.on(i.volumeControl,["sliderinactive"],i.sliderInactive_),i}return ke(e,t),e.prototype.sliderActive_=function(){this.addClass("vjs-slider-active")},e.prototype.sliderInactive_=function(){this.removeClass("vjs-slider-active")},e.prototype.volumePanelState_=function(){this.volumeControl.hasClass("vjs-hidden")&&this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-hidden"),this.volumeControl.hasClass("vjs-hidden")&&!this.muteToggle.hasClass("vjs-hidden")&&this.addClass("vjs-mute-toggle-only")},e.prototype.createEl=function(){var e="vjs-volume-panel-horizontal";return this.options_.inline||(e="vjs-volume-panel-vertical"),t.prototype.createEl.call(this,"div",{className:"vjs-volume-panel vjs-control "+e})},e}(lr);ro.prototype.options_={children:["muteToggle","volumeControl"]},lr.registerComponent("VolumePanel",ro);var no=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return n&&(o.menuButton_=n.menuButton),o.focusedChild_=-1,o.on("keydown",o.handleKeyPress),o}return ke(e,t),e.prototype.addItem=function(t){this.addChild(t),t.on("click",Ge(this,function(e){this.menuButton_&&(this.menuButton_.unpressButton(),"CaptionSettingsMenuItem"!==t.name()&&this.menuButton_.focus())}))},e.prototype.createEl=function(){var e=this.options_.contentElType||"ul";this.contentEl_=f(e,{className:"vjs-menu-content"}),this.contentEl_.setAttribute("role","menu");var r=t.prototype.createEl.call(this,"div",{append:this.contentEl_,className:"vjs-menu"});return r.appendChild(this.contentEl_),U(r,"click",function(t){t.preventDefault(),t.stopImmediatePropagation()}),r},e.prototype.dispose=function(){this.contentEl_=null,t.prototype.dispose.call(this)},e.prototype.handleKeyPress=function(t){37===t.which||40===t.which?(t.preventDefault(),this.stepForward()):38!==t.which&&39!==t.which||(t.preventDefault(),this.stepBack())},e.prototype.stepForward=function(){var t=0;void 0!==this.focusedChild_&&(t=this.focusedChild_+1),this.focus(t)},e.prototype.stepBack=function(){var t=0;void 0!==this.focusedChild_&&(t=this.focusedChild_-1),this.focus(t)},e.prototype.focus=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=this.children().slice();e.length&&e[0].className&&/vjs-menu-title/.test(e[0].className)&&e.shift(),e.length>0&&(t<0?t=0:t>=e.length&&(t=e.length-1),this.focusedChild_=t,e[t].el_.focus())},e}(lr);lr.registerComponent("Menu",no);var oo=function(t){function e(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Ce(this,e);var o=Ee(this,t.call(this,r,n));o.menuButton_=new Pn(r,n),o.menuButton_.controlText(o.controlText_),o.menuButton_.el_.setAttribute("aria-haspopup","true");var i=Pn.prototype.buildCSSClass();return o.menuButton_.el_.className=o.buildCSSClass()+" "+i,o.menuButton_.removeClass("vjs-control"),o.addChild(o.menuButton_),o.update(),o.enabled_=!0,o.on(o.menuButton_,"tap",o.handleClick),o.on(o.menuButton_,"click",o.handleClick),o.on(o.menuButton_,"focus",o.handleFocus),o.on(o.menuButton_,"blur",o.handleBlur),o.on("keydown",o.handleSubmenuKeyPress),o}return ke(e,t),e.prototype.update=function(){var t=this.createMenu();this.menu&&(this.menu.dispose(),this.removeChild(this.menu)),this.menu=t,this.addChild(t),this.buttonPressed_=!1,this.menuButton_.el_.setAttribute("aria-expanded","false"),this.items&&this.items.length<=this.hideThreshold_?this.hide():this.show()},e.prototype.createMenu=function(){var t=new no(this.player_,{menuButton:this});if(this.hideThreshold_=0,this.options_.title){var e=f("li",{className:"vjs-menu-title",innerHTML:J(this.options_.title),tabIndex:-1});this.hideThreshold_+=1,t.children_.unshift(e),y(e,t.contentEl())}if(this.items=this.createItems(),this.items)for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:this.menuButton_.el();return this.menuButton_.controlText(t,e)},e.prototype.handleClick=function(t){this.one(this.menu.contentEl(),"mouseleave",Ge(this,function(t){this.unpressButton(),this.el_.blur()})),this.buttonPressed_?this.unpressButton():this.pressButton()},e.prototype.focus=function(){this.menuButton_.focus()},e.prototype.blur=function(){this.menuButton_.blur()},e.prototype.handleFocus=function(){U(Jt,"keydown",Ge(this,this.handleKeyPress))},e.prototype.handleBlur=function(){q(Jt,"keydown",Ge(this,this.handleKeyPress))},e.prototype.handleKeyPress=function(t){27===t.which||9===t.which?(this.buttonPressed_&&this.unpressButton(),9!==t.which&&(t.preventDefault(),this.menuButton_.el_.focus())):38!==t.which&&40!==t.which||this.buttonPressed_||(this.pressButton(),t.preventDefault())},e.prototype.handleSubmenuKeyPress=function(t){27!==t.which&&9!==t.which||(this.buttonPressed_&&this.unpressButton(),9!==t.which&&(t.preventDefault(),this.menuButton_.el_.focus()))},e.prototype.pressButton=function(){if(this.enabled_){if(this.buttonPressed_=!0,this.menu.lockShowing(),this.menuButton_.el_.setAttribute("aria-expanded","true"),oe&&p())return;this.menu.focus()}},e.prototype.unpressButton=function(){this.enabled_&&(this.buttonPressed_=!1,this.menu.unlockShowing(),this.menuButton_.el_.setAttribute("aria-expanded","false"))},e.prototype.disable=function(){this.unpressButton(),this.enabled_=!1,this.addClass("vjs-disabled"),this.menuButton_.disable()},e.prototype.enable=function(){this.enabled_=!0,this.removeClass("vjs-disabled"),this.menuButton_.enable()},e}(lr);lr.registerComponent("MenuButton",oo);var io=function(t){function e(r,n){Ce(this,e);var o=n.tracks,i=Ee(this,t.call(this,r,n));if(i.items.length<=1&&i.hide(),!o)return Ee(i);var s=Ge(i,i.update);return o.addEventListener("removetrack",s),o.addEventListener("addtrack",s),i.player_.on("ready",s),i.player_.on("dispose",function(){o.removeEventListener("removetrack",s),o.removeEventListener("addtrack",s)}),i}return ke(e,t),e}(oo);lr.registerComponent("TrackButton",io);var so=function(t){function e(r,n){Ce(this,e);var o=Ee(this,t.call(this,r,n));return o.selectable=n.selectable,o.isSelected_=n.selected||!1,o.multiSelectable=n.multiSelectable,o.selected(o.isSelected_),o.selectable?o.multiSelectable?o.el_.setAttribute("role","menuitemcheckbox"):o.el_.setAttribute("role","menuitemradio"):o.el_.setAttribute("role","menuitem"),o}return ke(e,t),e.prototype.createEl=function(e,n,o){return this.nonIconControl=!0,t.prototype.createEl.call(this,"li",r({className:"vjs-menu-item",innerHTML:''+this.localize(this.options_.label)+"",tabIndex:-1},n),o)},e.prototype.handleClick=function(t){this.selected(!0)},e.prototype.selected=function(t){this.selectable&&(t?(this.addClass("vjs-selected"),this.el_.setAttribute("aria-checked","true"),this.controlText(", selected"),this.isSelected_=!0):(this.removeClass("vjs-selected"),this.el_.setAttribute("aria-checked","false"),this.controlText(""),this.isSelected_=!1))},e}(En);lr.registerComponent("MenuItem",so);var ao=function(t){function e(r,n){Ce(this,e);var o=n.track,i=r.textTracks();n.label=o.label||o.language||"Unknown",n.selected="showing"===o.mode;var s=Ee(this,t.call(this,r,n));s.track=o;var a=function(){for(var t=arguments.length,e=Array(t),r=0;r-1?"showing"!==s.mode&&(s.mode="showing"):"disabled"!==s.mode&&(s.mode="disabled")}},e.prototype.handleTracksChange=function(t){var e="showing"===this.track.mode;e!==this.isSelected_&&this.selected(e)},e.prototype.handleSelectedLanguageChange=function(t){if("showing"===this.track.mode){var e=this.player_.cache_.selectedLanguage;if(e&&e.enabled&&e.language===this.track.language&&e.kind!==this.track.kind)return;this.player_.cache_.selectedLanguage={enabled:!0,language:this.track.language,kind:this.track.kind}}},e.prototype.dispose=function(){this.track=null,t.prototype.dispose.call(this)},e}(so);lr.registerComponent("TextTrackMenuItem",ao);var lo=function(t){function e(r,n){return Ce(this,e),n.track={player:r,kind:n.kind,kinds:n.kinds,default:!1,mode:"disabled"},n.kinds||(n.kinds=[n.kind]),n.label?n.track.label=n.label:n.track.label=n.kinds.join(" and ")+" off",n.selectable=!0,n.multiSelectable=!1,Ee(this,t.call(this,r,n))}return ke(e,t),e.prototype.handleTracksChange=function(t){for(var e=this.player().textTracks(),r=!0,n=0,o=e.length;n-1&&"showing"===i.mode){r=!1;break}}r!==this.isSelected_&&this.selected(r)},e.prototype.handleSelectedLanguageChange=function(t){for(var e=this.player().textTracks(),r=!0,n=0,o=e.length;n-1&&"showing"===i.mode){r=!1;break}}r&&(this.player_.cache_.selectedLanguage={enabled:!1})},e}(ao);lr.registerComponent("OffTextTrackMenuItem",lo);var co=function(t){function e(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Ce(this,e),n.tracks=r.textTracks(),Ee(this,t.call(this,r,n))}return ke(e,t),e.prototype.createItems=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ao,r=void 0;this.label_&&(r=this.label_+" off"),t.push(new lo(this.player_,{kinds:this.kinds_,kind:this.kind_,label:r})),this.hideThreshold_+=1;var n=this.player_.textTracks();Array.isArray(this.kinds_)||(this.kinds_=[this.kind_]);for(var o=0;o-1){var s=new e(this.player_,{track:i,selectable:!0,multiSelectable:!1});s.addClass("vjs-"+i.kind+"-menu-item"),t.push(s)}}return t},e}(io);lr.registerComponent("TextTrackButton",co);var uo=function(t){function e(r,n){Ce(this,e);var o=n.track,i=n.cue,s=r.currentTime();n.selectable=!0,n.multiSelectable=!1,n.label=i.text,n.selected=i.startTime<=s&&s=0;e--){var r=t[e];if(r.kind===this.kind_)return r}},e.prototype.getMenuCaption=function(){return this.track_&&this.track_.label?this.track_.label:this.localize(J(this.kind_))},e.prototype.createMenu=function(){return this.options_.title=this.getMenuCaption(),t.prototype.createMenu.call(this)},e.prototype.createItems=function(){var t=[];if(!this.track_)return t;var e=this.track_.cues;if(!e)return t;for(var r=0,n=e.length;r