diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/binaries/stremio_core_web_bg.wasm b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/binaries/stremio_core_web_bg.wasm
new file mode 100644
index 000000000..e7f1b470a
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/binaries/stremio_core_web_bg.wasm differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/favicon.ico b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/favicon.ico
new file mode 100644
index 000000000..17ef6fc70
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/favicon.ico differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/icon_256x256.ico b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/icon_256x256.ico
new file mode 100644
index 000000000..17ef6fc70
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/favicons/icon_256x256.ico differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/fonts/PlusJakartaSans.ttf b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/fonts/PlusJakartaSans.ttf
new file mode 100644
index 000000000..b88589a39
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/fonts/PlusJakartaSans.ttf differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/anonymous.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/anonymous.png
new file mode 100644
index 000000000..8eab52eb2
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/anonymous.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_1.svg b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_1.svg
new file mode 100644
index 000000000..3a48df873
--- /dev/null
+++ b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_1.svg
@@ -0,0 +1,15 @@
+
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_2.svg b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_2.svg
new file mode 100644
index 000000000..a1dea35fc
--- /dev/null
+++ b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/background_2.svg
@@ -0,0 +1,13 @@
+
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/default_avatar.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/default_avatar.png
new file mode 100644
index 000000000..6d4b4092b
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/default_avatar.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/empty.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/empty.png
new file mode 100644
index 000000000..7db7324e5
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/empty.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon.png
new file mode 100644
index 000000000..301d114bc
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_196x196.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_196x196.png
new file mode 100644
index 000000000..d5bc3e90f
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_196x196.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_512x512.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_512x512.png
new file mode 100644
index 000000000..9569431ed
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/icon_512x512.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/logo.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/logo.png
new file mode 100644
index 000000000..39601b514
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/logo.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/maskable_icon.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/maskable_icon.png
new file mode 100644
index 000000000..2259a3263
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/maskable_icon.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/stremio_symbol.png b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/stremio_symbol.png
new file mode 100644
index 000000000..28d3ccb4e
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/images/stremio_symbol.png differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_narrow.webp b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_narrow.webp
new file mode 100644
index 000000000..9f6afe4eb
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_narrow.webp differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_wide.webp b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_wide.webp
new file mode 100644
index 000000000..211db49ec
Binary files /dev/null and b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/screenshots/board_wide.webp differ
diff --git a/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/scripts/main.js b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/scripts/main.js
new file mode 100644
index 000000000..cbcf75542
--- /dev/null
+++ b/fix-z-index/e0cd07060202faaa7d3e328931b5b5d20e666ad1/scripts/main.js
@@ -0,0 +1,2 @@
+(()=>{var e={67228:e=>{e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{e.exports=function(e){if(Array.isArray(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},48926:e=>{function t(e,t,o,a,i,n,r){try{var E=e[n](r),_=E.value}catch(e){return void o(e)}E.done?t(_):Promise.resolve(_).then(a,i)}e.exports=function(e){return function(){var o=this,a=arguments;return new Promise((function(i,n){var r=e.apply(o,a);function E(e){t(r,i,n,E,_,"next",e)}function _(e){t(r,i,n,E,_,"throw",e)}E(void 0)}))}},e.exports.default=e.exports,e.exports.__esModule=!0},34575:e=>{e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},93913:e=>{function t(e,t){for(var o=0;o{e.exports=function(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e},e.exports.default=e.exports,e.exports.__esModule=!0},95318:e=>{e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},13884:e=>{e.exports=function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n}},e.exports.default=e.exports,e.exports.__esModule=!0},80521:e=>{e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},6479:(e,t,o)=>{var a=o(37316);e.exports=function(e,t){if(null==e)return{};var o,i,n=a(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n},e.exports.default=e.exports,e.exports.__esModule=!0},37316:e=>{e.exports=function(e,t){if(null==e)return{};var o,a,i={},n=Object.keys(e);for(a=0;a=0||(i[o]=e[o]);return i},e.exports.default=e.exports,e.exports.__esModule=!0},63038:(e,t,o)=>{var a=o(22858),i=o(13884),n=o(60379),r=o(80521);e.exports=function(e,t){return a(e)||i(e,t)||n(e,t)||r()},e.exports.default=e.exports,e.exports.__esModule=!0},50008:e=>{function t(o){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=t=function(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=t=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),t(o)}e.exports=t,e.exports.default=e.exports,e.exports.__esModule=!0},60379:(e,t,o)=>{var a=o(67228);e.exports=function(e,t){if(e){if("string"==typeof e)return a(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);return"Object"===o&&e.constructor&&(o=e.constructor.name),"Map"===o||"Set"===o?Array.from(e):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?a(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},87757:(e,t,o)=>{e.exports=o(35666)},56553:(e,t,o)=>{"use strict";var a=o(95318),i=a(o(87757)),n=a(o(48926));e.exports=function(e,t){t.addEventListener("message",(function(){var o=(0,n.default)(i.default.mark((function o(a){var n,r,E,_,T,s,S;return i.default.wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(n=a.data.request){o.next=3;break}return o.abrupt("return");case 3:if(r=n.id,E=n.path,_=n.args,o.prev=4,"function"!=typeof(T=E.reduce((function(e,t){return e[t]}),e))){o.next=13;break}return S=E.slice(0,E.length-1).reduce((function(e,t){return e[t]}),e),o.next=10,T.apply(S,_);case 10:s=o.sent,o.next=16;break;case 13:return o.next=15,T;case 15:s=o.sent;case 16:t.postMessage({response:{id:r,result:{data:s}}}),o.next=22;break;case 19:o.prev=19,o.t0=o.catch(4),t.postMessage({response:{id:r,result:{error:o.t0}}});case 22:case"end":return o.stop()}}),o,null,[[4,19]])})));return function(e){return o.apply(this,arguments)}})()),this.call=(function(){var e=(0,n.default)(i.default.mark((function e(o,a){var n;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Math.random().toString(32).slice(2),e.abrupt("return",new Promise((function(e,i){t.addEventListener("message",(function o(a){var r=a.data.response;r&&r.id===n&&(t.removeEventListener("message",o),"error"in r.result?i(r.result.error):e(r.result.data))})),t.postMessage({request:{id:n,path:o,args:a}})})));case 2:case"end":return e.stop()}}),e)})));return function(t,o){return e.apply(this,arguments)}})()}},10792:(e,t,o)=>{var a=o(26729),i=o(39657);function n(e){var t=(e=e||{}).containerElement;if(!(t instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var o=e.chromecastTransport;if(!o)throw new Error("Chromecast transport required");var n=o.getCastDevice();if(null===n)throw new Error("Chromecast session must be started");var r=document.createElement("div");r.style.display="flex",r.style.flexDirection="row",r.style.alignItems="center",r.style.justifyContent="center",r.style.width="100%",r.style.height="100%",r.style.backgroundColor="black";var E=document.createElement("div");E.style.flex="none",E.style.maxWidth="80%",E.style.fontSize="5vmin",E.style.lineHeight="1.2em",E.style.maxHeight="3.6em",E.style.textAlign="center",E.style.color="#FFFFFF90",E.innerText="Casting to "+n.friendlyName,r.appendChild(E),t.appendChild(r),o.on("message",I),o.on("message-error",l);var _=new a,T=!1,s={stream:!1,loaded:!1,paused:!1,time:!1,duration:!1,buffering:!1,buffered:!1,audioTracks:!1,selectedAudioTrackId:!1,subtitlesTracks:!1,selectedSubtitlesTrackId:!1,subtitlesOffset:!1,subtitlesSize:!1,subtitlesTextColor:!1,subtitlesBackgroundColor:!1,subtitlesOutlineColor:!1,volume:!1,muted:!1,playbackSpeed:!1,videoParams:!1,extraSubtitlesTracks:!1,selectedExtraSubtitlesTrackId:!1,extraSubtitlesDelay:!1,extraSubtitlesSize:!1,extraSubtitlesOffset:!1,extraSubtitlesTextColor:!1,extraSubtitlesBackgroundColor:!1,extraSubtitlesOutlineColor:!1};function S(e,t){_.emit("error",Object.assign({},i.CHROMECAST_SENDER_VIDEO.MESSAGE_SEND_FAILED,{error:e,action:t}))}function l(e){_.emit("error",Object.assign({},i.CHROMECAST_SENDER_VIDEO.INVALID_MESSAGE_RECEIVED,{error:e}))}function I(e){if(e&&"string"==typeof e.event){var t=Array.isArray(e.args)?e.args:[];_.emit.apply(_,[e.event].concat(t))}else l(new Error("Invalid message: "+e))}function u(e,t){s[e]&&_.emit("propChanged",e,t)}this.on=function(e,t){if(T)throw new Error("Video is destroyed");_.on(e,t)},this.dispatch=function(e){if(T)throw new Error("Video is destroyed");if(e)switch(e.type){case"observeProp":return i=e.propName,s.hasOwnProperty(i)&&(s[i]=!0),void o.sendMessage(e).catch((function(t){S(t,e)}));case"setProp":return void o.sendMessage(e).catch((function(t){S(t,e)}));case"command":return a=e.commandName,e.commandArgs,"destroy"===a&&(T=!0,u("stream",null),u("loaded",null),u("paused",null),u("time",null),u("duration",null),u("buffering",null),u("buffered",null),u("audioTracks",[]),u("selectedAudioTrackId",[]),u("subtitlesTracks",[]),u("selectedSubtitlesTrackId",null),u("subtitlesOffset",null),u("subtitlesSize",null),u("subtitlesTextColor",null),u("subtitlesBackgroundColor",null),u("subtitlesOutlineColor",null),u("volume",null),u("muted",null),u("playbackSpeed",null),u("videoParams",null),u("extraSubtitlesTracks",[]),u("selectedExtraSubtitlesTrackId",null),u("extraSubtitlesDelay",null),u("extraSubtitlesSize",null),u("extraSubtitlesOffset",null),u("extraSubtitlesTextColor",null),u("extraSubtitlesBackgroundColor",null),u("extraSubtitlesOutlineColor",null),_.removeAllListeners(),o.off("message",I),t.removeChild(r)),void o.sendMessage(e).catch((function(t){S(t,e)}))}var a,i;throw new Error("Invalid action dispatched: "+JSON.stringify(e))}}n.canPlayStream=function(){return Promise.resolve(!0)},n.manifest={name:"ChromecastSenderVideo",external:!0,props:["stream","loaded","paused","time","duration","buffering","buffered","audioTracks","selectedAudioTrackId","subtitlesTracks","selectedSubtitlesTrackId","subtitlesOffset","subtitlesSize","subtitlesTextColor","subtitlesBackgroundColor","subtitlesOutlineColor","volume","muted","playbackSpeed","videoParams","extraSubtitlesTracks","selectedExtraSubtitlesTrackId","extraSubtitlesDelay","extraSubtitlesSize","extraSubtitlesOffset","extraSubtitlesTextColor","extraSubtitlesBackgroundColor","extraSubtitlesOutlineColor"],commands:["load","unload","destroy","addExtraSubtitlesTracks"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded","audioTrackLoaded","extraSubtitlesTrackLoaded","implementationChanged"]},e.exports=n},43153:(e,t,o)=>{var a=o(10792);e.exports=a},41431:(e,t,o)=>{var a=o(26729),i=o(67631),n=o(83465),r=o(62682),E=o(6767),_=o(39657),T=o(28973),s=o(11566);function S(e){var t=(e=e||{}).containerElement;if(!(t instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var o=document.createElement("style");t.appendChild(o),o.sheet.insertRule("video::cue { font-size: 4vmin; color: rgb(255, 255, 255); background-color: rgba(0, 0, 0, 0); text-shadow: rgb(34, 34, 34) 1px 1px 0.1em; }");var S=document.createElement("video");S.style.width="100%",S.style.height="100%",S.style.backgroundColor="black",S.controls=!1,S.playsInline=!0,S.onerror=function(){!(function(){if(u)return;var e;switch(S.error.code){case 1:e=_.HTML_VIDEO.MEDIA_ERR_ABORTED;break;case 2:e=_.HTML_VIDEO.MEDIA_ERR_NETWORK;break;case 3:e=_.HTML_VIDEO.MEDIA_ERR_DECODE;break;case 4:e=_.HTML_VIDEO.MEDIA_ERR_SRC_NOT_SUPPORTED;break;default:e=_.UNKNOWN_ERROR}N(Object.assign({},e,{critical:!0,error:S.error}))})()},S.onended=function(){I.emit("ended")},S.onpause=function(){m("paused")},S.onplay=function(){m("paused")},S.ontimeupdate=function(){m("time"),m("buffered")},S.ondurationchange=function(){m("duration")},S.onwaiting=function(){m("buffering"),m("buffered")},S.onseeking=function(){m("time"),m("buffering"),m("buffered")},S.onseeked=function(){m("time"),m("buffering"),m("buffered")},S.onstalled=function(){m("buffering"),m("buffered")},S.onplaying=function(){m("time"),m("buffering"),m("buffered")},S.oncanplay=function(){m("buffering"),m("buffered")},S.canplaythrough=function(){m("buffering"),m("buffered")},S.onloadedmetadata=function(){m("loaded")},S.onloadeddata=function(){m("buffering"),m("buffered")},S.onvolumechange=function(){m("volume"),m("muted")},S.onratechange=function(){m("playbackSpeed")},S.textTracks.onchange=function(){m("subtitlesTracks"),m("selectedSubtitlesTrackId"),R(),Array.from(S.textTracks).forEach((function(e){e.oncuechange=R}))},t.appendChild(S);var l=null,I=new a,u=!1,A=null,d=0,c={stream:!1,loaded:!1,paused:!1,time:!1,duration:!1,buffering:!1,buffered:!1,subtitlesTracks:!1,selectedSubtitlesTrackId:!1,subtitlesOffset:!1,subtitlesSize:!1,subtitlesTextColor:!1,subtitlesBackgroundColor:!1,subtitlesOutlineColor:!1,audioTracks:!1,selectedAudioTrackId:!1,volume:!1,muted:!1,playbackSpeed:!1};function O(e){switch(e){case"stream":return A;case"loaded":return null===A?null:S.readyState>=S.HAVE_METADATA;case"paused":return null===A?null:!!S.paused;case"time":return null!==A&&null!==S.currentTime&&isFinite(S.currentTime)?Math.floor(1e3*S.currentTime):null;case"duration":return null!==A&&null!==S.duration&&isFinite(S.duration)?Math.floor(1e3*S.duration):null;case"buffering":return null===A?null:S.readyState0?e.lang:"string"==typeof e.name&&e.name.length>0?e.name:String(e.id),label:"string"==typeof e.name&&e.name.length>0?e.name:"string"==typeof e.lang&&e.lang.length>0?e.lang:String(e.id),origin:"EMBEDDED",embedded:!0})})):[];case"selectedAudioTrackId":return null!==l&&null!==l.audioTrack&&isFinite(l.audioTrack)&&-1!==l.audioTrack?"EMBEDDED_"+String(l.audioTrack):null;case"volume":return u||null===S.volume||!isFinite(S.volume)?null:Math.floor(100*S.volume);case"muted":return u?null:!!S.muted;case"playbackSpeed":return u||null===S.playbackRate||!isFinite(S.playbackRate)?null:S.playbackRate;default:return null}}function R(){Array.from(S.textTracks).forEach((function(e){Array.from(e.cues||[]).forEach((function(e){e.snapToLines=!1,e.line=100-d}))}))}function N(e){I.emit("error",e),e.critical&&L("unload")}function m(e){c[e]&&I.emit("propChanged",e,O(e))}function L(e,a){switch(e){case"load":L("unload"),a&&a.stream&&"string"==typeof a.stream.url?(A=a.stream,m("stream"),m("loaded"),S.autoplay="boolean"!=typeof a.autoplay||a.autoplay,S.currentTime=null!==a.time&&isFinite(a.time)?parseInt(a.time,10)/1e3:0,m("paused"),m("time"),m("duration"),m("buffering"),m("buffered"),m("subtitlesTracks"),m("selectedSubtitlesTrackId"),m("audioTracks"),m("selectedAudioTrackId"),T(A).then((function(e){A===a.stream&&("application/vnd.apple.mpegurl"===e&&i.isSupported()?((l=new i(s)).on(i.Events.AUDIO_TRACKS_UPDATED,(function(){m("audioTracks"),m("selectedAudioTrackId")})),l.on(i.Events.AUDIO_TRACK_SWITCHED,(function(){m("audioTracks"),m("selectedAudioTrackId")})),l.loadSource(A.url),l.attachMedia(S)):S.src=A.url)})).catch((function(){A===a.stream&&(S.src=A.url)}))):N(Object.assign({},_.UNSUPPORTED_STREAM,{critical:!0,stream:a?a.stream:null}));break;case"unload":A=null,Array.from(S.textTracks).forEach((function(e){e.oncuechange=null})),null!==l&&(l.removeAllListeners(),l.detachMedia(S),l.destroy(),l=null),S.removeAttribute("src"),S.load(),S.currentTime=0,m("stream"),m("loaded"),m("paused"),m("time"),m("duration"),m("buffering"),m("buffered"),m("subtitlesTracks"),m("selectedSubtitlesTrackId"),m("audioTracks"),m("selectedAudioTrackId");break;case"destroy":L("unload"),u=!0,m("subtitlesOffset"),m("subtitlesSize"),m("subtitlesTextColor"),m("subtitlesBackgroundColor"),m("subtitlesOutlineColor"),m("volume"),m("muted"),m("playbackSpeed"),I.removeAllListeners(),S.onerror=null,S.onended=null,S.onpause=null,S.onplay=null,S.ontimeupdate=null,S.ondurationchange=null,S.onwaiting=null,S.onseeking=null,S.onseeked=null,S.onstalled=null,S.onplaying=null,S.oncanplay=null,S.canplaythrough=null,S.onloadeddata=null,S.onvolumechange=null,S.onratechange=null,S.textTracks.onchange=null,t.removeChild(S),t.removeChild(o)}}this.on=function(e,t){if(u)throw new Error("Video is destroyed");I.on(e,t)},this.dispatch=function(e){if(u)throw new Error("Video is destroyed");if(e)switch((e=r(n(e))).type){case"observeProp":return t=e.propName,void(c.hasOwnProperty(t)&&(I.emit("propValue",t,O(t)),c[t]=!0));case"setProp":return void(function(e,t){switch(e){case"paused":null!==A&&(t?S.pause():S.play(),m("paused"));break;case"time":null!==A&&null!==t&&isFinite(t)&&(S.currentTime=parseInt(t,10)/1e3,m("time"));break;case"selectedSubtitlesTrackId":if(null!==A){Array.from(S.textTracks).forEach((function(e,o){e.mode="EMBEDDED_"+String(o)===t?"showing":"disabled"}));var a=O("subtitlesTracks").find((function(e){return e.id===t}));a&&(m("selectedSubtitlesTrackId"),I.emit("subtitlesTrackLoaded",a))}break;case"subtitlesOffset":null!==t&&isFinite(t)&&(d=Math.max(0,Math.min(100,parseInt(t,10))),R(),m("subtitlesOffset"));break;case"subtitlesSize":null!==t&&isFinite(t)&&(o.sheet.cssRules[0].style.fontSize=Math.floor(Math.max(0,parseInt(t,10))/25)+"vmin",m("subtitlesSize"));break;case"subtitlesTextColor":if("string"==typeof t){try{o.sheet.cssRules[0].style.color=E(t).rgb().string()}catch(e){console.error("HTMLVideo",e)}m("subtitlesTextColor")}break;case"subtitlesBackgroundColor":if("string"==typeof t){try{o.sheet.cssRules[0].style.backgroundColor=E(t).rgb().string()}catch(e){console.error("HTMLVideo",e)}m("subtitlesBackgroundColor")}break;case"subtitlesOutlineColor":if("string"==typeof t){try{o.sheet.cssRules[0].style.textShadow=E(t).rgb().string()+" 1px 1px 0.1em"}catch(e){console.error("HTMLVideo",e)}m("subtitlesOutlineColor")}break;case"selectedAudioTrackId":if(null!==l){var i=O("audioTracks").find((function(e){return e.id===t}));l.audioTrack=i?parseInt(i.id.split("_").pop(),10):-1,i&&(m("selectedAudioTrackId"),I.emit("audioTrackLoaded",i))}break;case"volume":null!==t&&isFinite(t)&&(S.muted=!1,S.volume=Math.max(0,Math.min(100,parseInt(t,10)))/100,m("muted"),m("volume"));break;case"muted":S.muted=!!t,m("muted");break;case"playbackSpeed":null!==t&&isFinite(t)&&(S.playbackRate=parseFloat(t),m("playbackSpeed"))}})(e.propName,e.propValue);case"command":return void L(e.commandName,e.commandArgs)}var t;throw new Error("Invalid action dispatched: "+JSON.stringify(e))}}S.canPlayStream=function(e){return!e||e.behaviorHints&&e.behaviorHints.notWebReady?Promise.resolve(!1):T(e).then((function(e){return!!document.createElement("video").canPlayType(e)||"application/vnd.apple.mpegurl"===e&&i.isSupported()})).catch((function(){return!1}))},S.manifest={name:"HTMLVideo",external:!1,props:["stream","loaded","paused","time","duration","buffering","buffered","audioTracks","selectedAudioTrackId","subtitlesTracks","selectedSubtitlesTrackId","subtitlesOffset","subtitlesSize","subtitlesTextColor","subtitlesBackgroundColor","subtitlesOutlineColor","volume","muted","playbackSpeed"],commands:["load","unload","destroy"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded","audioTrackLoaded"]},e.exports=S},28973:e=>{e.exports=function(e){return e&&"string"==typeof e.url?e.behaviorHints&&e.behaviorHints.proxyHeaders&&e.behaviorHints.proxyHeaders.response&&"string"==typeof e.behaviorHints.proxyHeaders.response["content-type"]?Promise.resolve(e.behaviorHints.proxyHeaders.response["content-type"]):fetch(e.url,{method:"HEAD"}).then((function(e){if(e.ok)return e.headers.get("content-type");throw new Error(e.status+" ("+e.statusText+")")})):Promise.reject(new Error("Invalid stream parameter!"))}},11566:e=>{e.exports={debug:!1,enableWorker:!0,lowLatencyMode:!1,backBufferLength:30,maxBufferLength:50,maxMaxBufferLength:80,maxFragLookUpTolerance:0,maxBufferHole:0,appendErrorMaxRetry:20,nudgeMaxRetry:20,manifestLoadingTimeOut:3e4,manifestLoadingMaxRetry:10}},59222:(e,t,o)=>{var a=o(41431);e.exports=a},78879:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(39657);function E(e){var t=(e=e||{}).containerElement;if(!(t instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var o=document.createElement("iframe");o.style.width="100%",o.style.height="100%",o.style.border=0,o.style.backgroundColor="black",o.allowFullscreen=!1,o.allow="autoplay",t.appendChild(o);var E=new a,_=!1,T={stream:!1,loaded:!1,paused:!1,time:!1,duration:!1,buffering:!1,buffered:!1,volume:!1,muted:!1,playbackSpeed:!1};function s(e){if(e.source===o.contentWindow){var t=e.data||e.message;if(t&&"string"==typeof t.event){var a=t.event,i=Array.isArray(t.args)?t.args:[];E.emit.apply(E,[a].concat(i))}}}function S(e){o.contentWindow.postMessage(e,"*")}function l(e,t){T[e]&&E.emit("propChanged",e,t)}function I(e,a){switch(e){case"load":return I("unload"),a&&a.stream&&"string"==typeof a.stream.playerFrameUrl?(window.addEventListener("message",s,!1),o.onload=function(){S({type:"command",commandName:e,commandArgs:a})},o.src=a.stream.playerFrameUrl):(i=Object.assign({},r.UNSUPPORTED_STREAM,{critical:!0,stream:a?a.stream:null}),E.emit("error",i),i.critical&&I("unload")),!0;case"unload":return window.removeEventListener("message",s),o.onload=null,o.removeAttribute("src"),l("stream",null),l("loaded",null),l("paused",null),l("time",null),l("duration",null),l("buffering",null),l("buffered",null),l("volume",null),l("muted",null),l("playbackSpeed",null),!0;case"destroy":return I("unload"),_=!0,E.removeAllListeners(),t.removeChild(o),!0}var i}this.on=function(e,t){if(_)throw new Error("Video is destroyed");E.on(e,t)},this.dispatch=function(e){if(_)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":return t=e.propName,T.hasOwnProperty(t)&&(T[t]=!0),void S(e);case"setProp":return void S(e);case"command":return void(I(e.commandName,e.commandArgs)||S(e))}var t;throw new Error("Invalid action dispatched: "+JSON.stringify(e))}}E.canPlayStream=function(e){return Promise.resolve(e&&"string"==typeof e.playerFrameUrl)},E.manifest={name:"IFrameVideo",external:!0,props:["stream","loaded","paused","time","duration","buffering","buffered","audioTracks","selectedAudioTrackId","subtitlesTracks","selectedSubtitlesTrackId","subtitlesOffset","subtitlesSize","subtitlesTextColor","subtitlesBackgroundColor","subtitlesOutlineColor","volume","muted","playbackSpeed","extraSubtitlesTracks","selectedExtraSubtitlesTrackId","extraSubtitlesDelay","extraSubtitlesSize","extraSubtitlesOffset","extraSubtitlesTextColor","extraSubtitlesBackgroundColor","extraSubtitlesOutlineColor"],commands:["load","unload","destroy","addExtraSubtitlesTracks"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded","audioTrackLoaded","extraSubtitlesTrackLoaded","implementationChanged"]},e.exports=E},47685:(e,t,o)=>{var a=o(78879);e.exports=a},78945:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(39657),E=.0066,_={stream:null,paused:"pause",time:"time-pos",duration:"duration",buffering:"buffering",volume:"volume",muted:"mute",playbackSpeed:"speed",audioTracks:"audioTracks",selectedAudioTrackId:"aid",subtitlesTracks:"subtitlesTracks",selectedSubtitlesTrackId:"sid",subtitlesSize:"sub-scale",subtitlesTextColor:"sub-color",subtitlesBackgroundColor:"sub-back-color",subtitlesOutlineColor:"sub-border-color"};function T(e){var t=(e=e||{}).shellTransport,o={};Object.keys(_).forEach((function(e){_[e]&&(o[_[e]]=e)})),t.send("mpv-command",["stop"]),t.send("mpv-observe-prop","path"),t.send("mpv-observe-prop","time-pos"),t.send("mpv-observe-prop","volume"),t.send("mpv-observe-prop","pause"),t.send("mpv-observe-prop","seeking"),t.send("mpv-observe-prop","eof-reached"),t.send("mpv-observe-prop","duration"),t.send("mpv-observe-prop","metadata"),t.send("mpv-observe-prop","video-params"),t.send("mpv-observe-prop","track-list"),t.send("mpv-observe-prop","paused-for-cache"),t.send("mpv-observe-prop","cache-buffering-state"),t.send("mpv-observe-prop","aid"),t.send("mpv-observe-prop","vid"),t.send("mpv-observe-prop","sid"),t.send("mpv-observe-prop","sub-scale"),t.send("mpv-observe-prop","sub-pos"),t.send("mpv-observe-prop","speed"),t.send("mpv-observe-prop","mpv-version"),t.send("mpv-observe-prop","ffmpeg-version");var T=new a,s=!1,S=null,l={},I=0,u=0,A={};function d(t){for(var o=t?"":"transparent",a=e.containerElement;a;a=a.parentElement)a.style.background=o}var c=0;function O(e){return _[e]?A[_[e]]:(console.log("Unsupported prop requested",e),null)}function R(e){T.emit("error",e),e.critical&&m("unload")}function N(e){l[e]&&T.emit("propChanged",e,O(e))}function m(o,a){switch(o){case"load":if(m("unload"),a&&a.stream&&"string"==typeof a.stream.url){S=a.stream,N("stream"),I=null!==a.time&&isFinite(a.time)?parseInt(a.time,10)/1e3:0,d(!1),t.send("mpv-set-prop",["no-sub-ass"]);var i="Win32"===navigator.platform?"direct3d":"opengl",n=e.mpvSeparateWindow?i:"opengl-cb",E=e.mpvSeparateWindow?"yes":"no";t.send("mpv-set-prop",["vo",n]),t.send("mpv-set-prop",["osc",E]),t.send("mpv-set-prop",["input-defalt-bindings",E]),t.send("mpv-set-prop",["input-vo-keyboard",E]),t.send("mpv-command",["loadfile",S.url]),t.send("mpv-set-prop",["pause",!1]),t.send("mpv-set-prop",["speed",A.speed]),t.send("mpv-set-prop",["aid",A.aid]),t.send("mpv-set-prop",["mute","no"]),N("paused"),N("time"),N("duration"),N("buffering"),N("volume"),N("muted"),N("subtitlesTracks"),N("selectedSubtitlesTrackId")}else R(Object.assign({},r.UNSUPPORTED_STREAM,{critical:!0,stream:a?a.stream:null}));break;case"unload":A={mute:!1,speed:1,subtitlesTracks:[],buffering:!0,aid:null,sid:null},I=0,u=0,t.send("mpv-command",["stop"]),N("stream"),N("paused"),N("time"),N("duration"),N("buffering"),N("volume"),N("muted"),N("subtitlesTracks"),N("selectedSubtitlesTrackId"),d(!0);break;case"destroy":m("unload"),s=!0,T.removeAllListeners()}}t.on("mpv-prop-change",(function(e){switch(e.name){case"mpv-version":case"ffmpeg-version":A[e.name]=(function(e){console.log(e.name+": "+e.data)})(e);break;case"duration":var a=0|e.data;A[e.name]=e.data>=30&&(!u||a===u)?Math.round(1e3*e.data):null,u=u?u+a>>1:a;break;case"time-pos":A[e.name]=Math.round(1e3*e.data),I&&(t.send("mpv-set-prop",["time-pos",I]),A[e.name]=Math.round(I),I=0);break;case"sub-scale":A[e.name]=Math.round(e.data/E);break;case"paused-for-cache":case"seeking":A.buffering!==e.data&&(A.buffering=e.data,N("buffering"));break;case"aid":case"sid":case"vid":A[e.name]=(function(e){return e.data?"EMBEDDED_"+e.data.toString():null})(e);break;case"track-list":A.audioTracks=e.data.filter((function(e){return"audio"===e.type})).map((function(e,t){return{id:"EMBEDDED_"+e.id,lang:void 0===e.lang?"Track"+(t+1):e.lang,label:void 0===e.title||void 0===e.lang?"":e.title||e.lang,origin:"EMBEDDED",embedded:!0,mode:e.id===A.aid?"showing":"disabled"}})),N("audioTracks"),A.subtitlesTracks=e.data.filter((function(e){return"sub"===e.type})).map((function(e,t){return{id:"EMBEDDED_"+e.id,lang:void 0===e.lang?"Track "+(t+1):e.lang,label:void 0===e.title||void 0===e.lang?"":e.title||e.lang,origin:"EMBEDDED",embedded:!0,mode:e.id===A.sid?"showing":"disabled"}})),N("subtitlesTracks");break;default:A[e.name]=e.data}var i="time-pos"===e.name?Math.floor(A["time-pos"]/1e3):null;i&&c===i||!o[e.name]||(i&&(c=i),N(o[e.name]))})),t.on("mpv-event-ended",(function(e){e.error?R(e.error):T.emit("ended")})),this.on=function(e,t){if(s)throw new Error("Video is destroyed");T.on(e,t)},this.dispatch=function(e){if(s)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":o=e.propName,T.emit("propValue",o,O(o)),l[o]=!0;break;case"setProp":return void(function(e,o){switch(e){case"paused":null!==S&&t.send("mpv-set-prop",["pause",o]);break;case"time":null!==S&&null!==o&&isFinite(o)&&t.send("mpv-set-prop",["time-pos",o/1e3]);break;case"playbackSpeed":null!==S&&null!==o&&isFinite(o)&&t.send("mpv-set-prop",["speed",o]);break;case"volume":null!==S&&null!==o&&isFinite(o)&&(A.mute=!1,t.send("mpv-set-prop",["mute","no"]),t.send("mpv-set-prop",["volume",o]),N("muted"),N("volume"));break;case"muted":null!==S&&(t.send("mpv-set-prop",["mute",o?"yes":"no"]),A.mute=o,N("muted"));break;case"selectedAudioTrackId":if(null!==S){var a=o.slice("EMBEDDED_".length);t.send("mpv-set-prop",["aid",a])}break;case"selectedSubtitlesTrackId":null!==S&&(o?(a=o.slice("EMBEDDED_".length),t.send("mpv-set-prop",["sid",a]),T.emit("subtitlesTrackLoaded",o)):(t.send("mpv-set-prop",["sid","no"]),A.sid=null)),N("selectedSubtitlesTrackId");break;case"subtitlesSize":t.send("mpv-set-prop",[_[e],o*E]);break;case"subtitlesOffset":t.send("mpv-set-prop",[_[e],o]);break;case"subtitlesTextColor":case"subtitlesBackgroundColor":case"subtitlesOutlineColor":var i=o.replace(/^#(\w{6})(\w{2})$/,"#$2$1");t.send("mpv-set-prop",[_[e],i]);break;default:console.log("Unhandled setProp for",e)}})(e.propName,e.propValue);case"command":return void m(e.commandName,e.commandArgs)}var o}}T.canPlayStream=function(){return Promise.resolve(!0)},T.manifest={name:"ShellVideo",external:!1,props:Object.keys(_),commands:["load","unload","destroy"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded"]},e.exports=T},22024:(e,t,o)=>{var a=o(78945);e.exports=a},8117:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(72081),E=o(39657);function _(){var e=null,t=new a,o=!1;this.on=function(e,a){if(o)throw new Error("Video is destroyed");t.on(e,a)},this.dispatch=function(a,_){if(o)throw new Error("Video is destroyed");if(!a)throw new Error("Invalid action dispatched: "+JSON.stringify(a));if(_=_||{},"command"===(a=n(i(a))).type&&"load"===a.commandName&&a.commandArgs){var T=r(a.commandArgs,_);if(null!==e&&e.constructor!==T&&(e.dispatch({type:"command",commandName:"destroy"}),e=null),null===e){if(null===T)return void t.emit("error",Object.assign({},E.UNSUPPORTED_STREAM,{error:new Error("No video implementation was selected"),critical:!0,stream:a.commandArgs.stream}));(e=new T(_)).on("ended",(function(){t.emit("ended")})),e.on("error",(function(e){t.emit("error",e)})),e.on("propValue",(function(e,o){t.emit("propValue",e,o)})),e.on("propChanged",(function(e,o){t.emit("propChanged",e,o)})),e.on("subtitlesTrackLoaded",(function(e){t.emit("subtitlesTrackLoaded",e)})),e.on("audioTrackLoaded",(function(e){t.emit("audioTrackLoaded",e)})),e.on("extraSubtitlesTrackLoaded",(function(e){t.emit("extraSubtitlesTrackLoaded",e)})),T.manifest.external?e.on("implementationChanged",(function(e){t.emit("implementationChanged",e)})):t.emit("implementationChanged",T.manifest)}}if(null!==e)try{e.dispatch(a)}catch(t){console.error(e.constructor.manifest.name,t)}"command"===a.type&&"destroy"===a.commandName&&(e=null)},this.destroy=function(){o=!0,null!==e&&(e.dispatch({type:"command",commandName:"destroy"}),e=null),t.removeAllListeners()}}_.ERROR=E,e.exports=_},35010:(e,t,o)=>{var a=o(8117);e.exports=a},72081:(e,t,o)=>{var a=o(43153),i=o(22024),n=o(59222),r=o(5682),E=o(18846),_=o(47685),T=o(33142),s=o(5690),S=o(74282),l=o(29450);e.exports=function(e,t){return e.stream&&"string"!=typeof e.stream.externalUrl?t.chromecastTransport&&t.chromecastTransport.getCastState()===cast.framework.CastState.CONNECTED?a:"string"==typeof e.stream.ytId?l(S(T)):"string"==typeof e.stream.playerFrameUrl?l(_):t.shellTransport?s(S(i)):"string"==typeof e.streamingServerURL?void 0!==o.g.tizen?s(S(r)):void 0!==o.g.webOS?s(S(E)):s(S(n)):"string"==typeof e.stream.url?void 0!==o.g.webOS?l(S(E)):void 0!==o.g.tizen?l(S(r)):l(S(n)):null:null}},95071:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(6767),E=o(39657);function _(e){var t=!0,o=1,_=null,T=null,s=(e=e||{}).containerElement;if(!(s instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var S,l=!1,I=100,u=0,A="rgb(255, 255, 255)",d="rgba(0, 0, 0, 0)",c="rgb(34, 34, 34)",O=document.createElement("object");O.type="application/avplayer",O.style.width="100%",O.style.height="100%",O.style.backgroundColor="black";var R=!1;function N(){if(S){var e=S.duration-(B("time")-S.now);e>0&&m(e,S.text)}}function m(e,t){if(!R){for(S={duration:e,text:t,now:B("time")},L&&(clearTimeout(L),L=!1);D.hasChildNodes();)D.removeChild(D.lastChild);D.style.bottom=u+"%";var a=document.createElement("span");a.innerHTML=t,a.style.display="inline-block",a.style.padding="0.2em",a.style.fontSize=Math.floor(I/25)+"vmin",a.style.color=A,a.style.backgroundColor=d,a.style.textShadow="1px 1px 0.1em "+c,D.appendChild(a),D.appendChild(document.createElement("br")),e&&(L=setTimeout((function(){for(;D.hasChildNodes();)D.removeChild(D.lastChild)}),parseInt(e*o)))}}var L=!1,p={onbufferingstart:function(){t=!0,v("buffering")},onbufferingprogress:function(){t=!0,v("buffering")},onbufferingcomplete:function(){t=!1,v("buffering")},oncurrentplaytime:function(){v("time")},onerror:function(){!(function(){if(C)return;var e;e=E.UNKNOWN_ERROR,P(Object.assign({},e,{critical:!0,error:e}))})()},onsubtitlechange:function(e,t){m(e,t)},onstreamcompleted:function(){h.emit("ended")}};window.webapis.avplay.setListener(p),s.appendChild(O);var D=document.createElement("div");D.style.position="absolute",D.style.right="0",D.style.bottom="0",D.style.left="0",D.style.zIndex="1",D.style.textAlign="center",s.style.position="relative",s.style.zIndex="0",s.appendChild(D);var h=new a,C=!1,f=null,g={stream:!1,paused:!1,time:!1,duration:!1,buffering:!1,subtitlesTracks:!1,selectedSubtitlesTrackId:!1,subtitlesOffset:!1,subtitlesSize:!1,subtitlesTextColor:!1,subtitlesBackgroundColor:!1,subtitlesOutlineColor:!1,audioTracks:!1,selectedAudioTrackId:!1,playbackSpeed:!1};function B(e){switch(e){case"stream":return f;case"paused":if(null===f)return null;var a=!("PAUSED"!==window.webapis.avplay.getState());return!a&&l&&(window.webapis.avplay.setSelectTrack("AUDIO",parseInt(l.replace("EMBEDDED_",""))),l=!1),a;case"time":var i=window.webapis.avplay.getCurrentTime();return null!==f&&null!==i&&isFinite(i)?Math.floor(i):null;case"duration":var n=window.webapis.avplay.getDuration();return null!==f&&null!==n&&isFinite(n)?Math.floor(n):null;case"buffering":return null===f?null:t;case"subtitlesTracks":if(null===f)return[];for(var r=window.webapis.avplay.getTotalTrackInfo(),E=[],s=0;s0?N.track_lang.trim():null;E.push({id:O,lang:m,label:m,origin:"EMBEDDED",embedded:!0,mode:R||O!==_?"disabled":"showing"})}return E;case"selectedSubtitlesTrackId":if(null===f||R)return null;var L=window.webapis.avplay.getCurrentStreamInfo();for(s=0;s0?N.language:null;p.push({id:h,lang:g,label:g,origin:"EMBEDDED",embedded:!0,mode:h===T?"showing":"disabled"})}return p;case"selectedAudioTrackId":if(null===f)return null;if(l)return l;L=window.webapis.avplay.getCurrentStreamInfo();var B=!1;for(s=0;s{var a=o(95071);e.exports=a},64333:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(39657);function E(e,t,o,a){t&&(e.onSuccess=t||function(){}),e.onFailure=function(){o&&o()},window.webOS.service.request(a||"luna://com.webos.media",e)}function _(e,t,o){window.webOS.service.request("luna://com.webos.applicationManager",{method:"launch",parameters:{id:e.id,params:{payload:[{fullPath:e.url,artist:"",subtitle:"",dlnaInfo:{flagVal:4096,cleartextSize:"-1",contentLength:"-1",opVal:1,protocolInfo:"http-get:*:video/x-matroska:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000",duration:0},mediaType:"VIDEO",thumbnail:"",deviceType:"DMR",album:"",fileName:e.name,lastPlayPosition:e.position}]}},onSuccess:function(){t&&t()},onFailure:function(){o&&o(new Error("Failed to launch"+e.id)),"com.webos.app.photovideo"===e.id?(e.id="com.webos.app.smartshare",_(e,t,o)):"com.webos.app.smartshare"===e.id&&(e.id="com.webos.app.mediadiscovery",_(e,t,o))}})}var T=["black","white","yellow","red","green","blue"],s={"rgba(0, 0, 0, 255)":"black","rgba(255, 255, 255, 255)":"white","rgba(255, 255, 0, 255)":"yellow","rgba(255, 0, 0, 255)":"red","rgba(0, 255, 0, 255)":"green","rgba(0, 0, 255, 255)":"blue","rgba(0, 0, 0, 1)":"black","rgba(255, 255, 255, 1)":"white","rgba(255, 255, 0, 1)":"yellow","rgba(255, 0, 0, 1)":"red","rgba(0, 255, 0, 1)":"green","rgba(0, 0, 255, 1)":"blue","rgba(0, 0, 0)":"black","rgba(255, 255, 255)":"white","rgba(255, 255, 0)":"yellow","rgba(255, 0, 0)":"red","rgba(0, 255, 0)":"green","rgba(0, 0, 255)":"blue","#000000FF":"black","#FFFFFFFF":"white","#FFFF00FF":"yellow","#FF0000FF":"red","#00FF00FF":"green","#0000FFFF":"blue","#000000":"black","#FFFFFF":"white","#FFFF00":"yellow","#FF0000":"red","#00FF00":"green","#0000FF":"blue"};function S(e){var t=(e=e||{}).containerElement;if(!(t instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var o=!1,S=75,l=!0,I=!1,u=!1,A=!1,d=[],c=[],O=0,R=function(e){if(!I){I=!0;var t=!1;E({method:"subscribe",parameters:{mediaId:o,subscribe:!0}},(function(a){if(a.sourceInfo&&!t){t=!0;var i=a.sourceInfo.programInfo[0];!(function(e){if(d=[],e.numSubtitleTracks){for(var t=0;t=p.HAVE_METADATA&&null!==t&&isFinite(t))try{p.currentTime=parseInt(t,10)/1e3}catch(e){}break;case"selectedSubtitlesTrackId":if(null!==P)if(0===(t||"").indexOf("EMBEDDED_")){l&&m(!0),u=t;var a=parseInt(t.replace("EMBEDDED_",""));E({method:"selectTrack",parameters:{type:"text",mediaId:o,index:a}},(function(){var e=W("subtitlesTracks").find((function(e){return e.id===t}));d=d.map((function(e){return e.mode=e.id===u?"showing":"disabled",e})),e&&(g.emit("subtitlesTrackLoaded",e),G("selectedSubtitlesTrackId"))}))}else t||m(!1);break;case"subtitlesOffset":if(null!==t&&isFinite(t)){y=Math.max(0,Math.min(100,parseInt(t,10)));var i=0===(O=5)?-3:O<=2?-2:O<=3?-1:O<=5?0:O<=10?1:O<=25?2:O<=50?3:O<=100&&4;!1===i&&(i=0),E({method:"setSubtitlePosition",parameters:{mediaId:o,position:i}},(function(){})),G("subtitlesOffset")}break;case"subtitlesSize":if(null!==t&&isFinite(t)){S=Math.max(0,parseInt(t,10));var n=(I=S)<=75?1:I<=100?2:I<=150?3:I<=250&&4;!1===n&&(n=2),E({method:"setSubtitleFontSize",parameters:{mediaId:o,fontSize:n}},(function(){})),G("subtitlesSize")}break;case"subtitlesTextColor":if("string"==typeof t){var r="white";s[t]&&T.indexOf(s[t])>-1&&(r=s[t]),E({method:"setSubtitleCharacterColor",parameters:{mediaId:o,charColor:r}},(function(){})),D=t,G("subtitlesTextColor")}break;case"subtitlesBackgroundColor":"string"==typeof t&&(s[t]&&T.indexOf(s[t])>-1?E({method:"setSubtitleBackgroundColor",parameters:{mediaId:o,color:s[t]}},(function(){C||E({method:"setSubtitleBackgroundOpacity",parameters:{mediaId:o,bgOpacity:255}},(function(){C=255}))})):E({method:"setSubtitleBackgroundOpacity",parameters:{mediaId:o,bgOpacity:0}},(function(){C=0})),h=t,G("subtitlesBackgroundColor"));break;case"selectedAudioTrackId":if(0===(t||"").indexOf("EMBEDDED_")){A=t;a=parseInt(t.replace("EMBEDDED_",""));if(E({method:"selectTrack",parameters:{type:"audio",mediaId:o,index:a}},(function(){var e=W("audioTracks").find((function(e){return e.id===t}));c=c.map((function(e){return e.mode=e.id===A?"showing":"disabled",e})),e&&(g.emit("audioTrackLoaded",e),G("selectedAudioTrackId"))})),p.audioTracks){for(var _=0;_4&&(clearInterval(E),n())}),300)}else U(Object.assign({},r.UNSUPPORTED_STREAM,{critical:!0,stream:a?a.stream:null}));break;case"unload":P=null,v=null,Array.from(p.textTracks).forEach((function(e){e.oncuechange=null})),p.removeAttribute("src"),p.load(),G("stream"),G("paused"),G("time"),G("duration"),G("buffering"),G("buffered"),G("subtitlesTracks"),G("selectedSubtitlesTrackId"),G("audioTracks"),G("selectedAudioTrackId");break;case"destroy":F("unload"),B=!0,G("subtitlesOffset"),G("subtitlesSize"),G("subtitlesTextColor"),G("subtitlesBackgroundColor"),G("volume"),G("muted"),G("playbackSpeed"),g.removeAllListeners(),p.onerror=null,p.onended=null,p.onpause=null,p.onplay=null,p.ontimeupdate=null,p.ondurationchange=null,p.onwaiting=null,p.onseeking=null,p.onseeked=null,p.onstalled=null,p.onplaying=null,p.oncanplay=null,p.canplaythrough=null,p.onloadeddata=null,p.onloadedmetadata=null,p.onvolumechange=null,p.onratechange=null,p.textTracks.onchange=null,t.removeChild(p),t.removeChild(L)}var n,E}this.on=function(e,t){if(B)throw new Error("Video is destroyed");g.on(e,t)},this.dispatch=function(e){if(B)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":return t=e.propName,void(M.hasOwnProperty(t)&&(g.emit("propValue",t,W(t)),M[t]=!0));case"setProp":return void k(e.propName,e.propValue);case"command":return void F(e.commandName,e.commandArgs)}var t;throw new Error("Invalid action dispatched: "+JSON.stringify(e))}}S.canPlayStream=function(){return Promise.resolve(!0)},S.manifest={name:"WebOsVideo",external:!1,props:["stream","paused","time","duration","buffering","buffered","audioTracks","selectedAudioTrackId","subtitlesTracks","selectedSubtitlesTrackId","subtitlesOffset","subtitlesSize","subtitlesTextColor","subtitlesBackgroundColor","volume","muted","playbackSpeed"],commands:["load","unload","destroy"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded","audioTrackLoaded"]},e.exports=S},18846:(e,t,o)=>{var a=o(64333);e.exports=a},59736:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682),r=o(39657);function E(e){var t=null!==(e=e||{}).timeChangedTimeout&&isFinite(e.timeChangedTimeout)?parseInt(e.timeChangedTimeout,10):100,o=e.containerElement;if(!(o instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var E=document.createElement("script");E.type="text/javascript",E.src="https://www.youtube.com/iframe_api",E.onload=function(){if(u)return;if(!YT||"function"!=typeof YT.ready)return void O();YT.ready((function(){u||(YT&&YT.PlayerState&&"function"==typeof YT.Player?s=new YT.Player(_,{width:"100%",height:"100%",playerVars:{autoplay:1,cc_load_policy:3,controls:0,disablekb:1,enablejsapi:1,fs:0,iv_load_policy:3,loop:0,modestbranding:1,playsinline:1,rel:0},events:{onError:R,onReady:N,onApiChange:m,onStateChange:L}}):O())}))},E.onerror=O,o.appendChild(E);var _=document.createElement("div");_.style.width="100%",_.style.height="100%",_.style.backgroundColor="black",o.appendChild(_);var T=window.setInterval((function(){h("time"),h("volume"),h("muted"),h("playbackSpeed")}),t),s=null,S=!1,l=null,I=new a,u=!1,A=null,d=null,c={stream:!1,loaded:!1,paused:!1,time:!1,duration:!1,buffering:!1,volume:!1,muted:!1,playbackSpeed:!1,subtitlesTracks:!1,selectedSubtitlesTrackId:!1};function O(){u||D(Object.assign({},r.YOUTUBE_VIDEO.API_LOAD_FAILED,{critical:!0}))}function R(e){if(!u){var t;switch(e.data){case 2:t=r.YOUTUBE_VIDEO.INVALID_PARAMETER;break;case 5:t=r.YOUTUBE_VIDEO.HTML5_VIDEO;break;case 100:t=r.YOUTUBE_VIDEO.VIDEO_NOT_FOUND;break;case 101:case 150:t=r.YOUTUBE_VIDEO.VIDEO_NOT_EMBEDDABLE;break;default:t=r.UNKNOWN_ERROR}D(Object.assign({},t,{critical:!0,error:e}))}}function N(){u||(S=!0,null!==l&&(C("load",l),l=null))}function m(){u||("function"==typeof s.loadModule&&s.loadModule("captions"),"function"==typeof s.setOption&&s.setOption("captions","track",{}),h("paused"),h("time"),h("duration"),h("buffering"),h("volume"),h("muted"),h("playbackSpeed"),h("subtitlesTracks"),h("selectedSubtitlesTrackId"))}function L(e){switch(h("buffering"),e.data){case YT.PlayerState.ENDED:I.emit("ended");break;case YT.PlayerState.CUED:case YT.PlayerState.UNSTARTED:case YT.PlayerState.PAUSED:case YT.PlayerState.PLAYING:h("paused"),h("time"),h("duration")}}function p(e){switch(e){case"stream":return A;case"loaded":return null!==A||null;case"paused":return null===A||"function"!=typeof s.getPlayerState?null:s.getPlayerState()!==YT.PlayerState.PLAYING;case"time":return null!==A&&"function"==typeof s.getCurrentTime&&null!==s.getCurrentTime()&&isFinite(s.getCurrentTime())?Math.floor(1e3*s.getCurrentTime()):null;case"duration":return null!==A&&"function"==typeof s.getDuration&&null!==s.getDuration()&&isFinite(s.getDuration())?Math.floor(1e3*s.getDuration()):null;case"buffering":return null===A||"function"!=typeof s.getPlayerState?null:s.getPlayerState()===YT.PlayerState.BUFFERING;case"volume":return null!==A&&"function"==typeof s.getVolume&&null!==s.getVolume()&&isFinite(s.getVolume())?s.getVolume():null;case"muted":return null===A||"function"!=typeof s.isMuted?null:s.isMuted();case"playbackSpeed":return null!==A&&"function"==typeof s.getPlaybackRate&&null!==s.getPlaybackRate()&&isFinite(s.getPlaybackRate())?s.getPlaybackRate():null;case"subtitlesTracks":return null===A||"function"!=typeof s.getOption?[]:(s.getOption("captions","tracklist")||[]).filter((function(e){return e&&"string"==typeof e.languageCode})).map((function(e,t){return Object.freeze({id:"EMBEDDED_"+String(t),lang:e.languageCode,label:"string"==typeof e.displayName?e.displayName:e.languageCode,origin:"EMBEDDED",embedded:!0})}));case"selectedSubtitlesTrackId":return null===A?null:d;default:return null}}function D(e){I.emit("error",e),e.critical&&C("unload")}function h(e){c[e]&&I.emit("propChanged",e,p(e))}function C(e,t){switch(e){case"load":if(C("unload"),t&&t.stream&&"string"==typeof t.stream.ytId)if(S){A=t.stream,h("stream"),h("loaded");var a="boolean"!=typeof t.autoplay||t.autoplay,i=null!==t.time&&isFinite(t.time)?parseInt(t.time,10)/1e3:0;a&&"function"==typeof s.loadVideoById?s.loadVideoById({videoId:t.stream.ytId,startSeconds:i}):"function"==typeof s.cueVideoById&&s.cueVideoById({videoId:t.stream.ytId,startSeconds:i}),h("paused"),h("time"),h("duration"),h("buffering"),h("volume"),h("muted"),h("playbackSpeed"),h("subtitlesTracks"),h("selectedSubtitlesTrackId")}else l=t;else D(Object.assign({},r.UNSUPPORTED_STREAM,{critical:!0,stream:t?t.stream:null}));break;case"unload":l=null,A=null,h("stream"),h("loaded"),d=null,S&&"function"==typeof s.stopVideo&&s.stopVideo(),h("paused"),h("time"),h("duration"),h("buffering"),h("volume"),h("muted"),h("playbackSpeed"),h("subtitlesTracks"),h("selectedSubtitlesTrackId");break;case"destroy":C("unload"),u=!0,I.removeAllListeners(),clearInterval(T),S&&"function"==typeof s.destroy&&s.destroy(),o.removeChild(E),o.removeChild(_)}}this.on=function(e,t){if(u)throw new Error("Video is destroyed");I.on(e,t)},this.dispatch=function(e){if(u)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":return t=e.propName,void(c.hasOwnProperty(t)&&(I.emit("propValue",t,p(t)),c[t]=!0));case"setProp":return void(function(e,t){switch(e){case"paused":null!==A&&(t?"function"==typeof s.pauseVideo&&s.pauseVideo():"function"==typeof s.playVideo&&s.playVideo());break;case"time":null!==A&&"function"==typeof s.seekTo&&null!==t&&isFinite(t)&&s.seekTo(parseInt(t,10)/1e3);break;case"volume":null!==A&&null!==t&&isFinite(t)&&("function"==typeof s.unMute&&s.unMute(),"function"==typeof s.setVolume&&s.setVolume(Math.max(0,Math.min(100,parseInt(t,10)))),h("muted"),h("volume"));break;case"muted":null!==A&&(t?"function"==typeof s.mute&&s.mute():"function"==typeof s.unMute&&s.unMute(),h("muted"));break;case"playbackSpeed":null!==A&&"function"==typeof s.setPlaybackRate&&isFinite(t)&&(s.setPlaybackRate(t),h("playbackSpeed"));break;case"selectedSubtitlesTrackId":if(null!==A){d=null;var o=p("subtitlesTracks").find((function(e){return e.id===t}));"function"==typeof s.setOption&&(o?(d=o.id,s.setOption("captions","track",{languageCode:o.lang}),I.emit("subtitlesTrackLoaded",o)):s.setOption("captions","track",{})),h("selectedSubtitlesTrackId")}}})(e.propName,e.propValue);case"command":return void C(e.commandName,e.commandArgs)}var t;throw new Error("Invalid action dispatched: "+JSON.stringify(e))}}E.canPlayStream=function(e){return Promise.resolve(e&&"string"==typeof e.ytId)},E.manifest={name:"YouTubeVideo",external:!1,props:["stream","loaded","paused","time","duration","buffering","volume","muted","playbackSpeed","subtitlesTracks","selectedSubtitlesTrackId"],commands:["load","unload","destroy"],events:["propValue","propChanged","ended","error","subtitlesTrackLoaded"]},e.exports=E},33142:(e,t,o)=>{var a=o(59736);e.exports=a},39657:e=>{e.exports={CHROMECAST_SENDER_VIDEO:{INVALID_MESSAGE_RECEIVED:{code:100,message:"Invalid message received"},MESSAGE_SEND_FAILED:{code:101,message:"Failed to send message"}},YOUTUBE_VIDEO:{API_LOAD_FAILED:{code:90,message:"YouTube player iframe API failed to load"},INVALID_PARAMETER:{code:91,message:"The request contains an invalid parameter value"},HTML5_VIDEO:{code:92,message:"The requested content cannot be played in an HTML5 player"},VIDEO_NOT_FOUND:{code:93,message:"The video requested was not found"},VIDEO_NOT_EMBEDDABLE:{code:94,message:"The owner of the requested video does not allow it to be played in embedded players"}},HTML_VIDEO:{MEDIA_ERR_ABORTED:{code:80,message:"Fetching process aborted"},MEDIA_ERR_NETWORK:{code:81,message:"Error occurred when downloading"},MEDIA_ERR_DECODE:{code:82,message:"Error occurred when decoding"},MEDIA_ERR_SRC_NOT_SUPPORTED:{code:83,message:"Video is not supported"}},WITH_HTML_SUBTITLES:{LOAD_FAILED:{code:70,message:"Failed to load external subtitles"}},WITH_STREAMING_SERVER:{CONVERT_FAILED:{code:60,message:"Your device does not support the stream"}},UNKNOWN_ERROR:{code:1,message:"Unknown error"},UNSUPPORTED_STREAM:{code:2,message:"Stream is not supported"}}},91654:(e,t,o)=>{var a=o(35010);e.exports=a},55015:e=>{var t,o,a=[{codec:"h264",force:window.chrome||window.cast,mime:'video/mp4; codecs="avc1.42E01E"'},{codec:"h265",mime:'video/mp4; codecs="hev1.1.6.L150.B0"',aliases:["hevc"]},{codec:"vp8",mime:'video/mp4; codecs="vp8"'},{codec:"vp9",mime:'video/mp4; codecs="vp9"'}],i=[{codec:"aac",mime:'audio/mp4; codecs="mp4a.40.2"'},{codec:"mp3",mime:'audio/mp4; codecs="mp3"'},{codec:"ac3",mime:'audio/mp4; codecs="ac-3"'},{codec:"eac3",mime:'audio/mp4; codecs="ec-3"'},{codec:"vorbis",mime:'audio/mp4; codecs="vorbis"'},{codec:"opus",mime:'audio/mp4; codecs="opus"'}];function n(e,t){return e.force||t.mediaElement.canPlayType(e.mime)?[e.codec].concat(e.aliases||[]):[]}e.exports=(t=document.createElement("video"),o=["mp4"],(window.chrome||window.cast)&&o.push("matroska,webm"),{formats:o,videoCodecs:a.map((function(e){return n(e,{mediaElement:t})})).reduce((function(e,t){return e.concat(t)}),[]),audioCodecs:i.map((function(e){return n(e,{mediaElement:t})})).reduce((function(e,t){return e.concat(t)}),[]),maxAudioChannels:(function(){if(/firefox/i.test(window.navigator.userAgent))return 6;if(!window.AudioContext||window.chrome||window.cast)return 2;var e=(new AudioContext).destination.maxChannelCount;return e>0?e:2})()})},69490:e=>{e.exports=function(e,t){if(tt?a=n-1:(e[n]{var a=o(4253);e.exports=a},86950:e=>{function t(e){for(var t="",o=(e=e.replace(/<[a-zA-Z/][^>]*>/g,"")).split(/\n/);o.length>3;){for(var a=3;a\s*(\d+):(\d+):(\d+)(?:,(\d+))?/);return n?(t+=n[1]+":"+n[2]+":"+n[3]+"."+n[4]+" --\x3e "+n[5]+":"+n[6]+":"+n[7]+"."+n[8]+"\n",o[i+=1]&&(t+=o[i]+"\n\n"),t):""}e.exports={convert:function(e){if(e.includes("WEBVTT"))return e;try{return(function(e){var o=e.replace(/\r+/g,""),a=(o=o.replace(/^\s+|\s+$/g,"")).split("\n\n"),i="";if(a.length>0){i+="WEBVTT\n\n";for(var n=0;n{var a=o(58369),i=o(69490);e.exports={parse:function(e){return new Promise((function(t,o){var n=new a.WebVTT.Parser(window,a.WebVTT.StringDecoder()),r=[],E=[],_={};n.oncue=function(e){var t={startTime:1e3*e.startTime|0,endTime:1e3*e.endTime|0,text:e.text};E.push(t),_[t.startTime]=_[t.startTime]||[],_[t.endTime]=_[t.endTime]||[]},n.onparsingerror=function(e){0===e.code?(n.oncue=null,n.onparsingerror=null,n.onflush=null,o(e)):(console.warn("Subtitles parsing error",e),r.push(e))},n.onflush=function(){_.times=Object.keys(_).map((function(e){return parseInt(e,10)})).sort((function(e,t){return e-t}));for(var e=0;e{var a=o(58369),i=o(69490);e.exports={render:function(e,t){var o=[],n=i(e.times,t);if(-1!==n)for(var r=e[e.times[n]],E=0;E{var a=o(26729),i=o(83465),n=o(62682),r=o(6767),E=o(39657),_=o(45517),T=o(42913),s=o(86950);e.exports=function(e){function t(t){var o=new e(t=t||{});o.on("error",(function(e){A.emit("error",e),e.critical&&v("unload")})),o.on("propValue",f.bind(null,"propValue")),o.on("propChanged",f.bind(null,"propChanged")),e.manifest.events.filter((function(e){return!["error","propValue","propChanged"].includes(e)})).forEach((function(e){o.on(e,(function(e){return function(){A.emit.apply(A,[e].concat(Array.from(arguments)))}})(e))}));var S=t.containerElement;if(!(S instanceof HTMLElement))throw new Error("Container element required to be instance of HTMLElement");var l=document.createElement("div");l.style.position="absolute",l.style.right="0",l.style.bottom="0",l.style.left="0",l.style.zIndex="1",l.style.textAlign="center",S.style.position="relative",S.style.zIndex="0",S.appendChild(l);var I={time:null},u=null,A=new a,d=!1,c=[],O=null,R=null,N=100,m=0,L="rgb(255, 255, 255)",p="rgba(0, 0, 0, 0)",D="rgb(34, 34, 34)",h={extraSubtitlesTracks:!1,selectedExtraSubtitlesTrackId:!1,extraSubtitlesDelay:!1,extraSubtitlesSize:!1,extraSubtitlesOffset:!1,extraSubtitlesTextColor:!1,extraSubtitlesBackgroundColor:!1,extraSubtitlesOutlineColor:!1};function C(){for(;l.hasChildNodes();)l.removeChild(l.lastChild);null!==u&&null!==I.time&&isFinite(I.time)&&(l.style.bottom=m+"%",T.render(u,I.time+R).forEach((function(e){e.style.display="inline-block",e.style.padding="0.2em",e.style.whiteSpace="pre-wrap",e.style.fontSize=Math.floor(N/25)+"vmin",e.style.color=L,e.style.backgroundColor=p,e.style.textShadow="1px 1px 0.1em "+D,l.appendChild(e),l.appendChild(document.createElement("br"))})))}function f(e,t,o){if("time"===t)I.time=o,C();A.emit(e,t,B(t,o))}function g(e){h[e]&&A.emit("propChanged",e,B(e,null))}function B(e,t){switch(e){case"extraSubtitlesTracks":return d?[]:c.slice();case"selectedExtraSubtitlesTrackId":return d?null:O;case"extraSubtitlesDelay":return d?null:R;case"extraSubtitlesSize":return d?null:N;case"extraSubtitlesOffset":return d?null:m;case"extraSubtitlesTextColor":return d?null:L;case"extraSubtitlesBackgroundColor":return d?null:p;case"extraSubtitlesOutlineColor":return d?null:D;default:return t}}function P(e,t){switch(e){case"selectedExtraSubtitlesTrackId":u=null,O=null,R=null;var a=c.find((function(e){return e.id===t}));return a&&(O=a.id,R=0,fetch(a.url).then((function(e){if(e.ok)return e.text();throw new Error(e.status+" ("+e.statusText+")")})).then((function(e){return s.convert(e)})).then((function(e){return _.parse(e)})).then((function(e){O===a.id&&(u=e,C(),A.emit("extraSubtitlesTrackLoaded",a))})).catch((function(e){O===a.id&&(function(e){A.emit("error",e),e.critical&&(v("unload"),o.dispatch({type:"command",commandName:"unload"}))})(Object.assign({},E.WITH_HTML_SUBTITLES.LOAD_FAILED,{error:e,track:a,critical:!1}))}))),C(),g("selectedExtraSubtitlesTrackId"),g("extraSubtitlesDelay"),!0;case"extraSubtitlesDelay":return null!==O&&null!==t&&isFinite(t)&&(R=parseInt(t,10),C(),g("extraSubtitlesDelay")),!0;case"extraSubtitlesSize":return null!==t&&isFinite(t)&&(N=Math.max(0,parseInt(t,10)),C(),g("extraSubtitlesSize")),!0;case"extraSubtitlesOffset":return null!==t&&isFinite(t)&&(m=Math.max(0,Math.min(100,parseInt(t,10))),C(),g("extraSubtitlesOffset")),!0;case"extraSubtitlesTextColor":if("string"==typeof t){try{L=r(t).rgb().string()}catch(e){console.error("withHTMLSubtitles",e)}C(),g("extraSubtitlesTextColor")}return!0;case"extraSubtitlesBackgroundColor":if("string"==typeof t){try{p=r(t).rgb().string()}catch(e){console.error("withHTMLSubtitles",e)}C(),g("extraSubtitlesBackgroundColor")}return!0;case"extraSubtitlesOutlineColor":if("string"==typeof t){try{D=r(t).rgb().string()}catch(e){console.error("withHTMLSubtitles",e)}C(),g("extraSubtitlesOutlineColor")}return!0;default:return!1}}function v(e,t){switch(e){case"addExtraSubtitlesTracks":return t&&Array.isArray(t.tracks)&&(c=c.concat(t.tracks).filter((function(e,t,o){return e&&"string"==typeof e.id&&"string"==typeof e.url&&"string"==typeof e.lang&&"string"==typeof e.label&&"string"==typeof e.origin&&!e.embedded&&t===o.findIndex((function(t){return t.id===e.id}))})),g("extraSubtitlesTracks")),!0;case"load":return v("unload"),t.stream&&Array.isArray(t.stream.subtitles)&&v("addExtraSubtitlesTracks",{tracks:t.stream.subtitles.map((function(e){return Object.assign({},e,{origin:"EXCLUSIVE",exclusive:!0,embedded:!1})}))}),!1;case"unload":return u=null,c=[],O=null,R=null,C(),g("extraSubtitlesTracks"),g("selectedExtraSubtitlesTrackId"),g("extraSubtitlesDelay"),!1;case"destroy":return v("unload"),d=!0,g("extraSubtitlesSize"),g("extraSubtitlesOffset"),g("extraSubtitlesTextColor"),g("extraSubtitlesBackgroundColor"),g("extraSubtitlesOutlineColor"),o.dispatch({type:"command",commandName:"destroy"}),A.removeAllListeners(),S.removeChild(l),!0;default:return!1}}this.on=function(e,t){if(d)throw new Error("Video is destroyed");A.on(e,t)},this.dispatch=function(e){if(d)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":if((function(e){switch(e){case"extraSubtitlesTracks":case"selectedExtraSubtitlesTrackId":case"extraSubtitlesDelay":case"extraSubtitlesSize":case"extraSubtitlesOffset":case"extraSubtitlesTextColor":case"extraSubtitlesBackgroundColor":case"extraSubtitlesOutlineColor":return A.emit("propValue",e,B(e,null)),h[e]=!0,!0;default:return!1}})(e.propName))return;break;case"setProp":if(P(e.propName,e.propValue))return;break;case"command":if(v(e.commandName,e.commandArgs))return}o.dispatch(e)}}return t.canPlayStream=function(t){return e.canPlayStream(t)},t.manifest={name:e.manifest.name+"WithHTMLSubtitles",external:e.manifest.external,props:e.manifest.props.concat(["extraSubtitlesTracks","selectedExtraSubtitlesTrackId","extraSubtitlesDelay","extraSubtitlesSize","extraSubtitlesOffset","extraSubtitlesTextColor","extraSubtitlesBackgroundColor","extraSubtitlesOutlineColor"]).filter((function(e,t,o){return o.indexOf(e)===t})),commands:e.manifest.commands.concat(["load","unload","destroy","addExtraSubtitlesTracks"]).filter((function(e,t,o){return o.indexOf(e)===t})),events:e.manifest.events.concat(["propValue","propChanged","error","extraSubtitlesTrackLoaded"]).filter((function(e,t,o){return o.indexOf(e)===t}))},t}},17054:(e,t,o)=>{var a=o(49566),i=o(97190);e.exports=function(e,t,o){return new Promise((function(n,r){if("string"!=typeof t.url)"string"!=typeof t.infoHash?r(new Error("Stream cannot be converted")):i(e,t.infoHash,t.fileIdx,t.announce,o).then((function(e){n({url:e.url,infoHash:e.infoHash,fileIdx:e.fileIdx})})).catch((function(e){r(e)}));else if(0===t.url.indexOf("magnet:")){var E;try{if(!(E=a.decode(t.url))||"string"!=typeof E.infoHash)throw new Error("Failed to decode magnet url")}catch(e){return void r(e)}var _=Array.isArray(E.announce)?E.announce.map((function(e){return"tracker:"+e})):[];i(e,E.infoHash,null,_,o).then((function(e){n({url:e.url,infoHash:e.infoHash,fileIdx:e.fileIdx})})).catch((function(e){r(e)}))}else n({url:t.url})}))}},97190:(e,t,o)=>{var a=o(8575);function i(e,t,o,i){var n=Array.isArray(i)&&i.length>0?"?"+new URLSearchParams(i.map((function(e){return["tr",e]}))):"";return{url:a.resolve(e,"/"+encodeURIComponent(t)+"/"+encodeURIComponent(o))+n,infoHash:t,fileIdx:o,sources:i}}e.exports=function(e,t,o,n,r){if((!Array.isArray(n)||0===n.length)&&null!==o&&isFinite(o))return Promise.resolve(i(e,t,o,n));var E={torrent:{infoHash:t}};return Array.isArray(n)&&n.length>0&&(E.peerSearch={sources:["dht:"+t].concat(n).filter((function(e,t,o){return o.indexOf(e)===t})),min:40,max:200}),null!==o&&isFinite(o)?E.guessFileIdx=!1:(E.guessFileIdx={},r&&(null!==r.season&&isFinite(r.season)&&(E.guessFileIdx.season=r.season),null!==r.episode&&isFinite(r.episode)&&(E.guessFileIdx.episode=r.episode))),fetch(a.resolve(e,"/"+encodeURIComponent(t)+"/create"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(E)}).then((function(e){if(e.ok)return e.json();throw new Error(e.status+" ("+e.statusText+")")})).then((function(a){return i(e,t,E.guessFileIdx?a.guessedFileIdx:o,E.peerSearch?E.peerSearch.sources:[])}))}},94536:(e,t,o)=>{var a=o(8575);function i(e,t,o){var i=o&&"string"==typeof o.videoHash?o.videoHash:null,n=o&&isFinite(o.videoSize)?o.videoSize:null;if("string"==typeof i&&null!==n&&isFinite(n))return Promise.resolve({hash:i,size:n});var r=new URLSearchParams([["videoUrl",t]]);return fetch(a.resolve(e,"/opensubHash?"+r.toString())).then((function(e){if(e.ok)return e.json();throw new Error(e.status+" ("+e.statusText+")")})).then((function(e){if(e.error)throw new Error(e.error);return{hash:"string"==typeof i?i:e.result&&"string"==typeof e.result.hash?e.result.hash:null,size:null!==n&&isFinite(n)?n:e.result&&(e.result.size,1)?e.result.size:null}}))}function n(e,t,o,i,n){return n&&"string"==typeof n.filename?Promise.resolve(n.filename):o?fetch(a.resolve(e,"/"+encodeURIComponent(o)+"/"+encodeURIComponent(i)+"/stats.json")).then((function(e){if(e.ok)return e.json();throw new Error(e.status+" ("+e.statusText+")")})).then((function(e){if(!e||"string"!=typeof e.streamName)throw new Error("Could not retrieve filename from torrent");return e.streamName})):Promise.resolve(decodeURIComponent(t.split("/").pop()))}e.exports=function(e,t,o,a,r){return Promise.allSettled([i(e,t,r),n(e,t,o,a,r)]).then((function(e){var t={hash:null,size:null,filename:null};return"fulfilled"===e[0].status?(t.hash=e[0].value.hash,t.size=e[0].value.size):e[0].reason&&console.error(e[0].reason),"fulfilled"===e[1].status?t.filename=e[1].value:e[1].reason&&console.error(e[1].reason),t}))}},5690:(e,t,o)=>{var a=o(47746);e.exports=a},47746:(e,t,o)=>{var a=o(26729),i=o(8575),n=o(542),r=o(83465),E=o(62682),_=o(55015),T=o(17054),s=o(94536),S=o(39657);e.exports=function(e){function t(o){var l=new e(o=o||{});l.on("error",(function(e){O.emit("error",e),e.critical&&h("unload")})),l.on("propValue",m.bind(null,"propValue")),l.on("propChanged",m.bind(null,"propChanged")),e.manifest.events.filter((function(e){return!["error","propValue","propChanged"].includes(e)})).forEach((function(e){l.on(e,(function(e){return function(){O.emit.apply(O,[e].concat(Array.from(arguments)))}})(e))}));var I=this,u=null,A=!1,d=[],c=null,O=new a,R=!1,N={stream:!1,videoParams:!1};function m(e,t,o){O.emit(e,t,D(t,o))}function L(e){N[e]&&O.emit("propChanged",e,D(e,null))}function p(e){O.emit("error",e),e.critical&&(h("unload"),l.dispatch({type:"command",commandName:"unload"}))}function D(e,t){switch(e){case"stream":return null!==u?u.stream:null;case"videoParams":return c;default:return t}}function h(e,o){switch(e){case"load":return o&&o.stream&&"string"==typeof o.streamingServerURL?(h("unload"),l.dispatch({type:"command",commandName:"unload"}),u=o,L("stream"),T(o.streamingServerURL,o.stream,o.seriesInfo).then((function(e){var a=e.url,r=e.infoHash,E=e.fileIdx,T=Array.isArray(o.formats)?o.formats:_.formats,s=Array.isArray(o.videoCodecs)?o.videoCodecs:_.videoCodecs,S=Array.isArray(o.audioCodecs)?o.audioCodecs:_.audioCodecs,l=null!==o.maxAudioChannels&&isFinite(o.maxAudioChannels)?o.maxAudioChannels:_.maxAudioChannels,I=Object.assign({},o,{formats:T,videoCodecs:s,audioCodecs:S,maxAudioChannels:l});return(o.forceTranscoding?Promise.resolve(!1):t.canPlayStream({url:a},I)).catch((function(e){return console.warn("Media probe error",e),!1})).then((function(e){if(e)return{mediaURL:a,infoHash:r,fileIdx:E,stream:{url:a}};var t=n(),_=new URLSearchParams([["mediaURL",a]]);return o.forceTranscoding&&_.set("forceTranscoding","1"),s.forEach((function(e){_.append("videoCodecs",e)})),S.forEach((function(e){_.append("audioCodecs",e)})),_.set("maxAudioChannels",l),{mediaURL:a,infoHash:r,fileIdx:E,stream:{url:i.resolve(o.streamingServerURL,"/hlsv2/"+t+"/master.m3u8?"+_.toString()),subtitles:Array.isArray(o.stream.subtitles)?o.stream.subtitles.map((function(e){return Object.assign({},e,{url:"string"==typeof e.url?i.resolve(o.streamingServerURL,"/subtitles.vtt?"+new URLSearchParams([["from",e.url]]).toString()):e.url})})):[],behaviorHints:{headers:{"content-type":"application/vnd.apple.mpegurl"}}}}}))})).then((function(e){o===u&&(l.dispatch({type:"command",commandName:"load",commandArgs:Object.assign({},o,{stream:e.stream})}),A=!0,(function(){for(;d.length>0;){var e=d.shift();I.dispatch.call(I,e)}})(),s(o.streamingServerURL,e.mediaURL,e.infoHash,e.fileIdx,o.stream.behaviorHints).then((function(e){o===u&&(c=e,L("videoParams"))})).catch((function(e){o===u&&(console.error(e),c={hash:null,size:null,filename:null},L("videoParams"))})))})).catch((function(e){o===u&&p(Object.assign({},S.WITH_STREAMING_SERVER.CONVERT_FAILED,{error:e,critical:!0,stream:o.stream,streamingServerURL:o.streamingServerURL}))}))):p(Object.assign({},S.UNSUPPORTED_STREAM,{critical:!0,stream:o?o.stream:null,streamingServerURL:o&&"string"==typeof o.streamingServerURL?o.streamingServerURL:null})),!0;case"addExtraSubtitlesTracks":return u&&o&&Array.isArray(o.tracks)&&(A?l.dispatch({type:"command",commandName:"addExtraSubtitlesTracks",commandArgs:Object.assign({},o,{tracks:o.tracks.map((function(e){return Object.assign({},e,{url:"string"==typeof e.url?i.resolve(u.streamingServerURL,"/subtitles.vtt?"+new URLSearchParams([["from",e.url]]).toString()):e.url})}))})}):d.push({type:"command",commandName:"addExtraSubtitlesTracks",commandArgs:o})),!0;case"unload":return u=null,A=!1,d=[],c=null,L("stream"),L("videoParams"),!1;case"destroy":return h("unload"),R=!0,l.dispatch({type:"command",commandName:"destroy"}),O.removeAllListeners(),!0;default:return!A&&(d.push({type:"command",commandName:e,commandArgs:o}),!0)}}this.on=function(e,t){if(R)throw new Error("Video is destroyed");O.on(e,t)},this.dispatch=function(e){if(R)throw new Error("Video is destroyed");if(e)switch((e=E(r(e))).type){case"observeProp":if((function(e){switch(e){case"stream":case"videoParams":return O.emit("propValue",e,D(e,null)),N[e]=!0,!0;default:return!1}})(e.propName))return;break;case"command":if(h(e.commandName,e.commandArgs))return}l.dispatch(e)}}return t.canPlayStream=function(t,o){return e.canPlayStream(t).then((function(e){if(!e)throw new Error("Fallback using /hlsv2/probe");return e})).catch((function(){var e=new URLSearchParams([["mediaURL",t.url]]);return fetch(i.resolve(o.streamingServerURL,"/hlsv2/probe?"+e.toString())).then((function(e){return e.json()})).then((function(e){var t=o.formats.some((function(t){return-1!==e.format.name.indexOf(t)})),a=e.streams.every((function(e){return"audio"===e.track?e.channels<=o.maxAudioChannels&&-1!==o.audioCodecs.indexOf(e.codec):"video"!==e.track||-1!==o.videoCodecs.indexOf(e.codec)}));return t&&a}))}))},t.manifest={name:e.manifest.name+"WithStreamingServer",external:e.manifest.external,props:e.manifest.props.concat(["stream","videoParams"]).filter((function(e,t,o){return o.indexOf(e)===t})),commands:e.manifest.commands.concat(["load","unload","destroy","addExtraSubtitlesTracks"]).filter((function(e,t,o){return o.indexOf(e)===t})),events:e.manifest.events.concat(["propValue","propChanged","error"]).filter((function(e,t,o){return o.indexOf(e)===t}))},t}},29450:(e,t,o)=>{var a=o(6693);e.exports=a},6693:(e,t,o)=>{var a=o(26729),i=o(83465),n=o(62682);e.exports=function(e){function t(t){var o=new e(t=t||{});o.on("propValue",s.bind(null,"propValue")),o.on("propChanged",s.bind(null,"propChanged")),e.manifest.events.filter((function(e){return!["propValue","propChanged"].includes(e)})).forEach((function(e){o.on(e,(function(e){return function(){E.emit.apply(E,[e].concat(Array.from(arguments)))}})(e))}));var r=null,E=new a,_=!1,T={videoParams:!1};function s(e,t,o){"videoParams"!==t&&E.emit(e,t,S(t,o)),"stream"===t&&(r=o,(function(e){T[e]&&E.emit("propChanged",e,S(e,null))})("videoParams"))}function S(e,t){return"videoParams"===e?null===r?null:{hash:r.behaviorHints&&"string"==typeof r.behaviorHints.videoHash?r.behaviorHints.videoHash:null,size:r.behaviorHints&&null!==r.behaviorHints.videoSize&&isFinite(r.behaviorHints.videoSize)?r.behaviorHints.videoSize:null,filename:r.behaviorHints&&"string"==typeof r.behaviorHints.filename?r.behaviorHints.filename:null}:t}this.on=function(e,t){if(_)throw new Error("Video is destroyed");E.on(e,t)},this.dispatch=function(e){if(_)throw new Error("Video is destroyed");if(e)switch((e=n(i(e))).type){case"observeProp":if("videoParams"===(a=e.propName)&&(E.emit("propValue",a,S(a,null)),T[a]=!0,1))return;break;case"command":if(t=e.commandName,e.commandArgs,"destroy"===t&&(_=!0,o.dispatch({type:"command",commandName:"destroy"}),E.removeAllListeners(),1))return}var t,a;o.dispatch(e)}}return t.canPlayStream=function(t,o){return e.canPlayStream(t,o)},t.manifest={name:e.manifest.name+"WithVideoParams",external:e.manifest.external,props:e.manifest.props.concat(["videoParams"]).filter((function(e,t,o){return o.indexOf(e)===t})),commands:e.manifest.commands.concat(["destroy"]).filter((function(e,t,o){return o.indexOf(e)===t})),events:e.manifest.events.concat(["propValue","propChanged"]).filter((function(e,t,o){return o.indexOf(e)===t}))},t}},43746:function(e){"undefined"!=typeof self&&self,e.exports=(function(e){var t={};function o(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return e[a].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(a,i,function(t){return e[t]}.bind(null,i));return a},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=1)})([function(e,t,o){"use strict";var a=o(3);function i(e){return!0===a(e)&&"[object Object]"===Object.prototype.toString.call(e)}e.exports=function(e){var t,o;return!1!==i(e)&&"function"==typeof(t=e.constructor)&&!1!==i(o=t.prototype)&&!1!==o.hasOwnProperty("isPrototypeOf")}},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VERSION=t.PALETTE_MATERIAL_CHROME=t.PALETTE_MATERIAL_500=t.COLOR_NAMES=t.getLuminance=t.intToRgb=t.rgbToInt=t.rgbToHsv=t.rgbToHsl=t.hslToRgb=t.rgbToHex=t.parseColor=t.parseColorToHsla=t.parseColorToHsl=t.parseColorToRgba=t.parseColorToRgb=t.from=t.createPicker=void 0;var a=(function(){function e(e,t){for(var o=0;o-1,l="undefined"!=typeof window&&window.navigator.userAgent.indexOf("rv:")>-1,I={id:null,attachTo:"body",showHSL:!0,showRGB:!0,showHEX:!0,showAlpha:!1,color:"#ff0000",palette:null,paletteEditable:!1,useAlphaInPalette:"auto",slBarSize:[232,150],hueBarSize:[150,11],alphaBarSize:[150,11]},u="COLOR",A="RGBA_USER",d="HSLA_USER";function c(e,t,o){return e?e instanceof HTMLElement?e:e instanceof NodeList?e[0]:"string"==typeof e?document.querySelector(e):e.jquery?e.get(0):o?t:null:t}function O(e){var t=e.getContext("2d"),o=+e.width,a=+e.height,r=t.createLinearGradient(1,1,1,a-1);return r.addColorStop(0,"white"),r.addColorStop(1,"black"),{setHue:function(e){var i=t.createLinearGradient(1,0,o-1,0);i.addColorStop(0,"hsla("+e+", 100%, 50%, 0)"),i.addColorStop(1,"hsla("+e+", 100%, 50%, 1)"),t.fillStyle=r,t.fillRect(0,0,o,a),t.fillStyle=i,t.globalCompositeOperation="multiply",t.fillRect(0,0,o,a),t.globalCompositeOperation="source-over"},grabColor:function(e,o){return t.getImageData(e,o,1,1).data},findColor:function(e,t,r){var E=(0,n.rgbToHsv)(e,t,r),_=i(E,3),T=_[1],s=_[2];return[T*o,a-s*a]}}}function R(e,t,o){return null===e?t:/^\s*$/.test(e)?o:!!/true|yes|1/i.test(e)||!/false|no|0/i.test(e)&&t}function N(e,t,o){if(null===e)return t;if(/^\s*$/.test(e))return o;var a=e.split(",").map(Number);return 2===a.length&&a[0]&&a[1]?a:t}var m=(function(){function e(t,o){if(T(this,e),o?(t=c(t),this.options=Object.assign({},I,o)):t&&(0,r.default)(t)?(this.options=Object.assign({},I,t),t=c(this.options.attachTo)):(this.options=Object.assign({},I),t=c((0,n.nvl)(t,this.options.attachTo))),!t)throw new Error("Container not found: "+this.options.attachTo);!(function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"acp-";if(t.hasAttribute(o+"show-hsl")&&(e.showHSL=R(t.getAttribute(o+"show-hsl"),I.showHSL,!0)),t.hasAttribute(o+"show-rgb")&&(e.showRGB=R(t.getAttribute(o+"show-rgb"),I.showRGB,!0)),t.hasAttribute(o+"show-hex")&&(e.showHEX=R(t.getAttribute(o+"show-hex"),I.showHEX,!0)),t.hasAttribute(o+"show-alpha")&&(e.showAlpha=R(t.getAttribute(o+"show-alpha"),I.showAlpha,!0)),t.hasAttribute(o+"palette-editable")&&(e.paletteEditable=R(t.getAttribute(o+"palette-editable"),I.paletteEditable,!0)),t.hasAttribute(o+"sl-bar-size")&&(e.slBarSize=N(t.getAttribute(o+"sl-bar-size"),I.slBarSize,[232,150])),t.hasAttribute(o+"hue-bar-size")&&(e.hueBarSize=N(t.getAttribute(o+"hue-bar-size"),I.hueBarSize,[150,11]),e.alphaBarSize=e.hueBarSize),t.hasAttribute(o+"palette")){var a=t.getAttribute(o+"palette");switch(a){case"PALETTE_MATERIAL_500":e.palette=n.PALETTE_MATERIAL_500;break;case"PALETTE_MATERIAL_CHROME":case"":e.palette=n.PALETTE_MATERIAL_CHROME;break;default:e.palette=a.split(/[;|]/)}}t.hasAttribute(o+"color")&&(e.color=t.getAttribute(o+"color"))})(this.options,t),this.H=0,this.S=0,this.L=0,this.R=0,this.G=0,this.B=0,this.A=1,this.palette={},this.element=document.createElement("div"),this.options.id&&(this.element.id=this.options.id),this.element.className="a-color-picker",this.element.innerHTML=E.default,t.appendChild(this.element);var a=this.element.querySelector(".a-color-picker-h");this.setupHueCanvas(a),this.hueBarHelper=O(a),this.huePointer=this.element.querySelector(".a-color-picker-h+.a-color-picker-dot");var i=this.element.querySelector(".a-color-picker-sl");this.setupSlCanvas(i),this.slBarHelper=O(i),this.slPointer=this.element.querySelector(".a-color-picker-sl+.a-color-picker-dot"),this.preview=this.element.querySelector(".a-color-picker-preview"),this.setupClipboard(this.preview.querySelector(".a-color-picker-clipbaord")),this.options.showHSL?(this.setupInput(this.inputH=this.element.querySelector(".a-color-picker-hsl>input[nameref=H]")),this.setupInput(this.inputS=this.element.querySelector(".a-color-picker-hsl>input[nameref=S]")),this.setupInput(this.inputL=this.element.querySelector(".a-color-picker-hsl>input[nameref=L]"))):this.element.querySelector(".a-color-picker-hsl").remove(),this.options.showRGB?(this.setupInput(this.inputR=this.element.querySelector(".a-color-picker-rgb>input[nameref=R]")),this.setupInput(this.inputG=this.element.querySelector(".a-color-picker-rgb>input[nameref=G]")),this.setupInput(this.inputB=this.element.querySelector(".a-color-picker-rgb>input[nameref=B]"))):this.element.querySelector(".a-color-picker-rgb").remove(),this.options.showHEX?this.setupInput(this.inputRGBHEX=this.element.querySelector("input[nameref=RGBHEX]")):this.element.querySelector(".a-color-picker-rgbhex").remove(),this.options.paletteEditable||this.options.palette&&this.options.palette.length>0?this.setPalette(this.paletteRow=this.element.querySelector(".a-color-picker-palette")):(this.paletteRow=this.element.querySelector(".a-color-picker-palette"),this.paletteRow.remove()),this.options.showAlpha?(this.setupAlphaCanvas(this.element.querySelector(".a-color-picker-a")),this.alphaPointer=this.element.querySelector(".a-color-picker-a+.a-color-picker-dot")):this.element.querySelector(".a-color-picker-alpha").remove(),this.element.style.width=this.options.slBarSize[0]+"px",this.onValueChanged(u,this.options.color)}return a(e,[{key:"setupHueCanvas",value:function(e){var t=this;e.width=this.options.hueBarSize[0],e.height=this.options.hueBarSize[1];for(var o=e.getContext("2d"),a=o.createLinearGradient(0,0,this.options.hueBarSize[0],0),i=0;i<=1;i+=1/360)a.addColorStop(i,"hsl("+360*i+", 100%, 50%)");o.fillStyle=a,o.fillRect(0,0,this.options.hueBarSize[0],this.options.hueBarSize[1]);var r=function(o){var a=(0,n.limit)(o.clientX-e.getBoundingClientRect().left,0,t.options.hueBarSize[0]),i=Math.round(360*a/t.options.hueBarSize[0]);t.huePointer.style.left=a-7+"px",t.onValueChanged("H",i)},E=function e(){document.removeEventListener("mousemove",r),document.removeEventListener("mouseup",e)};e.addEventListener("mousedown",(function(e){r(e),document.addEventListener("mousemove",r),document.addEventListener("mouseup",E)}))}},{key:"setupSlCanvas",value:function(e){var t=this;e.width=this.options.slBarSize[0],e.height=this.options.slBarSize[1];var o=function(o){var a=(0,n.limit)(o.clientX-e.getBoundingClientRect().left,0,t.options.slBarSize[0]-1),i=(0,n.limit)(o.clientY-e.getBoundingClientRect().top,0,t.options.slBarSize[1]-1),r=t.slBarHelper.grabColor(a,i);t.slPointer.style.left=a-7+"px",t.slPointer.style.top=i-7+"px",t.onValueChanged("RGB",r)},a=function e(){document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",e)};e.addEventListener("mousedown",(function(e){o(e),document.addEventListener("mousemove",o),document.addEventListener("mouseup",a)}))}},{key:"setupAlphaCanvas",value:function(e){var t=this;e.width=this.options.alphaBarSize[0],e.height=this.options.alphaBarSize[1];var o=e.getContext("2d"),a=o.createLinearGradient(0,0,e.width-1,0);a.addColorStop(0,"hsla(0, 0%, 50%, 0)"),a.addColorStop(1,"hsla(0, 0%, 50%, 1)"),o.fillStyle=a,o.fillRect(0,0,this.options.alphaBarSize[0],this.options.alphaBarSize[1]);var i=function(o){var a=(0,n.limit)(o.clientX-e.getBoundingClientRect().left,0,t.options.alphaBarSize[0]),i=+(a/t.options.alphaBarSize[0]).toFixed(2);t.alphaPointer.style.left=a-7+"px",t.onValueChanged("ALPHA",i)},r=function e(){document.removeEventListener("mousemove",i),document.removeEventListener("mouseup",e)};e.addEventListener("mousedown",(function(e){i(e),document.addEventListener("mousemove",i),document.addEventListener("mouseup",r)}))}},{key:"setupInput",value:function(e){var t=this,o=+e.min,a=+e.max,i=e.getAttribute("nameref");e.hasAttribute("select-on-focus")&&e.addEventListener("focus",(function(){e.select()})),"text"===e.type?e.addEventListener("change",(function(){t.onValueChanged(i,e.value)})):((S||l)&&e.addEventListener("keydown",(function(r){"Up"===r.key?(e.value=(0,n.limit)(+e.value+1,o,a),t.onValueChanged(i,e.value),r.returnValue=!1):"Down"===r.key&&(e.value=(0,n.limit)(+e.value-1,o,a),t.onValueChanged(i,e.value),r.returnValue=!1)})),e.addEventListener("change",(function(){var r=+e.value;t.onValueChanged(i,(0,n.limit)(r,o,a))})))}},{key:"setupClipboard",value:function(e){var t=this;e.title="click to copy",e.addEventListener("click",(function(){e.value=(0,n.parseColor)([t.R,t.G,t.B,t.A],"hexcss4"),e.select(),document.execCommand("copy")}))}},{key:"setPalette",value:function(e){var t=this,o="auto"===this.options.useAlphaInPalette?this.options.showAlpha:this.options.useAlphaInPalette,a=null;switch(this.options.palette){case"PALETTE_MATERIAL_500":a=n.PALETTE_MATERIAL_500;break;case"PALETTE_MATERIAL_CHROME":a=n.PALETTE_MATERIAL_CHROME;break;default:a=(0,n.ensureArray)(this.options.palette)}if(this.options.paletteEditable||a.length>0){var i=function(o,a,i){var n=e.querySelector('.a-color-picker-palette-color[data-color="'+o+'"]')||document.createElement("div");n.className="a-color-picker-palette-color",n.style.backgroundColor=o,n.setAttribute("data-color",o),n.title=o,e.insertBefore(n,a),t.palette[o]=!0,i&&t.onPaletteColorAdd(o)},r=function(o,a){o?(e.removeChild(o),t.palette[o.getAttribute("data-color")]=!1,a&&t.onPaletteColorRemove(o.getAttribute("data-color"))):(e.querySelectorAll(".a-color-picker-palette-color[data-color]").forEach((function(t){e.removeChild(t)})),Object.keys(t.palette).forEach((function(e){t.palette[e]=!1})),a&&t.onPaletteColorRemove())};if(a.map((function(e){return(0,n.parseColor)(e,o?"rgbcss4":"hex")})).filter((function(e){return!!e})).forEach((function(e){return i(e)})),this.options.paletteEditable){var E=document.createElement("div");E.className="a-color-picker-palette-color a-color-picker-palette-add",E.innerHTML="+",e.appendChild(E),e.addEventListener("click",(function(e){/a-color-picker-palette-add/.test(e.target.className)?e.shiftKey?r(null,!0):i(o?(0,n.parseColor)([t.R,t.G,t.B,t.A],"rgbcss4"):(0,n.rgbToHex)(t.R,t.G,t.B),e.target,!0):/a-color-picker-palette-color/.test(e.target.className)&&(e.shiftKey?r(e.target,!0):t.onValueChanged(u,e.target.getAttribute("data-color")))}))}else e.addEventListener("click",(function(e){/a-color-picker-palette-color/.test(e.target.className)&&t.onValueChanged(u,e.target.getAttribute("data-color"))}))}else e.style.display="none"}},{key:"updatePalette",value:function(e){this.paletteRow.innerHTML="",this.palette={},this.paletteRow.parentElement||this.element.appendChild(this.paletteRow),this.options.palette=e,this.setPalette(this.paletteRow)}},{key:"onValueChanged",value:function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{silent:!1};switch(e){case"H":this.H=t;var a=(0,n.hslToRgb)(this.H,this.S,this.L),r=i(a,3);this.R=r[0],this.G=r[1],this.B=r[2],this.slBarHelper.setHue(t),this.updatePointerH(this.H),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"S":this.S=t;var E=(0,n.hslToRgb)(this.H,this.S,this.L),_=i(E,3);this.R=_[0],this.G=_[1],this.B=_[2],this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"L":this.L=t;var T=(0,n.hslToRgb)(this.H,this.S,this.L),s=i(T,3);this.R=s[0],this.G=s[1],this.B=s[2],this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"R":this.R=t;var S=(0,n.rgbToHsl)(this.R,this.G,this.B),l=i(S,3);this.H=l[0],this.S=l[1],this.L=l[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"G":this.G=t;var I=(0,n.rgbToHsl)(this.R,this.G,this.B),c=i(I,3);this.H=c[0],this.S=c[1],this.L=c[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"B":this.B=t;var O=(0,n.rgbToHsl)(this.R,this.G,this.B),R=i(O,3);this.H=R[0],this.S=R[1],this.L=R[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGBHEX(this.R,this.G,this.B);break;case"RGB":var N=i(t,3);this.R=N[0],this.G=N[1],this.B=N[2];var m=(0,n.rgbToHsl)(this.R,this.G,this.B),L=i(m,3);this.H=L[0],this.S=L[1],this.L=L[2],this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B);break;case A:var p=i(t,4);this.R=p[0],this.G=p[1],this.B=p[2],this.A=p[3];var D=(0,n.rgbToHsl)(this.R,this.G,this.B),h=i(D,3);this.H=h[0],this.S=h[1],this.L=h[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B),this.updatePointerA(this.A);break;case d:var C=i(t,4);this.H=C[0],this.S=C[1],this.L=C[2],this.A=C[3];var f=(0,n.hslToRgb)(this.H,this.S,this.L),g=i(f,3);this.R=g[0],this.G=g[1],this.B=g[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B),this.updatePointerA(this.A);break;case"RGBHEX":var B=(0,n.cssColorToRgb)(t)||[this.R,this.G,this.B],P=i(B,3);this.R=P[0],this.G=P[1],this.B=P[2];var v=(0,n.rgbToHsl)(this.R,this.G,this.B),y=i(v,3);this.H=y[0],this.S=y[1],this.L=y[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B);break;case u:var M=(0,n.parseColor)(t,"rgba")||[0,0,0,1],W=i(M,4);this.R=W[0],this.G=W[1],this.B=W[2],this.A=W[3];var b=(0,n.rgbToHsl)(this.R,this.G,this.B),U=i(b,3);this.H=U[0],this.S=U[1],this.L=U[2],this.slBarHelper.setHue(this.H),this.updatePointerH(this.H),this.updatePointerSL(this.H,this.S,this.L),this.updateInputHSL(this.H,this.S,this.L),this.updateInputRGB(this.R,this.G,this.B),this.updateInputRGBHEX(this.R,this.G,this.B),this.updatePointerA(this.A);break;case"ALPHA":this.A=t}1===this.A?this.preview.style.backgroundColor="rgb("+this.R+","+this.G+","+this.B+")":this.preview.style.backgroundColor="rgba("+this.R+","+this.G+","+this.B+","+this.A+")",o&&o.silent||this.onchange&&this.onchange(this.preview.style.backgroundColor)}},{key:"onPaletteColorAdd",value:function(e){this.oncoloradd&&this.oncoloradd(e)}},{key:"onPaletteColorRemove",value:function(e){this.oncolorremove&&this.oncolorremove(e)}},{key:"updateInputHSL",value:function(e,t,o){this.options.showHSL&&(this.inputH.value=e,this.inputS.value=t,this.inputL.value=o)}},{key:"updateInputRGB",value:function(e,t,o){this.options.showRGB&&(this.inputR.value=e,this.inputG.value=t,this.inputB.value=o)}},{key:"updateInputRGBHEX",value:function(e,t,o){this.options.showHEX&&(this.inputRGBHEX.value=(0,n.rgbToHex)(e,t,o))}},{key:"updatePointerH",value:function(e){var t=this.options.hueBarSize[0]*e/360;this.huePointer.style.left=t-7+"px"}},{key:"updatePointerSL",value:function(e,t,o){var a=(0,n.hslToRgb)(e,t,o),r=i(a,3),E=r[0],_=r[1],T=r[2],s=this.slBarHelper.findColor(E,_,T),S=i(s,2),l=S[0],I=S[1];l>=0&&(this.slPointer.style.left=l-7+"px",this.slPointer.style.top=I-7+"px")}},{key:"updatePointerA",value:function(e){if(this.options.showAlpha){var t=this.options.alphaBarSize[0]*e;this.alphaPointer.style.left=t-7+"px"}}}]),e})(),L=(function(){function e(t){T(this,e),this.name=t,this.listeners=[]}return a(e,[{key:"on",value:function(e){e&&this.listeners.push(e)}},{key:"off",value:function(e){this.listeners=e?this.listeners.filter((function(t){return t!==e})):[]}},{key:"emit",value:function(e,t){for(var o=this.listeners.slice(0),a=0;a1&&void 0!==arguments[1]&&arguments[1];o.onValueChanged(u,e,{silent:t})},get all(){if(r){var e=[o.R,o.G,o.B,o.A],t=o.A<1?"rgba("+o.R+","+o.G+","+o.B+","+o.A+")":n.rgbToHex.apply(void 0,e);(E=(0,n.parseColor)(e,E)).toString=function(){return t},r=!1}return Object.assign({},E)},get onchange(){return a.change&&a.change.listeners[0]},set onchange(e){this.off("change").on("change",e)},get oncoloradd(){return a.coloradd&&a.coloradd.listeners[0]},set oncoloradd(e){this.off("coloradd").on("coloradd",e)},get oncolorremove(){return a.colorremove&&a.colorremove.listeners[0]},set oncolorremove(e){this.off("colorremove").on("colorremove",e)},get palette(){return Object.keys(o.palette).filter((function(e){return o.palette[e]}))},set palette(e){o.updatePalette(e)},show:function(){o.element.classList.remove("hidden")},hide:function(){o.element.classList.add("hidden")},toggle:function(){o.element.classList.toggle("hidden")},on:function(e,t){return e&&a[e]&&a[e].on(t),this},off:function(e,t){return e&&a[e]&&a[e].off(t),this},destroy:function(){a.change.off(),a.coloradd.off(),a.colorremove.off(),o.element.remove(),a=null,o=null}};return o.onchange=function(){for(var e=arguments.length,t=Array(e),o=0;ostyle[data-source="a-color-picker"]')){var D=o(5).toString(),h=document.createElement("style");h.setAttribute("type","text/css"),h.setAttribute("data-source","a-color-picker"),h.innerHTML=D,document.querySelector("head").appendChild(h)}t.createPicker=p,t.from=function(e,t){var o=(function(e){return e?Array.isArray(e)?e:e instanceof HTMLElement?[e]:e instanceof NodeList?[].concat(s(e)):"string"==typeof e?[].concat(s(document.querySelectorAll(e))):e.jquery?e.get():[]:[]})(e).map((function(e,o){var a=p(e,t);return a.index=o,a}));return o.on=function(e,t){return o.forEach((function(o){return o.on(e,t)})),this},o.off=function(e){return o.forEach((function(t){return t.off(e)})),this},o},t.parseColorToRgb=n.parseColorToRgb,t.parseColorToRgba=n.parseColorToRgba,t.parseColorToHsl=n.parseColorToHsl,t.parseColorToHsla=n.parseColorToHsla,t.parseColor=n.parseColor,t.rgbToHex=n.rgbToHex,t.hslToRgb=n.hslToRgb,t.rgbToHsl=n.rgbToHsl,t.rgbToHsv=n.rgbToHsv,t.rgbToInt=n.rgbToInt,t.intToRgb=n.intToRgb,t.getLuminance=n.getLuminance,t.COLOR_NAMES=n.COLOR_NAMES,t.PALETTE_MATERIAL_500=n.PALETTE_MATERIAL_500,t.PALETTE_MATERIAL_CHROME=n.PALETTE_MATERIAL_CHROME,t.VERSION="1.2.1"},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.nvl=t.ensureArray=t.limit=t.getLuminance=t.parseColor=t.parseColorToHsla=t.parseColorToHsl=t.cssHslaToHsla=t.cssHslToHsl=t.parseColorToRgba=t.parseColorToRgb=t.cssRgbaToRgba=t.cssRgbToRgb=t.cssColorToRgba=t.cssColorToRgb=t.intToRgb=t.rgbToInt=t.rgbToHsv=t.rgbToHsl=t.hslToRgb=t.rgbToHex=t.PALETTE_MATERIAL_CHROME=t.PALETTE_MATERIAL_500=t.COLOR_NAMES=void 0;var a=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return(function(e,t){var o=[],a=!0,i=!1,n=void 0;try{for(var r,E=e[Symbol.iterator]();!(a=(r=E.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){i=!0,n=e}finally{try{!a&&E.return&&E.return()}finally{if(i)throw n}}return o})(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},i=(function(e){return e&&e.__esModule?e:{default:e}})(o(0));function n(e){if(Array.isArray(e)){for(var t=0,o=Array(e.length);to?o:e}function _(e,t){return null==e?t:e}function T(e,t,o){var a=[E(e,0,255),E(t,0,255),E(o,0,255)];return"#"+("000000"+((e=a[0])<<16|(t=a[1])<<8|(o=a[2])).toString(16)).slice(-6)}function s(e,t,o){var a=void 0,i=void 0,n=void 0,r=[E(e,0,360)/360,E(t,0,100)/100,E(o,0,100)/100];if(e=r[0],o=r[2],0==(t=r[1]))a=i=n=o;else{var _=function(e,t,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?e+6*(t-e)*o:o<.5?t:o<2/3?e+(t-e)*(2/3-o)*6:e},T=o<.5?o*(1+t):o+t-o*t,s=2*o-T;a=_(s,T,e+1/3),i=_(s,T,e),n=_(s,T,e-1/3)}return[255*a,255*i,255*n].map(Math.round)}function S(e,t,o){var a=[E(e,0,255)/255,E(t,0,255)/255,E(o,0,255)/255];e=a[0],t=a[1],o=a[2];var i=Math.max(e,t,o),n=Math.min(e,t,o),r=void 0,_=void 0,T=(i+n)/2;if(i==n)r=_=0;else{var s=i-n;switch(_=T>.5?s/(2-i-n):s/(i+n),i){case e:r=(t-o)/s+(t>16&255,e>>8&255,255&e]},t.cssColorToRgb=I,t.cssColorToRgba=u,t.cssRgbToRgb=A,t.cssRgbaToRgba=d,t.parseColorToRgb=function(e){return Array.isArray(e)?e=[E(e[0],0,255),E(e[1],0,255),E(e[2],0,255)]:I(e)||A(e)},t.parseColorToRgba=c,t.cssHslToHsl=O,t.cssHslaToHsla=R,t.parseColorToHsl=function(e){return Array.isArray(e)?e=[E(e[0],0,360),E(e[1],0,100),E(e[2],0,100)]:O(e)},t.parseColorToHsla=N,t.parseColor=function(e,t){if(t=t||"rgb",null!=e){var o=void 0;if((o=c(e))||(o=N(e))&&(o=[].concat(n(s.apply(void 0,n(o))),[o[3]])))return(0,i.default)(t)?["rgb","rgbcss","rgbcss4","rgba","rgbacss","hsl","hslcss","hslcss4","hsla","hslacss","hex","hexcss4","int"].reduce((function(e,t){return e[t]=m(o,t),e}),t||{}):m(o,t.toString().toLowerCase())}},t.getLuminance=function(e,t,o){return.2126*(e=(e/=255)<.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.7152*(t=(t/=255)<.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.0722*((o/=255)<.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))},t.limit=E,t.ensureArray=function(e){return e?Array.from(e):[]},t.nvl=_},function(e,t,o){"use strict";e.exports=function(e){return null!=e&&"object"==typeof e&&!1===Array.isArray(e)}},function(e,t){e.exports='
'},function(e,t,o){var a=o(6);e.exports="string"==typeof a?a:a.toString()},function(e,t,o){(e.exports=o(7)(!1)).push([e.i,"/*!\n * a-color-picker\n * https://github.com/narsenico/a-color-picker\n *\n * Copyright (c) 2017-2018, Gianfranco Caldi.\n * Released under the MIT License.\n */.a-color-picker{background-color:#fff;padding:0;display:inline-flex;flex-direction:column;user-select:none;width:232px;font:400 10px Helvetica,Arial,sans-serif;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.05),0 2px 4px rgba(0,0,0,.25)}.a-color-picker,.a-color-picker-row,.a-color-picker input{box-sizing:border-box}.a-color-picker-row{padding:15px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;user-select:none}.a-color-picker-row-top{padding:0}.a-color-picker-row:not(:first-child){border-top:1px solid #f5f5f5}.a-color-picker-column{display:flex;flex-direction:column}.a-color-picker-cell{flex:1 1 auto;margin-bottom:4px}.a-color-picker-cell:last-child{margin-bottom:0}.a-color-picker-stack{position:relative}.a-color-picker-dot{position:absolute;width:14px;height:14px;top:0;left:0;background:#fff;pointer-events:none;border-radius:50px;z-index:1000;box-shadow:0 1px 2px rgba(0,0,0,.75)}.a-color-picker-a,.a-color-picker-h,.a-color-picker-sl{cursor:cell}.a-color-picker-a+.a-color-picker-dot,.a-color-picker-h+.a-color-picker-dot{top:-2px}.a-color-picker-a,.a-color-picker-h{border-radius:2px}.a-color-picker-preview{box-sizing:border-box;width:30px;height:30px;user-select:none;border-radius:15px}.a-color-picker-circle{border-radius:50px;border:1px solid #eee}.a-color-picker-hsl,.a-color-picker-rgb,.a-color-picker-single-input{justify-content:space-evenly}.a-color-picker-hsl>label,.a-color-picker-rgb>label,.a-color-picker-single-input>label{padding:0 8px;flex:0 0 auto;color:#969696}.a-color-picker-hsl>input,.a-color-picker-rgb>input,.a-color-picker-single-input>input{text-align:center;padding:2px 0;width:0;flex:1 1 auto;border:1px solid #e0e0e0;line-height:20px}.a-color-picker-hsl>input::-webkit-inner-spin-button,.a-color-picker-rgb>input::-webkit-inner-spin-button,.a-color-picker-single-input>input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.a-color-picker-hsl>input:focus,.a-color-picker-rgb>input:focus,.a-color-picker-single-input>input:focus{border-color:#04a9f4;outline:none}.a-color-picker-transparent{background-image:linear-gradient(-45deg,#cdcdcd 25%,transparent 0),linear-gradient(45deg,#cdcdcd 25%,transparent 0),linear-gradient(-45deg,transparent 75%,#cdcdcd 0),linear-gradient(45deg,transparent 75%,#cdcdcd 0);background-size:11px 11px;background-position:0 0,0 -5.5px,-5.5px 5.5px,5.5px 0}.a-color-picker-sl{border-radius:3px 3px 0 0}.a-color-picker.hide-alpha [show-on-alpha],.a-color-picker.hide-hsl [show-on-hsl],.a-color-picker.hide-rgb [show-on-rgb],.a-color-picker.hide-single-input [show-on-single-input]{display:none}.a-color-picker-clipbaord{width:100%;height:100%;opacity:0;cursor:pointer}.a-color-picker-palette{flex-flow:wrap;flex-direction:row;justify-content:flex-start;padding:10px}.a-color-picker-palette-color{width:15px;height:15px;flex:0 1 15px;margin:3px;box-sizing:border-box;cursor:pointer;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.a-color-picker-palette-add{text-align:center;line-height:13px;color:#607d8b}.a-color-picker.hidden{display:none}",""])},function(e,t){e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var o=(function(e,t){var o=e[1]||"",a=e[3];if(!a)return o;if(t&&"function"==typeof btoa){var i=(function(e){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(e))))+" */"})(a),n=a.sources.map((function(e){return"/*# sourceURL="+a.sourceRoot+e+" */"}));return[o].concat(n).concat([i]).join("\n")}return[o].join("\n")})(t,e);return t[2]?"@media "+t[2]+"{"+o+"}":o})).join("")},t.i=function(e,o){"string"==typeof e&&(e=[[null,e,""]]);for(var a={},i=0;i{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(81341);e.exports=a},78921:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(67294),i=o(63662).useServices,n=o(86590).useToast;e.exports=function(){var e=i(),t=e.core,o=e.dragAndDrop,r=n();return a.useEffect((function(){var e=function(e){var t=e.event,o=e.args;switch(t){case"Error":if("UserPulledFromAPI"===o.source.event&&null===o.source.args.uid)break;if("LibrarySyncWithAPIPlanned"===o.source.event&&null===o.source.args.uid)break;if("Other"===o.error.type&&3===o.error.code&&"AddonInstalled"===o.source.event&&o.source.args.transport_url.startsWith("https://www.strem.io/trakt/addon"))break;r.show({type:"error",title:o.source.event,message:o.error.message,timeout:4e3,dataset:{type:"CoreEvent"}});break;case"TorrentParsed":r.show({type:"success",title:"Torrent file parsed",timeout:4e3});break;case"MagnetParsed":r.show({type:"success",title:"Magnet link parsed",timeout:4e3});break;case"PlayingOnDevice":r.show({type:"success",title:"Stream opened in ".concat(o.device),timeout:4e3})}},a=function(e){var t;r.show({type:"error",title:e.message,message:null===(t=e.file)||void 0===t?void 0:t.name,timeout:4e3})};return t.transport.on("CoreEvent",e),o.on("error",a),function(){t.transport.off("CoreEvent",e),o.off("error",a)}}),[]),null}},4008:(e,t,o)=>{var a=o(5677);e.exports=a},49884:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{function a(){return a=Object.assign||function(e){for(var t=1;t{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(29872),_=o(88135),T=function(e){var t=e.className,o=e.id,i=e.name,T=e.version,s=e.logo,S=e.description,l=e.types,I=e.transportUrl,u=e.official,A=a.useCallback((function(){return a.createElement(r,{className:_.icon,name:"addons"})}),[]);return a.createElement("div",{className:n(t,_["addon-details-container"])},a.createElement("div",{className:_["title-container"]},a.createElement(E,{className:_.logo,src:s,alt:" ",renderFallback:A}),a.createElement("div",{className:_["name-container"]},a.createElement("span",{className:_.name},"string"==typeof i&&i.length>0?i:o),"string"==typeof T&&T.length>0?a.createElement("span",{className:_.version},"v. ",T):null)),"string"==typeof S&&S.length>0?a.createElement("div",{className:_["section-container"]},a.createElement("span",{className:_["section-label"]},S)):null,"string"==typeof I&&I.length>0?a.createElement("div",{className:_["section-container"]},a.createElement("span",{className:_["section-header"]},"URL: "),a.createElement("span",{className:n(_["section-label"],_["transport-url-label"])},I)):null,Array.isArray(l)&&l.length>0?a.createElement("div",{className:_["section-container"]},a.createElement("span",{className:_["section-header"]},"Supported types: "),a.createElement("span",{className:_["section-label"]},1===l.length?l[0]:l.slice(0,-1).join(", ")+" & "+l[l.length-1])):null,u?null:a.createElement("div",{className:_["section-container"]},a.createElement("div",{className:n(_["section-label"],_["disclaimer-label"])},"Using third-party add-ons will always be subject to your responsibility and the governing law of the jurisdiction you are located.")))};T.propTypes={className:i.string,id:i.string,name:i.string,version:i.string,logo:i.string,description:i.string,types:i.arrayOf(i.string),transportUrl:i.string,official:i.bool},e.exports=T},45368:(e,t,o)=>{var a=o(95471);e.exports=a},88029:(e,t,o)=>{var a=["remoteAddon","localAddon"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(58253),T=o(36672).withCoreSuspender,s=o(63662).useServices,S=(function(e){var t=function(t){var o=t.remoteAddon,E=t.localAddon,_=n(t,a),T=null!==o&&"Ready"===o.content.type?o.content.content:null!==E?E:null;return null===T?null:r.createElement(e,i({},_,{id:T.manifest.id,name:T.manifest.name,version:T.manifest.version,logo:T.manifest.logo,description:T.manifest.description,types:T.manifest.types,transportUrl:T.transportUrl,official:T.flags.official}))};return t.displayName="withRemoteAndLocalAddon",t})(o(45368)),l=o(29208),I=o(60355);var u=function(e){var t=e.transportUrl,o=e.onCloseRequest,a=s().core,i=l(t),n=r.useMemo((function(){var e={className:I["cancel-button"],label:"Cancel",props:{onClick:function(e){"function"==typeof o&&o({type:"cancel",reactEvent:e,nativeEvent:e.nativeEvent})}}},n=null!==i.remoteAddon&&"Ready"===i.remoteAddon.content.type&&i.remoteAddon.content.content.manifest.behaviorHints.configurable?{className:I["configure-button"],label:"Configure",props:{onClick:function(e){window.open(t.replace("manifest.json","configure")),"function"==typeof o&&o({type:"configure",reactEvent:e,nativeEvent:e.nativeEvent})}}}:null,r=null!==i.localAddon?{className:I["uninstall-button"],label:"Uninstall",props:{onClick:function(e){a.transport.dispatch({action:"Ctx",args:{action:"UninstallAddon",args:i.localAddon}}),"function"==typeof o&&o({type:"uninstall",reactEvent:e,nativeEvent:e.nativeEvent})}}}:null!==i.remoteAddon&&"Ready"===i.remoteAddon.content.type?{className:I["install-button"],label:"Install",props:{onClick:function(e){a.transport.dispatch({action:"Ctx",args:{action:"InstallAddon",args:i.remoteAddon.content.content}}),"function"==typeof o&&o({type:"install",reactEvent:e,nativeEvent:e.nativeEvent})}}}:null;return null!==r?n?[e,n,r]:[e,r]:[e]}),[i,o]);return r.createElement(_,{className:I["addon-details-modal-container"],title:"Stremio addon",buttons:n,onCloseRequest:o},null===i.selected?r.createElement("div",{className:I["addon-details-message-container"]},"Loading addon manifest"):null===i.remoteAddon||"Loading"===i.remoteAddon.content.type?r.createElement("div",{className:I["addon-details-message-container"]},"Loading addon manifest from ",i.selected.transportUrl):"Err"===i.remoteAddon.content.type&&null===i.localAddon?r.createElement("div",{className:I["addon-details-message-container"]},"Failed to get addon manifest from ",i.selected.transportUrl,r.createElement("div",null,i.remoteAddon.content.content.message)):r.createElement(S,{className:I["addon-details-container"],remoteAddon:i.remoteAddon,localAddon:i.localAddon}))};u.propTypes={transportUrl:E.string,onCloseRequest:E.func};var A=function(e){var t=e.onCloseRequest;return r.createElement(_,{className:I["addon-details-modal-container"],title:"Stremio addon",onCloseRequest:t},r.createElement("div",{className:I["addon-details-message-container"]},"Loading addon manifest"))};A.propTypes=u.propTypes,e.exports=T(u,A)},58512:(e,t,o)=>{var a=o(88029);e.exports=a},29208:(e,t,o)=>{var a=o(67294),i=o(71535);e.exports=function(e){var t=a.useMemo((function(){return"string"==typeof e?{action:"Load",args:{model:"AddonDetails",args:{transportUrl:e}}}:{action:"Unload"}}),[e]);return i({model:"addon_details",action:t})}},67458:(e,t,o)=>{var a=["className","href","disabled","children","onLongPress"];function i(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function n(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(74520),l=o(20243).useLongPress,I=_.forwardRef((function(e,t){var o=e.className,i=e.href,r=e.disabled,T=e.children,I=e.onLongPress,u=E(e,a),A=l(I,{detect:"pointer"}),d=_.useCallback((function(e){"function"==typeof u.onKeyDown&&u.onKeyDown(e),"Enter"===e.key&&(e.preventDefault(),e.nativeEvent.buttonClickPrevented||e.currentTarget.click())}),[u.onKeyDown]),c=_.useCallback((function(e){"function"==typeof u.onMouseDown&&u.onMouseDown(e),e.nativeEvent.buttonBlurPrevented||(e.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur())}),[u.onMouseDown]);return _.createElement("string"==typeof i&&i.length>0?"a":"div",n(n({tabIndex:0},u),{},{ref:t,className:s(o,S["button-container"],{disabled:r}),href:i,onKeyDown:d,onMouseDown:c},A()),T)}));I.displayName="Button",I.propTypes={className:T.string,href:T.string,disabled:T.bool,children:T.node,onKeyDown:T.func,onMouseDown:T.func,onLongPress:T.func},e.exports=I},6851:(e,t,o)=>{var a=o(67458);e.exports=a},52734:e=>{var t={movie:10,series:9,channel:8,tv:7,music:6,radio:5,podcast:4,game:3,book:2,adult:1,other:-1/0},o=new Map([["movie","movies"],["series","series"],["channel","channels"],["tv","tv"],["book","ic_book"],["game","ic_games"],["music","ic_music"],["adult","ic_adult"],["radio","ic_radio"],["podcast","ic_podcast"],["other","movies"]]);e.exports={CHROMECAST_RECEIVER_APP_ID:"1634F54B",SUBTITLES_SIZES:[75,100,125,150,175,200,250],SUBTITLES_FONTS:["PlusJakartaSans","Arial","Halvetica","Times New Roman","Verdana","Courier","Lucida Console","sans-serif","serif","monospace"],SEEK_TIME_DURATIONS:[3e3,5e3,1e4,15e3,2e4,3e4],NEXT_VIDEO_POPUP_DURATIONS:[0,5e3,1e4,15e3,2e4,25e3,3e4,35e3,4e4,45e3,5e4,55e3,6e4,65e3,7e4,75e3,8e4,85e3,9e4],CATALOG_PREVIEW_SIZE:10,CATALOG_PAGE_SIZE:100,NONE_EXTRA_VALUE:"None",SKIP_EXTRA_NAME:"skip",META_LINK_CATEGORY:"meta",IMDB_LINK_CATEGORY:"imdb",SHARE_LINK_CATEGORY:"share",WRITERS_LINK_CATEGORY:"Writers",TYPE_PRIORITIES:t,ICON_FOR_TYPE:o,EXTERNAL_PLAYERS:[{label:"EXTERNAL_PLAYER_DISABLED",value:null,platforms:["ios","android","windows","linux","macos"]},{label:"EXTERNAL_PLAYER_ALLOW_CHOOSING",value:"choose",platforms:["android"]},{label:"VLC",value:"vlc",platforms:["ios","android"]},{label:"MPV",value:"mpv",platforms:["macos"]},{label:"IINA",value:"iina",platforms:["macos"]},{label:"MX Player",value:"mxplayer",platforms:["android"]},{label:"Just Player",value:"justplayer",platforms:["android"]},{label:"Outplayer",value:"outplayer",platforms:["ios"]}]}},83064:(e,t,o)=>{var a=["className","checked","children"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(94184),T=o(6851),s=o(41726),S=r.forwardRef((function(e,t){var o=e.className,E=e.checked,S=e.children,l=n(e,a);return r.createElement(T,i({},l,{ref:t,className:_(o,s["checkbox-container"],{checked:E})}),r.createElement("div",{className:s.toggle}),S)}));S.displayName="Checkbox",S.propTypes={className:E.string,checked:E.bool,children:E.node},e.exports=S},49666:(e,t,o)=>{var a=o(83064);e.exports=a},54750:(e,t,o)=>{var a=["className","value","dataset","onChange"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(43746),l=o(81468).useTranslation,I=o(6851),u=o(58253),A=o(74024),d=o(57711),c=o(5461),O=function(e){var t=S.parseColor(e,"hexcss4");return"string"==typeof t?t:"#ffffffff"},R=function(e){var t=e.className,o=e.value,r=e.dataset,T=e.onChange,S=E(e,a),R=l().t,N=n(A(!1),3),m=N[0],L=N[1],p=N[2],D=n(_.useState((function(){return O(o)})),2),h=D[0],C=D[1],f=_.useMemo((function(){return{backgroundColor:o}}),[o]),g=_.useMemo((function(){return O(o).endsWith("00")}),[o]),B=_.useCallback((function(e){"function"==typeof S.onClick&&S.onClick(e),e.nativeEvent.openModalPrevented||L()}),[S.onClick]),P=_.useCallback((function(e){e.nativeEvent.openModalPrevented=!0}),[]),v=_.useMemo((function(){return[{label:"Select",props:{"data-autofocus":!0,onClick:function(e){"function"==typeof T&&T({type:"change",value:h,dataset:r,reactEvent:e,nativeEvent:e.nativeEvent}),p()}}}]}),[h,r,T]),y=_.useCallback((function(e){C(O(e.value))}),[]);return _.useLayoutEffect((function(){C(O(o))}),[o,m]),_.createElement(I,i({title:g?R("BUTTON_COLOR_TRANSPARENT"):o},S,{style:f,className:s(t,c["color-input-container"]),onClick:B}),g?_.createElement("div",{className:c["transparent-label-container"]},_.createElement("div",{className:c["transparent-label"]},R("BUTTON_COLOR_TRANSPARENT"))):null,m?_.createElement(u,{title:"Choose a color:",buttons:v,onCloseRequest:p,onClick:P},_.createElement(d,{className:c["color-picker-container"],value:h,onInput:y})):null)};R.propTypes={className:T.string,value:T.string,dataset:T.object,onChange:T.func,onClick:T.func},e.exports=R},73378:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(43746),E=o(74809),_=function(e){return r.parseColor(e,"hexcss4")},T=function(e){var t=e.className,o=e.value,i=e.onInput,T=a.useRef(null),s=a.useRef(null);return a.useLayoutEffect((function(){T.current=r.createPicker(s.current,{color:_(o),showHSL:!1,showHEX:!1,showRGB:!1,showAlpha:!0});var e=s.current.querySelector(".a-color-picker-clipbaord");e instanceof HTMLElement&&(e.tabIndex=-1)}),[]),a.useLayoutEffect((function(){return"function"==typeof i&&T.current.on("change",(function(e,t){i({type:"input",value:_(t)})})),function(){T.current.off("change")}}),[i]),a.useLayoutEffect((function(){var e=_(o);e!==_(T.current.color)&&(T.current.color=e)}),[o]),a.createElement("div",{ref:s,className:n(t,E["color-picker-container"])})};T.propTypes={className:i.string,value:i.string,onInput:i.func},e.exports=T},57711:(e,t,o)=>{var a=o(73378);e.exports=a},28809:(e,t,o)=>{var a=o(54750);e.exports=a},16306:(e,t,o)=>{var a=["_id","notifications","deepLinks"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(63662).useServices,T=o(35748),s=function(e){var t=e._id,o=e.notifications,E=e.deepLinks,s=n(e,a),S=_().core,l=r.useCallback((function(){var e,t;(null!==(e=null==E?void 0:E.metaDetailsVideos)&&void 0!==e?e:null==E?void 0:E.metaDetailsStreams)&&(window.location=null!==(t=null==E?void 0:E.metaDetailsVideos)&&void 0!==t?t:null==E?void 0:E.metaDetailsStreams)}),[E]),I=r.useCallback((function(e){var t,o,a,i;(e.stopPropagation(),null!==(t=null!==(o=null==E?void 0:E.player)&&void 0!==o?o:null==E?void 0:E.metaDetailsStreams)&&void 0!==t?t:null==E?void 0:E.metaDetailsVideos)&&(window.location=null!==(a=null!==(i=null==E?void 0:E.player)&&void 0!==i?i:null==E?void 0:E.metaDetailsStreams)&&void 0!==a?a:null==E?void 0:E.metaDetailsVideos)}),[E]),u=r.useCallback((function(e){e.stopPropagation(),"string"==typeof t&&(S.transport.dispatch({action:"Ctx",args:{action:"RewindLibraryItem",args:t}}),S.transport.dispatch({action:"Ctx",args:{action:"DismissNotificationItem",args:t}}))}),[t]);return r.createElement(T,i({},s,{_id:t,posterChangeCursor:!0,notifications:o,onClick:l,onPlayClick:I,onDismissClick:u}))};s.propTypes={_id:E.string,notifications:E.object,deepLinks:E.shape({metaDetailsVideos:E.string,metaDetailsStreams:E.string,player:E.string})},e.exports=s},63418:(e,t,o)=>{var a=o(16306);e.exports=a},36672:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o1&&void 0!==arguments[1]?arguments[1]:function(){};return function(o){var i=r().core,s=T(),S=a(n.useState(null===s),2),l=S[0],I=S[1],u=n.useRef({}),A=n.useRef({}),d=n.useCallback((function(e){return u.current[e]||(u.current[e]=_(i.transport.getState(e))),u.current[e].read()}),[]),c=n.useCallback((function(e){return A.current[e]||(A.current[e]=_(i.transport.decodeStream(e))),A.current[e].read()}),[]),O=n.useMemo((function(){return{getState:d,decodeStream:c}}),[]);return n.useLayoutEffect((function(){l||I(!0)}),[]),l?n.createElement(n.Suspense,{fallback:n.createElement(t,o)},n.createElement(E.Provider,{value:O},n.createElement(e,o))):null}},useCoreSuspender:T}},17473:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(17473);e.exports=a},83193:(e,t,o)=>{var a=o(67294),i=o(81468).useTranslation,n=o(6851),r=o(58253),E=o(25876),_=o(79950),T=o(95985).default;e.exports=function(){var e,t,o=i().t,s=E(),S=s.events,l=s.pullEvents,I=s.dismissEvent,u=a.useMemo((function(){var e;return"Ready"===(null==S||null===(e=S.modal)||void 0===e?void 0:e.type)?S.modal.content:null}),[S]),A=a.useCallback((function(){(null==u?void 0:u.id)&&I(u.id)}),[u]);return a.useEffect((function(){l()}),[]),null!==u?a.createElement(r,{className:_["event-modal"],onCloseRequest:A},u.imageUrl?a.createElement("img",{className:_.image,src:u.imageUrl}):null,a.createElement("div",{className:_["info-container"]},a.createElement("div",{className:_["title-container"]},u.title?a.createElement("div",{className:_.title},u.title):null,u.message?a.createElement("div",{className:_.label},u.message):null),null!=u&&null!==(e=u.addon)&&void 0!==e&&e.name?a.createElement("div",{className:_["addon-container"]},a.createElement(T,{className:_.icon,name:"addons"}),a.createElement("div",{className:_.name},u.addon.name)):null,null!=u&&null!==(t=u.addon)&&void 0!==t&&t.manifestUrl?a.createElement(n,{className:_["action-button"],href:"#/addons?addon=".concat(encodeURIComponent(u.addon.manifestUrl)),onClick:A},a.createElement("div",{className:_["button-label"]},o("INSTALL_ADDON"))):u.externalUrl?a.createElement(n,{className:_["action-button"],href:u.externalUrl,target:"_blank"},a.createElement("div",{className:_["button-label"]},o("LEARN_MORE"))):null)):null}},50586:(e,t,o)=>{var a=o(83193);e.exports=a},25876:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}var n=o(71535),r=o(63662).useServices,E=function(e){return(function(e){for(var t=1;t{var a=["className","src","alt","fallbackSrc","renderFallback"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=function(e){var t=e.className,o=e.src,r=e.alt,T=e.fallbackSrc,s=e.renderFallback,S=E(e,a),l=n(_.useState(!1),2),I=l[0],u=l[1],A=_.useCallback((function(e){"function"==typeof S.onError&&S.onError(e),u(!0)}),[S.onError]);return _.useLayoutEffect((function(){u(!1)}),[o]),!I&&"string"==typeof o&&0!==o.length||"function"!=typeof s&&"string"!=typeof T?_.createElement("img",i({},S,{className:t,src:o,alt:r,onError:A})):"function"==typeof s?s():_.createElement("img",i({},S,{className:t,src:T,alt:r}))};s.propTypes={className:T.string,src:T.string,alt:T.string,fallbackSrc:T.string,renderFallback:T.func,onError:T.func},e.exports=s},29872:(e,t,o)=>{var a=o(49504);e.exports=a},60859:(e,t,o)=>{var a=["_id","removable","notifications"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var T=o(67294),s=o(63662).useServices,S=o(45697),l=o(98277),I=o(96073).t,u=[{label:"LIBRARY_PLAY",value:"play"},{label:"LIBRARY_DETAILS",value:"details"},{label:"LIBRARY_RESUME_DISMISS",value:"dismiss"},{label:"LIBRARY_REMOVE",value:"remove"}],A=function(e){var t=e._id,o=e.removable,n=e.notifications,E=_(e,a),S=s().core,A=T.useMemo((function(){var e,o,a,i=null!==(e=null===(o=n.items)||void 0===o||null===(a=o[t])||void 0===a?void 0:a.length)&&void 0!==e?e:0;return Math.min(Math.max(i,0),99)}),[t,n]),d=T.useMemo((function(){return u.filter((function(e){switch(e.value){case"play":return E.deepLinks&&"string"==typeof E.deepLinks.player;case"details":return E.deepLinks&&("string"==typeof E.deepLinks.metaDetailsVideos||"string"==typeof E.deepLinks.metaDetailsStreams);case"dismiss":return"string"==typeof t&&null!==E.progress&&!isNaN(E.progress);case"remove":return"string"==typeof t&&o}})).map((function(e){return r(r({},e),{},{label:I(e.label)})}))}),[t,o,E.progress,E.deepLinks]),c=T.useCallback((function(e){if("function"==typeof E.optionOnSelect&&E.optionOnSelect(e),!e.nativeEvent.optionSelectPrevented)switch(e.value){case"play":E.deepLinks&&"string"==typeof E.deepLinks.player&&(window.location=E.deepLinks.player);break;case"details":E.deepLinks&&("string"==typeof E.deepLinks.metaDetailsVideos?window.location=E.deepLinks.metaDetailsVideos:"string"==typeof E.deepLinks.metaDetailsStreams&&(window.location=E.deepLinks.metaDetailsStreams));break;case"dismiss":"string"==typeof t&&(S.transport.dispatch({action:"Ctx",args:{action:"RewindLibraryItem",args:t}}),S.transport.dispatch({action:"Ctx",args:{action:"DismissNotificationItem",args:t}}));break;case"remove":"string"==typeof t&&S.transport.dispatch({action:"Ctx",args:{action:"RemoveFromLibrary",args:t}})}}),[t,E.deepLinks,E.optionOnSelect]);return T.createElement(l,i({},E,{newVideos:A,options:d,optionOnSelect:c}))};A.propTypes={_id:S.string,removable:S.bool,progress:S.number,notifications:S.object,deepLinks:S.shape({metaDetailsVideos:S.string,metaDetailsStreams:S.string,player:S.string}),optionOnSelect:S.func},e.exports=A},35748:(e,t,o)=>{var a=o(60859);e.exports=a},83364:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(11785),E=r.VerticalNavBar,_=r.HorizontalNavBar,T=o(49684),s=[{id:"board",label:"Board",icon:"home",href:"#/"},{id:"discover",label:"Discover",icon:"discover",href:"#/discover"},{id:"library",label:"Library",icon:"library",href:"#/library"},{id:"addons",label:"ADDONS",icon:"addons",href:"#/addons"},{id:"settings",label:"SETTINGS",icon:"settings",href:"#/settings"}],S=a.memo((function(e){var t=e.className,o=e.route,i=e.query,r=e.children;return a.createElement("div",{className:n(t,T["main-nav-bars-container"])},a.createElement(_,{className:T["horizontal-nav-bar"],route:o,query:i,backButton:!1,searchBar:!0,addonsButton:!0,fullscreenButton:!0,navMenu:!0}),a.createElement(E,{className:T["vertical-nav-bar"],selected:o,tabs:s}),a.createElement("div",{className:T["nav-content-container"]},r))}));S.displayName="MainNavBars",S.propTypes={className:i.string,route:i.string,query:i.string,children:i.node},e.exports=S},11297:(e,t,o)=>{var a=o(83364);e.exports=a},43037:(e,t,o)=>{var a=["className","type","name","poster","posterShape","posterChangeCursor","progress","newVideos","options","deepLinks","dataset","optionOnSelect","onDismissClick","onPlayClick","watched"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(81468).useTranslation,l=o(87280).Z,I=o(95985).default,u=o(6851),A=o(29872),d=o(53981),c=o(74024),O=o(52734).ICON_FOR_TYPE,R=o(54661),N=_.memo((function(e){var t=e.className,o=e.type,r=e.name,T=e.poster,N=e.posterShape,m=e.posterChangeCursor,L=e.progress,p=e.newVideos,D=e.options,h=e.deepLinks,C=e.dataset,f=e.optionOnSelect,g=e.onDismissClick,B=e.onPlayClick,P=e.watched,v=E(e,a),y=S().t,M=n(c(!1),3),W=M[0],b=M[1],U=M[2],G=_.useMemo((function(){return h?"string"==typeof h.player?h.player:"string"==typeof h.metaDetailsStreams?h.metaDetailsStreams:"string"==typeof h.metaDetailsVideos?h.metaDetailsVideos:null:null}),[h]),k=_.useCallback((function(e){"function"==typeof v.onClick&&v.onClick(e),e.nativeEvent.selectPrevented&&e.preventDefault()}),[v.onClick]),F=_.useCallback((function(e){e.nativeEvent.selectPrevented=!0}),[]),V=_.useCallback((function(e){"function"==typeof f&&f({type:"select-option",value:e.value,dataset:C,reactEvent:e.reactEvent,nativeEvent:e.nativeEvent})}),[C,f]),w=_.useCallback((function(){return _.createElement(I,{className:R["placeholder-icon"],name:O.has(o)?O.get(o):O.get("other")})}),[o]),H=_.useCallback((function(){return _.createElement(I,{className:R.icon,name:"more-vertical"})}),[]);return _.createElement(u,i({title:r,href:G},l(v),{className:s(t,R["meta-item-container"],R["poster-shape-poster"],R["poster-shape-".concat(N)],{active:W}),onClick:k}),_.createElement("div",{className:s(R["poster-container"],{"poster-change-cursor":m})},g?_.createElement("div",{title:y("LIBRARY_RESUME_DISMISS"),className:R["dismiss-icon-layer"],onClick:g},_.createElement(I,{className:R["dismiss-icon"],name:"close"}),_.createElement("div",{className:R["dismiss-icon-backdrop"]})):null,!p&&P?_.createElement("div",{className:R["watched-icon-layer"]},_.createElement(I,{className:R["watched-icon"],name:"checkmark"})):null,_.createElement("div",{className:R["poster-image-layer"]},_.createElement(A,{className:R["poster-image"],src:T,alt:" ",renderFallback:w})),B?_.createElement("div",{title:y("CONTINUE_WATCHING"),className:R["play-icon-layer"],onClick:B},_.createElement(I,{className:R["play-icon"],name:"play"}),_.createElement("div",{className:R["play-icon-outer"]}),_.createElement("div",{className:R["play-icon-background"]})):null,L>0?_.createElement("div",{className:R["progress-bar-layer"]},_.createElement("div",{className:R["progress-bar"],style:{width:"".concat(100*Math.max(0,Math.min(1,L)),"%")}}),_.createElement("div",{className:R["progress-bar-background"]})):null,p>0?_.createElement("div",{className:R["new-videos"]},_.createElement("div",{className:R.layer}),_.createElement("div",{className:R.layer}),_.createElement("div",{className:R.layer},_.createElement(I,{className:R.icon,name:"add"}),_.createElement("div",{className:R.label},p))):null),"string"==typeof r&&r.length>0||Array.isArray(D)&&D.length>0?_.createElement("div",{className:R["title-bar-container"]},_.createElement("div",{className:R["title-label"]},"string"==typeof r&&r.length>0?r:""),Array.isArray(D)&&D.length>0?_.createElement(d,{className:R["menu-label-container"],renderLabelContent:H,options:D,onOpen:b,onClose:U,onSelect:V,tabIndex:-1,onClick:F}):null):null)}));N.displayName="MetaItem",N.propTypes={className:T.string,type:T.string,name:T.string,poster:T.string,posterShape:T.oneOf(["poster","landscape","square"]),posterChangeCursor:T.bool,progress:T.number,newVideos:T.number,options:T.array,deepLinks:T.shape({metaDetailsVideos:T.string,metaDetailsStreams:T.string,player:T.string}),dataset:T.object,optionOnSelect:T.func,onDismissClick:T.func,onPlayClick:T.func,onClick:T.func,watched:T.bool},e.exports=N},98277:(e,t,o)=>{var a=o(43037);e.exports=a},84902:(e,t,o)=>{var a=["className","icon","label","tooltip"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(94184),T=o(95985).default,s=o(6851),S=o(65883),l=o(37541).Tooltip,I=function(e){var t=e.className,o=e.icon,E=e.label,I=e.tooltip,u=n(e,a);return r.createElement(s,i({title:I?"":E},u,{className:_(t,S["action-button-container"],{wide:"string"==typeof E&&!I})}),!0===I?r.createElement(l,{label:E,position:"top"}):null,"string"==typeof o&&o.length>0?r.createElement("div",{className:S["icon-container"]},r.createElement(T,{className:S.icon,name:o})):null,!I&&"string"==typeof E&&E.length>0?r.createElement("div",{className:S["label-container"]},r.createElement("div",{className:S.label},E)):null)};I.propTypes={className:E.string,icon:E.string,label:E.string,tooltip:E.bool},e.exports=I},60217:(e,t,o)=>{var a=o(84902);e.exports=a},78049:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(6851),_=o(17621),T=function(e){var t=e.className,o=e.label,i=e.links,T=r().t;return a.createElement("div",{className:n(t,_["meta-links-container"])},"string"==typeof o&&o.length>0?a.createElement("div",{className:_["label-container"]},T("LINKS_".concat(o.toUpperCase()))):null,Array.isArray(i)&&i.length>0?a.createElement("div",{className:_["links-container"]},i.map((function(e,t){var o=e.label,i=e.href;return a.createElement(E,{key:t,className:_["link-container"],title:o,href:i},T(o))}))):null)};T.propTypes={className:i.string,label:i.string,links:i.arrayOf(i.shape({label:i.string,href:i.string}))},e.exports=T},37818:(e,t,o)=>{var a=o(78049);e.exports=a},26314:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o0&&(e.has(o)||e.set(o,[]),e.get(o).push({label:a,href:"https://www.stremio.com/warning#".concat(encodeURIComponent(i))})),e}),new Map):new Map}),[v]),w=r.useMemo((function(){return P?"string"==typeof P.player?P.player:"string"==typeof P.metaDetailsStreams?P.metaDetailsStreams:"string"==typeof P.metaDetailsVideos?P.metaDetailsVideos:null:null}),[P]),H=r.useMemo((function(){return Array.isArray(y)&&0!==y.length?y[0].deepLinks.player:null}),[y]),Y=r.useCallback((function(){return r.createElement("div",{className:L["logo-placeholder"]},m)}),[m]);return r.createElement("div",{className:_(E,L["meta-preview-container"],(t={},o=L.compact,n=c,o in t?Object.defineProperty(t,o,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[o]=n,t))},"string"==typeof h&&h.length>0?r.createElement("div",{className:L["background-image-layer"]},r.createElement(I,{className:L["background-image"],src:h,alt:" "})):null,r.createElement("div",{className:L["meta-info-container"]},"string"==typeof D&&D.length>0?r.createElement(I,{className:L.logo,src:D,alt:" ",title:m,renderFallback:Y}):Y(),"string"==typeof f&&f.length>0||g instanceof Date&&!isNaN(g.getTime())||"string"==typeof C&&C.length>0||V.has(d.IMDB_LINK_CATEGORY)?r.createElement("div",{className:L["runtime-release-info-container"]},"string"==typeof C&&C.length>0?r.createElement("div",{className:L["runtime-label"]},C):null,"string"==typeof f&&f.length>0?r.createElement("div",{className:L["release-info-label"]},f):g instanceof Date&&!isNaN(g.getTime())?r.createElement("div",{className:L["release-info-label"]},g.getFullYear()):null,V.has(d.IMDB_LINK_CATEGORY)?r.createElement(l,a({className:L["imdb-button-container"],title:V.get(d.IMDB_LINK_CATEGORY).label,href:V.get(d.IMDB_LINK_CATEGORY).href,target:"_blank"},c?{tabIndex:-1}:null),r.createElement("div",{className:L.label},V.get(d.IMDB_LINK_CATEGORY).label),r.createElement(S,{className:L.icon,name:"imdb"})):null):null,c&&"string"==typeof B&&B.length>0?r.createElement("div",{className:L["description-container"]},B):null,Array.from(V.keys()).filter((function(e){return e!==d.IMDB_LINK_CATEGORY&&e!==d.SHARE_LINK_CATEGORY&&e!==d.WRITERS_LINK_CATEGORY})).map((function(e,t){return r.createElement(N,{key:t,className:L["meta-links"],label:e,links:V.get(e)})})),!c&&"string"==typeof B&&B.length>0?r.createElement("div",{className:L["description-container"]},r.createElement("div",{className:L["label-container"]},b("SUMMARY")),B):null),r.createElement("div",{className:L["action-buttons-container"]},"function"==typeof W?r.createElement(R,{className:L["action-button"],icon:M?"remove-from-library":"add-to-library",label:b(M?"REMOVE_FROM_LIB":"ADD_TO_LIB"),tooltip:c,tabIndex:c?-1:0,onClick:W}):null,"string"==typeof H?r.createElement(R,{className:L["action-button"],icon:"trailer",label:b("TRAILER"),tabIndex:c?-1:0,href:H,tooltip:c}):null,"string"==typeof w&&c?r.createElement(R,{className:_(L["action-button"],L["show-button"]),icon:"play",label:b("SHOW"),tabIndex:c?-1:0,href:w}):null,V.has(d.SHARE_LINK_CATEGORY)&&!c?r.createElement(r.Fragment,null,r.createElement(R,{className:L["action-button"],icon:"share",label:b("CTX_SHARE"),tooltip:!0,tabIndex:c?-1:0,onClick:k}),G?r.createElement(u,{title:b("CTX_SHARE"),onCloseRequest:F},r.createElement(A,{className:L["share-prompt"],url:V.get(d.SHARE_LINK_CATEGORY).href})):null):null))};D.Placeholder=m,D.propTypes={className:E.string,compact:E.bool,name:E.string,logo:E.string,background:E.string,runtime:E.string,releaseInfo:E.string,released:E.instanceOf(Date),description:E.string,deepLinks:E.shape({metaDetailsVideos:E.string,metaDetailsStreams:E.string,player:E.string}),links:E.arrayOf(E.shape({category:E.string,name:E.string,url:E.string})),trailerStreams:E.array,inLibrary:E.bool,toggleInLibrary:E.func},e.exports=D},12641:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(76506),E=function(e){var t=e.className;return a.createElement("div",{className:n(t,r["meta-preview-placeholder-container"])},a.createElement("div",{className:r["meta-info-container"]},a.createElement("div",{className:r["logo-container"]}),a.createElement("div",{className:r["duration-release-info-container"]},a.createElement("div",{className:r["duration-container"]}),a.createElement("div",{className:r["release-info-container"]})),a.createElement("div",{className:r["genres-container"]},a.createElement("div",{className:r["genres-header-container"]}),a.createElement("div",{className:r["genre-label-container"]})),a.createElement("div",{className:r["genres-container"]},a.createElement("div",{className:r["genres-header-container"]}),a.createElement("div",{className:r["genre-label-container"]})),a.createElement("div",{className:r["genres-container"]},a.createElement("div",{className:r["genres-header-container"]}),a.createElement("div",{className:r["genre-label-container"]}))),a.createElement("div",{className:r["action-buttons-container"]}))};E.propTypes={className:i.string},e.exports=E},74322:(e,t,o)=>{var a=o(12641);e.exports=a},73070:(e,t,o)=>{var a=o(26314);e.exports=a},78370:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t0?r.createElement("div",{className:A["title-container"],title:c},c):null,R?r.createElement(S,{className:A["see-all-container"],title:d.string("BUTTON_SEE_ALL"),href:R,tabIndex:-1},r.createElement("div",{className:A.label},d.string("BUTTON_SEE_ALL")),r.createElement(s,{className:A.icon,name:"chevron-forward"})):null),"string"==typeof n&&n.length>0?r.createElement("div",{className:A["message-container"],title:n},n):r.createElement("div",{className:A["meta-items-container"]},E.isValidElementType(_)?O.slice(0,l.CATALOG_PREVIEW_SIZE).map((function(e,t){return r.createElement(_,i(i({},e),{},{key:t,className:T(A["meta-item"],A["poster-shape-poster"],A["poster-shape-".concat(e.posterShape)]),notifications:u}))})):null,Array(Math.max(0,l.CATALOG_PREVIEW_SIZE-O.length)).fill(null).map((function(e,t){return r.createElement("div",{key:t,className:T(A["meta-item"],A["poster-shape-poster"])})}))))};d.Placeholder=u,d.propTypes={className:_.string,title:_.string,message:_.string,catalog:_.shape({id:_.string,name:_.string,type:_.string,addon:_.shape({manifest:_.shape({id:_.string,name:_.string})}),content:_.shape({content:_.oneOfType([_.string,_.arrayOf(_.shape({posterShape:_.string}))])}),items:_.arrayOf(_.shape({posterShape:_.string})),deepLinks:_.shape({discover:_.string,library:_.string})}),itemComponent:_.elementType,notifications:_.object},e.exports=d},92268:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(95985).default,_=o(6851),T=o(52734),s=o(17841),S=function(e){var t=e.className,o=e.title,i=e.deepLinks,S=r().t;return a.createElement("div",{className:n(t,s["meta-row-placeholder-container"])},a.createElement("div",{className:s["header-container"]},a.createElement("div",{className:s["title-container"],title:"string"==typeof o&&o.length>0?o:null},"string"==typeof o&&o.length>0?o:null),i&&"string"==typeof i.discover?a.createElement(_,{className:s["see-all-container"],title:S("BUTTON_SEE_ALL"),href:i.discover,tabIndex:-1},a.createElement("div",{className:s.label},S("BUTTON_SEE_ALL")),a.createElement(E,{className:s.icon,name:"chevron-forward"})):null),a.createElement("div",{className:s["meta-items-container"]},Array(T.CATALOG_PREVIEW_SIZE).fill(null).map((function(e,t){return a.createElement("div",{key:t,className:s["meta-item"]},a.createElement("div",{className:s["poster-container"]}),a.createElement("div",{className:s["title-bar-container"]},a.createElement("div",{className:s["title-label"]})))}))))};S.propTypes={className:i.string,title:i.string,deepLinks:i.shape({discover:i.string})},e.exports=S},90411:(e,t,o)=>{var a=o(92268);e.exports=a},39321:(e,t,o)=>{var a=o(78370);e.exports=a},98787:(e,t,o)=>{var a=["className","title","buttons","children","dataset","onCloseRequest"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(94184),T=o(21665),s=T.useRouteFocused,S=T.useModalsContainer,l=o(6851),I=o(95985).default,u=o(21665).Modal,A=o(11621),d=function(e){var t=e.className,o=e.title,E=e.buttons,T=e.children,d=e.dataset,c=e.onCloseRequest,O=n(e,a),R=s(),N=S(),m=r.useRef(null),L=r.useCallback((function(e){"function"==typeof c&&c({type:"close",dataset:d,reactEvent:e,nativeEvent:e.nativeEvent})}),[d,c]),p=r.useCallback((function(e){e.nativeEvent.closeModalDialogPrevented||"function"!=typeof c||c({type:"close",dataset:d,reactEvent:e,nativeEvent:e.nativeEvent})}),[d,c]),D=r.useCallback((function(e){e.nativeEvent.closeModalDialogPrevented=!0}),[]);return r.useEffect((function(){var e=function(e){"Escape"===e.code&&N.childNodes[N.childElementCount-2]===m.current&&"function"==typeof c&&c({type:"close",dataset:d,nativeEvent:e})};return R&&window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[R,d,c]),r.createElement(u,i({ref:m},O,{className:_(t,A["modal-container"]),onMouseDown:p}),r.createElement("div",{className:A["modal-dialog-container"],onMouseDown:D},r.createElement(l,{className:A["close-button-container"],title:"Close",onClick:L},r.createElement(I,{className:A.icon,name:"close"})),"string"==typeof o&&o.length>0?r.createElement("div",{className:A["title-container"],title:o},o):null,r.createElement("div",{className:A["modal-dialog-content"]},T),Array.isArray(E)&&E.length>0?r.createElement("div",{className:A["buttons-container"]},E.map((function(e,t){var o=e.className,a=e.label,n=e.icon,E=e.props;return r.createElement(l,i({title:a},E,{key:t,className:_(o,A["action-button"])}),"string"==typeof n&&n.length>0?r.createElement(I,{className:A.icon,name:n}):null,"string"==typeof a&&a.length>0?r.createElement("div",{className:A.label},a):null)}))):null))};d.propTypes={className:E.string,title:E.string,buttons:E.arrayOf(E.shape({className:E.string,label:E.string,icon:E.string,props:E.object})),children:E.oneOfType([E.arrayOf(E.node),E.node]),dataset:E.object,onCloseRequest:E.func},e.exports=d},58253:(e,t,o)=>{var a=o(98787);e.exports=a},82035:(e,t,o)=>{var a=["className","mode","direction","title","disabled","dataset","renderLabelContent","renderLabelText","onOpen","onClose","onSelect"],i=["children","className"];function n(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function r(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var l=o(67294),I=o(45697),u=o(94184),A=o(95985).default,d=o(6851),c=o(9418),O=o(58253),R=o(74024),N=o(57409),m=function(e){var t=e.className,o=e.mode,n=e.direction,E=e.title,s=e.disabled,I=e.dataset,m=e.renderLabelContent,L=e.renderLabelText,p=e.onOpen,D=e.onClose,h=e.onSelect,C=S(e,a),f=T(R(!1),4),g=f[0],B=f[2],P=f[3],v=l.useMemo((function(){return Array.isArray(C.options)?C.options.filter((function(e){return e&&("string"==typeof e.value||null===e.value)})):[]}),[C.options]),y=l.useMemo((function(){return Array.isArray(C.selected)?C.selected.filter((function(e){return"string"==typeof e||null===e})):[]}),[C.selected]),M=l.useCallback((function(e){"function"==typeof C.onClick&&C.onClick(e),e.nativeEvent.toggleMenuPrevented||P()}),[C.onClick,P]),W=l.useCallback((function(e){e.nativeEvent.toggleMenuPrevented=!0}),[]),b=l.useCallback((function(e){e.nativeEvent.buttonClickPrevented=!0}),[]),U=l.useCallback((function(e){"function"==typeof h&&h({type:"select",value:e.currentTarget.dataset.value,reactEvent:e,nativeEvent:e.nativeEvent,dataset:I}),e.nativeEvent.closeMenuPrevented||B()}),[I,h]),G=l.useRef(!1);l.useLayoutEffect((function(){G.current&&(g?"function"==typeof p&&p({type:"open",dataset:I}):"function"==typeof D&&D({type:"close",dataset:I})),G.current=!0}),[g]);var k=l.useCallback((function(e){var t=e.children,o=e.className,a=S(e,i);return l.createElement(d,_({},a,{className:u(o,N["label-container"],{active:g}),title:E,disabled:s,onClick:M}),"function"==typeof m?m():l.createElement(l.Fragment,null,l.createElement("div",{className:N.label},"function"==typeof L?L():y.length>0?y.map((function(e){var t=v.find((function(t){return t.value===e}));return t&&"string"==typeof t.label?t.label:e})).join(", "):E),l.createElement(A,{className:N.icon,name:"caret-down"})),t)}),[g,E,s,v,y,M,m,L]),F=l.useCallback((function(){return l.createElement("div",{className:N["menu-container"],onKeyDown:b,onClick:W},v.length>0?v.map((function(e){var t=e.label,o=e.title,a=e.value;return l.createElement(d,{key:a,className:u(N["option-container"],{selected:y.includes(a)}),title:"string"==typeof o?o:"string"==typeof t?t:a,"data-value":a,onClick:U},l.createElement("div",{className:N.label},"string"==typeof t?t:a),l.createElement("div",{className:N.icon}))})):l.createElement("div",{className:N["no-options-container"]},l.createElement("div",{className:N.label},"No options available")))}),[v,y,b,W,U]),V=l.useMemo((function(){return function(e){return k(r(r(r({},e),C),{},{className:u(t,e.className)}))}}),[C,t,k]);return"modal"===o?k(r(r({},C),{},{className:t,children:g?l.createElement(O,{className:N["modal-container"],title:E,onCloseRequest:B,onKeyDown:b,onClick:W},F()):null})):l.createElement(c,{open:g,direction:n,onCloseRequest:B,renderLabel:V,renderMenu:F})};m.propTypes={className:I.string,mode:I.oneOf(["popup","modal"]),direction:I.any,title:I.string,options:I.arrayOf(I.shape({value:I.string,title:I.string,label:I.string})),selected:I.arrayOf(I.string),disabled:I.bool,dataset:I.object,renderLabelContent:I.func,renderLabelText:I.func,onOpen:I.func,onClose:I.func,onSelect:I.func,onClick:I.func},e.exports=m},53981:(e,t,o)=>{var a=o(82035);e.exports=a},46934:(e,t,o)=>{var a=["className","route","query","title","backButton","searchBar","addonsButton","fullscreenButton","navMenu"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(95985).default,l=o(6851),I=o(29872),u=o(88489),A=o(43224),d=o(75430),c=o(70923),O=o(74887),R=o(96073).t,N=_.memo((function(e){var t=e.className,r=e.route,T=e.query,N=e.title,m=e.backButton,L=e.searchBar,p=e.addonsButton,D=e.fullscreenButton,h=e.navMenu,C=E(e,a),f=_.useCallback((function(){window.history.back()}),[]),g=n(u(),3),B=g[0],P=g[1],v=g[2],y=n(A(),1)[0],M=_.useCallback((function(e){var t=e.ref,o=e.className,a=e.onClick,i=e.children;return _.createElement(l,{ref:t,className:s(o,O["button-container"],O["menu-button-container"]),tabIndex:-1,onClick:a},_.createElement(S,{className:O.icon,name:"person-outline"}),i)}),[]);return _.createElement("nav",i({},C,{className:s(t,O["horizontal-nav-bar-container"])}),m?_.createElement(l,{className:s(O["button-container"],O["back-button-container"]),tabIndex:-1,onClick:f},_.createElement(S,{className:O.icon,name:"chevron-back"})):_.createElement("div",{className:O["logo-container"]},_.createElement(I,{className:O.logo,src:o(35313),alt:" "})),"string"==typeof N&&N.length>0?_.createElement("h2",{className:O.title},N):null,L&&"addons"!==r?_.createElement(d,{className:O["search-bar"],query:T,active:"search"===r}):null,_.createElement("div",{className:O["buttons-container"]},p?_.createElement(l,{className:O["button-container"],href:"#/addons",title:R("ADDONS"),tabIndex:-1},_.createElement(S,{className:O.icon,name:"addons-outline"})):null,!y&&D?_.createElement(l,{className:O["button-container"],title:R(B?"EXIT_FULLSCREEN":"ENTER_FULLSCREEN"),tabIndex:-1,onClick:B?v:P},_.createElement(S,{className:O.icon,name:B?"minimize":"maximize"})):null,h?_.createElement(c,{renderLabel:M}):null))}));N.displayName="HorizontalNavBar",N.propTypes={className:T.string,route:T.string,query:T.string,title:T.string,backButton:T.bool,searchBar:T.bool,addonsButton:T.bool,fullscreenButton:T.bool,navMenu:T.bool},e.exports=N},21229:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{function a(e,t,o,a,i,n,r){try{var E=e[n](r),_=E.value}catch(e){return void o(e)}E.done?t(_):Promise.resolve(_).then(a,i)}function i(e){return function(){var t=this,o=arguments;return new Promise((function(i,n){var r=e.apply(t,o);function E(e){a(r,i,n,E,_,"next",e)}function _(e){a(r,i,n,E,_,"throw",e)}E(void 0)}))}}function n(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return r(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(21229);e.exports=a},83833:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o0?n.createElement(l,{className:O["submit-button-container"],onClick:V},n.createElement(s,{className:O.icon,name:"close"})):n.createElement(l,{className:O["submit-button-container"]},n.createElement(s,{className:O.icon,name:"search"})),g&&(null!=D&&null!==(t=D.items)&&void 0!==t&&t.length||null!=h&&null!==(o=h.items)&&void 0!==o&&o.length)?n.createElement("div",{className:O["menu-container"]},(null==D||null===(i=D.items)||void 0===i?void 0:i.length)>0?n.createElement("div",{className:O.items},n.createElement("div",{className:O.title},n.createElement("div",{className:O.label},L("STREMIO_TV_SEARCH_HISTORY_TITLE")),n.createElement("button",{className:O["search-history-clear"],onClick:D.clear},L("CLEAR_HISTORY"))),D.items.slice(0,8).map((function(e,t){var o=e.query,a=e.deepLinks;return n.createElement(l,{key:t,className:O.item,href:a.search,onClick:P},o)}))):null,null!=h&&null!==(r=h.items)&&void 0!==r&&r.length?n.createElement("div",{className:O.items},n.createElement("div",{className:O.title},n.createElement("div",{className:O.label},L("SEARCH_SUGGESTIONS"))),h.items.map((function(e,t){var o=e.query,a=e.deepLinks;return n.createElement(l,{key:t,className:O.item,href:a.search,onClick:P},o)}))):null):null)}));N.displayName="SearchBar",N.propTypes={className:r.string,query:r.string,active:r.bool};var m=function(e){var t=e.className,o=T().t;return n.createElement("label",{className:E(t,O["search-bar-container"])},n.createElement("div",{className:O["search-input"]},n.createElement("div",{className:O["placeholder-label"]},o("SEARCH_OR_PASTE_LINK"))),n.createElement(l,{className:O["submit-button-container"],tabIndex:-1},n.createElement(s,{className:O.icon,name:"search"})))};m.propTypes=N.propTypes,e.exports=A(N,m)},75430:(e,t,o)=>{var a=o(83833);e.exports=a},55562:(e,t,o)=>{var a=o(67294),i=o(63662).useServices,n=o(71535);e.exports=function(){var e=i().core,t=a.useMemo((function(){return{action:"Load",args:{model:"LocalSearch"}}}),[]);return{items:n({model:"local_search",action:t}).items,search:a.useCallback((function(t){e.transport.dispatch({action:"Search",args:{action:"Search",args:{searchQuery:t,maxResults:5}}})}),[])}}},39899:(e,t,o)=>{var a=o(67294),i=o(71535),n=o(63662).useServices;e.exports=function(){var e=n().core;return{items:i({model:"ctx"}).searchHistory,clear:a.useCallback((function(){e.transport.dispatch({action:"Ctx",args:{action:"ClearSearchHistory"}})}),[])}}},91871:(e,t,o)=>{var a=o(46934);e.exports=a},82878:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(6851),_=o(29872),T=o(39842),s=function(e){var t=e.className,o=e.logo,i=e.icon,s=e.label,S=e.href,l=e.selected,I=e.onClick,u=a.useCallback((function(){return"string"==typeof i&&i.length>0?a.createElement(r,{className:T.icon,name:i}):null}),[i]);return a.createElement(E,{className:n(t,T["nav-tab-button-container"],{selected:l}),title:s,tabIndex:-1,href:S,onClick:I},"string"==typeof o&&o.length>0?a.createElement(_,{className:T.logo,src:o,alt:" ",renderFallback:u}):"string"==typeof i&&i.length>0?a.createElement(r,{className:T.icon,name:l?i:"".concat(i,"-outline")}):null,"string"==typeof s&&s.length>0?a.createElement("div",{className:T.label},s):null)};s.propTypes={className:i.string,logo:i.string,icon:i.string,label:i.string,href:i.string,selected:i.bool,onClick:i.func},e.exports=s},63908:(e,t,o)=>{var a=o(82878);e.exports=a},96063:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(63908),_=o(27636),T=a.memo((function(e){var t=e.className,o=e.selected,i=e.tabs,T=r().t;return a.createElement("nav",{className:n(t,_["vertical-nav-bar-container"])},Array.isArray(i)?i.map((function(e,t){return a.createElement(E,{key:t,className:_["nav-tab-button"],selected:e.id===o,href:e.href,logo:e.logo,icon:e.icon,label:T(e.label),onClick:e.onClick})})):null)}));T.displayName="VerticalNavBar",T.propTypes={className:i.string,selected:i.string,tabs:i.arrayOf(i.shape({id:i.string,label:i.string,logo:i.string,icon:i.string,href:i.string,onClick:i.func}))},e.exports=T},29798:(e,t,o)=>{var a=o(96063);e.exports=a},11785:(e,t,o)=>{var a=o(91871),i=o(29798);e.exports={HorizontalNavBar:a,VerticalNavBar:i}},98417:(e,t,o)=>{var a=["className","label","dataset","onSelect"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(94184),T=o(95985).default,s=o(6851),S=o(12168),l=function(e){var t=e.className,o=e.label,E=e.dataset,l=e.onSelect,I=n(e,a),u=r.useCallback((function(e){"function"==typeof l&&l({type:"change-page",value:e.currentTarget.dataset.value,dataset:E,reactEvent:e,nativeEvent:e.nativeEvent})}),[E,l]);return r.createElement("div",i({},I,{className:_(t,S["pagination-input-container"])}),r.createElement(s,{className:S["prev-button-container"],title:"Previous page","data-value":"prev",onClick:u},r.createElement(T,{className:S.icon,name:"chevron-back"})),r.createElement("div",{className:S["label-container"],title:o},r.createElement("div",{className:S.label},o)),r.createElement(s,{className:S["next-button-container"],title:"Next page","data-value":"next",onClick:u},r.createElement(T,{className:S.icon,name:"chevron-forward"})))};l.propTypes={className:E.string,label:E.string,dataset:E.object,onSelect:E.func},e.exports=l},52391:(e,t,o)=>{var a=o(98417);e.exports=a},57206:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(9192),r=function(e){var t=e.className;return a.createElement("svg",{className:t,viewBox:"0 0 100 100"},a.createElement("circle",{className:n.background,cx:"50",cy:"50",r:"50"}),a.createElement("svg",{className:n.icon,x:"0",y:"25",width:"100",height:"50",viewBox:"0 0 37.14 32"},a.createElement("path",{d:"M 9.14,0 37.14,16 9.14,32 Z"})))};r.propTypes={className:i.string},e.exports=r},60926:(e,t,o)=>{var a=o(57206);e.exports=a},51804:(e,t,o)=>{var a=["open","direction","renderLabel","renderMenu","dataset","onCloseRequest"];function i(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function n(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var s=o(67294),S=o(45697),l=o(94184),I=o(56413).ZP,u=o(21665).useRouteFocused,A=o(20194),d=function e(t){if(t===document.documentElement)return t;var o=window.getComputedStyle(t);return-1!==o.overflowY.indexOf("auto")||-1!==o.overflowY.indexOf("scroll")?t:e(t.parentElement)},c=function(e){var t=e.open,o=e.direction,i=e.renderLabel,_=e.renderMenu,S=e.dataset,c=e.onCloseRequest,O=T(e,a),R=u(),N=s.useRef(null),m=s.useRef(null),L=E(s.useState(null),2),p=L[0],D=L[1],h=s.useCallback((function(e){e.nativeEvent.closePopupPrevented=!0}),[]);return s.useEffect((function(){var e=function(e){if(!e.closePopupPrevented&&"function"==typeof c){var t={type:"close",nativeEvent:e,dataset:S};switch(e.type){case"keydown":"Escape"===e.code&&c(t);break;case"mousedown":case"pointerdown":e.target===document.documentElement||N.current.contains(e.target)||c(t)}}};return R&&t&&(window.addEventListener("keydown",e),window.addEventListener("mousedown",e),window.addEventListener("pointerdown",e)),function(){window.removeEventListener("keydown",e),window.removeEventListener("mousedown",e),window.removeEventListener("pointerdown",e)}}),[R,t,c,S]),s.useLayoutEffect((function(){if(t){var e=[],o=d(N.current).getBoundingClientRect(),a=N.current.getBoundingClientRect(),i=m.current.getBoundingClientRect(),n={left:a.left-o.left,top:a.top-o.top,right:o.width+o.left-(a.left+a.width),bottom:o.height+o.top-(a.top+a.height)};i.height<=n.bottom?e.push("bottom"):i.height<=n.top?e.push("top"):n.bottom>=n.top?e.push("bottom"):e.push("top"),i.width<=n.right+a.width?e.push("right"):i.width<=n.left+a.width?e.push("left"):n.right>n.left?e.push("right"):e.push("left"),D(e.join("-"))}else D(null)}),[t]),i(n(n({},O),{},{ref:N,className:l(A["label-container"],O.className,{active:t}),children:t?s.createElement(I,{ref:m,className:l(A["menu-container"],r({},A["menu-direction-".concat(p)],!o),r({},A["menu-direction-".concat(o)],o)),autoFocus:!1,lockProps:{onMouseDown:h}},_()):null}))};c.propTypes={open:S.bool,direction:S.oneOf(["top-left","bottom-left","top-right","bottom-right"]),renderLabel:S.func.isRequired,renderMenu:S.func.isRequired,dataset:S.object,onCloseRequest:S.func},e.exports=c},9418:(e,t,o)=>{var a=o(51804);e.exports=a},56182:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(86230),_=o(64830),T=o(30330),s=function(e){var t=e.className,o=e.title,i=e.value,_=e.onChange;return a.createElement("label",{title:o,className:n(t,T["search-bar-container"])},a.createElement(E,{className:T["search-input"],type:"text",placeholder:o,value:i,onChange:_}),a.createElement(r,{className:T.icon,name:"search"}))};s.Placeholder=_,s.propTypes={className:i.string,title:i.string,value:i.string,onChange:i.func},e.exports=s},83994:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(3109),_=function(e){var t=e.className,o=e.title;return a.createElement("div",{className:n(t,E["search-bar-container"])},a.createElement("div",{className:E["search-input"]},o),a.createElement(r,{className:E.icon,name:"search"}))};_.propTypes={className:i.string,title:i.string},e.exports=_},64830:(e,t,o)=>{var a=o(83994);e.exports=a},6798:(e,t,o)=>{var a=o(56182);e.exports=a},55005:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(95985).default,_=o(21665).useRouteFocused,T=o(63662).useServices,s=o(17263),S=o(6851),l=o(86230),I=o(84530),u=function(e){var t=e.className,o=e.url,i=r().t,u=T().core,A=s(),d=a.useRef(null),c=_(),O=a.useCallback((function(){null!==d.current&&d.current.select()}),[]),R=a.useCallback((function(){null!==d.current&&(d.current.select(),document.execCommand("copy"),A.show({type:"success",title:"Copied to clipboard",timeout:3e3}))}),[]);return a.useEffect((function(){c&&null!==d.current&&d.current.select()}),[c]),a.useEffect((function(){u.transport.analytics({event:"Share",args:{url:o}})}),[o]),a.createElement("div",{className:n(t,I["share-prompt-container"])},a.createElement("div",{className:I["buttons-container"]},a.createElement(S,{className:n(I["button-container"],I["facebook-button"]),title:"Facebook",href:"https://www.facebook.com/sharer/sharer.php?u=".concat(o),target:"_blank"},a.createElement(E,{className:I.icon,name:"facebook"})),a.createElement(S,{className:n(I["button-container"],I["x-button"]),title:"X (Twitter)",href:"https://twitter.com/intent/tweet?text=".concat(o),target:"_blank"},a.createElement(E,{className:I.icon,name:"x"})),a.createElement(S,{className:n(I["button-container"],I["reddit-button"]),title:"Reddit",href:"https://www.reddit.com/submit?url=".concat(o),target:"_blank"},a.createElement(E,{className:I.icon,name:"reddit"}))),a.createElement("div",{className:I["url-container"]},a.createElement(l,{ref:d,className:I["url-text-input"],type:"text",readOnly:!0,defaultValue:o,onClick:O,tabIndex:-1}),a.createElement(S,{className:I["copy-button"],title:"Copy to clipboard",onClick:R},a.createElement(E,{className:I.icon,name:"link"}),a.createElement("div",{className:I.label},i("COPY")))))};u.propTypes={className:i.string,url:i.string},e.exports=u},89393:(e,t,o)=>{var a=o(55005);e.exports=a},34068:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(34068);e.exports=a},69009:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;tDate.now()?null:r.createElement("div",{className:T(t,u["warning-container"])},r.createElement("div",{className:u["warning-statement"]},o("SETTINGS_SERVER_UNAVAILABLE")),r.createElement("a",{href:"https://www.stremio.com/download-service",target:"_blank",rel:"noreferrer"},r.createElement(S,{className:u["warning-button"],title:o("SERVICE_INSTALL"),tabIndex:-1},r.createElement("div",{className:u["warning-label"]},o("SERVICE_INSTALL")))),r.createElement(S,{className:u["warning-button"],title:o("WARNING_STREAMING_SERVER_LATER"),onClick:_,tabIndex:-1},r.createElement("div",{className:u["warning-label"]},o("WARNING_STREAMING_SERVER_LATER"))),r.createElement(S,{className:u["warning-button"],title:o("DONT_SHOW_AGAIN"),onClick:I,tabIndex:-1},r.createElement("div",{className:u["warning-label"]},o("DONT_SHOW_AGAIN"))))};A.propTypes={className:_.string},e.exports=I(A)},60861:(e,t,o)=>{var a=o(69009);e.exports=a},31007:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;t{var a=o(31007);e.exports=a},6049:(e,t,o)=>{var a=o(67294).createContext({show:function(){},clear:function(){}});a.displayName="ToastContext",e.exports=a},33345:(e,t,o)=>{var a=["title","message","dataset","onSelect","onClose"];function i(e,t){if(null==e)return{};var o,a,i=(function(e,t){if(null==e)return{};var o,a,i={},n=Object.keys(e);for(a=0;a=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var n=o(67294),r=o(45697),E=o(94184),_=o(95985).default,T=o(6851),s=o(49775),S=function(e){var t=e.title,o=e.message,r=e.dataset,S=e.onSelect,l=e.onClose,I=i(e,a),u=n.useMemo((function(){return["success","alert","error"].includes(I.type)?I.type:"success"}),[I.type]),A=n.useMemo((function(){return"string"==typeof I.icon?I.icon:"success"===u?"checkmark":"error"===u?"close":null}),[u,I.icon]),d=n.useCallback((function(e){e.nativeEvent.selectToastPrevented||"function"!=typeof S||S({type:"select",dataset:r,reactEvent:e,nativeEvent:e.nativeEvent}),e.nativeEvent.closeToastPrevented||"function"!=typeof l||l({type:"close",dataset:r,reactEvent:e,nativeEvent:e.nativeEvent})}),[r,S,l]),c=n.useCallback((function(e){e.nativeEvent.selectToastPrevented=!0,"function"==typeof l&&l({type:"close",dataset:r,reactEvent:e,nativeEvent:e.nativeEvent})}),[r,l]);return n.createElement(T,{className:E(s["toast-item-container"],s[u]),tabIndex:-1,onClick:d},"string"==typeof A&&A.length>0?n.createElement("div",{className:s["icon-container"]},n.createElement(_,{className:s.icon,name:A})):null,n.createElement("div",{className:s["info-container"]},"string"==typeof t&&t.length>0?n.createElement("div",{className:s["title-container"]},t):null,"string"==typeof o&&o.length>0?n.createElement("div",{className:s["message-container"]},o):null),n.createElement(T,{className:s["close-button-container"],title:"Close",tabIndex:-1,onClick:c},n.createElement(_,{className:s.icon,name:"close"})))};S.propTypes={type:r.oneOf(["success","alert","error"]),title:r.string,message:r.string,icon:r.string,dataset:r.object,onSelect:r.func,onClose:r.func},e.exports=S},25008:(e,t,o)=>{var a=o(33345);e.exports=a},19076:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o-1&&e.splice(o,1)},show:function(t){if(!e.some((function(e){return e(t)}))){var o="number"!=typeof t.timeout||isNaN(t.timeout)?3e3:t.timeout,a=setTimeout((function(){A({type:"remove",id:a})}),o);A({type:"add",item:n(n({},t),{},{id:a,dataset:n(n({},t.dataset),{},{id:a}),onClose:d})})}},clear:function(){A({type:"clear"})}}}),[]);return T.createElement(l.Provider,{value:c},r instanceof HTMLElement?o:null,T.createElement("div",{ref:_,className:t},u.map((function(e,t){return T.createElement(S,a({key:t},e))}))))};I.propTypes={className:s.string,children:s.node},e.exports=I},20018:(e,t,o)=>{var a=o(19076),i=o(17263);e.exports={ToastProvider:a,useToast:i}},17263:(e,t,o)=>{var a=o(67294),i=o(6049);e.exports=function(){return a.useContext(i)}},36014:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(10152),r=o(63494),E=function(e){var t=e.label,o=e.position,i=e.margin,E=void 0===i?15:i,_=n(),T=a.useRef((Math.random()+1).toString(36).substring(7)),s=a.useRef(null),S=function(){_.update(T.current,{active:!0})},l=function(){_.update(T.current,{active:!1})};return a.useEffect((function(){_.update(T.current,{label:t})}),[t]),a.useLayoutEffect((function(){if(s.current&&s.current.parentElement){var e=s.current.parentElement;_.add({id:T.current,label:t,position:o,margin:E,parent:e}),e.addEventListener("mouseenter",S),e.addEventListener("mouseleave",l)}return function(){if(s.current&&s.current.parentElement){var e=s.current.parentElement;e.removeEventListener("mouseenter",S),e.removeEventListener("mouseleave",l),_.remove(T.current)}}}),[]),a.createElement("div",{ref:s,className:r["tooltip-placeholder"]})};E.propTypes={label:i.string.isRequired,position:i.string.isRequired,margin:i.number},e.exports=E},79410:(e,t,o)=>{var a=o(36014);e.exports=a},5494:(e,t,o)=>{var a=(0,o(67294).createContext)(null);e.exports=a},12508:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(12508);e.exports=a},67169:(e,t,o)=>{var a=["id"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}function r(e){return(function(e){if(Array.isArray(e))return l(e)})(e)||(function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)})(e)||S(e)||(function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function E(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function _(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(67169),i=o(79410);e.exports={TooltipProvider:a,Tooltip:i}},10152:(e,t,o)=>{var a=o(67294),i=o(5494);e.exports=function(){return a.useContext(i)}},69309:e=>{e.exports=function(e){return function(t,o){return isNaN(e[t])&&isNaN(e[o])?t.localeCompare(o):isNaN(e[t])?e[o]===Number.NEGATIVE_INFINITY?-1:1:isNaN(e[o])?e[t]===Number.NEGATIVE_INFINITY?1:-1:e[o]-e[t]}}},9324:e=>{e.exports=function(e){return Array.from(e.children).reduce((function(t,o,a){return(function(e,t){var o=t.offsetTop,a=t.offsetTop+t.clientHeight,i=e.scrollTop,n=e.scrollTop+e.clientHeight;return o>=i&&a<=n||o{var a=o(58512),i=o(6851),n=o(49666),r=o(28809),E=o(63418),_=o(8006),T=o(29872),s=o(35748),S=o(11297),l=o(98277),I=o(73070),u=o(39321),A=o(58253),d=o(53981),c=o(11785),O=c.HorizontalNavBar,R=c.VerticalNavBar,N=o(52391),m=o(60926),L=o(9418),p=o(6798),D=o(60861),h=o(89393),C=o(36e3),f=o(86230),g=o(20018),B=g.ToastProvider,P=g.useToast,v=o(37541),y=v.TooltipProvider,M=v.Tooltip,W=o(69309),b=o(52734),U=o(36672),G=U.withCoreSuspender,k=U.useCoreSuspender,F=o(9324),V=o(75232),w=o(68832),H=o(68803),Y=o(4),z=o(74024),K=o(88489),j=o(47985),x=o(71535),Q=o(7049),X=o(83760),$=o(50552),q=o(30432),J=o(91657),Z=o(13590),ee=o(355),te=o(50586);e.exports={AddonDetailsModal:a,Button:i,Checkbox:n,ColorInput:r,ContinueWatchingItem:E,DelayedRenderer:_,Image:T,LibItem:s,MainNavBars:S,MetaItem:l,MetaPreview:I,MetaRow:u,ModalDialog:A,Multiselect:d,HorizontalNavBar:O,VerticalNavBar:R,PaginationInput:N,PlayIconCircleCentered:m,Popup:L,SearchBar:p,StreamingServerWarning:D,SharePrompt:h,Slider:C,TextInput:f,ToastProvider:B,useToast:P,TooltipProvider:y,Tooltip:M,comparatorWithPriorities:W,CONSTANTS:b,withCoreSuspender:G,useCoreSuspender:k,getVisibleChildrenRange:F,interfaceLanguages:V,languageNames:w,routesRegexp:H,useAnimationFrame:Y,useBinaryState:z,useFullscreen:K,useLiveRef:j,useModelState:x,useNotifications:Q,useOnScrollToBottom:X,useProfile:$,useStreamingServer:q,useTorrent:J,useTranslate:Z,platform:ee,EventModal:te}},355:(e,t,o)=>{var a,i;var n=o(51206).parse((null===(a=window.navigator)||void 0===a?void 0:a.userAgent)||""),r=["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document?"ios":((null==n||null===(i=n.os)||void 0===i?void 0:i.name)||"unknown").toLowerCase();e.exports={name:r,isMobile:function(){return"ios"===r||"android"===r}}},68803:e=>{e.exports={intro:{regexp:/^\/intro$/,urlParamsNames:[]},board:{regexp:/^\/?$/,urlParamsNames:[]},discover:{regexp:/^\/discover(?:\/([^/]*)\/([^/]*)\/([^/]*))?$/,urlParamsNames:["transportUrl","type","catalogId"]},library:{regexp:/^\/library(?:\/([^/]*))?$/,urlParamsNames:["type"]},continuewatching:{regexp:/^\/continuewatching(?:\/([^/]*))?$/,urlParamsNames:["type"]},search:{regexp:/^\/search$/,urlParamsNames:[]},metadetails:{regexp:/^\/(?:metadetails|detail)\/([^/]*)\/([^/]*)(?:\/([^/]*))?$/,urlParamsNames:["type","id","videoId"]},addons:{regexp:/^\/addons(?:\/([^/]*)(?:\/([^/]*)\/([^/]*))?)?$/,urlParamsNames:["type","transportUrl","catalogId"]},settings:{regexp:/^\/settings$/,urlParamsNames:[]},player:{regexp:/^\/player\/([^/]*)(?:\/([^/]*)\/([^/]*)\/([^/]*)\/([^/]*)\/([^/]*))?$/,urlParamsNames:["stream","streamTransportUrl","metaTransportUrl","type","id","videoId"]}}},4:(e,t,o)=>{var a=o(67294);e.exports=function(){var e=a.useRef(null),t=a.useCallback((function(){cancelAnimationFrame(e.current),e.current=null}),[]);return[a.useCallback((function(o){t(),e.current=requestAnimationFrame((function(){o(),e.current=null}))}),[]),t]}},74024:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(67294);e.exports=function(e){var t=a.useRef();return t.current=e,t}},71535:(e,t,o)=>{var a=["action"];function i(e,t,o,a,i,n,r){try{var E=e[n](r),_=E.value}catch(e){return void o(e)}E.done?t(_):Promise.resolve(_).then(a,i)}function n(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return r(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(93096),s=o(72307),S=o(20394),l=o(36672).useCoreSuspender,I=o(21665).useRouteFocused,u=o(63662).useServices;e.exports=function(e){var t=e.action,o=E(e,a),r=u().core,A=I(),d=_.useRef(!1),c=n(_.useMemo((function(){return[o.model,o.timeout,o.map,o.deps]}),[]),4),O=c[0],R=c[1],N=c[2],m=c[3],L=l().getState,p=n(_.useReducer((function(e,t){return Object.keys(e).reduce((function(o,a){return o[a]=s(e[a],t[a])?e[a]:t[a],o}),{})}),void 0,(function(){return"function"==typeof N?N(L(O)):L(O)})),2),D=p[0],h=p[1];return _.useInsertionEffect((function(){t&&r.transport.dispatch(t,O)}),[t]),_.useInsertionEffect((function(){return function(){r.transport.dispatch({action:"Unload"},O)}}),[]),_.useInsertionEffect((function(){var e=(function(){var e,t=(e=regeneratorRuntime.mark((function e(t){var o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(-1!==t.indexOf(O)||Array.isArray(m)&&0!==S(m,t).length){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,r.transport.getState(O);case 4:o=e.sent,h("function"==typeof N?N(o):o);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,o=arguments;return new Promise((function(a,n){var r=e.apply(t,o);function E(e){i(r,a,n,E,_,"next",e)}function _(e){i(r,a,n,E,_,"throw",e)}E(void 0)}))});return function(e){return t.apply(this,arguments)}})(),t=T(e,R);return A&&(r.transport.on("NewState",t),d.current&&e([O])),function(){t.cancel(),r.transport.off("NewState",t)}}),[A]),_.useInsertionEffect((function(){d.current=!0}),[]),D}},7049:(e,t,o)=>{var a=o(71535),i=function(e){return e.notifications};e.exports=function(){return a({model:"ctx",map:i})}},83760:(e,t,o)=>{var a=o(67294);e.exports=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=a.useRef(!1),i=a.useCallback((function(a){a.target.scrollTop+a.target.clientHeight>=a.target.scrollHeight-t?o.current||(o.current=!0,"function"==typeof e&&e(a)):o.current=!1}),[e]);return i}},43224:(e,t,o)=>{var a=o(67294);e.exports=function(){return a.useMemo((function(){return[window.navigator.standalone,window.matchMedia("(display-mode: standalone)").matches]}),[])}},50552:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{var a=o(71535);e.exports=function(){return a({model:"streaming_server"})}},91657:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(67294).useCallback,i=o(81468).useTranslation;e.exports=function(){var e=i().t,t=a((function(t){return e(t)}),[e]),o=a((function(t,o){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i="".concat(o).concat(t),n=null!=a?a:t.charAt(0).toUpperCase()+t.slice(1);return e(i,{defaultValue:n})}),[e]),n=a((function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.addon,a=e.id,i=e.name,n=e.type,r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(t&&a&&i){var E="".concat(t.manifest.id.replaceAll(".","_"),"_").concat(a),_=o(E,"CATALOG_",i);if(n&&r){var T=o(n,"TYPE_");return"".concat(_," - ").concat(T)}return _}return null}),[o]);return{string:t,stringWithPrefix:o,catalogTitle:n}}},49900:(e,t,o)=>{var a=["className","autoFocus","disabled","children"];function i(e,t){if(null==e)return{};var o,a,i=(function(e,t){if(null==e)return{};var o,a,i={},n=Object.keys(e);for(a=0;a=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var n=o(67294),r=o(73935),E=o(45697),_=o(94184),T=o(56413).ZP,s=o(98795).useModalsContainer,S=n.forwardRef((function(e,t){var o=e.className,E=e.autoFocus,S=e.disabled,l=e.children,I=i(e,a),u=s();return r.createPortal(n.createElement(T,{ref:t,className:_(o,"modal-container"),autoFocus:!!E,disabled:!!S,lockProps:I},l),u)}));S.displayName="Modal",S.propTypes={className:E.string,autoFocus:E.bool,disabled:E.bool,children:E.node},e.exports=S},65717:(e,t,o)=>{var a=o(49900);e.exports=a},57033:(e,t,o)=>{var a=o(67294).createContext(null);a.displayName="ModalsContainerContext",e.exports=a},50115:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(50115),i=o(94163);e.exports={ModalsContainerProvider:a,useModalsContainer:i}},94163:(e,t,o)=>{var a=o(67294),i=o(57033);e.exports=function(){return a.useContext(i)}},59314:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(98795).ModalsContainerProvider,r=function(e){var t=e.children;return a.createElement("div",{className:"route-container"},a.createElement(n,null,a.createElement("div",{className:"route-content"},t)))};r.propTypes={children:i.node},e.exports=r},4777:(e,t,o)=>{var a=o(59314);e.exports=a},9010:(e,t,o)=>{var a=o(67294).createContext(!0);a.displayName="RouteFocusedContext",e.exports=a},16267:(e,t,o)=>{var a=o(9010),i=o(71517);e.exports={RouteFocusedProvider:a.Provider,useRouteFocused:i}},71517:(e,t,o)=>{var a=o(67294),i=o(9010);e.exports=function(){return a.useContext(i)}},88968:(e,t,o)=>{var a=["className","onPathNotMatch","onRouteChange"];function i(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return n(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var E=o(67294),_=o(59864),T=o(45697),s=o(94184),S=o(8575),l=o(72307),I=o(16267).RouteFocusedProvider,u=o(4777),A=o(33295),d=o(10598),c=function(e){var t=e.className,o=e.onPathNotMatch,n=e.onRouteChange,T=r(e,a),c=E.useMemo((function(){return T.viewsConfig}),[]),O=i(E.useState((function(){return Array(c.length).fill(null)})),2),R=O[0],N=O[1];return E.useLayoutEffect((function(){var e=function(){var e=S.parse(window.location.hash.slice(1)),t=e.pathname,a=e.query,i=new URLSearchParams("string"==typeof a?a:""),r=A(c,"string"==typeof t?t:"");if(null!==r){var E=d(r,"string"==typeof t?t:""),T=c.findIndex((function(e){return e.includes(r)})),s=c[T].findIndex((function(e){return e===r}));"function"==typeof n&&n(r,E,i)||N((function(e){return e.slice(0,c.length).map((function(e,t){return t{var a=o(88968);e.exports=a},33295:e=>{function t(e,t){var a="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=(function(e,t){if(!e)return;if("string"==typeof e)return o(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);"Object"===a&&e.constructor&&(a=e.constructor.name);if("Map"===a||"Set"===a)return Array.from(e);if("Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return o(e,t)})(e))||t&&e&&"number"==typeof e.length){a&&(e=a);var i=0,n=function(){};return{s:n,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,E=!0,_=!1;return{s:function(){a=a.call(e)},n:function(){var e=a.next();return E=e.done,e},e:function(e){_=!0,r=e},f:function(){try{E||null==a.return||a.return()}finally{if(_)throw r}}}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{e.exports=function(e,t){var o=t.match(e.regexp);return e.urlParamsNames.reduce((function(e,t,a){return Array.isArray(o)&&"string"==typeof o[a+1]?e[t]=decodeURIComponent(o[a+1]):e[t]=null,e}),{path:t})}},21665:(e,t,o)=>{var a=o(16267).useRouteFocused,i=o(98795).useModalsContainer,n=o(65717),r=o(16013);e.exports={useRouteFocused:a,useModalsContainer:i,Modal:n,Router:r}},92788:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(95985).default,_=o(86590),T=_.Button,s=_.Image,S=o(72638),l=function(e){var t=e.className,o=e.id,i=e.name,_=e.version,l=e.logo,I=e.description,u=e.types,A=e.behaviorHints,d=e.installed,c=e.onToggle,O=e.onConfigure,R=e.onShare,N=e.dataset,m=r().t,L=a.useCallback((function(e){"function"==typeof c&&c({type:"toggle",nativeEvent:e.nativeEvent,reactEvent:e,dataset:N})}),[c,N]),p=a.useCallback((function(e){"function"==typeof O&&O({type:"configure",nativeEvent:e.nativeEvent,reactEvent:e,dataset:N})}),[O,N]),D=a.useCallback((function(e){"function"==typeof R&&R({type:"share",nativeEvent:e.nativeEvent,reactEvent:e,dataset:N})}),[R,N]),h=a.useCallback((function(e){"Enter"===e.key&&"function"==typeof c&&c({type:"toggle",nativeEvent:e.nativeEvent,reactEvent:e,dataset:N})}),[c,N]),C=a.useCallback((function(){return a.createElement(E,{className:S.icon,name:"addons"})}),[]);return a.createElement(T,{className:n(t,S["addon-container"]),onKeyDown:h},a.createElement("div",{className:S["logo-container"]},a.createElement(s,{className:S.logo,src:l,alt:" ",renderFallback:C})),a.createElement("div",{className:S["info-container"]},a.createElement("div",{className:S["name-container"],title:"string"==typeof i&&i.length>0?i:o},"string"==typeof i&&i.length>0?i:o),"string"==typeof _&&_.length>0?a.createElement("div",{className:S["version-container"],title:"v.".concat(_)},"v.",_):null,Array.isArray(u)&&u.length>0?a.createElement("div",{className:S["types-container"]},1===u.length?u.join(""):u.slice(0,-1).join(", ")+" & "+u[u.length-1]):null,"string"==typeof I&&I.length>0?a.createElement("div",{className:S["description-container"],title:I},I):null),a.createElement("div",{className:S["buttons-container"]},a.createElement("div",{className:S["action-buttons-container"]},!A.configurationRequired&&A.configurable?a.createElement(T,{className:S["configure-button-container"],title:m("ADDON_CONFIGURE"),tabIndex:-1,onClick:p},a.createElement(E,{className:S.icon,name:"settings"})):null,a.createElement(T,{className:d?S["uninstall-button-container"]:S["install-button-container"],title:d?m("ADDON_UNINSTALL"):A.configurationRequired?m("ADDON_CONFIGURE"):m("ADDON_INSTALL"),tabIndex:-1,onClick:!d&&A.configurationRequired?p:L},a.createElement("div",{className:S.label},d?m("ADDON_UNINSTALL"):A.configurationRequired?m("ADDON_CONFIGURE"):m("ADDON_INSTALL")))),a.createElement(T,{className:S["share-button-container"],title:m("SHARE_ADDON"),tabIndex:-1,onClick:D},a.createElement(E,{className:S.icon,name:"share"}),a.createElement("div",{className:S.label},m("SHARE_ADDON")))))};l.propTypes={className:i.string,id:i.string,name:i.string,version:i.string,logo:i.string,description:i.string,types:i.arrayOf(i.string),behaviorHints:i.shape({adult:i.bool,configurable:i.bool,configurationRequired:i.bool,p2p:i.bool}),installed:i.bool,onToggle:i.func,onConfigure:i.func,onShare:i.func,dataset:i.object},e.exports=l},84845:(e,t,o)=>{var a=o(92788);e.exports=a},92994:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o0?Q.manifest.name:Q.manifest.id),"string"==typeof Q.manifest.version&&Q.manifest.version.length>0?r.createElement("span",{className:g.version},"v. ",Q.manifest.version):null)),r.createElement(R,{className:g["share-prompt-container"],url:Q.transportUrl})):null,"string"==typeof B?r.createElement(l,{transportUrl:B,onCloseRequest:ee}):null)};B.propTypes={urlParams:E.shape({path:E.string,transportUrl:E.string,catalogId:E.string,type:E.string}),queryParams:E.instanceOf(URLSearchParams)};e.exports=L(B,(function(){return r.createElement(d,{className:g["addons-container"],route:"addons"})}))},57165:(e,t,o)=>{var a=o(92994);e.exports=a},60290:(e,t,o)=>{var a=o(67294);e.exports=function(e,t){var o=a.useMemo((function(){return t.get("addon")}),[t]),i=a.useCallback((function(o){var a=new URLSearchParams(t);"string"==typeof o?a.set("addon",o):a.delete("addon"),window.location.replace("#".concat(e.path,"?").concat(a))}),[e,t]);return[o,i]}},68061:(e,t,o)=>{var a=o(67294),i=o(86590).useModelState;e.exports=function(e){var t=a.useMemo((function(){return"string"!=typeof e.transportUrl&&"string"!=typeof e.catalogId?{action:"Load",args:{model:"InstalledAddonsWithFilters",args:{request:{type:"string"==typeof e.type?e.type:null}}}}:{action:"Unload"}}),[e]);return i({model:"installed_addons",action:t})}},8916:(e,t,o)=>{var a=o(67294),i=o(86590).useModelState;e.exports=function(e){var t=a.useMemo((function(){return"string"==typeof e.type&&"string"==typeof e.transportUrl&&"string"==typeof e.catalogId?{action:"Load",args:{model:"CatalogWithFilters",args:{request:{base:e.transportUrl,path:{resource:"addon_catalog",type:e.type,id:e.catalogId,extra:[]}}}}}:{action:"Unload"}}),[e]);return i({model:"remote_addons",action:t,deps:["ctx"]})}},40146:(e,t,o)=>{var a=o(67294),i=o(86590).useTranslate;e.exports=function(e,t){var o=i(),n=a.useMemo((function(){return(function(e,t,o){var a={title:o.string("SELECT_CATALOG"),options:t.selectable.catalogs.concat(e.selectable.catalogs).map((function(e){var t=e.name;return{value:e.deepLinks.addons,label:o.stringWithPrefix(t,"ADDON_"),title:o.stringWithPrefix(t,"ADDON_")}})),selected:t.selectable.catalogs.concat(e.selectable.catalogs).filter((function(e){return e.selected})).map((function(e){return e.deepLinks.addons})),renderLabelText:null!==t.selected?function(){var e=t.selectable.catalogs.find((function(e){return e.id===t.selected.request.path.id}));return e?o.stringWithPrefix(e.name,"ADDON_"):t.selected.request.path.id}:null,onSelect:function(e){window.location=e.value}},i={title:o.string("SELECT_TYPE"),options:null!==e.selected?e.selectable.types.map((function(e){var t=e.type;return{value:e.deepLinks.addons,label:null!==t?o.stringWithPrefix(t,"TYPE_"):o.string("TYPE_ALL")}})):t.selectable.types.map((function(e){var t=e.type;return{value:e.deepLinks.addons,label:o.stringWithPrefix(t,"TYPE_")}})),selected:null!==e.selected?e.selectable.types.filter((function(e){return e.selected})).map((function(e){return e.deepLinks.addons})):t.selectable.types.filter((function(e){return e.selected})).map((function(e){return e.deepLinks.addons})),renderLabelText:function(){return null!==e.selected?null===e.selected.request.type?o.string("TYPE_ALL"):o.stringWithPrefix(e.selected.request.type,"TYPE_"):null!==t.selected?o.stringWithPrefix(t.selected.request.path.type,"TYPE_"):i.title},onSelect:function(e){window.location=e.value}};return[a,i]})(e,t,o)}),[e,t]);return n}},1180:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o0?1:0,h=n.useRef(),C=n.useCallback((function(){var e=O(h.current);if(null!==e){var t=Math.max(0,e.start-D-5),o=e.end-D+5;o0?n.createElement(S,{className:r(L["board-row"],L["continue-watching-row"],"animation-fade-in"),title:e("BOARD_CONTINUE_WATCHING"),catalog:o,itemComponent:l,notifications:p}):null,T.catalogs.map((function(e,t){var o;switch(null===(o=e.content)||void 0===o?void 0:o.type){case"Ready":return n.createElement(S,{key:t,className:r(L["board-row"],L["board-row-".concat(e.content.content[0].posterShape)],"animation-fade-in"),catalog:e,itemComponent:I});case"Err":return n.createElement(S,{key:t,className:r(L["board-row"],"animation-fade-in"),catalog:e,message:e.content.content});default:return n.createElement(S.Placeholder,{key:t,className:r(L["board-row"],L["board-row-poster"],"animation-fade-in"),catalog:e})}})))),null!==t.settings&&"Err"===t.settings.type?n.createElement(u,{className:L["board-warning-container"]}):null)}),(function(){return n.createElement("div",{className:L["board-container"]},n.createElement(s,{className:L["board-content-container"],route:"board"}))}))},88823:(e,t,o)=>{var a=o(1180);e.exports=a},76981:(e,t,o)=>{var a=o(67294),i=o(63662).useServices,n=o(86590).useModelState;e.exports=function(){var e=i().core,t=a.useMemo((function(){return{action:"Load",args:{model:"CatalogsWithExtra",args:{extra:[]}}}}),[]),o=a.useCallback((function(t){e.transport.dispatch({action:"CatalogsWithExtra",args:{action:"LoadRange",args:t}},"board")}),[]);return[n({model:"board",timeout:1500,action:t}),o]}},82916:(e,t,o)=>{var a=o(86590).useModelState;e.exports=function(){return a({model:"continue_watching_preview"})}},69694:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(69694);e.exports=a},30083:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t0?{action:"Load",args:{model:"CatalogWithFilters",args:{request:{base:e.transportUrl,path:{resource:"catalog",type:e.type,id:e.catalogId,extra:Array.from(t.entries())}}}}}:{action:"Unload"}}),[e,t]);return[T({model:"discover",action:i,map:s,deps:["ctx"]}),a]}},88674:(e,t,o)=>{function a(e){return(function(e){if(Array.isArray(e))return i(e)})(e)||(function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)})(e)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e)||(function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=["className","label","link","href","onToggle"];function i(){return i=Object.assign||function(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var r=o(67294),E=o(45697),_=o(94184),T=o(86590),s=T.Button,S=T.Checkbox,l=o(66947),I=r.forwardRef((function(e,t){var o=e.className,E=e.label,T=e.link,I=e.href,u=e.onToggle,A=n(e,a),d=r.useCallback((function(e){"function"==typeof A.onClick&&A.onClick(e),e.nativeEvent.togglePrevented||"function"!=typeof u||u({type:"toggle",reactEvent:e,nativeEvent:e.nativeEvent})}),[u,A.onClick]),c=r.useCallback((function(e){e.nativeEvent.togglePrevented=!0}),[]);return r.createElement(S,i({},A,{ref:t,className:_(o,l["consent-checkbox-container"]),onClick:d}),r.createElement("div",{className:l.label},E," ","string"==typeof T&&T.length>0&&"string"==typeof I&&I.length>0?r.createElement(s,{className:l.link,href:I,target:"_blank",tabIndex:-1,onClick:c},T):null))}));I.displayName="ConsentCheckbox",I.propTypes={className:E.string,checked:E.bool,label:E.string,link:E.string,href:E.string,onToggle:E.func,onClick:E.func},e.exports=I},6050:(e,t,o)=>{var a=o(82759);e.exports=a},12130:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;t{var a=o(12130);e.exports=a},45398:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o0&&void 0!==arguments[0]?arguments[0]:{},t=e.user;if(!t||"string"!=typeof t.email||"string"!=typeof t.fbLoginToken)throw new Error("Login failed at getting token from Stremio");return{email:t.email,password:t.fbLoginToken}}))})).then((function(e){var t=e.email,o=e.password;a.transport.dispatch({action:"Ctx",args:{action:"Authenticate",args:{type:"Login",email:t,password:o,facebook:!0}}})})).catch((function(e){F(),Y({type:"error",error:e.message})}))}),[]),K=_.useCallback((function(){"string"==typeof H.email&&0!==H.email.length&&l.current.validity.valid?"string"==typeof H.password&&0!==H.password.length?(k(),a.transport.dispatch({action:"Ctx",args:{action:"Authenticate",args:{type:"Login",email:H.email,password:H.password}}})):Y({type:"error",error:"Invalid password"}):Y({type:"error",error:"Invalid email"})}),[H.email,H.password]),j=_.useCallback((function(){H.termsAccepted?window.location="#/":Y({type:"error",error:"You must accept the Terms of Service"})}),[H.termsAccepted]),x=_.useCallback((function(){"string"==typeof H.email&&0!==H.email.length&&l.current.validity.valid?"string"==typeof H.password&&0!==H.password.length?H.password===H.confirmPassword?H.termsAccepted?H.privacyPolicyAccepted?(k(),a.transport.dispatch({action:"Ctx",args:{action:"Authenticate",args:{type:"Register",email:H.email,password:H.password,gdpr_consent:{tos:H.termsAccepted,privacy:H.privacyPolicyAccepted,marketing:H.marketingAccepted,from:"web"}}}})):Y({type:"error",error:"You must accept the Privacy Policy"}):Y({type:"error",error:"You must accept the Terms of Service"}):Y({type:"error",error:"Passwords do not match"}):Y({type:"error",error:"Invalid password"}):Y({type:"error",error:"Invalid email"})}),[H.email,H.password,H.confirmPassword,H.termsAccepted,H.privacyPolicyAccepted,H.marketingAccepted]),Q=_.useCallback((function(e){Y({type:"change-credentials",name:"email",value:e.currentTarget.value})}),[]),X=_.useCallback((function(){d.current.focus()}),[]),$=_.useCallback((function(e){Y({type:"change-credentials",name:"password",value:e.currentTarget.value})}),[]),q=_.useCallback((function(){H.form===h?f.current.focus():K()}),[H.form,K]),J=_.useCallback((function(e){Y({type:"change-credentials",name:"confirmPassword",value:e.currentTarget.value})}),[]),Z=_.useCallback((function(){g.current.focus()}),[]),ee=_.useCallback((function(){Y({type:"toggle-checkbox",name:"termsAccepted"})}),[]),te=_.useCallback((function(){Y({type:"toggle-checkbox",name:"privacyPolicyAccepted"})}),[]),oe=_.useCallback((function(){Y({type:"toggle-checkbox",name:"marketingAccepted"})}),[]),ae=_.useCallback((function(){var e=new URLSearchParams([["form",H.form===h?C:h]]);window.location="#/intro?".concat(e.toString())}),[H.form]);return _.useEffect((function(){[C,h].includes(t.get("form"))&&Y({type:"set-form",form:t.get("form")})}),[t]),_.useEffect((function(){E&&"string"==typeof H.error&&H.error.length>0&&v.current.scrollIntoView()}),[H.error]),_.useEffect((function(){E&&l.current.focus()}),[H.form,E]),_.useEffect((function(){var e=function(e){var t=e.event,o=e.args;switch(t){case"UserAuthenticated":F(),E&&(window.location="#/");break;case"Error":"UserAuthenticated"===o.source.event&&F()}};return a.transport.on("CoreEvent",e),function(){a.transport.off("CoreEvent",e)}}),[E]),_.createElement("div",{className:D["intro-container"]},_.createElement("div",{className:D["background-container"]}),_.createElement("div",{className:D["heading-container"]},_.createElement("div",{className:D["logo-container"]},_.createElement(O,{className:D.logo,src:o(75631),alt:" "})),_.createElement("div",{className:D["title-container"]},"Freedom to Stream"),_.createElement("div",{className:D["slogan-container"]},"All the Video Content You Enjoy in One Place")),_.createElement("div",{className:D["content-container"]},_.createElement("div",{className:D["form-container"]},_.createElement(N,{ref:l,className:D["credentials-text-input"],type:"email",placeholder:"Email",value:H.email,onChange:Q,onSubmit:X}),_.createElement(N,{ref:d,className:D["credentials-text-input"],type:"password",placeholder:"Password",value:H.password,onChange:$,onSubmit:q}),H.form===h?_.createElement(_.Fragment,null,_.createElement(N,{ref:f,className:D["credentials-text-input"],type:"password",placeholder:"Confirm Password",value:H.confirmPassword,onChange:J,onSubmit:Z}),_.createElement(m,{ref:g,className:D["consent-checkbox"],label:"I have read and agree with the Stremio",link:"Terms and conditions",href:"https://www.stremio.com/tos",checked:H.termsAccepted,onToggle:ee}),_.createElement(m,{ref:B,className:D["consent-checkbox"],label:"I have read and agree with the Stremio",link:"Privacy Policy",href:"https://www.stremio.com/privacy",checked:H.privacyPolicyAccepted,onToggle:te}),_.createElement(m,{ref:P,className:D["consent-checkbox"],label:"I agree to receive marketing communications from Stremio",checked:H.marketingAccepted,onToggle:oe})):_.createElement("div",{className:D["forgot-password-link-container"]},_.createElement(c,{className:D["forgot-password-link"],onClick:W},"Forgot password?")),H.error.length>0?_.createElement("div",{ref:v,className:D["error-message"]},H.error):null,_.createElement(c,{className:s(D["form-button"],D["submit-button"]),onClick:H.form===h?x:K},_.createElement("div",{className:D.label},H.form===h?"Sign up":"Log in"))),_.createElement("div",{className:D["options-container"]},_.createElement(c,{className:s(D["form-button"],D["facebook-button"]),onClick:z},_.createElement(S,{className:D.icon,name:"facebook"}),_.createElement("div",{className:D.label},"Continue with Facebook")),H.form===h?_.createElement(c,{className:s(D["form-button"],D["login-form-button"]),onClick:ae},_.createElement("div",{className:D.label},"LOG IN")):null,H.form===C?_.createElement(c,{className:s(D["form-button"],D["signup-form-button"]),onClick:ae},_.createElement("div",{className:D.label},"SIGN UP WITH EMAIL")):null,H.form===h?_.createElement(c,{className:s(D["form-button"],D["guest-login-button"]),onClick:j},_.createElement("div",{className:D.label},"GUEST LOGIN")):null)),M?_.createElement(L,{email:H.email,onCloseRequest:b}):null,G?_.createElement(I,{className:D["loading-modal-container"]},_.createElement("div",{className:D["loader-container"]},_.createElement(S,{className:D.icon,name:"person"}),_.createElement("div",{className:D.label},"Authenticating..."))):null)};f.propTypes={queryParams:T.instanceOf(URLSearchParams)},e.exports=f},21517:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o0&&I.current.validity.valid?window.open("https://www.strem.io/reset-password/"+I.current.value,"_blank"):l("Invalid email")}),[]),A=n.useMemo((function(){return[{className:s["cancel-button"],label:"Cancel",props:{onClick:o}},{label:"Send",props:{onClick:u}}]}),[o]),d=n.useCallback((function(){l("")}),[]);return n.useEffect((function(){i&&I.current.focus()}),[i]),n.createElement(_,{className:s["password-reset-modal-container"],title:"Password reset",buttons:A,onCloseRequest:o},n.createElement(T,{ref:I,className:s["credentials-text-input"],type:"email",placeholder:"Email",defaultValue:"string"==typeof t?t:"",onChange:d,onSubmit:u}),S.length>0?n.createElement("div",{className:s["error-message"]},S):null)};S.propTypes={email:r.string,onCloseRequest:r.func},e.exports=S},2015:(e,t,o)=>{var a=o(21517);e.exports=a},16732:(e,t,o)=>{var a=o(45398);e.exports=a},44167:(e,t,o)=>{var a=o(67294);e.exports=function(){var e=a.useCallback((function(){return new Promise((function(e,t){"undefined"!=typeof FB?FB.getLoginStatus((function(o){o&&o.authResponse&&"string"==typeof o.authResponse.accessToken?e(o.authResponse.accessToken):FB.login((function(o){o&&o.authResponse&&"string"==typeof o.authResponse.accessToken?e(o.authResponse.accessToken):t(new Error("Failed to get token from Facebook"))}))})):t(new Error("Failed to connect to Facebook"))}))}),[]);return a.useEffect((function(){window.fbAsyncInit=function(){FB.init({appId:"1537119779906825",status:!0,xfbml:!1,version:"v2.7"})};var e=document.createElement("script");return e.src="https://connect.facebook.net/en_US/sdk.js",e.async=!0,e.defer=!0,document.body.appendChild(e),function(){document.body.removeChild(e)}}),[]),e}},68171:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(68171);e.exports=a},53242:(e,t,o)=>{var a=o(67294),i=o(86590).useModelState;e.exports=function(e,t,o){var n=a.useMemo((function(){return{action:"Load",args:{model:"LibraryWithFilters",args:{request:{type:"string"==typeof t.type?t.type:null,sort:o.has("sort")?o.get("sort"):void 0,page:o.has("page")?parseInt(o.get("page"),10):void 0}}}}}),[t,o]);return i({model:e,action:n})}},62948:(e,t,o)=>{var a=o(67294),i=o(86590).useTranslate;e.exports=function(e){var t=i(),o=a.useMemo((function(){return(function(e,t){return[{title:t.string("SELECT_TYPE"),options:e.selectable.types.map((function(e){var o=e.type;return{value:e.deepLinks.library,label:null===o?t.string("TYPE_ALL"):t.stringWithPrefix(o,"TYPE_")}})),selected:e.selectable.types.filter((function(e){return e.selected})).map((function(e){return e.deepLinks.library})),onSelect:function(e){window.location=e.value}},{title:t.string("SELECT_SORT"),options:e.selectable.sorts.map((function(e){var o=e.sort;return{value:e.deepLinks.library,label:t.stringWithPrefix(o.toUpperCase(),"SORT_")}})),selected:e.selectable.sorts.filter((function(e){return e.selected})).map((function(e){return e.deepLinks.library})),onSelect:function(e){window.location=e.value}},e.selectable.prevPage||e.selectable.nextPage?{label:e.selected.request.page.toString(),onSelect:function(t){"prev"===t.value&&e.selectable.prevPage&&(window.location=e.selectable.prevPage.deepLinks.library),"next"===t.value&&e.selectable.nextPage&&(window.location=e.selectable.nextPage.deepLinks.library)}}:null]})(e,t)}),[e]);return o}},88493:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o0?n.createElement(s,{className:L["vertical-nav-bar"],tabs:C,selected:null!==f?f.url:null}):null,null===P?n.createElement(A,{delay:500},n.createElement("div",{className:L["meta-message-container"]},n.createElement(u,{className:L.image,src:o(47740),alt:" "}),n.createElement("div",{className:L["message-label"]},"No meta was selected!"))):null===T.metaItem?n.createElement("div",{className:L["meta-message-container"]},n.createElement(u,{className:L.image,src:o(47740),alt:" "}),n.createElement("div",{className:L["message-label"]},"No addons ware requested for this meta!")):"Err"===T.metaItem.content.type?n.createElement("div",{className:L["meta-message-container"]},n.createElement(u,{className:L.image,src:o(47740),alt:" "}),n.createElement("div",{className:L["message-label"]},"No metadata was found!")):"Loading"===T.metaItem.content.type?n.createElement(l.Placeholder,{className:L["meta-preview"]}):n.createElement(n.Fragment,null,"string"==typeof T.metaItem.content.content.background&&T.metaItem.content.content.background.length>0?n.createElement("div",{className:L["background-image-layer"]},n.createElement(u,{className:L["background-image"],src:T.metaItem.content.content.background,renderFallback:G,alt:" "})):null,n.createElement(l,{className:E(L["meta-preview"],"animation-fade-in"),name:T.metaItem.content.content.name,logo:T.metaItem.content.content.logo,runtime:T.metaItem.content.content.runtime,releaseInfo:T.metaItem.content.content.releaseInfo,released:T.metaItem.content.content.released,description:null!==y&&"string"==typeof y.overview&&y.overview.length>0?y.overview:T.metaItem.content.content.description,links:T.metaItem.content.content.links,trailerStreams:T.metaItem.content.content.trailerStreams,inLibrary:T.metaItem.content.content.inLibrary,toggleInLibrary:T.metaItem.content.content.inLibrary?W:M})),n.createElement("div",{className:L.spacing}),null!==v?n.createElement(c,{className:L["streams-list"],streams:T.streams,video:y}):null!==P?n.createElement(O,{className:L["videos-list"],metaItem:T.metaItem,libraryItem:T.libraryItem,season:p,seasonOnSelect:U,toggleNotifications:b}):null),null!==f?n.createElement(I,{className:L["meta-extension-modal-container"],title:f.name,onCloseRequest:g},n.createElement("iframe",{className:L["meta-extension-modal-iframe"],sandbox:"allow-forms allow-scripts allow-same-origin",src:f.url})):null)};p.propTypes={urlParams:r.shape({type:r.string,id:r.string,videoId:r.string}),queryParams:r.instanceOf(URLSearchParams)};e.exports=d(p,(function(){return n.createElement("div",{className:L["metadetails-container"]},n.createElement(S,{className:L["nav-bar"],backButton:!0,addonsButton:!0,fullscreenButton:!0,navMenu:!0}))}))},72742:(e,t,o)=>{var a=["className","videoId","videoReleased","addonName","name","description","thumbnail","progress","deepLinks"];function i(e,t){if(null==e)return{};var o,a,i=(function(e,t){if(null==e)return{};var o,a,i={},n=Object.keys(e);for(a=0;a=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var n=o(67294),r=o(45697),E=o(94184),_=o(95985).default,T=o(86590),s=T.Button,S=T.Image,l=T.useProfile,I=T.platform,u=T.useToast,A=o(63662).useServices,d=o(34134),c=o(63458),O=function(e){var t=e.className,o=e.videoId,r=e.videoReleased,T=e.addonName,d=e.name,O=e.description,R=e.thumbnail,N=e.progress,m=e.deepLinks,L=i(e,a),p=l(),D=u(),h=A().core,C=n.useMemo((function(){return m?m.externalPlayer?m.externalPlayer.web?m.externalPlayer.web:m.externalPlayer.openPlayer?m.externalPlayer.openPlayer[I.name]?m.externalPlayer.openPlayer[I.name]:m.externalPlayer.playlist:m.player:m.player:null}),[m]),f=n.useMemo((function(){var e;return C===(null==m||null===(e=m.externalPlayer)||void 0===e?void 0:e.playlist)?m.externalPlayer.fileName:null}),[C,m]),g=n.useMemo((function(){var e;return C===(null==m||null===(e=m.externalPlayer)||void 0===e?void 0:e.web)?"_blank":null}),[C,m]),B=n.useCallback((function(){"string"==typeof o&&h.transport.dispatch({action:"MetaDetails",args:{action:"MarkVideoAsWatched",args:[{id:o,released:r},!0]}})}),[o,r]),P=n.useCallback((function(e){null!==p.settings.playerType&&(B(),D.show({type:"success",title:"Stream opened in external player",timeout:4e3})),"function"==typeof L.onClick&&L.onClick(e)}),[L.onClick,p.settings,B]),v=n.useCallback((function(){return n.createElement(_,{className:c["placeholder-icon"],name:"ic_broken_link"})}),[]);return n.createElement(s,{className:E(t,c["stream-container"]),title:T,href:C,download:f,target:g,onClick:P},n.createElement("div",{className:c["info-container"]},"string"==typeof R&&R.length>0?n.createElement("div",{className:c["thumbnail-container"],title:d||T},n.createElement(S,{className:c.thumbnail,src:R,alt:" ",renderFallback:v})):n.createElement("div",{className:c["addon-name-container"],title:d||T},n.createElement("div",{className:c["addon-name"]},d||T)),null!==N&&!isNaN(N)&&N>0?n.createElement("div",{className:c["progress-bar-container"]},n.createElement("div",{className:c["progress-bar"],style:{width:"".concat(N,"%")}}),n.createElement("div",{className:c["progress-bar-background"]})):null),n.createElement("div",{className:c["description-container"],title:O},O),n.createElement(_,{className:c.icon,name:"play"}))};O.Placeholder=d,O.propTypes={className:r.string,videoId:r.string,videoReleased:r.instanceOf(Date),addonName:r.string,name:r.string,description:r.string,thumbnail:r.string,progress:r.number,deepLinks:r.shape({player:r.string,externalPlayer:r.shape({download:r.string,streaming:r.string,playlist:r.string,fileName:r.string,web:r.string,openPlayer:r.shape({ios:r.string,android:r.string,windows:r.string,macos:r.string,linux:r.string})})}),onClick:r.func},e.exports=O},63210:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(60926),E=o(81384),_=function(e){var t=e.className;return a.createElement("div",{className:n(t,E["stream-placeholder-container"])},a.createElement("div",{className:E["addon-container"]},a.createElement("div",{className:E["addon-name"]})),a.createElement("div",{className:E["info-container"]},a.createElement("div",{className:E["description-container"]}),a.createElement("div",{className:E["description-container"]})),a.createElement(r,{className:E["play-icon"]}))};_.propTypes={className:i.string},e.exports=_},34134:(e,t,o)=>{var a=o(63210);e.exports=a},24674:(e,t,o)=>{var a=o(72742);e.exports=a},14176:(e,t,o)=>{var a=["className","video"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var I=o(67294),u=o(45697),A=o(94184),d=o(81468).useTranslation,c=o(95985).default,O=o(86590),R=O.Button,N=O.Image,m=O.Multiselect,L=o(63662).useServices,p=o(24674),D=o(36796),h="ALL",C=function(e){var t=e.className,r=e.video,_=l(e,a),s=d().t,S=L().core,u=T(I.useState(h),2),O=u[0],C=u[1],f=I.useCallback((function(e){C(e.value)}),[]),g=I.useCallback((function(){window.history.back()}),[]),B=I.useMemo((function(){return _.streams.filter((function(e){return"Loading"===e.content.type})).length}),[_.streams]),P=I.useMemo((function(){return _.streams.filter((function(e){return"Ready"===e.content.type})).reduce((function(e,t){return e[t.addon.transportUrl]={addon:t.addon,streams:t.content.content.map((function(e){return E(E({},e),{},{onClick:function(){S.transport.analytics({event:"StreamClicked",args:{stream:e}})},addonName:t.addon.manifest.name})}))},e}),{})}),[_.streams]),v=I.useMemo((function(){return O===h?Object.values(P).map((function(e){return e.streams})).flat(1):P[O]?P[O].streams:[]}),[P,O]),y=I.useMemo((function(){return{title:"Select Addon",options:[{value:h,label:s("ALL_ADDONS"),title:s("ALL_ADDONS")}].concat(n(Object.keys(P).map((function(e){return{value:e,label:P[e].addon.manifest.name,title:P[e].addon.manifest.name}})))),selected:[O],onSelect:f}}),[P,O]);return I.createElement("div",{className:A(t,D["streams-list-container"])},0===_.streams.length?I.createElement("div",{className:D["message-container"]},I.createElement(N,{className:D.image,src:o(47740),alt:" "}),I.createElement("div",{className:D.label},"No addons were requested for streams!")):_.streams.every((function(e){return"Err"===e.content.type}))?I.createElement("div",{className:D["message-container"]},I.createElement(N,{className:D.image,src:o(47740),alt:" "}),I.createElement("div",{className:D.label},s("NO_STREAM"))):0===v.length?I.createElement("div",{className:D["streams-container"]},I.createElement(p.Placeholder,null),I.createElement(p.Placeholder,null)):I.createElement(I.Fragment,null,B>0?I.createElement("div",{className:D["addons-loading-container"]},I.createElement("div",{className:D["addons-loading"]},B," ",s("MOBILE_ADDONS_LOADING")),I.createElement("span",{className:D["addons-loading-bar"]})):null,I.createElement("div",{className:D["select-choices-wrapper"]},r?I.createElement(I.Fragment,null,I.createElement(R,{className:A(D["button-container"],D["back-button-container"]),tabIndex:-1,onClick:g},I.createElement(c,{className:D.icon,name:"chevron-back"})),I.createElement("div",{className:D["episode-title"]},"S".concat(null==r?void 0:r.season,"E").concat(null==r?void 0:r.episode," ").concat(null==r?void 0:r.title))):null,Object.keys(P).length>1?I.createElement(m,i({},y,{className:D["select-input-container"]})):null),I.createElement("div",{className:D["streams-container"]},v.map((function(e,t){return I.createElement(p,{key:t,videoId:null==r?void 0:r.id,videoReleased:null==r?void 0:r.released,addonName:e.addonName,name:e.name,description:e.description,thumbnail:e.thumbnail,progress:e.progress,deepLinks:e.deepLinks,onClick:e.onClick})})))),I.createElement(R,{className:D["install-button-container"],title:s("ADDON_CATALOGUE_MORE"),href:"#/addons"},I.createElement(c,{className:D.icon,name:"addons"}),I.createElement("div",{className:D.label},s("ADDON_CATALOGUE_MORE"))))};C.propTypes={className:u.string,streams:u.arrayOf(u.object).isRequired,video:u.object},e.exports=C},42231:(e,t,o)=>{var a=o(14176);e.exports=a},42813:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(96073).t,E=o(95985).default,_=o(86590),T=_.Button,s=_.Multiselect,S=o(53570),l=o(56351),I=function(e){var t=e.className,o=e.seasons,i=e.season,_=e.onSelect,S=a.useMemo((function(){return o.map((function(e){return{value:String(e),label:e>0?"".concat(r("SEASON")," ").concat(e):r("SPECIAL")}}))}),[o]),I=a.useMemo((function(){return[String(i)]}),[i]),u=a.useCallback((function(e){if("function"==typeof _){var t=o.indexOf(i),a="next"===e.currentTarget.dataset.action?t+1=0?t-1:0,n=o[a];_({type:"select",value:n,reactEvent:e,nativeEvent:e.nativeEvent})}}),[i,o,_]),A=a.useCallback((function(e){var t=parseFloat(e.value);"function"==typeof _&&_({type:"select",value:t,reactEvent:e.reactEvent,nativeEvent:e.nativeEvent})}),[_]);return a.createElement("div",{className:n(t,l["seasons-bar-container"])},a.createElement(T,{className:l["prev-season-button"],title:"Previous season","data-action":"prev",onClick:u},a.createElement(E,{className:l.icon,name:"chevron-back"}),a.createElement("div",{className:l.label},"Prev")),a.createElement(s,{className:l["seasons-popup-label-container"],title:i>0?"".concat(r("SEASON")," ").concat(i):r("SPECIAL"),direction:"bottom-left",options:S,selected:I,onSelect:A}),a.createElement(T,{className:l["next-season-button"],title:"Next season","data-action":"next",onClick:u},a.createElement("div",{className:l.label},"Next"),a.createElement(E,{className:l.icon,name:"chevron-forward"})))};I.Placeholder=S,I.propTypes={className:i.string,seasons:i.arrayOf(i.number).isRequired,season:i.number.isRequired,onSelect:i.func},e.exports=I},89319:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(32180),_=function(e){var t=e.className;return a.createElement("div",{className:n(t,E["seasons-bar-placeholder-container"])},a.createElement("div",{className:E["prev-season-button"]},a.createElement(r,{className:E.icon,name:"chevron-back"}),a.createElement("div",{className:E.label},"Prev")),a.createElement("div",{className:E["seasons-popup-label-container"]},a.createElement("div",{className:E["seasons-popup-label"]},"Season 1"),a.createElement(r,{className:E["seasons-popup-icon"],name:"caret-down"})),a.createElement("div",{className:E["next-season-button"]},a.createElement("div",{className:E.label},"Next"),a.createElement(r,{className:E.icon,name:"chevron-forward"})))};_.propTypes={className:i.string},e.exports=_},53570:(e,t,o)=>{var a=o(89319);e.exports=a},23424:(e,t,o)=>{var a=o(42813);e.exports=a},32824:(e,t,o)=>{var a=["className","id","title","thumbnail","episode","released","upcoming","watched","progress","scheduled","deepLinks"],i=["className","id","title","thumbnail","episode","released","upcoming","watched","progress","scheduled","children"];function n(){return n=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var T=o(67294),s=o(45697),S=o(94184),l=o(96073).t,I=o(63662).useServices,u=o(21665).useRouteFocused,A=o(95985).default,d=o(86590),c=d.Button,O=d.Image,R=d.Popup,N=d.useBinaryState,m=o(9922),L=o(14486),p=function(e){var t=e.className,o=e.id,E=e.title,s=e.thumbnail,d=e.episode,m=e.released,p=e.upcoming,D=e.watched,h=e.progress,C=e.scheduled,f=e.deepLinks,g=_(e,a),B=I().core,P=u(),v=r(N(!1),4),y=v[0],M=v[2],W=v[3],b=T.useCallback((function(e){e.nativeEvent.togglePopupPrevented||(e.nativeEvent.ctrlKey||2===e.nativeEvent.button)&&(e.preventDefault(),W())}),[]),U=T.useCallback((function(e){e.nativeEvent.togglePopupPrevented||e.nativeEvent.ctrlKey||e.preventDefault()}),[W]),G=T.useCallback((function(e){"mouse"===e.nativeEvent.pointerType||e.nativeEvent.togglePopupPrevented||W()}),[W]),k=T.useCallback((function(e){e.nativeEvent.togglePopupPrevented=!0}),[]),F=T.useCallback((function(e){e.nativeEvent.togglePopupPrevented=!0}),[]),V=T.useCallback((function(e){e.nativeEvent.togglePopupPrevented=!0}),[]),w=T.useCallback((function(e){e.nativeEvent.buttonClickPrevented=!0}),[]),H=T.useCallback((function(e){e.preventDefault(),M(),B.transport.dispatch({action:"MetaDetails",args:{action:"MarkVideoAsWatched",args:[{id:o,released:m},!D]}})}),[o,m,D]),Y=T.useMemo((function(){return f?"string"==typeof f.player?f.player:"string"==typeof f.metaDetailsStreams?f.metaDetailsStreams:null:null}),[f]),z=T.useMemo((function(){return function(e){var t=e.className,o=e.id,a=e.title,r=e.thumbnail,E=e.episode,s=e.released,l=e.upcoming,I=e.watched,u=e.progress,d=e.scheduled,R=e.children,N=_(e,i);return T.createElement(c,n({},N,{className:S(t,L["video-container"]),title:a}),"string"==typeof r&&r.length>0?T.createElement("div",{className:L["thumbnail-container"]},T.createElement(O,{className:L.thumbnail,src:r,alt:" ",renderFallback:function(){return T.createElement(A,{className:L["placeholder-icon"],name:"symbol"})}}),null!==u&&!isNaN(u)&&u>0?T.createElement("div",{className:L["progress-bar-container"]},T.createElement("div",{className:L["progress-bar"],style:{width:"".concat(u,"%")}}),T.createElement("div",{className:L["progress-bar-background"]})):null):null,T.createElement("div",{className:L["info-container"]},T.createElement("div",{className:L["title-container"]},null===E||isNaN(E)?null:"".concat(E,". "),"string"==typeof a&&a.length>0?a:o),T.createElement("div",{className:L["flex-row-container"]},s instanceof Date&&!isNaN(s.getTime())?T.createElement("div",{className:L["released-container"]},s.toLocaleString(void 0,{year:"numeric",month:"short",day:"numeric"})):d?T.createElement("div",{className:L["released-container"],title:"To be announced"},"TBA"):null,T.createElement("div",{className:L["upcoming-watched-container"]},l?T.createElement("div",{className:L["upcoming-container"]},T.createElement("div",{className:L["flag-label"]},"Upcoming")):null,I?T.createElement("div",{className:L["watched-container"]},T.createElement(A,{className:L["flag-icon"],name:"eye"}),T.createElement("div",{className:L["flag-label"]},"Watched")):null))),R)}}),[]),K=T.useMemo((function(){return function(){return T.createElement("div",{className:L["context-menu-content"],onPointerDown:k,onContextMenu:F,onClick:V,onKeyDown:w},T.createElement(c,{className:L["context-menu-option-container"],title:"Watch"},T.createElement("div",{className:L["context-menu-option-label"]},l("CTX_WATCH"))),T.createElement(c,{className:L["context-menu-option-container"],title:D?"Mark as non-watched":"Mark as watched",onClick:H},T.createElement("div",{className:L["context-menu-option-label"]},l(D?"CTX_MARK_NON_WATCHED":"CTX_MARK_WATCHED"))))}}),[D,H]);return T.useEffect((function(){P||M()}),[P]),T.createElement(R,n({className:t,id:o,title:E,thumbnail:s,episode:d,released:m,upcoming:p,watched:D,progress:h,scheduled:C,href:Y},g,{onMouseUp:b,onLongPress:G,onContextMenu:U,open:y,onCloseRequest:M,renderLabel:z,renderMenu:K}))};p.Placeholder=m,p.propTypes={className:s.string,id:s.string,title:s.string,thumbnail:s.string,episode:s.number,released:s.instanceOf(Date),upcoming:s.bool,watched:s.bool,progress:s.number,scheduled:s.bool,deepLinks:s.shape({metaDetailsStreams:s.string,player:s.string})},e.exports=p},38509:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(75507),E=function(e){var t=e.className;return a.createElement("div",{className:n(t,r["video-placeholder-container"])},a.createElement("div",{className:r["info-container"]},a.createElement("div",{className:r["name-container"]}),a.createElement("div",{className:r["released-container"]})))};E.propTypes={className:i.string},e.exports=E},9922:(e,t,o)=>{var a=o(38509);e.exports=a},90123:(e,t,o)=>{var a=o(32824);e.exports=a},41702:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o0?e[e.length-1]:N.length>0?N[N.length-1]:null}),[N,T]),L=n.useMemo((function(){return R.filter((function(e){return null===m||e.season===m})).sort((function(e,t){return e.episode-t.episode}))}),[R,m]),p=a(n.useState(""),2),D=p[0],h=p[1],C=n.useCallback((function(e){h(e.currentTarget.value)}),[]);return n.createElement("div",{className:E(t,A["videos-list-container"])},i&&"Loading"!==i.content.type?"Err"===i.content.type||0===L.length?n.createElement("div",{className:A["message-container"]},n.createElement(s,{className:A.image,src:o(47740),alt:" "}),n.createElement("div",{className:A.label},"No videos found for this meta!")):n.createElement(n.Fragment,null,O&&r?n.createElement(l,{className:A["notifications-checkbox"],checked:!r.state.noNotif,onClick:c},_("DETAIL_RECEIVE_NOTIF_SERIES")):null,N.length>0?n.createElement(I,{className:A["seasons-bar"],season:m,seasons:N,onSelect:d}):null,n.createElement(S,{className:A["search-bar"],title:_("SEARCH_VIDEOS"),value:D,onChange:C}),n.createElement("div",{className:A["videos-container"]},L.filter((function(e){return 0===D.length||"string"==typeof e.title&&e.title.toLowerCase().includes(D.toLowerCase())||!isNaN(e.released.getTime())&&e.released.toLocaleString(void 0,{year:"2-digit",month:"short",day:"numeric"}).toLowerCase().includes(D.toLowerCase())})).map((function(e,t){return n.createElement(u,{key:t,id:e.id,title:e.title,thumbnail:e.thumbnail,episode:e.episode,released:e.released,upcoming:e.upcoming,watched:e.watched,progress:e.progress,deepLinks:e.deepLinks,scheduled:e.scheduled})})))):n.createElement(n.Fragment,null,n.createElement(I.Placeholder,{className:A["seasons-bar"]}),n.createElement(S.Placeholder,{className:A["search-bar"],title:_("SEARCH_VIDEOS")}),n.createElement("div",{className:A["videos-scroll-container"]},n.createElement(u.Placeholder,null),n.createElement(u.Placeholder,null),n.createElement(u.Placeholder,null),n.createElement(u.Placeholder,null),n.createElement(u.Placeholder,null))))};d.propTypes={className:r.string,metaItem:r.object,libraryItem:r.object,season:r.number,seasonOnSelect:r.func,toggleNotifications:r.func},e.exports=d},48437:(e,t,o)=>{var a=o(41702);e.exports=a},69005:(e,t,o)=>{var a=o(88493);e.exports=a},48450:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(67294);e.exports=function(e,t){var o=a.useMemo((function(){return t.has("season")&&!isNaN(t.get("season"))?parseInt(t.get("season"),10):null}),[t]),i=a.useCallback((function(o){var a=new URLSearchParams(t);a.set("season",o),window.location.replace("#".concat(e.path,"?").concat(a))}),[e,t]);return[o,i]}},39096:(e,t,o)=>{var a=o(67294),i=o(86590),n=i.Image,r=i.HorizontalNavBar,E=o(25142);e.exports=function(){return a.createElement("div",{className:E["not-found-container"]},a.createElement(r,{className:E["nav-bar"],title:"Page not found",backButton:!0,fullscreenButton:!0,navMenu:!0}),a.createElement("div",{className:E["not-found-content"]},a.createElement(n,{className:E["not-found-image"],src:o(47740),alt:" "}),a.createElement("div",{className:E["not-found-label"]},"Page not found!")))}},50353:(e,t,o)=>{var a=o(39096);e.exports=a},29579:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(86590).Image,E=o(91391),_=function(e){var t=e.className,i=e.logo;return a.createElement("div",{className:n(t,E["buffering-loader-container"])},a.createElement(r,{className:E["buffering-loader"],src:i,alt:" ",fallbackSrc:o(35313)}))};_.propTypes={className:i.string,logo:i.string},e.exports=_},33475:(e,t,o)=>{var a=o(29579);e.exports=a},95531:(e,t,o)=>{var a=["className","paused","time","duration","buffered","volume","muted","playbackSpeed","subtitlesTracks","audioTracks","metaItem","nextVideo","stream","statistics","onPlayRequested","onPauseRequested","onNextVideoRequested","onMuteRequested","onUnmuteRequested","onVolumeChangeRequested","onSeekRequested","onToggleSubtitlesMenu","onToggleInfoMenu","onToggleSpeedMenu","onToggleVideosMenu","onToggleOptionsMenu","onToggleStatisticsMenu"];function i(){return i=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(95985).default,l=o(86590).Button,I=o(63662).useServices,u=o(85280),A=o(47429),d=o(90578),c=o(86590).useBinaryState,O=o(96073).t,R=function(e){var t,o,r=e.className,T=e.paused,R=e.time,N=e.duration,m=e.buffered,L=e.volume,p=e.muted,D=e.playbackSpeed,h=e.subtitlesTracks,C=e.audioTracks,f=e.metaItem,g=e.nextVideo,B=e.stream,P=e.statistics,v=e.onPlayRequested,y=e.onPauseRequested,M=e.onNextVideoRequested,W=e.onMuteRequested,b=e.onUnmuteRequested,U=e.onVolumeChangeRequested,G=e.onSeekRequested,k=e.onToggleSubtitlesMenu,F=e.onToggleInfoMenu,V=e.onToggleSpeedMenu,w=e.onToggleVideosMenu,H=e.onToggleOptionsMenu,Y=e.onToggleStatisticsMenu,z=E(e,a),K=I().chromecast,j=n(_.useState((function(){return K.active})),2),x=j[0],Q=j[1],X=n(c(!1),4),$=X[0],q=X[3],J=_.useCallback((function(e){e.nativeEvent.subtitlesMenuClosePrevented=!0}),[]),Z=_.useCallback((function(e){e.nativeEvent.infoMenuClosePrevented=!0}),[]),ee=_.useCallback((function(e){e.nativeEvent.speedMenuClosePrevented=!0}),[]),te=_.useCallback((function(e){e.nativeEvent.videosMenuClosePrevented=!0}),[]),oe=_.useCallback((function(e){e.nativeEvent.optionsMenuClosePrevented=!0}),[]),ae=_.useCallback((function(e){e.nativeEvent.statisticsMenuClosePrevented=!0}),[]),ie=_.useCallback((function(){T?"function"==typeof v&&v():"function"==typeof y&&y()}),[T,v,y]),ne=_.useCallback((function(){null!==g&&"function"==typeof M&&M()}),[g,M]),re=_.useCallback((function(){p?"function"==typeof b&&b():"function"==typeof W&&W()}),[p,W,b]),Ee=_.useCallback((function(){K.transport.requestSession()}),[]);return _.useEffect((function(){var e=function(){Q(K.active)};return K.on("stateChanged",e),function(){K.off("stateChanged",e)}}),[]),_.createElement("div",i({},z,{className:s(r,d["control-bar-container"])}),_.createElement(u,{className:d["seek-bar"],time:R,duration:N,buffered:m,onSeekRequested:G}),_.createElement("div",{className:d["control-bar-buttons-container"]},_.createElement(l,{className:s(d["control-bar-button"],{disabled:"boolean"!=typeof T}),title:O(T?"PLAYER_PLAY":"PLAYER_PAUSE"),tabIndex:-1,onClick:ie},_.createElement(S,{className:d.icon,name:"boolean"!=typeof T||T?"play":"pause"})),null!==g?_.createElement(l,{className:s(d["control-bar-button"]),title:O("PLAYER_NEXT_VIDEO"),tabIndex:-1,onClick:ne},_.createElement(S,{className:d.icon,name:"next"})):null,_.createElement(l,{className:s(d["control-bar-button"],{disabled:"boolean"!=typeof p}),title:O(p?"PLAYER_UNMUTE":"PLAYER_MUTE"),tabIndex:-1,onClick:re},_.createElement(S,{className:d.icon,name:"boolean"==typeof p&&p?"volume-mute":null===L||isNaN(L)?"volume-off":L<30?"volume-low":L<70?"volume-medium":"volume-high"})),_.createElement(A,{className:d["volume-slider"],volume:L,onVolumeChangeRequested:U}),_.createElement("div",{className:d.spacing}),_.createElement(l,{className:d["control-bar-buttons-menu-button"],onClick:q},_.createElement(S,{className:d.icon,name:"more-vertical"})),_.createElement("div",{className:s(d["control-bar-buttons-menu-container"],{open:$})},_.createElement(l,{className:s(d["control-bar-button"],{disabled:null===P||"Err"===P.type||null===B||"string"!=typeof B.infoHash||"number"!=typeof B.fileIdx}),tabIndex:-1,onMouseDown:ae,onClick:Y},_.createElement(S,{className:d.icon,name:"network"})),_.createElement(l,{className:s(d["control-bar-button"],{disabled:null===D}),tabIndex:-1,onMouseDown:ee,onClick:V},_.createElement(S,{className:d.icon,name:"speed"})),_.createElement(l,{className:s(d["control-bar-button"],{disabled:null===f||"Ready"!==f.type}),tabIndex:-1,onMouseDown:Z,onClick:F},_.createElement(S,{className:d.icon,name:"about"})),_.createElement(l,{className:s(d["control-bar-button"],{disabled:!x}),tabIndex:-1,onClick:Ee},_.createElement(S,{className:d.icon,name:"cast"})),_.createElement(l,{className:s(d["control-bar-button"],{disabled:!(Array.isArray(h)&&0!==h.length||Array.isArray(C)&&0!==C.length)}),tabIndex:-1,onMouseDown:J,onClick:k},_.createElement(S,{className:d.icon,name:"subtitles"})),(null==f||null===(t=f.content)||void 0===t||null===(o=t.videos)||void 0===o?void 0:o.length)>0?_.createElement(l,{className:d["control-bar-button"],tabIndex:-1,onMouseDown:te,onClick:w},_.createElement(S,{className:d.icon,name:"episodes"})):null,_.createElement(l,{className:d["control-bar-button"],tabIndex:-1,onMouseDown:oe,onClick:H},_.createElement(S,{className:d.icon,name:"more-horizontal"})))))};R.propTypes={className:T.string,paused:T.bool,time:T.number,duration:T.number,buffered:T.number,volume:T.number,muted:T.bool,playbackSpeed:T.number,subtitlesTracks:T.array,audioTracks:T.array,metaItem:T.object,nextVideo:T.object,stream:T.object,statistics:T.object,onPlayRequested:T.func,onPauseRequested:T.func,onNextVideoRequested:T.func,onMuteRequested:T.func,onUnmuteRequested:T.func,onVolumeChangeRequested:T.func,onSeekRequested:T.func,onToggleSubtitlesMenu:T.func,onToggleInfoMenu:T.func,onToggleSpeedMenu:T.func,onToggleVideosMenu:T.func,onToggleOptionsMenu:T.func,onToggleStatisticsMenu:T.func},e.exports=R},36181:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var t=function(e){return("0"+e).slice(-1*Math.max(e.toString().length,2))};e.exports=function(e){if(null===e||isNaN(e))return"--:--:--";var o=Math.floor(e/36e5),a=Math.floor(e/6e4%60),i=Math.floor(e/1e3%60);return"".concat(t(o),":").concat(t(a),":").concat(t(i))}},85280:(e,t,o)=>{var a=o(36181);e.exports=a},44932:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(44932);e.exports=a},39292:(e,t,o)=>{var a=o(95531);e.exports=a},96295:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(96295);e.exports=a},68928:(e,t,o)=>{var a=["className"];function i(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function n(e){for(var t=1;t=0||(i[o]=e[o]);return i})(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var _=o(67294),T=o(45697),s=o(94184),S=o(86590),l=S.MetaPreview,I=S.CONSTANTS,u=o(33800),A=function(e){var t=e.className,o=E(e,a),i=_.useMemo((function(){return null!==o.metaItem?n(n({},o.metaItem),{},{links:o.metaItem.links.filter((function(e){return e.category===I.SHARE_LINK_CATEGORY}))}):null}),[o.metaItem]),r=_.useCallback((function(e){e.nativeEvent.infoMenuClosePrevented=!0}),[]);return _.createElement("div",{className:s(t,u["info-menu-container"]),onMouseDown:r},null!==i?_.createElement(l,{className:u["meta-preview"],compact:!0,name:i.name,logo:i.logo,runtime:i.runtime,releaseInfo:i.releaseInfo,released:i.released,description:i.description,links:i.links}):null)};A.propTypes={className:T.string,metaItem:T.object,addon:T.object,stream:T.object},e.exports=A},95458:(e,t,o)=>{var a=o(68928);e.exports=a},72690:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(72690);e.exports=a},19252:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(86590).Button,_=o(81530),T=function(e){var t=e.icon,o=e.label,i=e.deviceId,T=e.disabled,s=e.onClick,S=a.useCallback((function(){"function"==typeof s&&s(i)}),[s,i]);return a.createElement(E,{className:n(_["option-container"],{disabled:T}),disabled:T,onClick:S},a.createElement(r,{className:_.icon,name:t}),a.createElement("div",{className:_.label},o))};T.propTypes={icon:i.string,label:i.string,deviceId:i.string,disabled:i.bool,onClick:i.func},e.exports=T},19944:(e,t,o)=>{var a=o(19252);e.exports=a},61366:(e,t,o)=>{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(61366);e.exports=a},12230:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o0||Array.isArray(te.state.extraSubtitlesTracks)&&te.state.extraSubtitlesTracks.length>0||Array.isArray(te.state.audioTracks)&&te.state.audioTracks.length>0)&&Re();break;case"KeyI":we(),null!==z.metaItem&&"Ready"===z.metaItem.type&&pe();break;case"KeyR":we(),null!==te.state.playbackSpeed&&fe();break;case"KeyV":we(),null!==z.metaItem&&"Ready"===z.metaItem.type&&ve();break;case"KeyD":we(),null!==Z.statistics&&"Err"!==Z.statistics.type&&z.selected&&"string"==typeof z.selected.stream.infoHash&&"number"==typeof z.selected.stream.fileIdx&&be();break;case"Escape":we()}},t=function(e){e.deltaY>0?Ve||null===te.state.volume||rt(te.state.volume-5):Ve||null===te.state.volume||rt(te.state.volume+5)};return oe&&(window.addEventListener("keydown",e),window.addEventListener("wheel",t)),function(){window.removeEventListener("keydown",e),window.removeEventListener("wheel",t)}}),[z.metaItem,z.selected,Z.statistics,q.seekTimeDuration,q.seekShortTimeDuration,oe,Ve,Ge,te.state.paused,te.state.time,te.state.volume,te.state.audioTracks,te.state.subtitlesTracks,te.state.extraSubtitlesTracks,te.state.playbackSpeed,Re,pe,ve,be]),T.useEffect((function(){return te.events.on("error",qe),te.events.on("ended",$e),te.events.on("subtitlesTrackLoaded",Je),te.events.on("extraSubtitlesTrackLoaded",Ze),te.events.on("implementationChanged",Xe),function(){te.events.off("error",qe),te.events.off("ended",$e),te.events.off("subtitlesTrackLoaded",Je),te.events.off("extraSubtitlesTrackLoaded",Ze),te.events.off("implementationChanged",Xe)}}),[]),T.useLayoutEffect((function(){return function(){se.cancel(),tt.cancel(),at.cancel()}}),[]),T.createElement("div",{className:S(k["player-container"],r({},k.overlayHidden,He)),onMouseDown:Rt,onMouseMove:Nt,onMouseOver:Nt,onMouseLeave:mt},T.createElement(F,{ref:te.containerElement,className:k.layer,onClick:ct,onDoubleClick:Ot}),te.state.buffering?T.createElement(D,{className:k.layer,logo:null==z||null===(t=z.metaItem)||void 0===t||null===(o=t.content)||void 0===o?void 0:o.logo}):null,null!==xe?T.createElement(h,a({className:k.layer,stream:te.state.stream},xe)):null,Ve?T.createElement("div",{className:k.layer}):null,T.createElement(O,{className:S(k.layer,k["nav-bar-layer"]),title:null!==z.title?z.title:"",backButton:!0,fullscreenButton:!0,onMouseMove:Lt,onMouseOver:Lt}),T.createElement(C,{className:S(k.layer,k["control-bar-layer"]),paused:te.state.paused,time:te.state.time,duration:te.state.duration,buffered:te.state.buffered,volume:te.state.volume,muted:te.state.muted,playbackSpeed:te.state.playbackSpeed,subtitlesTracks:te.state.subtitlesTracks.concat(te.state.extraSubtitlesTracks),audioTracks:te.state.audioTracks,metaItem:z.metaItem,nextVideo:z.nextVideo,stream:null!==z.selected?z.selected.stream:null,statistics:ee,onPlayRequested:et,onPauseRequested:ot,onNextVideoRequested:dt,onMuteRequested:it,onUnmuteRequested:nt,onVolumeChangeRequested:rt,onSeekRequested:Et,onToggleOptionsMenu:Ae,onToggleSubtitlesMenu:Re,onToggleInfoMenu:pe,onToggleSpeedMenu:fe,onToggleVideosMenu:ve,onToggleStatisticsMenu:be,onMouseMove:Lt,onMouseOver:Lt}),Ge?T.createElement(f,{className:S(k.layer,k["menu-layer"]),metaItem:null!==z.metaItem&&"Ready"===z.metaItem.type?z.metaItem.content:null,nextVideo:z.nextVideo,onDismiss:At,onNextVideoRequested:dt}):null,Me?T.createElement(g,a({className:S(k.layer,k["menu-layer"])},ee)):null,ce?T.createElement(y,{className:S(k.layer,k["menu-layer"]),audioTracks:te.state.audioTracks,selectedAudioTrackId:te.state.selectedAudioTrackId,subtitlesTracks:te.state.subtitlesTracks,selectedSubtitlesTrackId:te.state.selectedSubtitlesTrackId,subtitlesOffset:te.state.subtitlesOffset,subtitlesSize:te.state.subtitlesSize,extraSubtitlesTracks:te.state.extraSubtitlesTracks,selectedExtraSubtitlesTrackId:te.state.selectedExtraSubtitlesTrackId,extraSubtitlesOffset:te.state.extraSubtitlesOffset,extraSubtitlesDelay:te.state.extraSubtitlesDelay,extraSubtitlesSize:te.state.extraSubtitlesSize,onSubtitlesTrackSelected:Tt,onExtraSubtitlesTrackSelected:st,onAudioTrackSelected:St,onSubtitlesOffsetChanged:ut,onSubtitlesSizeChanged:It,onExtraSubtitlesOffsetChanged:ut,onExtraSubtitlesDelayChanged:lt,onExtraSubtitlesSizeChanged:It}):null,me?T.createElement(B,{className:S(k.layer,k["menu-layer"]),stream:null!==z.selected?z.selected.stream:null,addon:z.addon,metaItem:null!==z.metaItem&&"Ready"===z.metaItem.type?z.metaItem.content:null}):null,he?T.createElement(M,{className:S(k.layer,k["menu-layer"]),playbackSpeed:te.state.playbackSpeed,onPlaybackSpeedChanged:_t}):null,Be?T.createElement(v,{className:S(k.layer,k["menu-layer"]),metaItem:null!==z.metaItem&&"Ready"===z.metaItem.type?z.metaItem.content:null,seriesInfo:z.seriesInfo}):null,Ie?T.createElement(P,{className:S(k.layer,k["menu-layer"]),stream:z.selected.stream,playbackDevices:null!==Z.playbackDevices&&"Ready"===Z.playbackDevices.type?Z.playbackDevices.content:[]}):null)};V.propTypes={urlParams:s.shape({stream:s.string,streamTransportUrl:s.string,metaTransportUrl:s.string,type:s.string,id:s.string,videoId:s.string}),queryParams:s.instanceOf(URLSearchParams)};e.exports=p(V,(function(){return T.createElement("div",{className:S(k["player-container"])})}))},97764:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(86590).Button,E=o(54805),_=function(e){var t=e.className,o=e.value,i=e.selected,_=e.onSelect,T=a.useCallback((function(){"function"==typeof _&&_(o)}),[_,o]);return a.createElement(r,{className:n(t,E.option,{selected:i}),onClick:T},a.createElement("div",{className:E.label},o,"x"),a.createElement("div",{className:E.icon}))};_.propTypes={className:i.string,value:i.number,selected:i.bool,onSelect:i.func},e.exports=_},99396:(e,t,o)=>{var a=o(97764);e.exports=a},85296:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(81468).useTranslation,E=o(99396),_=o(69715),T=Array.from(Array(8).keys(),(function(e){return.25*e+.25})).reverse(),s=function(e){var t=e.className,o=e.playbackSpeed,i=e.onPlaybackSpeedChanged,s=r().t,S=a.useCallback((function(e){e.nativeEvent.speedMenuClosePrevented=!0}),[]),l=a.useCallback((function(e){"function"==typeof i&&i(e)}),[i]);return a.createElement("div",{className:n(t,_["speed-menu-container"]),onMouseDown:S},a.createElement("div",{className:_.title},s("PLAYBACK_SPEED")),a.createElement("div",{className:_["options-container"]},T.map((function(e){return a.createElement(E,{className:_.option,key:e,value:e,selected:e===o,onSelect:l})}))))};s.propTypes={className:i.string,playbackSpeed:i.number,onPlaybackSpeedChanged:i.func},e.exports=s},41998:(e,t,o)=>{var a=o(85296);e.exports=a},92763:(e,t,o)=>{var a=o(67294),i=o(94184),n=o(45697),r=o(51289),E=function(e){var t=e.className,o=e.peers,n=e.speed,E=e.completed,_=e.infoHash;return a.createElement("div",{className:i(t,r["statistics-menu-container"])},a.createElement("div",{className:r.title},"Statistics"),a.createElement("div",{className:r.stats},a.createElement("div",{className:r.stat},a.createElement("div",{className:r.label},"Peers"),a.createElement("div",{className:r.value},o)),a.createElement("div",{className:r.stat},a.createElement("div",{className:r.label},"Speed"),a.createElement("div",{className:r.value},n," MB/s")),a.createElement("div",{className:r.stat},a.createElement("div",{className:r.label},"Completed"),a.createElement("div",{className:r.value},E," %"))),a.createElement("div",{className:r["info-hash"]},a.createElement("div",{className:r.label},"Info Hash"),a.createElement("div",{className:r.value},_)))};E.propTypes={className:n.string,peers:n.number,speed:n.number,completed:n.number,infoHash:n.string},e.exports=E},24426:(e,t,o)=>{var a=o(92763);e.exports=a},50569:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(95985).default,E=o(86590).Button,_=o(93283),T=function(e){var t=e.className,o=e.value,i=e.label,T=e.disabled,s=e.dataset,S=e.onChange,l=a.useCallback((function(e){"function"==typeof S&&S({type:"change",value:e.currentTarget.dataset.type,dataset:s,reactEvent:e,nativeEvent:e.nativeEvent})}),[s,S]);return a.createElement("div",{className:n(t,_["discrete-input-container"],{disabled:T})},a.createElement("div",{className:_.header},i),a.createElement("div",{className:_["input-container"],title:T?"".concat(i," is not configurable"):null},a.createElement(E,{className:n(_["button-container"],{disabled:T}),"data-type":"decrement",onClick:l},a.createElement(r,{className:_.icon,name:"remove"})),a.createElement("div",{className:_["option-label"],title:o},o),a.createElement(E,{className:n(_["button-container"],{disabled:T}),"data-type":"increment",onClick:l},a.createElement(r,{className:_.icon,name:"add"}))))};T.propTypes={className:i.string,value:i.string,label:i.string,disabled:i.bool,dataset:i.object,onChange:i.func},e.exports=T},23132:(e,t,o)=>{var a=o(50569);e.exports=a},81346:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(86590),E=r.Button,_=r.CONSTANTS,T=r.comparatorWithPriorities,s=r.languageNames,S=o(23132),l=o(73889),I=o(96073).t,u={EMBEDDED:2,EXCLUSIVE:1},A={eng:1},d=a.memo((function(e){var t=a.useMemo((function(){return(Array.isArray(e.subtitlesTracks)?e.subtitlesTracks:[]).concat(Array.isArray(e.extraSubtitlesTracks)?e.extraSubtitlesTracks:[]).reduce((function(e,t){var o=t.lang;return e.includes(o)||e.push(o),e}),[]).sort(T(A))}),[e.subtitlesTracks,e.extraSubtitlesTracks]),o=a.useMemo((function(){return"string"==typeof e.selectedSubtitlesTrackId?(Array.isArray(e.subtitlesTracks)?e.subtitlesTracks:[]).reduce((function(t,o){var a=o.id,i=o.lang;return a===e.selectedSubtitlesTrackId?i:t}),null):"string"==typeof e.selectedExtraSubtitlesTrackId?(Array.isArray(e.extraSubtitlesTracks)?e.extraSubtitlesTracks:[]).reduce((function(t,o){var a=o.id,i=o.lang;return a===e.selectedExtraSubtitlesTrackId?i:t}),null):null}),[e.subtitlesTracks,e.extraSubtitlesTracks,e.selectedSubtitlesTrackId,e.selectedExtraSubtitlesTrackId]),i=a.useMemo((function(){return(Array.isArray(e.subtitlesTracks)?e.subtitlesTracks:[]).concat(Array.isArray(e.extraSubtitlesTracks)?e.extraSubtitlesTracks:[]).filter((function(e){return e.lang===o})).sort((function(e,t){return T(u)(e.origin,t.origin)}))}),[e.subtitlesTracks,e.extraSubtitlesTracks,o]),r=a.useCallback((function(e){e.nativeEvent.subtitlesMenuClosePrevented=!0}),[]),d=a.useCallback((function(t){var o=(Array.isArray(e.subtitlesTracks)?e.subtitlesTracks:[]).concat(Array.isArray(e.extraSubtitlesTracks)?e.extraSubtitlesTracks:[]).filter((function(e){return e.lang===t.currentTarget.dataset.lang})).sort((function(e,t){return T(u)(e.origin,t.origin)})).shift();o?o.embedded?"function"==typeof e.onSubtitlesTrackSelected&&e.onSubtitlesTrackSelected(o.id):"function"==typeof e.onExtraSubtitlesTrackSelected&&e.onExtraSubtitlesTrackSelected(o.id):("function"==typeof e.onSubtitlesTrackSelected&&e.onSubtitlesTrackSelected(null),"function"==typeof e.onExtraSubtitlesTrackSelected&&e.onExtraSubtitlesTrackSelected(null))}),[e.subtitlesTracks,e.extraSubtitlesTracks,e.onSubtitlesTrackSelected,e.onExtraSubtitlesTrackSelected]),c=a.useCallback((function(t){"true"===t.currentTarget.dataset.embedded?"function"==typeof e.onSubtitlesTrackSelected&&e.onSubtitlesTrackSelected(t.currentTarget.dataset.id):"function"==typeof e.onExtraSubtitlesTrackSelected&&e.onExtraSubtitlesTrackSelected(t.currentTarget.dataset.id)}),[e.onSubtitlesTrackSelected,e.onExtraSubtitlesTrackSelected]),O=a.useCallback((function(t){var o="increment"===t.value?250:-250;if("string"==typeof e.selectedExtraSubtitlesTrackId&&null!==e.extraSubtitlesDelay&&!isNaN(e.extraSubtitlesDelay)){var a=e.extraSubtitlesDelay+o;"function"==typeof e.onExtraSubtitlesDelayChanged&&e.onExtraSubtitlesDelayChanged(a)}}),[e.selectedExtraSubtitlesTrackId,e.extraSubtitlesDelay,e.onExtraSubtitlesDelayChanged]),R=a.useCallback((function(t){var o="increment"===t.value?1:-1;if("string"==typeof e.selectedSubtitlesTrackId){if(null!==e.subtitlesSize&&!isNaN(e.subtitlesSize)){var a=_.SUBTITLES_SIZES.indexOf(e.subtitlesSize),i=_.SUBTITLES_SIZES[Math.max(0,Math.min(_.SUBTITLES_SIZES.length-1,a+o))];"function"==typeof e.onSubtitlesSizeChanged&&e.onSubtitlesSizeChanged(i)}}else if("string"==typeof e.selectedExtraSubtitlesTrackId&&null!==e.extraSubtitlesSize&&!isNaN(e.extraSubtitlesSize)){var n=_.SUBTITLES_SIZES.indexOf(e.extraSubtitlesSize),r=_.SUBTITLES_SIZES[Math.max(0,Math.min(_.SUBTITLES_SIZES.length-1,n+o))];"function"==typeof e.onExtraSubtitlesSizeChanged&&e.onExtraSubtitlesSizeChanged(r)}}),[e.selectedSubtitlesTrackId,e.selectedExtraSubtitlesTrackId,e.subtitlesSize,e.extraSubtitlesSize,e.onSubtitlesSizeChanged,e.onExtraSubtitlesSizeChanged]),N=a.useCallback((function(t){var o="increment"===t.value?1:-1;if("string"==typeof e.selectedSubtitlesTrackId){if(null!==e.extraSubtitlesOffset&&!isNaN(e.extraSubtitlesOffset)){var a=Math.max(0,Math.min(100,Math.floor(e.extraSubtitlesOffset+o)));"function"==typeof e.onExtraSubtitlesOffsetChanged&&e.onExtraSubtitlesOffsetChanged(a)}}else if("string"==typeof e.selectedExtraSubtitlesTrackId&&null!==e.subtitlesOffset&&!isNaN(e.subtitlesOffset)){var i=Math.max(0,Math.min(100,Math.floor(e.subtitlesOffset+o)));"function"==typeof e.onSubtitlesOffsetChanged&&e.onSubtitlesOffsetChanged(i)}}),[e.selectedSubtitlesTrackId,e.selectedExtraSubtitlesTrackId,e.subtitlesOffset,e.extraSubtitlesOffset,e.onSubtitlesOffsetChanged,e.onExtraSubtitlesOffsetChanged]),m=a.useCallback((function(t){"function"==typeof e.onAudioTrackSelected&&e.onAudioTrackSelected(t.currentTarget.dataset.id)}),[e.onAudioTrackSelected]);return a.createElement("div",{className:n(e.className,l["subtitles-menu-container"]),onMouseDown:r},Array.isArray(e.audioTracks)&&e.audioTracks.length>1?a.createElement("div",{className:l["languages-container"]},a.createElement("div",{className:l["languages-header"]},"Audio Languages"),a.createElement("div",{className:l["languages-list"]},e.audioTracks.map((function(t,o){var i=t.id,r=t.label,_=t.lang;return a.createElement(E,{key:o,title:r,className:n(l["language-option"],{selected:e.selectedAudioTrackId===i}),"data-id":i,onClick:m},a.createElement("div",{className:l["language-label"]},"string"==typeof s[_]?s[_]:_),e.selectedAudioTrackId===i?a.createElement("div",{className:l.icon}):null)})))):null,a.createElement("div",{className:l["languages-container"]},a.createElement("div",{className:l["languages-header"]},I("PLAYER_SUBTITLES_LANGUAGES")),a.createElement("div",{className:l["languages-list"]},a.createElement(E,{title:I("OFF"),className:n(l["language-option"],{selected:null===o}),onClick:d},a.createElement("div",{className:l["language-label"]},I("OFF")),null===o?a.createElement("div",{className:l.icon}):null),t.map((function(e,t){return a.createElement(E,{key:t,title:"string"==typeof s[e]?s[e]:e,className:n(l["language-option"],{selected:o===e}),"data-lang":e,onClick:d},a.createElement("div",{className:l["language-label"]},"string"==typeof s[e]?s[e]:e),o===e?a.createElement("div",{className:l.icon}):null)})))),a.createElement("div",{className:l["variants-container"]},a.createElement("div",{className:l["variants-header"]},I("PLAYER_SUBTITLES_VARIANTS")),i.length>0?a.createElement("div",{className:l["variants-list"]},i.map((function(t,o){return a.createElement(E,{key:o,title:t.label,className:n(l["variant-option"],{selected:e.selectedSubtitlesTrackId===t.id||e.selectedExtraSubtitlesTrackId===t.id}),"data-id":t.id,"data-origin":t.origin,"data-embedded":t.embedded,onClick:c},a.createElement("div",{className:l["variant-label"]},t.origin),e.selectedSubtitlesTrackId===t.id||e.selectedExtraSubtitlesTrackId===t.id?a.createElement("div",{className:l.icon}):null)}))):a.createElement("div",{className:l["no-variants-container"]},a.createElement("div",{className:l["no-variants-label"]},I("PLAYER_SUBTITLES_DISABLED")))),a.createElement("div",{className:l["subtitles-settings-container"]},a.createElement("div",{className:l["settings-header"]},"Subtitles Settings"),a.createElement(S,{className:l["discrete-input"],label:I("DELAY"),value:"string"!=typeof e.selectedExtraSubtitlesTrackId||null===e.extraSubtitlesDelay||isNaN(e.extraSubtitlesDelay)?"--":"".concat((e.extraSubtitlesDelay/1e3).toFixed(2),"s"),disabled:"string"!=typeof e.selectedExtraSubtitlesTrackId||null===e.extraSubtitlesDelay||isNaN(e.extraSubtitlesDelay),onChange:O}),a.createElement(S,{className:l["discrete-input"],label:I("SIZE"),value:"string"==typeof e.selectedSubtitlesTrackId?null===e.subtitlesSize||isNaN(e.subtitlesSize)?"--":"".concat(e.subtitlesSize,"%"):"string"==typeof e.selectedExtraSubtitlesTrackId?null===e.extraSubtitlesSize||isNaN(e.extraSubtitlesSize)?"--":"".concat(e.extraSubtitlesSize,"%"):"--",disabled:"string"==typeof e.selectedSubtitlesTrackId?null===e.subtitlesSize||isNaN(e.subtitlesSize):"string"!=typeof e.selectedExtraSubtitlesTrackId||(null===e.extraSubtitlesSize||isNaN(e.extraSubtitlesSize)),onChange:R}),a.createElement(S,{className:l["discrete-input"],label:I("PLAYER_SUBTITLES_VERTICAL_POSIITON"),value:"string"==typeof e.selectedSubtitlesTrackId?null===e.subtitlesOffset||isNaN(e.subtitlesOffset)?"--":"".concat(e.subtitlesOffset,"%"):"string"==typeof e.selectedExtraSubtitlesTrackId?null===e.extraSubtitlesOffset||isNaN(e.extraSubtitlesOffset)?"--":"".concat(e.extraSubtitlesOffset,"%"):"--",disabled:"string"==typeof e.selectedSubtitlesTrackId?null===e.subtitlesOffset||isNaN(e.subtitlesOffset):"string"!=typeof e.selectedExtraSubtitlesTrackId||(null===e.extraSubtitlesOffset||isNaN(e.extraSubtitlesOffset)),onChange:N})))}));d.displayName="MainNavBars",d.propTypes={className:i.string,subtitlesTracks:i.arrayOf(i.shape({id:i.string.isRequired,lang:i.string.isRequired,origin:i.string.isRequired})),selectedSubtitlesTrackId:i.string,subtitlesOffset:i.number,subtitlesSize:i.number,extraSubtitlesTracks:i.arrayOf(i.shape({id:i.string.isRequired,lang:i.string.isRequired,origin:i.string.isRequired,label:i.string.isRequired})),selectedExtraSubtitlesTrackId:i.string,extraSubtitlesOffset:i.number,extraSubtitlesDelay:i.number,extraSubtitlesSize:i.number,audioTracks:i.arrayOf(i.shape({id:i.string.isRequired,lang:i.string.isRequired,origin:i.string.isRequired,label:i.string.isRequired})),selectedAudioTrackId:i.string,onSubtitlesTrackSelected:i.func,onExtraSubtitlesTrackSelected:i.func,onAudioTrackSelected:i.func,onSubtitlesOffsetChanged:i.func,onSubtitlesSizeChanged:i.func,onExtraSubtitlesOffsetChanged:i.func,onExtraSubtitlesDelayChanged:i.func,onExtraSubtitlesSizeChanged:i.func},e.exports=d},19646:(e,t,o)=>{var a=o(81346);e.exports=a},55245:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(44236),E=a.forwardRef((function(e,t){var o=e.className,i=e.onClick,E=e.onDoubleClick;return a.createElement("div",{className:n(o,r["video-container"]),onClick:i,onDoubleClick:E},a.createElement("div",{ref:t,className:r.video}))}));E.displayName="Video",E.propTypes={className:i.string,onClick:i.func,onDoubleClick:i.func},e.exports=E},5711:(e,t,o)=>{var a=o(55245);e.exports=a},84027:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(94184),r=o(90123),E=o(10674),_=function(e){var t=e.className,o=e.metaItem,i=e.seriesInfo,_=a.useCallback((function(e){e.nativeEvent.videosMenuClosePrevented=!0}),[]),T=a.useMemo((function(){return i&&"number"==typeof i.season&&Array.isArray(o.videos)?o.videos.filter((function(e){return e.season===i.season})):o.videos}),[o,i]);return a.createElement("div",{className:n(t,E["videos-menu-container"]),onMouseDown:_},T.map((function(e,t){return a.createElement(r,{key:t,id:e.id,title:e.title,thumbnail:e.thumbnail,episode:e.episode,released:e.released,upcoming:e.upcoming,watched:e.watched,progress:e.progress,deepLinks:e.deepLinks,scheduled:e.scheduled})})))};_.propTypes={className:i.string,metaItem:i.object,seriesInfo:i.shape({season:i.number,episode:i.number})},e.exports=_},66429:(e,t,o)=>{var a=o(84027);e.exports=a},57793:(e,t,o)=>{var a=o(12230);e.exports=a},85852:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{var a=o(67294),i=o(63662).useServices;e.exports=function(e,t){var o=i().core,n=a.useMemo((function(){var t;return null!==(t=e.selected)&&void 0!==t&&t.stream?e.selected.stream:null}),[e.selected]),r=a.useMemo((function(){return null!=n&&n.infoHash?null==n?void 0:n.infoHash:null}),[n]),E=a.useMemo((function(){var e;return"Ready"===(null===(e=t.statistics)||void 0===e?void 0:e.type)?t.statistics.content:null}),[t.statistics]),_=a.useMemo((function(){return null!=E&&E.peers?E.peers:0}),[E]),T=a.useMemo((function(){return null!=E&&E.downloadSpeed?parseFloat((E.downloadSpeed/1e3/1e3).toFixed(2)):0}),[E]),s=a.useMemo((function(){return null!=E&&E.streamProgress?parseFloat((100*E.streamProgress).toFixed(2)):0}),[E]),S=a.useCallback((function(){if(n){var e=n.infoHash,t=n.fileIdx;"string"==typeof e&&"number"==typeof t&&o.transport.dispatch({action:"StreamingServer",args:{action:"GetStatistics",args:{infoHash:e,fileIdx:t}}})}}),[n]);return a.useEffect((function(){S();var e=setInterval(S,5e3);return function(){return clearInterval(e)}}),[S]),{infoHash:r,peers:_,speed:T,completed:s}}},46722:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o{function a(e,t){return(function(e){if(Array.isArray(e))return e})(e)||(function(e,t){var o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==o)return;var a,i,n=[],r=!0,E=!1;try{for(o=o.call(e);!(r=(a=o.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){E=!0,i=e}finally{try{r||null==o.return||o.return()}finally{if(E)throw i}}return n})(e,t)||(function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var o=Object.prototype.toString.call(e).slice(8,-1);"Object"===o&&e.constructor&&(o=e.constructor.name);if("Map"===o||"Set"===o)return Array.from(e);if("Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return i(e,t)})(e,t)||(function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")})()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(24853);e.exports=a},84182:(e,t,o)=>{var a=o(67294),i=o(86590).useModelState,n=o(63662).useServices;e.exports=function(e){var t=n().core,o=a.useMemo((function(){var t,o=null!==(t=e.get("search"))&&void 0!==t?t:e.get("query");return(null==o?void 0:o.length)>0?{action:"Load",args:{model:"CatalogsWithExtra",args:{extra:[["search",o]]}}}:{action:"Unload"}}),[e]),r=a.useCallback((function(e){t.transport.dispatch({action:"CatalogsWithExtra",args:{action:"LoadRange",args:e}},"search")}),[]);return[i({model:"search",action:o}),r]}},85674:(e,t,o)=>{function a(){return a=Object.assign||function(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o=fe.current.scrollHeight-50)be(ye[ye.length-1].id);else for(var e=ye.length-1;e>=0;e--)if(ye[e].ref.current.offsetTop-fe.current.offsetTop<=fe.current.scrollTop){be(ye[e].id);break}}),[]),Ge=E.useCallback((function(e){var t=ye.find((function(t){return t.id===e.currentTarget.dataset.section}));fe.current.scrollTo({top:t.ref.current.offsetTop-fe.current.offsetTop,behavior:"smooth"})}),[]),ke=E.useCallback(T((function(){Ue()}),50),[]);return E.useEffect((function(){Re&&ce&&(r.transport.dispatch({action:"Ctx",args:{action:"InstallTraktAddon"}}),Oe(!1))}),[Re,ce]),E.useEffect((function(){null!==G.exportUrl&&"string"==typeof G.exportUrl&&window.open(G.exportUrl)}),[G.exportUrl]),E.useLayoutEffect((function(){h&&Ue(),Ie()}),[h]),E.createElement(c,{className:P["settings-container"],route:"settings"},E.createElement("div",{className:_(P["settings-content"],"animation-fade-in")},E.createElement("div",{className:P["side-menu-container"]},E.createElement(A,{className:_(P["side-menu-button"],i({},P.selected,We===v)),title:e("SETTINGS_NAV_GENERAL"),"data-section":v,onClick:Ge},e("SETTINGS_NAV_GENERAL")),E.createElement(A,{className:_(P["side-menu-button"],i({},P.selected,We===y)),title:e("SETTINGS_NAV_PLAYER"),"data-section":y,onClick:Ge},e("SETTINGS_NAV_PLAYER")),E.createElement(A,{className:_(P["side-menu-button"],i({},P.selected,We===M)),title:e("SETTINGS_NAV_STREAMING"),"data-section":M,onClick:Ge},e("SETTINGS_NAV_STREAMING")),E.createElement(A,{className:_(P["side-menu-button"],i({},P.selected,We===W)),title:e("SETTINGS_NAV_SHORTCUTS"),"data-section":W,onClick:Ge},e("SETTINGS_NAV_SHORTCUTS")),E.createElement("div",{className:P.spacing}),E.createElement("div",{className:P["version-info-label"],title:"5.0.0-beta.4"},"App Version: ","5.0.0-beta.4"),null!==F.settings&&"Ready"===F.settings.type?E.createElement("div",{className:P["version-info-label"],title:F.settings.content.serverVersion},"Server Version: ",F.settings.content.serverVersion):null),E.createElement("div",{ref:fe,className:P["sections-container"],onScroll:ke},E.createElement("div",{ref:ge,className:P["section-container"]},E.createElement("div",{className:_(P["option-container"],P["user-info-option-container"])},E.createElement("div",{className:P["user-info-content"]},E.createElement("div",{className:P["avatar-container"],style:{backgroundImage:null===b.auth?"url('".concat(o(93028),"')"):b.auth.user.avatar?"url('".concat(b.auth.user.avatar,"')"):"url('".concat(o(11251),"')")}}),E.createElement("div",{className:P["email-logout-container"]},E.createElement("div",{className:P["email-label-container"],title:null===b.auth?"Anonymous user":b.auth.user.email},E.createElement("div",{className:P["email-label"]},null===b.auth?"Anonymous user":b.auth.user.email)),null!==b.auth?E.createElement(A,{className:P["logout-button-container"],title:e("LOG_OUT"),onClick:me},E.createElement("div",{className:P["logout-label"]},e("LOG_OUT"))):null))),null===b.auth?E.createElement("div",{className:P["option-container"]},E.createElement(A,{className:_(P["option-input-container"],P["button-container"]),title:"".concat(e("LOG_IN")," / ").concat(e("SIGN_UP")),href:"#/intro"},E.createElement("div",{className:P.label},e("LOG_IN")," / ",e("SIGN_UP")))):null),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("SETTINGS_DATA_EXPORT"),tabIndex:-1,onClick:De},E.createElement("div",{className:P.label},e("SETTINGS_DATA_EXPORT")))),null!==b.auth&&null!==b.auth.user&&"string"==typeof b.auth.user._id?E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("SETTINGS_SUBSCRIBE_CALENDAR"),tabIndex:-1,onClick:pe},E.createElement("div",{className:P.label},e("SETTINGS_SUBSCRIBE_CALENDAR")))):null,E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("SETTINGS_SUPPORT"),target:"_blank",href:"https://stremio.zendesk.com/hc/en-us"},E.createElement("div",{className:P.label},e("SETTINGS_SUPPORT")))),E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:"Source code",target:"_blank",href:"https://github.com/stremio/stremio-web/tree/".concat("e0cd07060202faaa7d3e328931b5b5d20e666ad1")},E.createElement("div",{className:P.label},"Source code"))),E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("TERMS_OF_SERVICE"),target:"_blank",href:"https://www.stremio.com/tos"},E.createElement("div",{className:P.label},e("TERMS_OF_SERVICE")))),E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("PRIVACY_POLICY"),target:"_blank",href:"https://www.stremio.com/privacy"},E.createElement("div",{className:P.label},e("PRIVACY_POLICY")))),null!==b.auth&&null!==b.auth.user?E.createElement("div",{className:_(P["option-container"],P["link-container"])},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("SETTINGS_ACC_DELETE"),target:"_blank",href:"https://stremio.zendesk.com/hc/en-us/articles/360021428911-How-to-delete-my-account"},E.createElement("div",{className:P.label},e("SETTINGS_ACC_DELETE")))):null,null!==b.auth&&null!==b.auth.user&&"string"==typeof b.auth.user.email?E.createElement("div",{className:P["option-container"]},E.createElement(A,{className:_(P["option-input-container"],P["link-input-container"]),title:e("SETTINGS_CHANGE_PASSWORD"),target:"_blank",href:"https://www.strem.io/reset-password/".concat(b.auth.user.email)},E.createElement("div",{className:P.label},e("SETTINGS_CHANGE_PASSWORD")))):null,E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:_(P["option-name-container"],P["trakt-icon"])},E.createElement(S,{className:P.icon,name:"trakt"}),E.createElement("div",{className:P.label},"Trakt Scrobbling")),E.createElement(A,{className:_(P["option-input-container"],P["button-container"]),title:"Authenticate",disabled:null===b.auth,tabIndex:-1,onClick:Le},E.createElement("div",{className:P.label},null!==b.auth&&null!==b.auth.user&&null!==b.auth.user.trakt?e("LOG_OUT"):e("SETTINGS_TRAKT_AUTHENTICATE"))))),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_UI_LANGUAGE"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"]),tabIndex:-1},H)))),E.createElement("div",{ref:Be,className:P["section-container"]},E.createElement("div",{className:P["section-title"]},e("SETTINGS_NAV_PLAYER")),E.createElement("div",{className:P["section-category-container"]},E.createElement(S,{className:P.icon,name:"subtitles"}),E.createElement("div",{className:P.label},e("SETTINGS_SECTION_SUBTITLES"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SUBTITLES_LANGUAGE"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},Y))),u.active?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_FULLSCREEN_EXIT"))),E.createElement(d,a({className:_(P["option-input-container"],P["checkbox-container"])},J))):null,E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SUBTITLES_SIZE"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},z))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SUBTITLES_COLOR"))),E.createElement(R,a({className:_(P["option-input-container"],P["color-input-container"])},K))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SUBTITLES_COLOR_BACKGROUND"))),E.createElement(R,a({className:_(P["option-input-container"],P["color-input-container"])},j))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SUBTITLES_COLOR_OUTLINE"))),E.createElement(R,a({className:_(P["option-input-container"],P["color-input-container"])},x)))),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:P["section-category-container"]},E.createElement(S,{className:P.icon,name:"volume-medium"}),E.createElement("div",{className:P.label},e("SETTINGS_SECTION_AUDIO"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_DEFAULT_AUDIO_TRACK"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},Q))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SURROUND_SOUND"))),E.createElement(d,a({className:_(P["option-input-container"],P["checkbox-container"]),tabIndex:-1},X)))),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:P["section-category-container"]},E.createElement(S,{className:P.icon,name:"remote"}),E.createElement("div",{className:P.label},e("SETTINGS_SECTION_CONTROLS"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SEEK_KEY"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},$))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SEEK_KEY_SHIFT"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},q))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_PLAY_IN_BACKGROUND"))),E.createElement(d,a({className:_(P["option-input-container"],P["checkbox-container"]),disabled:!0,tabIndex:-1},oe)))),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:P["section-category-container"]},E.createElement(S,{className:P.icon,name:"play"}),E.createElement("div",{className:P.label},e("SETTINGS_SECTION_AUTO_PLAY"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("AUTO_PLAY"))),E.createElement(d,a({className:_(P["option-input-container"],P["checkbox-container"])},te))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_NEXT_VIDEO_POPUP_DURATION"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"]),disabled:!b.settings.bingeWatching},ee)))),E.createElement("div",{className:P["section-container"]},E.createElement("div",{className:P["section-category-container"]},E.createElement(S,{className:P.icon,name:"glasses"}),E.createElement("div",{className:P.label},e("SETTINGS_SECTION_ADVANCED"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_PLAY_IN_EXTERNAL_PLAYER"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},Z))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_HWDEC"))),E.createElement(d,a({className:_(P["option-input-container"],P["checkbox-container"]),disabled:!0,tabIndex:-1},ae)))),E.createElement("div",{ref:Pe,className:P["section-container"]},E.createElement("div",{className:P["section-title"]},e("SETTINGS_NAV_STREAMING")),E.createElement("div",{className:P["option-container"]},E.createElement(A,{className:_(P["option-input-container"],P["button-container"]),title:"Reload",onClick:he},E.createElement("div",{className:P.label},e("RELOAD")))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("STATUS"))),E.createElement("div",{className:_(P["option-input-container"],P["info-container"])},E.createElement("div",{className:P.label},null===F.settings?"NotLoaded":"Ready"===F.settings.type?e("SETTINGS_SERVER_STATUS_ONLINE"):"Err"===F.settings.type?e("SETTINGS_SERVER_STATUS_ERROR"):F.settings.type))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},"Url")),E.createElement("div",{className:_(P["option-input-container"],P["configure-input-container"])},E.createElement("div",{className:P.label,title:ie.value},ie.value),E.createElement(A,{className:P["configure-button-container"],title:"Configure server url",onClick:le},E.createElement(S,{className:P.icon,name:"settings"})))),null!==re.value?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_REMOTE_URL"))),E.createElement("div",{className:_(P["option-input-container"],P["configure-input-container"])},E.createElement("div",{className:P.label,title:re.value},re.value),E.createElement(A,{className:P["configure-button-container"],title:e("SETTINGS_COPY_REMOTE_URL"),onClick:Ce},E.createElement(S,{className:P.icon,name:"link"})))):null,null!==b.auth&&null!==b.auth.user&&null!==Ee?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_HTTPS_ENDPOINT"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},Ee))):null,null!==_e?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SERVER_CACHE_SIZE"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},_e))):null,null!==Te?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SERVER_TORRENT_PROFILE"))),E.createElement(O,a({className:_(P["option-input-container"],P["multiselect-container"])},Te))):null),E.createElement("div",{ref:ve,className:P["section-container"]},E.createElement("div",{className:P["section-title"]},e("SETTINGS_NAV_SHORTCUTS")),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_PLAY_PAUSE"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,e("SETTINGS_SHORTCUT_SPACE")))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_SEEK_FORWARD"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"→"),E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_OR")),E.createElement("kbd",null,"⇧ ",e("SETTINGS_SHORTCUT_SHIFT")),E.createElement("div",{className:P.label},"+"),E.createElement("kbd",null,"→"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_SEEK_BACKWARD"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"←"),E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_OR")),E.createElement("kbd",null,"⇧ ",e("SETTINGS_SHORTCUT_SHIFT")),E.createElement("div",{className:P.label},"+"),E.createElement("kbd",null,"←"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_VOLUME_UP"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"↑"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_VOLUME_DOWN"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"↓"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_MENU_SUBTITLES"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"S"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_MENU_INFO"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"I"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_FULLSCREEN"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"F"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_NAVIGATE_MENUS"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"1"),E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_TO")),E.createElement("kbd",null,"5"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_GO_TO_SEARCH"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,"0"))),E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},e("SETTINGS_SHORTCUT_EXIT_BACK"))),E.createElement("div",{className:_(P["option-input-container"],P["shortcut-container"])},E.createElement("kbd",null,e("SETTINGS_SHORTCUT_ESC"))))),E.createElement("div",{className:_(P["section-container"],P["versions-section-container"])},E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},"App Version")),E.createElement("div",{className:_(P["option-input-container"],P["info-container"])},E.createElement("div",{className:P.label},"5.0.0-beta.4"))),null!==F.settings&&"Ready"===F.settings.type?E.createElement("div",{className:P["option-container"]},E.createElement("div",{className:P["option-name-container"]},E.createElement("div",{className:P.label},"Server Version")),E.createElement("div",{className:_(P["option-input-container"],P["info-container"])},E.createElement("div",{className:P.label},F.settings.content.serverVersion))):null))),Se?E.createElement(m,{className:P["configure-server-url-modal-container"],title:e("SETTINGS_SERVER_CONFIGURE_TITLE"),buttons:Ne,onCloseRequest:Ie},E.createElement(N,{ref:ue,autoFocus:!0,className:P["server-url-input"],type:"text",defaultValue:ie.value,placeholder:e("SETTINGS_SERVER_CONFIGURE_INPUT"),onSubmit:Ae})):null)}),(function(){return E.createElement(c,{className:P["settings-container"],route:"settings"})}))},62465:(e,t,o)=>{var a=o(85674);e.exports=a},94137:(e,t,o)=>{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t{function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;te.length)&&(t=e.length);for(var o=0,a=new Array(t);o{var a=o(57165),i=o(88823),n=o(21901),r=o(77965),E=o(69005),_=o(50353),T=o(96375),s=o(62465),S=o(57793),l=o(16732);e.exports={Addons:a,Board:i,Discover:n,Library:r,MetaDetails:E,NotFound:_,Search:T,Settings:s,Player:S,Intro:l}},61099:(e,t,o)=>{var a=o(26729),i=o(55482);e.exports=function(){var e=!1,t=null,o=!1,n=null,r=new a;function E(){e=!0,t=null,o=!1,T()}function _(a){console.error(a),e=!1,t=new Error("Google Cast API not available",{cause:a}),o=!1,T(),n=null}function T(){r.emit("stateChanged")}Object.defineProperties(this,{active:{configurable:!1,enumerable:!0,get:function(){return e}},error:{configurable:!1,enumerable:!0,get:function(){return t}},starting:{configurable:!1,enumerable:!0,get:function(){return o}},transport:{configurable:!1,enumerable:!0,get:function(){return n}}}),this.start=function(){e||t instanceof Error||o||(o=!0,(n=new i).on("init",E),n.on("init-error",_),T())},this.stop=function(){e=!1,t=null,o=!1,T(),null!==n&&(n.removeAllListeners(),n=null)},this.on=function(e,t){r.on(e,t)},this.off=function(e,t){r.off(e,t)}}},55482:(e,t,o)=>{var a=o(26729),i=o(542),n="urn:x-cast:com.stremio",r=2e4,E=null,_=new a;window.__onGCastApiAvailable=function(e){delete window.__onGCastApiAvailable,E=!!e,_.emit("availabilityChanged")};e.exports=function(){var e=new a,t={};function o(o,a){try{var i=JSON.parse(a),n=i.id,r=i.chunk,E=i.index,_=i.length;if(t[n]=t[n]||[],t[n][E]=r,Object.keys(t[n]).length===_){var T=JSON.parse(t[n].join(""));delete t[n],e.emit("message",T)}}catch(t){e.emit("message-error",t)}}function T(t){e.emit(cast.framework.CastSession.APPLICATION_STATUS_CHANGED,t)}function s(t){e.emit(cast.framework.CastSession.APPLICATION_METADATA_CHANGED,t)}function S(t){e.emit(cast.framework.CastSession.ACTIVE_INPUT_STATE_CHANGED,t)}function l(t){e.emit(cast.framework.CastSession.VOLUME_CHANGED,t)}function I(t){e.emit(cast.framework.CastSession.MEDIA_SESSION,t)}function u(t){e.emit(cast.framework.CastContextEventType.CAST_STATE_CHANGED,t)}function A(t){switch(e.emit(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,t),t.sessionState){case cast.framework.SessionState.SESSION_STARTED:t.session.addMessageListener(n,o),t.session.addEventListener(cast.framework.CastSession.APPLICATION_STATUS_CHANGED,T),t.session.addEventListener(cast.framework.CastSession.APPLICATION_METADATA_CHANGED,s),t.session.addEventListener(cast.framework.CastSession.ACTIVE_INPUT_STATE_CHANGED,S),t.session.addEventListener(cast.framework.CastSession.VOLUME_CHANGED,l),t.session.addEventListener(cast.framework.CastSession.MEDIA_SESSION,I);break;case cast.framework.SessionState.SESSION_ENDED:t.session.removeMessageListener(n,o),t.session.removeEventListener(cast.framework.CastSession.APPLICATION_STATUS_CHANGED,T),t.session.removeEventListener(cast.framework.CastSession.APPLICATION_METADATA_CHANGED,s),t.session.removeEventListener(cast.framework.CastSession.ACTIVE_INPUT_STATE_CHANGED,S),t.session.removeEventListener(cast.framework.CastSession.VOLUME_CHANGED,l),t.session.removeEventListener(cast.framework.CastSession.MEDIA_SESSION,I)}}new Promise((function(e,t){function o(){_.off("availabilityChanged",o),E?e():t(new Error("window.cast api not available"))}null!==E?o():_.on("availabilityChanged",o)})).then((function(){cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.CAST_STATE_CHANGED,u),cast.framework.CastContext.getInstance().addEventListener(cast.framework.CastContextEventType.SESSION_STATE_CHANGED,A)})).then((function(){try{e.emit("init")}catch(e){console.error("ChromecastTransport",e)}})).catch((function(t){e.emit("init-error",t)})),this.on=function(t,o){e.on(t,o)},this.off=function(t,o){e.off(t,o)},this.removeAllListeners=function(){e.removeAllListeners()},this.getCastState=function(){return cast.framework.CastContext.getInstance().getCastState()},this.getSessionState=function(){return cast.framework.CastContext.getInstance().getSessionState()},this.getCastDevice=function(){var e=cast.framework.CastContext.getInstance().getCurrentSession();return null!==e?e.getCastDevice():null},this.setOptions=function(e){cast.framework.CastContext.getInstance().setOptions(e)},this.requestSession=function(){return cast.framework.CastContext.getInstance().requestSession()},this.endCurrentSession=function(e){cast.framework.CastContext.getInstance().endCurrentSession(e)},this.sendMessage=function(e){var t=cast.framework.CastContext.getInstance().getCurrentSession();if(null!==t){for(var o=JSON.stringify(e),a=Math.ceil(o.length/r),E=[],_=0;_{var a=o(61099);e.exports=a},46194:(e,t,o)=>{var a=o(26729),i=o(6806);e.exports=function(e){var t=!1,o=null,n=!1,r=null,E=new a;function _(){t=!0,o=null,n=!1,s()}function T(e){console.error(e),t=!1,o=new Error("Stremio Core Transport initialization failed",{cause:e}),n=!1,s(),r=null}function s(){E.emit("stateChanged")}Object.defineProperties(this,{active:{configurable:!1,enumerable:!0,get:function(){return t}},error:{configurable:!1,enumerable:!0,get:function(){return o}},starting:{configurable:!1,enumerable:!0,get:function(){return n}},transport:{configurable:!1,enumerable:!0,get:function(){return r}}}),this.start=function(){t||o instanceof Error||n||(n=!0,(r=new i(e)).on("init",_),r.on("error",T),s())},this.stop=function(){t=!1,o=null,n=!1,s(),null!==r&&(r.removeAllListeners(),r=null)},this.on=function(e,t){E.on(e,t)},this.off=function(e,t){E.off(e,t)}}},6806:(e,t,o)=>{function a(e,t,o,a,i,n,r){try{var E=e[n](r),_=E.value}catch(e){return void o(e)}E.done?t(_):Promise.resolve(_).then(a,i)}function i(e){return function(){var t=this,o=arguments;return new Promise((function(i,n){var r=e.apply(t,o);function E(e){a(r,i,n,E,_,"next",e)}function _(e){a(r,i,n,E,_,"throw",e)}E(void 0)}))}}var n=o(26729),r=o(56553);e.exports=function(e){var t=new n,o=new Worker("".concat("e0cd07060202faaa7d3e328931b5b5d20e666ad1","/scripts/worker.js")),a=new r(window,o);window.onCoreEvent=function(e){var o=e.name,a=e.args;try{t.emit(o,a)}catch(e){console.error("CoreTransport",e)}},a.call(["init"],[e]).then((function(){try{t.emit("init")}catch(e){console.error("CoreTransport",e)}})).catch((function(e){t.emit("error",e)})),this.on=function(e,o){t.on(e,o)},this.off=function(e,o){t.off(e,o)},this.removeAllListeners=function(){t.removeAllListeners()},this.getState=(function(){var e=i(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.call(["getState"],[t]));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}})(),this.getDebugState=i(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.call(["getDebugState"],[]));case 1:case"end":return e.stop()}}),e)}))),this.dispatch=(function(){var e=i(regeneratorRuntime.mark((function e(t,o){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.call(["dispatch"],[t,o,location.hash]));case 1:case"end":return e.stop()}}),e)})));return function(t,o){return e.apply(this,arguments)}})(),this.analytics=(function(){var e=i(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.call(["analytics"],[t,location.hash]));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}})(),this.decodeStream=(function(){var e=i(regeneratorRuntime.mark((function e(t){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",a.call(["decodeStream"],[t]));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}})()}},4937:(e,t,o)=>{var a=o(46194);e.exports=a},48634:(e,t,o)=>{function a(e,t,o,a,i,n,r){try{var E=e[n](r),_=E.value}catch(e){return void o(e)}E.done?t(_):Promise.resolve(_).then(a,i)}function i(e){return function(){var t=this,o=arguments;return new Promise((function(i,n){var r=e.apply(t,o);function E(e){a(r,i,n,E,_,"next",e)}function _(e){a(r,i,n,E,_,"throw",e)}E(void 0)}))}}var n=o(26729);e.exports=function(e){var t=e.core,o=!1,a=new n;function r(e){e.preventDefault()}function E(e){return _.apply(this,arguments)}function _(){return(_=i(regeneratorRuntime.mark((function e(o){var i,n;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o.preventDefault(),!(o.dataTransfer.files instanceof FileList&&o.dataTransfer.files.length>0)){e.next=18;break}i=o.dataTransfer.files[0],e.t0=i.type,e.next="application/x-bittorrent"===e.t0?6:17;break;case 6:return e.prev=6,e.next=9,i.arrayBuffer();case 9:n=e.sent,t.transport.dispatch({action:"StreamingServer",args:{action:"CreateTorrent",args:Array.from(new Uint8Array(n))}}),e.next=16;break;case 13:e.prev=13,e.t1=e.catch(6),a.emit("error",{message:"Failed to process file",file:{name:i.name,type:i.type}});case 16:return e.abrupt("break",18);case 17:a.emit("error",{message:"Unsupported file",file:{name:i.name,type:i.type}});case 18:case"end":return e.stop()}}),e,null,[[6,13]])})))).apply(this,arguments)}function T(){a.emit("stateChanged")}Object.defineProperties(this,{active:{configurable:!1,enumerable:!0,get:function(){return o}}}),this.start=function(){o||(window.addEventListener("dragover",r),window.addEventListener("drop",E),o=!0,T())},this.stop=function(){window.removeEventListener("dragover",r),window.removeEventListener("drop",E),o=!1,T()},this.on=function(e,t){a.on(e,t)},this.off=function(e,t){a.off(e,t)}}},98500:(e,t,o)=>{var a=o(48634);e.exports=a},19093:(e,t,o)=>{var a=o(26729);e.exports=function(){var e=!1,t=new a;function o(e){if(!(e.keyboardShortcutPrevented||"INPUT"===e.target.tagName||e.ctrlKey||e.altKey||e.shiftKey||e.metaKey))switch(e.code){case"Digit0":e.preventDefault(),window.location="#/search";break;case"Digit1":e.preventDefault(),window.location="#/";break;case"Digit2":e.preventDefault(),window.location="#/discover";break;case"Digit3":e.preventDefault(),window.location="#/library";break;case"Digit4":e.preventDefault(),window.location="#/addons";break;case"Digit5":e.preventDefault(),window.location="#/settings";break;case"Backspace":e.preventDefault(),e.ctrlKey?window.history.forward():window.history.back();break;case"KeyF":e.preventDefault(),document.fullscreenElement===document.documentElement?document.exitFullscreen():document.documentElement.requestFullscreen()}}function i(){t.emit("stateChanged")}Object.defineProperties(this,{active:{configurable:!1,enumerable:!0,get:function(){return e}}}),this.start=function(){e||(window.addEventListener("keydown",o),e=!0,i())},this.stop=function(){window.removeEventListener("keydown",o),e=!1,i()}}},97369:(e,t,o)=>{var a=o(19093);e.exports=a},42207:(e,t,o)=>{var a=o(67294).createContext({});a.displayName="ServicesContext",e.exports=a},58261:(e,t,o)=>{var a=o(67294),i=o(45697),n=o(42207),r=function(e){var t=e.services,o=void 0===t?{}:t,i=e.children;return a.createElement(n.Provider,{value:o},i)};r.propTypes={services:i.object,children:i.oneOfType([i.arrayOf(i.node),i.node])},e.exports=r},83487:(e,t,o)=>{var a=o(58261),i=o(71806);e.exports={ServicesProvider:a,useServices:i}},71806:(e,t,o)=>{var a=o(67294),i=o(42207);e.exports=function(){return a.useContext(i)}},53015:(e,t,o)=>{var a=o(26729),i=o(80755);e.exports=function(){var e=!1,t=null,o=!1,n=null,r=new a;function E(){e=!0,t=null,o=!1,T()}function _(a){console.error(a),e=!1,t=new Error(a),o=!1,T(),n=null}function T(){r.emit("stateChanged")}Object.defineProperties(this,{active:{configurable:!1,enumerable:!0,get:function(){return e}},error:{configurable:!1,enumerable:!0,get:function(){return t}},starting:{configurable:!1,enumerable:!0,get:function(){return o}},transport:{configurable:!1,enumerable:!0,get:function(){return n}}}),this.start=function(){e||t instanceof Error||o||(e=!1,o=!0,(n=new i).on("init",E),n.on("init-error",_),T())},this.stop=function(){e=!1,t=null,o=!1,T()},this.on=function(e,t){r.on(e,t)},this.off=function(e,t){r.off(e,t)}}},80755:(e,t,o)=>{var a=o(26729),i=!1,n=new a,r=1,E=3,_=6,T=7,s="transport";window.initShellComm=function(){delete window.initShellComm,n.emit("availabilityChanged")};e.exports=function(){var e=new a;this.props={};var t=this;(window.qt?new Promise((function(e){function t(){n.off("availabilityChanged",t),i=!0,e()}i?t():n.on("availabilityChanged",t)})):Promise.reject("Qt API not found")).then((function(){var o=window.qt&&window.qt.webChannelTransport;if(!o)throw"no viable transport found (qt.webChannelTransport)";var a=0;function i(e){e.id=a++,o.send(JSON.stringify(e))}o.onmessage=function(o){var a=JSON.parse(o.data);if(0===a.id){var n=a.data[s];n.properties.slice(1).forEach((function(e){t.props[e[1]]=e[3]})),"string"==typeof t.props.shellVersion&&(t.shellVersionArr=(t.props.shellVersion.match(/(\d+)\.(\d+)\.(\d+)/)||[]).slice(1,4).map(Number)),e.emit("received-props",t.props),n.signals.forEach((function(e){i({type:T,object:s,signal:e[1]})}));var E=n.methods.filter((function(e){return"onEvent"===e[0]}))[0];t.send=function(e,t){i({type:_,object:s,method:E[1],args:[e,t||{}]})},t.send("app-ready",{})}a.object===s&&a.type===r&&e.emit(a.args[0],a.args[1]),e.emit("init")},i({type:E})})).catch((function(t){e.emit("init-error",t)})),this.on=function(t,o){e.on(t,o)},this.off=function(t,o){e.off(t,o)},this.removeAllListeners=function(){e.removeAllListeners()}}},61921:(e,t,o)=>{var a=o(53015);e.exports=a},63662:(e,t,o)=>{var a=o(56623),i=o(4937),n=o(98500),r=o(97369),E=o(83487),_=E.ServicesProvider,T=E.useServices,s=o(61921);e.exports={Chromecast:a,Core:i,DragAndDrop:n,KeyboardShortcuts:r,ServicesProvider:_,useServices:T,Shell:s}},79742:(e,t)=>{"use strict";t.byteLength=function(e){var t=_(e),o=t[0],a=t[1];return 3*(o+a)/4-a},t.toByteArray=function(e){var t,o,n=_(e),r=n[0],E=n[1],T=new i((function(e,t,o){return 3*(t+o)/4-o})(0,r,E)),s=0,S=E>0?r-4:r;for(o=0;o>16&255,T[s++]=t>>8&255,T[s++]=255&t;2===E&&(t=a[e.charCodeAt(o)]<<2|a[e.charCodeAt(o+1)]>>4,T[s++]=255&t);1===E&&(t=a[e.charCodeAt(o)]<<10|a[e.charCodeAt(o+1)]<<4|a[e.charCodeAt(o+2)]>>2,T[s++]=t>>8&255,T[s++]=255&t);return T},t.fromByteArray=function(e){for(var t,a=e.length,i=a%3,n=[],r=16383,E=0,_=a-i;E<_;E+=r)n.push(T(e,E,E+r>_?_:E+r));1===i?(t=e[a-1],n.push(o[t>>2]+o[t<<4&63]+"==")):2===i&&(t=(e[a-2]<<8)+e[a-1],n.push(o[t>>10]+o[t>>4&63]+o[t<<2&63]+"="));return n.join("")};for(var o=[],a=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=0,E=n.length;r0)throw new Error("Invalid string. Length must be a multiple of 4");var o=e.indexOf("=");return-1===o&&(o=t),[o,o===t?0:4-o%4]}function T(e,t,a){for(var i,n,r=[],E=t;E>18&63]+o[n>>12&63]+o[n>>6&63]+o[63&n]);return r.join("")}a["-".charCodeAt(0)]=62,a["_".charCodeAt(0)]=63},57500:e=>{function t(e){return e.reduce(((e,t,o,a)=>{const i=t.split("-").map((e=>parseInt(e)));return e.concat(((e,t=e)=>Array.from({length:t-e+1},((t,o)=>o+e)))(...i))}),[])}e.exports=t,e.exports.parse=t,e.exports.compose=function(e){return e.reduce(((e,t,o,a)=>(0!==o&&t===a[o-1]+1||e.push([]),e[e.length-1].push(t),e)),[]).map((e=>e.length>1?`${e[0]}-${e[e.length-1]}`:`${e[0]}`))}},51206:function(e){e.exports=(function(e){var t={};function o(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return e[a].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(a,i,function(t){return e[t]}.bind(null,i));return a},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=90)})({17:function(e,t,o){"use strict";t.__esModule=!0,t.default=void 0;var a=o(18),i=(function(){function e(){}return e.getFirstMatch=function(e,t){var o=t.match(e);return o&&o.length>0&&o[1]||""},e.getSecondMatch=function(e,t){var o=t.match(e);return o&&o.length>1&&o[2]||""},e.matchAndReturnConst=function(e,t,o){if(e.test(t))return o},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,o,a){void 0===a&&(a=!1);var i=e.getVersionPrecision(t),n=e.getVersionPrecision(o),r=Math.max(i,n),E=0,_=e.map([t,o],(function(t){var o=r-e.getVersionPrecision(t),a=t+new Array(o+1).join(".0");return e.map(a.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(a&&(E=r-Math.min(i,n)),r-=1;r>=E;){if(_[0][r]>_[1][r])return 1;if(_[0][r]===_[1][r]){if(r===E)return 0;r-=1}else if(_[0][r]<_[1][r])return-1}},e.map=function(e,t){var o,a=[];if(Array.prototype.map)return Array.prototype.map.call(e,t);for(o=0;o1?i-1:0),r=1;r0){var r=Object.keys(o),_=E.default.find(r,(function(e){return t.isOS(e)}));if(_){var T=this.satisfies(o[_]);if(void 0!==T)return T}var s=E.default.find(r,(function(e){return t.isPlatform(e)}));if(s){var S=this.satisfies(o[s]);if(void 0!==S)return S}}if(n>0){var l=Object.keys(i),I=E.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==I)return this.compareVersion(i[I])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var o=this.getBrowserName().toLowerCase(),a=e.toLowerCase(),i=E.default.getBrowserTypeByAlias(a);return t&&i&&(a=i.toLowerCase()),a===o},t.compareVersion=function(e){var t=[0],o=e,a=!1,i=this.getBrowserVersion();if("string"==typeof i)return">"===e[0]||"<"===e[0]?(o=e.substr(1),"="===e[1]?(a=!0,o=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?o=e.substr(1):"~"===e[0]&&(a=!0,o=e.substr(1)),t.indexOf(E.default.compareVersions(i,o,a))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e})();t.default=T,e.exports=t.default},92:function(e,t,o){"use strict";t.__esModule=!0,t.default=void 0;var a,i=(a=o(17))&&a.__esModule?a:{default:a},n=/version\/(\d+(\.?_?\d+)+)/i,r=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},o=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},o=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},o=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},o=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},o=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},o=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},o=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},o=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},o=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},o=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},o=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},o=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},o=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},o=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},o=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return o&&(t.version=o),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},o=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},o=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},o=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},o=i.default.getFirstMatch(n,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},o=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},o=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},o=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},o=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},o=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},o=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},o=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},o=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},o=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:function(e){var t=!e.test(/like android/i),o=e.test(/android/i);return t&&o},describe:function(e){var t={name:"Android Browser"},o=i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},o=i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},o=i.default.getFirstMatch(n,e);return o&&(t.version=o),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=r,e.exports=t.default},93:function(e,t,o){"use strict";t.__esModule=!0,t.default=void 0;var a,i=(a=o(17))&&a.__esModule?a:{default:a},n=o(18),r=[{test:[/Roku\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:n.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:n.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),o=i.default.getWindowsVersionName(t);return{name:n.OS_MAP.Windows,version:t,versionName:o}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:n.OS_MAP.iOS},o=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return o&&(t.version=o),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),o=i.default.getMacOSVersionName(t),a={name:n.OS_MAP.MacOS,version:t};return o&&(a.versionName=o),a}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:n.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),o=e.test(/android/i);return t&&o},describe:function(e){var t=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),o=i.default.getAndroidVersionName(t),a={name:n.OS_MAP.Android,version:t};return o&&(a.versionName=o),a}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),o={name:n.OS_MAP.WebOS};return t&&t.length&&(o.version=t),o}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||i.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:n.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:n.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:n.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:n.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:n.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:n.OS_MAP.PlayStation4,version:t}}}];t.default=r,e.exports=t.default},94:function(e,t,o){"use strict";t.__esModule=!0,t.default=void 0;var a,i=(a=o(17))&&a.__esModule?a:{default:a},n=o(18),r=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",o={type:n.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(o.model=t),o}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:n.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:n.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:n.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:n.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:n.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:n.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),o=e.test(/like (ipod|iphone)/i);return t&&!o},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:n.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:n.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:n.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:n.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:n.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:n.PLATFORMS_MAP.tv}}}];t.default=r,e.exports=t.default},95:function(e,t,o){"use strict";t.__esModule=!0,t.default=void 0;var a,i=(a=o(17))&&a.__esModule?a:{default:a},n=o(18),r=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:n.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:n.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:n.ENGINE_MAP.Trident},o=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:n.ENGINE_MAP.Presto},o=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:function(e){var t=e.test(/gecko/i),o=e.test(/like gecko/i);return t&&!o},describe:function(e){var t={name:n.ENGINE_MAP.Gecko},o=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:n.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:n.ENGINE_MAP.WebKit},o=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return o&&(t.version=o),t}}];t.default=r,e.exports=t.default}})},48764:(e,t,o)=>{"use strict";const a=o(79742),i=o(80645),n="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=_,t.SlowBuffer=function(e){+e!=e&&(e=0);return _.alloc(+e)},t.INSPECT_MAX_BYTES=50;const r=2147483647;function E(e){if(e>r)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,_.prototype),t}function _(e,t,o){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return S(e)}return T(e,t,o)}function T(e,t,o){if("string"==typeof e)return(function(e,t){"string"==typeof t&&""!==t||(t="utf8");if(!_.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const o=0|A(e,t);let a=E(o);const i=a.write(e,t);i!==o&&(a=a.slice(0,i));return a})(e,t);if(ArrayBuffer.isView(e))return(function(e){if(X(e,Uint8Array)){const t=new Uint8Array(e);return I(t.buffer,t.byteOffset,t.byteLength)}return l(e)})(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(X(e,ArrayBuffer)||e&&X(e.buffer,ArrayBuffer))return I(e,t,o);if("undefined"!=typeof SharedArrayBuffer&&(X(e,SharedArrayBuffer)||e&&X(e.buffer,SharedArrayBuffer)))return I(e,t,o);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const a=e.valueOf&&e.valueOf();if(null!=a&&a!==e)return _.from(a,t,o);const i=(function(e){if(_.isBuffer(e)){const t=0|u(e.length),o=E(t);return 0===o.length||e.copy(o,0,0,t),o}if(void 0!==e.length)return"number"!=typeof e.length||$(e.length)?E(0):l(e);if("Buffer"===e.type&&Array.isArray(e.data))return l(e.data)})(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return _.from(e[Symbol.toPrimitive]("string"),t,o);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function s(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function S(e){return s(e),E(e<0?0:0|u(e))}function l(e){const t=e.length<0?0:0|u(e.length),o=E(t);for(let a=0;a=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|e}function A(e,t){if(_.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||X(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const o=e.length,a=arguments.length>2&&!0===arguments[2];if(!a&&0===o)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return o;case"utf8":case"utf-8":return j(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*o;case"hex":return o>>>1;case"base64":return x(e).length;default:if(i)return a?-1:j(e).length;t=(""+t).toLowerCase(),i=!0}}function d(e,t,o){let a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===o||o>this.length)&&(o=this.length),o<=0)return"";if((o>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return P(this,t,o);case"utf8":case"utf-8":return C(this,t,o);case"ascii":return g(this,t,o);case"latin1":case"binary":return B(this,t,o);case"base64":return h(this,t,o);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return v(this,t,o);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function c(e,t,o){const a=e[t];e[t]=e[o],e[o]=a}function O(e,t,o,a,i){if(0===e.length)return-1;if("string"==typeof o?(a=o,o=0):o>2147483647?o=2147483647:o<-2147483648&&(o=-2147483648),$(o=+o)&&(o=i?0:e.length-1),o<0&&(o=e.length+o),o>=e.length){if(i)return-1;o=e.length-1}else if(o<0){if(!i)return-1;o=0}if("string"==typeof t&&(t=_.from(t,a)),_.isBuffer(t))return 0===t.length?-1:R(e,t,o,a,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,o):Uint8Array.prototype.lastIndexOf.call(e,t,o):R(e,[t],o,a,i);throw new TypeError("val must be string, number or Buffer")}function R(e,t,o,a,i){let n,r=1,E=e.length,_=t.length;if(void 0!==a&&("ucs2"===(a=String(a).toLowerCase())||"ucs-2"===a||"utf16le"===a||"utf-16le"===a)){if(e.length<2||t.length<2)return-1;r=2,E/=2,_/=2,o/=2}function T(e,t){return 1===r?e[t]:e.readUInt16BE(t*r)}if(i){let a=-1;for(n=o;nE&&(o=E-_),n=o;n>=0;n--){let o=!0;for(let a=0;a<_;a++)if(T(e,n+a)!==T(t,a)){o=!1;break}if(o)return n}return-1}function N(e,t,o,a){o=Number(o)||0;const i=e.length-o;a?(a=Number(a))>i&&(a=i):a=i;const n=t.length;let r;for(a>n/2&&(a=n/2),r=0;r>8,i=o%256,n.push(i),n.push(a);return n})(t,e.length-o),e,o,a)}function h(e,t,o){return 0===t&&o===e.length?a.fromByteArray(e):a.fromByteArray(e.slice(t,o))}function C(e,t,o){o=Math.min(e.length,o);const a=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+r<=o){let o,a,E,_;switch(r){case 1:t<128&&(n=t);break;case 2:o=e[i+1],128==(192&o)&&(_=(31&t)<<6|63&o,_>127&&(n=_));break;case 3:o=e[i+1],a=e[i+2],128==(192&o)&&128==(192&a)&&(_=(15&t)<<12|(63&o)<<6|63&a,_>2047&&(_<55296||_>57343)&&(n=_));break;case 4:o=e[i+1],a=e[i+2],E=e[i+3],128==(192&o)&&128==(192&a)&&128==(192&E)&&(_=(15&t)<<18|(63&o)<<12|(63&a)<<6|63&E,_>65535&&_<1114112&&(n=_))}}null===n?(n=65533,r=1):n>65535&&(n-=65536,a.push(n>>>10&1023|55296),n=56320|1023&n),a.push(n),i+=r}return(function(e){const t=e.length;if(t<=f)return String.fromCharCode.apply(String,e);let o="",a=0;for(;aa.length?(_.isBuffer(t)||(t=_.from(t)),t.copy(a,i)):Uint8Array.prototype.set.call(a,t,i);else{if(!_.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(a,i)}i+=t.length}return a},_.byteLength=A,_.prototype._isBuffer=!0,_.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;to&&(e+=" ... "),""},n&&(_.prototype[n]=_.prototype.inspect),_.prototype.compare=function(e,t,o,a,i){if(X(e,Uint8Array)&&(e=_.from(e,e.offset,e.byteLength)),!_.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===o&&(o=e?e.length:0),void 0===a&&(a=0),void 0===i&&(i=this.length),t<0||o>e.length||a<0||i>this.length)throw new RangeError("out of range index");if(a>=i&&t>=o)return 0;if(a>=i)return-1;if(t>=o)return 1;if(this===e)return 0;let n=(i>>>=0)-(a>>>=0),r=(o>>>=0)-(t>>>=0);const E=Math.min(n,r),T=this.slice(a,i),s=e.slice(t,o);for(let e=0;e>>=0,isFinite(o)?(o>>>=0,void 0===a&&(a="utf8")):(a=o,o=void 0)}const i=this.length-t;if((void 0===o||o>i)&&(o=i),e.length>0&&(o<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");a||(a="utf8");let n=!1;for(;;)switch(a){case"hex":return N(this,e,t,o);case"utf8":case"utf-8":return m(this,e,t,o);case"ascii":case"latin1":case"binary":return L(this,e,t,o);case"base64":return p(this,e,t,o);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,e,t,o);default:if(n)throw new TypeError("Unknown encoding: "+a);a=(""+a).toLowerCase(),n=!0}},_.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const f=4096;function g(e,t,o){let a="";o=Math.min(e.length,o);for(let i=t;ia)&&(o=a);let i="";for(let a=t;ao)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,o,a,i,n){if(!_.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function W(e,t,o,a,i){H(t,a,i,e,o,7);let n=Number(t&BigInt(4294967295));e[o++]=n,n>>=8,e[o++]=n,n>>=8,e[o++]=n,n>>=8,e[o++]=n;let r=Number(t>>BigInt(32)&BigInt(4294967295));return e[o++]=r,r>>=8,e[o++]=r,r>>=8,e[o++]=r,r>>=8,e[o++]=r,o}function b(e,t,o,a,i){H(t,a,i,e,o,7);let n=Number(t&BigInt(4294967295));e[o+7]=n,n>>=8,e[o+6]=n,n>>=8,e[o+5]=n,n>>=8,e[o+4]=n;let r=Number(t>>BigInt(32)&BigInt(4294967295));return e[o+3]=r,r>>=8,e[o+2]=r,r>>=8,e[o+1]=r,r>>=8,e[o]=r,o+8}function U(e,t,o,a,i,n){if(o+a>e.length)throw new RangeError("Index out of range");if(o<0)throw new RangeError("Index out of range")}function G(e,t,o,a,n){return t=+t,o>>>=0,n||U(e,0,o,4),i.write(e,t,o,a,23,4),o+4}function k(e,t,o,a,n){return t=+t,o>>>=0,n||U(e,0,o,8),i.write(e,t,o,a,52,8),o+8}_.prototype.slice=function(e,t){const o=this.length;(e=~~e)<0?(e+=o)<0&&(e=0):e>o&&(e=o),(t=void 0===t?o:~~t)<0?(t+=o)<0&&(t=0):t>o&&(t=o),t>>=0,t>>>=0,o||y(e,t,this.length);let a=this[e],i=1,n=0;for(;++n>>=0,t>>>=0,o||y(e,t,this.length);let a=this[e+--t],i=1;for(;t>0&&(i*=256);)a+=this[e+--t]*i;return a},_.prototype.readUint8=_.prototype.readUInt8=function(e,t){return e>>>=0,t||y(e,1,this.length),this[e]},_.prototype.readUint16LE=_.prototype.readUInt16LE=function(e,t){return e>>>=0,t||y(e,2,this.length),this[e]|this[e+1]<<8},_.prototype.readUint16BE=_.prototype.readUInt16BE=function(e,t){return e>>>=0,t||y(e,2,this.length),this[e]<<8|this[e+1]},_.prototype.readUint32LE=_.prototype.readUInt32LE=function(e,t){return e>>>=0,t||y(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},_.prototype.readUint32BE=_.prototype.readUInt32BE=function(e,t){return e>>>=0,t||y(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},_.prototype.readBigUInt64LE=J((function(e){Y(e>>>=0,"offset");const t=this[e],o=this[e+7];void 0!==t&&void 0!==o||z(e,this.length-8);const a=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+o*2**24;return BigInt(a)+(BigInt(i)<>>=0,"offset");const t=this[e],o=this[e+7];void 0!==t&&void 0!==o||z(e,this.length-8);const a=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+o;return(BigInt(a)<>>=0,t>>>=0,o||y(e,t,this.length);let a=this[e],i=1,n=0;for(;++n=i&&(a-=Math.pow(2,8*t)),a},_.prototype.readIntBE=function(e,t,o){e>>>=0,t>>>=0,o||y(e,t,this.length);let a=t,i=1,n=this[e+--a];for(;a>0&&(i*=256);)n+=this[e+--a]*i;return i*=128,n>=i&&(n-=Math.pow(2,8*t)),n},_.prototype.readInt8=function(e,t){return e>>>=0,t||y(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},_.prototype.readInt16LE=function(e,t){e>>>=0,t||y(e,2,this.length);const o=this[e]|this[e+1]<<8;return 32768&o?4294901760|o:o},_.prototype.readInt16BE=function(e,t){e>>>=0,t||y(e,2,this.length);const o=this[e+1]|this[e]<<8;return 32768&o?4294901760|o:o},_.prototype.readInt32LE=function(e,t){return e>>>=0,t||y(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},_.prototype.readInt32BE=function(e,t){return e>>>=0,t||y(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},_.prototype.readBigInt64LE=J((function(e){Y(e>>>=0,"offset");const t=this[e],o=this[e+7];void 0!==t&&void 0!==o||z(e,this.length-8);const a=this[e+4]+256*this[e+5]+65536*this[e+6]+(o<<24);return(BigInt(a)<>>=0,"offset");const t=this[e],o=this[e+7];void 0!==t&&void 0!==o||z(e,this.length-8);const a=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(a)<>>=0,t||y(e,4,this.length),i.read(this,e,!0,23,4)},_.prototype.readFloatBE=function(e,t){return e>>>=0,t||y(e,4,this.length),i.read(this,e,!1,23,4)},_.prototype.readDoubleLE=function(e,t){return e>>>=0,t||y(e,8,this.length),i.read(this,e,!0,52,8)},_.prototype.readDoubleBE=function(e,t){return e>>>=0,t||y(e,8,this.length),i.read(this,e,!1,52,8)},_.prototype.writeUintLE=_.prototype.writeUIntLE=function(e,t,o,a){if(e=+e,t>>>=0,o>>>=0,!a){M(this,e,t,o,Math.pow(2,8*o)-1,0)}let i=1,n=0;for(this[t]=255&e;++n>>=0,o>>>=0,!a){M(this,e,t,o,Math.pow(2,8*o)-1,0)}let i=o-1,n=1;for(this[t+i]=255&e;--i>=0&&(n*=256);)this[t+i]=e/n&255;return t+o},_.prototype.writeUint8=_.prototype.writeUInt8=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,1,255,0),this[t]=255&e,t+1},_.prototype.writeUint16LE=_.prototype.writeUInt16LE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},_.prototype.writeUint16BE=_.prototype.writeUInt16BE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},_.prototype.writeUint32LE=_.prototype.writeUInt32LE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},_.prototype.writeUint32BE=_.prototype.writeUInt32BE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},_.prototype.writeBigUInt64LE=J((function(e,t=0){return W(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),_.prototype.writeBigUInt64BE=J((function(e,t=0){return b(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),_.prototype.writeIntLE=function(e,t,o,a){if(e=+e,t>>>=0,!a){const a=Math.pow(2,8*o-1);M(this,e,t,o,a-1,-a)}let i=0,n=1,r=0;for(this[t]=255&e;++i>0)-r&255;return t+o},_.prototype.writeIntBE=function(e,t,o,a){if(e=+e,t>>>=0,!a){const a=Math.pow(2,8*o-1);M(this,e,t,o,a-1,-a)}let i=o-1,n=1,r=0;for(this[t+i]=255&e;--i>=0&&(n*=256);)e<0&&0===r&&0!==this[t+i+1]&&(r=1),this[t+i]=(e/n>>0)-r&255;return t+o},_.prototype.writeInt8=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},_.prototype.writeInt16LE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},_.prototype.writeInt16BE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},_.prototype.writeInt32LE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},_.prototype.writeInt32BE=function(e,t,o){return e=+e,t>>>=0,o||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},_.prototype.writeBigInt64LE=J((function(e,t=0){return W(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),_.prototype.writeBigInt64BE=J((function(e,t=0){return b(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),_.prototype.writeFloatLE=function(e,t,o){return G(this,e,t,!0,o)},_.prototype.writeFloatBE=function(e,t,o){return G(this,e,t,!1,o)},_.prototype.writeDoubleLE=function(e,t,o){return k(this,e,t,!0,o)},_.prototype.writeDoubleBE=function(e,t,o){return k(this,e,t,!1,o)},_.prototype.copy=function(e,t,o,a){if(!_.isBuffer(e))throw new TypeError("argument should be a Buffer");if(o||(o=0),a||0===a||(a=this.length),t>=e.length&&(t=e.length),t||(t=0),a>0&&a=this.length)throw new RangeError("Index out of range");if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),e.length-t>>=0,o=void 0===o?this.length:o>>>0,e||(e=0),"number"==typeof e)for(i=t;i=a+4;o-=3)t=`_${e.slice(o-3,o)}${t}`;return`${e.slice(0,o)}${t}`}function H(e,t,o,a,i,n){if(e>o||e3?0===t||t===BigInt(0)?`>= 0${a} and < 2${a} ** ${8*(n+1)}${a}`:`>= -(2${a} ** ${8*(n+1)-1}${a}) and < 2 ** ${8*(n+1)-1}${a}`:`>= ${t}${a} and <= ${o}${a}`,new F.ERR_OUT_OF_RANGE("value",i,e)}!(function(e,t,o){Y(t,"offset"),void 0!==e[t]&&void 0!==e[t+o]||z(t,e.length-(o+1))})(a,i,n)}function Y(e,t){if("number"!=typeof e)throw new F.ERR_INVALID_ARG_TYPE(t,"number",e)}function z(e,t,o){if(Math.floor(e)!==e)throw Y(e,o),new F.ERR_OUT_OF_RANGE(o||"offset","an integer",e);if(t<0)throw new F.ERR_BUFFER_OUT_OF_BOUNDS;throw new F.ERR_OUT_OF_RANGE(o||"offset",`>= ${o?1:0} and <= ${t}`,e)}V("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),V("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),V("ERR_OUT_OF_RANGE",(function(e,t,o){let a=`The value of "${e}" is out of range.`,i=o;return Number.isInteger(o)&&Math.abs(o)>2**32?i=w(String(o)):"bigint"==typeof o&&(i=String(o),(o>BigInt(2)**BigInt(32)||o<-(BigInt(2)**BigInt(32)))&&(i=w(i)),i+="n"),a+=` It must be ${t}. Received ${i}`,a}),RangeError);const K=/[^+/0-9A-Za-z-_]/g;function j(e,t){let o;t=t||1/0;const a=e.length;let i=null;const n=[];for(let r=0;r55295&&o<57344){if(!i){if(o>56319){(t-=3)>-1&&n.push(239,191,189);continue}if(r+1===a){(t-=3)>-1&&n.push(239,191,189);continue}i=o;continue}if(o<56320){(t-=3)>-1&&n.push(239,191,189),i=o;continue}o=65536+(i-55296<<10|o-56320)}else i&&(t-=3)>-1&&n.push(239,191,189);if(i=null,o<128){if((t-=1)<0)break;n.push(o)}else if(o<2048){if((t-=2)<0)break;n.push(o>>6|192,63&o|128)}else if(o<65536){if((t-=3)<0)break;n.push(o>>12|224,o>>6&63|128,63&o|128)}else{if(!(o<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;n.push(o>>18|240,o>>12&63|128,o>>6&63|128,63&o|128)}}return n}function x(e){return a.toByteArray((function(e){if((e=(e=e.split("=")[0]).trim().replace(K,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e})(e))}function Q(e,t,o,a){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+o]=e[i];return i}function X(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function $(e){return e!=e}const q=(function(){const e="0123456789abcdef",t=new Array(256);for(let o=0;o<16;++o){const a=16*o;for(let i=0;i<16;++i)t[a+i]=e[o]+e[i]}return t})();function J(e){return"undefined"==typeof BigInt?Z:e}function Z(){throw new Error("BigInt not supported")}},94184:(e,t)=>{var o;!(function(){"use strict";var a={}.hasOwnProperty;function i(){for(var e=[],t=0;t{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},19818:(e,t,o)=>{var a=o(8874),i=o(86851),n=Object.hasOwnProperty,r=Object.create(null);for(var E in a)n.call(a,E)&&(r[a[E]]=E);var _=e.exports={to:{},get:{}};function T(e,t,o){return Math.min(Math.max(t,e),o)}function s(e){var t=Math.round(e).toString(16).toUpperCase();return t.length<2?"0"+t:t}_.get=function(e){var t,o;switch(e.substring(0,3).toLowerCase()){case"hsl":t=_.get.hsl(e),o="hsl";break;case"hwb":t=_.get.hwb(e),o="hwb";break;default:t=_.get.rgb(e),o="rgb"}return t?{model:o,value:t}:null},_.get.rgb=function(e){if(!e)return null;var t,o,i,r=[0,0,0,1];if(t=e.match(/^#([a-f0-9]{6})([a-f0-9]{2})?$/i)){for(i=t[2],t=t[1],o=0;o<3;o++){var E=2*o;r[o]=parseInt(t.slice(E,E+2),16)}i&&(r[3]=parseInt(i,16)/255)}else if(t=e.match(/^#([a-f0-9]{3,4})$/i)){for(i=(t=t[1])[3],o=0;o<3;o++)r[o]=parseInt(t[o]+t[o],16);i&&(r[3]=parseInt(i+i,16)/255)}else if(t=e.match(/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/)){for(o=0;o<3;o++)r[o]=parseInt(t[o+1],0);t[4]&&(t[5]?r[3]=.01*parseFloat(t[4]):r[3]=parseFloat(t[4]))}else{if(!(t=e.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/)))return(t=e.match(/^(\w+)$/))?"transparent"===t[1]?[0,0,0,0]:n.call(a,t[1])?((r=a[t[1]])[3]=1,r):null:null;for(o=0;o<3;o++)r[o]=Math.round(2.55*parseFloat(t[o+1]));t[4]&&(t[5]?r[3]=.01*parseFloat(t[4]):r[3]=parseFloat(t[4]))}for(o=0;o<3;o++)r[o]=T(r[o],0,255);return r[3]=T(r[3],0,1),r},_.get.hsl=function(e){if(!e)return null;var t=e.match(/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(t){var o=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,T(parseFloat(t[2]),0,100),T(parseFloat(t[3]),0,100),T(isNaN(o)?1:o,0,1)]}return null},_.get.hwb=function(e){if(!e)return null;var t=e.match(/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(t){var o=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,T(parseFloat(t[2]),0,100),T(parseFloat(t[3]),0,100),T(isNaN(o)?1:o,0,1)]}return null},_.to.hex=function(){var e=i(arguments);return"#"+s(e[0])+s(e[1])+s(e[2])+(e[3]<1?s(Math.round(255*e[3])):"")},_.to.rgb=function(){var e=i(arguments);return e.length<4||1===e[3]?"rgb("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+")":"rgba("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+", "+e[3]+")"},_.to.rgb.percent=function(){var e=i(arguments),t=Math.round(e[0]/255*100),o=Math.round(e[1]/255*100),a=Math.round(e[2]/255*100);return e.length<4||1===e[3]?"rgb("+t+"%, "+o+"%, "+a+"%)":"rgba("+t+"%, "+o+"%, "+a+"%, "+e[3]+")"},_.to.hsl=function(){var e=i(arguments);return e.length<4||1===e[3]?"hsl("+e[0]+", "+e[1]+"%, "+e[2]+"%)":"hsla("+e[0]+", "+e[1]+"%, "+e[2]+"%, "+e[3]+")"},_.to.hwb=function(){var e=i(arguments),t="";return e.length>=4&&1!==e[3]&&(t=", "+e[3]),"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+t+")"},_.to.keyword=function(e){return r[e.slice(0,3)]}},6767:(e,t,o)=>{const a=o(19818),i=o(80978),n=["keyword","gray","hex"],r={};for(const e of Object.keys(i))r[[...i[e].labels].sort().join("")]=e;const E={};function _(e,t){if(!(this instanceof _))return new _(e,t);if(t&&t in n&&(t=null),t&&!(t in i))throw new Error("Unknown model: "+t);let o,T;if(null==e)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(e instanceof _)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if("string"==typeof e){const t=a.get(e);if(null===t)throw new Error("Unable to parse color from string: "+e);this.model=t.model,T=i[this.model].channels,this.color=t.value.slice(0,T),this.valpha="number"==typeof t.value[T]?t.value[T]:1}else if(e.length>0){this.model=t||"rgb",T=i[this.model].channels;const o=Array.prototype.slice.call(e,0,T);this.color=l(o,T),this.valpha="number"==typeof e[T]?e[T]:1}else if("number"==typeof e)this.model="rgb",this.color=[e>>16&255,e>>8&255,255&e],this.valpha=1;else{this.valpha=1;const t=Object.keys(e);"alpha"in e&&(t.splice(t.indexOf("alpha"),1),this.valpha="number"==typeof e.alpha?e.alpha:0);const a=t.sort().join("");if(!(a in r))throw new Error("Unable to parse color from object: "+JSON.stringify(e));this.model=r[a];const{labels:n}=i[this.model],E=[];for(o=0;o(e%360+360)%360)),saturationl:s("hsl",1,S(100)),lightness:s("hsl",2,S(100)),saturationv:s("hsv",1,S(100)),value:s("hsv",2,S(100)),chroma:s("hcg",1,S(100)),gray:s("hcg",2,S(100)),white:s("hwb",1,S(100)),wblack:s("hwb",2,S(100)),cyan:s("cmyk",0,S(100)),magenta:s("cmyk",1,S(100)),yellow:s("cmyk",2,S(100)),black:s("cmyk",3,S(100)),x:s("xyz",0,S(95.047)),y:s("xyz",1,S(100)),z:s("xyz",2,S(108.833)),l:s("lab",0,S(100)),a:s("lab",1),b:s("lab",2),keyword(e){return void 0!==e?new _(e):i[this.model].keyword(this.color)},hex(e){return void 0!==e?new _(e):a.to.hex(this.rgb().round().color)},hexa(e){if(void 0!==e)return new _(e);const t=this.rgb().round().color;let o=Math.round(255*this.valpha).toString(16).toUpperCase();return 1===o.length&&(o="0"+o),a.to.hex(t)+o},rgbNumber(){const e=this.rgb().color;return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},luminosity(){const e=this.rgb().color,t=[];for(const[o,a]of e.entries()){const e=a/255;t[o]=e<=.04045?e/12.92:((e+.055)/1.055)**2.4}return.2126*t[0]+.7152*t[1]+.0722*t[2]},contrast(e){const t=this.luminosity(),o=e.luminosity();return t>o?(t+.05)/(o+.05):(o+.05)/(t+.05)},level(e){const t=this.contrast(e);return t>=7?"AAA":t>=4.5?"AA":""},isDark(){const e=this.rgb().color;return(2126*e[0]+7152*e[1]+722*e[2])/1e4<128},isLight(){return!this.isDark()},negate(){const e=this.rgb();for(let t=0;t<3;t++)e.color[t]=255-e.color[t];return e},lighten(e){const t=this.hsl();return t.color[2]+=t.color[2]*e,t},darken(e){const t=this.hsl();return t.color[2]-=t.color[2]*e,t},saturate(e){const t=this.hsl();return t.color[1]+=t.color[1]*e,t},desaturate(e){const t=this.hsl();return t.color[1]-=t.color[1]*e,t},whiten(e){const t=this.hwb();return t.color[1]+=t.color[1]*e,t},blacken(e){const t=this.hwb();return t.color[2]+=t.color[2]*e,t},grayscale(){const e=this.rgb().color,t=.3*e[0]+.59*e[1]+.11*e[2];return _.rgb(t,t,t)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){const t=this.hsl();let o=t.color[0];return o=(o+e)%360,o=o<0?360+o:o,t.color[0]=o,t},mix(e,t){if(!e||!e.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);const o=e.rgb(),a=this.rgb(),i=void 0===t?.5:t,n=2*i-1,r=o.alpha()-a.alpha(),E=((n*r==-1?n:(n+r)/(1+n*r))+1)/2,T=1-E;return _.rgb(E*o.red()+T*a.red(),E*o.green()+T*a.green(),E*o.blue()+T*a.blue(),o.alpha()*i+a.alpha()*(1-i))}};for(const e of Object.keys(i)){if(n.includes(e))continue;const{channels:t}=i[e];_.prototype[e]=function(...t){return this.model===e?new _(this):t.length>0?new _(t,e):new _([...(o=i[this.model][e].raw(this.color),Array.isArray(o)?o:[o]),this.valpha],e);var o},_[e]=function(...o){let a=o[0];return"number"==typeof a&&(a=l(o,t)),new _(a,e)}}function T(e){return function(t){return(function(e,t){return Number(e.toFixed(t))})(t,e)}}function s(e,t,o){e=Array.isArray(e)?e:[e];for(const a of e)(E[a]||(E[a]=[]))[t]=o;return e=e[0],function(a){let i;return void 0!==a?(o&&(a=o(a)),i=this[e](),i.color[t]=a,i):(i=this[e]().color[t],o&&(i=o(i)),i)}}function S(e){return function(t){return Math.max(0,Math.min(e,t))}}function l(e,t){for(let o=0;o{const a=o(58900),i={};for(const e of Object.keys(a))i[a[e]]=e;const n={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};e.exports=n;for(const e of Object.keys(n)){if(!("channels"in n[e]))throw new Error("missing channels property: "+e);if(!("labels"in n[e]))throw new Error("missing channel labels property: "+e);if(n[e].labels.length!==n[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:t,labels:o}=n[e];delete n[e].channels,delete n[e].labels,Object.defineProperty(n[e],"channels",{value:t}),Object.defineProperty(n[e],"labels",{value:o})}n.rgb.hsl=function(e){const t=e[0]/255,o=e[1]/255,a=e[2]/255,i=Math.min(t,o,a),n=Math.max(t,o,a),r=n-i;let E,_;n===i?E=0:t===n?E=(o-a)/r:o===n?E=2+(a-t)/r:a===n&&(E=4+(t-o)/r),E=Math.min(60*E,360),E<0&&(E+=360);const T=(i+n)/2;return _=n===i?0:T<=.5?r/(n+i):r/(2-n-i),[E,100*_,100*T]},n.rgb.hsv=function(e){let t,o,a,i,n;const r=e[0]/255,E=e[1]/255,_=e[2]/255,T=Math.max(r,E,_),s=T-Math.min(r,E,_),S=function(e){return(T-e)/6/s+.5};return 0===s?(i=0,n=0):(n=s/T,t=S(r),o=S(E),a=S(_),r===T?i=a-o:E===T?i=1/3+t-a:_===T&&(i=2/3+o-t),i<0?i+=1:i>1&&(i-=1)),[360*i,100*n,100*T]},n.rgb.hwb=function(e){const t=e[0],o=e[1];let a=e[2];const i=n.rgb.hsl(e)[0],r=1/255*Math.min(t,Math.min(o,a));return a=1-1/255*Math.max(t,Math.max(o,a)),[i,100*r,100*a]},n.rgb.cmyk=function(e){const t=e[0]/255,o=e[1]/255,a=e[2]/255,i=Math.min(1-t,1-o,1-a);return[100*((1-t-i)/(1-i)||0),100*((1-o-i)/(1-i)||0),100*((1-a-i)/(1-i)||0),100*i]},n.rgb.keyword=function(e){const t=i[e];if(t)return t;let o,n=1/0;for(const t of Object.keys(a)){const i=a[t],_=(E=i,((r=e)[0]-E[0])**2+(r[1]-E[1])**2+(r[2]-E[2])**2);_.04045?((t+.055)/1.055)**2.4:t/12.92,o=o>.04045?((o+.055)/1.055)**2.4:o/12.92,a=a>.04045?((a+.055)/1.055)**2.4:a/12.92;return[100*(.4124*t+.3576*o+.1805*a),100*(.2126*t+.7152*o+.0722*a),100*(.0193*t+.1192*o+.9505*a)]},n.rgb.lab=function(e){const t=n.rgb.xyz(e);let o=t[0],a=t[1],i=t[2];o/=95.047,a/=100,i/=108.883,o=o>.008856?o**(1/3):7.787*o+16/116,a=a>.008856?a**(1/3):7.787*a+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*a-16,500*(o-a),200*(a-i)]},n.hsl.rgb=function(e){const t=e[0]/360,o=e[1]/100,a=e[2]/100;let i,n,r;if(0===o)return r=255*a,[r,r,r];i=a<.5?a*(1+o):a+o-a*o;const E=2*a-i,_=[0,0,0];for(let e=0;e<3;e++)n=t+1/3*-(e-1),n<0&&n++,n>1&&n--,r=6*n<1?E+6*(i-E)*n:2*n<1?i:3*n<2?E+(i-E)*(2/3-n)*6:E,_[e]=255*r;return _},n.hsl.hsv=function(e){const t=e[0];let o=e[1]/100,a=e[2]/100,i=o;const n=Math.max(a,.01);a*=2,o*=a<=1?a:2-a,i*=n<=1?n:2-n;return[t,100*(0===a?2*i/(n+i):2*o/(a+o)),100*((a+o)/2)]},n.hsv.rgb=function(e){const t=e[0]/60,o=e[1]/100;let a=e[2]/100;const i=Math.floor(t)%6,n=t-Math.floor(t),r=255*a*(1-o),E=255*a*(1-o*n),_=255*a*(1-o*(1-n));switch(a*=255,i){case 0:return[a,_,r];case 1:return[E,a,r];case 2:return[r,a,_];case 3:return[r,E,a];case 4:return[_,r,a];case 5:return[a,r,E]}},n.hsv.hsl=function(e){const t=e[0],o=e[1]/100,a=e[2]/100,i=Math.max(a,.01);let n,r;r=(2-o)*a;const E=(2-o)*i;return n=o*i,n/=E<=1?E:2-E,n=n||0,r/=2,[t,100*n,100*r]},n.hwb.rgb=function(e){const t=e[0]/360;let o=e[1]/100,a=e[2]/100;const i=o+a;let n;i>1&&(o/=i,a/=i);const r=Math.floor(6*t),E=1-a;n=6*t-r,0!=(1&r)&&(n=1-n);const _=o+n*(E-o);let T,s,S;switch(r){default:T=E,s=_,S=o;break;case 1:T=_,s=E,S=o;break;case 2:T=o,s=E,S=_;break;case 3:T=o,s=_,S=E;break;case 4:T=_,s=o,S=E;break;case 5:T=E,s=o,S=_}return[255*T,255*s,255*S]},n.cmyk.rgb=function(e){const t=e[0]/100,o=e[1]/100,a=e[2]/100,i=e[3]/100;return[255*(1-Math.min(1,t*(1-i)+i)),255*(1-Math.min(1,o*(1-i)+i)),255*(1-Math.min(1,a*(1-i)+i))]},n.xyz.rgb=function(e){const t=e[0]/100,o=e[1]/100,a=e[2]/100;let i,n,r;return i=3.2406*t+-1.5372*o+-.4986*a,n=-.9689*t+1.8758*o+.0415*a,r=.0557*t+-.204*o+1.057*a,i=i>.0031308?1.055*i**(1/2.4)-.055:12.92*i,n=n>.0031308?1.055*n**(1/2.4)-.055:12.92*n,r=r>.0031308?1.055*r**(1/2.4)-.055:12.92*r,i=Math.min(Math.max(0,i),1),n=Math.min(Math.max(0,n),1),r=Math.min(Math.max(0,r),1),[255*i,255*n,255*r]},n.xyz.lab=function(e){let t=e[0],o=e[1],a=e[2];t/=95.047,o/=100,a/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,o=o>.008856?o**(1/3):7.787*o+16/116,a=a>.008856?a**(1/3):7.787*a+16/116;return[116*o-16,500*(t-o),200*(o-a)]},n.lab.xyz=function(e){let t,o,a;o=(e[0]+16)/116,t=e[1]/500+o,a=o-e[2]/200;const i=o**3,n=t**3,r=a**3;return o=i>.008856?i:(o-16/116)/7.787,t=n>.008856?n:(t-16/116)/7.787,a=r>.008856?r:(a-16/116)/7.787,t*=95.047,o*=100,a*=108.883,[t,o,a]},n.lab.lch=function(e){const t=e[0],o=e[1],a=e[2];let i;i=360*Math.atan2(a,o)/2/Math.PI,i<0&&(i+=360);return[t,Math.sqrt(o*o+a*a),i]},n.lch.lab=function(e){const t=e[0],o=e[1],a=e[2]/360*2*Math.PI;return[t,o*Math.cos(a),o*Math.sin(a)]},n.rgb.ansi16=function(e,t=null){const[o,a,i]=e;let r=null===t?n.rgb.hsv(e)[2]:t;if(r=Math.round(r/50),0===r)return 30;let E=30+(Math.round(i/255)<<2|Math.round(a/255)<<1|Math.round(o/255));return 2===r&&(E+=60),E},n.hsv.ansi16=function(e){return n.rgb.ansi16(n.hsv.rgb(e),e[2])},n.rgb.ansi256=function(e){const t=e[0],o=e[1],a=e[2];if(t===o&&o===a)return t<8?16:t>248?231:Math.round((t-8)/247*24)+232;return 16+36*Math.round(t/255*5)+6*Math.round(o/255*5)+Math.round(a/255*5)},n.ansi16.rgb=function(e){let t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const o=.5*(1+~~(e>50));return[(1&t)*o*255,(t>>1&1)*o*255,(t>>2&1)*o*255]},n.ansi256.rgb=function(e){if(e>=232){const t=10*(e-232)+8;return[t,t,t]}let t;e-=16;return[Math.floor(e/36)/5*255,Math.floor((t=e%36)/6)/5*255,t%6/5*255]},n.rgb.hex=function(e){const t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},n.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let o=t[0];3===t[0].length&&(o=o.split("").map((e=>e+e)).join(""));const a=parseInt(o,16);return[a>>16&255,a>>8&255,255&a]},n.rgb.hcg=function(e){const t=e[0]/255,o=e[1]/255,a=e[2]/255,i=Math.max(Math.max(t,o),a),n=Math.min(Math.min(t,o),a),r=i-n;let E,_;return E=r<1?n/(1-r):0,_=r<=0?0:i===t?(o-a)/r%6:i===o?2+(a-t)/r:4+(t-o)/r,_/=6,_%=1,[360*_,100*r,100*E]},n.hsl.hcg=function(e){const t=e[1]/100,o=e[2]/100,a=o<.5?2*t*o:2*t*(1-o);let i=0;return a<1&&(i=(o-.5*a)/(1-a)),[e[0],100*a,100*i]},n.hsv.hcg=function(e){const t=e[1]/100,o=e[2]/100,a=t*o;let i=0;return a<1&&(i=(o-a)/(1-a)),[e[0],100*a,100*i]},n.hcg.rgb=function(e){const t=e[0]/360,o=e[1]/100,a=e[2]/100;if(0===o)return[255*a,255*a,255*a];const i=[0,0,0],n=t%1*6,r=n%1,E=1-r;let _=0;switch(Math.floor(n)){case 0:i[0]=1,i[1]=r,i[2]=0;break;case 1:i[0]=E,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=r;break;case 3:i[0]=0,i[1]=E,i[2]=1;break;case 4:i[0]=r,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=E}return _=(1-o)*a,[255*(o*i[0]+_),255*(o*i[1]+_),255*(o*i[2]+_)]},n.hcg.hsv=function(e){const t=e[1]/100,o=t+e[2]/100*(1-t);let a=0;return o>0&&(a=t/o),[e[0],100*a,100*o]},n.hcg.hsl=function(e){const t=e[1]/100,o=e[2]/100*(1-t)+.5*t;let a=0;return o>0&&o<.5?a=t/(2*o):o>=.5&&o<1&&(a=t/(2*(1-o))),[e[0],100*a,100*o]},n.hcg.hwb=function(e){const t=e[1]/100,o=t+e[2]/100*(1-t);return[e[0],100*(o-t),100*(1-o)]},n.hwb.hcg=function(e){const t=e[1]/100,o=1-e[2]/100,a=o-t;let i=0;return a<1&&(i=(o-a)/(1-a)),[e[0],100*a,100*i]},n.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},n.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},n.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},n.gray.hsl=function(e){return[0,0,e[0]]},n.gray.hsv=n.gray.hsl,n.gray.hwb=function(e){return[0,100,e[0]]},n.gray.cmyk=function(e){return[0,0,0,e[0]]},n.gray.lab=function(e){return[e[0],0,0]},n.gray.hex=function(e){const t=255&Math.round(e[0]/100*255),o=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(o.length)+o},n.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},80978:(e,t,o)=>{const a=o(12956),i=o(87774),n={};Object.keys(a).forEach((e=>{n[e]={},Object.defineProperty(n[e],"channels",{value:a[e].channels}),Object.defineProperty(n[e],"labels",{value:a[e].labels});const t=i(e);Object.keys(t).forEach((o=>{const a=t[o];n[e][o]=(function(e){const t=function(...t){const o=t[0];if(null==o)return o;o.length>1&&(t=o);const a=e(t);if("object"==typeof a)for(let e=a.length,t=0;t1&&(t=o),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t})(a)}))})),e.exports=n},87774:(e,t,o)=>{const a=o(12956);function i(e){const t=(function(){const e={},t=Object.keys(a);for(let o=t.length,a=0;a{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},62682:e=>{e.exports=function e(t){return Object.freeze(t),Object.getOwnPropertyNames(t).forEach((function(o){!t.hasOwnProperty(o)||null===t[o]||"object"!=typeof t[o]&&"function"!=typeof t[o]||Object.isFrozen(t[o])||e(t[o])})),t}},26729:e=>{"use strict";var t=Object.prototype.hasOwnProperty,o="~";function a(){}function i(e,t,o){this.fn=e,this.context=t,this.once=o||!1}function n(e,t,a,n,r){if("function"!=typeof a)throw new TypeError("The listener must be a function");var E=new i(a,n||e,r),_=o?o+t:t;return e._events[_]?e._events[_].fn?e._events[_]=[e._events[_],E]:e._events[_].push(E):(e._events[_]=E,e._eventsCount++),e}function r(e,t){0==--e._eventsCount?e._events=new a:delete e._events[t]}function E(){this._events=new a,this._eventsCount=0}Object.create&&(a.prototype=Object.create(null),(new a).__proto__||(o=!1)),E.prototype.eventNames=function(){var e,a,i=[];if(0===this._eventsCount)return i;for(a in e=this._events)t.call(e,a)&&i.push(o?a.slice(1):a);return Object.getOwnPropertySymbols?i.concat(Object.getOwnPropertySymbols(e)):i},E.prototype.listeners=function(e){var t=o?o+e:e,a=this._events[t];if(!a)return[];if(a.fn)return[a.fn];for(var i=0,n=a.length,r=new Array(n);i{"use strict";t.Z=function(e){var t={};for(var o in e)e.hasOwnProperty(o)&&E(o)&&(t[o]=e[o]);return t};var a,i=o(52047),n=(a=i)&&a.__esModule?a:{default:a};var r={onCopy:!0,onCut:!0,onPaste:!0,onLoad:!0,onError:!0,onWheel:!0,onScroll:!0,onCompositionEnd:!0,onCompositionStart:!0,onCompositionUpdate:!0,onKeyDown:!0,onKeyPress:!0,onKeyUp:!0,onFocus:!0,onBlur:!0,onChange:!0,onInput:!0,onSubmit:!0,onClick:!0,onContextMenu:!0,onDoubleClick:!0,onDrag:!0,onDragEnd:!0,onDragEnter:!0,onDragExit:!0,onDragLeave:!0,onDragOver:!0,onDragStart:!0,onDrop:!0,onMouseDown:!0,onMouseEnter:!0,onMouseLeave:!0,onMouseMove:!0,onMouseOut:!0,onMouseOver:!0,onMouseUp:!0,onSelect:!0,onTouchCancel:!0,onTouchEnd:!0,onTouchMove:!0,onTouchStart:!0,onAnimationStart:!0,onAnimationEnd:!0,onAnimationIteration:!0,onTransitionEnd:!0};function E(e){return r[e]||n.default[e]||/^(data|aria)-/.test(e)}},542:e=>{var t=e.exports=function(e,o){if(o||(o=16),void 0===e&&(e=128),e<=0)return"0";for(var a=Math.log(Math.pow(2,e))/Math.log(o),i=2;a===1/0;i*=2)a=Math.log(Math.pow(2,e/i))/Math.log(o)*i;var n=a-Math.floor(a),r="";for(i=0;i=Math.pow(2,e)?t(e,o):r};t.rack=function(e,o,a){var i=function(i){var r=0;do{if(r++>10){if(!a)throw new Error("too many ID collisions, use more bits");e+=a}var E=t(e,o)}while(Object.hasOwnProperty.call(n,E));return n[E]=i,E},n=i.hats={};return i.get=function(e){return i.hats[e]},i.set=function(e,t){return i.hats[e]=t,i},i.bits=e||128,i.base=o||16,i}},67631:function(e){var t;"undefined"!=typeof window&&(t=function(){return(function(e){var t={};function o(a){if(t[a])return t[a].exports;var i=t[a]={i:a,l:!1,exports:{}};return e[a].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(a,i,function(t){return e[t]}.bind(null,i));return a},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="/dist/",o(o.s="./src/hls.ts")})({"./node_modules/eventemitter3/index.js":function(e,t,o){"use strict";var a=Object.prototype.hasOwnProperty,i="~";function n(){}function r(e,t,o){this.fn=e,this.context=t,this.once=o||!1}function E(e,t,o,a,n){if("function"!=typeof o)throw new TypeError("The listener must be a function");var E=new r(o,a||e,n),_=i?i+t:t;return e._events[_]?e._events[_].fn?e._events[_]=[e._events[_],E]:e._events[_].push(E):(e._events[_]=E,e._eventsCount++),e}function _(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function T(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(i=!1)),T.prototype.eventNames=function(){var e,t,o=[];if(0===this._eventsCount)return o;for(t in e=this._events)a.call(e,t)&&o.push(i?t.slice(1):t);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},T.prototype.listeners=function(e){var t=i?i+e:e,o=this._events[t];if(!o)return[];if(o.fn)return[o.fn];for(var a=0,n=o.length,r=new Array(n);a0}),!1)}e.exports=function(e,t){t=t||{};var i={main:o.m},n=t.all?{main:Object.keys(i.main)}:(function(e,t){for(var o={main:[t]},a={main:[]},i={main:{}};_(o);)for(var n=Object.keys(o),r=0;r=2*S/I||R<=m)){var L,p=Number.POSITIVE_INFINITY;for(L=e.level-1;L>A&&!((p=S*u[L].maxBitrate/(6.4*O))=R)){var D=this.bwEstimator.getEstimate();T.logger.warn("Fragment "+e.sn+(t?" part "+t.index:"")+" of level "+e.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+L+"\n Current BW estimate: "+(Object(a.isFiniteNumber)(D)?(D/1024).toFixed(3):"Unknown")+" Kb/s\n Estimated load time for current fragment: "+R.toFixed(3)+" s\n Estimated load time for the next fragment: "+p.toFixed(3)+" s\n Time to underbuffer: "+m.toFixed(3)+" s"),o.nextLoadLevel=L,this.bwEstimator.sample(l,s.loaded),this.clearTimer(),e.loader&&(this.fragCurrent=this.partCurrent=null,e.loader.abort()),o.trigger(n.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:e,part:t,stats:s})}}}}}},l.onFragLoaded=function(e,t){var o=t.frag,i=t.part;if(o.type===_.PlaylistLevelType.MAIN&&Object(a.isFiniteNumber)(o.sn)){var r=i?i.stats:o.stats,E=i?i.duration:o.duration;if(this.clearTimer(),this.lastLoadedFragLevel=o.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var T=this.hls.levels[o.level],s=(T.loaded?T.loaded.bytes:0)+r.loaded,S=(T.loaded?T.loaded.duration:0)+E;T.loaded={bytes:s,duration:S},T.realBitrate=Math.round(8*s/S)}if(o.bitrateTest){var l={stats:r,frag:o,part:i,id:o.type};this.onFragBuffered(n.Events.FRAG_BUFFERED,l)}}},l.onFragBuffered=function(e,t){var o=t.frag,a=t.part,i=a?a.stats:o.stats;if(!i.aborted&&o.type===_.PlaylistLevelType.MAIN&&"initSegment"!==o.sn){var n=i.parsing.end-i.loading.start;this.bwEstimator.sample(n,i.loaded),i.bwEstimate=this.bwEstimator.getEstimate(),o.bitrateTest?this.bitrateTestDelay=n/1e3:this.bitrateTestDelay=0}},l.onError=function(e,t){switch(t.details){case E.ErrorDetails.FRAG_LOAD_ERROR:case E.ErrorDetails.FRAG_LOAD_TIMEOUT:this.clearTimer()}},l.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},l.getNextABRAutoLevel=function(){var e=this.fragCurrent,t=this.partCurrent,o=this.hls,a=o.maxAutoLevel,i=o.config,n=o.minAutoLevel,E=o.media,_=t?t.duration:e?e.duration:0,s=E?E.currentTime:0,S=E&&0!==E.playbackRate?Math.abs(E.playbackRate):1,l=this.bwEstimator?this.bwEstimator.getEstimate():i.abrEwmaDefaultEstimate,I=(r.BufferHelper.bufferInfo(E,s,i.maxBufferHole).end-s)/S,u=this.findBestLevel(l,n,a,I,i.abrBandWidthFactor,i.abrBandWidthUpFactor);if(u>=0)return u;T.logger.trace((I?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var A=_?Math.min(_,i.maxStarvationDelay):i.maxStarvationDelay,d=i.abrBandWidthFactor,c=i.abrBandWidthUpFactor;if(!I){var O=this.bitrateTestDelay;O&&(A=(_?Math.min(_,i.maxLoadingDelay):i.maxLoadingDelay)-O,T.logger.trace("bitrate test took "+Math.round(1e3*O)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*A)+" ms"),d=c=1)}return u=this.findBestLevel(l,n,a,I+A,d,c),Math.max(u,0)},l.findBestLevel=function(e,t,o,a,i,n){for(var r,E=this.fragCurrent,_=this.partCurrent,s=this.lastLoadedFragLevel,S=this.hls.levels,l=S[s],I=!(null==l||null===(r=l.details)||void 0===r||!r.live),u=null==l?void 0:l.codecSet,A=_?_.duration:E?E.duration:0,d=o;d>=t;d--){var c=S[d];if(c&&(!u||c.codecSet===u)){var O=c.details,R=(_?null==O?void 0:O.partTarget:null==O?void 0:O.averagetargetduration)||A,N=void 0;N=d<=s?i*e:n*e;var m=S[d].maxBitrate,L=m*R/N;if(T.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+d+"/"+Math.round(N)+"/"+m+"/"+R+"/"+a+"/"+L),N>m&&(!L||I&&!this.bitrateTestDelay||L0&&-1===e?(this.log("Override startPosition with lastCurrentTime @"+t.toFixed(3)),e=t,this.state=i.State.IDLE):(this.loadedmetadata=!1,this.state=i.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()},N.doTick=function(){switch(this.state){case i.State.IDLE:this.doTickIdle();break;case i.State.WAITING_TRACK:var t,o=this.levels,a=this.trackId,n=null==o||null===(t=o[a])||void 0===t?void 0:t.details;if(n){if(this.waitForCdnTuneIn(n))break;this.state=i.State.WAITING_INIT_PTS}break;case i.State.FRAG_LOADING_WAITING_RETRY:var E,_=performance.now(),T=this.retryDate;(!T||_>=T||null!==(E=this.media)&&void 0!==E&&E.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.trackId),this.state=i.State.IDLE);break;case i.State.WAITING_INIT_PTS:var s=this.waitingData;if(s){var S=s.frag,l=s.part,I=s.cache,A=s.complete;if(void 0!==this.initPTS[S.cc]){this.waitingData=null,this.waitingVideoCC=-1,this.state=i.State.FRAG_LOADING;var d={frag:S,part:l,payload:I.flush(),networkDetails:null};this._handleFragmentLoadProgress(d),A&&e.prototype._handleFragmentLoadComplete.call(this,d)}else if(this.videoTrackCC!==this.waitingVideoCC)this.log("Waiting fragment cc ("+S.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var c=this.getLoadPosition(),O=r.BufferHelper.bufferInfo(this.mediaBuffer,c,this.config.maxBufferHole);Object(u.fragmentWithinToleranceTest)(O.end,this.config.maxFragLookUpTolerance,S)<0&&(this.log("Waiting fragment cc ("+S.cc+") @ "+S.start+" cancelled because another fragment at "+O.end+" is needed"),this.clearWaitingFragment())}}else this.state=i.State.IDLE}this.onTickEnd()},N.clearWaitingFragment=function(){var e=this.waitingData;e&&(this.fragmentTracker.removeFragment(e.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=i.State.IDLE)},N.resetLoadingState=function(){this.clearWaitingFragment(),e.prototype.resetLoadingState.call(this)},N.onTickEnd=function(){var e=this.media;if(e&&e.readyState){var t=(this.mediaBuffer?this.mediaBuffer:e).buffered;!this.loadedmetadata&&t.length&&(this.loadedmetadata=!0),this.lastCurrentTime=e.currentTime}},N.doTickIdle=function(){var e,t,o=this.hls,a=this.levels,r=this.media,E=this.trackId,_=o.config;if(a&&a[E]&&(r||!this.startFragRequested&&_.startFragPrefetch)){var S=a[E].details;if(!S||S.live&&this.levelLastLoaded!==E||this.waitForCdnTuneIn(S))this.state=i.State.WAITING_TRACK;else{var l=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&l&&(this.bufferFlushed=!1,this.afterBufferFlushed(l,s.ElementaryStreamTypes.AUDIO,T.PlaylistLevelType.AUDIO));var I=this.getFwdBufferInfo(l,T.PlaylistLevelType.AUDIO);if(null!==I){var u=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,T.PlaylistLevelType.MAIN),A=I.len,d=this.getMaxBufferLength(null==u?void 0:u.len),c=this.audioSwitch;if(!(A>=d)||c){if(!c&&this._streamEnded(I,S))return o.trigger(n.Events.BUFFER_EOS,{type:"audio"}),void(this.state=i.State.ENDED);var O=S.fragments[0].start,R=I.end;if(c&&r){var N=this.getLoadPosition();R=N,S.PTSKnown&&NO||I.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),r.currentTime=O+.05)}if(!(u&&R>u.end+S.targetduration)&&(u&&u.len||!I.len)){var m=this.getNextFragment(R,S);m?"identity"!==(null===(e=m.decryptdata)||void 0===e?void 0:e.keyFormat)||null!==(t=m.decryptdata)&&void 0!==t&&t.key?this.loadFragment(m,S,R):this.loadKey(m,S):this.bufferFlushed=!0}}}}}},N.getMaxBufferLength=function(t){var o=e.prototype.getMaxBufferLength.call(this);return t?Math.max(o,t):o},N.onMediaDetaching=function(){this.videoBuffer=null,e.prototype.onMediaDetaching.call(this)},N.onAudioTracksUpdated=function(e,t){var o=t.audioTracks;this.resetTransmuxer(),this.levels=o.map((function(e){return new _.Level(e)}))},N.onAudioTrackSwitching=function(e,t){var o=!!t.url;this.trackId=t.id;var a=this.fragCurrent;null!=a&&a.loader&&a.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),o?this.setInterval(100):this.resetTransmuxer(),o?(this.audioSwitch=!0,this.state=i.State.IDLE):this.state=i.State.STOPPED,this.tick()},N.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},N.onLevelLoaded=function(e,t){this.mainDetails=t.details,null!==this.cachedTrackLoadedData&&(this.hls.trigger(n.Events.AUDIO_TRACK_LOADED,this.cachedTrackLoadedData),this.cachedTrackLoadedData=null)},N.onAudioTrackLoaded=function(e,t){var o;if(null!=this.mainDetails){var a=this.levels,n=t.details,r=t.id;if(a){this.log("Track "+r+" loaded ["+n.startSN+","+n.endSN+"],duration:"+n.totalduration);var E=a[r],_=0;if(n.live||null!==(o=E.details)&&void 0!==o&&o.live){var T=this.mainDetails;if(n.fragments[0]||(n.deltaUpdateFailed=!0),n.deltaUpdateFailed||!T)return;!E.details&&n.hasProgramDateTime&&T.hasProgramDateTime?(Object(A.alignMediaPlaylistByPDT)(n,T),_=n.fragments[0].start):_=this.alignPlaylists(n,E.details)}E.details=n,this.levelLastLoaded=r,this.startFragRequested||!this.mainDetails&&n.live||this.setStartPosition(E.details,_),this.state!==i.State.WAITING_TRACK||this.waitForCdnTuneIn(n)||(this.state=i.State.IDLE),this.tick()}else this.warn("Audio tracks were reset while loading level "+r)}else this.cachedTrackLoadedData=t},N._handleFragmentLoadProgress=function(e){var t,o=e.frag,a=e.part,n=e.payload,r=this.config,E=this.trackId,_=this.levels;if(_){var s=_[E];console.assert(s,"Audio track is defined on fragment load progress");var u=s.details;console.assert(u,"Audio track details are defined on fragment load progress");var A=r.defaultAudioCodec||s.audioCodec||"mp4a.40.2",d=this.transmuxer;d||(d=this.transmuxer=new l.default(this.hls,T.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var c=this.initPTS[o.cc],O=null===(t=o.initSegment)||void 0===t?void 0:t.data;if(void 0!==c){var R=a?a.index:-1,N=-1!==R,m=new I.ChunkMetadata(o.level,o.sn,o.stats.chunkCount,n.byteLength,R,N);d.push(n,O,A,"",o,a,u.totalduration,!1,m,c)}else this.log("Unknown video PTS for cc "+o.cc+", waiting for video PTS before demuxing audio frag "+o.sn+" of ["+u.startSN+" ,"+u.endSN+"],track "+E),(this.waitingData=this.waitingData||{frag:o,part:a,cache:new S.default,complete:!1}).cache.push(new Uint8Array(n)),this.waitingVideoCC=this.videoTrackCC,this.state=i.State.WAITING_INIT_PTS}else this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+o.sn+" of level "+o.level+" will not be buffered")},N._handleFragmentLoadComplete=function(t){this.waitingData?this.waitingData.complete=!0:e.prototype._handleFragmentLoadComplete.call(this,t)},N.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},N.onBufferCreated=function(e,t){var o=t.tracks.audio;o&&(this.mediaBuffer=o.buffer||null),t.tracks.video&&(this.videoBuffer=t.tracks.video.buffer||null)},N.onFragBuffered=function(e,t){var o=t.frag,a=t.part;o.type===T.PlaylistLevelType.AUDIO&&(this.fragContextChanged(o)?this.warn("Fragment "+o.sn+(a?" p: "+a.index:"")+" of level "+o.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch):("initSegment"!==o.sn&&(this.fragPrevious=o,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(n.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(o,a)))},N.onError=function(t,o){switch(o.details){case d.ErrorDetails.FRAG_LOAD_ERROR:case d.ErrorDetails.FRAG_LOAD_TIMEOUT:case d.ErrorDetails.KEY_LOAD_ERROR:case d.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(T.PlaylistLevelType.AUDIO,o);break;case d.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case d.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==i.State.ERROR&&this.state!==i.State.STOPPED&&(this.state=o.fatal?i.State.ERROR:i.State.IDLE,this.warn(o.details+" while loading frag, switching to "+this.state+" state"));break;case d.ErrorDetails.BUFFER_FULL_ERROR:if("audio"===o.parent&&(this.state===i.State.PARSING||this.state===i.State.PARSED)){var a=!0,n=this.getFwdBufferInfo(this.mediaBuffer,T.PlaylistLevelType.AUDIO);n&&n.len>.5&&(a=!this.reduceMaxBufferLength(n.len)),a&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,e.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}}},N.onBufferFlushed=function(e,t){t.type===s.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0)},N._handleTransmuxComplete=function(e){var t,o="audio",a=this.hls,r=e.remuxResult,E=e.chunkMeta,_=this.getCurrentContext(E);if(!_)return this.warn("The loading context changed while buffering fragment "+E.sn+" of level "+E.level+". This chunk will not be buffered."),void this.resetStartWhenNotLoaded(E.level);var T=_.frag,S=_.part,l=_.level.details,I=r.audio,u=r.text,A=r.id3,d=r.initSegment;if(!this.fragContextChanged(T)&&l){if(this.state=i.State.PARSING,this.audioSwitch&&I&&this.completeAudioSwitch(),null!=d&&d.tracks&&(this._bufferInitSegment(d.tracks,T,E),a.trigger(n.Events.FRAG_PARSING_INIT_SEGMENT,{frag:T,id:o,tracks:d.tracks})),I){var O=I.startPTS,R=I.endPTS,N=I.startDTS,m=I.endDTS;S&&(S.elementaryStreams[s.ElementaryStreamTypes.AUDIO]={startPTS:O,endPTS:R,startDTS:N,endDTS:m}),T.setElementaryStreamInfo(s.ElementaryStreamTypes.AUDIO,O,R,N,m),this.bufferFragmentData(I,T,S,E)}if(null!=A&&null!==(t=A.samples)&&void 0!==t&&t.length){var L=c({id:o,frag:T,details:l},A);a.trigger(n.Events.FRAG_PARSING_METADATA,L)}if(u){var p=c({id:o,frag:T,details:l},u);a.trigger(n.Events.FRAG_PARSING_USERDATA,p)}}},N._bufferInitSegment=function(e,t,o){if(this.state===i.State.PARSING){e.video&&delete e.video;var a=e.audio;if(a){a.levelCodec=a.codec,a.id="audio",this.log("Init audio buffer, container:"+a.container+", codecs[parsed]=["+a.codec+"]"),this.hls.trigger(n.Events.BUFFER_CODECS,e);var r=a.initSegment;if(null!=r&&r.byteLength){var E={type:"audio",frag:t,part:null,chunkMeta:o,parent:t.type,data:r};this.hls.trigger(n.Events.BUFFER_APPENDING,E)}this.tick()}}},N.loadFragment=function(t,o,n){var r=this.fragmentTracker.getState(t);this.fragCurrent=t,(this.audioSwitch||r===E.FragmentState.NOT_LOADED||r===E.FragmentState.PARTIAL)&&("initSegment"===t.sn?this._loadInitSegment(t):o.live&&!Object(a.isFiniteNumber)(this.initPTS[t.cc])?(this.log("Waiting for video PTS in continuity counter "+t.cc+" of live stream before loading audio fragment "+t.sn+" of level "+this.trackId),this.state=i.State.WAITING_INIT_PTS):(this.startFragRequested=!0,e.prototype.loadFragment.call(this,t,o,n)))},N.completeAudioSwitch=function(){var t=this.hls,o=this.media,a=this.trackId;o&&(this.log("Switching audio track : flushing all audio"),e.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,t.trigger(n.Events.AUDIO_TRACK_SWITCHED,{id:a})},R})(i.default);t.default=R},"./src/controller/audio-track-controller.ts":function(e,t,o){"use strict";o.r(t);var a=o("./src/events.ts"),i=o("./src/errors.ts"),n=o("./src/controller/base-playlist-controller.ts"),r=o("./src/types/loader.ts");function E(e,t){for(var o=0;o=t.length)this.warn("Invalid id passed to audio-track controller");else{this.clearTimer();var o=t[this.trackId];this.log("Now switching to audio-track index "+e);var i=t[e],n=i.id,r=i.groupId,E=void 0===r?"":r,_=i.name,T=i.type,s=i.url;if(this.trackId=e,this.trackName=_,this.selectDefaultTrack=!1,this.hls.trigger(a.Events.AUDIO_TRACK_SWITCHING,{id:n,groupId:E,name:_,type:T,url:s}),!i.details||i.details.live){var S=this.switchParams(i.url,null==o?void 0:o.details);this.loadPlaylist(S)}}},l.selectInitialTrack=function(){var e=this.tracksInGroup;console.assert(e.length,"Initial audio track should be selected when tracks are known");var t=this.trackName,o=this.findTrackId(t)||this.findTrackId();-1!==o?this.setAudioTrack(o):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.MEDIA_ERROR,details:i.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},l.findTrackId=function(e){for(var t=this.tracksInGroup,o=0;ot.partTarget&&(T+=1)}if(Object(a.isFiniteNumber)(_))return new i.HlsUrlParameters(_,Object(a.isFiniteNumber)(T)?T:void 0,i.HlsSkip.No)}}},t.loadPlaylist=function(e){},t.shouldLoadTrack=function(e){return this.canLoad&&e&&!!e.url&&(!e.details||e.details.live)},t.playlistLoaded=function(e,t,o){var a=this,i=t.details,r=t.stats,E=r.loading.end?Math.max(0,self.performance.now()-r.loading.end):0;if(i.advancedDateTime=Date.now()-E,i.live||null!=o&&o.live){if(i.reloaded(o),o&&this.log("live playlist "+e+" "+(i.advanced?"REFRESHED "+i.lastPartSn+"-"+i.lastPartIndex:"MISSED")),o&&i.fragments.length>0&&Object(n.mergeDetails)(o,i),!this.canLoad||!i.live)return;var _,T=void 0,s=void 0;if(i.canBlockReload&&i.endSN&&i.advanced){var S=this.hls.config.lowLatencyMode,l=i.lastPartSn,I=i.endSN,u=i.lastPartIndex,A=l===I;-1!==u?(T=A?I+1:l,s=A?S?0:u:u+1):T=I+1;var d=i.age,c=d+i.ageHeader,O=Math.min(c-i.partTarget,1.5*i.targetduration);if(O>0){if(o&&O>o.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+o.tuneInGoal+" to: "+O+" with playlist age: "+i.age),O=0;else{var R=Math.floor(O/i.targetduration);T+=R,void 0!==s&&(s+=Math.round(O%i.targetduration/i.partTarget)),this.log("CDN Tune-in age: "+i.ageHeader+"s last advanced "+d.toFixed(2)+"s goal: "+O+" skip sn "+R+" to part "+s)}i.tuneInGoal=O}if(_=this.getDeliveryDirectives(i,t.deliveryDirectives,T,s),S||!A)return void this.loadPlaylist(_)}else _=this.getDeliveryDirectives(i,t.deliveryDirectives,T,s);var N=Object(n.computeReloadInterval)(i,r);void 0!==T&&i.canBlockReload&&(N-=i.partTarget||1),this.log("reload live playlist "+e+" in "+Math.round(N)+" ms"),this.timer=self.setTimeout((function(){return a.loadPlaylist(_)}),N)}else this.clearTimer()},t.getDeliveryDirectives=function(e,t,o,a){var n=Object(i.getSkipValue)(e,o);return null!=t&&t.skip&&e.deltaUpdateFailed&&(o=t.msn,a=t.part,n=i.HlsSkip.No),new i.HlsUrlParameters(o,a,n)},t.retryLoadingOrFail=function(e){var t,o=this,a=this.hls.config,i=this.retryCount-1&&null!==(t=e.context)&&void 0!==t&&t.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+e.details+'"'),this.loadPlaylist();else{var n=Math.min(Math.pow(2,this.retryCount)*a.levelLoadingRetryDelay,a.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout((function(){return o.loadPlaylist()}),n),this.warn("retry playlist loading #"+this.retryCount+" in "+n+' ms after "'+e.details+'"')}else this.warn('cannot recover from error "'+e.details+'"'),this.clearTimer(),e.fatal=!0;return i},e})()},"./src/controller/base-stream-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"State",(function(){return L})),o.d(t,"default",(function(){return p}));var a=o("./src/polyfills/number.ts"),i=o("./src/task-loop.ts"),n=o("./src/controller/fragment-tracker.ts"),r=o("./src/utils/buffer-helper.ts"),E=o("./src/utils/logger.ts"),_=o("./src/events.ts"),T=o("./src/errors.ts"),s=o("./src/types/transmuxer.ts"),S=o("./src/utils/mp4-tools.ts"),l=o("./src/utils/discontinuities.ts"),I=o("./src/controller/fragment-finders.ts"),u=o("./src/controller/level-helper.ts"),A=o("./src/loader/fragment-loader.ts"),d=o("./src/crypt/decrypter.ts"),c=o("./src/utils/time-ranges.ts"),O=o("./src/types/loader.ts");function R(e,t){for(var o=0;o=t.endSN&&!e.nextStart){var i=t.partList;if(null!=i&&i.length){var E=i[i.length-1];return r.BufferHelper.isBuffered(this.media,E.start+E.duration/2)}var _=a.getState(o);return _===n.FragmentState.PARTIAL||_===n.FragmentState.OK}return!1},C.onMediaAttached=function(e,t){var o=this.media=this.mediaBuffer=t.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),o.addEventListener("seeking",this.onvseeking),o.addEventListener("ended",this.onvended);var a=this.config;this.levels&&a.autoStartLoad&&this.state===L.STOPPED&&this.startLoad(a.startPosition)},C.onMediaDetaching=function(){var e=this.media;null!=e&&e.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&this.onvseeking&&this.onvended&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},C.onMediaSeeking=function(){var e=this.config,t=this.fragCurrent,o=this.media,i=this.mediaBuffer,n=this.state,E=o?o.currentTime:0,_=r.BufferHelper.bufferInfo(i||o,E,e.maxBufferHole);if(this.log("media seeking to "+(Object(a.isFiniteNumber)(E)?E.toFixed(3):E)+", state: "+n),n===L.ENDED)this.resetLoadingState();else if(t&&!_.len){var T=e.maxFragLookUpTolerance,s=t.start-T,S=E>t.start+t.duration+T;(E0&&n&&n.key&&n.iv&&"AES-128"===n.method){var r=self.performance.now();return t.decrypter.webCryptoDecrypt(new Uint8Array(i),n.key.buffer,n.iv.buffer).then((function(t){var i=self.performance.now();return a.trigger(_.Events.FRAG_DECRYPTED,{frag:e,payload:t,stats:{tstart:r,tdecrypt:i}}),o.payload=t,o}))}return o})).then((function(o){var a=t.fragCurrent,i=t.hls,n=t.levels;if(!n)throw new Error("init load aborted, missing levels");var r=n[e.level].details;console.assert(r,"Level details are defined when init segment is loaded");var E=e.stats;t.state=L.IDLE,t.fragLoadError=0,e.data=new Uint8Array(o.payload),E.parsing.start=E.buffering.start=self.performance.now(),E.parsing.end=E.buffering.end=self.performance.now(),o.frag===a&&i.trigger(_.Events.FRAG_BUFFERED,{stats:E,frag:a,part:null,id:e.type}),t.tick()})).catch((function(o){t.state!==L.STOPPED&&t.state!==L.ERROR&&(t.warn(o),t.resetFragmentLoading(e))}))},C.fragContextChanged=function(e){var t=this.fragCurrent;return!e||!t||e.level!==t.level||e.sn!==t.sn||e.urlId!==t.urlId},C.fragBufferedComplete=function(e,t){var o=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+e.type+" sn: "+e.sn+(t?" part: "+t.index:"")+" of "+("[stream-controller]"===this.logPrefix?"level":"track")+" "+e.level+" "+(o?c.default.toString(r.BufferHelper.getBuffered(o)):"(detached)")),this.state=L.IDLE,o&&(!this.loadedmetadata&&o.buffered.length&&this.fragCurrent===this.fragPrevious&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())},C.seekToStartPos=function(){},C._handleFragmentLoadComplete=function(e){var t=this.transmuxer;if(t){var o=e.frag,a=e.part,i=e.partsLoaded,n=!i||0===i.length||i.some((function(e){return!e})),r=new s.ChunkMetadata(o.level,o.sn,o.stats.chunkCount+1,0,a?a.index:-1,!n);t.flush(r)}},C._handleFragmentLoadProgress=function(e){},C._doFragLoad=function(e,t,o,i){var n=this;if(void 0===o&&(o=null),!this.levels)throw new Error("frag load aborted, missing levels");if(o=Math.max(e.start,o||0),this.config.lowLatencyMode&&t){var r=t.partList;if(r&&i){o>e.end&&t.fragmentHint&&(e=t.fragmentHint);var E=this.getNextPart(r,e,o);if(E>-1){var T=r[E];return this.log("Loading part sn: "+e.sn+" p: "+T.index+" cc: "+e.cc+" of playlist ["+t.startSN+"-"+t.endSN+"] parts [0-"+E+"-"+(r.length-1)+"] "+("[stream-controller]"===this.logPrefix?"level":"track")+": "+e.level+", target: "+parseFloat(o.toFixed(3))),this.nextLoadPosition=T.start+T.duration,this.state=L.FRAG_LOADING,this.hls.trigger(_.Events.FRAG_LOADING,{frag:e,part:r[E],targetBufferTime:o}),this.doFragPartsLoad(e,r,E,i).catch((function(e){return n.handleFragLoadError(e)}))}if(!e.url||this.loadedEndOfParts(r,o))return Promise.resolve(null)}}return this.log("Loading fragment "+e.sn+" cc: "+e.cc+" "+(t?"of ["+t.startSN+"-"+t.endSN+"] ":"")+("[stream-controller]"===this.logPrefix?"level":"track")+": "+e.level+", target: "+parseFloat(o.toFixed(3))),Object(a.isFiniteNumber)(e.sn)&&!this.bitrateTest&&(this.nextLoadPosition=e.start+e.duration),this.state=L.FRAG_LOADING,this.hls.trigger(_.Events.FRAG_LOADING,{frag:e,targetBufferTime:o}),this.fragmentLoader.load(e,i).catch((function(e){return n.handleFragLoadError(e)}))},C.doFragPartsLoad=function(e,t,o,a){var i=this;return new Promise((function(n,r){var E=[];!(function o(T){var s=t[T];i.fragmentLoader.loadPart(e,s,a).then((function(a){E[s.index]=a;var r=a.part;i.hls.trigger(_.Events.FRAG_LOADED,a);var S=t[T+1];if(!S||S.fragment!==e)return n({frag:e,part:r,partsLoaded:E});o(T+1)})).catch(r)})(o)}))},C.handleFragLoadError=function(e){var t=e.data;return t&&t.details===T.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(t.frag,t.part):this.hls.trigger(_.Events.ERROR,t),null},C._handleTransmuxerFlush=function(e){var t=this.getCurrentContext(e);if(t&&this.state===L.PARSING){var o=t.frag,a=t.part,i=t.level,n=self.performance.now();o.stats.parsing.end=n,a&&(a.stats.parsing.end=n),this.updateLevelTiming(o,a,i,e.partial)}else this.fragCurrent||(this.state=L.IDLE)},C.getCurrentContext=function(e){var t=this.levels,o=e.level,a=e.sn,i=e.part;if(!t||!t[o])return this.warn("Levels object was unset while buffering fragment "+a+" of level "+o+". The current chunk will not be buffered."),null;var n=t[o],r=i>-1?Object(u.getPartWith)(n,a,i):null,E=r?r.fragment:Object(u.getFragmentWithSN)(n,a,this.fragCurrent);return E?{frag:E,part:r,level:n}:null},C.bufferFragmentData=function(e,t,o,a){if(e&&this.state===L.PARSING){var i=e.data1,n=e.data2,r=i;if(i&&n&&(r=Object(S.appendUint8Array)(i,n)),r&&r.length){var E={type:e.type,frag:t,part:o,chunkMeta:a,parent:t.type,data:r};this.hls.trigger(_.Events.BUFFER_APPENDING,E),e.dropped&&e.independent&&!o&&this.flushBufferGap(t)}}},C.flushBufferGap=function(e){var t=this.media;if(t)if(r.BufferHelper.isBuffered(t,t.currentTime)){var o=t.currentTime,a=r.BufferHelper.bufferInfo(t,o,0),i=e.duration,n=Math.min(2*this.config.maxFragLookUpTolerance,.25*i),E=Math.max(Math.min(e.start-n,a.end-n),o+n);e.start-E>n&&this.flushMainBuffer(E,e.start)}else this.flushMainBuffer(0,e.start)},C.getFwdBufferInfo=function(e,t){var o=this.config,i=this.getLoadPosition();if(!Object(a.isFiniteNumber)(i))return null;var n=r.BufferHelper.bufferInfo(e,i,o.maxBufferHole);if(0===n.len&&void 0!==n.nextStart){var E=this.fragmentTracker.getBufferedFrag(i,t);if(E&&n.nextStart=o&&(t.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+t.maxMaxBufferLength+"s"),!0)},C.getNextFragment=function(e,t){var o=t.fragments,a=o.length;if(!a)return null;var i,n=this.config,r=o[0].start;if(t.live){var E=n.initialLiveManifestSize;if(a-1&&o<_.start)break;var T=_.loaded;!T&&(i||_.independent||n)&&_.fragment===t&&(a=r),i=T}return a},C.loadedEndOfParts=function(e,t){var o=e[e.length-1];return o&&t>o.start&&o.loaded},C.getInitialLiveFragment=function(e,t){var o=this.fragPrevious,a=null;if(o){if(e.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+o.programDateTime),a=Object(I.findFragmentByPDT)(t,o.endProgramDateTime,this.config.maxFragLookUpTolerance)),!a){var i=o.sn+1;if(i>=e.startSN&&i<=e.endSN){var n=t[i-e.startSN];o.cc===n.cc&&(a=n,this.log("Live playlist, switching playlist, load frag with next SN: "+a.sn))}a||(a=Object(I.findFragWithCC)(t,o.cc))&&this.log("Live playlist, switching playlist, load frag with same CC: "+a.sn)}}else{var r=this.hls.liveSyncPosition;null!==r&&(a=this.getFragmentAtPosition(r,this.bitrateTest?e.fragmentEnd:e.edge,e))}return a},C.getFragmentAtPosition=function(e,t,o){var a,i=this.config,r=this.fragPrevious,E=o.fragments,_=o.endSN,T=o.fragmentHint,s=i.maxFragLookUpTolerance,S=!!(i.lowLatencyMode&&o.partList&&T);if(S&&T&&!this.bitrateTest&&(E=E.concat(T),_=T.sn),et-s?0:s;a=Object(I.findFragmentByPTS)(r,E,e,l)}else a=E[E.length-1];if(a){var u=a.sn-o.startSN;if(r&&a.sn===r.sn&&!S&&r&&a.level===r.level){var A=E[u+1];a.sn<_&&this.fragmentTracker.getState(A)!==n.FragmentState.OK?(this.log("SN "+a.sn+" just loaded, load next one: "+A.sn),a=A):a=null}}return a},C.synchronizeToLiveEdge=function(e){var t=this.config,o=this.media;if(o){var a=this.hls.liveSyncPosition,i=o.currentTime,n=e.fragments[0].start,r=e.edge,E=i>=n-t.maxFragLookUpTolerance&&i<=r;if(null!==a&&o.duration>a&&(i"+e.startSN+" prev-sn: "+(n?n.sn:"na")+" fragments: "+E),S}return _},C.waitForCdnTuneIn=function(e){return e.live&&e.canBlockReload&&e.partTarget&&e.tuneInGoal>Math.max(e.partHoldBack,3*e.partTarget)},C.setStartPosition=function(e,t){var o=this.startPosition;if(o"+e))}}])&&R(p.prototype,D),h&&R(p,h),Object.defineProperty(p,"prototype",{writable:!1}),i})(i.default)},"./src/controller/buffer-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return I}));var a=o("./src/polyfills/number.ts"),i=o("./src/events.ts"),n=o("./src/utils/logger.ts"),r=o("./src/errors.ts"),E=o("./src/utils/buffer-helper.ts"),_=o("./src/utils/mediasource-helper.ts"),T=o("./src/loader/fragment.ts"),s=o("./src/controller/buffer-operation-queue.ts"),S=Object(_.getMediaSource)(),l=/([ha]vc.)(?:\.[^.,]+)+/,I=(function(){function e(e){var t=this;this.details=null,this._objectUrl=null,this.operationQueue=void 0,this.listeners=void 0,this.hls=void 0,this.bufferCodecEventsExpected=0,this._bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var e=t.hls,o=t.media,a=t.mediaSource;n.logger.log("[buffer-controller]: Media source opened"),o&&(t.updateMediaElementDuration(),e.trigger(i.Events.MEDIA_ATTACHED,{media:o})),a&&a.removeEventListener("sourceopen",t._onMediaSourceOpen),t.checkPendingTracks()},this._onMediaSourceClose=function(){n.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){n.logger.log("[buffer-controller]: Media source ended")},this.hls=e,this._initSourceBuffer(),this.registerListeners()}var t=e.prototype;return t.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},t.destroy=function(){this.unregisterListeners(),this.details=null},t.registerListeners=function(){var e=this.hls;e.on(i.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(i.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(i.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(i.Events.BUFFER_RESET,this.onBufferReset,this),e.on(i.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.on(i.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.on(i.Events.BUFFER_EOS,this.onBufferEos,this),e.on(i.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(i.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(i.Events.FRAG_PARSED,this.onFragParsed,this),e.on(i.Events.FRAG_CHANGED,this.onFragChanged,this)},t.unregisterListeners=function(){var e=this.hls;e.off(i.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(i.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(i.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(i.Events.BUFFER_RESET,this.onBufferReset,this),e.off(i.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.off(i.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.off(i.Events.BUFFER_EOS,this.onBufferEos,this),e.off(i.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(i.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(i.Events.FRAG_PARSED,this.onFragParsed,this),e.off(i.Events.FRAG_CHANGED,this.onFragChanged,this)},t._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new s.default(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]}},t.onManifestParsed=function(e,t){var o=2;(t.audio&&!t.video||!t.altAudio)&&(o=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=o,this.details=null,n.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},t.onMediaAttaching=function(e,t){var o=this.media=t.media;if(o&&S){var a=this.mediaSource=new S;a.addEventListener("sourceopen",this._onMediaSourceOpen),a.addEventListener("sourceended",this._onMediaSourceEnded),a.addEventListener("sourceclose",this._onMediaSourceClose),o.src=self.URL.createObjectURL(a),this._objectUrl=o.src}},t.onMediaDetaching=function(){var e=this.media,t=this.mediaSource,o=this._objectUrl;if(t){if(n.logger.log("[buffer-controller]: media source detaching"),"open"===t.readyState)try{t.endOfStream()}catch(e){n.logger.warn("[buffer-controller]: onMediaDetaching: "+e.message+" while calling endOfStream")}this.onBufferReset(),t.removeEventListener("sourceopen",this._onMediaSourceOpen),t.removeEventListener("sourceended",this._onMediaSourceEnded),t.removeEventListener("sourceclose",this._onMediaSourceClose),e&&(o&&self.URL.revokeObjectURL(o),e.src===o?(e.removeAttribute("src"),e.load()):n.logger.warn("[buffer-controller]: media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={}}this.hls.trigger(i.Events.MEDIA_DETACHED,void 0)},t.onBufferReset=function(){var e=this;this.getSourceBufferTypes().forEach((function(t){var o=e.sourceBuffer[t];try{o&&(e.removeBufferListeners(t),e.mediaSource&&e.mediaSource.removeSourceBuffer(o),e.sourceBuffer[t]=void 0)}catch(e){n.logger.warn("[buffer-controller]: Failed to reset the "+t+" buffer",e)}})),this._initSourceBuffer()},t.onBufferCodecs=function(e,t){var o=this,a=this.getSourceBufferTypes().length;Object.keys(t).forEach((function(e){if(a){var i=o.tracks[e];if(i&&"function"==typeof i.buffer.changeType){var r=t[e],E=r.id,_=r.codec,T=r.levelCodec,s=r.container,S=r.metadata,I=(i.levelCodec||i.codec).replace(l,"$1"),u=(T||_).replace(l,"$1");if(I!==u){var A=s+";codecs="+(T||_);o.appendChangeType(e,A),n.logger.log("[buffer-controller]: switching codec "+I+" to "+u),o.tracks[e]={buffer:i.buffer,codec:_,container:s,levelCodec:T,metadata:S,id:E}}}}else o.pendingTracks[e]=t[e]})),a||(this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&"open"===this.mediaSource.readyState&&this.checkPendingTracks())},t.appendChangeType=function(e,t){var o=this,a=this.operationQueue,i={execute:function(){var i=o.sourceBuffer[e];i&&(n.logger.log("[buffer-controller]: changing "+e+" sourceBuffer type to "+t),i.changeType(t)),a.shiftAndExecuteNext(e)},onStart:function(){},onComplete:function(){},onError:function(t){n.logger.warn("[buffer-controller]: Failed to change "+e+" SourceBuffer type",t)}};a.append(i,e)},t.onBufferAppending=function(e,t){var o=this,a=this.hls,_=this.operationQueue,T=this.tracks,s=t.data,S=t.type,l=t.frag,I=t.part,u=t.chunkMeta,A=u.buffering[S],d=self.performance.now();A.start=d;var c=l.stats.buffering,O=I?I.stats.buffering:null;0===c.start&&(c.start=d),O&&0===O.start&&(O.start=d);var R=T.audio,N="audio"===S&&1===u.id&&"audio/mpeg"===(null==R?void 0:R.container),m={execute:function(){if(A.executeStart=self.performance.now(),N){var e=o.sourceBuffer[S];if(e){var t=l.start-e.timestampOffset;Math.abs(t)>=.1&&(n.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+l.start+" (delta: "+t+") sn: "+l.sn+")"),e.timestampOffset=l.start)}}o.appendExecutor(s,S)},onStart:function(){},onComplete:function(){var e=self.performance.now();A.executeEnd=A.end=e,0===c.first&&(c.first=e),O&&0===O.first&&(O.first=e);var t=o.sourceBuffer,a={};for(var n in t)a[n]=E.BufferHelper.getBuffered(t[n]);o.appendError=0,o.hls.trigger(i.Events.BUFFER_APPENDED,{type:S,frag:l,part:I,chunkMeta:u,parent:l.type,timeRanges:a})},onError:function(e){n.logger.error("[buffer-controller]: Error encountered while trying to append to the "+S+" SourceBuffer",e);var t={type:r.ErrorTypes.MEDIA_ERROR,parent:l.type,details:r.ErrorDetails.BUFFER_APPEND_ERROR,err:e,fatal:!1};e.code===DOMException.QUOTA_EXCEEDED_ERR?t.details=r.ErrorDetails.BUFFER_FULL_ERROR:(o.appendError++,t.details=r.ErrorDetails.BUFFER_APPEND_ERROR,o.appendError>a.config.appendErrorMaxRetry&&(n.logger.error("[buffer-controller]: Failed "+a.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),t.fatal=!0,a.stopLoad())),a.trigger(i.Events.ERROR,t)}};_.append(m,S)},t.onBufferFlushing=function(e,t){var o=this,a=this.operationQueue,r=function(e){return{execute:o.removeExecutor.bind(o,e,t.startOffset,t.endOffset),onStart:function(){},onComplete:function(){o.hls.trigger(i.Events.BUFFER_FLUSHED,{type:e})},onError:function(t){n.logger.warn("[buffer-controller]: Failed to remove from "+e+" SourceBuffer",t)}}};t.type?a.append(r(t.type),t.type):this.getSourceBufferTypes().forEach((function(e){a.append(r(e),e)}))},t.onFragParsed=function(e,t){var o=this,a=t.frag,r=t.part,E=[],_=r?r.elementaryStreams:a.elementaryStreams;_[T.ElementaryStreamTypes.AUDIOVIDEO]?E.push("audiovideo"):(_[T.ElementaryStreamTypes.AUDIO]&&E.push("audio"),_[T.ElementaryStreamTypes.VIDEO]&&E.push("video")),0===E.length&&n.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+a.type+" level: "+a.level+" sn: "+a.sn),this.blockBuffers((function(){var e=self.performance.now();a.stats.buffering.end=e,r&&(r.stats.buffering.end=e);var t=r?r.stats:a.stats;o.hls.trigger(i.Events.FRAG_BUFFERED,{frag:a,part:r,stats:t,id:a.type})}),E)},t.onFragChanged=function(e,t){this.flushBackBuffer()},t.onBufferEos=function(e,t){var o=this;this.getSourceBufferTypes().reduce((function(e,a){var i=o.sourceBuffer[a];return t.type&&t.type!==a||i&&!i.ended&&(i.ended=!0,n.logger.log("[buffer-controller]: "+a+" sourceBuffer now EOS")),e&&!(i&&!i.ended)}),!0)&&this.blockBuffers((function(){var e=o.mediaSource;e&&"open"===e.readyState&&e.endOfStream()}))},t.onLevelUpdated=function(e,t){var o=t.details;o.fragments.length&&(this.details=o,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},t.flushBackBuffer=function(){var e=this.hls,t=this.details,o=this.media,n=this.sourceBuffer;if(o&&null!==t){var r=this.getSourceBufferTypes();if(r.length){var _=t.live&&null!==e.config.liveBackBufferLength?e.config.liveBackBufferLength:e.config.backBufferLength;if(Object(a.isFiniteNumber)(_)&&!(_<0)){var T=o.currentTime,s=t.levelTargetDuration,S=Math.max(_,s),l=Math.floor(T/s)*s-S;r.forEach((function(o){var a=n[o];if(a){var r=E.BufferHelper.getBuffered(a);r.length>0&&l>r.start(0)&&(e.trigger(i.Events.BACK_BUFFER_REACHED,{bufferEnd:l}),t.live&&e.trigger(i.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:l}),e.trigger(i.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:l,type:o}))}}))}}}},t.updateMediaElementDuration=function(){if(this.details&&this.media&&this.mediaSource&&"open"===this.mediaSource.readyState){var e=this.details,t=this.hls,o=this.media,i=this.mediaSource,r=e.fragments[0].start+e.totalduration,E=o.duration,_=Object(a.isFiniteNumber)(i.duration)?i.duration:0;e.live&&t.config.liveDurationInfinity?(n.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),i.duration=1/0,this.updateSeekableRange(e)):(r>_&&r>E||!Object(a.isFiniteNumber)(E))&&(n.logger.log("[buffer-controller]: Updating Media Source duration to "+r.toFixed(3)),i.duration=r)}},t.updateSeekableRange=function(e){var t=this.mediaSource,o=e.fragments;if(o.length&&e.live&&null!=t&&t.setLiveSeekableRange){var a=Math.max(0,o[0].start),i=Math.max(a,a+e.totalduration);t.setLiveSeekableRange(a,i)}},t.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,t=this.operationQueue,o=this.pendingTracks,a=Object.keys(o).length;if(a&&!e||2===a){this.createSourceBuffers(o),this.pendingTracks={};var n=this.getSourceBufferTypes();if(0===n.length)return void this.hls.trigger(i.Events.ERROR,{type:r.ErrorTypes.MEDIA_ERROR,details:r.ErrorDetails.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,reason:"could not create source buffer for media codec(s)"});n.forEach((function(e){t.executeNext(e)}))}},t.createSourceBuffers=function(e){var t=this.sourceBuffer,o=this.mediaSource;if(!o)throw Error("createSourceBuffers called when mediaSource was null");var a=0;for(var E in e)if(!t[E]){var _=e[E];if(!_)throw Error("source buffer exists for track "+E+", however track does not");var T=_.levelCodec||_.codec,s=_.container+";codecs="+T;n.logger.log("[buffer-controller]: creating sourceBuffer("+s+")");try{var S=t[E]=o.addSourceBuffer(s),l=E;this.addBufferListener(l,"updatestart",this._onSBUpdateStart),this.addBufferListener(l,"updateend",this._onSBUpdateEnd),this.addBufferListener(l,"error",this._onSBUpdateError),this.tracks[E]={buffer:S,codec:T,container:_.container,levelCodec:_.levelCodec,metadata:_.metadata,id:_.id},a++}catch(e){n.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+e.message),this.hls.trigger(i.Events.ERROR,{type:r.ErrorTypes.MEDIA_ERROR,details:r.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:e,mimeType:s})}}a&&this.hls.trigger(i.Events.BUFFER_CREATED,{tracks:this.tracks})},t._onSBUpdateStart=function(e){this.operationQueue.current(e).onStart()},t._onSBUpdateEnd=function(e){var t=this.operationQueue;t.current(e).onComplete(),t.shiftAndExecuteNext(e)},t._onSBUpdateError=function(e,t){n.logger.error("[buffer-controller]: "+e+" SourceBuffer error",t),this.hls.trigger(i.Events.ERROR,{type:r.ErrorTypes.MEDIA_ERROR,details:r.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var o=this.operationQueue.current(e);o&&o.onError(t)},t.removeExecutor=function(e,t,o){var i=this.media,r=this.mediaSource,E=this.operationQueue,_=this.sourceBuffer[e];if(!i||!r||!_)return n.logger.warn("[buffer-controller]: Attempting to remove from the "+e+" SourceBuffer, but it does not exist"),void E.shiftAndExecuteNext(e);var T=Object(a.isFiniteNumber)(i.duration)?i.duration:1/0,s=Object(a.isFiniteNumber)(r.duration)?r.duration:1/0,S=Math.max(0,t),l=Math.min(o,T,s);l>S?(n.logger.log("[buffer-controller]: Removing ["+S+","+l+"] from the "+e+" SourceBuffer"),console.assert(!_.updating,e+" sourceBuffer must not be updating"),_.remove(S,l)):E.shiftAndExecuteNext(e)},t.appendExecutor=function(e,t){var o=this.operationQueue,a=this.sourceBuffer[t];if(!a)return n.logger.warn("[buffer-controller]: Attempting to append to the "+t+" SourceBuffer, but it does not exist"),void o.shiftAndExecuteNext(t);a.ended=!1,console.assert(!a.updating,t+" sourceBuffer must not be updating"),a.appendBuffer(e)},t.blockBuffers=function(e,t){var o=this;if(void 0===t&&(t=this.getSourceBufferTypes()),!t.length)return n.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),void Promise.resolve().then(e);var a=this.operationQueue,i=t.map((function(e){return a.appendBlocker(e)}));Promise.all(i).then((function(){e(),t.forEach((function(e){var t=o.sourceBuffer[e];t&&t.updating||a.shiftAndExecuteNext(e)}))}))},t.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},t.addBufferListener=function(e,t,o){var a=this.sourceBuffer[e];if(a){var i=o.bind(this,e);this.listeners[e].push({event:t,listener:i}),a.addEventListener(t,i)}},t.removeBufferListeners=function(e){var t=this.sourceBuffer[e];t&&this.listeners[e].forEach((function(e){t.removeEventListener(e.event,e.listener)}))},e})()},"./src/controller/buffer-operation-queue.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return i}));var a=o("./src/utils/logger.ts"),i=(function(){function e(e){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=e}var t=e.prototype;return t.append=function(e,t){var o=this.queues[t];o.push(e),1===o.length&&this.buffers[t]&&this.executeNext(t)},t.insertAbort=function(e,t){this.queues[t].unshift(e),this.executeNext(t)},t.appendBlocker=function(e){var t,o=new Promise((function(e){t=e})),a={execute:t,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(a,e),o},t.executeNext=function(e){var t=this.buffers,o=this.queues,i=t[e],n=o[e];if(n.length){var r=n[0];try{r.execute()}catch(t){a.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),r.onError(t),i&&i.updating||(n.shift(),this.executeNext(e))}}},t.shiftAndExecuteNext=function(e){this.queues[e].shift(),this.executeNext(e)},t.current=function(e){return this.queues[e][0]},e})()},"./src/controller/cap-level-controller.ts":function(e,t,o){"use strict";o.r(t);var a=o("./src/events.ts");function i(e,t){for(var o=0;o0&&this.mediaWidth>0){var e=this.hls.levels;if(e.length){var t=this.hls;t.autoLevelCapping=this.getMaxLevel(e.length-1),t.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping}}},r.getMaxLevel=function(t){var o=this,a=this.hls.levels;if(!a.length)return-1;var i=a.filter((function(a,i){return e.isLevelAllowed(i,o.restrictedLevels)&&i<=t}));return this.clientRect=null,e.getMaxLevelByMediaSize(i,this.mediaWidth,this.mediaHeight)},r.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},r.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},r.getDimensions=function(){if(this.clientRect)return this.clientRect;var e=this.media,t={width:0,height:0};if(e){var o=e.getBoundingClientRect();t.width=o.width,t.height=o.height,t.width||t.height||(t.width=o.right-o.left||e.width||0,t.height=o.bottom-o.top||e.height||0)}return this.clientRect=t,t},e.isLevelAllowed=function(e,t){return void 0===t&&(t=[]),-1===t.indexOf(e)},e.getMaxLevelByMediaSize=function(e,t,o){if(!e||!e.length)return-1;for(var a,i,n=e.length-1,r=0;r=t||E.height>=o)&&(a=E,!(i=e[r+1])||a.width!==i.width||a.height!==i.height)){n=r;break}}return n},t=e,(o=[{key:"mediaWidth",get:function(){return this.getDimensions().width*this.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*this.contentScaleFactor}},{key:"contentScaleFactor",get:function(){var e=1;if(!this.hls.config.ignoreDevicePixelRatio)try{e=self.devicePixelRatio}catch(e){}return e}}])&&i(t.prototype,o),n&&i(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e})();t.default=n},"./src/controller/cmcd-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return l}));var a=o("./src/events.ts"),i=o("./src/types/cmcd.ts"),n=o("./src/utils/buffer-helper.ts"),r=o("./src/utils/logger.ts");function E(e,t){for(var o=0;o=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,a=new Array(t);o-1?n+1:a.levels.length;t=a.levels.slice(0,r)}for(var E,_=T(t);!(E=_()).done;){var s=E.value;s.bitrate>o&&(o=s.bitrate)}return o>0?o:NaN},t.getBufferLength=function(e){var t=this.hls.media,o=e===i.CMCDObjectType.AUDIO?this.audioBuffer:this.videoBuffer;return o&&t?1e3*n.BufferHelper.bufferInfo(o,t.currentTime,this.config.maxBufferHole).len:NaN},t.createPlaylistLoader=function(){var e=this.config.pLoader,t=this.applyPlaylistData,o=e||this.config.loader;return(function(){function e(e){this.loader=void 0,this.loader=new o(e)}var a=e.prototype;return a.destroy=function(){this.loader.destroy()},a.abort=function(){this.loader.abort()},a.load=function(e,o,a){t(e),this.loader.load(e,o,a)},_(e,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),e})()},t.createFragmentLoader=function(){var e=this.config.fLoader,t=this.applyFragmentData,o=e||this.config.loader;return(function(){function e(e){this.loader=void 0,this.loader=new o(e)}var a=e.prototype;return a.destroy=function(){this.loader.destroy()},a.abort=function(){this.loader.abort()},a.load=function(e,o,a){t(e),this.loader.load(e,o,a)},_(e,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),e})()},e.uuid=function(){var e=URL.createObjectURL(new Blob),t=e.toString();return URL.revokeObjectURL(e),t.slice(t.lastIndexOf("/")+1)},e.serialize=function(e){for(var t,o=[],a=function(e){return!Number.isNaN(e)&&null!=e&&""!==e&&!1!==e},i=function(e){return Math.round(e)},n=function(e){return 100*i(e/100)},r={br:i,d:i,bl:n,dl:n,mtp:n,nor:function(e){return encodeURIComponent(e)},rtp:n,tb:i},E=T(Object.keys(e||{}).sort());!(t=E()).done;){var _=t.value,s=e[_];if(a(s)&&!("v"===_&&1===s||"pr"==_&&1===s)){var S=r[_];S&&(s=S(s));var l=typeof s,I=void 0;I="ot"===_||"sf"===_||"st"===_?_+"="+s:"boolean"===l?_:"number"===l?_+"="+s:_+"="+JSON.stringify(s),o.push(I)}}return o.join(",")},e.toHeaders=function(t){for(var o={},a=["Object","Request","Session","Status"],i=[{},{},{},{}],n={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3},r=0,E=Object.keys(t);r3)return void this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.KEY_SYSTEM_ERROR,details:i.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0});var T=3-this._requestLicenseFailureCount+1;n.logger.warn("Retrying license request, "+T+" attempts left"),this._requestLicense(o,r)}},T._generateLicenseRequestChallenge=function(e,t){if(e.mediaKeySystemDomain===r.KeySystems.WIDEVINE)return t;throw new Error("unsupported key-system: "+e.mediaKeySystemDomain)},T._requestLicense=function(e,t){n.logger.log("Requesting content license for key-system");var o=this._mediaKeysList[0];if(!o)return n.logger.error("Fatal error: Media is encrypted but no key-system access has been obtained yet"),void this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.KEY_SYSTEM_ERROR,details:i.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});try{var r=this.getLicenseServerUrl(o.mediaKeySystemDomain),E=this._createLicenseXhr(r,e,t);n.logger.log("Sending license request to URL: "+r);var _=this._generateLicenseRequestChallenge(o,e);E.send(_)}catch(e){n.logger.error("Failure requesting DRM license: "+e),this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.KEY_SYSTEM_ERROR,details:i.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0})}},T.onMediaAttached=function(e,t){if(this._emeEnabled){var o=t.media;this._media=o,o.addEventListener("encrypted",this._onMediaEncrypted)}},T.onMediaDetached=function(){var e=this._media,t=this._mediaKeysList;e&&(e.removeEventListener("encrypted",this._onMediaEncrypted),this._media=null,this._mediaKeysList=[],Promise.all(t.map((function(e){if(e.mediaKeysSession)return e.mediaKeysSession.close().catch((function(){}))}))).then((function(){return e.setMediaKeys(null)})).catch((function(){})))},T.onManifestParsed=function(e,t){if(this._emeEnabled){var o=t.levels.map((function(e){return e.audioCodec})).filter((function(e){return!!e})),a=t.levels.map((function(e){return e.videoCodec})).filter((function(e){return!!e}));this._attemptKeySystemAccess(r.KeySystems.WIDEVINE,o,a)}},t=e,(o=[{key:"requestMediaKeySystemAccess",get:function(){if(!this._requestMediaKeySystemAccess)throw new Error("No requestMediaKeySystemAccess function configured");return this._requestMediaKeySystemAccess}}])&&E(t.prototype,o),_&&E(t,_),Object.defineProperty(t,"prototype",{writable:!1}),e})();t.default=_},"./src/controller/fps-controller.ts":function(e,t,o){"use strict";o.r(t);var a=o("./src/events.ts"),i=o("./src/utils/logger.ts"),n=(function(){function e(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}var t=e.prototype;return t.setStreamController=function(e){this.streamController=e},t.registerListeners=function(){this.hls.on(a.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},t.unregisterListeners=function(){this.hls.off(a.Events.MEDIA_ATTACHING,this.onMediaAttaching)},t.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},t.onMediaAttaching=function(e,t){var o=this.hls.config;if(o.capLevelOnFPSDrop){var a=t.media instanceof self.HTMLVideoElement?t.media:null;this.media=a,a&&"function"==typeof a.getVideoPlaybackQuality&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),o.fpsDroppedMonitoringPeriod)}},t.checkFPS=function(e,t,o){var n=performance.now();if(t){if(this.lastTime){var r=n-this.lastTime,E=o-this.lastDroppedFrames,_=t-this.lastDecodedFrames,T=1e3*E/r,s=this.hls;if(s.trigger(a.Events.FPS_DROP,{currentDropped:E,currentDecoded:_,totalDroppedFrames:o}),T>0&&E>s.config.fpsDroppedMonitoringThreshold*_){var S=s.currentLevel;i.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+S),S>0&&(-1===s.autoLevelCapping||s.autoLevelCapping>=S)&&(S-=1,s.trigger(a.Events.FPS_DROP_LEVEL_CAPPING,{level:S,droppedLevel:s.currentLevel}),s.autoLevelCapping=S,this.streamController.nextLevelSwitch())}}this.lastTime=n,this.lastDroppedFrames=o,this.lastDecodedFrames=t}},t.checkFPSInterval=function(){var e=this.media;if(e)if(this.isVideoPlaybackQualityAvailable){var t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)},e})();t.default=n},"./src/controller/fragment-finders.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"findFragmentByPDT",(function(){return n})),o.d(t,"findFragmentByPTS",(function(){return r})),o.d(t,"fragmentWithinToleranceTest",(function(){return E})),o.d(t,"pdtWithinToleranceTest",(function(){return _})),o.d(t,"findFragWithCC",(function(){return T}));var a=o("./src/polyfills/number.ts"),i=o("./src/utils/binary-search.ts");function n(e,t,o){if(null===t||!Array.isArray(e)||!e.length||!Object(a.isFiniteNumber)(t))return null;if(t<(e[0].programDateTime||0))return null;if(t>=(e[e.length-1].endProgramDateTime||0))return null;o=o||0;for(var i=0;ie&&o.start?-1:0}function _(e,t,o){var a=1e3*Math.min(t,o.duration+(o.deltaPTS?o.deltaPTS:0));return(o.endProgramDateTime||0)-a>e}function T(e,t){return i.default.search(e,(function(e){return e.cct?-1:0}))}},"./src/controller/fragment-tracker.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"FragmentState",(function(){return a})),o.d(t,"FragmentTracker",(function(){return r}));var a,i=o("./src/events.ts"),n=o("./src/types/loader.ts");!(function(e){e.NOT_LOADED="NOT_LOADED",e.APPENDING="APPENDING",e.PARTIAL="PARTIAL",e.OK="OK"})(a||(a={}));var r=(function(){function e(e){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=e,this._registerListeners()}var t=e.prototype;return t._registerListeners=function(){var e=this.hls;e.on(i.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.on(i.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.on(i.Events.FRAG_LOADED,this.onFragLoaded,this)},t._unregisterListeners=function(){var e=this.hls;e.off(i.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.off(i.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.off(i.Events.FRAG_LOADED,this.onFragLoaded,this)},t.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},t.getAppendedFrag=function(e,t){if(t===n.PlaylistLevelType.MAIN){var o=this.activeFragment,a=this.activeParts;if(!o)return null;if(a)for(var i=a.length;i--;){var r=a[i],E=r?r.end:o.appendedPTS;if(r.start<=e&&void 0!==E&&e<=E)return i>9&&(this.activeParts=a.slice(i-9)),r}else if(o.start<=e&&void 0!==o.appendedPTS&&e<=o.appendedPTS)return o}return this.getBufferedFrag(e,t)},t.getBufferedFrag=function(e,t){for(var o=this.fragments,a=Object.keys(o),i=a.length;i--;){var n=o[a[i]];if((null==n?void 0:n.body.type)===t&&n.buffered){var r=n.body;if(r.start<=e&&e<=r.end)return r}}return null},t.detectEvictedFragments=function(e,t,o){var a=this;Object.keys(this.fragments).forEach((function(i){var n=a.fragments[i];if(n)if(n.buffered){var r=n.range[e];r&&r.time.some((function(e){var o=!a.isTimeBuffered(e.startPTS,e.endPTS,t);return o&&a.removeFragment(n.body),o}))}else n.body.type===o&&a.removeFragment(n.body)}))},t.detectPartialFragments=function(e){var t=this,o=this.timeRanges,a=e.frag,i=e.part;if(o&&"initSegment"!==a.sn){var n=_(a),r=this.fragments[n];r&&(Object.keys(o).forEach((function(e){var n=a.elementaryStreams[e];if(n){var E=o[e],_=null!==i||!0===n.partial;r.range[e]=t.getBufferedTimes(a,i,_,E)}})),r.loaded=null,Object.keys(r.range).length?r.buffered=!0:this.removeFragment(r.body))}},t.fragBuffered=function(e){var t=_(e),o=this.fragments[t];o&&(o.loaded=null,o.buffered=!0)},t.getBufferedTimes=function(e,t,o,a){for(var i={time:[],partial:o},n=t?t.start:e.start,r=t?t.end:e.end,E=e.minEndPTS||r,_=e.maxStartPTS||n,T=0;T=s&&E<=S){i.time.push({startPTS:Math.max(n,a.start(T)),endPTS:Math.min(r,a.end(T))});break}if(ns)i.partial=!0,i.time.push({startPTS:Math.max(n,a.start(T)),endPTS:Math.min(r,a.end(T))});else if(r<=s)break}return i},t.getPartialFragment=function(e){var t,o,a,i=null,n=0,r=this.bufferPadding,_=this.fragments;return Object.keys(_).forEach((function(T){var s=_[T];s&&E(s)&&(o=s.body.start-r,a=s.body.end+r,e>=o&&e<=a&&(t=Math.min(e-o,a-e),n<=t&&(i=s.body,n=t)))})),i},t.getState=function(e){var t=_(e),o=this.fragments[t];return o?o.buffered?E(o)?a.PARTIAL:a.OK:a.APPENDING:a.NOT_LOADED},t.isTimeBuffered=function(e,t,o){for(var a,i,n=0;n=a&&t<=i)return!0;if(t<=a)return!1}return!1},t.onFragLoaded=function(e,t){var o=t.frag,a=t.part;if("initSegment"!==o.sn&&!o.bitrateTest&&!a){var i=_(o);this.fragments[i]={body:o,loaded:t,buffered:!1,range:Object.create(null)}}},t.onBufferAppended=function(e,t){var o=this,a=t.frag,i=t.part,r=t.timeRanges;if(a.type===n.PlaylistLevelType.MAIN)if(this.activeFragment=a,i){var E=this.activeParts;E||(this.activeParts=E=[]),E.push(i)}else this.activeParts=null;this.timeRanges=r,Object.keys(r).forEach((function(e){var t=r[e];if(o.detectEvictedFragments(e,t),!i)for(var n=0;ne&&a.removeFragment(r)}}))},t.removeFragment=function(e){var t=_(e);e.stats.loaded=0,e.clearElementaryStreamInfo(),delete this.fragments[t]},t.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},e})();function E(e){var t,o;return e.buffered&&((null===(t=e.range.video)||void 0===t?void 0:t.partial)||(null===(o=e.range.audio)||void 0===o?void 0:o.partial))}function _(e){return e.type+"_"+e.level+"_"+e.urlId+"_"+e.sn}},"./src/controller/gap-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"STALL_MINIMUM_DURATION_MS",(function(){return E})),o.d(t,"MAX_START_GAP_JUMP",(function(){return _})),o.d(t,"SKIP_BUFFER_HOLE_STEP_SECONDS",(function(){return T})),o.d(t,"SKIP_BUFFER_RANGE_START",(function(){return s})),o.d(t,"default",(function(){return S}));var a=o("./src/utils/buffer-helper.ts"),i=o("./src/errors.ts"),n=o("./src/events.ts"),r=o("./src/utils/logger.ts"),E=250,_=2,T=.1,s=.05,S=(function(){function e(e,t,o,a){this.config=void 0,this.media=null,this.fragmentTracker=void 0,this.hls=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.config=e,this.media=t,this.fragmentTracker=o,this.hls=a}var t=e.prototype;return t.destroy=function(){this.media=null,this.hls=this.fragmentTracker=null},t.poll=function(e,t){var o=this.config,i=this.media,n=this.stalled;if(null!==i){var T=i.currentTime,s=i.seeking,S=this.seeking&&!s,l=!this.seeking&&s;if(this.seeking=s,T===e){if((l||S)&&(this.stalled=null),!(i.paused&&!s||i.ended||0===i.playbackRate)&&a.BufferHelper.getBuffered(i).length){var I=a.BufferHelper.bufferInfo(i,T,0),u=I.len>0,A=I.nextStart||0;if(u||A){if(s){var d=I.len>_,c=!A||t&&t.start<=T||A-T>_&&!this.fragmentTracker.getPartialFragment(T);if(d||c)return;this.moved=!1}if(!this.moved&&null!==this.stalled){var O,R=Math.max(A,I.start||0)-T,N=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,m=(null==N||null===(O=N.details)||void 0===O?void 0:O.live)?2*N.details.targetduration:_;if(R>0&&R<=m)return void this._trySkipBufferHole(null)}var L=self.performance.now();if(null!==n){var p=L-n;if(s||!(p>=E)||(this._reportStall(I),this.media)){var D=a.BufferHelper.bufferInfo(i,T,o.maxBufferHole);this._tryFixBufferStall(D,p)}}else this.stalled=L}}}else if(this.moved=!0,null!==n){if(this.stallReported){var h=self.performance.now()-n;r.logger.warn("playback not stuck anymore @"+T+", after "+Math.round(h)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}}},t._tryFixBufferStall=function(e,t){var o=this.config,a=this.fragmentTracker,i=this.media;if(null!==i){var n=i.currentTime,E=a.getPartialFragment(n);if(E&&(this._trySkipBufferHole(E)||!this.media))return;e.len>o.maxBufferHole&&t>1e3*o.highBufferWatchdogPeriod&&(r.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())}},t._reportStall=function(e){var t=this.hls,o=this.media;!this.stallReported&&o&&(this.stallReported=!0,r.logger.warn("Playback stalling at @"+o.currentTime+" due to low buffer ("+JSON.stringify(e)+")"),t.trigger(n.Events.ERROR,{type:i.ErrorTypes.MEDIA_ERROR,details:i.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:e.len}))},t._trySkipBufferHole=function(e){var t=this.config,o=this.hls,E=this.media;if(null===E)return 0;for(var _=E.currentTime,S=0,l=a.BufferHelper.getBuffered(E),I=0;I=S&&_a.startDate&&e.push(o),e}),[]).sort((function(e,t){return e.startDate.getTime()-t.startDate.getTime()}))[0];d&&(u=s(d.startDate,c),T=!0)}for(var N,m=Object.keys(a.attr),L=0;L.05&&this.forwardBufferLength>1){var T=Math.min(2,Math.max(1,n)),s=Math.round(2/(1+Math.exp(-.75*E-this.edgeStalled))*20)/20;e.playbackRate=Math.min(T,Math.max(1,s))}else 1!==e.playbackRate&&0!==e.playbackRate&&(e.playbackRate=1)}}}}},_.estimateLiveEdge=function(){var e=this.levelDetails;return null===e?null:e.edge+e.age},_.computeLatency=function(){var e=this.estimateLiveEdge();return null===e?null:e-this.currentTime},t=e,(o=[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var e=this.config,t=this.levelDetails;return void 0!==e.liveMaxLatencyDuration?e.liveMaxLatencyDuration:t?e.liveMaxLatencyDurationCount*t.targetduration:0}},{key:"targetLatency",get:function(){var e=this.levelDetails;if(null===e)return null;var t=e.holdBack,o=e.partHoldBack,a=e.targetduration,i=this.config,n=i.liveSyncDuration,r=i.liveSyncDurationCount,E=i.lowLatencyMode,_=this.hls.userConfig,T=E&&o||t;(_.liveSyncDuration||_.liveSyncDurationCount||0===T)&&(T=void 0!==n?n:r*a);var s=a;return T+Math.min(1*this.stallCount,s)}},{key:"liveSyncPosition",get:function(){var e=this.estimateLiveEdge(),t=this.targetLatency,o=this.levelDetails;if(null===e||null===t||null===o)return null;var a=o.edge,i=e-t-this.edgeStalled,n=a-o.totalduration,r=a-(this.config.lowLatencyMode&&o.partTarget||o.targetduration);return Math.min(Math.max(n,i),r)}},{key:"drift",get:function(){var e=this.levelDetails;return null===e?1:e.drift}},{key:"edgeStalled",get:function(){var e=this.levelDetails;if(null===e)return 0;var t=3*(this.config.lowLatencyMode&&e.partTarget||e.targetduration);return Math.max(e.age-t,0)}},{key:"forwardBufferLength",get:function(){var e=this.media,t=this.levelDetails;if(!e||!t)return 0;var o=e.buffered.length;return(o?e.buffered.end(o-1):t.edge)-this.currentTime}}])&&r(t.prototype,o),E&&r(t,E),Object.defineProperty(t,"prototype",{writable:!1}),e})()},"./src/controller/level-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return u}));var a=o("./src/types/level.ts"),i=o("./src/events.ts"),n=o("./src/errors.ts"),r=o("./src/utils/codecs.ts"),E=o("./src/controller/level-helper.ts"),_=o("./src/controller/base-playlist-controller.ts"),T=o("./src/types/loader.ts");function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t0){o=T[0].bitrate,T.sort((function(e,t){return e.bitrate-t.bitrate})),this._levels=T;for(var c=0;cthis.hls.config.fragLoadingMaxRetry&&(E=S)):E=S}break;case n.ErrorDetails.LEVEL_LOAD_ERROR:case n.ErrorDetails.LEVEL_LOAD_TIMEOUT:i&&(i.deliveryDirectives&&(s=!1),E=i.level),_=!0;break;case n.ErrorDetails.REMUX_ALLOC_ERROR:E=null!=(a=o.level)?a:this.currentLevelIndex,_=!0}void 0!==E&&this.recoverLevel(o,E,_,s)}}},c.recoverLevel=function(e,t,o,a){var i=e.details,n=this._levels[t];if(n.loadError++,o){if(!this.retryLoadingOrFail(e))return void(this.currentLevelIndex=-1);e.levelRetry=!0}if(a){var r=n.url.length;if(r>1&&n.loadError-1&&this.currentLevelIndex!==E&&(this.warn(i+": switch to "+E),e.levelRetry=!0,this.hls.nextAutoLevel=E)}}},c.redundantFailover=function(e){var t=this._levels[e],o=t.url.length;if(o>1){var a=(t.urlId+1)%o;this.warn("Switching to redundant URL-id "+a),this._levels.forEach((function(e){e.urlId=a})),this.level=e}},c.onFragLoaded=function(e,t){var o=t.frag;if(void 0!==o&&o.type===T.PlaylistLevelType.MAIN){var a=this._levels[o.level];void 0!==a&&(a.fragmentError=0,a.loadError=0)}},c.onLevelLoaded=function(e,t){var o,a,i=t.level,n=t.details,r=this._levels[i];if(!r)return this.warn("Invalid level index "+i),void(null!==(a=t.deliveryDirectives)&&void 0!==a&&a.skip&&(n.deltaUpdateFailed=!0));i===this.currentLevelIndex?(0===r.fragmentError&&(r.loadError=0,this.retryCount=0),this.playlistLoaded(i,t,r.details)):null!==(o=t.deliveryDirectives)&&void 0!==o&&o.skip&&(n.deltaUpdateFailed=!0)},c.onAudioTrackSwitched=function(e,t){var o=this.hls.levels[this.currentLevelIndex];if(o&&o.audioGroupIds){for(var a=-1,i=this.hls.audioTracks[t.id].groupId,n=0;n0){var a=o.urlId,n=o.url[a];if(e)try{n=e.addDirectives(n)}catch(e){this.warn("Could not construct new URL with HLS Delivery Directives: "+e)}this.log("Attempt loading level index "+t+(e?" at sn "+e.msn+" part "+e.part:"")+" with URL-id "+a+" "+n),this.clearTimer(),this.hls.trigger(i.Events.LEVEL_LOADING,{url:n,level:t,id:a,deliveryDirectives:e||null})}},c.removeLevel=function(e,t){var o=function(e,o){return o!==t},a=this._levels.filter((function(a,i){return i!==e||a.url.length>1&&void 0!==t&&(a.url=a.url.filter(o),a.audioGroupIds&&(a.audioGroupIds=a.audioGroupIds.filter(o)),a.textGroupIds&&(a.textGroupIds=a.textGroupIds.filter(o)),a.urlId=0,!0)})).map((function(e,t){var o=e.details;return null!=o&&o.fragments&&o.fragments.forEach((function(e){e.level=t})),e}));this._levels=a,this.hls.trigger(i.Events.LEVELS_UPDATED,{levels:a})},u=_,(A=[{key:"levels",get:function(){return 0===this._levels.length?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(e){var t,o=this._levels;if(0!==o.length&&(this.currentLevelIndex!==e||null===(t=o[e])||void 0===t||!t.details)){if(e<0||e>=o.length){var a=e<0;if(this.hls.trigger(i.Events.ERROR,{type:n.ErrorTypes.OTHER_ERROR,details:n.ErrorDetails.LEVEL_SWITCH_ERROR,level:e,fatal:a,reason:"invalid level idx"}),a)return;e=Math.min(e,o.length-1)}this.clearTimer();var r=this.currentLevelIndex,E=o[r],_=o[e];this.log("switching to level "+e+" from "+r),this.currentLevelIndex=e;var T=s({},_,{level:e,maxBitrate:_.maxBitrate,uri:_.uri,urlId:_.urlId});delete T._urlId,this.hls.trigger(i.Events.LEVEL_SWITCHING,T);var S=_.details;if(!S||S.live){var l=this.switchParams(_.uri,null==E?void 0:E.details);this.loadPlaylist(l)}}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(e){this.manualLevelIndex=e,void 0===this._startLevel&&(this._startLevel=e),-1!==e&&(this.level=e)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(e){this._firstLevel=e}},{key:"startLevel",get:function(){if(void 0===this._startLevel){var e=this.hls.config.startLevel;return void 0!==e?e:this._firstLevel}return this._startLevel},set:function(e){this._startLevel=e}},{key:"nextLoadLevel",get:function(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(e){this.level=e,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=e)}}])&&S(u.prototype,A),d&&S(u,d),Object.defineProperty(u,"prototype",{writable:!1}),_})(_.default)},"./src/controller/level-helper.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"addGroupId",(function(){return E})),o.d(t,"assignTrackIdsByGroup",(function(){return _})),o.d(t,"updatePTS",(function(){return T})),o.d(t,"updateFragPTSDTS",(function(){return S})),o.d(t,"mergeDetails",(function(){return l})),o.d(t,"mapPartIntersection",(function(){return I})),o.d(t,"mapFragmentIntersection",(function(){return u})),o.d(t,"adjustSliding",(function(){return A})),o.d(t,"addSliding",(function(){return d})),o.d(t,"computeReloadInterval",(function(){return c})),o.d(t,"getFragmentWithSN",(function(){return O})),o.d(t,"getPartWith",(function(){return R}));var a=o("./src/polyfills/number.ts"),i=o("./src/utils/logger.ts"),n=o("./src/loader/date-range.ts");function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;te.sn?(n=o-e.start,i=e):(n=e.start-o,i=t),i.duration!==n&&(i.duration=n)}else t.sn>e.sn?e.cc===t.cc&&e.minEndPTS?t.start=e.start+(e.minEndPTS-e.start):t.start=e.start+e.duration:t.start=Math.max(e.start-t.duration,0)}function S(e,t,o,n,r,E){n-o<=0&&(i.logger.warn("Fragment should have a positive duration",t),n=o+t.duration,E=r+t.duration);var _=o,T=n,S=t.startPTS,l=t.endPTS;if(Object(a.isFiniteNumber)(S)){var I=Math.abs(S-o);Object(a.isFiniteNumber)(t.deltaPTS)?t.deltaPTS=Math.max(I,t.deltaPTS):t.deltaPTS=I,_=Math.max(o,S),o=Math.min(o,S),r=Math.min(r,t.startDTS),T=Math.min(n,l),n=Math.max(n,l),E=Math.max(E,t.endDTS)}t.duration=n-o;var u=o-t.start;t.appendedPTS=n,t.start=t.startPTS=o,t.maxStartPTS=_,t.startDTS=r,t.endPTS=n,t.minEndPTS=T,t.endDTS=E;var A,d=t.sn;if(!e||de.endSN)return 0;var c=d-e.startSN,O=e.fragments;for(O[c]=t,A=c;A>0;A--)s(O[A],O[A-1]);for(A=c;A=0;_--){var T=E[_].initSegment;if(T){o=T;break}}e.fragmentHint&&delete e.fragmentHint.endPTS;var s,l,d,c,O,R=0;if(u(e,t,(function(e,i){e.relurl&&(R=e.cc-i.cc),Object(a.isFiniteNumber)(e.startPTS)&&Object(a.isFiniteNumber)(e.endPTS)&&(i.start=i.startPTS=e.startPTS,i.startDTS=e.startDTS,i.appendedPTS=e.appendedPTS,i.maxStartPTS=e.maxStartPTS,i.endPTS=e.endPTS,i.endDTS=e.endDTS,i.minEndPTS=e.minEndPTS,i.duration=e.endPTS-e.startPTS,i.duration&&(s=i),t.PTSKnown=t.alignedSliding=!0),i.elementaryStreams=e.elementaryStreams,i.loader=e.loader,i.stats=e.stats,i.urlId=e.urlId,e.initSegment&&(i.initSegment=e.initSegment,o=e.initSegment)})),o&&(t.fragmentHint?t.fragments.concat(t.fragmentHint):t.fragments).forEach((function(e){var t;e.initSegment&&e.initSegment.relurl!==(null===(t=o)||void 0===t?void 0:t.relurl)||(e.initSegment=o)})),t.skippedSegments)if(t.deltaUpdateFailed=t.fragments.some((function(e){return!e})),t.deltaUpdateFailed){i.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var N=t.skippedSegments;N--;)t.fragments.shift();t.startSN=t.fragments[0].sn,t.startCC=t.fragments[0].cc}else t.canSkipDateRanges&&(t.dateRanges=(l=e.dateRanges,d=t.dateRanges,c=t.recentlyRemovedDateranges,O=r({},l),c&&c.forEach((function(e){delete O[e]})),Object.keys(d).forEach((function(e){var t=new n.DateRange(d[e].attr,O[e]);t.isValid?O[e]=t:i.logger.warn('Ignoring invalid Playlist Delta Update DATERANGE tag: "'+JSON.stringify(d[e].attr)+'"')})),O));var m=t.fragments;if(R){i.logger.warn("discontinuity sliding from playlist, take drift into account");for(var L=0;L=a.length||d(t,a[o].start)}function d(e,t){if(t){for(var o=e.fragments,a=e.skippedSegments;a0&&n<3*a,E=t.loading.end-t.loading.start,_=e.availabilityDelay;if(!1===e.updated)if(r){var T=333*e.misses;o=Math.max(Math.min(i,2*E),T),e.availabilityDelay=(e.availabilityDelay||0)+o}else o=i;else r?(_=Math.min(_||a/2,n),e.availabilityDelay=_,o=_+a-n):o=a-E;return Math.round(o)}function O(e,t,o){if(!e||!e.details)return null;var a=e.details,i=a.fragments[t-a.startSN];return i||((i=a.fragmentHint)&&i.sn===t?i:t1?(a=0,this.bitrateTest=!0):a=o.nextAutoLevel),this.level=o.nextLoadLevel=a,this.loadedmetadata=!1}t>0&&-1===e&&(this.log("Override startPosition with lastCurrentTime @"+t.toFixed(3)),e=t),this.state=i.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()}else this._forceStartLoad=!0,this.state=i.State.STOPPED},m.stopLoad=function(){this._forceStartLoad=!1,e.prototype.stopLoad.call(this)},m.doTick=function(){switch(this.state){case i.State.IDLE:this.doTickIdle();break;case i.State.WAITING_LEVEL:var e,t=this.levels,o=this.level,a=null==t||null===(e=t[o])||void 0===e?void 0:e.details;if(a&&(!a.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(a))break;this.state=i.State.IDLE;break}break;case i.State.FRAG_LOADING_WAITING_RETRY:var n,r=self.performance.now(),E=this.retryDate;(!E||r>=E||null!==(n=this.media)&&void 0!==n&&n.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.level),this.state=i.State.IDLE)}this.onTickEnd()},m.onTickEnd=function(){e.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},m.doTickIdle=function(){var e,t,o=this.hls,a=this.levelLastLoaded,n=this.levels,E=this.media,S=o.config,l=o.nextLoadLevel;if(null!==a&&(E||!this.startFragRequested&&S.startFragPrefetch)&&(!this.altAudio||!this.audioOnly)&&n&&n[l]){var I=n[l];this.level=o.nextLoadLevel=l;var u=I.details;if(!u||this.state===i.State.WAITING_LEVEL||u.live&&this.levelLastLoaded!==l)this.state=i.State.WAITING_LEVEL;else{var A=this.getMainFwdBufferInfo();if(null!==A&&!(A.len>=this.getMaxBufferLength(I.maxBitrate))){if(this._streamEnded(A,u)){var d={};return this.altAudio&&(d.type="video"),this.hls.trigger(r.Events.BUFFER_EOS,d),void(this.state=i.State.ENDED)}this.backtrackFragment&&this.backtrackFragment.start>A.end&&(this.backtrackFragment=null);var c=this.backtrackFragment?this.backtrackFragment.start:A.end,O=this.getNextFragment(c,u);if(this.couldBacktrack&&!this.fragPrevious&&O&&"initSegment"!==O.sn&&this.fragmentTracker.getState(O)!==_.FragmentState.OK){var R,N=(null!=(R=this.backtrackFragment)?R:O).sn-u.startSN,m=u.fragments[N-1];m&&O.cc===m.cc&&(O=m,this.fragmentTracker.removeFragment(m))}else this.backtrackFragment&&A.len&&(this.backtrackFragment=null);if(O&&this.fragmentTracker.getState(O)===_.FragmentState.OK&&this.nextLoadPosition>c){var L=this.audioOnly&&!this.altAudio?s.ElementaryStreamTypes.AUDIO:s.ElementaryStreamTypes.VIDEO;E&&this.afterBufferFlushed(E,L,T.PlaylistLevelType.MAIN),O=this.getNextFragment(this.nextLoadPosition,u)}O&&(!O.initSegment||O.initSegment.data||this.bitrateTest||(O=O.initSegment),"identity"!==(null===(e=O.decryptdata)||void 0===e?void 0:e.keyFormat)||null!==(t=O.decryptdata)&&void 0!==t&&t.key?this.loadFragment(O,u,c):this.loadKey(O,u))}}}},m.loadFragment=function(t,o,a){var i,n=this.fragmentTracker.getState(t);this.fragCurrent=t,n===_.FragmentState.NOT_LOADED?"initSegment"===t.sn?this._loadInitSegment(t):this.bitrateTest?(this.log("Fragment "+t.sn+" of level "+t.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(t)):(this.startFragRequested=!0,e.prototype.loadFragment.call(this,t,o,a)):n===_.FragmentState.APPENDING?this.reduceMaxBufferLength(t.duration)&&this.fragmentTracker.removeFragment(t):0===(null===(i=this.media)||void 0===i?void 0:i.buffered.length)&&this.fragmentTracker.removeAllFragments()},m.getAppendedFrag=function(e){var t=this.fragmentTracker.getAppendedFrag(e,T.PlaylistLevelType.MAIN);return t&&"fragment"in t?t.fragment:t},m.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,T.PlaylistLevelType.MAIN)},m.followingBufferedFrag=function(e){return e?this.getBufferedFrag(e.end+.5):null},m.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},m.nextLevelSwitch=function(){var e=this.levels,t=this.media;if(null!=t&&t.readyState){var o,a=this.getAppendedFrag(t.currentTime);if(a&&a.start>1&&this.flushMainBuffer(0,a.start-1),!t.paused&&e){var i=e[this.hls.nextLoadLevel],n=this.fragLastKbps;o=n&&this.fragCurrent?this.fragCurrent.duration*i.maxBitrate/(1e3*n)+1:0}else o=0;var r=this.getBufferedFrag(t.currentTime+o);if(r){var E=this.followingBufferedFrag(r);if(E){this.abortCurrentFrag();var _=E.maxStartPTS?E.maxStartPTS:E.start,T=E.duration,s=Math.max(r.end,_+Math.min(Math.max(T-this.config.maxFragLookUpTolerance,.5*T),.75*T));this.flushMainBuffer(s,Number.POSITIVE_INFINITY)}}}},m.abortCurrentFrag=function(){var e=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,null!=e&&e.loader&&e.loader.abort(),this.state){case i.State.KEY_LOADING:case i.State.FRAG_LOADING:case i.State.FRAG_LOADING_WAITING_RETRY:case i.State.PARSING:case i.State.PARSED:this.state=i.State.IDLE}this.nextLoadPosition=this.getLoadPosition()},m.flushMainBuffer=function(t,o){e.prototype.flushMainBuffer.call(this,t,o,this.altAudio?"video":null)},m.onMediaAttached=function(t,o){e.prototype.onMediaAttached.call(this,t,o);var a=o.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),a.addEventListener("playing",this.onvplaying),a.addEventListener("seeked",this.onvseeked),this.gapController=new I.default(this.config,a,this.fragmentTracker,this.hls)},m.onMediaDetaching=function(){var t=this.media;t&&this.onvplaying&&this.onvseeked&&(t.removeEventListener("playing",this.onvplaying),t.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),e.prototype.onMediaDetaching.call(this)},m.onMediaPlaying=function(){this.tick()},m.onMediaSeeked=function(){var e=this.media,t=e?e.currentTime:null;Object(a.isFiniteNumber)(t)&&this.log("Media seeked to "+t.toFixed(3)),this.tick()},m.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(r.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null,this.backtrackFragment=null},m.onManifestParsed=function(e,t){var o,a=!1,i=!1;t.levels.forEach((function(e){(o=e.audioCodec)&&(-1!==o.indexOf("mp4a.40.2")&&(a=!0),-1!==o.indexOf("mp4a.40.5")&&(i=!0))})),this.audioCodecSwitch=a&&i&&!Object(n.changeTypeSupported)(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=t.levels,this.startFragRequested=!1},m.onLevelLoading=function(e,t){var o=this.levels;if(o&&this.state===i.State.IDLE){var a=o[t.level];(!a.details||a.details.live&&this.levelLastLoaded!==t.level||this.waitForCdnTuneIn(a.details))&&(this.state=i.State.WAITING_LEVEL)}},m.onLevelLoaded=function(e,t){var o,a=this.levels,n=t.level,E=t.details,_=E.totalduration;if(a){this.log("Level "+n+" loaded ["+E.startSN+","+E.endSN+"], cc ["+E.startCC+", "+E.endCC+"] duration:"+_);var T=this.fragCurrent;!T||this.state!==i.State.FRAG_LOADING&&this.state!==i.State.FRAG_LOADING_WAITING_RETRY||T.level!==t.level&&T.loader&&(this.state=i.State.IDLE,this.backtrackFragment=null,T.loader.abort());var s=a[n],S=0;if(E.live||null!==(o=s.details)&&void 0!==o&&o.live){if(E.fragments[0]||(E.deltaUpdateFailed=!0),E.deltaUpdateFailed)return;S=this.alignPlaylists(E,s.details)}if(s.details=E,this.levelLastLoaded=n,this.hls.trigger(r.Events.LEVEL_UPDATED,{details:E,level:n}),this.state===i.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(E))return;this.state=i.State.IDLE}this.startFragRequested?E.live&&this.synchronizeToLiveEdge(E):this.setStartPosition(E,S),this.tick()}else this.warn("Levels were reset while loading level "+n)},m._handleFragmentLoadProgress=function(e){var t,o=e.frag,a=e.part,i=e.payload,n=this.levels;if(n){var r=n[o.level],E=r.details;if(E){var _=r.videoCodec,s=E.PTSKnown||!E.live,I=null===(t=o.initSegment)||void 0===t?void 0:t.data,u=this._getAudioCodec(r),A=this.transmuxer=this.transmuxer||new S.default(this.hls,T.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),d=a?a.index:-1,c=-1!==d,O=new l.ChunkMetadata(o.level,o.sn,o.stats.chunkCount,i.byteLength,d,c),R=this.initPTS[o.cc];A.push(i,I,u,_,o,a,E.totalduration,s,O,R)}else this.warn("Dropping fragment "+o.sn+" of level "+o.level+" after level details were reset")}else this.warn("Levels were reset while fragment load was in progress. Fragment "+o.sn+" of level "+o.level+" will not be buffered")},m.onAudioTrackSwitching=function(e,t){var o=this.altAudio,a=!!t.url,i=t.id;if(!a){if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var n=this.fragCurrent;null!=n&&n.loader&&(this.log("Switching to main audio track, cancel main fragment load"),n.loader.abort()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var E=this.hls;o&&E.trigger(r.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),E.trigger(r.Events.AUDIO_TRACK_SWITCHED,{id:i})}},m.onAudioTrackSwitched=function(e,t){var o=t.id,a=!!this.hls.audioTracks[o].url;if(a){var i=this.videoBuffer;i&&this.mediaBuffer!==i&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=i)}this.altAudio=a,this.tick()},m.onBufferCreated=function(e,t){var o,a,i=t.tracks,n=!1;for(var r in i){var E=i[r];if("main"===E.id){if(a=r,o=E,"video"===r){var _=i[r];_&&(this.videoBuffer=_.buffer)}}else n=!0}n&&o?(this.log("Alternate track found, use "+a+".buffered to schedule main fragment loading"),this.mediaBuffer=o.buffer):this.mediaBuffer=this.media},m.onFragBuffered=function(e,t){var o=t.frag,a=t.part;if(!o||o.type===T.PlaylistLevelType.MAIN){if(this.fragContextChanged(o))return this.warn("Fragment "+o.sn+(a?" p: "+a.index:"")+" of level "+o.level+" finished buffering, but was aborted. state: "+this.state),void(this.state===i.State.PARSED&&(this.state=i.State.IDLE));var n=a?a.stats:o.stats;this.fragLastKbps=Math.round(8*n.total/(n.buffering.end-n.loading.first)),"initSegment"!==o.sn&&(this.fragPrevious=o),this.fragBufferedComplete(o,a)}},m.onError=function(e,t){switch(t.details){case u.ErrorDetails.FRAG_LOAD_ERROR:case u.ErrorDetails.FRAG_LOAD_TIMEOUT:case u.ErrorDetails.KEY_LOAD_ERROR:case u.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(T.PlaylistLevelType.MAIN,t);break;case u.ErrorDetails.LEVEL_LOAD_ERROR:case u.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==i.State.ERROR&&(t.fatal?(this.warn(""+t.details),this.state=i.State.ERROR):t.levelRetry||this.state!==i.State.WAITING_LEVEL||(this.state=i.State.IDLE));break;case u.ErrorDetails.BUFFER_FULL_ERROR:if("main"===t.parent&&(this.state===i.State.PARSING||this.state===i.State.PARSED)){var o=!0,a=this.getFwdBufferInfo(this.media,T.PlaylistLevelType.MAIN);if(a&&a.len>.5&&(o=!this.reduceMaxBufferLength(a.len)),o)this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch();else{var n=this.fragCurrent;this.abortCurrentFrag(),n&&(this.flushMainBuffer(n.start,Number.POSITIVE_INFINITY),this.nextLoadPosition=n.start)}this.resetTransmuxer(),this.resetLoadingState()}}},m.checkBuffer=function(){var e=this.media,t=this.gapController;if(e&&t&&e.readyState){if(this.loadedmetadata||!E.BufferHelper.getBuffered(e).length){var o=this.state!==i.State.IDLE?this.fragCurrent:null;t.poll(this.lastCurrentTime,o)}this.lastCurrentTime=e.currentTime}},m.onFragLoadEmergencyAborted=function(){this.state=i.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},m.onBufferFlushed=function(e,t){var o=t.type;if(o!==s.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var a=(o===s.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(a,o,T.PlaylistLevelType.MAIN)}},m.onLevelsUpdated=function(e,t){this.levels=t.levels},m.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},m.seekToStartPos=function(){var e=this.media;if(e){var t=e.currentTime,o=this.startPosition;if(o>=0&&t0&&(i1&&!1===e.seeking){var o=e.currentTime;if(E.BufferHelper.isBuffered(e,o)?t=this.getAppendedFrag(o):E.BufferHelper.isBuffered(e,o+.1)&&(t=this.getAppendedFrag(o+.1)),t){this.backtrackFragment=null;var a=this.fragPlaying,i=t.level;a&&t.sn===a.sn&&a.level===i&&t.urlId===a.urlId||(this.hls.trigger(r.Events.FRAG_CHANGED,{frag:t}),a&&a.level===i||this.hls.trigger(r.Events.LEVEL_SWITCHED,{level:i}),this.fragPlaying=t)}}},O=c,(R=[{key:"nextLevel",get:function(){var e=this.nextBufferedFrag;return e?e.level:-1}},{key:"currentFrag",get:function(){var e=this.media;return e?this.fragPlaying||this.getAppendedFrag(e.currentTime):null}},{key:"currentProgramDateTime",get:function(){var e=this.media;if(e){var t=e.currentTime,o=this.currentFrag;if(o&&Object(a.isFiniteNumber)(t)&&Object(a.isFiniteNumber)(o.programDateTime)){var i=o.programDateTime+1e3*(t-o.start);return new Date(i)}}return null}},{key:"currentLevel",get:function(){var e=this.currentFrag;return e?e.level:-1}},{key:"nextBufferedFrag",get:function(){var e=this.currentFrag;return e?this.followingBufferedFrag(e):null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}])&&A(O.prototype,R),N&&A(O,N),Object.defineProperty(O,"prototype",{writable:!1}),c})(i.default)},"./src/controller/subtitle-stream-controller.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"SubtitleStreamController",(function(){return u}));var a=o("./src/events.ts"),i=o("./src/utils/buffer-helper.ts"),n=o("./src/controller/fragment-finders.ts"),r=o("./src/utils/discontinuities.ts"),E=o("./src/controller/level-helper.ts"),_=o("./src/controller/fragment-tracker.ts"),T=o("./src/controller/base-stream-controller.ts"),s=o("./src/types/loader.ts"),S=o("./src/types/level.ts");function l(e,t){for(var o=0;o=i[E].start&&r<=i[E].end){n=i[E];break}var _=o.start+o.duration;n?n.end=_:(n={start:r,end:_},i.push(n)),this.fragmentTracker.fragBuffered(o)}}},R.onBufferFlushing=function(e,t){var o=t.startOffset,a=t.endOffset;if(0===o&&a!==Number.POSITIVE_INFINITY){var i=this.currentTrackId,n=this.levels;if(!n.length||!n[i]||!n[i].details)return;var r=a-n[i].details.targetduration;if(r<=0)return;t.endOffsetSubtitles=Math.max(0,r),this.tracksBuffered.forEach((function(e){for(var t=0;t=s.length||i!==_)&&S){if(this.mediaBuffer=this.mediaBufferTimeRanges,a.live||null!==(o=S.details)&&void 0!==o&&o.live){var l=this.mainDetails;if(a.deltaUpdateFailed||!l)return;var I=l.fragments[0];S.details?0===this.alignPlaylists(a,S.details)&&I&&Object(E.addSliding)(a,I.start):a.hasProgramDateTime&&l.hasProgramDateTime?Object(r.alignMediaPlaylistByPDT)(a,l):I&&Object(E.addSliding)(a,I.start)}S.details=a,this.levelLastLoaded=i,this.tick(),a.live&&!this.fragCurrent&&this.media&&this.state===T.State.IDLE&&(Object(n.findFragmentByPTS)(null,a.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),S.details=void 0))}}},R._handleFragmentLoadComplete=function(e){var t=e.frag,o=e.payload,i=t.decryptdata,n=this.hls;if(!this.fragContextChanged(t)&&o&&o.byteLength>0&&i&&i.key&&i.iv&&"AES-128"===i.method){var r=performance.now();this.decrypter.webCryptoDecrypt(new Uint8Array(o),i.key.buffer,i.iv.buffer).then((function(e){var o=performance.now();n.trigger(a.Events.FRAG_DECRYPTED,{frag:t,payload:e,stats:{tstart:r,tdecrypt:o}})}))}},R.doTick=function(){if(this.media){if(this.state===T.State.IDLE){var e=this.currentTrackId,t=this.levels;if(!t.length||!t[e]||!t[e].details)return;var o=t[e].details,a=o.targetduration,r=this.config,E=this.media,s=i.BufferHelper.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],E.currentTime-a,r.maxBufferHole),S=s.end;if(s.len>this.getMaxBufferLength()+a)return;console.assert(o,"Subtitle track details are defined on idle subtitle stream controller tick");var l,I=o.fragments,u=I.length,A=o.edge,d=this.fragPrevious;if(S>>=0)>a-1)throw new DOMException("Failed to execute '"+t+"' on 'TimeRanges': The index provided ("+o+") is greater than the maximum bound ("+a+")");return e[o][t]};this.buffered={get length(){return e.length},end:function(o){return t("end",o,e.length)},start:function(o){return t("start",o,e.length)}}}},"./src/controller/subtitle-track-controller.ts":function(e,t,o){"use strict";o.r(t);var a=o("./src/events.ts"),i=o("./src/utils/texttrack-utils.ts"),n=o("./src/controller/base-playlist-controller.ts"),r=o("./src/types/loader.ts");function E(e,t){for(var o=0;o-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange))},I.pollTrackChange=function(e){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,e)},I.onMediaDetaching=function(){this.media&&(self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||this.media.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId),s(this.media.textTracks).forEach((function(e){Object(i.clearCurrentCues)(e)})),this.subtitleTrack=-1,this.media=null)},I.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},I.onManifestParsed=function(e,t){this.tracks=t.subtitleTracks},I.onSubtitleTrackLoaded=function(e,t){var o=t.id,a=t.details,i=this.trackId,n=this.tracksInGroup[i];if(n){var r=n.details;n.details=t.details,this.log("subtitle track "+o+" loaded ["+a.startSN+"-"+a.endSN+"]"),o===this.trackId&&(this.retryCount=0,this.playlistLoaded(o,t,r))}else this.warn("Invalid subtitle track id "+o)},I.onLevelLoading=function(e,t){this.switchLevel(t.level)},I.onLevelSwitching=function(e,t){this.switchLevel(t.level)},I.switchLevel=function(e){var t=this.hls.levels[e];if(null!=t&&t.textGroupIds){var o=t.textGroupIds[t.urlId];if(this.groupId!==o){var i=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,n=this.tracks.filter((function(e){return!o||e.groupId===o}));this.tracksInGroup=n;var r=this.findTrackId(null==i?void 0:i.name)||this.findTrackId();this.groupId=o;var E={subtitleTracks:n};this.log("Updating subtitle tracks, "+n.length+' track(s) found in "'+o+'" group-id'),this.hls.trigger(a.Events.SUBTITLE_TRACKS_UPDATED,E),-1!==r&&this.setSubtitleTrack(r,i)}}},I.findTrackId=function(e){for(var t=this.tracksInGroup,o=0;o=i.length)){this.clearTimer();var n=i[e];if(this.log("Switching to subtitle track "+e),this.trackId=e,n){var r=n.id,E=n.groupId,_=void 0===E?"":E,T=n.name,s=n.type,S=n.url;this.hls.trigger(a.Events.SUBTITLE_TRACK_SWITCH,{id:r,groupId:_,name:T,type:s,url:S});var l=this.switchParams(n.url,null==t?void 0:t.details);this.loadPlaylist(l)}else this.hls.trigger(a.Events.SUBTITLE_TRACK_SWITCH,{id:e})}}else this.queuedDefaultTrack=e},I.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){for(var e=-1,t=s(this.media.textTracks),o=0;o-1&&this.toggleTrackModes(this.trackId)}},{key:"subtitleTracks",get:function(){return this.tracksInGroup}},{key:"subtitleTrack",get:function(){return this.trackId},set:function(e){this.selectDefaultTrack=!1;var t=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0;this.setSubtitleTrack(e,t)}}])&&E(T.prototype,S),l&&E(T,l),Object.defineProperty(T,"prototype",{writable:!1}),n})(n.default);function s(e){for(var t=[],o=0;o=0&&(l[0]=Math.min(l[0],t),l[1]=Math.max(l[1],o),s=!0,I/(o-t)>.5))return}if(s||n.push([t,o]),this.config.renderTextTracksNatively){var u=this.captionsTracks[e];this.Cues.newCue(u,t,o,a)}else{var A=this.Cues.newCue(null,t,o,a);this.hls.trigger(i.Events.CUES_PARSED,{type:"captions",cues:A,track:e})}},t.onInitPtsFound=function(e,t){var o=this,a=t.frag,n=t.id,r=t.initPTS,E=t.timescale,_=this.unparsedVttFrags;"main"===n&&(this.initPTS[a.cc]=r,this.timescale[a.cc]=E),_.length&&(this.unparsedVttFrags=[],_.forEach((function(e){o.onFragLoaded(i.Events.FRAG_LOADED,e)})))},t.getExistingTrack=function(e){var t=this.media;if(t)for(var o=0;o>>8^255&d^99,e[I]=d,t[d]=I;var c=l[I],O=l[c],R=l[O],N=257*l[d]^16843008*d;a[I]=N<<24|N>>>8,i[I]=N<<16|N>>>16,n[I]=N<<8|N>>>24,r[I]=N,N=16843009*R^65537*O^257*c^16843008*I,_[d]=N<<24|N>>>8,T[d]=N<<16|N>>>16,s[d]=N<<8|N>>>24,S[d]=N,I?(I=c^l[l[l[R^c]]],u^=l[l[u]]):I=u=1}},t.expandKey=function(e){for(var t=this.uint8ArrayToUint32Array_(e),o=!0,a=0;a>>6);var u=(60&t[o+2])>>>2;if(!(u>I.length-1))return T=(1&t[o+2])<<2,T|=(192&t[o+3])>>>6,a.logger.log("manifest codec:"+r+", ADTS type:"+E+", samplingIndex:"+u),/firefox/i.test(S)?u>=6?(E=5,s=new Array(4),_=u-3):(E=2,s=new Array(2),_=u):-1!==S.indexOf("android")?(E=2,s=new Array(2),_=u):(E=5,s=new Array(4),r&&(-1!==r.indexOf("mp4a.40.29")||-1!==r.indexOf("mp4a.40.5"))||!r&&u>=6?_=u-3:((r&&-1!==r.indexOf("mp4a.40.2")&&(u>=6&&1===T||/vivaldi/i.test(S))||!r&&1===T)&&(E=2,s=new Array(2)),_=u)),s[0]=E<<3,s[0]|=(14&u)>>1,s[1]|=(1&u)<<7,s[1]|=T<<3,5===E&&(s[1]|=(14&_)>>1,s[2]=(1&_)<<7,s[2]|=8,s[3]=0),{config:s,samplerate:I[u],channelCount:T,codec:"mp4a.40."+E,manifestCodec:l};e.trigger(n.Events.ERROR,{type:i.ErrorTypes.MEDIA_ERROR,details:i.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+u})}function E(e,t){return 255===e[t]&&240==(246&e[t+1])}function _(e,t){return 1&e[t+1]?7:9}function T(e,t){return(3&e[t+3])<<11|e[t+4]<<3|(224&e[t+5])>>>5}function s(e,t){return t+5=e.length)return!1;var a=T(e,t);if(a<=o)return!1;var i=t+a;return i===e.length||S(e,i)}return!1}function u(e,t,o,i,n){if(!e.samplerate){var E=r(t,o,i,n);if(!E)return;e.config=E.config,e.samplerate=E.samplerate,e.channelCount=E.channelCount,e.codec=E.codec,e.manifestCodec=E.manifestCodec,a.logger.log("parsed codec:"+e.codec+", rate:"+E.samplerate+", channels:"+E.channelCount)}}function A(e){return 9216e4/e}function d(e,t){var o=_(e,t);if(t+o<=e.length){var a=T(e,t)-o;if(a>0)return{headerLength:o,frameLength:a}}}function c(e,t,o,a,i){var n,r=a+i*A(e.samplerate),E=d(t,o);if(E){var _=E.frameLength,T=E.headerLength,s=T+_,S=Math.max(0,o+s-t.length);S?(n=new Uint8Array(s-T)).set(t.subarray(o+T,t.length),0):n=t.subarray(o+T,o+s);var l={unit:n,pts:r};return S||e.samples.push(l),{sample:l,length:s,missing:S}}var I=t.length-o;return(n=new Uint8Array(I)).set(t.subarray(o,t.length),0),{sample:{unit:n,pts:r},length:I,missing:-1}}},"./src/demux/base-audio-demuxer.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"initPTSFn",(function(){return s}));var a=o("./src/polyfills/number.ts"),i=o("./src/demux/id3.ts"),n=o("./src/types/demuxer.ts"),r=o("./src/demux/dummy-demuxed-track.ts"),E=o("./src/utils/mp4-tools.ts"),_=o("./src/utils/typed-array.ts"),T=(function(){function e(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null}var t=e.prototype;return t.resetInitSegment=function(e,t,o,a){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},t.resetTimeStamp=function(e){this.initPTS=e,this.resetContiguity()},t.resetContiguity=function(){this.basePTS=null,this.frameIndex=0},t.canParse=function(e,t){return!1},t.appendFrame=function(e,t,o){},t.demux=function(e,t){this.cachedData&&(e=Object(E.appendUint8Array)(this.cachedData,e),this.cachedData=null);var o,T,S=i.getID3Data(e,0),l=S?S.length:0,I=this._audioTrack,u=this._id3Track,A=S?i.getTimeStamp(S):void 0,d=e.length;for((null===this.basePTS||0===this.frameIndex&&Object(a.isFiniteNumber)(A))&&(this.basePTS=s(A,t,this.initPTS)),S&&S.length>0&&u.samples.push({pts:this.basePTS,dts:this.basePTS,data:S,type:n.MetadataSchema.audioId3}),T=this.basePTS;le?(this.word<<=e,this.bitsAvailable-=e):(e-=this.bitsAvailable,e-=(t=e>>3)>>3,this.bytesAvailable-=t,this.loadWord(),this.word<<=e,this.bitsAvailable-=e)},t.readBits=function(e){var t=Math.min(this.bitsAvailable,e),o=this.word>>>32-t;return e>32&&a.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=t,this.bitsAvailable>0?this.word<<=t:this.bytesAvailable>0&&this.loadWord(),(t=e-t)>0&&this.bitsAvailable?o<>>e))return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()},t.skipUEG=function(){this.skipBits(1+this.skipLZ())},t.skipEG=function(){this.skipBits(1+this.skipLZ())},t.readUEG=function(){var e=this.skipLZ();return this.readBits(e+1)-1},t.readEG=function(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)},t.readBoolean=function(){return 1===this.readBits(1)},t.readUByte=function(){return this.readBits(8)},t.readUShort=function(){return this.readBits(16)},t.readUInt=function(){return this.readBits(32)},t.skipScalingList=function(e){for(var t=8,o=8,a=0;a0)return e.subarray(o,o+a)},E=function(e,t){var o=0;return o=(127&e[t])<<21,o|=(127&e[t+1])<<14,o|=(127&e[t+2])<<7,o|=127&e[t+3]},_=function(e,t){return i(e,t)&&E(e,t+6)+10<=e.length-t},T=function(e){for(var t=l(e),o=0;o>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:T+=String.fromCharCode(n);break;case 12:case 13:r=e[s++],T+=String.fromCharCode((31&n)<<6|63&r);break;case 14:r=e[s++],E=e[s++],T+=String.fromCharCode((15&n)<<12|(63&r)<<6|(63&E)<<0)}}return T},R={decodeTextFrame:A};function N(){return a||void 0===self.TextDecoder||(a=new self.TextDecoder("utf-8")),a}},"./src/demux/mp3demuxer.ts":function(e,t,o){"use strict";o.r(t);var a=o("./src/demux/base-audio-demuxer.ts"),i=o("./src/demux/id3.ts"),n=o("./src/utils/logger.ts"),r=o("./src/demux/mpegaudio.ts");function E(e,t){return E=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},E(e,t)}var _=(function(e){var t,o;function a(){return e.apply(this,arguments)||this}o=e,(t=a).prototype=Object.create(o.prototype),t.prototype.constructor=t,E(t,o);var _=a.prototype;return _.resetInitSegment=function(t,o,a,i){e.prototype.resetInitSegment.call(this,t,o,a,i),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:o,duration:i,inputTimeScale:9e4,dropped:0}},a.probe=function(e){if(!e)return!1;for(var t=(i.getID3Data(e,0)||[]).length,o=e.length;t16384?e.subarray(0,16384):e,Object(n.findBox)(e,["moof"]).length>0},t.demux=function(e,t){this.timeOffset=t;var o=e,a=this.videoTrack,i=this.txtTrack;if(this.config.progressive){this.remainderData&&(o=Object(n.appendUint8Array)(this.remainderData,e));var r=Object(n.segmentValidRange)(o);this.remainderData=r.remainder,a.samples=r.valid||new Uint8Array}else a.samples=o;var E=this.extractID3Track(a,t);return i.samples=Object(n.parseSamples)(t,a),{videoTrack:a,audioTrack:this.audioTrack,id3Track:E,textTrack:this.txtTrack}},t.flush=function(){var e=this.timeOffset,t=this.videoTrack,o=this.txtTrack;t.samples=this.remainderData||new Uint8Array,this.remainderData=null;var a=this.extractID3Track(t,this.timeOffset);return o.samples=Object(n.parseSamples)(e,t),{videoTrack:t,audioTrack:Object(r.dummyTrack)(),id3Track:a,textTrack:Object(r.dummyTrack)()}},t.extractID3Track=function(e,t){var o=this.id3Track;if(e.samples.length){var r=Object(n.findBox)(e.samples,["emsg"]);r&&r.forEach((function(e){var r=Object(n.parseEmsg)(e);if(E.test(r.schemeIdUri)){var _=Object(a.isFiniteNumber)(r.presentationTime)?r.presentationTime/r.timeScale:t+r.presentationTimeDelta/r.timeScale,T=r.payload;o.samples.push({data:T,len:T.byteLength,dts:_,pts:_,type:i.MetadataSchema.emsg})}}))}return o},t.demuxSampleAes=function(e,t,o){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},t.destroy=function(){},e})();t.default=_},"./src/demux/mpegaudio.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"appendFrame",(function(){return _})),o.d(t,"parseHeader",(function(){return T})),o.d(t,"isHeaderPattern",(function(){return s})),o.d(t,"isHeader",(function(){return S})),o.d(t,"canParse",(function(){return l})),o.d(t,"probe",(function(){return I}));var a=null,i=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],n=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],r=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],E=[0,1,1,4];function _(e,t,o,a,i){if(!(o+24>t.length)){var n=T(t,o);if(n&&o+n.frameLength<=t.length){var r=a+i*(9e4*n.samplesPerFrame/n.sampleRate),E={unit:t.subarray(o,o+n.frameLength),pts:r,dts:r};return e.config=[],e.channelCount=n.channelCount,e.samplerate=n.sampleRate,e.samples.push(E),{sample:E,length:n.frameLength,missing:0}}}}function T(e,t){var o=e[t+1]>>3&3,_=e[t+1]>>1&3,T=e[t+2]>>4&15,s=e[t+2]>>2&3;if(1!==o&&0!==T&&15!==T&&3!==s){var S=e[t+2]>>1&1,l=e[t+3]>>6,I=1e3*i[14*(3===o?3-_:3===_?3:4)+T-1],u=n[3*(3===o?0:2===o?1:2)+s],A=3===l?1:2,d=r[o][_],c=E[_],O=8*d*c,R=Math.floor(d*I/u+S)*c;if(null===a){var N=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);a=N?parseInt(N[1]):0}return!!a&&a<=87&&2===_&&I>=224e3&&0===l&&(e[t+3]=128|e[t+3]),{sampleRate:u,channelCount:A,frameLength:R,samplesPerFrame:O}}}function s(e,t){return 255===e[t]&&224==(224&e[t+1])&&0!=(6&e[t+1])}function S(e,t){return t+1=e.length)return void o();if(!(e[t].unit.length<32)){var a=this.decrypter.isSync();if(this.decryptAacSample(e,t,o,a),!a)return}}},t.getAvcEncryptedData=function(e){for(var t=16*Math.floor((e.length-48)/160)+16,o=new Int8Array(t),a=0,i=32;i=e.length)return void a();for(var i=e[t].units;!(o>=i.length);o++){var n=i[o];if(!(n.data.length<=48||1!==n.type&&5!==n.type)){var r=this.decrypter.isSync();if(this.decryptAvcSample(e,t,o,a,n,r),!r)return}}}},e})();t.default=n},"./src/demux/transmuxer-interface.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return S}));var a=o("./node_modules/webworkify-webpack/index.js"),i=o("./src/events.ts"),n=o("./src/demux/transmuxer.ts"),r=o("./src/utils/logger.ts"),E=o("./src/errors.ts"),_=o("./src/utils/mediasource-helper.ts"),T=o("./node_modules/eventemitter3/index.js"),s=Object(_.getMediaSource)()||{isTypeSupported:function(){return!1}},S=(function(){function e(e,t,o,_){var S=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=e,this.id=t,this.onTransmuxComplete=o,this.onFlush=_;var l=e.config,I=function(t,o){(o=o||{}).frag=S.frag,o.id=S.id,e.trigger(t,o)};this.observer=new T.EventEmitter,this.observer.on(i.Events.FRAG_DECRYPTED,I),this.observer.on(i.Events.ERROR,I);var u={mp4:s.isTypeSupported("video/mp4"),mpeg:s.isTypeSupported("audio/mpeg"),mp3:s.isTypeSupported('audio/mp4; codecs="mp3"')},A=navigator.vendor;if(l.enableWorker&&"undefined"!=typeof Worker){var d;r.logger.log("demuxing in webworker");try{d=this.worker=a("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),d.addEventListener("message",this.onwmsg),d.onerror=function(t){e.trigger(i.Events.ERROR,{type:E.ErrorTypes.OTHER_ERROR,details:E.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(t.message+" ("+t.filename+":"+t.lineno+")")})},d.postMessage({cmd:"init",typeSupported:u,vendor:A,id:t,config:JSON.stringify(l)})}catch(e){r.logger.warn("Error in worker:",e),r.logger.error("Error while initializing DemuxerWorker, fallback to inline"),d&&self.URL.revokeObjectURL(d.objectURL),this.transmuxer=new n.default(this.observer,u,l,A,t),this.worker=null}}else this.transmuxer=new n.default(this.observer,u,l,A,t)}var t=e.prototype;return t.destroy=function(){var e=this.worker;if(e)e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null,this.onwmsg=void 0;else{var t=this.transmuxer;t&&(t.destroy(),this.transmuxer=null)}var o=this.observer;o&&o.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null},t.push=function(e,t,o,a,i,E,_,T,s,S){var l,I,u=this;s.transmuxing.start=self.performance.now();var A=this.transmuxer,d=this.worker,c=E?E.start:i.start,O=i.decryptdata,R=this.frag,N=!(R&&i.cc===R.cc),m=!(R&&s.level===R.level),L=R?s.sn-R.sn:-1,p=this.part?s.part-this.part.index:-1,D=0===L&&s.id>1&&s.id===(null==R?void 0:R.stats.chunkCount),h=!m&&(1===L||0===L&&(1===p||D&&p<=0)),C=self.performance.now();(m||L||0===i.stats.parsing.start)&&(i.stats.parsing.start=C),!E||!p&&h||(E.stats.parsing.start=C);var f=!(R&&(null===(l=i.initSegment)||void 0===l?void 0:l.url)===(null===(I=R.initSegment)||void 0===I?void 0:I.url)),g=new n.TransmuxState(N,h,T,m,c,f);if(!h||N||f){r.logger.log("[transmuxer-interface, "+i.type+"]: Starting new transmux session for sn: "+s.sn+" p: "+s.part+" level: "+s.level+" id: "+s.id+"\n discontinuity: "+N+"\n trackSwitch: "+m+"\n contiguous: "+h+"\n accurateTimeOffset: "+T+"\n timeOffset: "+c+"\n initSegmentChange: "+f);var B=new n.TransmuxConfig(o,a,t,_,S);this.configureTransmuxer(B)}if(this.frag=i,this.part=E,d)d.postMessage({cmd:"demux",data:e,decryptdata:O,chunkMeta:s,state:g},e instanceof ArrayBuffer?[e]:[]);else if(A){var P=A.push(e,O,s,g);Object(n.isPromise)(P)?P.then((function(e){u.handleTransmuxComplete(e)})):this.handleTransmuxComplete(P)}},t.flush=function(e){var t=this;e.transmuxing.start=self.performance.now();var o=this.transmuxer,a=this.worker;if(a)a.postMessage({cmd:"flush",chunkMeta:e});else if(o){var i=o.flush(e);Object(n.isPromise)(i)?i.then((function(o){t.handleFlushResult(o,e)})):this.handleFlushResult(i,e)}},t.handleFlushResult=function(e,t){var o=this;e.forEach((function(e){o.handleTransmuxComplete(e)})),this.onFlush(t)},t.onWorkerMessage=function(e){var t=e.data,o=this.hls;switch(t.event){case"init":self.URL.revokeObjectURL(this.worker.objectURL);break;case"transmuxComplete":this.handleTransmuxComplete(t.data);break;case"flush":this.onFlush(t.data);break;case"workerLog":r.logger[t.data.logType]&&r.logger[t.data.logType](t.data.message);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.id=this.id,o.trigger(t.event,t.data)}},t.configureTransmuxer=function(e){var t=this.worker,o=this.transmuxer;t?t.postMessage({cmd:"configure",config:e}):o&&o.configure(e)},t.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},e})()},"./src/demux/transmuxer-worker.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return E}));var a=o("./src/demux/transmuxer.ts"),i=o("./src/events.ts"),n=o("./src/utils/logger.ts"),r=o("./node_modules/eventemitter3/index.js");function E(e){var t=new r.EventEmitter,o=function(t,o){e.postMessage({event:t,data:o})};t.on(i.Events.FRAG_DECRYPTED,o),t.on(i.Events.ERROR,o),e.addEventListener("message",(function(i){var r=i.data;switch(r.cmd){case"init":var E=JSON.parse(r.config);e.transmuxer=new a.default(t,r.typeSupported,E,r.vendor,r.id),Object(n.enableLogs)(E.debug),(function(){var e=function(e){n.logger[e]=function(t){o("workerLog",{logType:e,message:t})}};for(var t in n.logger)e(t)})(),o("init",null);break;case"configure":e.transmuxer.configure(r.config);break;case"demux":var T=e.transmuxer.push(r.data,r.decryptdata,r.chunkMeta,r.state);Object(a.isPromise)(T)?T.then((function(t){_(e,t)})):_(e,T);break;case"flush":var S=r.chunkMeta,l=e.transmuxer.flush(S);Object(a.isPromise)(l)?l.then((function(t){s(e,t,S)})):s(e,l,S)}}))}function _(e,t){if(!((o=t.remuxResult).audio||o.video||o.text||o.id3||o.initSegment))return!1;var o,a=[],i=t.remuxResult,n=i.audio,r=i.video;return n&&T(a,n),r&&T(a,r),e.postMessage({event:"transmuxComplete",data:t},a),!0}function T(e,t){t.data1&&e.push(t.data1.buffer),t.data2&&e.push(t.data2.buffer)}function s(e,t,o){t.reduce((function(t,o){return _(e,o)||t}),!1)||e.postMessage({event:"transmuxComplete",data:t[0]}),e.postMessage({event:"flush",data:o})}},"./src/demux/transmuxer.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return A})),o.d(t,"isPromise",(function(){return c})),o.d(t,"TransmuxConfig",(function(){return O})),o.d(t,"TransmuxState",(function(){return R}));var a,i=o("./src/events.ts"),n=o("./src/errors.ts"),r=o("./src/crypt/decrypter.ts"),E=o("./src/demux/aacdemuxer.ts"),_=o("./src/demux/mp4demuxer.ts"),T=o("./src/demux/tsdemuxer.ts"),s=o("./src/demux/mp3demuxer.ts"),S=o("./src/remux/mp4-remuxer.ts"),l=o("./src/remux/passthrough-remuxer.ts"),I=o("./src/utils/logger.ts");try{a=self.performance.now.bind(self.performance)}catch(e){I.logger.debug("Unable to use Performance API on this environment"),a=self.Date.now}var u=[{demux:T.default,remux:S.default},{demux:_.default,remux:l.default},{demux:E.default,remux:S.default},{demux:s.default,remux:S.default}],A=(function(){function e(e,t,o,a,i){this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=e,this.typeSupported=t,this.config=o,this.vendor=a,this.id=i}var t=e.prototype;return t.configure=function(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()},t.push=function(e,t,o,i){var n=this,r=o.transmuxing;r.executeStart=a();var E=new Uint8Array(e),_=this.config,T=this.currentTransmuxState,s=this.transmuxConfig;i&&(this.currentTransmuxState=i);var S=i||T,l=S.contiguous,I=S.discontinuity,u=S.trackSwitch,A=S.accurateTimeOffset,c=S.timeOffset,O=S.initSegmentChange,R=s.audioCodec,N=s.videoCodec,m=s.defaultInitPts,L=s.duration,p=s.initSegmentData;(I||u||O)&&this.resetInitSegment(p,R,N,L),(I||O)&&this.resetInitialTimestamp(m),l||this.resetContiguity();var D=(function(e,t){var o=null;return e.byteLength>0&&null!=t&&null!=t.key&&null!==t.iv&&null!=t.method&&(o=t),o})(E,t);if(D&&"AES-128"===D.method){var h=this.getDecrypter();if(!_.enableSoftwareAES)return this.decryptionPromise=h.webCryptoDecrypt(E,D.key.buffer,D.iv.buffer).then((function(e){var t=n.push(e,null,o);return n.decryptionPromise=null,t})),this.decryptionPromise;var C=h.softwareDecrypt(E,D.key.buffer,D.iv.buffer);if(!C)return r.executeEnd=a(),d(o);E=new Uint8Array(C)}this.needsProbing(E,I,u)&&this.configureTransmuxer(E,s);var f=this.transmux(E,D,c,A,o),g=this.currentTransmuxState;return g.contiguous=!0,g.discontinuity=!1,g.trackSwitch=!1,r.executeEnd=a(),f},t.flush=function(e){var t=this,o=e.transmuxing;o.executeStart=a();var r=this.decrypter,E=this.currentTransmuxState,_=this.decryptionPromise;if(_)return _.then((function(){return t.flush(e)}));var T=[],s=E.timeOffset;if(r){var S=r.flush();S&&T.push(this.push(S,null,e))}var l=this.demuxer,I=this.remuxer;if(!l||!I)return this.observer.emit(i.Events.ERROR,i.Events.ERROR,{type:n.ErrorTypes.MEDIA_ERROR,details:n.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),o.executeEnd=a(),[d(e)];var u=l.flush(s);return c(u)?u.then((function(o){return t.flushRemux(T,o,e),T})):(this.flushRemux(T,u,e),T)},t.flushRemux=function(e,t,o){var i=t.audioTrack,n=t.videoTrack,r=t.id3Track,E=t.textTrack,_=this.currentTransmuxState,T=_.accurateTimeOffset,s=_.timeOffset;I.logger.log("[transmuxer.ts]: Flushed fragment "+o.sn+(o.part>-1?" p: "+o.part:"")+" of level "+o.level);var S=this.remuxer.remux(i,n,r,E,s,T,!0,this.id);e.push({remuxResult:S,chunkMeta:o}),o.transmuxing.executeEnd=a()},t.resetInitialTimestamp=function(e){var t=this.demuxer,o=this.remuxer;t&&o&&(t.resetTimeStamp(e),o.resetTimeStamp(e))},t.resetContiguity=function(){var e=this.demuxer,t=this.remuxer;e&&t&&(e.resetContiguity(),t.resetNextTimestamp())},t.resetInitSegment=function(e,t,o,a){var i=this.demuxer,n=this.remuxer;i&&n&&(i.resetInitSegment(e,t,o,a),n.resetInitSegment(e,t,o))},t.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},t.transmux=function(e,t,o,a,i){return t&&"SAMPLE-AES"===t.method?this.transmuxSampleAes(e,t,o,a,i):this.transmuxUnencrypted(e,o,a,i)},t.transmuxUnencrypted=function(e,t,o,a){var i=this.demuxer.demux(e,t,!1,!this.config.progressive),n=i.audioTrack,r=i.videoTrack,E=i.id3Track,_=i.textTrack;return{remuxResult:this.remuxer.remux(n,r,E,_,t,o,!1,this.id),chunkMeta:a}},t.transmuxSampleAes=function(e,t,o,a,i){var n=this;return this.demuxer.demuxSampleAes(e,t,o).then((function(e){return{remuxResult:n.remuxer.remux(e.audioTrack,e.videoTrack,e.id3Track,e.textTrack,o,a,!1,n.id),chunkMeta:i}}))},t.configureTransmuxer=function(e,t){for(var o,a=this.config,i=this.observer,n=this.typeSupported,r=this.vendor,E=t.audioCodec,T=t.defaultInitPts,s=t.duration,S=t.initSegmentData,A=t.videoCodec,d=0,c=u.length;d>4>1){if((P=f+5+e[f+4])===f+188)continue}else P=f+4;switch(B){case I:g&&(u&&(i=c(u))&&this.parseAVCPES(n,l,i,!1),u={data:[],size:0}),u&&(u.data.push(e.subarray(P,f+188)),u.size+=f+188-P);break;case O:if(g){if(N&&(i=c(N)))switch(r.segmentCodec){case"aac":this.parseAACPES(r,i);break;case"mp3":this.parseMPEGPES(r,i)}N={data:[],size:0}}N&&(N.data.push(e.subarray(P,f+188)),N.size+=f+188-P);break;case R:g&&(m&&(i=c(m))&&this.parseID3PES(S,i),m={data:[],size:0}),m&&(m.data.push(e.subarray(P,f+188)),m.size+=f+188-P);break;case 0:g&&(P+=e[P]+1),D=this._pmtId=A(e,P);break;case D:g&&(P+=e[P]+1);var v=d(e,P,this.typeSupported,o);(I=v.avc)>0&&(n.pid=I),(O=v.audio)>0&&(r.pid=O,r.segmentCodec=v.segmentCodec),(R=v.id3)>0&&(S.pid=R),null===L||p||(T.logger.log("unknown PID '"+L+"' in TS found"),L=null),p=this.pmtParsed=!0;break;case 17:case 8191:break;default:L=B}}else C++;C>0&&this.observer.emit(E.Events.ERROR,E.Events.ERROR,{type:s.ErrorTypes.MEDIA_ERROR,details:s.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"Found "+C+" TS packet/s that do not start with 0x47"}),n.pesData=u,r.pesData=N,S.pesData=m;var y={audioTrack:r,videoTrack:n,id3Track:S,textTrack:l};return a&&this.extractRemainingSamples(y),y},t.flush=function(){var e,t=this.remainderData;return this.remainderData=null,e=t?this.demux(t,-1,!1,!0):{videoTrack:this._avcTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(e),this.sampleAes?this.decrypt(e,this.sampleAes):e},t.extractRemainingSamples=function(e){var t,o=e.audioTrack,a=e.videoTrack,i=e.id3Track,n=e.textTrack,r=a.pesData,E=o.pesData,_=i.pesData;if(r&&(t=c(r))?(this.parseAVCPES(a,n,t,!0),a.pesData=null):a.pesData=r,E&&(t=c(E))){switch(o.segmentCodec){case"aac":this.parseAACPES(o,t);break;case"mp3":this.parseMPEGPES(o,t)}o.pesData=null}else null!=E&&E.size&&T.logger.log("last AAC PES packet truncated,might overlap between fragments"),o.pesData=E;_&&(t=c(_))?(this.parseID3PES(i,t),i.pesData=null):i.pesData=_},t.demuxSampleAes=function(e,t,o){var a=this.demux(e,o,!0,!this.config.progressive),i=this.sampleAes=new r.default(this.observer,this.config,t);return this.decrypt(a,i)},t.decrypt=function(e,t){return new Promise((function(o){var a=e.audioTrack,i=e.videoTrack;a.samples&&"aac"===a.segmentCodec?t.decryptAacSamples(a.samples,0,(function(){i.samples?t.decryptAvcSamples(i.samples,0,0,(function(){o(e)})):o(e)})):i.samples&&t.decryptAvcSamples(i.samples,0,0,(function(){o(e)}))}))},t.destroy=function(){this._duration=0},t.parseAVCPES=function(e,t,o,a){var i,r=this,E=this.parseAVCNALu(e,o.data),T=this.avcSample,s=!1;o.data=null,T&&E.length&&!e.audFound&&(O(T,e),T=this.avcSample=u(!1,o.pts,o.dts,"")),E.forEach((function(a){switch(a.type){case 1:i=!0,T||(T=r.avcSample=u(!0,o.pts,o.dts,"")),T.frame=!0;var E=a.data;if(s&&E.length>4){var S=new n.default(E).readSliceType();2!==S&&4!==S&&7!==S&&9!==S||(T.key=!0)}break;case 5:i=!0,T||(T=r.avcSample=u(!0,o.pts,o.dts,"")),T.key=!0,T.frame=!0;break;case 6:i=!0,Object(_.parseSEIMessageFromNALu)(R(a.data),o.pts,t.samples);break;case 7:if(i=!0,s=!0,!e.sps){var l=new n.default(a.data).readSPS();e.width=l.width,e.height=l.height,e.pixelRatio=l.pixelRatio,e.sps=[a.data],e.duration=r._duration;for(var I=a.data.subarray(1,4),A="avc1.",d=0;d<3;d++){var c=I[d].toString(16);c.length<2&&(c="0"+c),A+=c}e.codec=A}break;case 8:i=!0,e.pps||(e.pps=[a.data]);break;case 9:i=!1,e.audFound=!0,T&&O(T,e),T=r.avcSample=u(!1,o.pts,o.dts,"");break;case 12:i=!0;break;default:i=!1,T&&(T.debug+="unknown NAL "+a.type+" ")}T&&i&&T.units.push(a)})),a&&T&&(O(T,e),this.avcSample=null)},t.getLastNalUnit=function(e){var t,o,a=this.avcSample;if(a&&0!==a.units.length||(a=e[e.length-1]),null!==(t=a)&&void 0!==t&&t.units){var i=a.units;o=i[i.length-1]}return o},t.parseAVCNALu=function(e,t){var o,a,i=t.byteLength,n=e.naluState||0,r=n,E=[],_=0,T=-1,s=0;for(-1===n&&(T=0,s=31&t[0],n=0,_=1);_=0){var S={data:t.subarray(T,_-n-1),type:s};E.push(S)}else{var l=this.getLastNalUnit(e.samples);if(l&&(r&&_<=4-r&&l.state&&(l.data=l.data.subarray(0,l.data.byteLength-r)),(a=_-n-1)>0)){var I=new Uint8Array(l.data.byteLength+a);I.set(l.data,0),I.set(t.subarray(0,a),l.data.byteLength),l.data=I,l.state=0}}_=0&&n>=0){var u={data:t.subarray(T,i),type:s,state:n};E.push(u)}if(0===E.length){var A=this.getLastNalUnit(e.samples);if(A){var d=new Uint8Array(A.data.byteLength+t.byteLength);d.set(A.data,0),d.set(t,A.data.byteLength),A.data=d}}return e.naluState=n,E},t.parseAACPES=function(e,t){var o,i,n,r,_,S=0,l=this.aacOverFlow,I=t.data;if(l){this.aacOverFlow=null;var u=l.missing,A=l.sample.unit.byteLength;if(-1===u){var d=new Uint8Array(A+I.byteLength);d.set(l.sample.unit,0),d.set(I,A),I=d}else{var c=A-u;l.sample.unit.set(I.subarray(0,u),c),e.samples.push(l.sample),S=l.missing}}for(o=S,i=I.length;o1;){var _=new Uint8Array(E[0].length+E[1].length);_.set(E[0]),_.set(E[1],E[0].length),E[0]=_,E.splice(1,1)}if(1===((t=E[0])[0]<<16)+(t[1]<<8)+t[2]){if((o=(t[4]<<8)+t[5])&&o>e.size-6)return null;var s=t[7];192&s&&(i=536870912*(14&t[9])+4194304*(255&t[10])+16384*(254&t[11])+128*(255&t[12])+(254&t[13])/2,64&s?i-(n=536870912*(14&t[14])+4194304*(255&t[15])+16384*(254&t[16])+128*(255&t[17])+(254&t[18])/2)>54e5&&(T.logger.warn(Math.round((i-n)/9e4)+"s delta between PTS and DTS, align them"),i=n):n=i);var S=(a=t[8])+9;if(e.size<=S)return null;e.size-=S;for(var l=new Uint8Array(e.size),I=0,u=E.length;IA){S-=A;continue}t=t.subarray(S),A-=S,S=0}l.set(t,r),r+=A}return o&&(o-=a+3),{data:l,pts:i,dts:n,len:o}}return null}function O(e,t){if(e.units.length&&e.frame){if(void 0===e.pts){var o=t.samples,a=o.length;if(!a)return void t.dropped++;var i=o[a-1];e.pts=i.pts,e.dts=i.dts}t.samples.push(e)}e.debug.length&&T.logger.log(e.pts+"/"+e.dts+":"+e.debug)}function R(e){for(var t=e.byteLength,o=[],a=1;a=t)return a;return 0}},{key:"maxAutoLevel",get:function(){var e=this.levels,t=this.autoLevelCapping;return-1===t&&e&&e.length?e.length-1:t}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}},{key:"playingDate",get:function(){return this.streamController.currentProgramDateTime}},{key:"audioTracks",get:function(){var e=this.audioTrackController;return e?e.audioTracks:[]}},{key:"audioTrack",get:function(){var e=this.audioTrackController;return e?e.audioTrack:-1},set:function(e){var t=this.audioTrackController;t&&(t.audioTrack=e)}},{key:"subtitleTracks",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTrack:-1},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var e=this.subtitleTrackController;return!!e&&e.subtitleDisplay},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(e){this.config.lowLatencyMode=e}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}])&&c(t.prototype,o),O&&c(t,O),Object.defineProperty(t,"prototype",{writable:!1}),e})();O.defaultConfig=void 0},"./src/is-supported.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"isSupported",(function(){return n})),o.d(t,"changeTypeSupported",(function(){return r}));var a=o("./src/utils/mediasource-helper.ts");function i(){return self.SourceBuffer||self.WebKitSourceBuffer}function n(){var e=Object(a.getMediaSource)();if(!e)return!1;var t=i(),o=e&&"function"==typeof e.isTypeSupported&&e.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),n=!t||t.prototype&&"function"==typeof t.prototype.appendBuffer&&"function"==typeof t.prototype.remove;return!!o&&!!n}function r(){var e,t=i();return"function"==typeof(null==t||null===(e=t.prototype)||void 0===e?void 0:e.changeType)}},"./src/loader/date-range.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"DateRangeAttribute",(function(){return a})),o.d(t,"DateRange",(function(){return T}));var a,i=o("./src/polyfills/number.ts"),n=o("./src/utils/attr-list.ts"),r=o("./src/utils/logger.ts");function E(){return E=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(!this.endOnNext||!!this.class)}}])&&_(t.prototype,o),T&&_(t,T),Object.defineProperty(t,"prototype",{writable:!1}),e})()},"./src/loader/fragment-loader.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return S})),o.d(t,"LoadError",(function(){return I}));var a=o("./src/polyfills/number.ts"),i=o("./src/errors.ts");function n(e){var t="function"==typeof Map?new Map:void 0;return n=function(e){if(null===e||(o=e,-1===Function.toString.call(o).indexOf("[native code]")))return e;var o;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,a)}function a(){return r(e,arguments,T(this).constructor)}return a.prototype=Object.create(e.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),_(a,e)},n(e)}function r(e,t,o){return r=E()?Reflect.construct.bind():function(e,t,o){var a=[null];a.push.apply(a,t);var i=new(Function.bind.apply(e,a));return o&&_(i,o.prototype),i},r.apply(null,arguments)}function E(){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 _(e,t){return _=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_(e,t)}function T(e){return T=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},T(e)}var s=Math.pow(2,17),S=(function(){function e(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}var t=e.prototype;return t.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},t.abort=function(){this.loader&&this.loader.abort()},t.load=function(e,t){var o=this,a=e.url;if(!a)return Promise.reject(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,networkDetails:null},"Fragment does not have a "+(a?"part list":"url")));this.abort();var n=this.config,r=n.fLoader,E=n.loader;return new Promise((function(a,_){o.loader&&o.loader.destroy();var T=o.loader=e.loader=r?new r(n):new E(n),S=l(e),u={timeout:n.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:n.fragLoadingMaxRetryTimeout,highWaterMark:"initSegment"===e.sn?1/0:s};e.stats=T.stats,T.load(S,u,{onSuccess:function(t,i,n,r){o.resetLoader(e,T),a({frag:e,part:null,payload:t.data,networkDetails:r})},onError:function(t,a,n){o.resetLoader(e,T),_(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:t,networkDetails:n}))},onAbort:function(t,a,n){o.resetLoader(e,T),_(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,networkDetails:n}))},onTimeout:function(t,a,n){o.resetLoader(e,T),_(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,networkDetails:n}))},onProgress:function(o,a,i,n){t&&t({frag:e,part:null,payload:i,networkDetails:n})}})}))},t.loadPart=function(e,t,o){var a=this;this.abort();var n=this.config,r=n.fLoader,E=n.loader;return new Promise((function(_,T){a.loader&&a.loader.destroy();var S=a.loader=e.loader=r?new r(n):new E(n),u=l(e,t),A={timeout:n.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:n.fragLoadingMaxRetryTimeout,highWaterMark:s};t.stats=S.stats,S.load(u,A,{onSuccess:function(i,n,r,E){a.resetLoader(e,S),a.updateStatsFromPart(e,t);var T={frag:e,part:t,payload:i.data,networkDetails:E};o(T),_(T)},onError:function(o,n,r){a.resetLoader(e,S),T(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:t,response:o,networkDetails:r}))},onAbort:function(o,n,r){e.stats.aborted=t.stats.aborted,a.resetLoader(e,S),T(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,part:t,networkDetails:r}))},onTimeout:function(o,n,r){a.resetLoader(e,S),T(new I({type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:t,networkDetails:r}))}})}))},t.updateStatsFromPart=function(e,t){var o=e.stats,a=t.stats,i=a.total;if(o.loaded+=a.loaded,i){var n=Math.round(e.duration/t.duration),r=Math.min(Math.round(o.loaded/i),n),E=(n-r)*Math.round(o.loaded/r);o.total=o.loaded+E}else o.total=Math.max(o.loaded,o.total);var _=o.loading,T=a.loading;_.start?_.first+=T.first-T.start:(_.start=T.start,_.first=T.first),_.end=T.end},t.resetLoader=function(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()},e})();function l(e,t){void 0===t&&(t=null);var o=t||e,i={frag:e,part:t,responseType:"arraybuffer",url:o.url,headers:{},rangeStart:0,rangeEnd:0},n=o.byteRangeStartOffset,r=o.byteRangeEndOffset;return Object(a.isFiniteNumber)(n)&&Object(a.isFiniteNumber)(r)&&(i.rangeStart=n,i.rangeEnd=r),i}var I=(function(e){var t,o;function a(t){for(var o,a=arguments.length,i=new Array(a>1?a-1:0),n=1;n>8*(15-o)&255;return t},o.setDecryptDataFromLevelKey=function(e,t){var o=e;return"AES-128"===(null==e?void 0:e.method)&&e.uri&&!e.iv&&((o=E.LevelKey.fromURI(e.uri)).method=e.method,o.iv=this.createInitializationVector(t),o.keyFormat="identity"),o},o.setElementaryStreamInfo=function(e,t,o,a,i,n){void 0===n&&(n=!1);var r=this.elementaryStreams,E=r[e];E?(E.startPTS=Math.min(E.startPTS,t),E.endPTS=Math.max(E.endPTS,o),E.startDTS=Math.min(E.startDTS,a),E.endDTS=Math.max(E.endDTS,i)):r[e]={startPTS:t,endPTS:o,startDTS:a,endDTS:i,partial:n}},o.clearElementaryStreamInfo=function(){var e=this.elementaryStreams;e[a.AUDIO]=null,e[a.VIDEO]=null,e[a.AUDIOVIDEO]=null},l(t,[{key:"decryptdata",get:function(){if(!this.levelkey&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkey){var e=this.sn;"number"!=typeof e&&(this.levelkey&&"AES-128"===this.levelkey.method&&!this.levelkey.iv&&r.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),e=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,e)}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(null===this.programDateTime)return null;if(!Object(i.isFiniteNumber)(this.programDateTime))return null;var e=Object(i.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*e}},{key:"encrypted",get:function(){var e;return!(null===(e=this.decryptdata)||void 0===e||!e.keyFormat||!this.decryptdata.uri)}}]),t})(I),A=(function(e){function t(t,o,a,i,n){var r;(r=e.call(this,a)||this).fragOffset=0,r.duration=0,r.gap=!1,r.independent=!1,r.relurl=void 0,r.fragment=void 0,r.index=void 0,r.stats=new _.LoadStats,r.duration=t.decimalFloatingPoint("DURATION"),r.gap=t.bool("GAP"),r.independent=t.bool("INDEPENDENT"),r.relurl=t.enumeratedString("URI"),r.fragment=o,r.index=i;var E=t.enumeratedString("BYTERANGE");return E&&r.setByteRange(E,n),n&&(r.fragOffset=n.fragOffset+n.duration),r}return T(t,e),l(t,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var e=this.elementaryStreams;return!!(e.audio||e.video||e.audiovideo)}}]),t})(I)},"./src/loader/key-loader.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"default",(function(){return r}));var a=o("./src/events.ts"),i=o("./src/errors.ts"),n=o("./src/utils/logger.ts"),r=(function(){function e(e){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=e,this.registerListeners()}var t=e.prototype;return t.startLoad=function(e){},t.stopLoad=function(){this.destroyInternalLoaders()},t.registerListeners=function(){this.hls.on(a.Events.KEY_LOADING,this.onKeyLoading,this)},t.unregisterListeners=function(){this.hls.off(a.Events.KEY_LOADING,this.onKeyLoading)},t.destroyInternalLoaders=function(){for(var e in this.loaders){var t=this.loaders[e];t&&t.destroy()}this.loaders={}},t.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},t.onKeyLoading=function(e,t){var o=t.frag,i=o.type,r=this.loaders[i];if(o.decryptdata){var E=o.decryptdata.uri;if(E!==this.decrypturl||null===this.decryptkey){var _=this.hls.config;if(r&&(n.logger.warn("abort previous key loader for type:"+i),r.abort()),!E)return void n.logger.warn("key uri is falsy");var T=_.loader,s=o.loader=this.loaders[i]=new T(_);this.decrypturl=E,this.decryptkey=null;var S={url:E,frag:o,responseType:"arraybuffer"},l={timeout:_.fragLoadingTimeOut,maxRetry:0,retryDelay:_.fragLoadingRetryDelay,maxRetryDelay:_.fragLoadingMaxRetryTimeout,highWaterMark:0},I={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};s.load(S,l,I)}else this.decryptkey&&(o.decryptdata.key=this.decryptkey,this.hls.trigger(a.Events.KEY_LOADED,{frag:o}))}else n.logger.warn("Missing decryption data on fragment in onKeyLoading")},t.loadsuccess=function(e,t,o){var i=o.frag;i.decryptdata?(this.decryptkey=i.decryptdata.key=new Uint8Array(e.data),i.loader=null,delete this.loaders[i.type],this.hls.trigger(a.Events.KEY_LOADED,{frag:i})):n.logger.error("after key load, decryptdata unset")},t.loaderror=function(e,t){var o=t.frag,n=o.loader;n&&n.abort(),delete this.loaders[o.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:o,response:e})},t.loadtimeout=function(e,t){var o=t.frag,n=o.loader;n&&n.abort(),delete this.loaders[o.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:o})},e})()},"./src/loader/level-details.ts":function(e,t,o){"use strict";o.r(t),o.d(t,"LevelDetails",(function(){return n}));var a=o("./src/polyfills/number.ts");function i(e,t){for(var o=0;o