From 412c69d40f5a802df36d28d179099df61e147496 Mon Sep 17 00:00:00 2001 From: Fernando Serrano Carpena Date: Wed, 27 Sep 2023 13:15:54 +0200 Subject: [PATCH] The volume button now is not shown on devices that have no access to volume API. Fix #5 --- dist/paella-basic-plugins.js | 2 +- dist/paella-basic-plugins.js.map | 2 +- package-lock.json | 18 +++++++++--------- package.json | 4 ++-- .../es.upv.paella.volumeButtonPlugin.js | 13 ++++++++++++- 5 files changed, 25 insertions(+), 14 deletions(-) diff --git a/dist/paella-basic-plugins.js b/dist/paella-basic-plugins.js index 235c52e..10bb6a4 100644 --- a/dist/paella-basic-plugins.js +++ b/dist/paella-basic-plugins.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("paella-core")):"function"==typeof define&&define.amd?define(["paella-core"],t):"object"==typeof exports?exports["paella-basic-plugins"]=t(require("paella-core")):e["paella-basic-plugins"]=t(e[void 0])}(self,(e=>(()=>{var t={95:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995);var o={},i=n(456);i.keys().forEach((function(e){var t=/([a-z-]+[A-Z_]+)\.json/.exec(e),n=t&&t[1];if(n){var r=i(e);o[n]=r;var u=n.substring(0,2);u in o||(o[u]=r)}}));const u=o;function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(998),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 8:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"load",value:(c=s(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return!1===this.config.showIcon||(this.icon=this.player.getCustomPluginIcon(this.name,"screenIcon")||u()),e.next=3,this.player.videoContainer.streamProvider.getAudioTracks();case 3:return this._audioTracks=e.sent,e.next=6,this.updateAudioLabel();case 6:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"getMenu",value:(a=s(regeneratorRuntime.mark((function e(){var t,n,r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.player.videoContainer.streamProvider.currentAudioTrack,n=this._audioTracks.map((function(e){return{id:e.id,title:r.player.translate(e.name)||r.player.translate(e.language),data:e,selected:e===t}})),e.abrupt("return",n);case 3:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"updateAudioLabel",value:(i=s(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.player.videoContainer.streamProvider.currentAudioTrack,this.title=t.language;case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"itemSelected",value:(r=s(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.setCurrentAudioTrack(t.data);case 2:this.updateAudioLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}],n&&f(t.prototype,n),C}(r.MenuButtonPlugin)},925:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(842),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(963),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n0&&t.enable()})),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_ENABLED,(function(e){t._selected=e.language})),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_DISABLED,(function(){t._selected=null}));case 7:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getMenu",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[{id:-1,title:"Disabled",index:-1,selected:null===this._selected}],this._captionsCanvas.captions.forEach((function(e,r){t.push({id:e.language,title:e.label,index:r,selected:e.language===n._selected})})),e.abrupt("return",t);case 3:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"buttonType",get:function(){return"radio"}},{key:"itemSelected",value:function(e){-1===e.index?this._captionsCanvas.disableCaptions():this._captionsCanvas.enableCaptions({index:e.index}),r.PopUp.HideAllPopUps(!1)}}],n&&f(t.prototype,n),g}(r.MenuButtonPlugin)},787:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>h});var r=n(995),o=n(95);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function u(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){u(i,r,o,a,c,"next",e)}function c(e){u(i,r,o,a,c,"throw",e)}a(void 0)}))}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(379),u=n.n(i),a=n(538);u()(a.Z,{insert:"head",singleton:!1}),a.Z.locals;var c=n(549),s=n.n(c);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n0&&(n._downloads[e.content]=t)})),e.abrupt("return",Object.keys(this._downloads).length>0);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"load",value:(u=p(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"downloadIcon")||s();case 1:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"getContent",value:(i=p(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=(0,r.createElementWithHtmlText)('\n
\n

'.concat((0,r.translate)("Available downloads"),"

\n
")),Object.keys(this._downloads).forEach((function(e){var o=(0,r.createElementWithHtmlText)('\n
\n
'.concat(e,"
\n
"),t),i=(0,r.createElementWithHtmlText)("
    ",o);n._downloads[e].forEach((function(e){var t="".concat(e.res.w,"x").concat(e.res.h);(0,r.createElementWithHtmlText)('\n
  • \n \n [').concat(e.mimetype,']').concat(t,"\n \n
  • \n "),i)}))})),e.abrupt("return",t);case 4:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})}],n&&h(t.prototype,n),b}(r.PopUpButtonPlugin)},800:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995),o=n(95),i=n(770),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(379),i=n.n(o),u=n(264);i()(u.Z,{insert:"head",singleton:!1}),u.Z.locals;var a=n(283),c=n.n(a),s=n(95);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n'),this._resultsContainer=(0,r.createElementWithHtmlText)('
    ',n),(o=(0,r.createElementWithHtmlText)(''),n)).addEventListener("click",(function(e){e.stopPropagation()})),i=navigator.language.substring(0,2),u=function(e){return s.player.captionsCanvas.currentCaptions?e===s.player.captionsCanvas.currentCaptions.language:e===i},a=function(){var e=null;s.captions.some((function(t){u(t.language)&&(e=t)})),e||(e=s.captions[0]),s._cueElements=[],e&&e.cues.forEach((function(e){var t=(0,r.createElementWithHtmlText)('

    '.concat(e.startString,": ").concat(e.captions[0],"

    "),s._resultsContainer);t._cue=e,t.addEventListener("click",function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.target._cue.start,e.next=3,s.player.videoContainer.setCurrentTime(n);case 3:t.stopPropagation();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),s._cueElements.push(t)}))},a(),c=null,o.addEventListener("keyup",(function(e){c&&clearTimeout(c),s._resultsContainer.innerHTML="";var t=s.player.getLanguage();c=setTimeout((function(){var e={};for(var n in s.captions.forEach((function(t){t.cues.forEach((function(n){n.captions.find((function(e){return new RegExp(o.value,"i").test(e)}))&&(e[n.startString]=e[n.startString]||{cue:n,text:{}},e[n.startString].text[t.language]=n.captions)}))})),s._cueElements=[],e){var i=e[n],u=i.text[t]||i.text[Object.keys(i.text)[0]],l=(0,r.createElementWithHtmlText)('

    '.concat(i.cue.startString,": ").concat(u[0],"

    "),s._resultsContainer);l._cue=i.cue,l.addEventListener("click",function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.target._cue.start,e.next=3,s.player.videoContainer.setCurrentTime(n);case 3:t.stopPropagation();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),s._cueElements.push(l)}0===Object.keys(e).length&&""!==o.value?(0,r.createElementWithHtmlText)("

    ".concat(s.player.translate("No results found"),"

    "),s._resultsContainer):""===o.value&&a(),c=null}),1e3),e.stopPropagation()})),this._timeupdateEvent||(this._timeupdateEvent=function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:""===o.value&&null!==(n=s._cueElements)&&void 0!==n&&n.length&&s._cueElements.forEach((function(e){if(e._cue.start<=t.currentTime&&e._cue.end>=t.currentTime){e.classList.add("current");var n=e.offsetTop-s._resultsContainer.scrollTop;(n<0||n>s._resultsContainer.clientHeight)&&s._resultsContainer.scrollTo({top:e.offsetTop-20})}else e.classList.remove("current")}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),this.player.bindEvent(r.Events.TIMEUPDATE,this._timeupdateEvent,!0)),setTimeout((function(){return s.refreshContent=!0}),10),e.abrupt("return",n);case 14:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"popUpType",get:function(){return"no-modal"}},{key:"captions",get:function(){return this.player.captionsCanvas.captions}},{key:"customPopUpClass",get:function(){return"find-captions"}},{key:"load",value:(o=p(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"findCaptionsIcon")||c(),this._captionsCanvas=this.player.captionsCanvas,0===this.captions.length&&this.disable(),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_CHANGED,(function(){t.captions.length>0&&t.enable()}));case 4:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})}],n&&h(t.prototype,n),f}(r.PopUpButtonPlugin)},108:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(271),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(643),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(812),u=n.n(i),a=n(379),c=n.n(a),s=n(754);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n0);case 4:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"load",value:(a=p(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"keyboardIcon")||u();case 1:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"popUpType",get:function(){return"no-modal"}},{key:"getKeyText",value:function(e){var t=this.player.translate(e.keyCode);return e.keyModifiers.altKey&&(t+=" + Alt"),e.keyModifiers.ctrlKey&&(t+=" + Ctrl"),e.keyModifiers.shiftKey&&(t+=" + Shift"),t}},{key:"menuTitle",get:function(){return this.config.menuTitle||"Keyboard shortcuts"}},{key:"getContent",value:(i=p(regeneratorRuntime.mark((function e(){var t,n,o,i,u=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(i in t=(0,r.createElementWithHtmlText)('\n
    \n '),n={},this.player.getShortcuts().forEach((function(e){var t=u.player.translate(e.description);n[t]?n[t].push(e):n[t]=[e]})),o=function(e){var o=n[e],i="";o.forEach((function(e){""!==i&&(i+=" / "),i+=u.player.translate(u.getKeyText(e))}));var a=(0,r.createElementWithHtmlText)('\n\t\t\t
    \n\t\t\t\t
    '.concat(e,'
    \n\t\t\t\t
    ').concat(i,"
    \n
    \n\t\t\t"));t.appendChild(a)},n)o(i);return e.abrupt("return",t);case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})}],n&&h(t.prototype,n),b}(r.PopUpButtonPlugin)},239:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(291),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 5:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"load",value:(a=s(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"layoutIcon")||u(),this._showIcons=null===(t=this.config.showIcons)||void 0===t||t;case 2:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getMenu",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.player.videoContainer.validContentSettings,e.t0=Promise,e.next=4,t.map(function(){var e=s(regeneratorRuntime.mark((function e(t){var o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=r.utils.joinPath([n.player.configResourcesUrl,t.icon]),e.t1=n._showIcons,!e.t1){e.next=6;break}return e.next=5,r.utils.loadSvgIcon(o);case 5:e.t1=e.sent;case 6:if(e.t0=e.t1,e.t0){e.next=9;break}e.t0=null;case 9:return i=e.t0,e.abrupt("return",{id:t.id,title:t.title,icon:i,selected:n.player.videoContainer.layoutId===t.id});case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());case 4:return e.t1=e.sent,e.abrupt("return",e.t0.all.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"showTitles",get:function(){return!1}},{key:"buttonType",get:function(){return"radio"}},{key:"itemSelected",value:function(e){this.player.videoContainer.setLayout(e.id)}}],n&&f(t.prototype,n),b}(r.MenuButtonPlugin)},592:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995),o=n(95);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function u(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){u(i,r,o,a,c,"next",e)}function c(e){u(i,r,o,a,c,"throw",e)}a(void 0)}))}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(998),u=n.n(i),a=n(379),c=n.n(a),s=n(473);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(998),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 8:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"load",value:(c=s(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return!1===this.config.showIcon||(this.icon=this.player.getCustomPluginIcon("es.upv.paella.qualitySelector","screenIcon")||u()),e.next=3,this.updateQualityLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"getMenu",value:(a=s(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.getCurrentQuality();case 2:return t=e.sent,n=this._qualities.map((function(e){var n=e.index===t.index;return{id:e.index,title:e.label,width:e.res.w,height:e.res.h,data:e,selected:n}})),e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"updateQualityLabel",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=function(){var e=s(regeneratorRuntime.mark((function e(){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.player.videoContainer.streamProvider.getCurrentQuality();case 2:(r=e.sent)?n.title=r.shortLabel:setTimeout((function(){return t()}),500);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),t();case 2:case"end":return e.stop()}}),e)}))),function(){return i.apply(this,arguments)})},{key:"itemSelected",value:(r=s(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.setQuality(t.data);case 2:this.updateQualityLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"buttonType",get:function(){return"radio"}}],n&&f(t.prototype,n),C}(r.MenuButtonPlugin)},459:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>P});var r=n(995),o=n(95),i=n(506),u=n.n(i),a=n(704),c=n.n(a),s=n(978),l=n.n(s),f=n(928),p=n.n(f),d=n(379),h=n.n(d),y=n(405);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(e,t){for(var n=0;n\n
    \n
    \n ',this.sliderContainer),n=!1,o=t.getElementsByClassName("volume-slider-fill")[0],i=t.getElementsByClassName("volume-slider-empty")[0];o.style.width="50%",i.style.width="50%",this._sliderFill=o,this._sliderEmpty=i;var u=function(){var n=k(regeneratorRuntime.mark((function n(r){var o,i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return o=t.offsetWidth,(i=100*r/o)<4&&(i=0),i>96&&(i=100),i/=100,n.next=8,e.player.videoContainer.setVolume(i);case 8:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}();t.addEventListener("mousedown",function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=!0,e.next=3,u(t.offsetX);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),t.addEventListener("mousemove",function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n){e.next=3;break}return e.next=3,u(t.offsetX);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),t.addEventListener("mouseleave",(function(){n=!1})),t.addEventListener("mouseup",(function(){n=!1})),this.volumeAlwaysVisible||(this.sliderContainer.style.display="none"),(0,r.bindEvent)(this.player,r.Events.VOLUME_CHANGED,(function(t){var n=t.volume;e.updateIcon(n)}))}h()(y.Z,{insert:"head",singleton:!1}),y.Z.locals;var P=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&C(e,t)}(P,e);var t,n,r,i,a,s,f,d,h,y,v,A=(y=P,v=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=x(y);if(v){var n=x(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return w(this,e)});function P(){return m(this,P),A.apply(this,arguments)}return t=P,n=[{key:"getPluginModuleInstance",value:function(){return o.default.Get()}},{key:"name",get:function(){return b(x(P.prototype),"name",this)||"es.upv.paella.volumeButtonPlugin"}},{key:"getAriaLabel",value:function(){return"Volume"}},{key:"getDescription",value:function(){return this.getAriaLabel()}},{key:"className",get:function(){return"volume-button"}},{key:"updateIcon",value:(h=k(regeneratorRuntime.mark((function e(t){var n,r,o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.player.getCustomPluginIcon(this.name,"volumeHighIcon")||u(),r=this.player.getCustomPluginIcon(this.name,"volumeMidIcon")||c(),o=this.player.getCustomPluginIcon(this.name,"volumeLowIcon")||l(),i=this.player.getCustomPluginIcon(this.name,"volumeMuteIcon")||p(),e.t0=!0,e.next=e.t0===(0===t)?7:e.t0===(t>0&&t<=.3)?9:e.t0===(t>.3&&t<=.6)?11:e.t0===t>.6?13:15;break;case 7:return this.icon=i,e.abrupt("break",16);case 9:return this.icon=o,e.abrupt("break",16);case 11:return this.icon=r,e.abrupt("break",16);case 13:return this.icon=n,e.abrupt("break",16);case 15:this.icon=n;case 16:this._sliderFill&&(this._sliderFill.style.width="".concat(100*t,"px")),t>.95?this._sliderFill.classList.add("fill-100"):this._sliderFill.classList.remove("fill-100"),this._sliderEmpty&&(this._sliderEmpty.style.width="".concat(100-100*t,"px")),t<.05?this._sliderEmpty.classList.add("empty-100"):this._sliderEmpty.classList.remove("empty-100");case 20:case"end":return e.stop()}}),e,this)}))),function(e){return h.apply(this,arguments)})},{key:"sliderContainer",get:function(){return"left"===this.config.side?this.rightArea:this.leftArea}},{key:"load",value:(d=k(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.showContainerOnFocus=null===(t=this.config.showVolumeOnFocus)||void 0===t||t,this.volumeAlwaysVisible=null!==(n=this.config.volumeAlwaysVisible)&&void 0!==n&&n,e.next=4,this.player.videoContainer.volume();case 4:this._prevVolume=e.sent,L.apply(this),this.updateIcon(this._prevVolume);case 7:case"end":return e.stop()}}),e,this)}))),function(){return d.apply(this,arguments)})},{key:"showSideContainer",value:function(){this.volumeAlwaysVisible||(this.sliderContainer.style.display="inline-block")}},{key:"hideSideContainer",value:function(){this.volumeAlwaysVisible||(this.sliderContainer.style.display="none")}},{key:"mouseOver",value:(f=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t===this.container&&this.showSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"mouseOut",value:(s=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t===this.container&&this.hideSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(e){return s.apply(this,arguments)})},{key:"focusIn",value:(a=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.showContainerOnFocus&&this.showSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"focusOut",value:(i=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.showContainerOnFocus&&this.hideSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"action",value:(r=k(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.volume();case 2:return t=e.sent,0,n=0===t&&0===this._prevVolume?1:0===t&&this._prevVolume>0?this._prevVolume:0,e.next=7,this.player.videoContainer.setVolume(n);case 7:this._prevVolume=t;case 8:case"end":return e.stop()}}),e,this)}))),function(){return r.apply(this,arguments)})}],n&&g(t.prototype,n),P}(r.ButtonPlugin)},538:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"\n.downloads-plugin {\n font-family: sans-serif;\n min-width: 300px;\n}\n\n.downloads-plugin h4 {\n margin: 0 0 10px 0;\n border-bottom: 1px lightgrey solid;\n}\n\n.downloads-plugin .downloadStream { \n margin-left: 5px;\n}\n\n.downloads-plugin .downloadStream ul {\n list-style: none;\n max-height: 500px;\n overflow: auto;\n padding: 0px;\n margin: 0 0 10px 10px;\n}\n\n.downloads-plugin .downloadStream .mimetype {\n color: lightcoral;\n margin-right: 10px;\n}\n\n.downloads-plugin .downloadStream .res {\n color: lightsalmon;\n}\n\n\n.downloads-plugin a {\n color: lightsalmon;\n}\n\n.downloads-plugin a:hover {\n color: salmon;\n}\n\n","",{version:3,sources:["webpack://./src/css/DownloadsPlugin.css"],names:[],mappings:";AACA;IACI,uBAAuB;IACvB,gBAAgB;AACpB;;AAEA;IACI,kBAAkB;IAClB,kCAAkC;AACtC;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;IACjB,cAAc;IACd,YAAY;IACZ,qBAAqB;AACzB;;AAEA;IACI,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,kBAAkB;AACtB;;;AAGA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;AACjB",sourcesContent:["\n.downloads-plugin {\n font-family: sans-serif;\n min-width: 300px;\n}\n\n.downloads-plugin h4 {\n margin: 0 0 10px 0;\n border-bottom: 1px lightgrey solid;\n}\n\n.downloads-plugin .downloadStream { \n margin-left: 5px;\n}\n\n.downloads-plugin .downloadStream ul {\n list-style: none;\n max-height: 500px;\n overflow: auto;\n padding: 0px;\n margin: 0 0 10px 10px;\n}\n\n.downloads-plugin .downloadStream .mimetype {\n color: lightcoral;\n margin-right: 10px;\n}\n\n.downloads-plugin .downloadStream .res {\n color: lightsalmon;\n}\n\n\n.downloads-plugin a {\n color: lightsalmon;\n}\n\n.downloads-plugin a:hover {\n color: salmon;\n}\n\n"],sourceRoot:""}]);const a=u},264:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,":root {\n --find-captions-plugin-search-bar-height: 30px;\n}\n\n.center-container .search-results {\n max-height: 80vh;\n overflow: auto;\n font-family: Arial, Helvetica, sans-serif;\n}\n\n.center-container .search-results p {\n max-width: 400px;\n user-select: none;\n}\n\n.center-container .search-results p.result-item {\n cursor: pointer;\n box-sizing: border-box;\n padding: 8px;\n border-radius: 3px;\n}\n\n\n.center-container div.captions-search-container input {\n width: 100%;\n height: var(--find-captions-plugin-search-bar-height);\n box-sizing: border-box;\n}\n\n.center-container .search-results p.result-item.current {\n border: 1px solid white;\n background-color: rgba(240,240,240,0.7);\n color: black;\n}\n\n/* Resizeable/moveable mode: */\n.center-container .captions-search-container {\n height: 100%;\n width: 100%;\n max-width: unset;\n max-height: unset;\n box-sizing: border-box;\n}\n\n.center-container .search-results {\n width: 100%;\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\n box-sizing: border-box;\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.popup-content.static-position .center-container .search-results p {\n max-width: unset;\n}\n\n/* Custom background color */\n.popup-container.find-captions .popup-content {\n background-color: rgba(0, 0, 0, 0.2);\n}","",{version:3,sources:["webpack://./src/css/FindCaptionsPlugin.css"],names:[],mappings:"AAAA;IACI,8CAA8C;AAClD;;AAEA;IACI,gBAAgB;IAChB,cAAc;IACd,yCAAyC;AAC7C;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,sBAAsB;IACtB,YAAY;IACZ,kBAAkB;AACtB;;;AAGA;IACI,WAAW;IACX,qDAAqD;IACrD,sBAAsB;AAC1B;;AAEA;IACI,uBAAuB;IACvB,uCAAuC;IACvC,YAAY;AAChB;;AAEA,8BAA8B;AAC9B;IACI,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,sBAAsB;AAC1B;;AAEA;IACI,WAAW;IACX,kEAAkE;IAClE,sBAAsB;IACtB,oCAAoC;AACxC;;AAEA;IACI,gBAAgB;AACpB;;AAEA,4BAA4B;AAC5B;IACI,oCAAoC;AACxC",sourcesContent:[":root {\n --find-captions-plugin-search-bar-height: 30px;\n}\n\n.center-container .search-results {\n max-height: 80vh;\n overflow: auto;\n font-family: Arial, Helvetica, sans-serif;\n}\n\n.center-container .search-results p {\n max-width: 400px;\n user-select: none;\n}\n\n.center-container .search-results p.result-item {\n cursor: pointer;\n box-sizing: border-box;\n padding: 8px;\n border-radius: 3px;\n}\n\n\n.center-container div.captions-search-container input {\n width: 100%;\n height: var(--find-captions-plugin-search-bar-height);\n box-sizing: border-box;\n}\n\n.center-container .search-results p.result-item.current {\n border: 1px solid white;\n background-color: rgba(240,240,240,0.7);\n color: black;\n}\n\n/* Resizeable/moveable mode: */\n.center-container .captions-search-container {\n height: 100%;\n width: 100%;\n max-width: unset;\n max-height: unset;\n box-sizing: border-box;\n}\n\n.center-container .search-results {\n width: 100%;\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\n box-sizing: border-box;\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.popup-content.static-position .center-container .search-results p {\n max-width: unset;\n}\n\n/* Custom background color */\n.popup-container.find-captions .popup-content {\n background-color: rgba(0, 0, 0, 0.2);\n}"],sourceRoot:""}]);const a=u},754:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"\n.keyboardshortcutshelp-plugin {\n font-family: Helvetica, Arial, sans-serif;\n padding: 1px;\n color: #f0f0f0;\n /* min-width: 430px; */\n}\n\n.keyboardshortcutshelp-plugin .row {\n display: flex;\n min-width: 100px;\n padding-top: 1px;\n padding-bottom: 1px;\n padding: 6px;\n gap: 5px;\n}\n\n.keyboardshortcutshelp-plugin .row .description {\n max-width: 80%;\n}\n\n.keyboardshortcutshelp-plugin .row .key {\n margin-left: auto;\n text-align: right;\n}\n","",{version:3,sources:["webpack://./src/css/KeyboardShortcutsHelp.css"],names:[],mappings:";AACA;IACI,yCAAyC;IACzC,YAAY;IACZ,cAAc;IACd,sBAAsB;AAC1B;;AAEA;IACI,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;IACZ,QAAQ;AACZ;;AAEA;IACI,cAAc;AAClB;;AAEA;IACI,iBAAiB;IACjB,iBAAiB;AACrB",sourcesContent:["\n.keyboardshortcutshelp-plugin {\n font-family: Helvetica, Arial, sans-serif;\n padding: 1px;\n color: #f0f0f0;\n /* min-width: 430px; */\n}\n\n.keyboardshortcutshelp-plugin .row {\n display: flex;\n min-width: 100px;\n padding-top: 1px;\n padding-bottom: 1px;\n padding: 6px;\n gap: 5px;\n}\n\n.keyboardshortcutshelp-plugin .row .description {\n max-width: 80%;\n}\n\n.keyboardshortcutshelp-plugin .row .key {\n margin-left: auto;\n text-align: right;\n}\n"],sourceRoot:""}]);const a=u},473:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"span.button-title {\n margin-top: -16px;\n display: block;\n font-size: 8px;\n}\n","",{version:3,sources:["webpack://./src/css/playbackRate.css"],names:[],mappings:"AAAA;IACI,iBAAiB;IACjB,cAAc;IACd,cAAc;AAClB",sourcesContent:["span.button-title {\n margin-top: -16px;\n display: block;\n font-size: 8px;\n}\n"],sourceRoot:""}]);const a=u},405:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,":root {\n --volume-slider-height: 8px;\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\n --volume-slider-empty-color: #AAA;\n}\n\n.button-plugin-side-area.volume-button {\n height: 40px;\n display: inline-block;\n vertical-align: middle;\n}\n\n.button-plugin-container {\n height: 40px;\n}\n\n.volume-slider {\n width: 100px;\n height: 100%;\n display: flex;\n margin-left: 10px;\n margin-right: 10px;\n position: relative;\n flex-direction: row;\n flex-wrap: nowrap;\n align-content: center;\n justify-content: center;\n align-items: center;\n}\n\n.volume-slider .volume-slider-fill {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-fill-color);\n border-radius: 10px 0px 0px 10px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-fill.fill-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n.volume-slider .volume-slider-empty {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-empty-color);\n border-radius: 0px 10px 10px 0px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-empty.empty-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n@media (forced-colors: active) {\n .volume-slider {\n border: 4px solid white;\n box-sizing: border-box;\n margin-bottom: 3px;\n }\n\n .volume-slider .volume-slider-fill {\n border: 4px solid white;\n box-sizing: border-box;\n }\n\n .volume-slider .volume-slider-empty {\n border: 1px solid white;\n box-sizing: border-box;\n }\n}","",{version:3,sources:["webpack://./src/css/slider.css"],names:[],mappings:"AAAA;IACI,2BAA2B;IAC3B,2DAA2D;IAC3D,iCAAiC;AACrC;;AAEA;IACI,YAAY;IACZ,qBAAqB;IACrB,sBAAsB;AAC1B;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,qBAAqB;IACrB,uBAAuB;IACvB,mBAAmB;AACvB;;AAEA;IACI,mCAAmC;IACnC,iDAAiD;IACjD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI,mCAAmC;IACnC,kDAAkD;IAClD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI;QACI,uBAAuB;QACvB,sBAAsB;QACtB,kBAAkB;IACtB;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;AACJ",sourcesContent:[":root {\n --volume-slider-height: 8px;\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\n --volume-slider-empty-color: #AAA;\n}\n\n.button-plugin-side-area.volume-button {\n height: 40px;\n display: inline-block;\n vertical-align: middle;\n}\n\n.button-plugin-container {\n height: 40px;\n}\n\n.volume-slider {\n width: 100px;\n height: 100%;\n display: flex;\n margin-left: 10px;\n margin-right: 10px;\n position: relative;\n flex-direction: row;\n flex-wrap: nowrap;\n align-content: center;\n justify-content: center;\n align-items: center;\n}\n\n.volume-slider .volume-slider-fill {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-fill-color);\n border-radius: 10px 0px 0px 10px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-fill.fill-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n.volume-slider .volume-slider-empty {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-empty-color);\n border-radius: 0px 10px 10px 0px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-empty.empty-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n@media (forced-colors: active) {\n .volume-slider {\n border: 4px solid white;\n box-sizing: border-box;\n margin-bottom: 3px;\n }\n\n .volume-slider .volume-slider-fill {\n border: 4px solid white;\n box-sizing: border-box;\n }\n\n .volume-slider .volume-slider-empty {\n border: 1px solid white;\n box-sizing: border-box;\n }\n}"],sourceRoot:""}]);const a=u},645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var i=0;i{"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{"use strict";var r,o=function(){var e={};return function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}e[t]=n}return e[t]}}(),i=[];function u(e){for(var t=-1,n=0;n{e.exports=''},283:e=>{e.exports=''},963:e=>{e.exports=''},549:e=>{e.exports=''},271:e=>{e.exports=''},643:e=>{e.exports=''},812:e=>{e.exports=''},291:e=>{e.exports=''},998:e=>{e.exports=''},770:e=>{e.exports=''},506:e=>{e.exports=''},978:e=>{e.exports=''},704:e=>{e.exports=''},928:e=>{e.exports=''},887:e=>{e.exports=''},456:(e,t,n)=>{var r={"./en-US.json":263,"./es-ES.json":992};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=456},757:(e,t,n)=>{var r={"./BasicPluginsModule.js":95,"./es.upv.paella.audioSelector.js":252,"./es.upv.paella.backwardButtonPlugin.js":925,"./es.upv.paella.captionsSelectorPlugin.js":460,"./es.upv.paella.customTimeProgressIndicator.js":787,"./es.upv.paella.downloadsPlugin.js":61,"./es.upv.paella.externalPluginTest.js":800,"./es.upv.paella.findCaptionsPlugin.js":623,"./es.upv.paella.forwardButtonPlugin.js":108,"./es.upv.paella.fullscreenButton.js":440,"./es.upv.paella.keyboardShortcutsHelp.js":234,"./es.upv.paella.layoutSelector.js":239,"./es.upv.paella.liveStreamingProgressIndicator.js":592,"./es.upv.paella.playbackRateButton.js":540,"./es.upv.paella.qualitySelector.js":135,"./es.upv.paella.volumeButtonPlugin.js":459};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=757},995:t=>{"use strict";t.exports=e},263:e=>{"use strict";e.exports=JSON.parse('{"Select the active audio track":"Select the active audio track","Toggle audio mute":"Toggle audio mute","Toggle play/pause":"Toggle play/pause","Toggle captions":"Toggle captions","Volume up 10%":"Volume up 10%","Volume down 10%":"Volume down 10%","Close pop-up":"Close pop-up","Decrease playback speed":"Decrease playback speed","Increase playback speed":"Increase playback speed","Select captions":"Select captions","Search":"Search","Search in captions":"Search in captions","No results found":"No results found","Toggle fullscreen":"Toggle fullscreen","Video layout":"Video layout","Playback rate":"Playback rate","Video quality":"Video quality","Volume":"Volume","Audio track":"Audio track","Spanish":"Español"}')},992:e=>{"use strict";e.exports=JSON.parse('{"Select the active audio track":"Seleccione la pista de audio activa","Toggle audio mute":"Conmutar el silencio de audio","Toggle play/pause":"Activar la reproducción/pausa","Toggle captions":"Alternar subtítulos","Volume up 10%":"Aumenta el volumen un 10%.","Volume down 10%":"Reduce el volumen un 10%.","Close pop-up":"Cerrar Pop Up","Decrease playback speed":"Reducir la velocidad de reproducción","Increase playback speed":"Aumentar la velocidad de reproducción","Select captions":"Seleccionar subtítulos","Search":"Buscar","Search in captions":"Buscar en subtítulos","No results found":"No se han encontrado resultados","Toggle fullscreen":"Cambiar modo de pantalla completa","Video layout":"Disposición de los vídeos","Playback rate":"Velocidad de reproducción","Video quality":"Calidad del vídeo","Volume":"Volumen","Audio track":"Pista de audio","Spanish":"Español","Keyboard shortcuts":"Atajos de teclado"}')}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var i=n[e]={id:e,exports:{}};return t[e](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nc=void 0;var o={};return(()=>{"use strict";r.r(o),r.d(o,{AudioSelectorButtonPlugin:()=>g,BackwardButtonPlugin:()=>b,CaptionsSelectorButtonPlugin:()=>C,CustomTimeProgressIndicatorPlugin:()=>_,DownloadsButtonPlugin:()=>w,FindCaptionsButtonPlugin:()=>x,ForwardButtonPlugin:()=>A,FullscreenButtonPlugin:()=>k,KeyboardHelpButtonPlugin:()=>L,LayoutSelectorButtonPlugin:()=>P,LiveStreamingProgressIndicatorPlugin:()=>I,PlaybackRateButtonPlugin:()=>R,QualitySelectorButtonPlugin:()=>O,VolumeButtonPlugin:()=>B,basicPlugins:()=>m,default:()=>v});var e=r(252),t=r(925),n=r(460),i=r(61),u=r(623),a=r(108),c=r(440),s=r(234),l=r(239),f=r(540),p=r(135),d=r(459),h=r(787),y=r(592);function v(){return r(757)}var m=[{plugin:e.default,config:{enabled:!1}},{plugin:t.default,config:{enabled:!1}},{plugin:n.default,config:{enabled:!1}},{plugin:i.default,config:{enabled:!1}},{plugin:u.default,config:{enabled:!1}},{plugin:a.default,config:{enabled:!1}},{plugin:c.default,config:{enabled:!1}},{plugin:s.default,config:{enabled:!1}},{plugin:l.default,config:{enabled:!1}},{plugin:f.default,config:{enabled:!1}},{plugin:p.default,config:{enabled:!1}},{plugin:d.default,config:{enabled:!1}},{plugin:h.default,config:{enabled:!1}},{plugin:y.default,config:{enabled:!1}}],g=e.default,b=t.default,C=n.default,w=i.default,x=u.default,A=a.default,k=c.default,L=s.default,P=l.default,R=f.default,O=p.default,B=d.default,_=h.default,I=y.default})(),o})())); +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("paella-core")):"function"==typeof define&&define.amd?define(["paella-core"],t):"object"==typeof exports?exports["paella-basic-plugins"]=t(require("paella-core")):e["paella-basic-plugins"]=t(e[void 0])}(self,(e=>(()=>{var t={95:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995);var o={},i=n(456);i.keys().forEach((function(e){var t=/([a-z-]+[A-Z_]+)\.json/.exec(e),n=t&&t[1];if(n){var r=i(e);o[n]=r;var u=n.substring(0,2);u in o||(o[u]=r)}}));const u=o;function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(998),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 8:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"load",value:(c=s(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return!1===this.config.showIcon||(this.icon=this.player.getCustomPluginIcon(this.name,"screenIcon")||u()),e.next=3,this.player.videoContainer.streamProvider.getAudioTracks();case 3:return this._audioTracks=e.sent,e.next=6,this.updateAudioLabel();case 6:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"getMenu",value:(a=s(regeneratorRuntime.mark((function e(){var t,n,r=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.player.videoContainer.streamProvider.currentAudioTrack,n=this._audioTracks.map((function(e){return{id:e.id,title:r.player.translate(e.name)||r.player.translate(e.language),data:e,selected:e===t}})),e.abrupt("return",n);case 3:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"updateAudioLabel",value:(i=s(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=this.player.videoContainer.streamProvider.currentAudioTrack,this.title=t.language;case 2:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"itemSelected",value:(r=s(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.setCurrentAudioTrack(t.data);case 2:this.updateAudioLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}],n&&f(t.prototype,n),C}(r.MenuButtonPlugin)},925:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(842),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(963),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n0&&t.enable()})),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_ENABLED,(function(e){t._selected=e.language})),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_DISABLED,(function(){t._selected=null}));case 7:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getMenu",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[{id:-1,title:"Disabled",index:-1,selected:null===this._selected}],this._captionsCanvas.captions.forEach((function(e,r){t.push({id:e.language,title:e.label,index:r,selected:e.language===n._selected})})),e.abrupt("return",t);case 3:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"buttonType",get:function(){return"radio"}},{key:"itemSelected",value:function(e){-1===e.index?this._captionsCanvas.disableCaptions():this._captionsCanvas.enableCaptions({index:e.index}),r.PopUp.HideAllPopUps(!1)}}],n&&f(t.prototype,n),g}(r.MenuButtonPlugin)},787:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>h});var r=n(995),o=n(95);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function u(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){u(i,r,o,a,c,"next",e)}function c(e){u(i,r,o,a,c,"throw",e)}a(void 0)}))}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(379),u=n.n(i),a=n(538);u()(a.Z,{insert:"head",singleton:!1}),a.Z.locals;var c=n(549),s=n.n(c);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n0&&(n._downloads[e.content]=t)})),e.abrupt("return",Object.keys(this._downloads).length>0);case 6:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"load",value:(u=p(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"downloadIcon")||s();case 1:case"end":return e.stop()}}),e,this)}))),function(){return u.apply(this,arguments)})},{key:"getContent",value:(i=p(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=(0,r.createElementWithHtmlText)('\n
    \n

    '.concat((0,r.translate)("Available downloads"),"

    \n
    ")),Object.keys(this._downloads).forEach((function(e){var o=(0,r.createElementWithHtmlText)('\n
    \n
    '.concat(e,"
    \n
    "),t),i=(0,r.createElementWithHtmlText)("
      ",o);n._downloads[e].forEach((function(e){var t="".concat(e.res.w,"x").concat(e.res.h);(0,r.createElementWithHtmlText)('\n
    • \n \n [').concat(e.mimetype,']').concat(t,"\n \n
    • \n "),i)}))})),e.abrupt("return",t);case 4:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})}],n&&h(t.prototype,n),b}(r.PopUpButtonPlugin)},800:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995),o=n(95),i=n(770),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(379),i=n.n(o),u=n(264);i()(u.Z,{insert:"head",singleton:!1}),u.Z.locals;var a=n(283),c=n.n(a),s=n(95);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n'),this._resultsContainer=(0,r.createElementWithHtmlText)('
      ',n),(o=(0,r.createElementWithHtmlText)(''),n)).addEventListener("click",(function(e){e.stopPropagation()})),i=navigator.language.substring(0,2),u=function(e){return s.player.captionsCanvas.currentCaptions?e===s.player.captionsCanvas.currentCaptions.language:e===i},a=function(){var e=null;s.captions.some((function(t){u(t.language)&&(e=t)})),e||(e=s.captions[0]),s._cueElements=[],e&&e.cues.forEach((function(e){var t=(0,r.createElementWithHtmlText)('

      '.concat(e.startString,": ").concat(e.captions[0],"

      "),s._resultsContainer);t._cue=e,t.addEventListener("click",function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.target._cue.start,e.next=3,s.player.videoContainer.setCurrentTime(n);case 3:t.stopPropagation();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),s._cueElements.push(t)}))},a(),c=null,o.addEventListener("keyup",(function(e){c&&clearTimeout(c),s._resultsContainer.innerHTML="";var t=s.player.getLanguage();c=setTimeout((function(){var e={};for(var n in s.captions.forEach((function(t){t.cues.forEach((function(n){n.captions.find((function(e){return new RegExp(o.value,"i").test(e)}))&&(e[n.startString]=e[n.startString]||{cue:n,text:{}},e[n.startString].text[t.language]=n.captions)}))})),s._cueElements=[],e){var i=e[n],u=i.text[t]||i.text[Object.keys(i.text)[0]],l=(0,r.createElementWithHtmlText)('

      '.concat(i.cue.startString,": ").concat(u[0],"

      "),s._resultsContainer);l._cue=i.cue,l.addEventListener("click",function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.target._cue.start,e.next=3,s.player.videoContainer.setCurrentTime(n);case 3:t.stopPropagation();case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),s._cueElements.push(l)}0===Object.keys(e).length&&""!==o.value?(0,r.createElementWithHtmlText)("

      ".concat(s.player.translate("No results found"),"

      "),s._resultsContainer):""===o.value&&a(),c=null}),1e3),e.stopPropagation()})),this._timeupdateEvent||(this._timeupdateEvent=function(){var e=p(regeneratorRuntime.mark((function e(t){var n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:""===o.value&&null!==(n=s._cueElements)&&void 0!==n&&n.length&&s._cueElements.forEach((function(e){if(e._cue.start<=t.currentTime&&e._cue.end>=t.currentTime){e.classList.add("current");var n=e.offsetTop-s._resultsContainer.scrollTop;(n<0||n>s._resultsContainer.clientHeight)&&s._resultsContainer.scrollTo({top:e.offsetTop-20})}else e.classList.remove("current")}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),this.player.bindEvent(r.Events.TIMEUPDATE,this._timeupdateEvent,!0)),setTimeout((function(){return s.refreshContent=!0}),10),e.abrupt("return",n);case 14:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"popUpType",get:function(){return"no-modal"}},{key:"captions",get:function(){return this.player.captionsCanvas.captions}},{key:"customPopUpClass",get:function(){return"find-captions"}},{key:"load",value:(o=p(regeneratorRuntime.mark((function e(){var t=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"findCaptionsIcon")||c(),this._captionsCanvas=this.player.captionsCanvas,0===this.captions.length&&this.disable(),(0,r.bindEvent)(this.player,r.Events.CAPTIONS_CHANGED,(function(){t.captions.length>0&&t.enable()}));case 4:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})}],n&&h(t.prototype,n),f}(r.PopUpButtonPlugin)},108:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(271),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(643),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(812),u=n.n(i),a=n(379),c=n.n(a),s=n(754);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n0);case 4:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"load",value:(a=p(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"keyboardIcon")||u();case 1:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"popUpType",get:function(){return"no-modal"}},{key:"getKeyText",value:function(e){var t=this.player.translate(e.keyCode);return e.keyModifiers.altKey&&(t+=" + Alt"),e.keyModifiers.ctrlKey&&(t+=" + Ctrl"),e.keyModifiers.shiftKey&&(t+=" + Shift"),t}},{key:"menuTitle",get:function(){return this.config.menuTitle||"Keyboard shortcuts"}},{key:"getContent",value:(i=p(regeneratorRuntime.mark((function e(){var t,n,o,i,u=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:for(i in t=(0,r.createElementWithHtmlText)('\n
      \n '),n={},this.player.getShortcuts().forEach((function(e){var t=u.player.translate(e.description);n[t]?n[t].push(e):n[t]=[e]})),o=function(e){var o=n[e],i="";o.forEach((function(e){""!==i&&(i+=" / "),i+=u.player.translate(u.getKeyText(e))}));var a=(0,r.createElementWithHtmlText)('\n\t\t\t
      \n\t\t\t\t
      '.concat(e,'
      \n\t\t\t\t
      ').concat(i,"
      \n
      \n\t\t\t"));t.appendChild(a)},n)o(i);return e.abrupt("return",t);case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})}],n&&h(t.prototype,n),b}(r.PopUpButtonPlugin)},239:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(291),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 5:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"load",value:(a=s(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.icon=this.player.getCustomPluginIcon(this.name,"layoutIcon")||u(),this._showIcons=null===(t=this.config.showIcons)||void 0===t||t;case 2:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"getMenu",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.player.videoContainer.validContentSettings,e.t0=Promise,e.next=4,t.map(function(){var e=s(regeneratorRuntime.mark((function e(t){var o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=r.utils.joinPath([n.player.configResourcesUrl,t.icon]),e.t1=n._showIcons,!e.t1){e.next=6;break}return e.next=5,r.utils.loadSvgIcon(o);case 5:e.t1=e.sent;case 6:if(e.t0=e.t1,e.t0){e.next=9;break}e.t0=null;case 9:return i=e.t0,e.abrupt("return",{id:t.id,title:t.title,icon:i,selected:n.player.videoContainer.layoutId===t.id});case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());case 4:return e.t1=e.sent,e.abrupt("return",e.t0.all.call(e.t0,e.t1));case 6:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"showTitles",get:function(){return!1}},{key:"buttonType",get:function(){return"radio"}},{key:"itemSelected",value:function(e){this.player.videoContainer.setLayout(e.id)}}],n&&f(t.prototype,n),b}(r.MenuButtonPlugin)},592:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y});var r=n(995),o=n(95);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function u(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function a(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){u(i,r,o,a,c,"next",e)}function c(e){u(i,r,o,a,c,"throw",e)}a(void 0)}))}}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>b});var r=n(995),o=n(95),i=n(998),u=n.n(i),a=n(379),c=n.n(a),s=n(473);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function p(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){f(i,r,o,u,a,"next",e)}function a(e){f(i,r,o,u,a,"throw",e)}u(void 0)}))}}function d(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function h(e,t){for(var n=0;n{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(995),o=n(95),i=n(998),u=n.n(i);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function c(e,t,n,r,o,i,u){try{var a=e[i](u),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function s(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function u(e){c(i,r,o,u,a,"next",e)}function a(e){c(i,r,o,u,a,"throw",e)}u(void 0)}))}}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function f(e,t){for(var n=0;n1);case 8:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"load",value:(c=s(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return!1===this.config.showIcon||(this.icon=this.player.getCustomPluginIcon("es.upv.paella.qualitySelector","screenIcon")||u()),e.next=3,this.updateQualityLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(){return c.apply(this,arguments)})},{key:"getMenu",value:(a=s(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.getCurrentQuality();case 2:return t=e.sent,n=this._qualities.map((function(e){var n=e.index===t.index;return{id:e.index,title:e.label,width:e.res.w,height:e.res.h,data:e,selected:n}})),e.abrupt("return",n);case 5:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"updateQualityLabel",value:(i=s(regeneratorRuntime.mark((function e(){var t,n=this;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=function(){var e=s(regeneratorRuntime.mark((function e(){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,n.player.videoContainer.streamProvider.getCurrentQuality();case 2:(r=e.sent)?n.title=r.shortLabel:setTimeout((function(){return t()}),500);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),t();case 2:case"end":return e.stop()}}),e)}))),function(){return i.apply(this,arguments)})},{key:"itemSelected",value:(r=s(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.streamProvider.setQuality(t.data);case 2:this.updateQualityLabel();case 3:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"buttonType",get:function(){return"radio"}}],n&&f(t.prototype,n),C}(r.MenuButtonPlugin)},459:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>P});var r=n(995),o=n(95),i=n(506),u=n.n(i),a=n(704),c=n.n(a),s=n(978),l=n.n(s),f=n(928),p=n.n(f),d=n(379),h=n.n(d),y=n(405);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(e,t){for(var n=0;n\n
      \n
      \n ',this.sliderContainer),n=!1,o=t.getElementsByClassName("volume-slider-fill")[0],i=t.getElementsByClassName("volume-slider-empty")[0];o.style.width="50%",i.style.width="50%",this._sliderFill=o,this._sliderEmpty=i;var u=function(){var n=k(regeneratorRuntime.mark((function n(r){var o,i;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return o=t.offsetWidth,(i=100*r/o)<4&&(i=0),i>96&&(i=100),i/=100,n.next=8,e.player.videoContainer.setVolume(i);case 8:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}();t.addEventListener("mousedown",function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=!0,e.next=3,u(t.offsetX);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),t.addEventListener("mousemove",function(){var e=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!n){e.next=3;break}return e.next=3,u(t.offsetX);case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),t.addEventListener("mouseleave",(function(){n=!1})),t.addEventListener("mouseup",(function(){n=!1})),this.volumeAlwaysVisible||(this.sliderContainer.style.display="none"),(0,r.bindEvent)(this.player,r.Events.VOLUME_CHANGED,(function(t){var n=t.volume;e.updateIcon(n)}))}h()(y.Z,{insert:"head",singleton:!1}),y.Z.locals;var P=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&C(e,t)}(O,e);var t,n,i,a,s,f,d,h,y,v,A,P,R=(A=O,P=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=x(A);if(P){var n=x(this).constructor;e=Reflect.construct(t,arguments,n)}else e=t.apply(this,arguments);return w(this,e)});function O(){return m(this,O),R.apply(this,arguments)}return t=O,n=[{key:"getPluginModuleInstance",value:function(){return o.default.Get()}},{key:"name",get:function(){return b(x(O.prototype),"name",this)||"es.upv.paella.volumeButtonPlugin"}},{key:"isEnabled",value:(v=k(regeneratorRuntime.mark((function e(){var t;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b(x(O.prototype),"isEnabled",this).call(this);case 2:if(t=e.sent,e.t0=t,!e.t0){e.next=8;break}return e.next=7,(0,r.isVolumeApiAvailable)();case 7:e.t0=e.sent;case 8:return e.abrupt("return",e.t0);case 9:case"end":return e.stop()}}),e,this)}))),function(){return v.apply(this,arguments)})},{key:"getAriaLabel",value:function(){return"Volume"}},{key:"getDescription",value:function(){return this.getAriaLabel()}},{key:"className",get:function(){return"volume-button"}},{key:"updateIcon",value:(y=k(regeneratorRuntime.mark((function e(t){var n,r,o,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=this.player.getCustomPluginIcon(this.name,"volumeHighIcon")||u(),r=this.player.getCustomPluginIcon(this.name,"volumeMidIcon")||c(),o=this.player.getCustomPluginIcon(this.name,"volumeLowIcon")||l(),i=this.player.getCustomPluginIcon(this.name,"volumeMuteIcon")||p(),e.t0=!0,e.next=e.t0===(0===t)?7:e.t0===(t>0&&t<=.3)?9:e.t0===(t>.3&&t<=.6)?11:e.t0===t>.6?13:15;break;case 7:return this.icon=i,e.abrupt("break",16);case 9:return this.icon=o,e.abrupt("break",16);case 11:return this.icon=r,e.abrupt("break",16);case 13:return this.icon=n,e.abrupt("break",16);case 15:this.icon=n;case 16:this._sliderFill&&(this._sliderFill.style.width="".concat(100*t,"px")),t>.95?this._sliderFill.classList.add("fill-100"):this._sliderFill.classList.remove("fill-100"),this._sliderEmpty&&(this._sliderEmpty.style.width="".concat(100-100*t,"px")),t<.05?this._sliderEmpty.classList.add("empty-100"):this._sliderEmpty.classList.remove("empty-100");case 20:case"end":return e.stop()}}),e,this)}))),function(e){return y.apply(this,arguments)})},{key:"sliderContainer",get:function(){return"left"===this.config.side?this.rightArea:this.leftArea}},{key:"load",value:(h=k(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return this.showContainerOnFocus=null===(t=this.config.showVolumeOnFocus)||void 0===t||t,this.volumeAlwaysVisible=null!==(n=this.config.volumeAlwaysVisible)&&void 0!==n&&n,e.next=4,this.player.videoContainer.volume();case 4:this._prevVolume=e.sent,L.apply(this),this.updateIcon(this._prevVolume);case 7:case"end":return e.stop()}}),e,this)}))),function(){return h.apply(this,arguments)})},{key:"showSideContainer",value:function(){this.volumeAlwaysVisible||(this.sliderContainer.style.display="inline-block")}},{key:"hideSideContainer",value:function(){this.volumeAlwaysVisible||(this.sliderContainer.style.display="none")}},{key:"mouseOver",value:(d=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t===this.container&&this.showSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(e){return d.apply(this,arguments)})},{key:"mouseOut",value:(f=k(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t===this.container&&this.hideSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(e){return f.apply(this,arguments)})},{key:"focusIn",value:(s=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.showContainerOnFocus&&this.showSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(){return s.apply(this,arguments)})},{key:"focusOut",value:(a=k(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.showContainerOnFocus&&this.hideSideContainer();case 1:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"action",value:(i=k(regeneratorRuntime.mark((function e(){var t,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.player.videoContainer.volume();case 2:return t=e.sent,0,n=0===t&&0===this._prevVolume?1:0===t&&this._prevVolume>0?this._prevVolume:0,e.next=7,this.player.videoContainer.setVolume(n);case 7:this._prevVolume=t;case 8:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})}],n&&g(t.prototype,n),O}(r.ButtonPlugin)},538:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"\n.downloads-plugin {\n font-family: sans-serif;\n min-width: 300px;\n}\n\n.downloads-plugin h4 {\n margin: 0 0 10px 0;\n border-bottom: 1px lightgrey solid;\n}\n\n.downloads-plugin .downloadStream { \n margin-left: 5px;\n}\n\n.downloads-plugin .downloadStream ul {\n list-style: none;\n max-height: 500px;\n overflow: auto;\n padding: 0px;\n margin: 0 0 10px 10px;\n}\n\n.downloads-plugin .downloadStream .mimetype {\n color: lightcoral;\n margin-right: 10px;\n}\n\n.downloads-plugin .downloadStream .res {\n color: lightsalmon;\n}\n\n\n.downloads-plugin a {\n color: lightsalmon;\n}\n\n.downloads-plugin a:hover {\n color: salmon;\n}\n\n","",{version:3,sources:["webpack://./src/css/DownloadsPlugin.css"],names:[],mappings:";AACA;IACI,uBAAuB;IACvB,gBAAgB;AACpB;;AAEA;IACI,kBAAkB;IAClB,kCAAkC;AACtC;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;IACjB,cAAc;IACd,YAAY;IACZ,qBAAqB;AACzB;;AAEA;IACI,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,kBAAkB;AACtB;;;AAGA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;AACjB",sourcesContent:["\n.downloads-plugin {\n font-family: sans-serif;\n min-width: 300px;\n}\n\n.downloads-plugin h4 {\n margin: 0 0 10px 0;\n border-bottom: 1px lightgrey solid;\n}\n\n.downloads-plugin .downloadStream { \n margin-left: 5px;\n}\n\n.downloads-plugin .downloadStream ul {\n list-style: none;\n max-height: 500px;\n overflow: auto;\n padding: 0px;\n margin: 0 0 10px 10px;\n}\n\n.downloads-plugin .downloadStream .mimetype {\n color: lightcoral;\n margin-right: 10px;\n}\n\n.downloads-plugin .downloadStream .res {\n color: lightsalmon;\n}\n\n\n.downloads-plugin a {\n color: lightsalmon;\n}\n\n.downloads-plugin a:hover {\n color: salmon;\n}\n\n"],sourceRoot:""}]);const a=u},264:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,":root {\n --find-captions-plugin-search-bar-height: 30px;\n}\n\n.center-container .search-results {\n max-height: 80vh;\n overflow: auto;\n font-family: Arial, Helvetica, sans-serif;\n}\n\n.center-container .search-results p {\n max-width: 400px;\n user-select: none;\n}\n\n.center-container .search-results p.result-item {\n cursor: pointer;\n box-sizing: border-box;\n padding: 8px;\n border-radius: 3px;\n}\n\n\n.center-container div.captions-search-container input {\n width: 100%;\n height: var(--find-captions-plugin-search-bar-height);\n box-sizing: border-box;\n}\n\n.center-container .search-results p.result-item.current {\n border: 1px solid white;\n background-color: rgba(240,240,240,0.7);\n color: black;\n}\n\n/* Resizeable/moveable mode: */\n.center-container .captions-search-container {\n height: 100%;\n width: 100%;\n max-width: unset;\n max-height: unset;\n box-sizing: border-box;\n}\n\n.center-container .search-results {\n width: 100%;\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\n box-sizing: border-box;\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.popup-content.static-position .center-container .search-results p {\n max-width: unset;\n}\n\n/* Custom background color */\n.popup-container.find-captions .popup-content {\n background-color: rgba(0, 0, 0, 0.2);\n}","",{version:3,sources:["webpack://./src/css/FindCaptionsPlugin.css"],names:[],mappings:"AAAA;IACI,8CAA8C;AAClD;;AAEA;IACI,gBAAgB;IAChB,cAAc;IACd,yCAAyC;AAC7C;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,sBAAsB;IACtB,YAAY;IACZ,kBAAkB;AACtB;;;AAGA;IACI,WAAW;IACX,qDAAqD;IACrD,sBAAsB;AAC1B;;AAEA;IACI,uBAAuB;IACvB,uCAAuC;IACvC,YAAY;AAChB;;AAEA,8BAA8B;AAC9B;IACI,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,sBAAsB;AAC1B;;AAEA;IACI,WAAW;IACX,kEAAkE;IAClE,sBAAsB;IACtB,oCAAoC;AACxC;;AAEA;IACI,gBAAgB;AACpB;;AAEA,4BAA4B;AAC5B;IACI,oCAAoC;AACxC",sourcesContent:[":root {\n --find-captions-plugin-search-bar-height: 30px;\n}\n\n.center-container .search-results {\n max-height: 80vh;\n overflow: auto;\n font-family: Arial, Helvetica, sans-serif;\n}\n\n.center-container .search-results p {\n max-width: 400px;\n user-select: none;\n}\n\n.center-container .search-results p.result-item {\n cursor: pointer;\n box-sizing: border-box;\n padding: 8px;\n border-radius: 3px;\n}\n\n\n.center-container div.captions-search-container input {\n width: 100%;\n height: var(--find-captions-plugin-search-bar-height);\n box-sizing: border-box;\n}\n\n.center-container .search-results p.result-item.current {\n border: 1px solid white;\n background-color: rgba(240,240,240,0.7);\n color: black;\n}\n\n/* Resizeable/moveable mode: */\n.center-container .captions-search-container {\n height: 100%;\n width: 100%;\n max-width: unset;\n max-height: unset;\n box-sizing: border-box;\n}\n\n.center-container .search-results {\n width: 100%;\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\n box-sizing: border-box;\n background-color: rgba(0, 0, 0, 0.8);\n}\n\n.popup-content.static-position .center-container .search-results p {\n max-width: unset;\n}\n\n/* Custom background color */\n.popup-container.find-captions .popup-content {\n background-color: rgba(0, 0, 0, 0.2);\n}"],sourceRoot:""}]);const a=u},754:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"\n.keyboardshortcutshelp-plugin {\n font-family: Helvetica, Arial, sans-serif;\n padding: 1px;\n color: #f0f0f0;\n /* min-width: 430px; */\n}\n\n.keyboardshortcutshelp-plugin .row {\n display: flex;\n min-width: 100px;\n padding-top: 1px;\n padding-bottom: 1px;\n padding: 6px;\n gap: 5px;\n}\n\n.keyboardshortcutshelp-plugin .row .description {\n max-width: 80%;\n}\n\n.keyboardshortcutshelp-plugin .row .key {\n margin-left: auto;\n text-align: right;\n}\n","",{version:3,sources:["webpack://./src/css/KeyboardShortcutsHelp.css"],names:[],mappings:";AACA;IACI,yCAAyC;IACzC,YAAY;IACZ,cAAc;IACd,sBAAsB;AAC1B;;AAEA;IACI,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;IACZ,QAAQ;AACZ;;AAEA;IACI,cAAc;AAClB;;AAEA;IACI,iBAAiB;IACjB,iBAAiB;AACrB",sourcesContent:["\n.keyboardshortcutshelp-plugin {\n font-family: Helvetica, Arial, sans-serif;\n padding: 1px;\n color: #f0f0f0;\n /* min-width: 430px; */\n}\n\n.keyboardshortcutshelp-plugin .row {\n display: flex;\n min-width: 100px;\n padding-top: 1px;\n padding-bottom: 1px;\n padding: 6px;\n gap: 5px;\n}\n\n.keyboardshortcutshelp-plugin .row .description {\n max-width: 80%;\n}\n\n.keyboardshortcutshelp-plugin .row .key {\n margin-left: auto;\n text-align: right;\n}\n"],sourceRoot:""}]);const a=u},473:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,"span.button-title {\n margin-top: -16px;\n display: block;\n font-size: 8px;\n}\n","",{version:3,sources:["webpack://./src/css/playbackRate.css"],names:[],mappings:"AAAA;IACI,iBAAiB;IACjB,cAAc;IACd,cAAc;AAClB",sourcesContent:["span.button-title {\n margin-top: -16px;\n display: block;\n font-size: 8px;\n}\n"],sourceRoot:""}]);const a=u},405:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(15),o=n.n(r),i=n(645),u=n.n(i)()(o());u.push([e.id,":root {\n --volume-slider-height: 8px;\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\n --volume-slider-empty-color: #AAA;\n}\n\n.button-plugin-side-area.volume-button {\n height: 40px;\n display: inline-block;\n vertical-align: middle;\n}\n\n.button-plugin-container {\n height: 40px;\n}\n\n.volume-slider {\n width: 100px;\n height: 100%;\n display: flex;\n margin-left: 10px;\n margin-right: 10px;\n position: relative;\n flex-direction: row;\n flex-wrap: nowrap;\n align-content: center;\n justify-content: center;\n align-items: center;\n}\n\n.volume-slider .volume-slider-fill {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-fill-color);\n border-radius: 10px 0px 0px 10px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-fill.fill-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n.volume-slider .volume-slider-empty {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-empty-color);\n border-radius: 0px 10px 10px 0px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-empty.empty-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n@media (forced-colors: active) {\n .volume-slider {\n border: 4px solid white;\n box-sizing: border-box;\n margin-bottom: 3px;\n }\n\n .volume-slider .volume-slider-fill {\n border: 4px solid white;\n box-sizing: border-box;\n }\n\n .volume-slider .volume-slider-empty {\n border: 1px solid white;\n box-sizing: border-box;\n }\n}","",{version:3,sources:["webpack://./src/css/slider.css"],names:[],mappings:"AAAA;IACI,2BAA2B;IAC3B,2DAA2D;IAC3D,iCAAiC;AACrC;;AAEA;IACI,YAAY;IACZ,qBAAqB;IACrB,sBAAsB;AAC1B;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,qBAAqB;IACrB,uBAAuB;IACvB,mBAAmB;AACvB;;AAEA;IACI,mCAAmC;IACnC,iDAAiD;IACjD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI,mCAAmC;IACnC,kDAAkD;IAClD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI;QACI,uBAAuB;QACvB,sBAAsB;QACtB,kBAAkB;IACtB;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;AACJ",sourcesContent:[":root {\n --volume-slider-height: 8px;\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\n --volume-slider-empty-color: #AAA;\n}\n\n.button-plugin-side-area.volume-button {\n height: 40px;\n display: inline-block;\n vertical-align: middle;\n}\n\n.button-plugin-container {\n height: 40px;\n}\n\n.volume-slider {\n width: 100px;\n height: 100%;\n display: flex;\n margin-left: 10px;\n margin-right: 10px;\n position: relative;\n flex-direction: row;\n flex-wrap: nowrap;\n align-content: center;\n justify-content: center;\n align-items: center;\n}\n\n.volume-slider .volume-slider-fill {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-fill-color);\n border-radius: 10px 0px 0px 10px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-fill.fill-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n.volume-slider .volume-slider-empty {\n height: var(--volume-slider-height);\n background-color: var(--volume-slider-empty-color);\n border-radius: 0px 10px 10px 0px;\n pointer-events: none;\n}\n\n.volume-slider .volume-slider-empty.empty-100 {\n border-radius: 10px 10px 10px 10px;\n}\n\n@media (forced-colors: active) {\n .volume-slider {\n border: 4px solid white;\n box-sizing: border-box;\n margin-bottom: 3px;\n }\n\n .volume-slider .volume-slider-fill {\n border: 4px solid white;\n box-sizing: border-box;\n }\n\n .volume-slider .volume-slider-empty {\n border: 1px solid white;\n box-sizing: border-box;\n }\n}"],sourceRoot:""}]);const a=u},645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(r)for(var i=0;i{"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n{"use strict";var r,o=function(){var e={};return function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}e[t]=n}return e[t]}}(),i=[];function u(e){for(var t=-1,n=0;n{e.exports=''},283:e=>{e.exports=''},963:e=>{e.exports=''},549:e=>{e.exports=''},271:e=>{e.exports=''},643:e=>{e.exports=''},812:e=>{e.exports=''},291:e=>{e.exports=''},998:e=>{e.exports=''},770:e=>{e.exports=''},506:e=>{e.exports=''},978:e=>{e.exports=''},704:e=>{e.exports=''},928:e=>{e.exports=''},887:e=>{e.exports=''},456:(e,t,n)=>{var r={"./en-US.json":263,"./es-ES.json":992};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=456},757:(e,t,n)=>{var r={"./BasicPluginsModule.js":95,"./es.upv.paella.audioSelector.js":252,"./es.upv.paella.backwardButtonPlugin.js":925,"./es.upv.paella.captionsSelectorPlugin.js":460,"./es.upv.paella.customTimeProgressIndicator.js":787,"./es.upv.paella.downloadsPlugin.js":61,"./es.upv.paella.externalPluginTest.js":800,"./es.upv.paella.findCaptionsPlugin.js":623,"./es.upv.paella.forwardButtonPlugin.js":108,"./es.upv.paella.fullscreenButton.js":440,"./es.upv.paella.keyboardShortcutsHelp.js":234,"./es.upv.paella.layoutSelector.js":239,"./es.upv.paella.liveStreamingProgressIndicator.js":592,"./es.upv.paella.playbackRateButton.js":540,"./es.upv.paella.qualitySelector.js":135,"./es.upv.paella.volumeButtonPlugin.js":459};function o(e){var t=i(e);return n(t)}function i(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=i,e.exports=o,o.id=757},995:t=>{"use strict";t.exports=e},263:e=>{"use strict";e.exports=JSON.parse('{"Select the active audio track":"Select the active audio track","Toggle audio mute":"Toggle audio mute","Toggle play/pause":"Toggle play/pause","Toggle captions":"Toggle captions","Volume up 10%":"Volume up 10%","Volume down 10%":"Volume down 10%","Close pop-up":"Close pop-up","Decrease playback speed":"Decrease playback speed","Increase playback speed":"Increase playback speed","Select captions":"Select captions","Search":"Search","Search in captions":"Search in captions","No results found":"No results found","Toggle fullscreen":"Toggle fullscreen","Video layout":"Video layout","Playback rate":"Playback rate","Video quality":"Video quality","Volume":"Volume","Audio track":"Audio track","Spanish":"Español"}')},992:e=>{"use strict";e.exports=JSON.parse('{"Select the active audio track":"Seleccione la pista de audio activa","Toggle audio mute":"Conmutar el silencio de audio","Toggle play/pause":"Activar la reproducción/pausa","Toggle captions":"Alternar subtítulos","Volume up 10%":"Aumenta el volumen un 10%.","Volume down 10%":"Reduce el volumen un 10%.","Close pop-up":"Cerrar Pop Up","Decrease playback speed":"Reducir la velocidad de reproducción","Increase playback speed":"Aumentar la velocidad de reproducción","Select captions":"Seleccionar subtítulos","Search":"Buscar","Search in captions":"Buscar en subtítulos","No results found":"No se han encontrado resultados","Toggle fullscreen":"Cambiar modo de pantalla completa","Video layout":"Disposición de los vídeos","Playback rate":"Velocidad de reproducción","Video quality":"Calidad del vídeo","Volume":"Volumen","Audio track":"Pista de audio","Spanish":"Español","Keyboard shortcuts":"Atajos de teclado"}')}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var i=n[e]={id:e,exports:{}};return t[e](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nc=void 0;var o={};return(()=>{"use strict";r.r(o),r.d(o,{AudioSelectorButtonPlugin:()=>g,BackwardButtonPlugin:()=>b,CaptionsSelectorButtonPlugin:()=>C,CustomTimeProgressIndicatorPlugin:()=>_,DownloadsButtonPlugin:()=>w,FindCaptionsButtonPlugin:()=>x,ForwardButtonPlugin:()=>A,FullscreenButtonPlugin:()=>k,KeyboardHelpButtonPlugin:()=>L,LayoutSelectorButtonPlugin:()=>P,LiveStreamingProgressIndicatorPlugin:()=>I,PlaybackRateButtonPlugin:()=>R,QualitySelectorButtonPlugin:()=>O,VolumeButtonPlugin:()=>B,basicPlugins:()=>m,default:()=>v});var e=r(252),t=r(925),n=r(460),i=r(61),u=r(623),a=r(108),c=r(440),s=r(234),l=r(239),f=r(540),p=r(135),d=r(459),h=r(787),y=r(592);function v(){return r(757)}var m=[{plugin:e.default,config:{enabled:!1}},{plugin:t.default,config:{enabled:!1}},{plugin:n.default,config:{enabled:!1}},{plugin:i.default,config:{enabled:!1}},{plugin:u.default,config:{enabled:!1}},{plugin:a.default,config:{enabled:!1}},{plugin:c.default,config:{enabled:!1}},{plugin:s.default,config:{enabled:!1}},{plugin:l.default,config:{enabled:!1}},{plugin:f.default,config:{enabled:!1}},{plugin:p.default,config:{enabled:!1}},{plugin:d.default,config:{enabled:!1}},{plugin:h.default,config:{enabled:!1}},{plugin:y.default,config:{enabled:!1}}],g=e.default,b=t.default,C=n.default,w=i.default,x=u.default,A=a.default,k=c.default,L=s.default,P=l.default,R=f.default,O=p.default,B=d.default,_=h.default,I=y.default})(),o})())); //# sourceMappingURL=paella-basic-plugins.js.map \ No newline at end of file diff --git a/dist/paella-basic-plugins.js.map b/dist/paella-basic-plugins.js.map index 497b36d..497b3ff 100644 --- a/dist/paella-basic-plugins.js.map +++ b/dist/paella-basic-plugins.js.map @@ -1 +1 @@ -{"version":3,"file":"paella-basic-plugins.js","mappings":"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","sources":["webpack://paella-basic-plugins/webpack/universalModuleDefinition","webpack://paella-basic-plugins/./src/dictionaries.js","webpack://paella-basic-plugins/./src/plugins/BasicPluginsModule.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.audioSelector.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.backwardButtonPlugin.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.captionsSelectorPlugin.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.customTimeProgressIndicator.js","webpack://paella-basic-plugins/./src/css/DownloadsPlugin.css?e389","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.downloadsPlugin.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.externalPluginTest.js","webpack://paella-basic-plugins/./src/css/FindCaptionsPlugin.css?e858","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.findCaptionsPlugin.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.forwardButtonPlugin.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.fullscreenButton.js","webpack://paella-basic-plugins/./src/css/KeyboardShortcutsHelp.css?204c","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.keyboardShortcutsHelp.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.layoutSelector.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.liveStreamingProgressIndicator.js","webpack://paella-basic-plugins/./src/css/playbackRate.css?b9f2","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.playbackRateButton.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.qualitySelector.js","webpack://paella-basic-plugins/./src/plugins/es.upv.paella.volumeButtonPlugin.js","webpack://paella-basic-plugins/./src/css/slider.css?049a","webpack://paella-basic-plugins/./src/css/DownloadsPlugin.css","webpack://paella-basic-plugins/./src/css/FindCaptionsPlugin.css","webpack://paella-basic-plugins/./src/css/KeyboardShortcutsHelp.css","webpack://paella-basic-plugins/./src/css/playbackRate.css","webpack://paella-basic-plugins/./src/css/slider.css","webpack://paella-basic-plugins/./node_modules/css-loader/dist/runtime/api.js","webpack://paella-basic-plugins/./node_modules/css-loader/dist/runtime/cssWithMappingToString.js","webpack://paella-basic-plugins/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://paella-basic-plugins/./src/icons/back-30-s.svg","webpack://paella-basic-plugins/./src/icons/binoculars.svg","webpack://paella-basic-plugins/./src/icons/captions_cc.svg","webpack://paella-basic-plugins/./src/icons/download.svg","webpack://paella-basic-plugins/./src/icons/forward-30-s.svg","webpack://paella-basic-plugins/./src/icons/fullscreen.svg","webpack://paella-basic-plugins/./src/icons/keyboard.svg","webpack://paella-basic-plugins/./src/icons/presentation-mode.svg","webpack://paella-basic-plugins/./src/icons/screen.svg","webpack://paella-basic-plugins/./src/icons/user.svg","webpack://paella-basic-plugins/./src/icons/volume-high.svg","webpack://paella-basic-plugins/./src/icons/volume-low.svg","webpack://paella-basic-plugins/./src/icons/volume-mid.svg","webpack://paella-basic-plugins/./src/icons/volume-mute.svg","webpack://paella-basic-plugins/./src/icons/windowed.svg","webpack://paella-basic-plugins/./src/i18n/ sync \\.json$","webpack://paella-basic-plugins/./src/plugins/ sync \\.js","webpack://paella-basic-plugins/external umd {\"commonjs\":\"paella-core\",\"commonjs2\":\"paella-core\",\"amd\":\"paella-core\"}","webpack://paella-basic-plugins/webpack/bootstrap","webpack://paella-basic-plugins/webpack/runtime/compat get default export","webpack://paella-basic-plugins/webpack/runtime/define property getters","webpack://paella-basic-plugins/webpack/runtime/hasOwnProperty shorthand","webpack://paella-basic-plugins/webpack/runtime/make namespace object","webpack://paella-basic-plugins/webpack/runtime/nonce","webpack://paella-basic-plugins/./src/index.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"paella-core\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"paella-core\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"paella-basic-plugins\"] = factory(require(\"paella-core\"));\n\telse\n\t\troot[\"paella-basic-plugins\"] = factory(root[undefined]);\n})(self, (__WEBPACK_EXTERNAL_MODULE__995__) => {\nreturn ","const defaultDictionaries = {};\n\nconst dictionaries = require.context('./i18n/', true, /\\.json$/);\ndictionaries.keys().forEach(k => {\n const reResult = /([a-z-]+[A-Z_]+)\\.json/.exec(k);\n const localization = reResult && reResult[1];\n \n if (localization) {\n const dict = dictionaries(k);\n defaultDictionaries[localization] = dict;\n \n const lang = localization.substring(0,2);\n if (!(lang in defaultDictionaries)) {\n defaultDictionaries[lang] = dict;\n }\n }\n});\n\nexport default defaultDictionaries;","import { PluginModule } from \"paella-core\";\nimport packageData from \"../../package.json\";\nimport dictionaries from '../dictionaries';\n\nlet g_pluginModule = null;\n\nexport default class BasicPluginsModule extends PluginModule {\n static Get() {\n if (!g_pluginModule) {\n g_pluginModule = new BasicPluginsModule();\n }\n return g_pluginModule;\n }\n \n get moduleName() {\n return \"paella-basic-plugins\";\n }\n\n get moduleVersion() {\n return packageData.version;\n }\n\n async getDictionaries() {\n return dictionaries;\n }\n}","import { MenuButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport screenIcon from '../icons/screen.svg';\n\nexport default class AudioSelectorPlugin extends MenuButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.audioSelector\";\n }\n\n getAriaLabel() {\n return \"Select the active audio track\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n get dynamicWidth() {\n return this.config.showIcon === false;\n }\n\n get titleSize() { return this.config.showIcon === false ? \"large\" : \"small\"; }\n\n async isEnabled() {\n if (!(await super.isEnabled())) {\n return false;\n }\n\n const audioTracks = await this.player.videoContainer.streamProvider.getAudioTracks();\n return audioTracks?.length > 1;\n }\n\n async load() {\n if (this.config.showIcon === false) {\n\n }\n else {\n this.icon = this.player.getCustomPluginIcon(this.name,\"screenIcon\") || screenIcon;\n }\n\n this._audioTracks = await this.player.videoContainer.streamProvider.getAudioTracks();\n\n await this.updateAudioLabel();\n }\n\n async getMenu() {\n const current = this.player.videoContainer.streamProvider.currentAudioTrack;\n const result = this._audioTracks.map(track => {\n return {\n id: track.id,\n title: this.player.translate(track.name) || this.player.translate(track.language),\n data: track,\n selected: track === current\n }\n });\n return result;\n }\n\n async updateAudioLabel() {\n const track = this.player.videoContainer.streamProvider.currentAudioTrack;\n this.title = track.language;\n }\n\n async itemSelected(itemData) {\n await this.player.videoContainer.streamProvider.setCurrentAudioTrack(itemData.data);\n this.updateAudioLabel();\n }\n}","import { ButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport defaultBackwardIcon from '../icons/back-30-s.svg';\n\nexport default class BackwardButtonPlugin extends ButtonPlugin {\n\tgetPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.backwardButtonPlugin\";\n }\n\n\tgetAriaLabel() {\n return this.player.translate(\"Backward $1 seconds\",[this.time]);\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\t\n\tasync isEnabled() {\n\t\tconst enabled = await super.isEnabled();\n\t\tthis.time = this.config.time || 30;\n\t\treturn enabled;\n\t}\n\n\tasync load() {\n\t\tconst addSuffix = this.config.suffix !== undefined ? this.config.suffix : true;\n\t\tthis.suffix = addSuffix ? \"s\" : \"\"; \n\t\tthis.icon = this.player.getCustomPluginIcon(this.name,\"backwardIcon\") || defaultBackwardIcon;\n\t\tsetTimeout(() => {\n\t\t\tArray.from(this.iconElement.getElementsByClassName('time-text'))\n\t\t\t\t.forEach(textIcon => {\n\t\t\t\t\ttextIcon.innerHTML = this.time + this.suffix;\n\t\t\t\t})\n\t\t}, 100);\n\t}\n\t\n\tasync action() {\n\t\tconst currentTime = await this.player.videoContainer.currentTime();\n\t\tthis.player.videoContainer.setCurrentTime(currentTime - this.time);\n\t}\n}\n","import { MenuButtonPlugin, Events, bindEvent, PopUp } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport captionsPlugin from '../icons/captions_cc.svg';\n\nexport default class CaptionsSelectorPlugin extends MenuButtonPlugin{\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.captionsSelectorPlugin\";\n }\n\n getAriaLabel() {\n return \"Select captions\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n async load() {\n this.icon = this.player.getCustomPluginIcon(this.name,\"captionsIcon\") || captionsPlugin;\n this._captionsCanvas = this.player.captionsCanvas;\n this._selected = null;\n\n if (this._captionsCanvas.captions.length==0) {\n this.disable();\n }\n\n bindEvent(this.player, Events.CAPTIONS_CHANGED, () => {\n if (this._captionsCanvas.captions.length>0) {\n this.enable();\n }\n });\n\n bindEvent(this.player, Events.CAPTIONS_ENABLED, captionsData => {\n this._selected = captionsData.language;\n });\n\n bindEvent(this.player, Events.CAPTIONS_DISABLED, () => {\n this._selected = null;\n });\n }\n\n async getMenu() {\n const result = [\n {\n id: -1,\n title: \"Disabled\",\n index: -1,\n selected: this._selected === null\n }\n ];\n\n this._captionsCanvas.captions.forEach((c,i) => {\n result.push({\n id: c.language,\n title: c.label,\n index: i,\n selected: c.language === this._selected\n });\n })\n return result;\n }\n\n get buttonType() {\n return \"radio\";\n }\n\n itemSelected(itemData) {\n if (itemData.index === -1) {\n this._captionsCanvas.disableCaptions();\n }\n else {\n this._captionsCanvas.enableCaptions({ index: itemData.index });\n }\n PopUp.HideAllPopUps(false);\n }\n}\n","import { ButtonPlugin, Events, utils } from \"paella-core\";\nimport BasicPluginsModule from \"./BasicPluginsModule\";\n\nexport default class CustomTimeProgressIndicator extends ButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.customTimeProgressIndicator\";\n }\n\n async isEnabled() {\n const e = await super.isEnabled();\n\n return e && (this.player.videoManifest.metadata?.visibleTimeLine ?? true);\n }\n\n async load() {\n const totalDuration = await this.player.videoContainer.duration();\n const showTotal = this.config.showTotal === undefined ? true : this.config.showTotal;\n const updateTime = (time) => {\n const current = utils.secondsToTime(time);\n this.title = showTotal ? `${current} / ${utils.secondsToTime(totalDuration)}` : current;\n }\n \n updateTime(0);\n this.player.bindEvent(Events.TIMEUPDATE, ({currentTime}) => {\n updateTime(currentTime);\n })\n }\n\n get interactive() {\n return false;\n }\n\n get dynamicWidth() {\n return true;\n }\n\n get titleSize() {\n return this.config.textSize || \"medium\";\n }\n}","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!./DownloadsPlugin.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import {\n createElementWithHtmlText,\n PopUpButtonPlugin,\n translate\n} from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport '../css/DownloadsPlugin.css';\n\nimport defaultDownloadIcon from '../icons/download.svg';\n\nexport default class DownloadsPlugin extends PopUpButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.downloadsPlugin\";\n }\n\n async isEnabled() {\n const enabled = await super.isEnabled();\n this._downloads = {};\n\n if (enabled) {\n const { streams } = this.player.videoManifest;\n\n streams.forEach(s => {\n let streamDownloads = [];\n const { mp4 } = s.sources;\n if (mp4) {\n mp4.forEach(v => {\n streamDownloads.push({\n id: `${s.content}_${v.res?.w || 0}_${v.res?.h || 0}`,\n src: v.src,\n res: v.res || { w: 0, h: 0 },\n mimetype: v.mimetype\n });\n });\n }\n if (streamDownloads.length > 0) {\n this._downloads[s.content] = streamDownloads;\n }\n });\n }\n\n return Object.keys(this._downloads).length > 0;\n }\n\n async load() {\n this.icon = this.player.getCustomPluginIcon(this.name, \"downloadIcon\") || defaultDownloadIcon;\n }\n\n async getContent() {\n const container = createElementWithHtmlText(`\n
      \n

      ${translate('Available downloads')}

      \n
      `);\n const downloadKeys = Object.keys(this._downloads);\n downloadKeys.forEach(k => {\n const J = createElementWithHtmlText(`\n
      \n
      ${k}
      \n
      `, container);\n const list = createElementWithHtmlText('
        ', J);\n const streamDownloads = this._downloads[k];\n streamDownloads.forEach(d => {\n const res = `${d.res.w}x${d.res.h}`;\n createElementWithHtmlText(`\n
      • \n \n [${d.mimetype}]${res}\n \n
      • \n `, list);\n });\n });\n return container;\n }\n}\n","import { ButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport userIcon from '../icons/user.svg';\n\nexport default class TestExternalPlugin extends ButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.externalPluginTest\";\n }\n\n get icon() {\n return userIcon;\n }\n\n async action() {\n alert(\"Test external plugin\");\n }\n}\n","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!./FindCaptionsPlugin.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import {\n PopUpButtonPlugin,\n createElementWithHtmlText,\n bindEvent,\n Events,\n Paella\n} from 'paella-core';\n\nimport '../css/FindCaptionsPlugin.css';\n\nimport searchIcon from '../icons/binoculars.svg';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nexport default class FindCaptionsPlugin extends PopUpButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.findCaptionsPlugin\";\n }\n\n async getContent() {\n const placeholderText = this.player.translate(\"Search\");\n const content = createElementWithHtmlText(`
        `);\n\n this._resultsContainer = createElementWithHtmlText('
        ', content);\n\n const input = createElementWithHtmlText(``, content);\n input.addEventListener('click', (evt) => {\n evt.stopPropagation();\n });\n\n const browserLanguage = navigator.language.substring(0,2);\n const isCurrentLanguage = (lang) => {\n // If there are some captions enabled, compare with this language\n if (this.player.captionsCanvas.currentCaptions) {\n return lang === this.player.captionsCanvas.currentCaptions.language;\n }\n\n // Otherwise, compare with the browser language\n return lang === browserLanguage;\n }\n\n const showAllCaptions = () => {\n let captions = null;\n this.captions.some(lang => {\n if (isCurrentLanguage(lang.language)) {\n captions = lang;\n }\n });\n if (!captions) {\n captions = this.captions[0];\n }\n\n this._cueElements = [];\n captions && captions.cues.forEach(cue => {\n const cueElem = createElementWithHtmlText(`

        ${cue.startString}: ${cue.captions[0]}

        `, this._resultsContainer);\n cueElem._cue = cue;\n cueElem.addEventListener('click', async evt => {\n const time = evt.target._cue.start;\n await this.player.videoContainer.setCurrentTime(time);\n evt.stopPropagation();\n });\n this._cueElements.push(cueElem);\n })\n }\n\n showAllCaptions();\n\n let searchTimer = null;\n input.addEventListener('keyup', (evt) => {\n if (searchTimer) {\n clearTimeout(searchTimer);\n }\n this._resultsContainer.innerHTML = \"\";\n const currentLanguage = this.player.getLanguage();\n searchTimer = setTimeout(() => {\n const results = {};\n this.captions.forEach(lang => {\n lang.cues.forEach(cue => {\n if (cue.captions.find(cap => (new RegExp(input.value,\"i\")).test(cap))) {\n results[cue.startString] = results[cue.startString] || { cue, text: {} }\n results[cue.startString].text[lang.language] = cue.captions;\n }\n })\n });\n \n this._cueElements = [];\n for (const timeString in results) {\n const res = results[timeString];\n const text = res.text[currentLanguage] || res.text[Object.keys(res.text)[0]];\n const resultElem = createElementWithHtmlText(`

        ${res.cue.startString}: ${text[0]}

        `, this._resultsContainer);\n resultElem._cue = res.cue;\n resultElem.addEventListener('click', async (evt) => {\n const time = evt.target._cue.start;\n await this.player.videoContainer.setCurrentTime(time);\n evt.stopPropagation();\n });\n this._cueElements.push(resultElem);\n }\n if (Object.keys(results).length === 0 && input.value !== '') {\n createElementWithHtmlText(`

        ${this.player.translate(\"No results found\")}

        `, this._resultsContainer);\n }\n else if (input.value === '') {\n showAllCaptions();\n }\n searchTimer = null;\n }, 1000);\n \n evt.stopPropagation();\n });\n\n // If there is no text in search field, scroll to current caption on time update\n if (!this._timeupdateEvent) {\n this._timeupdateEvent = async evt => {\n if (input.value === \"\" && this._cueElements?.length) {\n this._cueElements.forEach(elem => {\n if (elem._cue.start<=evt.currentTime && elem._cue.end>=evt.currentTime) {\n elem.classList.add('current');\n const elemPosTop = elem.offsetTop - this._resultsContainer.scrollTop;\n if (elemPosTop<0 || elemPosTop>this._resultsContainer.clientHeight) {\n this._resultsContainer.scrollTo({ top: elem.offsetTop - 20 });\n }\n }\n else {\n elem.classList.remove('current');\n }\n });\n }\n }\n this.player.bindEvent(Events.TIMEUPDATE, this._timeupdateEvent, true);\n }\n\n // Force reload content\n setTimeout(() => this.refreshContent = true, 10);\n return content;\n }\n\n get popUpType() {\n return \"no-modal\";\n }\n\n get captions() {\n return this.player.captionsCanvas.captions;\n }\n\n get customPopUpClass() {\n return \"find-captions\";\n }\n\n async load() {\n this.icon = this.player.getCustomPluginIcon(this.name,\"findCaptionsIcon\") || searchIcon;\n this._captionsCanvas = this.player.captionsCanvas;\n\n if (this.captions.length === 0) {\n this.disable();\n }\n\n bindEvent(this.player, Events.CAPTIONS_CHANGED, () => {\n if (this.captions.length > 0) {\n this.enable();\n }\n })\n }\n}\n","import { ButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport defaultForwardIcon from '../icons/forward-30-s.svg';\n\nexport default class ForwardButtonPlugin extends ButtonPlugin {\n\tgetPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.forwardButtonPlugin\";\n }\n\n\tgetAriaLabel() {\n return this.player.translate(\"Forward $1 seconds\",[this.config.time]);\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n\tasync isEnabled() {\n\t\tconst enabled = await super.isEnabled();\n\t\tthis.time = this.config.time || 30;\n\t\treturn enabled;\n\t}\n\n\tasync load() {\n\t\tconst addSuffix = this.config.suffix !== undefined ? this.config.suffix : true;\n\t\tthis.suffix = addSuffix ? \"s\" : \"\";\n\t\tthis.icon = this.player.getCustomPluginIcon(this.name,\"forwardIcon\") || defaultForwardIcon;\n\t\tsetTimeout(() => {\n\t\t\tArray.from(this.iconElement.getElementsByClassName('time-text'))\n\t\t\t\t.forEach(textIcon => {\n\t\t\t\t\ttextIcon.innerHTML = this.time + this.suffix;\n\t\t\t\t});\n\t\t}, 100);\n\t}\n\t\n\tasync action() {\n\t\tconst currentTime = await this.player.videoContainer.currentTime();\n\t\tthis.player.videoContainer.setCurrentTime(currentTime + this.time);\n\t}\n}\n","import { Events, bindEvent, ButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport fullscreenIcon from '../icons/fullscreen.svg';\nimport windowedIcon from '../icons/windowed.svg';\n\nexport default class PauseButtonPlugin extends ButtonPlugin {\n\tgetPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.fullscreenButton\";\n }\n\n\tgetAriaLabel() {\n return \"Toggle fullscreen\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\t\n\tasync isEnabled() {\n\t\tconst enabled = await super.isEnabled()\n\t\treturn enabled && this.player.isFullScreenSupported()\n\t}\n\t\n\tasync load() {\n\t\tconst fsIcon = this.player.getCustomPluginIcon(this.name,\"fullscreenIcon\") || fullscreenIcon;\n\t\tconst wIcon = this.player.getCustomPluginIcon(this.name,\"windowedIcon\") || fullscreenIcon;\n\t\tthis.icon = fsIcon\n\t\tbindEvent(this.player, Events.FULLSCREEN_CHANGED, (data) => {\n\t\t\tif (data.status) {\n\t\t\t\tthis.icon = wIcon;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.icon = fsIcon;\n\t\t\t}\n\t\t})\n\t}\n\t\n\tasync action() {\n\t\tif (this.player.isFullscreen) {\n\t\t\tawait this.player.exitFullscreen();\n\t\t}\n\t\telse {\n\t\t\tawait this.player.enterFullscreen();\n\t\t}\n\t}\n}","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!./KeyboardShortcutsHelp.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import {\n\tPopUpButtonPlugin,\n\tcreateElementWithHtmlText\n} from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport defaultKeyboardIcon from '../icons/keyboard.svg';\nimport '../css/KeyboardShortcutsHelp.css';\n\nexport default class KeyboardShortcutsHelpPlugin extends PopUpButtonPlugin {\n\tgetPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.keyboardShortcutsHelp\";\n }\n\n\tasync isEnabled() {\n\t\tconst enabled = await super.isEnabled();\n\t\treturn enabled && this.player.getShortcuts().length > 0;\n\t}\n\n\tasync load() {\n\t\tthis.icon = this.player.getCustomPluginIcon(this.name,\"keyboardIcon\") || defaultKeyboardIcon;\n\t}\n\n\tget popUpType() {\n\t\treturn 'no-modal';\n\t}\n\n\tgetKeyText(sc) {\n\t\tlet key = this.player.translate(sc.keyCode);\n\t\tif (sc.keyModifiers.altKey) {\n\t\t\tkey += \" + Alt\";\n\t\t}\n\t\tif (sc.keyModifiers.ctrlKey) {\n\t\t\tkey += \" + Ctrl\";\n\t\t}\n\t\tif (sc.keyModifiers.shiftKey) {\n\t\t\tkey += \" + Shift\";\n\t\t}\n\t\treturn key;\n\t}\n\n\tget menuTitle() {\n\t\treturn this.config.menuTitle || 'Keyboard shortcuts'\n\t}\n\n\tasync getContent() {\n\t\tconst content = createElementWithHtmlText(`\n
        \n `);\n\n\t\tconst descriptions = {};\n\n\t\tthis.player.getShortcuts().forEach(sc => {\n\t\t\tconst description = this.player.translate(sc.description);\n\t\t\tif (!descriptions[description]) {\n\t\t\t\tdescriptions[description] = [sc];\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdescriptions[description].push(sc);\n\t\t\t}\n\t\t});\n\n\t\tfor (const desc in descriptions) {\n\t\t\tconst shortcuts = descriptions[desc];\n\t\t\tlet keys = \"\";\n\t\t\tshortcuts.forEach(sc => {\n\t\t\t\tif (keys !== \"\") {\n\t\t\t\t\tkeys += \" / \";\n\t\t\t\t}\n\t\t\t\tkeys += this.player.translate(this.getKeyText(sc));\n\t\t\t});\n\n\t\t\tconst item = createElementWithHtmlText(`\n\t\t\t
        \n\t\t\t\t
        ${desc}
        \n\t\t\t\t
        ${keys}
        \n
        \n\t\t\t`);\n\t\t\tcontent.appendChild(item);\n\t\t}\n\n\n\t\treturn content;\n\t}\n}\n","import { MenuButtonPlugin, utils } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport presentationMode from '../icons/presentation-mode.svg';\n\nexport default class LayoutSelectorPlugin extends MenuButtonPlugin {\n\tgetPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.layoutSelector\";\n }\n\n\tgetAriaLabel() {\n return \"Video layout\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n\tasync isEnabled() {\n\t\tif (!(await super.isEnabled())) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn this.player.videoContainer.validContentSettings.length > 1;\n\t}\n\t\n\tasync load() {\n\t\tthis.icon = this.player.getCustomPluginIcon(this.name, \"layoutIcon\") || presentationMode;\n\t\tthis._showIcons = this.config.showIcons ?? true;\n\t}\n\t\n\tasync getMenu() {\n\t\tconst contentSettings = this.player.videoContainer.validContentSettings;\n\t\treturn Promise.all(await contentSettings.map(async item => {\n\t\t\tconst configPath = utils.joinPath([this.player.configResourcesUrl, item.icon]);\n\t\t\tconst icon = this._showIcons && await utils.loadSvgIcon(configPath) || null;\n\t\t\treturn {\n\t\t\t\tid: item.id,\n\t\t\t\ttitle: item.title,\n\t\t\t\ticon,\n\t\t\t\tselected: this.player.videoContainer.layoutId === item.id\n\t\t\t}\n\t\t}));\n\t}\n\t\n\tget showTitles() {\n\t\treturn false;\n\t}\n\t\n\tget buttonType() {\n\t\treturn \"radio\";\n\t}\n\t\n\titemSelected(itemData, /* menuItems */) {\n\t\tthis.player.videoContainer.setLayout(itemData.id);\n\t}\n}","import { ProgressIndicatorPlugin } from \"paella-core\";\nimport BasicPluginsModule from \"./BasicPluginsModule\";\n\nfunction draw(context, width, height, isHover) {\n const xPos = this._side === 'left' ? this._margin : this._side === 'center' ? width / 2: width - this._margin;\n const circleSize = 8;\n const textMargin = this._side === 'left' ? circleSize + 4 : this._side === 'center' ? 0 : -(circleSize + 4);\n const circleMargin = this._side === 'center' ? -40 : 0;\n context.fillStyle = this._textColor;\n context.font = `11px Arial`;\n context.textAlign = this._side;\n context.fillText(\"Live stream\", xPos + textMargin, height / 2 + 3);\n\n context.beginPath();\n context.fillStyle = this._circleColor;\n context.arc(xPos + circleMargin, height / 2, circleSize / 2, 0, 2 * Math.PI, false);\n context.fill();\n}\n\nexport default class LiveStreamingProgressIndicatorPlugin extends ProgressIndicatorPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.liveStreamingProgressIndicator\";\n }\n\n get minHeight() {\n return 20;\n }\n\n get minHeightHover() {\n return 20;\n }\n\n async isEnabled() {\n const e = await super.isEnabled();\n return e && this.player.videoContainer.isLiveStream;\n }\n\n async load() {\n this._layer = this.config.layer ?? 'foreground';\n this._side = this.config.side ?? 'right';\n this._margin = this.config.margin ?? 50;\n this._textColor = this.config.textColor ?? \"white\";\n this._circleColor = this.config.circleColor ?? \"red\";\n\n if (['foreground','background'].indexOf(this._layer) === -1) {\n throw new Error(\"Invalid layer set in plugin 'es.upv.paella.liveStreamingPlugin'. Valid values are 'foreground' or 'background'\");\n }\n\n if (['left','center', 'right'].indexOf(this._side) === -1) {\n throw new Error(\"Invalid side set in plugin 'es.upv.paella.liveStreamingPlugin'. Valid values are 'left', 'center' or 'right'\");\n }\n }\n\n drawForeground(context, width, height, isHover) {\n if (this._layer === 'foreground') {\n draw.apply(this, [context, width, height, isHover]);\n }\n }\n\n drawBackground(context, width, height, isHover) {\n if (this._layer === 'background') {\n draw.apply(this, [context, width, height, isHover]);\n }\n }\n}","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!./playbackRate.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { MenuButtonPlugin, Events } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport screenIcon from '../icons/screen.svg';\nimport '../css/playbackRate.css';\n\nexport default class PlaybackRateButton extends MenuButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.playbackRateButton\";\n }\n\n getAriaLabel() {\n return \"Playback rate\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n get dynamicWidth() {\n\t\treturn this.config.showIcon === false;\n\t}\n\n async load() {\n if (this.config.showIcon === false) {\n\n }\n else {\n this.icon = this.player.getCustomPluginIcon(this.name,\"screenIcon\") || screenIcon;\n }\n\n const currentRate = await this.player.videoContainer.playbackRate();\n\n this.title = `${currentRate}x`;\n this._rates = this.config.rates || [0.5, 0.75, 1, 1.25, 1.5, 2];\n\n this.player.bindEvent(Events.PLAYBACK_RATE_CHANGED, (params) => {\n this.title = params.newPlaybackRate + \"x\";\n })\n }\n\n async getMenu() {\n const playbackRate = await this.player.videoContainer.playbackRate();\n const getItem = (rate) => {\n return {\n id: rate,\n title: `${ rate }x`,\n selected: rate == playbackRate\n } \n }\n return this._rates.map(r => getItem(r));\n }\n\n get titleSize() { return this.config.showIcon === false ? \"large\" : \"small\"; }\n\n async itemSelected(itemData) {\n await this.player.videoContainer.setPlaybackRate(itemData.id);\n this.title = itemData.title;\n }\n\n get buttonType() {\n return \"radio\";\n }\n}","import { MenuButtonPlugin } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport defaultScreenIcon from '../icons/screen.svg';\n\nexport default class QualitySelectorPlugin extends MenuButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.qualitySelector\";\n }\n\n getAriaLabel() {\n return \"Video quality\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n get dynamicWidth() {\n return this.config.showIcon === false;\n }\n\n get titleSize() { return this.config.showIcon === false ? \"large\" : \"small\"; }\n\n async isEnabled() {\n if (!(await super.isEnabled())) {\n return false;\n }\n\n this._qualities = await this.player.videoContainer.streamProvider.getQualities();\n\n return this._qualities && this._qualities.length>1;\n }\n\n async load() {\n if (this.config.showIcon === false) {\n\n }\n else {\n this.icon = this.player.getCustomPluginIcon(\"es.upv.paella.qualitySelector\",\"screenIcon\") || defaultScreenIcon;\n }\n\n await this.updateQualityLabel();\n }\n\n async getMenu() {\n const quality = await this.player.videoContainer.streamProvider.getCurrentQuality();\n const result = this._qualities.map(q => {\n const selected = q.index === quality.index;\n return {\n id: q.index,\n title: q.label,\n width: q.res.w,\n height: q.res.h,\n data: q,\n selected: selected\n }\n })\n return result;\n }\n\n async updateQualityLabel() {\n const updateLabel = async () => {\n const quality = await this.player.videoContainer.streamProvider.getCurrentQuality();\n if (quality) {\n this.title = quality.shortLabel;\n }\n else {\n setTimeout(() => updateLabel(), 500);\n }\n }\n\n updateLabel();\n }\n\n async itemSelected(itemData) {\n await this.player.videoContainer.streamProvider.setQuality(itemData.data);\n this.updateQualityLabel();\n }\n\n get buttonType() {\n return \"radio\";\n }\n}\n","\nimport{ ButtonPlugin, createElementWithHtmlText, Events, bindEvent } from 'paella-core';\nimport BasicPluginsModule from './BasicPluginsModule';\n\nimport defaultVolumeHighIcon from '../icons/volume-high.svg';\nimport defaultVolumeMidIcon from '../icons/volume-mid.svg';\nimport defaultVolumeLowIcon from '../icons/volume-low.svg';\nimport defaultVolumeMuteIcon from '../icons/volume-mute.svg';\n\nimport \"../css/slider.css\";\n\nfunction buildSlider() {\n this.sliderContainer.innerHTML = \"\";\n const volumeSlider = createElementWithHtmlText(`\n
        \n
        \n
        \n
        `, this.sliderContainer);\n let mouseDown = false;\n const sliderFill = volumeSlider.getElementsByClassName('volume-slider-fill')[0];\n const sliderEmpty = volumeSlider.getElementsByClassName('volume-slider-empty')[0];\n sliderFill.style.width = \"50%\";\n sliderEmpty.style.width = \"50%\";\n this._sliderFill = sliderFill;\n this._sliderEmpty = sliderEmpty;\n\n const setVolume = async (offsetX) => {\n const offset = 4;\n const { offsetWidth } = volumeSlider;\n let newVolume = offsetX * 100 / offsetWidth;\n if (newVolume < offset) {\n newVolume = 0;\n }\n if (newVolume > 100 - offset) {\n newVolume = 100;\n }\n newVolume /= 100;\n await this.player.videoContainer.setVolume(newVolume);\n }\n\n volumeSlider.addEventListener(\"mousedown\", async (evt) => {\n mouseDown = true;\n await setVolume(evt.offsetX);\n });\n\n volumeSlider.addEventListener(\"mousemove\", async (evt) => {\n if (mouseDown) {\n await setVolume(evt.offsetX); \n }\n });\n\n volumeSlider.addEventListener(\"mouseleave\", () => {\n mouseDown = false;\n });\n\n volumeSlider.addEventListener(\"mouseup\", () => {\n mouseDown = false;\n });\n\n if (!this.volumeAlwaysVisible) {\n this.sliderContainer.style.display = \"none\";\n }\n\n bindEvent(this.player, Events.VOLUME_CHANGED, ({volume}) => {\n this.updateIcon(volume)\n });\n}\n\n\nexport default class VolumePlugin extends ButtonPlugin {\n getPluginModuleInstance() {\n return BasicPluginsModule.Get();\n }\n\n get name() {\n return super.name || \"es.upv.paella.volumeButtonPlugin\";\n }\n\n getAriaLabel() {\n return \"Volume\";\n }\n\n getDescription() {\n return this.getAriaLabel();\n }\n\n get className() {\n return \"volume-button\";\n }\n\n async updateIcon(vol) {\n const volumeHighIcon = this.player.getCustomPluginIcon(this.name,\"volumeHighIcon\") || defaultVolumeHighIcon;\n const volumeMidIcon = this.player.getCustomPluginIcon(this.name,\"volumeMidIcon\") || defaultVolumeMidIcon;\n const volumeLowIcon = this.player.getCustomPluginIcon(this.name,\"volumeLowIcon\") || defaultVolumeLowIcon;\n const volumeMuteIcon = this.player.getCustomPluginIcon(this.name,\"volumeMuteIcon\") || defaultVolumeMuteIcon;\n switch (true) {\n case vol===0:\n this.icon = volumeMuteIcon;\n break;\n case vol>0 && vol<=0.3:\n this.icon = volumeLowIcon;\n break;\n case vol>0.3 && vol<=0.6:\n this.icon = volumeMidIcon;\n break;\n case vol>0.6:\n this.icon = volumeHighIcon;\n break;\n default:\n this.icon = volumeHighIcon;\n }\n\n if (this._sliderFill) {\n this._sliderFill.style.width = `${ vol * 100}px`;\n }\n if (vol > 0.95) {\n this._sliderFill.classList.add('fill-100');\n }\n else {\n this._sliderFill.classList.remove('fill-100');\n }\n\n if (this._sliderEmpty) {\n this._sliderEmpty.style.width = `${ 100 - vol * 100}px`;\n }\n if (vol < 0.05) {\n this._sliderEmpty.classList.add('empty-100');\n }\n else {\n this._sliderEmpty.classList.remove('empty-100');\n }\n }\n\n get sliderContainer() {\n if (this.config.side === \"left\") {\n return this.rightArea;\n }\n else {\n return this.leftArea;\n }\n }\n \n async load() {\n this.showContainerOnFocus = this.config.showVolumeOnFocus ?? true;\n this.volumeAlwaysVisible = this.config.volumeAlwaysVisible ?? false;\n\n this._prevVolume = await this.player.videoContainer.volume();\n buildSlider.apply(this);\n \n this.updateIcon(this._prevVolume);\n }\n\n showSideContainer() {\n if (!this.volumeAlwaysVisible) {\n this.sliderContainer.style.display = \"inline-block\";\n }\n }\n\n hideSideContainer() {\n if (!this.volumeAlwaysVisible) {\n this.sliderContainer.style.display = \"none\";\n }\n }\n\n async mouseOver(target) {\n if (target === this.container) {\n this.showSideContainer();\n }\n }\n\n async mouseOut(target) {\n if (target === this.container) {\n this.hideSideContainer();\n }\n }\n\n async focusIn() {\n if (this.showContainerOnFocus) {\n this.showSideContainer();\n }\n }\n\n async focusOut() {\n if (this.showContainerOnFocus) {\n this.hideSideContainer();\n }\n }\n\n async action() {\n const currentVolume = await this.player.videoContainer.volume();\n let newVolume = 0;\n if (currentVolume === 0 && this._prevVolume === 0) {\n newVolume = 1;\n }\n else if (currentVolume === 0 && this._prevVolume > 0) {\n newVolume = this._prevVolume;\n }\n else {\n newVolume = 0;\n }\n await this.player.videoContainer.setVolume(newVolume)\n this._prevVolume = currentVolume;\n }\n}\n","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!./slider.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.downloads-plugin {\\n font-family: sans-serif;\\n min-width: 300px;\\n}\\n\\n.downloads-plugin h4 {\\n margin: 0 0 10px 0;\\n border-bottom: 1px lightgrey solid;\\n}\\n\\n.downloads-plugin .downloadStream { \\n margin-left: 5px;\\n}\\n\\n.downloads-plugin .downloadStream ul {\\n list-style: none;\\n max-height: 500px;\\n overflow: auto;\\n padding: 0px;\\n margin: 0 0 10px 10px;\\n}\\n\\n.downloads-plugin .downloadStream .mimetype {\\n color: lightcoral;\\n margin-right: 10px;\\n}\\n\\n.downloads-plugin .downloadStream .res {\\n color: lightsalmon;\\n}\\n\\n\\n.downloads-plugin a {\\n color: lightsalmon;\\n}\\n\\n.downloads-plugin a:hover {\\n color: salmon;\\n}\\n\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/css/DownloadsPlugin.css\"],\"names\":[],\"mappings\":\";AACA;IACI,uBAAuB;IACvB,gBAAgB;AACpB;;AAEA;IACI,kBAAkB;IAClB,kCAAkC;AACtC;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;IACjB,cAAc;IACd,YAAY;IACZ,qBAAqB;AACzB;;AAEA;IACI,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,kBAAkB;AACtB;;;AAGA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;AACjB\",\"sourcesContent\":[\"\\n.downloads-plugin {\\n font-family: sans-serif;\\n min-width: 300px;\\n}\\n\\n.downloads-plugin h4 {\\n margin: 0 0 10px 0;\\n border-bottom: 1px lightgrey solid;\\n}\\n\\n.downloads-plugin .downloadStream { \\n margin-left: 5px;\\n}\\n\\n.downloads-plugin .downloadStream ul {\\n list-style: none;\\n max-height: 500px;\\n overflow: auto;\\n padding: 0px;\\n margin: 0 0 10px 10px;\\n}\\n\\n.downloads-plugin .downloadStream .mimetype {\\n color: lightcoral;\\n margin-right: 10px;\\n}\\n\\n.downloads-plugin .downloadStream .res {\\n color: lightsalmon;\\n}\\n\\n\\n.downloads-plugin a {\\n color: lightsalmon;\\n}\\n\\n.downloads-plugin a:hover {\\n color: salmon;\\n}\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root {\\n --find-captions-plugin-search-bar-height: 30px;\\n}\\n\\n.center-container .search-results {\\n max-height: 80vh;\\n overflow: auto;\\n font-family: Arial, Helvetica, sans-serif;\\n}\\n\\n.center-container .search-results p {\\n max-width: 400px;\\n user-select: none;\\n}\\n\\n.center-container .search-results p.result-item {\\n cursor: pointer;\\n box-sizing: border-box;\\n padding: 8px;\\n border-radius: 3px;\\n}\\n\\n\\n.center-container div.captions-search-container input {\\n width: 100%;\\n height: var(--find-captions-plugin-search-bar-height);\\n box-sizing: border-box;\\n}\\n\\n.center-container .search-results p.result-item.current {\\n border: 1px solid white;\\n background-color: rgba(240,240,240,0.7);\\n color: black;\\n}\\n\\n/* Resizeable/moveable mode: */\\n.center-container .captions-search-container {\\n height: 100%;\\n width: 100%;\\n max-width: unset;\\n max-height: unset;\\n box-sizing: border-box;\\n}\\n\\n.center-container .search-results {\\n width: 100%;\\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\\n box-sizing: border-box;\\n background-color: rgba(0, 0, 0, 0.8);\\n}\\n\\n.popup-content.static-position .center-container .search-results p {\\n max-width: unset;\\n}\\n\\n/* Custom background color */\\n.popup-container.find-captions .popup-content {\\n background-color: rgba(0, 0, 0, 0.2);\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/css/FindCaptionsPlugin.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,8CAA8C;AAClD;;AAEA;IACI,gBAAgB;IAChB,cAAc;IACd,yCAAyC;AAC7C;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,sBAAsB;IACtB,YAAY;IACZ,kBAAkB;AACtB;;;AAGA;IACI,WAAW;IACX,qDAAqD;IACrD,sBAAsB;AAC1B;;AAEA;IACI,uBAAuB;IACvB,uCAAuC;IACvC,YAAY;AAChB;;AAEA,8BAA8B;AAC9B;IACI,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,sBAAsB;AAC1B;;AAEA;IACI,WAAW;IACX,kEAAkE;IAClE,sBAAsB;IACtB,oCAAoC;AACxC;;AAEA;IACI,gBAAgB;AACpB;;AAEA,4BAA4B;AAC5B;IACI,oCAAoC;AACxC\",\"sourcesContent\":[\":root {\\n --find-captions-plugin-search-bar-height: 30px;\\n}\\n\\n.center-container .search-results {\\n max-height: 80vh;\\n overflow: auto;\\n font-family: Arial, Helvetica, sans-serif;\\n}\\n\\n.center-container .search-results p {\\n max-width: 400px;\\n user-select: none;\\n}\\n\\n.center-container .search-results p.result-item {\\n cursor: pointer;\\n box-sizing: border-box;\\n padding: 8px;\\n border-radius: 3px;\\n}\\n\\n\\n.center-container div.captions-search-container input {\\n width: 100%;\\n height: var(--find-captions-plugin-search-bar-height);\\n box-sizing: border-box;\\n}\\n\\n.center-container .search-results p.result-item.current {\\n border: 1px solid white;\\n background-color: rgba(240,240,240,0.7);\\n color: black;\\n}\\n\\n/* Resizeable/moveable mode: */\\n.center-container .captions-search-container {\\n height: 100%;\\n width: 100%;\\n max-width: unset;\\n max-height: unset;\\n box-sizing: border-box;\\n}\\n\\n.center-container .search-results {\\n width: 100%;\\n height: calc(100% - var(--find-captions-plugin-search-bar-height));\\n box-sizing: border-box;\\n background-color: rgba(0, 0, 0, 0.8);\\n}\\n\\n.popup-content.static-position .center-container .search-results p {\\n max-width: unset;\\n}\\n\\n/* Custom background color */\\n.popup-container.find-captions .popup-content {\\n background-color: rgba(0, 0, 0, 0.2);\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.keyboardshortcutshelp-plugin {\\n font-family: Helvetica, Arial, sans-serif;\\n padding: 1px;\\n color: #f0f0f0;\\n /* min-width: 430px; */\\n}\\n\\n.keyboardshortcutshelp-plugin .row {\\n display: flex;\\n min-width: 100px;\\n padding-top: 1px;\\n padding-bottom: 1px;\\n padding: 6px;\\n gap: 5px;\\n}\\n\\n.keyboardshortcutshelp-plugin .row .description {\\n max-width: 80%;\\n}\\n\\n.keyboardshortcutshelp-plugin .row .key {\\n margin-left: auto;\\n text-align: right;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/css/KeyboardShortcutsHelp.css\"],\"names\":[],\"mappings\":\";AACA;IACI,yCAAyC;IACzC,YAAY;IACZ,cAAc;IACd,sBAAsB;AAC1B;;AAEA;IACI,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;IACZ,QAAQ;AACZ;;AAEA;IACI,cAAc;AAClB;;AAEA;IACI,iBAAiB;IACjB,iBAAiB;AACrB\",\"sourcesContent\":[\"\\n.keyboardshortcutshelp-plugin {\\n font-family: Helvetica, Arial, sans-serif;\\n padding: 1px;\\n color: #f0f0f0;\\n /* min-width: 430px; */\\n}\\n\\n.keyboardshortcutshelp-plugin .row {\\n display: flex;\\n min-width: 100px;\\n padding-top: 1px;\\n padding-bottom: 1px;\\n padding: 6px;\\n gap: 5px;\\n}\\n\\n.keyboardshortcutshelp-plugin .row .description {\\n max-width: 80%;\\n}\\n\\n.keyboardshortcutshelp-plugin .row .key {\\n margin-left: auto;\\n text-align: right;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"span.button-title {\\n margin-top: -16px;\\n display: block;\\n font-size: 8px;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/css/playbackRate.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,iBAAiB;IACjB,cAAc;IACd,cAAc;AAClB\",\"sourcesContent\":[\"span.button-title {\\n margin-top: -16px;\\n display: block;\\n font-size: 8px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root {\\n --volume-slider-height: 8px;\\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\\n --volume-slider-empty-color: #AAA;\\n}\\n\\n.button-plugin-side-area.volume-button {\\n height: 40px;\\n display: inline-block;\\n vertical-align: middle;\\n}\\n\\n.button-plugin-container {\\n height: 40px;\\n}\\n\\n.volume-slider {\\n width: 100px;\\n height: 100%;\\n display: flex;\\n margin-left: 10px;\\n margin-right: 10px;\\n position: relative;\\n flex-direction: row;\\n flex-wrap: nowrap;\\n align-content: center;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.volume-slider .volume-slider-fill {\\n height: var(--volume-slider-height);\\n background-color: var(--volume-slider-fill-color);\\n border-radius: 10px 0px 0px 10px;\\n pointer-events: none;\\n}\\n\\n.volume-slider .volume-slider-fill.fill-100 {\\n border-radius: 10px 10px 10px 10px;\\n}\\n\\n.volume-slider .volume-slider-empty {\\n height: var(--volume-slider-height);\\n background-color: var(--volume-slider-empty-color);\\n border-radius: 0px 10px 10px 0px;\\n pointer-events: none;\\n}\\n\\n.volume-slider .volume-slider-empty.empty-100 {\\n border-radius: 10px 10px 10px 10px;\\n}\\n\\n@media (forced-colors: active) {\\n .volume-slider {\\n border: 4px solid white;\\n box-sizing: border-box;\\n margin-bottom: 3px;\\n }\\n\\n .volume-slider .volume-slider-fill {\\n border: 4px solid white;\\n box-sizing: border-box;\\n }\\n\\n .volume-slider .volume-slider-empty {\\n border: 1px solid white;\\n box-sizing: border-box;\\n }\\n}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/css/slider.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,2BAA2B;IAC3B,2DAA2D;IAC3D,iCAAiC;AACrC;;AAEA;IACI,YAAY;IACZ,qBAAqB;IACrB,sBAAsB;AAC1B;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,qBAAqB;IACrB,uBAAuB;IACvB,mBAAmB;AACvB;;AAEA;IACI,mCAAmC;IACnC,iDAAiD;IACjD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI,mCAAmC;IACnC,kDAAkD;IAClD,gCAAgC;IAChC,oBAAoB;AACxB;;AAEA;IACI,kCAAkC;AACtC;;AAEA;IACI;QACI,uBAAuB;QACvB,sBAAsB;QACtB,kBAAkB;IACtB;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;;IAEA;QACI,uBAAuB;QACvB,sBAAsB;IAC1B;AACJ\",\"sourcesContent\":[\":root {\\n --volume-slider-height: 8px;\\n --volume-slider-fill-color: var(--highlight-bg-color-hover);\\n --volume-slider-empty-color: #AAA;\\n}\\n\\n.button-plugin-side-area.volume-button {\\n height: 40px;\\n display: inline-block;\\n vertical-align: middle;\\n}\\n\\n.button-plugin-container {\\n height: 40px;\\n}\\n\\n.volume-slider {\\n width: 100px;\\n height: 100%;\\n display: flex;\\n margin-left: 10px;\\n margin-right: 10px;\\n position: relative;\\n flex-direction: row;\\n flex-wrap: nowrap;\\n align-content: center;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.volume-slider .volume-slider-fill {\\n height: var(--volume-slider-height);\\n background-color: var(--volume-slider-fill-color);\\n border-radius: 10px 0px 0px 10px;\\n pointer-events: none;\\n}\\n\\n.volume-slider .volume-slider-fill.fill-100 {\\n border-radius: 10px 10px 10px 10px;\\n}\\n\\n.volume-slider .volume-slider-empty {\\n height: var(--volume-slider-height);\\n background-color: var(--volume-slider-empty-color);\\n border-radius: 0px 10px 10px 0px;\\n pointer-events: none;\\n}\\n\\n.volume-slider .volume-slider-empty.empty-100 {\\n border-radius: 10px 10px 10px 10px;\\n}\\n\\n@media (forced-colors: active) {\\n .volume-slider {\\n border: 4px solid white;\\n box-sizing: border-box;\\n margin-bottom: 3px;\\n }\\n\\n .volume-slider .volume-slider-fill {\\n border: 4px solid white;\\n box-sizing: border-box;\\n }\\n\\n .volume-slider .volume-slider-empty {\\n border: 1px solid white;\\n box-sizing: border-box;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (cssWithMappingToString) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === \"string\") {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, \"\"]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nmodule.exports = function cssWithMappingToString(item) {\n var _item = _slicedToArray(item, 4),\n content = _item[1],\n cssMapping = _item[3];\n\n if (typeof btoa === \"function\") {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || \"\").concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join(\"\\n\");\n }\n\n return [content].join(\"\\n\");\n};","\"use strict\";\n\nvar isOldIE = function isOldIE() {\n var memo;\n return function memorize() {\n if (typeof memo === 'undefined') {\n // Test for IE <= 9 as proposed by Browserhacks\n // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n // Tests for existence of standard globals is to allow style-loader\n // to operate correctly into non-standard environments\n // @see https://github.com/webpack-contrib/style-loader/issues/177\n memo = Boolean(window && document && document.all && !window.atob);\n }\n\n return memo;\n };\n}();\n\nvar getTarget = function getTarget() {\n var memo = {};\n return function memorize(target) {\n if (typeof memo[target] === 'undefined') {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n\n memo[target] = styleTarget;\n }\n\n return memo[target];\n };\n}();\n\nvar stylesInDom = [];\n\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n\n for (var i = 0; i < stylesInDom.length; i++) {\n if (stylesInDom[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n\n return result;\n}\n\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var index = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3]\n };\n\n if (index !== -1) {\n stylesInDom[index].references++;\n stylesInDom[index].updater(obj);\n } else {\n stylesInDom.push({\n identifier: identifier,\n updater: addStyle(obj, options),\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction insertStyleElement(options) {\n var style = document.createElement('style');\n var attributes = options.attributes || {};\n\n if (typeof attributes.nonce === 'undefined') {\n var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n if (nonce) {\n attributes.nonce = nonce;\n }\n }\n\n Object.keys(attributes).forEach(function (key) {\n style.setAttribute(key, attributes[key]);\n });\n\n if (typeof options.insert === 'function') {\n options.insert(style);\n } else {\n var target = getTarget(options.insert || 'head');\n\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n\n target.appendChild(style);\n }\n\n return style;\n}\n\nfunction removeStyleElement(style) {\n // istanbul ignore if\n if (style.parentNode === null) {\n return false;\n }\n\n style.parentNode.removeChild(style);\n}\n/* istanbul ignore next */\n\n\nvar replaceText = function replaceText() {\n var textStore = [];\n return function replace(index, replacement) {\n textStore[index] = replacement;\n return textStore.filter(Boolean).join('\\n');\n };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n var css = remove ? '' : obj.media ? \"@media \".concat(obj.media, \" {\").concat(obj.css, \"}\") : obj.css; // For old IE\n\n /* istanbul ignore if */\n\n if (style.styleSheet) {\n style.styleSheet.cssText = replaceText(index, css);\n } else {\n var cssNode = document.createTextNode(css);\n var childNodes = style.childNodes;\n\n if (childNodes[index]) {\n style.removeChild(childNodes[index]);\n }\n\n if (childNodes.length) {\n style.insertBefore(cssNode, childNodes[index]);\n } else {\n style.appendChild(cssNode);\n }\n }\n}\n\nfunction applyToTag(style, options, obj) {\n var css = obj.css;\n var media = obj.media;\n var sourceMap = obj.sourceMap;\n\n if (media) {\n style.setAttribute('media', media);\n } else {\n style.removeAttribute('media');\n }\n\n if (sourceMap && typeof btoa !== 'undefined') {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n while (style.firstChild) {\n style.removeChild(style.firstChild);\n }\n\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n var style;\n var update;\n var remove;\n\n if (options.singleton) {\n var styleIndex = singletonCounter++;\n style = singleton || (singleton = insertStyleElement(options));\n update = applyToSingletonTag.bind(null, style, styleIndex, false);\n remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n } else {\n style = insertStyleElement(options);\n update = applyToTag.bind(null, style, options);\n\n remove = function remove() {\n removeStyleElement(style);\n };\n }\n\n update(obj);\n return function updateStyle(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n return;\n }\n\n update(obj = newObj);\n } else {\n remove();\n }\n };\n}\n\nmodule.exports = function (list, options) {\n options = options || {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of