@vyonio/player 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.2 — 2026-10-16
4
+
5
+ ### Fixed
6
+
7
+ - Honor the requested initial mute state even when Plyr has a conflicting saved
8
+ audio preference. Apply the state before media loading/autoplay while retaining
9
+ saved volume and playback speed, and allowing later mute/unmute controls.
10
+
11
+ ### Validation
12
+
13
+ - Six real-Plyr browser regressions cover initial muted/unmuted states with
14
+ matching, conflicting, and absent saved preferences.
15
+
3
16
  ## 0.2.1 — 2026-10-15
4
17
 
5
18
  ### Fixed
package/dist/index.js CHANGED
@@ -34,5 +34,5 @@ Char: `+e[i]);i+1&&(i+=1);break}if(e.charCodeAt(i+1)===33){if(e.charCodeAt(i+2)=
34
34
  `+i):i):r==`Events`&&(n=n?n+(`
35
35
  `+i):i)}for(r=[],i=null,t=g(t.split(/\r?\n/)),e=t.next();!e.done;e=t.next())if(e=e.value,!/^\s*;/.test(e)&&(a=fk.exec(e))){if(e=a[1].trim(),a=a[2].trim(),e==`Format`)i=a.split(pk);else if(e==`Style`){e=a.split(pk),a={};for(var o=0;o<i.length&&o<e.length;o++)a[i[o]]=e[o];r.push(a)}}for(i=[],t=null,n=g(n.split(/\r?\n/)),a=n.next(),e={};!a.done;e={Yi:void 0},a=n.next())if(a=a.value,!/^\s*;/.test(a)&&(o=fk.exec(a))){if(a=o[1].trim(),o=o[2].trim(),a==`Format`)t=o.split(pk);else if(a==`Dialogue`){o=o.split(pk),a={};for(var s=0;s<t.length&&s<o.length;s++)a[t[s]]=o[s];s=uk(a.Start);var c=uk(a.End);o=new qn(s,c,o.slice(t.length-1).join(`,`).replace(/\\N/g,`
36
36
  `).replace(/\{[^}]+\}/g,``)),e.Yi=a.Style,(e=r.find(function(e){return function(t){return t.Name==e.Yi}}(e)))&&ck(o,e),i.push(o)}}return i};function ck(e,t){var n=t.Fontname;if(n&&(e.fontFamily=n),(n=t.Fontsize)&&(e.fontSize=n+`px`),(n=t.PrimaryColour)&&(n=lk(n))&&(e.color=n),(n=t.BackColour)&&(n=lk(n))&&(e.backgroundColor=n),t.Bold&&(e.fontWeight=mr),t.Italic&&(e.fontStyle=gr),t.Underline&&e.textDecoration.push(vr),(n=t.Spacing)&&(e.letterSpacing=n+`px`),n=t.Alignment)switch(parseInt(n,10)){case 1:e.displayAlign=ir,e.textAlign=`start`;break;case 2:e.displayAlign=ir,e.textAlign=nr;break;case 3:e.displayAlign=ir,e.textAlign=`end`;break;case 5:e.displayAlign=`before`,e.textAlign=`start`;break;case 6:e.displayAlign=`before`,e.textAlign=nr;break;case 7:e.displayAlign=`before`,e.textAlign=`end`;break;case 9:e.displayAlign=`center`,e.textAlign=`start`;break;case 10:e.displayAlign=`center`,e.textAlign=nr;break;case 11:e.displayAlign=`center`,e.textAlign=`end`}(t=t.AlphaLevel)&&(e.opacity=parseFloat(t))}function lk(e){return e=parseInt(e.replace(`&H`,``),16),e>=0?`rgba(`+(e&255)+`,`+(e>>8&255)+`,`+(e>>16&255)+`,`+(e>>24&255^255)/255+`)`:null}function uk(e){return e=mk.exec(e),(e[1]?parseInt(e[1].replace(`:`,``),10):0)*3600+parseInt(e[2],10)*60+parseFloat(e[3])}N(`shaka.text.SsaTextParser`,sk),sk.prototype.parseMedia=sk.prototype.parseMedia,sk.prototype.setManifestType=sk.prototype.setManifestType,sk.prototype.setSequenceMode=sk.prototype.setSequenceMode,sk.prototype.parseInit=sk.prototype.parseInit;var dk=/^\s*\[([^\]]+)\]\r?\n([\s\S]*)/,fk=/^\s*([^:]+):\s*(.*)/,pk=/\s*,\s*/,mk=/^(\d+:)?(\d{1,2}):(\d{1,2}(?:[.]\d{1,3})?)?$/;Vr(`text/x-ssa`,function(){return new sk});function hk(e,t){var n=e[t+1]&1?7:9;return t+n<=e.length&&(e=((e[t+3]&3)<<11|e[t+4]<<3|(e[t+5]&224)>>>5)-n,e>0)?{Yd:n,ka:e}:null}function gk(e,t){var n=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],r=(e[t+2]&60)>>>2;if(r>n.length-1)return null;var i=((e[t+2]&192)>>>6)+1,a=(e[t+2]&1)<<2;return a|=(e[t+3]&192)>>>6,{sampleRate:n[r],channelCount:a,codec:`mp4a.40.`+i}}function _k(e,t){if(t+1<e.length&&e[t]===255&&(e[t+1]&246)==240){var n=e[t+1]&1?7:9;if(t+n>=e.length)return!1;var r=(e[t+3]&3)<<11|e[t+4]<<3|(e[t+5]&224)>>>5;return r<=n?!1:(t+=r,t===e.length||t+1<e.length&&e[t]===255&&(e[t+1]&246)==240)}return!1}function vk(e,t){switch(e){case`mp4a.40.2`:if(t===1)return new Uint8Array([0,200,0,128,35,128]);if(t===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(t===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(t===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(t===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(t===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(t===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(t===2||t===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}var yk=Object.freeze({Og:0,ef:0,$e:0,Se:0,Te:2,Pg:0}),bk=Object.freeze({Og:0,ef:0,$e:0,Se:0,Te:2,Pg:0}),xk=Object.freeze({Og:0,ef:0,$e:0,Se:0,Te:1,Pg:1});function Sk(e){this.j=e,this.h=0,this.g=/* @__PURE__ */ new Map,this.i=null}r=Sk.prototype,r.destroy=function(){this.g.clear()},r.isSupported=function(e){return e.toLowerCase().split(`;`)[0]==`audio/aac`&&Qo(this.convertCodecs(`audio`,e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`audio/aac`?`audio/mp4; codecs="`+(Ir(t)||`mp4a.40.2`)+`"`:t},r.getOriginalMimeType=function(){return this.j},r.transmux=function(e,t,n,r){for(var i=L(e),a=vc(i),o=a.length;o<i.length&&!_k(i,o);o++);if(e=n.endTime*1e3,a=_c(a),a.length&&n&&(a=a.find(function(e){return e.description===`com.apple.streaming.transportStreamTimestamp`}))&&(e=a.data),a=gk(i,o),!a)return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));t.audioSamplingRate=a.sampleRate,t.channelsCount=a.channelCount;for(var s=[];o<i.length;){var c=hk(i,o);if(!c)return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));var l=c.Yd+c.ka;o+l<=i.length&&s.push({data:i.subarray(o+c.Yd,o+l),size:c.ka,duration:1024,ob:0,flags:yk}),o+=l}return i=a.sampleRate,e=Math.floor(e*i/1e3),r={id:t.id,type:`audio`,codecs:a.codec,timescale:i,duration:r,zb:[],Aa:new Uint8Array([]),Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.h,baseMediaDecodeTime:e,ub:s},stream:t},r=new us([r]),n=t.id+`_`+n.i,this.g.has(n)?t=this.g.get(n):(t=ds(r),this.g.set(n,t)),n=this.i!==t,r=_s(r),this.i=t,this.h++,Promise.resolve({data:r,init:n?t:null})},N(`shaka.transmuxer.AacTransmuxer`,Sk),Sk.prototype.transmux=Sk.prototype.transmux,Sk.prototype.getOriginalMimeType=Sk.prototype.getOriginalMimeType,Sk.prototype.convertCodecs=Sk.prototype.convertCodecs,Sk.prototype.isSupported=Sk.prototype.isSupported,Sk.prototype.destroy=Sk.prototype.destroy,xr(`audio/aac`,function(){return new Sk(`audio/aac`)},wr);function Ck(e,t,n){if(t+8>e.length||e[t]!==11||e[t+1]!==119)return!1;var r=e[t+4]>>6;if(r>=3)return!1;var i=e[t+4]&63,a=[64,69,96,64,70,96,80,87,120,80,88,120,96,104,144,96,105,144,112,121,168,112,122,168,128,139,192,128,140,192,160,174,240,160,175,240,192,208,288,192,209,288,224,243,336,224,244,336,256,278,384,256,279,384,320,348,480,320,349,480,384,417,576,384,418,576,448,487,672,448,488,672,512,557,768,512,558,768,640,696,960,640,697,960,768,835,1152,768,836,1152,896,975,1344,896,976,1344,1024,1114,1536,1024,1115,1536,1152,1253,1728,1152,1254,1728,1280,1393,1920,1280,1394,1920][i*3+r]*2;if(t+a>e.length)return!1;var o=e[t+6]>>5,s=0;o===2?s+=2:(o&1&&o!==1&&(s+=2),o&4&&(s+=2)),s=(e[t+6]<<8|e[t+7])>>12-s&1;var c=e[t+5]&7;return e=new Uint8Array([r<<6|e[t+5]>>3<<1|c>>2,(c&3)<<6|o<<3|s<<2|i>>4,i<<4&224]),n.sampleRate=[48e3,44100,32e3][r],n.channelCount=[2,1,2,3,3,4,4,5][o]+s,n.Aa=e,n.ka=a,!0}function wk(e,t){if(e[t]===11&&e[t+1]===119){var n=0,r=5;t+=r;for(var i,a;r>0;){a=e[t];var o=Math.min(r,8),s=8-o;i=4278190080>>>24+s<<s,i=(a&i)>>s,n=n?n<<o|i:i,t+=1,r-=o}if(n<16)return!0}return!1}function Tk(e){this.j=e,this.h=0,this.g=/* @__PURE__ */ new Map,this.i=null}r=Tk.prototype,r.destroy=function(){this.g.clear()},r.isSupported=function(e){return e.toLowerCase().split(`;`)[0]==`audio/ac3`&&Qo(this.convertCodecs(`audio`,e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`audio/ac3`?Te().le()?`audio/mp4; codecs="ec-3"`:`audio/mp4; codecs="ac-3"`:t},r.getOriginalMimeType=function(){return this.j},r.transmux=function(e,t,n,r){e=L(e);for(var i=vc(e),a=i.length;a<e.length&&!wk(e,a);a++);var o=n.endTime*1e3;i=_c(i),i.length&&n&&(i=i.find(function(e){return e.description===`com.apple.streaming.transportStreamTimestamp`}))&&(o=i.data),i=0;for(var s=new Uint8Array([]),c=[],l={sampleRate:0,channelCount:0,Aa:/* @__PURE__ */ new Uint8Array,ka:0};a<e.length;){if(!Ck(e,a,l))return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));t.audioSamplingRate=l.sampleRate,t.channelsCount=l.channelCount,i=l.sampleRate,s=l.Aa,c.push({data:e.subarray(a,a+l.ka),size:l.ka,duration:1536,ob:0,flags:yk}),a+=l.ka}return e=Math.floor(o*i/1e3),r={id:t.id,type:`audio`,codecs:`ac-3`,timescale:i,duration:r,zb:[],Aa:s,Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.h,baseMediaDecodeTime:e,ub:c},stream:t},r=new us([r]),n=t.id+`_`+n.i,this.g.has(n)?t=this.g.get(n):(t=ds(r),this.g.set(n,t)),n=this.i!==t,r=_s(r),this.i=t,this.h++,Promise.resolve({data:r,init:n?t:null})},N(`shaka.transmuxer.Ac3Transmuxer`,Tk),Tk.prototype.transmux=Tk.prototype.transmux,Tk.prototype.getOriginalMimeType=Tk.prototype.getOriginalMimeType,Tk.prototype.convertCodecs=Tk.prototype.convertCodecs,Tk.prototype.isSupported=Tk.prototype.isSupported,Tk.prototype.destroy=Tk.prototype.destroy,xr(`audio/ac3`,function(){return new Tk(`audio/ac3`)},wr);function Ek(e,t,n){if(t+8>e.length||(e[t]<<8|e[t+1])!=2935)return!1;var r=new xc(e.subarray(t+2));Cc(r,2),Cc(r,3);var i=wc(r,11)+1<<1,a=wc(r,2);if(a==3){a=wc(r,2),a=[24e3,22060,16e3][a];var o=3}else a=[48e3,44100,32e3][a],o=wc(r,2);var s=wc(r,3),c=wc(r,1);return r=wc(r,5),t+i>e.byteLength?!1:(e=Math.floor(i*a/([1,2,3,6][o]*16)),e=new Uint8Array([(e&8160)>>5,(e&31)<<3,a<<6|r<<1,s<<1|c,0]),n.sampleRate=a,n.channelCount=[2,1,2,3,3,4,4,5][s]+c,n.Aa=e,n.ka=i,!0)}function Dk(e){this.j=e,this.h=0,this.g=/* @__PURE__ */ new Map,this.i=null}r=Dk.prototype,r.destroy=function(){this.g.clear()},r.isSupported=function(e){return e.toLowerCase().split(`;`)[0]==`audio/ec3`&&Qo(this.convertCodecs(`audio`,e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`audio/ec3`?`audio/mp4; codecs="ec-3"`:t},r.getOriginalMimeType=function(){return this.j},r.transmux=function(e,t,n,r){e=L(e);for(var i=vc(e),a=i.length;a<e.length&&(e[a]<<8|e[a+1])!=2935;a++);var o=n.endTime*1e3;i=_c(i),i.length&&n&&(i=i.find(function(e){return e.description===`com.apple.streaming.transportStreamTimestamp`}))&&(o=i.data),i=0;for(var s=new Uint8Array([]),c=[],l={sampleRate:0,channelCount:0,Aa:/* @__PURE__ */ new Uint8Array,ka:0};a<e.length;){if(!Ek(e,a,l))return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));t.audioSamplingRate=l.sampleRate,t.channelsCount=l.channelCount,i=l.sampleRate,s=l.Aa,c.push({data:e.subarray(a,a+l.ka),size:l.ka,duration:1536,ob:0,flags:yk}),a+=l.ka}return e=Math.floor(o*i/1e3),r={id:t.id,type:`audio`,codecs:`ec-3`,timescale:i,duration:r,zb:[],Aa:s,Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.h,baseMediaDecodeTime:e,ub:c},stream:t},r=new us([r]),n=t.id+`_`+n.i,this.g.has(n)?t=this.g.get(n):(t=ds(r),this.g.set(n,t)),n=this.i!==t,r=_s(r),this.i=t,this.h++,Promise.resolve({data:r,init:n?t:null})},N(`shaka.transmuxer.Ec3Transmuxer`,Dk),Dk.prototype.transmux=Dk.prototype.transmux,Dk.prototype.getOriginalMimeType=Dk.prototype.getOriginalMimeType,Dk.prototype.convertCodecs=Dk.prototype.convertCodecs,Dk.prototype.isSupported=Dk.prototype.isSupported,Dk.prototype.destroy=Dk.prototype.destroy,xr(`audio/ec3`,function(){return new Dk(`audio/ec3`)},wr);function Ok(e){if(!e.length)return null;var t=e.find(function(e){return e.type==7});if(e=e.find(function(e){return e.type==8}),!t||!e)return null;var n=new xc(t.data),r=Oc(n);if(Oc(n),Oc(n),Ec(n),Ak.includes(r)&&(r=U(n),r===3&&Cc(n,1),Ec(n),Ec(n),Cc(n,1),W(n))){r=r===3?12:8;for(var i=0;i<r;i++)W(n)&&(i<6?kc(n,16):kc(n,64))}if(Ec(n),r=U(n),r===0)U(n);else if(r===1)for(Cc(n,1),Ec(n),Ec(n),r=U(n),i=0;i<r;i++)Ec(n);Ec(n),Cc(n,1);var a=U(n),o=U(n),s=wc(n,1);s===0&&Cc(n,1),Cc(n,1);var c=0,l=0,u=0,d=0;if(W(n)&&(c=U(n),l=U(n),u=U(n),d=U(n)),i=r=1,W(n)&&W(n)){var f=Oc(n);f>0&&f<=16?(r=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][f-1],i=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][f-1]):f===255&&(r=wc(n,16),i=wc(n,16))}return n=(2-s)*(o+1)*16-u*2-d*2,a=(a+1)*16-c*2-l*2,t=t.fullData,c=t.byteLength,e=e.fullData,l=e.byteLength,o=0,s=new Uint8Array(11+c+l),s[o++]=1,s[o++]=t[1],s[o++]=t[2],s[o++]=t[3],s[o++]=255,s[o++]=225,s[o++]=c>>>8&255,s[o++]=c&255,s.set(t,o),o+=c,s[o++]=1,s[o++]=l>>>8&255,s[o++]=l&255,s.set(e,o),{height:n,width:a,Ta:s,Za:r,$a:i}}function kk(e){function t(e){i={data:o,frame:!1,isKeyframe:!1,pts:e.pts,dts:e.dts,nalus:[]}}function n(){if(i&&i.nalus.length&&i.frame){for(var e=i.nalus.length*4,t=g(i.nalus),n=t.next();!n.done;n=t.next())e+=n.value.fullData.byteLength;e=new Uint8Array(e),t=0,n=g(i.nalus);for(var a=n.next();!a.done;a=n.next()){a=a.value;var o=a.fullData.byteLength;e[t]=o>>24&255,e[t+1]=o>>16&255,e[t+2]=o>>8&255,e[t+3]=o&255,e.set(a.fullData,t+4),t+=4+o}i.data=e,r.push(i)}}for(var r=[],i=null,a=!1,o=/* @__PURE__ */ new Uint8Array,s=0;s<e.length;s++){var c=e[s],l=c.nalus,u=!1;i&&l.length&&!a&&(n(),t(c)),l=g(c.nalus);for(var d=l.next();!d.done;d=l.next()){d=d.value;var f=!1;switch(d.type){case 1:var p=!1;f=!0;var m=d.data;u&&m.length>4&&(m=Ac(new xc(m)),m===2||m===4||m===7||m===9)&&(p=!0),p&&i&&i.frame&&!i.isKeyframe&&(n(),i=null),i||t(c),i.frame=!0,i.isKeyframe=p;break;case 5:f=!0,i&&i.frame&&!i.isKeyframe&&(n(),i=null),i||t(c),i.frame=!0,i.isKeyframe=!0;break;case 6:f=!0;break;case 7:u=f=!0;break;case 8:f=!0;break;case 9:a=f=!0,i&&i.frame&&(n(),i=null),i||t(c);break;case 12:f=!0;break;default:f=!1}i&&f&&i.nalus.push(d)}}return n(),r}var Ak=[100,110,122,244,44,83,86,118,128,138,139,134];function jk(e){if(!e.length)return null;var t=e.find(function(e){return e.type==32}),n=e.find(function(e){return e.type==33}),r=e.find(function(e){return e.type==34});if(!t||!n||!r)return null;var i=Mk(t.fullData);e=Nk(n.fullData);var a=Pk(r.fullData);return t=Fk(t.fullData,n.fullData,r.fullData,{Vg:i.Vg,Ch:i.Ch,Dg:e.Dg,Eg:e.Eg,xg:e.xg,Cg:e.Cg,yg:e.yg,zg:e.zg,Ag:e.Ag,Bg:e.Bg,qg:e.qg,rg:e.rg,sg:e.sg,ug:e.ug,vg:e.vg,wg:e.wg,qf:e.qf,fg:e.fg,eg:e.eg,dg:e.dg,Xg:a.Xg,pg:e.pg,og:e.og}),{height:e.height,width:e.width,Ta:t,Za:e.Uk,$a:e.Tk}}function Mk(e){var t=new xc(e,!0);return Oc(t),Oc(t),wc(t,4),wc(t,2),wc(t,6),e=wc(t,3),t=W(t),{Vg:e+1,Ch:t}}function Nk(e){e=new xc(e,!0),Oc(e),Oc(e);var t=0,n=0,r=0,i=0;wc(e,4);var a=wc(e,3);W(e);for(var o=wc(e,2),s=wc(e,1),c=wc(e,5),l=Oc(e),u=Oc(e),d=Oc(e),f=Oc(e),p=Oc(e),m=Oc(e),h=Oc(e),g=Oc(e),_=Oc(e),v=Oc(e),y=Oc(e),b=[],x=[],S=0;S<a;S++)b.push(W(e)),x.push(W(e));if(a>0)for(S=a;S<8;S++)wc(e,2);for(S=0;S<a;S++)b[S]&&wc(e,88),x[S]&&Oc(e);U(e),b=U(e),b==3&&wc(e,1),x=U(e),S=U(e),W(e)&&(t+=U(e),n+=U(e),r+=U(e),i+=U(e));var C=U(e),w=U(e),T=U(e);if(W(e))for(var E=0;E<=a;E++)U(e),U(e),U(e);else U(e),U(e),U(e);if(U(e),U(e),U(e),U(e),U(e),U(e),W(e)&&W(e))for(E=0;E<4;E++)for(var D=0;D<(E===3?2:6);D++)if(W(e)){var O=Math.min(64,1<<4+(E<<1));E>1&&Dc(e);for(var k=0;k<O;k++)Dc(e)}else U(e);for(W(e),W(e),W(e)&&(Oc(e),U(e),U(e),W(e)),E=U(e),O=D=0;O<E;O++)if(k=!1,O!==0&&(k=W(e)),k){O===E&&U(e),W(e),U(e);for(var A=k=0;A<=D;A++){var j=W(e),M=!1;j||(M=W(e)),(j||M)&&k++}D=k}else{for(A=U(e),k=U(e),D=A+k,j=0;j<A;j++)U(e),W(e);for(A=0;A<k;A++)U(e),W(e)}if(W(e))for(E=U(e),D=0;D<E;D++){for(O=0;O<T+4;O++)wc(e,1);wc(e,1)}if(E=T=1,D=!0,O=1,A=k=0,W(e),W(e),W(e)){if(W(e)){j=Oc(e),M=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2];var ee=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];j>0&&j<=16?(T=M[j-1],E=ee[j-1]):j===255&&(T=wc(e,16),E=wc(e,16))}if(W(e)&&W(e),W(e)&&(wc(e,3),W(e),W(e)&&(Oc(e),Oc(e),Oc(e))),W(e)&&(U(e),U(e)),W(e),W(e),W(e),(j=W(e))&&(Ec(e),Ec(e),Ec(e),Ec(e)),W(e)&&(O=wc(e,32),k=wc(e,32),W(e)&&U(e),W(e))){ee=!1,j=W(e),M=W(e),(j||M)&&((ee=W(e))&&(Oc(e),wc(e,5),W(e),wc(e,5)),wc(e,4),wc(e,4),ee&&wc(e,4),wc(e,5),wc(e,5),wc(e,5));for(var te=0;te<=a;te++){D=W(e);var ne=!0,re=1;D||(ne=W(e));var ie=!1;if(ne?U(e):ie=W(e),ie||(re=U(e)+1),j){for(ne=0;ne<re;ne++)U(e),U(e),ee&&(U(e),U(e));W(e)}if(M){for(ne=0;ne<re;ne++)U(e),U(e),ee&&(U(e),U(e));W(e)}}}W(e)&&(W(e),W(e),W(e),A=U(e),U(e),U(e),U(e),U(e))}return{xg:y,Dg:o,Eg:s,Cg:c,yg:l,zg:u,Ag:d,Bg:f,qg:p,rg:m,sg:h,ug:g,vg:_,wg:v,qf:A,fg:b,eg:C,dg:w,width:x-(t+n)*(b===1||b===2?2:1),height:S-(r+i)*(b===1?2:1),Uk:T,Tk:E,pg:k/O,og:D}}function Pk(e){var t=new xc(e,!0);Oc(t),Oc(t),U(t),U(t),W(t),W(t),wc(t,3),W(t),W(t),U(t),U(t),Dc(t),W(t),W(t),W(t)&&U(t),Dc(t),Dc(t),W(t),W(t),W(t),W(t),e=W(t),t=W(t);var n=1;return t&&e?n=0:t?n=3:e&&(n=2),{Xg:n}}function Fk(e,t,n,r){var i=new Uint8Array(23+(5+e.byteLength)+(5+t.byteLength)+(5+n.byteLength));for(i[0]=1,i[1]=(r.Dg&3)<<6|!!r.Eg<<5|r.Cg&31,i[2]=r.yg,i[3]=r.zg,i[4]=r.Ag,i[5]=r.Bg,i[6]=r.qg,i[7]=r.rg,i[8]=r.sg,i[9]=r.ug,i[10]=r.vg,i[11]=r.wg,i[12]=r.xg,i[13]=240|(r.qf&3840)>>8,i[14]=r.qf&255,i[15]=252|r.Xg&3,i[16]=252|r.fg&3,i[17]=248|r.eg&7,i[18]=248|r.dg&7,i[19]=0,i[20]=parseInt(r.pg,10),i[21]=(!!r.og&3)<<6|(r.Vg&7)<<3|!!r.Ch<<2|3,i[22]=3,e=[e,t,n],t=23,n=e.length-1,r=0;r<e.length;r+=1)i.set(new Uint8Array([32+r|(r===n?128:0),0,1,e[r].byteLength>>8,e[r].byteLength&255]),t),t+=5,i.set(e[r],t),t+=e[r].byteLength;return i}function Ik(e,t){var n=e[t+1]>>3&3,r=e[t+1]>>1&3,i=e[t+2]>>4&15,a=e[t+2]>>2&3;if(n!==1&&i!==0&&i!==15&&a!==3){var o=e[t+3]>>6;i=zk[(n===3?3-r:r===3?3:4)*14+i-1]*1e3,a=Bk[(n===3?0:n===2?1:2)*3+a],n=Vk[n][r];var s=Hk[r],c=Math.floor(n*i/a+(e[t+2]>>1&1))*s,l=(navigator.userAgent||``).match(/Chrome\/(\d+)/i);return(l=l?parseInt(l[1],10):0)&&l<=87&&r===2&&i>=224e3&&o===0&&(e[t+3]|=128),{sampleRate:a,channelCount:o===3?1:2,ka:c,Sk:n*8*s}}return null}function Lk(e,t){return e[t]===255&&(e[t+1]&224)==224&&!!(e[t+1]&6)}function Rk(e,t){if(t+1<e.length&&Lk(e,t)){var n=Ik(e,t),r=4;return n&&n.ka&&(r=n.ka),t+=r,t===e.length||t+1<e.length&&Lk(e,t)}return!1}var zk=[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],Bk=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],Vk=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],Hk=[0,1,1,4];function Uk(e){this.j=e,this.h=0,this.g=/* @__PURE__ */ new Map,this.i=null}r=Uk.prototype,r.destroy=function(){this.g.clear()},r.isSupported=function(e){return e.toLowerCase().split(`;`)[0]==`audio/mpeg`&&Qo(this.convertCodecs(`audio`,e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`audio/mpeg`?`audio/mp4; codecs="mp3"`:t},r.getOriginalMimeType=function(){return this.j},r.transmux=function(e,t,n,r){for(var i=L(e),a=vc(i).length;a<i.length&&!Rk(i,a);a++);var o;for(e=[];a<i.length;){var s=Ik(i,a);if(!s)return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));o||(o=s),a+s.ka<=i.length&&e.push({data:i.subarray(a,a+s.ka),size:s.ka,duration:1152,ob:0,flags:yk}),a+=s.ka}return o?(i=o.Sk*9e4/o.sampleRate*this.h,r={id:t.id,type:`audio`,codecs:`mp3`,timescale:o.sampleRate,duration:r,zb:[],Aa:new Uint8Array([]),Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.h,baseMediaDecodeTime:i,ub:e},stream:t},r=new us([r]),n=t.id+`_`+n.i,this.g.has(n)?t=this.g.get(n):(t=ds(r),this.g.set(n,t)),n=this.i!==t,r=_s(r),this.i=t,this.h++,Promise.resolve({data:r,init:n?t:null})):Promise.reject(new R(2,3,3018,n?n.P()[0]:null))},N(`shaka.transmuxer.Mp3Transmuxer`,Uk),Uk.prototype.transmux=Uk.prototype.transmux,Uk.prototype.getOriginalMimeType=Uk.prototype.getOriginalMimeType,Uk.prototype.convertCodecs=Uk.prototype.convertCodecs,Uk.prototype.isSupported=Uk.prototype.isSupported,Uk.prototype.destroy=Uk.prototype.destroy,xr(`audio/mpeg`,function(){return new Uk(`audio/mpeg`)},wr);function Wk(e){this.h=e,this.g=null}r=Wk.prototype,r.destroy=function(){},r.isSupported=function(e){if(e.toLowerCase().split(`;`)[0]!=`video/mp2t`)return!1;var t=Ir(e).split(`,`),n=jt(`audio`,t);return t=jt(`video`,t),!n||t||Nr(n)!=`mp3`?!1:Qo(this.convertCodecs(`audio`,e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`video/mp2t`?`audio/mpeg`:t},r.getOriginalMimeType=function(){return this.h},r.transmux=function(e,t,n,r,i){if(this.g?this.g.clearData():this.g=new jc,this.g.Gf(n.i),e=L(e),e=this.g.parse(e),e.Td().audio!=`mp3`||i!=`audio`)return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));for(n=new Uint8Array([]),i=g(e.rb()),e=i.next();!e.done;e=i.next())if(e=e.value.data)for(t=0;t<e.length;)(r=Ik(e,t))?(t+r.ka<=e.length&&(n=z(n,e.subarray(t,t+r.ka))),t+=r.ka):t++;return Promise.resolve(n)},N(`shaka.transmuxer.MpegTsTransmuxer`,Wk),Wk.prototype.transmux=Wk.prototype.transmux,Wk.prototype.getOriginalMimeType=Wk.prototype.getOriginalMimeType,Wk.prototype.convertCodecs=Wk.prototype.convertCodecs,Wk.prototype.isSupported=Wk.prototype.isSupported,Wk.prototype.destroy=Wk.prototype.destroy,xr(`video/mp2t`,function(){return new Wk(`video/mp2t`)},Tr);function Gk(e){this.h=e,(this.g=Zx.get(`ISOBoxer`)())&&Kk(this)}function Kk(e){function t(){this._procFullBox(),this.flags&1&&(this._procField(`AlgorithmID`,`uint`,24),this._procField(`IV_size`,`uint`,8),this._procFieldArray(`KID`,16,`uint`,8)),this._procField(`sample_count`,`uint`,32),this._procEntries(`entry`,this.sample_count,function(e){this._procEntryField(e,`InitializationVector`,`data`,8),this.flags&2&&(this._procEntryField(e,`NumberOfEntries`,`uint`,16),this._procSubEntries(e,`clearAndCryptedData`,e.NumberOfEntries,function(e){this._procEntryField(e,`BytesOfClearData`,`uint`,16),this._procEntryField(e,`BytesOfEncryptedData`,`uint`,32)}))})}e.g.addBoxProcessor(`saio`,function(){this._procFullBox(),this.flags&1&&(this._procField(`aux_info_type`,`uint`,32),this._procField(`aux_info_type_parameter`,`uint`,32)),this._procField(`entry_count`,`uint`,32),this._procFieldArray(`offset`,this.entry_count,`uint`,this.version===1?64:32)}),e.g.addBoxProcessor(`saiz`,function(){this._procFullBox(),this.flags&1&&(this._procField(`aux_info_type`,`uint`,32),this._procField(`aux_info_type_parameter`,`uint`,32)),this._procField(`default_sample_info_size`,`uint`,8),this._procField(`sample_count`,`uint`,32),this.default_sample_info_size===0&&this._procFieldArray(`sample_info_size`,this.sample_count,`uint`,8)}),e.g.addBoxProcessor(`senc`,t),e.g.addBoxProcessor(`uuid`,function(){for(var e=!0,n=0;n<16;n++)this.usertype[n]!==Jk[n]&&(e=!1);e&&(this._parsing&&(this.type=`sepiff`),t.call(this))})}r=Gk.prototype,r.destroy=function(){},r.isSupported=function(e,t){var n=e.startsWith(`mss/`);return!this.g||!n?!1:t?Qo(this.convertCodecs(t,e)):(t=this.convertCodecs(`audio`,e),e=this.convertCodecs(`video`,e),Qo(t)||Qo(e))},r.convertCodecs=function(e,t){return t.replace(`mss/`,``)},r.getOriginalMimeType=function(){return this.h},r.transmux=function(e,t,n){if(!n)return Promise.resolve(L(e));if(!t.mssPrivateData)return Promise.reject(new R(2,3,3020,n?n.P()[0]:null));try{var r,i=this.g.parseBuffer(e),a=i.fetch(`tfhd`);a.track_ID=t.id+1;var o=i.fetch(`tfdt`),s=i.fetch(`traf`);o===null&&(o=this.g.createFullBox(`tfdt`,s,a),o.version=1,o.flags=0,o.baseMediaDecodeTime=Math.floor(n.startTime*t.mssPrivateData.timescale));var c=i.fetch(`trun`),l=i.fetch(`tfxd`);l&&l._parent.boxes.splice(l._parent.boxes.indexOf(l),1);var u=i.fetch(`tfrf`);u&&u._parent.boxes.splice(u._parent.boxes.indexOf(u),1);var d=i.fetch(`sepiff`);if(d!==null){d.type=`senc`,d.usertype=void 0;var f=i.fetch(`saio`);if(f===null){f=this.g.createFullBox(`saio`,s),f.version=0,f.flags=0,f.entry_count=1,f.offset=[0];var p=this.g.createFullBox(`saiz`,s);if(p.version=0,p.flags=0,p.sample_count=d.sample_count,p.default_sample_info_size=0,p.sample_info_size=[],d.flags&2)for(r=0;r<d.sample_count;r+=1)p.sample_info_size[r]=10+6*d.entry[r].NumberOfEntries;else p.default_sample_info_size=8}}a.flags&=16777214,a.flags|=131072,c.flags|=1;var m=i.fetch(`moof`);c.data_offset=m.getLength()+8;var h=i.fetch(`saio`);h!==null&&(h.offset[0]=qk(m,`traf`)+qk(s,`senc`)+16);var g=L(i.write());return Promise.resolve(g)}catch(e){return e instanceof R?Promise.reject(e):Promise.reject(new R(2,3,3022,n?n.P()[0]:null))}};function qk(e,t){for(var n=8,r=0;r<e.boxes.length&&e.boxes[r].type!==t;r++)n+=e.boxes[r].size;return n}N(`shaka.transmuxer.MssTransmuxer`,Gk),Gk.prototype.transmux=Gk.prototype.transmux,Gk.prototype.getOriginalMimeType=Gk.prototype.getOriginalMimeType,Gk.prototype.convertCodecs=Gk.prototype.convertCodecs,Gk.prototype.isSupported=Gk.prototype.isSupported,Gk.prototype.destroy=Gk.prototype.destroy;var Jk=new Uint8Array([162,57,79,82,90,155,79,20,162,68,108,66,124,100,141,244]);xr(`mss/audio/mp4`,function(){return new Gk(`mss/audio/mp4`)},wr),xr(`mss/video/mp4`,function(){return new Gk(`mss/video/mp4`)},wr);function Yk(e){if(e.length<1)return 960;var t=e[0],n=t&3;if(t=Xk[t>>3&31],n===0)e=1;else if(n===1||n===2)e=2;else if(e.length<2||(e=e[1]&63,e===0))return t;return t*e}var Xk=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];function Zk(e){this.m=e,this.g=0,this.j=/* @__PURE__ */ new Map,this.l=this.i=this.h=null}r=Zk.prototype,r.destroy=function(){this.j.clear(),this.i&&this.i.destroy()},r.isSupported=function(e,t){if(e.toLowerCase().split(`;`)[0]!=`video/mp2t`)return!1;var n=e;t&&(n=this.convertCodecs(t,e));var r=Ir(n).split(`,`);return n=jt(`audio`,r),r=jt(`video`,r),n&&(n=Nr(n),!Qk.includes(n))||r&&(n=Nr(r),!$k.includes(n))?!1:t?Qo(this.convertCodecs(t,e)):(t=this.convertCodecs(`audio`,e),e=this.convertCodecs(`video`,e),Qo(t)||Qo(e))},r.convertCodecs=function(e,t){return t.toLowerCase().split(`;`)[0]==`video/mp2t`?(t=Ir(t).replace(`mp4a.40.34`,`mp3`).split(`,`).map(function(e){return Oi(e,`audio/mp4`)}).map(ki).join(`,`),e==`audio`?`audio/mp4; codecs="`+t+`"`:`video/mp4; codecs="`+t+`"`):t},r.getOriginalMimeType=function(){return this.m},r.transmux=function(e,t,n,r,i){var a=L(e);if(i==`audio`&&!Hc(a)){for(var o=vc(a),s=o.length;s<a.length;s++)if(Rk(a,s))return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));for(s=o.length;s<a.length;s++)if(_k(a,s))return this.i||(this.i=new Sk(`audio/aac`)),this.i.transmux(e,t,n,r,i);return Promise.reject(new R(2,3,3018,n?n.P()[0]:null))}this.h?this.h.clearData():this.h=new jc,this.h.Gf(n.i);var c=this.h.parse(a),l=[],u=c.Td();try{var d=null;if(i==`video`){switch(u.video){case`avc`:var f=[],p=null,m=c.od(),h=kk(m);if(!h.length)throw new R(2,3,3023,n?n.P()[0]:null);for(var v=0;v<h.length;v++){var y=h[v];p??(p=y.dts);var b=void 0;b=v+1<h.length?(h[v+1].dts||0)-(y.dts||0):h.length>1?(y.dts||0)-(h[v-1].dts||0):(n.endTime-n.startTime)*9e4,f.push({data:y.data,size:y.data.byteLength,duration:b,ob:Math.round((y.pts||0)-(y.dts||0)),flags:y.isKeyframe?bk:xk})}for(var x=[],S=g(m),C=S.next();!C.done;C=S.next())x.push.apply(x,_(C.value.nalus));var w=Ok(x);if(!w||p==null)throw new R(2,3,3018,n?n.P()[0]:null);t.height=t.height||w.height,t.width=t.width||w.width,d={id:t.id,type:`video`,codecs:`avc1`,timescale:9e4,duration:r,zb:[],Aa:new Uint8Array([]),Ta:w.Ta,Za:w.Za,$a:w.$a,data:{sequenceNumber:this.g,baseMediaDecodeTime:p,ub:f},stream:t};break;case`hvc`:var T=[],E=null,D=[],O=c.od(),k=/* @__PURE__ */ new Uint8Array,A=!1;if(!O.length)throw new R(2,3,3023,n?n.P()[0]:null);for(var j=0;j<O.length;j++){var M=O[j],ee=M.nalus;D.push.apply(D,_(ee));for(var te=!1,ne=[],re=0,ie=!1,N=g(ee),ae=N.next();!ae.done;ae=N.next()){var oe=ae.value;switch(oe.type){case 1:case 0:var se=ie=!0;break;case 19:case 20:case 21:te=se=ie=!0;break;case 32:case 33:case 34:se=!0;break;case 35:ie=se=!0;break;case 39:case 40:se=!0;break;default:se=!1}ie&&se&&(ne.push(oe.fullData),re+=oe.fullData.byteLength)}if(ne.length){re+=4*ne.length;for(var ce=new Uint8Array(re),le=0,P=g(ne),ue=P.next();!ue.done;ue=P.next()){var de=ue.value,fe=de.byteLength;ce[le]=fe>>24&255,ce[le+1]=fe>>16&255,ce[le+2]=fe>>8&255,ce[le+3]=fe&255,ce.set(de,le+4),le+=fe+4}k=ce,A=te;var pe=!0}else pe=!1;if(pe){E==null&&M.dts!=null&&(E=M.dts);var me=void 0;me=j+1<O.length?(O[j+1].dts||0)-(M.dts||0):O.length>1?(M.dts||0)-(O[j-1].dts||0):(n.endTime-n.startTime)*9e4,T.push({data:k,size:k.byteLength,duration:me,ob:Math.round((M.pts||0)-(M.dts||0)),flags:A?bk:xk})}}var he=jk(D);if(!he||E==null)throw new R(2,3,3018,n?n.P()[0]:null);t.height=t.height||he.height,t.width=t.width||he.width,d={id:t.id,type:`video`,codecs:`hvc1`,timescale:9e4,duration:r,zb:[],Aa:new Uint8Array([]),Ta:he.Ta,Za:he.Za,$a:he.$a,data:{sequenceNumber:this.g,baseMediaDecodeTime:E,ub:T},stream:t}}d&&(l.push(d),d=null)}if(i==`audio`){switch(u.audio){case`aac`:for(var ge=[],_e,ve=null,ye=null,F=null,be=g(c.rb()),xe=be.next();!xe.done;xe=be.next()){var Se=xe.value,Ce=Se.data;if(Ce){var we=0;if(ye==-1&&F)Ce=z(F,Se.data),ye=null;else if(ye!=null&&F){we=Math.max(0,ye);var Te=z(F,Ce.subarray(0,we));ge.push({data:Te,size:Te.byteLength,duration:1024,ob:0,flags:yk}),ye=F=null}if(_e=gk(Ce,we),!_e)throw new R(2,3,3018,n?n.P()[0]:null);for(t.audioSamplingRate=_e.sampleRate,t.channelsCount=_e.channelCount,ve==null&&Se.pts!==null&&(ve=Se.pts);we<Ce.length;){var Ee=hk(Ce,we);if(!Ee){F=Ce.subarray(we,Ce.length),ye=-1;break}var De=Ee.Yd+Ee.ka;ye=Math.max(0,we+De-Ce.length),ye==0?we+De<=Ce.length&&ge.push({data:Ce.subarray(we+Ee.Yd,we+De),size:Ee.ka,duration:1024,ob:0,flags:yk}):F=Ce.subarray(we+Ee.Yd,we+De),we+=De}}}if(!_e||ve==null){ve=n.startTime*9e4;var Oe=jt(`audio`,t.codecs.split(`,`));if(!Oe||!t.channelsCount||!t.audioSamplingRate)throw new R(2,3,3018,n?n.P()[0]:null);_e={sampleRate:t.audioSamplingRate,channelCount:t.channelsCount,codec:Oe};var ke=vk(Oe,t.channelsCount);if(!ke)throw new R(2,3,3018,n?n.P()[0]:null);for(var I=ve+(n.endTime-n.startTime)*9e4,Ae=ve;Ae<I;)ge.push({data:ke,size:ke.byteLength,duration:1024,ob:0,flags:yk}),Ae+=1024/_e.sampleRate*9e4}var je=_e.sampleRate,Me=ve/9e4*je;d={id:t.id,type:`audio`,codecs:_e.codec,timescale:je,duration:r,zb:[],Aa:new Uint8Array([]),Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.g,baseMediaDecodeTime:Me,ub:ge},stream:t};break;case`ac3`:for(var Ne=[],Pe=0,Fe=new Uint8Array([]),Ie=null,Le={sampleRate:0,channelCount:0,Aa:/* @__PURE__ */ new Uint8Array,ka:0},Re=g(c.rb()),ze=Re.next();!ze.done;ze=Re.next()){var Be=ze.value,Ve=Be.data;Ie==null&&Be.pts!==null&&(Ie=Be.pts);for(var He=0;He<Ve.length;)Ck(Ve,He,Le)?(t.audioSamplingRate=Le.sampleRate,t.channelsCount=Le.channelCount,Pe=Le.sampleRate,Fe=Le.Aa,Ne.push({data:Ve.subarray(He,He+Le.ka),size:Le.ka,duration:1536,ob:0,flags:yk}),He+=Le.ka):He++}if(Pe==0||Fe.byteLength==0||Ie==null)throw new R(2,3,3018,n?n.P()[0]:null);var Ue=Ie/9e4*Pe;d={id:t.id,type:`audio`,codecs:`ac-3`,timescale:Pe,duration:r,zb:[],Aa:Fe,Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.g,baseMediaDecodeTime:Ue,ub:Ne},stream:t};break;case`ec3`:for(var We=[],Ge=0,Ke=new Uint8Array([]),qe=null,Je={sampleRate:0,channelCount:0,Aa:/* @__PURE__ */ new Uint8Array,ka:0},Ye=g(c.rb()),Xe=Ye.next();!Xe.done;Xe=Ye.next()){var Ze=Xe.value,Qe=Ze.data;qe==null&&Ze.pts!==null&&(qe=Ze.pts);for(var $e=0;$e<Qe.length;)Ek(Qe,$e,Je)?(t.audioSamplingRate=Je.sampleRate,t.channelsCount=Je.channelCount,Ge=Je.sampleRate,Ke=Je.Aa,We.push({data:Qe.subarray($e,$e+Je.ka),size:Je.ka,duration:1536,ob:0,flags:yk}),$e+=Je.ka):$e++}if(Ge==0||Ke.byteLength==0||qe==null)throw new R(2,3,3018,n?n.P()[0]:null);var et=qe/9e4*Ge;d={id:t.id,type:`audio`,codecs:`ec-3`,timescale:Ge,duration:r,zb:[],Aa:Ke,Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.g,baseMediaDecodeTime:et,ub:We},stream:t};break;case`mp3`:for(var tt=[],nt,rt=null,it=g(c.rb()),at=it.next();!at.done;at=it.next()){var ot=at.value,st=ot.data;if(st){rt==null&&ot.pts!==null&&(rt=ot.pts);for(var ct=0;ct<st.length;){var lt=Ik(st,ct);lt?(nt||(nt=lt),ct+lt.ka<=st.length&&tt.push({data:st.subarray(ct,ct+lt.ka),size:lt.ka,duration:1152,ob:0,flags:yk}),ct+=lt.ka):ct++}}}if(!nt||rt==null)throw new R(2,3,3018,n?n.P()[0]:null);var ut=nt.sampleRate,dt=rt/9e4*ut;d={id:t.id,type:`audio`,codecs:`mp3`,timescale:ut,duration:r,zb:[],Aa:new Uint8Array([]),Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.g,baseMediaDecodeTime:dt,ub:tt},stream:t};break;case`opus`:var ft=[],pt=null,mt=c.J;if(!mt)throw new R(2,3,3018,n?n.P()[0]:null);var ht=[];switch(mt.sj){case 1:case 2:ht=[0];break;case 0:ht=[255,1,1,0,1];break;case 128:ht=[255,2,0,0,1];break;case 3:ht=[1,2,1,0,2,1];break;case 4:ht=[1,2,2,0,1,2,3];break;case 5:ht=[1,3,2,0,4,1,2,3];break;case 6:ht=[1,4,2,0,4,1,2,3,5];break;case 7:ht=[1,4,2,0,4,1,2,3,5,6];break;case 8:ht=[1,5,3,0,6,1,2,3,4,5,7];break;case 130:ht=[1,1,2,0,1];break;case 131:ht=[1,1,3,0,1,2];break;case 132:ht=[1,1,4,0,1,2,3];break;case 133:ht=[1,1,5,0,1,2,3,4];break;case 134:ht=[1,1,6,0,1,2,3,4,5];break;case 135:ht=[1,1,7,0,1,2,3,4,5,6];break;case 136:ht=[1,1,8,0,1,2,3,4,5,6,7]}for(var gt=new Uint8Array([0,mt.channelCount,0,0,mt.sampleRate>>>24&255,mt.sampleRate>>>17&255,mt.sampleRate>>>8&255,mt.sampleRate>>>0&255,0,0].concat(_(ht))),_t=mt.sampleRate,vt=g(c.rb()),yt=vt.next();!yt.done;yt=vt.next()){var bt=yt.value,xt=bt.data;pt==null&&bt.pts!==null&&(pt=bt.pts);for(var St=0;St<xt.length;){for(var Ct=!!(xt[St+1]&16),wt=!!(xt[St+1]&8),Tt=St+2,Et=0;xt[Tt]===255;)Et+=255,Tt+=1;Et+=xt[Tt],Tt+=1,Tt+=Ct?2:0,Tt+=wt?2:0;var Dt=xt.slice(Tt,Tt+Et);ft.push({data:Dt,size:Dt.byteLength,duration:Yk(Dt),ob:0,flags:yk}),St=Tt+Et}}if(gt.byteLength==0||pt==null)throw new R(2,3,3018,n?n.P()[0]:null);t.audioSamplingRate=mt.sampleRate,t.channelsCount=mt.channelCount;var Ot=pt/9e4*_t;d={id:t.id,type:`audio`,codecs:`opus`,timescale:_t,duration:r,zb:[],Aa:gt,Ta:new Uint8Array([]),Za:0,$a:0,data:{sequenceNumber:this.g,baseMediaDecodeTime:Ot,ub:ft},stream:t}}d&&(l.push(d),d=null)}}catch(e){return e&&e.code==3023?Promise.resolve(new Uint8Array([])):Promise.reject(e)}if(!l.length)return Promise.reject(new R(2,3,3018,n?n.P()[0]:null));var kt=new us(l),At=t.id+`_`+n.i;if(this.j.has(At))var Mt=this.j.get(At);else Mt=ds(kt),this.j.set(At,Mt);var Nt=this.l!==Mt,Pt=_s(kt);return this.l=Mt,this.g++,Promise.resolve({data:Pt,init:Nt?Mt:null})},N(`shaka.transmuxer.TsTransmuxer`,Zk),Zk.prototype.transmux=Zk.prototype.transmux,Zk.prototype.getOriginalMimeType=Zk.prototype.getOriginalMimeType,Zk.prototype.convertCodecs=Zk.prototype.convertCodecs,Zk.prototype.isSupported=Zk.prototype.isSupported,Zk.prototype.destroy=Zk.prototype.destroy;var Qk=[`aac`,`ac-3`,`ec-3`,`mp3`,`opus`],$k=[`avc`,`hevc`];xr(`video/mp2t`,function(){return new Zk(`video/mp2t`)},Er);function eA(){}m(eA,Gd),N(`shaka.util.FairPlayUtils`,eA)}).call(n,t,t,void 0),e!==void 0)for(var r in n.shaka)e[r]=n.shaka[r];else typeof define==`function`&&define.amd?define(function(){return n.shaka}):t.shaka=n.shaka})()})))(),1);function l(e,t,n){return(t=d(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function d(e){var t=u(e,`string`);return typeof t==`symbol`?t:t+``}function f(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function p(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function m(e,t,n){return t&&p(e.prototype,t),n&&p(e,n),e}function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function _(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?g(Object(n),!0).forEach(function(t){h(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var v={addCSS:!0,thumbWidth:15,watch:!0};function y(e,t){return function(){return Array.from(document.querySelectorAll(t)).includes(this)}.call(e,t)}function b(e,t){if(e&&t){var n=new Event(t,{bubbles:!0});e.dispatchEvent(n)}}var x=function(e){return e==null?null:e.constructor},S=function(e,t){return!!(e&&t&&e instanceof t)},C=function(e){return e==null},w=function(e){return x(e)===Object},T=function(e){return x(e)===Number&&!Number.isNaN(e)},E=function(e){return x(e)===String},D=function(e){return x(e)===Boolean},O=function(e){return x(e)===Function},k=function(e){return Array.isArray(e)},A=function(e){return S(e,NodeList)},j={nullOrUndefined:C,object:w,number:T,string:E,boolean:D,function:O,array:k,nodeList:A,element:function(e){return S(e,Element)},event:function(e){return S(e,Event)},empty:function(e){return C(e)||(E(e)||k(e)||A(e))&&!e.length||w(e)&&!Object.keys(e).length}};function M(e){var t=`${e}`.match(/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0}function ee(e,t){if(1>t){var n=M(t);return parseFloat(e.toFixed(n))}return Math.round(e/t)*t}var te=function(){function e(t,n){f(this,e),j.element(t)?this.element=t:j.string(t)&&(this.element=document.querySelector(t)),j.element(this.element)&&j.empty(this.element.rangeTouch)&&(this.config=_({},v,{},n),this.init())}return m(e,[{key:`init`,value:function(){e.enabled&&(this.config.addCSS&&(this.element.style.userSelect=`none`,this.element.style.webKitUserSelect=`none`,this.element.style.touchAction=`manipulation`),this.listeners(!0),this.element.rangeTouch=this)}},{key:`destroy`,value:function(){e.enabled&&(this.config.addCSS&&(this.element.style.userSelect=``,this.element.style.webKitUserSelect=``,this.element.style.touchAction=``),this.listeners(!1),this.element.rangeTouch=null)}},{key:`listeners`,value:function(e){var t=this,n=e?`addEventListener`:`removeEventListener`;[`touchstart`,`touchmove`,`touchend`].forEach(function(e){t.element[n](e,function(e){return t.set(e)},!1)})}},{key:`get`,value:function(t){if(!e.enabled||!j.event(t))return null;var n,r=t.target,i=t.changedTouches[0],a=parseFloat(r.getAttribute(`min`))||0,o=parseFloat(r.getAttribute(`max`))||100,s=parseFloat(r.getAttribute(`step`))||1,c=r.getBoundingClientRect(),l=100/c.width*(this.config.thumbWidth/2)/100;return 0>(n=100/c.width*(i.clientX-c.left))?n=0:100<n&&(n=100),50>n?n-=(100-2*n)*l:50<n&&(n+=2*(n-50)*l),a+ee(n/100*(o-a),s)}},{key:`set`,value:function(t){e.enabled&&j.event(t)&&!t.target.disabled&&(t.preventDefault(),t.target.value=this.get(t),b(t.target,t.type===`touchend`?`change`:`input`))}}],[{key:`setup`,value:function(t){var n=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},r=null;if(j.empty(t)||j.string(t)?r=Array.from(document.querySelectorAll(j.string(t)?t:`input[type="range"]`)):j.element(t)?r=[t]:j.nodeList(t)?r=Array.from(t):j.array(t)&&(r=t.filter(j.element)),j.empty(r))return null;var i=_({},v,{},n);return j.string(t)&&i.watch&&new MutationObserver(function(n){Array.from(n).forEach(function(n){Array.from(n.addedNodes).forEach(function(n){j.element(n)&&y(n,t)&&new e(n,i)})})}).observe(document.body,{childList:!0,subtree:!0}),r.map(function(t){return new e(t,n)})}},{key:`enabled`,get:function(){return`ontouchstart`in document.documentElement}}]),e}(),ne=e=>e==null?null:e.constructor,re=(e,t)=>!!(e&&t&&e instanceof t),ie=e=>e==null,N=e=>ne(e)===Object,ae=e=>ne(e)===Number&&!Number.isNaN(e),oe=e=>ne(e)===String,se=e=>ne(e)===Boolean,ce=e=>typeof e==`function`,le=e=>Array.isArray(e),P=e=>re(e,WeakMap),ue=e=>re(e,NodeList),de=e=>ne(e)===Text,fe=e=>re(e,Event),pe=e=>re(e,KeyboardEvent),me=e=>re(e,window.TextTrackCue)||re(e,window.VTTCue),he=e=>re(e,TextTrack)||!ie(e)&&oe(e.kind),ge=e=>re(e,Promise)&&ce(e.then);function _e(e){return typeof e==`object`&&!!e&&e.nodeType===1&&typeof e.style==`object`&&typeof e.ownerDocument==`object`}function ve(e){return ie(e)||(oe(e)||le(e)||ue(e))&&!e.length||N(e)&&!Object.keys(e).length}function ye(e){if(re(e,window.URL))return!0;if(!oe(e))return!1;let t=e;(!e.startsWith(`http://`)||!e.startsWith(`https://`))&&(t=`http://${e}`);try{return!ve(new URL(t).hostname)}catch{return!1}}var F={nullOrUndefined:ie,object:N,number:ae,string:oe,boolean:se,function:ce,array:le,weakMap:P,nodeList:ue,element:_e,textNode:de,event:fe,keyboardEvent:pe,cue:me,track:he,promise:ge,url:ye,empty:ve},be=(()=>{let e=document.createElement(`span`),t={WebkitTransition:`webkitTransitionEnd`,MozTransition:`transitionend`,OTransition:`oTransitionEnd otransitionend`,transition:`transitionend`},n=Object.keys(t).find(t=>e.style[t]!==void 0);return F.string(n)?t[n]:!1})();function xe(e,t){setTimeout(()=>{try{e.hidden=!0,e.offsetHeight,e.hidden=!1}catch{}},t)}function Se(e){return JSON.parse(JSON.stringify(e))}function Ce(e,t){return t.split(`.`).reduce((e,t)=>e&&e[t],e)}function we(e={},...t){if(!t.length)return e;let n=t.shift();return F.object(n)?(Object.keys(n).forEach(t=>{F.object(n[t])?(Object.keys(e).includes(t)||Object.assign(e,{[t]:{}}),we(e[t],n[t])):Object.assign(e,{[t]:n[t]})}),we(e,...t)):e}function Te(e,t){let n=e.length?e:[e];Array.from(n).reverse().forEach((e,n)=>{let r=n>0?t.cloneNode(!0):t,i=e.parentNode,a=e.nextSibling;r.appendChild(e),a?i.insertBefore(r,a):i.appendChild(r)})}function Ee(e,t){F.element(e)&&!F.empty(t)&&Object.entries(t).filter(([,e])=>!F.nullOrUndefined(e)).forEach(([t,n])=>e.setAttribute(t,n))}function De(e,t,n){let r=document.createElement(e);return F.object(t)&&Ee(r,t),F.string(n)&&(r.textContent=n),r}function Oe(e,t){F.element(e)&&F.element(t)&&t.parentNode.insertBefore(e,t.nextSibling)}function ke(e,t,n,r){F.element(t)&&t.appendChild(De(e,n,r))}function I(e){F.nodeList(e)||F.array(e)?Array.from(e).forEach(I):F.element(e)&&F.element(e.parentNode)&&e.parentNode.removeChild(e)}function Ae(e){if(!F.element(e))return;let{length:t}=e.childNodes;for(;t>0;)e.removeChild(e.lastChild),--t}function je(e,t){return!F.element(t)||!F.element(t.parentNode)||!F.element(e)?null:(t.parentNode.replaceChild(e,t),e)}function Me(e,t){if(!F.string(e)||F.empty(e))return{};let n={},r=we({},t);return e.split(`,`).forEach(e=>{let t=e.trim(),i=t.replace(`.`,``),a=t.replace(/[[\]]/g,``).split(`=`),[o]=a,s=a.length>1?a[1].replace(/["']/g,``):``;switch(t.charAt(0)){case`.`:F.string(r.class)?n.class=`${r.class} ${i}`:n.class=i;break;case`#`:n.id=t.replace(`#`,``);break;case`[`:n[o]=s}}),we(r,n)}function Ne(e,t){if(!F.element(e))return;let n=t;F.boolean(n)||(n=!e.hidden),e.hidden=n}function Pe(e,t,n){if(F.nodeList(e))return Array.from(e).map(e=>Pe(e,t,n));if(F.element(e)){let r=`toggle`;return n!==void 0&&(r=n?`add`:`remove`),e.classList[r](t),e.classList.contains(t)}return!1}function Fe(e,t){return F.element(e)&&e.classList.contains(t)}function Ie(e,t){let{prototype:n}=Element;function r(){return Array.from(document.querySelectorAll(t)).includes(this)}return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||r).call(e,t)}function Le(e,t){let{prototype:n}=Element;function r(){let e=this;do{if(Ie.matches(e,t))return e;e=e.parentElement||e.parentNode}while(e!==null&&e.nodeType===1);return null}return(n.closest||r).call(e,t)}function Re(e){return this.elements.container.querySelectorAll(e)}function ze(e){return this.elements.container.querySelector(e)}function Be(e=null,t=!1){F.element(e)&&e.focus({preventScroll:!0,focusVisible:t})}var Ve={"audio/ogg":`vorbis`,"audio/wav":`1`,"video/webm":`vp8, vorbis`,"video/mp4":`avc1.42E01E, mp4a.40.2`,"video/ogg":`theora`},He={audio:`canPlayType`in document.createElement(`audio`),video:`canPlayType`in document.createElement(`video`),check(e,t){let n=He[e]||t!==`html5`;return{api:n,ui:n&&He.rangeInput}},pip:document.pictureInPictureEnabled&&!De(`video`).disablePictureInPicture,airplay:F.function(window.WebKitPlaybackTargetAvailabilityEvent),playsinline:`playsInline`in document.createElement(`video`),mime(e){if(F.empty(e))return!1;let[t]=e.split(`/`),n=e;if(!this.isHTML5||t!==this.type)return!1;Object.keys(Ve).includes(n)&&(n+=`; codecs="${Ve[e]}"`);try{return!!(n&&this.media.canPlayType(n).replace(/no/,``))}catch{return!1}},textTracks:`textTracks`in document.createElement(`video`),rangeInput:(()=>{let e=document.createElement(`input`);return e.type=`range`,e.type===`range`})(),touch:`ontouchstart`in document.documentElement,transitions:be!==!1,reducedMotion:`matchMedia`in window&&window.matchMedia(`(prefers-reduced-motion)`).matches},Ue=(()=>{let e=!1;try{let t=Object.defineProperty({},"passive",{get(){return e=!0,null}});window.addEventListener(`test`,null,t),window.removeEventListener(`test`,null,t)}catch{}return e})();function We(e,t,n,r=!1,i=!0,a=!1){if(!e||!(`addEventListener`in e)||F.empty(t)||!F.function(n))return;let o=t.split(` `),s=a;Ue&&(s={passive:i,capture:a}),o.forEach(t=>{this&&this.eventListeners&&r&&this.eventListeners.push({element:e,type:t,callback:n,options:s}),e[r?`addEventListener`:`removeEventListener`](t,n,s)})}function Ge(e,t=``,n,r=!0,i=!1){We.call(this,e,t,n,!0,r,i)}function Ke(e,t=``,n,r=!0,i=!1){We.call(this,e,t,n,!1,r,i)}function qe(e,t=``,n,r=!0,i=!1){let a=(...o)=>{Ke(e,t,a,r,i),n.apply(this,o)};We.call(this,e,t,a,!0,r,i)}function Je(e,t=``,n=!1,r={}){if(!F.element(e)||F.empty(t))return;let i=new CustomEvent(t,{bubbles:n,detail:{...r,plyr:this}});e.dispatchEvent(i)}function Ye(){this&&this.eventListeners&&(this.eventListeners.forEach(e=>{let{element:t,type:n,callback:r,options:i}=e;t.removeEventListener(n,r,i)}),this.eventListeners=[])}function Xe(){return new Promise(e=>this.ready?setTimeout(e,0):Ge.call(this,this.elements.container,`ready`,e)).then(()=>{})}function Ze(e){F.promise(e)&&e.then(null,()=>{})}function L(e){return F.array(e)?e.filter((t,n)=>e.indexOf(t)===n):e}function Qe(e,t){return!F.array(e)||!e.length?null:e.reduce((e,n)=>Math.abs(n-t)<Math.abs(e-t)?n:e)}function $e(e){return!window||!window.CSS?!1:window.CSS.supports(e)}var et=[[1,1],[4,3],[3,4],[5,4],[4,5],[3,2],[2,3],[16,10],[10,16],[16,9],[9,16],[21,9],[9,21],[32,9],[9,32]].reduce((e,[t,n])=>({...e,[t/n]:[t,n]}),{});function tt(e){return!F.array(e)&&(!F.string(e)||!e.includes(`:`))?!1:(F.array(e)?e:e.split(`:`)).map(Number).every(F.number)}function nt(e){if(!F.array(e)||!e.every(F.number))return null;let[t,n]=e,r=(e,t)=>t===0?e:r(t,e%t),i=r(t,n);return[t/i,n/i]}function rt(e){let t=e=>tt(e)?e.split(`:`).map(Number):null,n=t(e);if(n===null&&(n=t(this.config.ratio)),n===null&&!F.empty(this.embed)&&F.array(this.embed.ratio)&&({ratio:n}=this.embed),n===null&&this.isHTML5){let{videoWidth:e,videoHeight:t}=this.media;n=[e,t]}return nt(n)}function it(e){if(!this.isVideo)return{};let{wrapper:t}=this.elements,n=rt.call(this,e);if(!F.array(n))return{};let[r,i]=nt(n),a=$e(`aspect-ratio: ${r}/${i}`),o=100/r*i;if(a?t.style.aspectRatio=`${r}/${i}`:t.style.paddingBottom=`${o}%`,this.isVimeo&&!this.config.vimeo.premium&&this.supported.ui){let e=100/this.media.offsetWidth*Number.parseInt(window.getComputedStyle(this.media).paddingBottom,10),n=(e-o)/(e/50);this.fullscreen.active?t.style.paddingBottom=null:this.media.style.transform=`translateY(-${n}%)`}else this.isHTML5&&t.classList.add(this.config.classNames.videoFixedRatio);return{padding:o,ratio:n}}function at(e,t,n=.05){let r=e/t,i=Qe(Object.keys(et),r);return Math.abs(i-r)<=n?et[i]:[e,t]}function ot(){return[Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)]}var st={getSources(){return this.isHTML5?Array.from(this.media.querySelectorAll(`source`)).filter(e=>{let t=e.getAttribute(`type`);return F.empty(t)?!0:He.mime.call(this,t)}):[]},getQualityOptions(){return this.config.quality.forced?this.config.quality.options:st.getSources.call(this).map(e=>Number(e.getAttribute(`size`))).filter(Boolean)},setup(){if(!this.isHTML5)return;let e=this;e.options.speed=e.config.speed.options,F.empty(this.config.ratio)||it.call(e),Object.defineProperty(e.media,"quality",{get(){let t=st.getSources.call(e).find(t=>t.getAttribute(`src`)===e.source);return t&&Number(t.getAttribute(`size`))},set(t){if(e.quality!==t){if(e.config.quality.forced&&F.function(e.config.quality.onChange))e.config.quality.onChange(t);else{let n=st.getSources.call(e).find(e=>Number(e.getAttribute(`size`))===t);if(!n)return;let{currentTime:r,paused:i,preload:a,readyState:o,playbackRate:s}=e.media;e.media.src=n.getAttribute(`src`),(a!==`none`||o)&&(e.once(`loadedmetadata`,()=>{e.speed=s,e.currentTime=r,i||Ze(e.play())}),e.media.load())}Je.call(e,e.media,`qualitychange`,!1,{quality:t})}}})},cancelRequests(){this.isHTML5&&(I(st.getSources.call(this)),this.media.setAttribute(`src`,this.config.blankVideo),this.media.load(),this.debug.log(`Cancelled network requests`))}},ct={isIE:!!window.document.documentMode,isEdge:/Edge/.test(navigator.userAgent),isWebKit:`WebkitAppearance`in document.documentElement.style&&!/Edge/.test(navigator.userAgent),isIPadOS:navigator.platform===`MacIntel`&&navigator.maxTouchPoints>1,isIos:/iPad|iPhone|iPod/i.test(navigator.userAgent)&&navigator.maxTouchPoints>1};function lt(e){return`${e}-${Math.floor(Math.random()*1e4)}`}function ut(e,...t){return F.empty(e)?e:e.toString().replace(/\{(\d+)\}/g,(e,n)=>t[n].toString())}function R(e,t){return e===0||t===0||Number.isNaN(e)||Number.isNaN(t)?0:(e/t*100).toFixed(2)}function dt(e=``,t=``,n=``){return e.replace(new RegExp(t.toString().replace(/([.*+?^=!:${}()|[\]/\\])/g,`\\$1`),`g`),n.toString())}function ft(e=``){return e.toString().replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase())}function pt(e=``){let t=e.toString();return t=dt(t,`-`,` `),t=dt(t,`_`,` `),t=ft(t),dt(t,` `,``)}function mt(e=``){let t=e.toString();return t=pt(t),t.charAt(0).toLowerCase()+t.slice(1)}function ht(e){let t=document.createDocumentFragment(),n=document.createElement(`div`);return t.appendChild(n),n.innerHTML=e,t.firstChild.textContent}function gt(e){let t=document.createElement(`div`);return t.appendChild(e),t.innerHTML}var _t={pip:`PIP`,airplay:`AirPlay`,html5:`HTML5`,vimeo:`Vimeo`,youtube:`YouTube`},vt={get(e=``,t={}){if(F.empty(e)||F.empty(t))return``;let n=Ce(t.i18n,e);if(F.empty(n))return Object.keys(_t).includes(e)?_t[e]:``;let r={"{seektime}":t.seekTime,"{title}":t.title};return Object.entries(r).forEach(([e,t])=>{n=dt(n,e,t)}),n}},yt=class e{constructor(t){l(this,`get`,t=>{if(!e.supported||!this.enabled)return null;let n=window.localStorage.getItem(this.key);if(F.empty(n))return null;let r=JSON.parse(n);return F.string(t)&&t.length?r[t]:r}),l(this,`set`,t=>{if(!e.supported||!this.enabled||!F.object(t))return;let n=this.get();F.empty(n)&&(n={}),we(n,t);try{window.localStorage.setItem(this.key,JSON.stringify(n))}catch{}}),this.enabled=t.config.storage.enabled,this.key=t.config.storage.key}static get supported(){try{if(!(`localStorage`in window))return!1;let e=`___test`;return window.localStorage.setItem(e,e),window.localStorage.removeItem(e),!0}catch{return!1}}};function bt(e,t=`text`,n=!1){return new Promise((r,i)=>{try{let i=new XMLHttpRequest;if(!(`withCredentials`in i))return;n&&(i.withCredentials=!0),i.addEventListener(`load`,()=>{if(t===`text`)try{r(JSON.parse(i.responseText))}catch{r(i.responseText)}else r(i.response)}),i.addEventListener(`error`,()=>{throw Error(i.status)}),i.open(`GET`,e,!0),i.responseType=t,i.send()}catch(e){i(e)}})}function xt(e,t){if(!F.string(e))return;let n=`cache`,r=F.string(t),i=!1,a=()=>document.getElementById(t)!==null,o=(e,t)=>{e.innerHTML=t,!(r&&a())&&document.body.insertAdjacentElement(`afterbegin`,e)};if(!r||!a()){let a=yt.supported,s=document.createElement(`div`);if(s.setAttribute(`hidden`,``),r&&s.setAttribute(`id`,t),a){let e=window.localStorage.getItem(`${n}-${t}`);i=e!==null,i&&o(s,JSON.parse(e).content)}bt(e).then(e=>{if(!F.empty(e)){if(a)try{window.localStorage.setItem(`${n}-${t}`,JSON.stringify({content:e}))}catch{}o(s,e)}}).catch(()=>{})}}var St=e=>Math.trunc(e/60/60%60,10),Ct=e=>Math.trunc(e/60%60,10),wt=e=>Math.trunc(e%60,10);function Tt(e=0,t=!1,n=!1){if(!F.number(e))return Tt(void 0,t,n);let r=e=>`0${e}`.slice(-2),i=St(e),a=Ct(e),o=wt(e);return i=t||i>0?`${i}:`:``,`${n&&e>0?`-`:``}${i}${r(a)}:${r(o)}`}var z={getIconUrl(){let e=new URL(this.config.iconUrl,window.location),t=window.location.host?window.location.host:window.top.location.host,n=e.host!==t||ct.isIE&&!window.svg4everybody;return{url:this.config.iconUrl,cors:n}},findElements(){try{return this.elements.controls=ze.call(this,this.config.selectors.controls.wrapper),this.elements.buttons={play:Re.call(this,this.config.selectors.buttons.play),pause:ze.call(this,this.config.selectors.buttons.pause),restart:ze.call(this,this.config.selectors.buttons.restart),rewind:ze.call(this,this.config.selectors.buttons.rewind),fastForward:ze.call(this,this.config.selectors.buttons.fastForward),mute:ze.call(this,this.config.selectors.buttons.mute),pip:ze.call(this,this.config.selectors.buttons.pip),airplay:ze.call(this,this.config.selectors.buttons.airplay),settings:ze.call(this,this.config.selectors.buttons.settings),captions:ze.call(this,this.config.selectors.buttons.captions),fullscreen:ze.call(this,this.config.selectors.buttons.fullscreen)},this.elements.progress=ze.call(this,this.config.selectors.progress),this.elements.inputs={seek:ze.call(this,this.config.selectors.inputs.seek),volume:ze.call(this,this.config.selectors.inputs.volume)},this.elements.display={buffer:ze.call(this,this.config.selectors.display.buffer),currentTime:ze.call(this,this.config.selectors.display.currentTime),duration:ze.call(this,this.config.selectors.display.duration)},F.element(this.elements.progress)&&(this.elements.display.seekTooltip=this.elements.progress.querySelector(`.${this.config.classNames.tooltip}`)),!0}catch(e){return this.debug.warn(`It looks like there is a problem with your custom controls HTML`,e),this.toggleNativeControls(!0),!1}},createIcon(e,t){let n=`http://www.w3.org/2000/svg`,r=z.getIconUrl.call(this),i=`${r.cors?``:r.url}#${this.config.iconPrefix}`,a=document.createElementNS(n,`svg`);Ee(a,we(t,{"aria-hidden":`true`,focusable:`false`}));let o=document.createElementNS(n,`use`),s=`${i}-${e}`;return`href`in o&&o.setAttributeNS(`http://www.w3.org/1999/xlink`,`href`,s),o.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,s),a.appendChild(o),a},createLabel(e,t={}){let n=vt.get(e,this.config);return De(`span`,{...t,class:[t.class,this.config.classNames.hidden].filter(Boolean).join(` `)},n)},createBadge(e){if(F.empty(e))return null;let t=De(`span`,{class:this.config.classNames.menu.value});return t.appendChild(De(`span`,{class:this.config.classNames.menu.badge},e)),t},createButton(e,t){let n=we({},t),r=mt(e),i={element:`button`,toggle:!1,label:null,icon:null,labelPressed:null,iconPressed:null};switch([`element`,`icon`,`label`].forEach(e=>{Object.keys(n).includes(e)&&(i[e]=n[e],delete n[e])}),i.element===`button`&&!Object.keys(n).includes(`type`)&&(n.type=`button`),Object.keys(n).includes(`class`)?n.class.split(` `).includes(this.config.classNames.control)||we(n,{class:`${n.class} ${this.config.classNames.control}`}):n.class=this.config.classNames.control,e){case`play`:i.toggle=!0,i.label=`play`,i.labelPressed=`pause`,i.icon=`play`,i.iconPressed=`pause`;break;case`mute`:i.toggle=!0,i.label=`mute`,i.labelPressed=`unmute`,i.icon=`volume`,i.iconPressed=`muted`;break;case`captions`:i.toggle=!0,i.label=`enableCaptions`,i.labelPressed=`disableCaptions`,i.icon=`captions-off`,i.iconPressed=`captions-on`;break;case`fullscreen`:i.toggle=!0,i.label=`enterFullscreen`,i.labelPressed=`exitFullscreen`,i.icon=`enter-fullscreen`,i.iconPressed=`exit-fullscreen`;break;case`play-large`:n.class+=` ${this.config.classNames.control}--overlaid`,r=`play`,i.label=`play`,i.icon=`play`;break;default:F.empty(i.label)&&(i.label=r),F.empty(i.icon)&&(i.icon=e)}let a=De(i.element);return i.toggle?(a.appendChild(z.createIcon.call(this,i.iconPressed,{class:`icon--pressed`})),a.appendChild(z.createIcon.call(this,i.icon,{class:`icon--not-pressed`})),a.appendChild(z.createLabel.call(this,i.labelPressed,{class:`label--pressed`})),a.appendChild(z.createLabel.call(this,i.label,{class:`label--not-pressed`}))):(a.appendChild(z.createIcon.call(this,i.icon)),a.appendChild(z.createLabel.call(this,i.label))),we(n,Me(this.config.selectors.buttons[r],n)),Ee(a,n),r===`play`?(F.array(this.elements.buttons[r])||(this.elements.buttons[r]=[]),this.elements.buttons[r].push(a)):this.elements.buttons[r]=a,a},createRange(e,t){let n=De(`input`,we(Me(this.config.selectors.inputs[e]),{type:`range`,min:0,max:100,step:.01,value:0,autocomplete:`off`,role:`slider`,"aria-label":vt.get(e,this.config),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":0},t));return this.elements.inputs[e]=n,z.updateRangeFill.call(this,n),te.setup(n),n},createProgress(e,t){let n=De(`progress`,we(Me(this.config.selectors.display[e]),{min:0,max:100,value:0,role:`progressbar`,"aria-hidden":!0},t));if(e!==`volume`){n.appendChild(De(`span`,null,`0`));let t={played:`played`,buffer:`buffered`}[e];n.textContent=`% ${(t?vt.get(t,this.config):``).toLowerCase()}`}return this.elements.display[e]=n,n},createTime(e,t){let n=Me(this.config.selectors.display[e],t),r=De(`div`,we(n,{class:`${n.class?n.class:``} ${this.config.classNames.display.time} `.trim(),"aria-label":vt.get(e,this.config),role:`timer`}),`00:00`);return this.elements.display[e]=r,r},bindMenuItemShortcuts(e,t){Ge.call(this,e,`keydown keyup`,n=>{if(![` `,`ArrowUp`,`ArrowDown`,`ArrowRight`].includes(n.key)||(n.preventDefault(),n.stopPropagation(),n.type===`keydown`))return;let r=Ie(e,`[role="menuitemradio"]`);if(!r&&[` `,`ArrowRight`].includes(n.key))z.showMenuPanel.call(this,t,!0);else{let t;n.key!==` `&&(n.key===`ArrowDown`||r&&n.key===`ArrowRight`?(t=e.nextElementSibling,F.element(t)||(t=e.parentNode.firstElementChild)):(t=e.previousElementSibling,F.element(t)||(t=e.parentNode.lastElementChild)),Be.call(this,t,!0))}},!1),Ge.call(this,e,`keyup`,e=>{e.key===`Return`&&z.focusFirstMenuItem.call(this,null,!0)})},createMenuItem({value:e,list:t,type:n,title:r,badge:i=null,checked:a=!1}){let o=Me(this.config.selectors.inputs[n]),s=De(`button`,we(o,{type:`button`,role:`menuitemradio`,class:`${this.config.classNames.control} ${o.class?o.class:``}`.trim(),"aria-checked":a,value:e})),c=De(`span`);c.innerHTML=r,F.element(i)&&c.appendChild(i),s.appendChild(c),Object.defineProperty(s,"checked",{enumerable:!0,get(){return s.getAttribute(`aria-checked`)===`true`},set(e){e&&Array.from(s.parentNode.children).filter(e=>Ie(e,`[role="menuitemradio"]`)).forEach(e=>e.setAttribute(`aria-checked`,`false`)),s.setAttribute(`aria-checked`,e?`true`:`false`)}}),this.listeners.bind(s,`click keyup`,t=>{if(!(F.keyboardEvent(t)&&t.key!==` `)){switch(t.preventDefault(),t.stopPropagation(),s.checked=!0,n){case`language`:this.currentTrack=Number(e);break;case`quality`:this.quality=e;break;case`speed`:this.speed=Number.parseFloat(e)}z.showMenuPanel.call(this,`home`,F.keyboardEvent(t))}},n,!1),z.bindMenuItemShortcuts.call(this,s,n),t.appendChild(s)},formatTime(e=0,t=!1){return F.number(e)?Tt(e,St(this.duration)>0,t):e},updateTimeDisplay(e=null,t=0,n=!1){F.element(e)&&F.number(t)&&(e.textContent=z.formatTime(t,n))},updateVolume(){this.supported.ui&&(F.element(this.elements.inputs.volume)&&z.setRange.call(this,this.elements.inputs.volume,this.muted?0:this.volume),F.element(this.elements.buttons.mute)&&(this.elements.buttons.mute.pressed=this.muted||this.volume===0))},setRange(e,t=0){F.element(e)&&(e.value=t,z.updateRangeFill.call(this,e))},updateProgress(e){if(!this.supported.ui||!F.event(e))return;let t=0,n=(e,t)=>{let n=F.number(t)?t:0,r=F.element(e)?e:this.elements.display.buffer;if(F.element(r)){r.value=n;let e=r.getElementsByTagName(`span`)[0];F.element(e)&&(e.childNodes[0].nodeValue=n)}};if(e)switch(e.type){case`timeupdate`:case`seeking`:case`seeked`:t=R(this.currentTime,this.duration),e.type===`timeupdate`&&z.setRange.call(this,this.elements.inputs.seek,t);break;case`playing`:case`progress`:n(this.elements.display.buffer,this.buffered*100)}},updateRangeFill(e){let t=F.event(e)?e.target:e;if(F.element(t)&&t.getAttribute(`type`)===`range`){if(Ie(t,this.config.selectors.inputs.seek)){t.setAttribute(`aria-valuenow`,this.currentTime);let e=z.formatTime(this.currentTime),n=z.formatTime(this.duration),r=vt.get(`seekLabel`,this.config);t.setAttribute(`aria-valuetext`,r.replace(`{currentTime}`,e).replace(`{duration}`,n))}else if(Ie(t,this.config.selectors.inputs.volume)){let e=t.value*100;t.setAttribute(`aria-valuenow`,e),t.setAttribute(`aria-valuetext`,`${e.toFixed(1)}%`)}else t.setAttribute(`aria-valuenow`,t.value);(ct.isWebKit||ct.isIPadOS)&&t.style.setProperty(`--value`,`${t.value/t.max*100}%`)}},updateSeekTooltip(e){if(!this.config.tooltips.seek||!F.element(this.elements.inputs.seek)||!F.element(this.elements.display.seekTooltip)||this.duration===0)return;let t=this.elements.display.seekTooltip,n=`${this.config.classNames.tooltip}--visible`,r=e=>Pe(t,n,e);if(this.touch){r(!1);return}let i=0,a=this.elements.progress.getBoundingClientRect();if(F.event(e)){let t=e.pageX-e.clientX;i=100/a.width*(e.pageX-a.left-t)}else if(Fe(t,n))i=Number.parseFloat(t.style.left,10);else return;i<0?i=0:i>100&&(i=100);let o=this.duration/100*i;t.textContent=z.formatTime(o);let s=this.config.markers?.points?.find(({time:e})=>e===Math.round(o));s&&t.insertAdjacentHTML(`afterbegin`,`${s.label}<br>`),t.style.left=`${i}%`,F.event(e)&&[`mouseenter`,`mouseleave`].includes(e.type)&&r(e.type===`mouseenter`)},timeUpdate(e){let t=!F.element(this.elements.display.duration)&&this.config.invertTime;z.updateTimeDisplay.call(this,this.elements.display.currentTime,t?this.duration-this.currentTime:this.currentTime,t),!(e&&e.type===`timeupdate`&&this.media.seeking)&&z.updateProgress.call(this,e)},durationUpdate(){if(!this.supported.ui||!this.config.invertTime&&this.currentTime)return;if(this.duration>=2**32){Ne(this.elements.display.currentTime,!0),Ne(this.elements.progress,!0);return}F.element(this.elements.inputs.seek)&&this.elements.inputs.seek.setAttribute(`aria-valuemax`,this.duration);let e=F.element(this.elements.display.duration);!e&&this.config.displayDuration&&this.paused&&z.updateTimeDisplay.call(this,this.elements.display.currentTime,this.duration),e&&z.updateTimeDisplay.call(this,this.elements.display.duration,this.duration),this.config.markers.enabled&&z.setMarkers.call(this),z.updateSeekTooltip.call(this)},toggleMenuButton(e,t){Ne(this.elements.settings.buttons[e],!t)},updateSetting(e,t,n){let r=this.elements.settings.panels[e],i=null,a=t;if(e===`captions`)i=this.currentTrack;else{if(i=F.empty(n)?this[e]:n,F.empty(i)&&(i=this.config[e].default),!F.empty(this.options[e])&&!this.options[e].includes(i)){this.debug.warn(`Unsupported value of '${i}' for ${e}`);return}if(!this.config[e].options.includes(i)){this.debug.warn(`Disabled value of '${i}' for ${e}`);return}}if(F.element(a)||(a=r&&r.querySelector(`[role="menu"]`)),!F.element(a))return;let o=this.elements.settings.buttons[e].querySelector(`.${this.config.classNames.menu.value}`);o.innerHTML=z.getLabel.call(this,e,i);let s=a&&a.querySelector(`[value="${i}"]`);F.element(s)&&(s.checked=!0)},getLabel(e,t){switch(e){case`speed`:return t===1?vt.get(`normal`,this.config):`${t}&times;`;case`quality`:if(F.number(t)){let e=vt.get(`qualityLabel.${t}`,this.config);return e.length?e:`${t}p`}return ft(t);case`captions`:return Ot.getLabel.call(this);default:return null}},setQualityMenu(e){if(!F.element(this.elements.settings.panels.quality))return;let t=`quality`,n=this.elements.settings.panels.quality.querySelector(`[role="menu"]`);F.array(e)&&(this.options.quality=L(e).filter(e=>this.config.quality.options.includes(e)));let r=!F.empty(this.options.quality)&&this.options.quality.length>1;if(z.toggleMenuButton.call(this,t,r),Ae(n),z.checkMenu.call(this),!r)return;let i=e=>{let t=vt.get(`qualityBadge.${e}`,this.config);return t.length?z.createBadge.call(this,t):null};this.options.quality.sort((e,t)=>{let n=this.config.quality.options;return n.indexOf(e)>n.indexOf(t)?1:-1}).forEach(e=>{z.createMenuItem.call(this,{value:e,list:n,type:t,title:z.getLabel.call(this,`quality`,e),badge:i(e)})}),z.updateSetting.call(this,t,n)},setCaptionsMenu(){if(!F.element(this.elements.settings.panels.captions))return;let e=`captions`,t=this.elements.settings.panels.captions.querySelector(`[role="menu"]`),n=Ot.getTracks.call(this),r=!!n.length;if(z.toggleMenuButton.call(this,e,r),Ae(t),z.checkMenu.call(this),!r)return;let i=n.map((e,n)=>({value:n,checked:this.captions.toggled&&this.currentTrack===n,title:Ot.getLabel.call(this,e),badge:e.language&&z.createBadge.call(this,e.language.toUpperCase()),list:t,type:`language`}));i.unshift({value:-1,checked:!this.captions.toggled,title:vt.get(`disabled`,this.config),list:t,type:`language`}),i.forEach(z.createMenuItem.bind(this)),z.updateSetting.call(this,e,t)},setSpeedMenu(){if(!F.element(this.elements.settings.panels.speed))return;let e=`speed`,t=this.elements.settings.panels.speed.querySelector(`[role="menu"]`);this.options.speed=this.options.speed.filter(e=>e>=this.minimumSpeed&&e<=this.maximumSpeed);let n=!F.empty(this.options.speed)&&this.options.speed.length>1;z.toggleMenuButton.call(this,e,n),Ae(t),z.checkMenu.call(this),n&&(this.options.speed.forEach(n=>{z.createMenuItem.call(this,{value:n,list:t,type:e,title:z.getLabel.call(this,`speed`,n)})}),z.updateSetting.call(this,e,t))},checkMenu(){let{buttons:e}=this.elements.settings,t=!F.empty(e)&&Object.values(e).some(e=>!e.hidden);Ne(this.elements.settings.menu,!t)},focusFirstMenuItem(e,t=!1){if(this.elements.settings.popup.hidden)return;let n=e;F.element(n)||(n=Object.values(this.elements.settings.panels).find(e=>!e.hidden));let r=n.querySelector(`[role^="menuitem"]`);Be.call(this,r,t)},toggleMenu(e){let{popup:t}=this.elements.settings,n=this.elements.buttons.settings;if(!F.element(t)||!F.element(n))return;let{hidden:r}=t,i=r;if(F.boolean(e))i=e;else if(F.keyboardEvent(e)&&e.key===`Escape`)i=!1;else if(F.event(e)){let r=F.function(e.composedPath)?e.composedPath()[0]:e.target,a=t.contains(r);if(a||!a&&e.target!==n&&i)return}n.setAttribute(`aria-expanded`,i),Ne(t,!i),Pe(this.elements.container,this.config.classNames.menu.open,i),i&&F.keyboardEvent(e)?z.focusFirstMenuItem.call(this,null,!0):!i&&!r&&Be.call(this,n,F.keyboardEvent(e))},getMenuSize(e){let t=e.cloneNode(!0);t.style.position=`absolute`,t.style.opacity=0,t.removeAttribute(`hidden`),e.parentNode.appendChild(t);let n=t.scrollWidth,r=t.scrollHeight;return I(t),{width:n,height:r}},showMenuPanel(e=``,t=!1){let n=this.elements.container.querySelector(`#plyr-settings-${this.id}-${e}`);if(!F.element(n))return;let r=n.parentNode,i=Array.from(r.children).find(e=>!e.hidden);if(He.transitions&&!He.reducedMotion){r.style.width=`${i.scrollWidth}px`,r.style.height=`${i.scrollHeight}px`;let e=z.getMenuSize.call(this,n),t=e=>{e.target===r&&[`width`,`height`].includes(e.propertyName)&&(r.style.width=``,r.style.height=``,Ke.call(this,r,be,t))};Ge.call(this,r,be,t),r.style.width=`${e.width}px`,r.style.height=`${e.height}px`}Ne(i,!0),Ne(n,!1),z.focusFirstMenuItem.call(this,n,t)},setDownloadUrl(){let e=this.elements.buttons.download;F.element(e)&&e.setAttribute(`href`,this.download)},create(e){let{bindMenuItemShortcuts:t,createButton:n,createProgress:r,createRange:i,createTime:a,setQualityMenu:o,setSpeedMenu:s,showMenuPanel:c}=z;this.elements.controls=null,F.array(this.config.controls)&&this.config.controls.includes(`play-large`)&&this.elements.container.appendChild(n.call(this,`play-large`));let l=De(`div`,Me(this.config.selectors.controls.wrapper));this.elements.controls=l;let u={class:`plyr__controls__item`};return L(F.array(this.config.controls)?this.config.controls:[]).forEach(o=>{if(o===`restart`&&l.appendChild(n.call(this,`restart`,u)),o===`rewind`&&l.appendChild(n.call(this,`rewind`,u)),o===`play`&&l.appendChild(n.call(this,`play`,u)),o===`fast-forward`&&l.appendChild(n.call(this,`fast-forward`,u)),o===`progress`){let t=De(`div`,{class:`${u.class} plyr__progress__container`}),n=De(`div`,Me(this.config.selectors.progress));if(n.appendChild(i.call(this,`seek`,{id:`plyr-seek-${e.id}`})),n.appendChild(r.call(this,`buffer`)),this.config.tooltips.seek){let e=De(`span`,{class:this.config.classNames.tooltip},`00:00`);n.appendChild(e),this.elements.display.seekTooltip=e}this.elements.progress=n,t.appendChild(this.elements.progress),l.appendChild(t)}if(o===`current-time`&&l.appendChild(a.call(this,`currentTime`,u)),o===`duration`&&l.appendChild(a.call(this,`duration`,u)),o===`mute`||o===`volume`){let{volume:t}=this.elements;if((!F.element(t)||!l.contains(t))&&(t=De(`div`,we({},u,{class:`${u.class} plyr__volume`.trim()})),this.elements.volume=t,l.appendChild(t)),o===`mute`&&t.appendChild(n.call(this,`mute`)),o===`volume`&&!ct.isIos&&!ct.isIPadOS){let n={max:1,step:.05,value:this.config.volume};t.appendChild(i.call(this,`volume`,we(n,{id:`plyr-volume-${e.id}`})))}}if(o===`captions`&&l.appendChild(n.call(this,`captions`,u)),o===`settings`&&!F.empty(this.config.settings)){let r=De(`div`,we({},u,{class:`${u.class} plyr__menu`.trim(),hidden:``}));r.appendChild(n.call(this,`settings`,{"aria-haspopup":!0,"aria-controls":`plyr-settings-${e.id}`,"aria-expanded":!1}));let i=De(`div`,{class:`plyr__menu__container`,id:`plyr-settings-${e.id}`,hidden:``}),a=De(`div`),o=De(`div`,{id:`plyr-settings-${e.id}-home`}),s=De(`div`,{role:`menu`});o.appendChild(s),a.appendChild(o),this.elements.settings.panels.home=o,this.config.settings.forEach(n=>{let r=De(`button`,we(Me(this.config.selectors.buttons.settings),{type:`button`,class:`${this.config.classNames.control} ${this.config.classNames.control}--forward`,role:`menuitem`,"aria-haspopup":!0,hidden:``}));t.call(this,r,n),Ge.call(this,r,`click`,()=>{c.call(this,n,!1)});let i=De(`span`,null,vt.get(n,this.config)),o=De(`span`,{class:this.config.classNames.menu.value});o.innerHTML=e[n],i.appendChild(o),r.appendChild(i),s.appendChild(r);let l=De(`div`,{id:`plyr-settings-${e.id}-${n}`,hidden:``}),u=De(`button`,{type:`button`,class:`${this.config.classNames.control} ${this.config.classNames.control}--back`});u.appendChild(De(`span`,{"aria-hidden":!0},vt.get(n,this.config))),u.appendChild(De(`span`,{class:this.config.classNames.hidden},vt.get(`menuBack`,this.config))),Ge.call(this,l,`keydown`,e=>{e.key===`ArrowLeft`&&(e.preventDefault(),e.stopPropagation(),c.call(this,`home`,!0))},!1),Ge.call(this,u,`click`,()=>{c.call(this,`home`,!1)}),l.appendChild(u),l.appendChild(De(`div`,{role:`menu`})),a.appendChild(l),this.elements.settings.buttons[n]=r,this.elements.settings.panels[n]=l}),i.appendChild(a),r.appendChild(i),l.appendChild(r),this.elements.settings.popup=i,this.elements.settings.menu=r}if(o===`pip`&&He.pip&&l.appendChild(n.call(this,`pip`,u)),o===`airplay`&&He.airplay&&l.appendChild(n.call(this,`airplay`,u)),o===`download`){let e=we({},u,{element:`a`,href:this.download,target:`_blank`});this.isHTML5&&(e.download=``);let{download:t}=this.config.urls;!F.url(t)&&this.isEmbed&&we(e,{icon:`logo-${this.provider}`,label:this.provider}),l.appendChild(n.call(this,`download`,e))}o===`fullscreen`&&l.appendChild(n.call(this,`fullscreen`,u))}),this.isHTML5&&o.call(this,st.getQualityOptions.call(this)),s.call(this),l},inject(){if(this.config.loadSprite){let e=z.getIconUrl.call(this);e.cors&&xt(e.url,`sprite-plyr`)}this.id=Math.floor(Math.random()*1e4);let e=null;this.elements.controls=null;let t={id:this.id,seektime:this.config.seekTime,title:this.config.title},n=!0;F.function(this.config.controls)&&(this.config.controls=this.config.controls.call(this,t)),this.config.controls||(this.config.controls=[]),F.element(this.config.controls)||F.string(this.config.controls)?e=this.config.controls:(e=z.create.call(this,{id:this.id,seektime:this.config.seekTime,speed:this.speed,quality:this.quality,captions:Ot.getLabel.call(this)}),n=!1),n&&F.string(this.config.controls)&&(e=(e=>{let n=e;return Object.entries(t).forEach(([e,t])=>{n=dt(n,`{${e}}`,t)}),n})(e));let r;F.string(this.config.selectors.controls.container)&&(r=document.querySelector(this.config.selectors.controls.container)),F.element(r)||(r=this.elements.container);let i=F.element(e)?`insertAdjacentElement`:`insertAdjacentHTML`;if(r[i](`afterbegin`,e),F.element(this.elements.controls)||z.findElements.call(this),!F.empty(this.elements.buttons)){let e=e=>{let t=this.config.classNames.controlPressed;e.setAttribute(`aria-pressed`,`false`),Object.defineProperty(e,"pressed",{configurable:!0,enumerable:!0,get(){return Fe(e,t)},set(n=!1){Pe(e,t,n),e.setAttribute(`aria-pressed`,n?`true`:`false`)}})};Object.values(this.elements.buttons).filter(Boolean).forEach(t=>{F.array(t)||F.nodeList(t)?Array.from(t).filter(Boolean).forEach(e):e(t)})}if(ct.isEdge&&xe(r),this.config.tooltips.controls){let{classNames:e,selectors:t}=this.config,n=`${t.controls.wrapper} ${t.labels} .${e.hidden}`,r=Re.call(this,n);Array.from(r).forEach(e=>{Pe(e,this.config.classNames.hidden,!1),Pe(e,this.config.classNames.tooltip,!0)})}},setMediaMetadata(){try{`mediaSession`in navigator&&(navigator.mediaSession.metadata=new window.MediaMetadata({title:this.config.mediaMetadata.title,artist:this.config.mediaMetadata.artist,album:this.config.mediaMetadata.album,artwork:this.config.mediaMetadata.artwork}))}catch{}},setMarkers(){if(!this.duration||this.elements.markers)return;let e=this.config.markers?.points?.filter(({time:e})=>e>0&&e<this.duration);if(!(e!=null&&e.length))return;let t=document.createDocumentFragment(),n=document.createDocumentFragment(),r=null,i=`${this.config.classNames.tooltip}--visible`,a=e=>Pe(r,i,e);e.forEach(e=>{let t=De(`span`,{class:this.config.classNames.marker},``),i=`${e.time/this.duration*100}%`;r&&(t.addEventListener(`mouseenter`,()=>{e.label||(r.style.left=i,r.innerHTML=e.label,a(!0))}),t.addEventListener(`mouseleave`,()=>{a(!1)})),t.addEventListener(`click`,()=>{this.currentTime=e.time}),t.style.left=i,n.appendChild(t)}),t.appendChild(n),this.config.tooltips.seek||(r=De(`span`,{class:this.config.classNames.tooltip},``),t.appendChild(r)),this.elements.markers={points:n,tip:r},this.elements.progress.appendChild(t)}};function Et(e,t=!0){let n=e;if(t){let e=document.createElement(`a`);e.href=n,n=e.href}try{return new URL(n)}catch{return null}}function Dt(e){let t=new URLSearchParams;return F.object(e)&&Object.entries(e).forEach(([e,n])=>{t.set(e,n)}),t}var Ot={setup(){if(!this.supported.ui)return;if(!this.isVideo||this.isYouTube||this.isHTML5&&!He.textTracks){F.array(this.config.controls)&&this.config.controls.includes(`settings`)&&this.config.settings.includes(`captions`)&&z.setCaptionsMenu.call(this);return}if(F.element(this.elements.captions)||(this.elements.captions=De(`div`,Me(this.config.selectors.captions)),this.elements.captions.setAttribute(`dir`,`auto`),Oe(this.elements.captions,this.elements.wrapper)),ct.isIE&&window.URL){let e=this.media.querySelectorAll(`track`);Array.from(e).forEach(e=>{let t=e.getAttribute(`src`),n=Et(t);n!==null&&n.hostname!==window.location.href.hostname&&[`http:`,`https:`].includes(n.protocol)&&bt(t,`blob`).then(t=>{e.setAttribute(`src`,window.URL.createObjectURL(t))}).catch(()=>{I(e)})})}let e=L((navigator.languages||[navigator.language||navigator.userLanguage||`en`]).map(e=>e.split(`-`)[0])),t=(this.storage.get(`language`)||this.captions.language||this.config.captions.language||`auto`).toLowerCase();t===`auto`&&([t]=e);let n=this.storage.get(`captions`)||this.captions.active;if(F.boolean(n)||({active:n}=this.config.captions),Object.assign(this.captions,{toggled:!1,active:n,language:t,languages:e}),this.isHTML5){let e=this.config.captions.update?`addtrack removetrack`:`removetrack`;Ge.call(this,this.media.textTracks,e,Ot.update.bind(this))}setTimeout(Ot.update.bind(this),0)},update(){let e=Ot.getTracks.call(this,!0),{active:t,language:n,meta:r,currentTrackNode:i}=this.captions,a=!!e.find(e=>e.language===n);this.isHTML5&&this.isVideo&&e.filter(e=>!r.get(e)).forEach(e=>{this.debug.log(`Track added`,e),r.set(e,{default:e.mode===`showing`}),e.mode===`showing`&&(e.mode=`hidden`),Ge.call(this,e,`cuechange`,()=>Ot.updateCues.call(this))}),(a&&this.language!==n||!e.includes(i))&&(Ot.setLanguage.call(this,n),Ot.toggle.call(this,t&&a)),this.elements&&Pe(this.elements.container,this.config.classNames.captions.enabled,!F.empty(e)),F.array(this.config.controls)&&this.config.controls.includes(`settings`)&&this.config.settings.includes(`captions`)&&z.setCaptionsMenu.call(this)},toggle(e,t=!0){if(!this.supported.ui)return;let{toggled:n}=this.captions,r=this.config.classNames.captions.active,i=F.nullOrUndefined(e)?!n:e;if(i!==n){if(t||(this.captions.active=i,this.storage.set({captions:i})),!this.language&&i&&!t){let e=Ot.getTracks.call(this),t=Ot.findTrack.call(this,[this.captions.language,...this.captions.languages],!0);this.captions.language=t.language,Ot.set.call(this,e.indexOf(t));return}this.elements.buttons.captions&&(this.elements.buttons.captions.pressed=i),Pe(this.elements.container,r,i),this.captions.toggled=i,z.updateSetting.call(this,`captions`),Je.call(this,this.media,i?`captionsenabled`:`captionsdisabled`)}setTimeout(()=>{i&&this.captions.toggled&&(this.captions.currentTrackNode.mode=`hidden`)})},set(e,t=!0){let n=Ot.getTracks.call(this);if(e===-1)Ot.toggle.call(this,!1,t);else if(!F.number(e))this.debug.warn(`Invalid caption argument`,e);else if(!(e in n))this.debug.warn(`Track not found`,e);else{if(this.captions.currentTrack!==e){this.captions.currentTrack=e;let r=n[e],{language:i}=r||{};this.captions.currentTrackNode=r,z.updateSetting.call(this,`captions`),t||(this.captions.language=i,this.storage.set({language:i})),this.isVimeo&&this.embed.enableTextTrack(i,null,!1),Je.call(this,this.media,`languagechange`)}Ot.toggle.call(this,!0,t),this.isHTML5&&this.isVideo&&Ot.updateCues.call(this)}},setLanguage(e,t=!0){if(!F.string(e)){this.debug.warn(`Invalid language argument`,e);return}let n=e.toLowerCase();this.captions.language=n;let r=Ot.getTracks.call(this),i=Ot.findTrack.call(this,[n]);Ot.set.call(this,r.indexOf(i),t)},getTracks(e=!1){return Array.from((this.media||{}).textTracks||[]).filter(t=>!this.isHTML5||e||this.captions.meta.has(t)).filter(e=>[`captions`,`subtitles`].includes(e.kind))},findTrack(e,t=!1){let n=Ot.getTracks.call(this),r=e=>Number((this.captions.meta.get(e)||{}).default),i=Array.from(n).sort((e,t)=>r(t)-r(e)),a;return e.every(e=>(a=i.find(t=>t.language===e),!a)),a||(t?i[0]:void 0)},getCurrentTrack(){return Ot.getTracks.call(this)[this.currentTrack]},getLabel(e){let t=e;return!F.track(t)&&He.textTracks&&this.captions.toggled&&(t=Ot.getCurrentTrack.call(this)),F.track(t)?F.empty(t.label)?F.empty(t.language)?vt.get(`enabled`,this.config):e.language.toUpperCase():t.label:vt.get(`disabled`,this.config)},updateCues(e){if(!this.supported.ui)return;if(!F.element(this.elements.captions)){this.debug.warn(`No captions element to render to`);return}if(!F.nullOrUndefined(e)&&!Array.isArray(e)){this.debug.warn(`updateCues: Invalid input`,e);return}let t=e;if(!t){let e=Ot.getCurrentTrack.call(this);t=Array.from((e||{}).activeCues||[]).map(e=>e.getCueAsHTML()).map(gt)}let n=t.map(e=>e.trim()).join(`
37
- `);if(n!==this.elements.captions.innerHTML){Ae(this.elements.captions);let e=De(`span`,Me(this.config.selectors.caption));e.innerHTML=n,this.elements.captions.appendChild(e),Je.call(this,this.media,`cuechange`)}}},kt={enabled:!0,title:``,debug:!1,autoplay:!1,autopause:!0,playsinline:!0,seekTime:10,volume:1,muted:!1,duration:null,displayDuration:!0,invertTime:!0,toggleInvert:!0,ratio:null,clickToPlay:!0,hideControls:!0,resetOnEnd:!1,disableContextMenu:!0,loadSprite:!0,iconPrefix:`plyr`,iconUrl:`https://cdn.plyr.io/3.8.4/plyr.svg`,blankVideo:`https://cdn.plyr.io/static/blank.mp4`,quality:{default:576,options:[4320,2880,2160,1440,1080,720,576,480,360,240],forced:!1,onChange:null},loop:{active:!1},speed:{selected:1,options:[.5,.75,1,1.25,1.5,1.75,2,4]},keyboard:{focused:!0,global:!1},tooltips:{controls:!1,seek:!0},captions:{active:!1,language:`auto`,update:!1},fullscreen:{enabled:!0,fallback:!0,iosNative:!1},storage:{enabled:!0,key:`plyr`},controls:[`play-large`,`play`,`progress`,`current-time`,`mute`,`volume`,`captions`,`settings`,`pip`,`airplay`,`fullscreen`],settings:[`captions`,`quality`,`speed`],i18n:{restart:`Restart`,rewind:`Rewind {seektime}s`,play:`Play`,pause:`Pause`,fastForward:`Forward {seektime}s`,seek:`Seek`,seekLabel:`{currentTime} of {duration}`,played:`Played`,buffered:`Buffered`,currentTime:`Current time`,duration:`Duration`,volume:`Volume`,mute:`Mute`,unmute:`Unmute`,enableCaptions:`Enable captions`,disableCaptions:`Disable captions`,download:`Download`,enterFullscreen:`Enter fullscreen`,exitFullscreen:`Exit fullscreen`,frameTitle:`Player for {title}`,captions:`Captions`,settings:`Settings`,pip:`PIP`,menuBack:`Go back to previous menu`,speed:`Speed`,normal:`Normal`,quality:`Quality`,loop:`Loop`,start:`Start`,end:`End`,all:`All`,reset:`Reset`,disabled:`Disabled`,enabled:`Enabled`,advertisement:`Ad`,qualityBadge:{2160:`4K`,1440:`HD`,1080:`HD`,720:`HD`,576:`SD`,480:`SD`}},urls:{download:null,vimeo:{sdk:`https://player.vimeo.com/api/player.js`,iframe:`https://player.vimeo.com/video/{0}?{1}`,api:`https://vimeo.com/api/oembed.json?url={0}`},youtube:{sdk:`https://www.youtube.com/iframe_api`,api:`https://noembed.com/embed?url=https://www.youtube.com/watch?v={0}`},googleIMA:{sdk:`https://imasdk.googleapis.com/js/sdkloader/ima3.js`}},listeners:{seek:null,play:null,pause:null,restart:null,rewind:null,fastForward:null,mute:null,volume:null,captions:null,download:null,fullscreen:null,pip:null,airplay:null,speed:null,quality:null,loop:null,language:null},events:/* @__PURE__ */ `ended.progress.stalled.playing.waiting.canplay.canplaythrough.loadstart.loadeddata.loadedmetadata.timeupdate.volumechange.play.pause.error.seeking.seeked.emptied.ratechange.cuechange.download.enterfullscreen.exitfullscreen.captionsenabled.captionsdisabled.languagechange.controlshidden.controlsshown.ready.statechange.qualitychange.adsloaded.adscontentpause.adscontentresume.adstarted.adsmidpoint.adscomplete.adsallcomplete.adsimpression.adsclick`.split(`.`),selectors:{editable:`input, textarea, select, [contenteditable]`,container:`.plyr`,controls:{container:null,wrapper:`.plyr__controls`},labels:`[data-plyr]`,buttons:{play:`[data-plyr="play"]`,pause:`[data-plyr="pause"]`,restart:`[data-plyr="restart"]`,rewind:`[data-plyr="rewind"]`,fastForward:`[data-plyr="fast-forward"]`,mute:`[data-plyr="mute"]`,captions:`[data-plyr="captions"]`,download:`[data-plyr="download"]`,fullscreen:`[data-plyr="fullscreen"]`,pip:`[data-plyr="pip"]`,airplay:`[data-plyr="airplay"]`,settings:`[data-plyr="settings"]`,loop:`[data-plyr="loop"]`},inputs:{seek:`[data-plyr="seek"]`,volume:`[data-plyr="volume"]`,speed:`[data-plyr="speed"]`,language:`[data-plyr="language"]`,quality:`[data-plyr="quality"]`},display:{currentTime:`.plyr__time--current`,duration:`.plyr__time--duration`,buffer:`.plyr__progress__buffer`,loop:`.plyr__progress__loop`,volume:`.plyr__volume--display`},progress:`.plyr__progress`,captions:`.plyr__captions`,caption:`.plyr__caption`},classNames:{type:`plyr--{0}`,provider:`plyr--{0}`,video:`plyr__video-wrapper`,embed:`plyr__video-embed`,videoFixedRatio:`plyr__video-wrapper--fixed-ratio`,embedContainer:`plyr__video-embed__container`,poster:`plyr__poster`,posterEnabled:`plyr__poster-enabled`,ads:`plyr__ads`,control:`plyr__control`,controlPressed:`plyr__control--pressed`,playing:`plyr--playing`,paused:`plyr--paused`,stopped:`plyr--stopped`,loading:`plyr--loading`,hover:`plyr--hover`,tooltip:`plyr__tooltip`,cues:`plyr__cues`,marker:`plyr__progress__marker`,hidden:`plyr__sr-only`,hideControls:`plyr--hide-controls`,isTouch:`plyr--is-touch`,uiSupported:`plyr--full-ui`,noTransition:`plyr--no-transition`,display:{time:`plyr__time`},menu:{value:`plyr__menu__value`,badge:`plyr__badge`,open:`plyr--menu-open`},captions:{enabled:`plyr--captions-enabled`,active:`plyr--captions-active`},fullscreen:{enabled:`plyr--fullscreen-enabled`,fallback:`plyr--fullscreen-fallback`},pip:{supported:`plyr--pip-supported`,active:`plyr--pip-active`},airplay:{supported:`plyr--airplay-supported`,active:`plyr--airplay-active`},previewThumbnails:{thumbContainer:`plyr__preview-thumb`,thumbContainerShown:`plyr__preview-thumb--is-shown`,imageContainer:`plyr__preview-thumb__image-container`,timeContainer:`plyr__preview-thumb__time-container`,scrubbingContainer:`plyr__preview-scrubbing`,scrubbingContainerShown:`plyr__preview-scrubbing--is-shown`}},attributes:{embed:{provider:`data-plyr-provider`,id:`data-plyr-embed-id`,hash:`data-plyr-embed-hash`}},ads:{enabled:!1,publisherId:``,tagUrl:``},previewThumbnails:{enabled:!1,src:``,withCredentials:!1},vimeo:{byline:!1,portrait:!1,title:!1,speed:!0,transparent:!1,customControls:!0,referrerPolicy:null,premium:!1},youtube:{rel:0,showinfo:0,iv_load_policy:3,modestbranding:1,customControls:!0,noCookie:!1},mediaMetadata:{title:``,artist:``,album:``,artwork:[]},markers:{enabled:!1,points:[]}},At={active:`picture-in-picture`,inactive:`inline`},jt={html5:`html5`,youtube:`youtube`,vimeo:`vimeo`},Mt={audio:`audio`,video:`video`};function Nt(e){return/^(?:https?:\/\/)?(?:www\.)?(?:youtube\.com|youtube-nocookie\.com|youtu\.?be)\/.+$/.test(e)?jt.youtube:/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(e)?jt.vimeo:null}function Pt(){}var Ft=class{constructor(e=!1){this.enabled=window.console&&e,this.enabled&&this.log(`Debugging enabled`)}get log(){return this.enabled?Function.prototype.bind.call(console.log,console):Pt}get warn(){return this.enabled?Function.prototype.bind.call(console.warn,console):Pt}get error(){return this.enabled?Function.prototype.bind.call(console.error,console):Pt}},It=class e{constructor(t){l(this,`onChange`,()=>{if(!this.supported)return;let e=this.player.elements.buttons.fullscreen;F.element(e)&&(e.pressed=this.active);let t=this.target===this.player.media?this.target:this.player.elements.container;Je.call(this.player,t,this.active?`enterfullscreen`:`exitfullscreen`,!0)}),l(this,`toggleFallback`,(e=!1)=>{if(e?this.scrollPosition={x:window.scrollX??0,y:window.scrollY??0}:window.scrollTo(this.scrollPosition.x,this.scrollPosition.y),document.body.style.overflow=e?`hidden`:``,Pe(this.target,this.player.config.classNames.fullscreen.fallback,e),ct.isIos){let t=document.head.querySelector(`meta[name="viewport"]`),n=`viewport-fit=cover`;t||(t=document.createElement(`meta`),t.setAttribute(`name`,`viewport`));let r=F.string(t.content)&&t.content.includes(n);e?(this.cleanupViewport=!r,r||(t.content+=`,${n}`)):this.cleanupViewport&&(t.content=t.content.split(`,`).filter(e=>e.trim()!==n).join(`,`))}this.onChange()}),l(this,`trapFocus`,e=>{if(ct.isIos||ct.isIPadOS||!this.active||e.key!==`Tab`)return;let t=document.activeElement,n=Re.call(this.player,`a[href], button:not(:disabled), input:not(:disabled), [tabindex]`),[r]=n,i=n[n.length-1];t===i&&!e.shiftKey?(r.focus(),e.preventDefault()):t===r&&e.shiftKey&&(i.focus(),e.preventDefault())}),l(this,`update`,()=>{if(this.supported){let t;t=this.forceFallback?`Fallback (forced)`:e.nativeSupported?`Native`:`Fallback`,this.player.debug.log(`${t} fullscreen enabled`)}else this.player.debug.log(`Fullscreen not supported and fallback disabled`);Pe(this.player.elements.container,this.player.config.classNames.fullscreen.enabled,this.supported)}),l(this,`enter`,()=>{this.supported&&(ct.isIos&&this.player.config.fullscreen.iosNative?this.player.isVimeo?this.player.embed.requestFullscreen():this.target.webkitEnterFullscreen():!e.nativeSupported||this.forceFallback?this.toggleFallback(!0):this.prefix?F.empty(this.prefix)||this.target[`${this.prefix}Request${this.property}`]():this.target.requestFullscreen({navigationUI:`hide`}))}),l(this,`exit`,()=>{if(this.supported){if(ct.isIos&&this.player.config.fullscreen.iosNative)this.player.isVimeo?this.player.embed.exitFullscreen():this.target.webkitEnterFullscreen(),Ze(this.player.play());else if(!e.nativeSupported||this.forceFallback)this.toggleFallback(!1);else if(!this.prefix)(document.cancelFullScreen||document.exitFullscreen).call(document);else if(!F.empty(this.prefix)){let e=this.prefix===`moz`?`Cancel`:`Exit`;document[`${this.prefix}${e}${this.property}`]()}}}),l(this,`toggle`,()=>{this.active?this.exit():this.enter()}),this.player=t,this.prefix=e.prefix,this.property=e.property,this.scrollPosition={x:0,y:0},this.forceFallback=t.config.fullscreen.fallback===`force`,this.player.elements.fullscreen=t.config.fullscreen.container&&Le(this.player.elements.container,t.config.fullscreen.container),Ge.call(this.player,document,this.prefix===`ms`?`MSFullscreenChange`:`${this.prefix}fullscreenchange`,()=>{this.onChange()}),Ge.call(this.player,this.player.elements.container,`dblclick`,e=>{F.element(this.player.elements.controls)&&this.player.elements.controls.contains(e.target)||this.player.listeners.proxy(e,this.toggle,`fullscreen`)}),Ge.call(this,this.player.elements.container,`keydown`,e=>this.trapFocus(e)),this.update()}static get nativeSupported(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}get useNative(){return e.nativeSupported&&!this.forceFallback}static get prefix(){if(F.function(document.exitFullscreen))return``;let e=``;return[`webkit`,`moz`,`ms`].some(t=>F.function(document[`${t}ExitFullscreen`])||F.function(document[`${t}CancelFullScreen`])?(e=t,!0):!1),e}static get property(){return this.prefix===`moz`?`FullScreen`:`Fullscreen`}get supported(){return[this.player.config.fullscreen.enabled,this.player.isVideo,e.nativeSupported||this.player.config.fullscreen.fallback,!this.player.isYouTube||e.nativeSupported||!ct.isIos||this.player.config.playsinline&&!this.player.config.fullscreen.iosNative].every(Boolean)}get active(){if(!this.supported)return!1;if(!e.nativeSupported||this.forceFallback)return Fe(this.target,this.player.config.classNames.fullscreen.fallback);let t=this.prefix?this.target.getRootNode()[`${this.prefix}${this.property}Element`]:this.target.getRootNode().fullscreenElement;return t&&t.shadowRoot?t===this.target.getRootNode().host:t===this.target}get target(){return ct.isIos&&this.player.config.fullscreen.iosNative?this.player.media:this.player.elements.fullscreen??this.player.elements.container}};function Lt(e,t=1){return new Promise((n,r)=>{let i=new Image,a=()=>{delete i.onload,delete i.onerror,(i.naturalWidth>=t?n:r)(i)};Object.assign(i,{onload:a,onerror:a,src:e})})}var Rt={addStyleHook(){Pe(this.elements.container,this.config.selectors.container.replace(`.`,``),!0),Pe(this.elements.container,this.config.classNames.uiSupported,this.supported.ui)},toggleNativeControls(e=!1){e&&this.isHTML5?this.media.setAttribute(`controls`,``):this.media.removeAttribute(`controls`)},build(){this.listeners.media(),this.supported.ui?(F.element(this.elements.controls)||(z.inject.call(this),this.listeners.controls()),Rt.toggleNativeControls.call(this),this.isHTML5&&Ot.setup.call(this),this.volume=null,this.muted=null,this.loop=null,this.quality=null,this.speed=null,z.updateVolume.call(this),z.timeUpdate.call(this),z.durationUpdate.call(this),Rt.checkPlaying.call(this),Pe(this.elements.container,this.config.classNames.pip.supported,He.pip&&this.isHTML5&&this.isVideo),Pe(this.elements.container,this.config.classNames.airplay.supported,He.airplay&&this.isHTML5),Pe(this.elements.container,this.config.classNames.isTouch,this.touch),this.ready=!0,setTimeout(()=>{Je.call(this,this.media,`ready`)},0),Rt.setTitle.call(this),this.poster&&Rt.setPoster.call(this,this.poster,!1).catch(()=>{}),this.config.duration&&z.durationUpdate.call(this),this.config.mediaMetadata&&z.setMediaMetadata.call(this)):(this.debug.warn(`Basic support only for ${this.provider} ${this.type}`),Rt.toggleNativeControls.call(this,!0))},setTitle(){let e=vt.get(`play`,this.config);if(F.string(this.config.title)&&!F.empty(this.config.title)&&(e+=`, ${this.config.title}`),Array.from(this.elements.buttons.play||[]).forEach(t=>{t.setAttribute(`aria-label`,e)}),this.isEmbed){let e=ze.call(this,`iframe`);if(!F.element(e))return;let t=F.empty(this.config.title)?`video`:this.config.title,n=vt.get(`frameTitle`,this.config);e.setAttribute(`title`,n.replace(`{title}`,t))}},togglePoster(e){Pe(this.elements.container,this.config.classNames.posterEnabled,e)},setPoster(e,t=!0){return t&&this.poster?Promise.reject(/* @__PURE__ */ Error(`Poster already set`)):(this.media.setAttribute(`data-poster`,e),this.elements.poster.removeAttribute(`hidden`),Xe.call(this).then(()=>Lt(e)).catch(t=>{throw e===this.poster&&Rt.togglePoster.call(this,!1),t}).then(()=>{if(e!==this.poster)throw Error(`setPoster cancelled by later call to setPoster`)}).then(()=>(Object.assign(this.elements.poster.style,{backgroundImage:`url('${e}')`,backgroundSize:``}),Rt.togglePoster.call(this,!0),e)))},checkPlaying(e){Pe(this.elements.container,this.config.classNames.playing,this.playing),Pe(this.elements.container,this.config.classNames.paused,this.paused),Pe(this.elements.container,this.config.classNames.stopped,this.stopped),Array.from(this.elements.buttons.play||[]).forEach(e=>{Object.assign(e,{pressed:this.playing}),e.setAttribute(`aria-label`,vt.get(this.playing?`pause`:`play`,this.config))}),!(F.event(e)&&e.type===`timeupdate`)&&Rt.toggleControls.call(this)},checkLoading(e){this.loading=[`stalled`,`waiting`].includes(e.type),clearTimeout(this.timers.loading),this.timers.loading=setTimeout(()=>{Pe(this.elements.container,this.config.classNames.loading,this.loading),Rt.toggleControls.call(this)},this.loading?250:0)},toggleControls(e){let{controls:t}=this.elements;if(t&&this.config.hideControls){let n=this.touch&&this.lastSeekTime+2e3>Date.now();this.toggleControls(!!(e||this.loading||this.paused||t.pressed||t.hover||n))}},migrateStyles(){Object.values({...this.media.style}).filter(e=>!F.empty(e)&&F.string(e)&&e.startsWith(`--plyr`)).forEach(e=>{this.elements.container.style.setProperty(e,this.media.style.getPropertyValue(e)),this.media.style.removeProperty(e)}),F.empty(this.media.style)&&this.media.removeAttribute(`style`)}},zt=class{constructor(e){l(this,`firstTouch`,()=>{let{player:e}=this,{elements:t}=e;e.touch=!0,Pe(t.container,e.config.classNames.isTouch,!0)}),l(this,`global`,(e=!0)=>{let{player:t}=this;t.config.keyboard.global&&We.call(t,window,`keydown keyup`,this.handleKey,e,!1),We.call(t,document.body,`click`,this.toggleMenu,e),qe.call(t,document.body,`touchstart`,this.firstTouch)}),l(this,`container`,()=>{let{player:e}=this,{config:t,elements:n,timers:r}=e;!t.keyboard.global&&t.keyboard.focused&&Ge.call(e,n.container,`keydown keyup`,this.handleKey,!1),Ge.call(e,n.container,`mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen`,t=>{let{controls:i}=n;i&&t.type===`enterfullscreen`&&(i.pressed=!1,i.hover=!1);let a=[`touchstart`,`touchmove`,`mousemove`].includes(t.type),o=0;a&&(Rt.toggleControls.call(e,!0),o=e.touch?3e3:2e3),clearTimeout(r.controls),r.controls=setTimeout(()=>Rt.toggleControls.call(e,!1),o)});let i=()=>{if(!e.isVimeo||e.config.vimeo.premium)return;let t=n.wrapper,{active:r}=e.fullscreen,[i,a]=rt.call(e),o=$e(`aspect-ratio: ${i} / ${a}`);if(!r){o?(t.style.width=null,t.style.height=null):(t.style.maxWidth=null,t.style.margin=null);return}let[s,c]=ot(),l=s/c>i/a;o?(t.style.width=l?`auto`:`100%`,t.style.height=l?`100%`:`auto`):(t.style.maxWidth=l?`${c/a*i}px`:null,t.style.margin=l?`0 auto`:null)},a=()=>{clearTimeout(r.resized),r.resized=setTimeout(i,50)};Ge.call(e,n.container,`enterfullscreen exitfullscreen`,t=>{let{target:r}=e.fullscreen;r===n.container&&(e.isEmbed||!F.empty(e.config.ratio))&&(i(),(t.type===`enterfullscreen`?Ge:Ke).call(e,window,`resize`,a))})}),l(this,`media`,()=>{let{player:e}=this,{elements:t}=e;if(Ge.call(e,e.media,`timeupdate seeking seeked`,t=>z.timeUpdate.call(e,t)),Ge.call(e,e.media,`durationchange loadeddata loadedmetadata`,t=>z.durationUpdate.call(e,t)),Ge.call(e,e.media,`ended`,()=>{e.isHTML5&&e.isVideo&&e.config.resetOnEnd&&(e.restart(),e.pause())}),Ge.call(e,e.media,`progress playing seeking seeked`,t=>z.updateProgress.call(e,t)),Ge.call(e,e.media,`volumechange`,t=>z.updateVolume.call(e,t)),Ge.call(e,e.media,`playing play pause ended emptied timeupdate`,t=>Rt.checkPlaying.call(e,t)),Ge.call(e,e.media,`waiting canplay seeked playing`,t=>Rt.checkLoading.call(e,t)),e.supported.ui&&e.config.clickToPlay&&!e.isAudio){let n=ze.call(e,`.${e.config.classNames.video}`);if(!F.element(n))return;Ge.call(e,t.container,`click`,r=>{([t.container,n].includes(r.target)||n.contains(r.target))&&(e.touch&&e.config.hideControls||(e.ended?(this.proxy(r,e.restart,`restart`),this.proxy(r,()=>{Ze(e.play())},`play`)):this.proxy(r,()=>{Ze(e.togglePlay())},`play`)))})}e.supported.ui&&e.config.disableContextMenu&&Ge.call(e,t.wrapper,`contextmenu`,e=>{e.preventDefault()},!1),Ge.call(e,e.media,`volumechange`,()=>{e.storage.set({volume:e.volume,muted:e.muted})}),Ge.call(e,e.media,`ratechange`,()=>{z.updateSetting.call(e,`speed`),e.storage.set({speed:e.speed})}),Ge.call(e,e.media,`qualitychange`,t=>{z.updateSetting.call(e,`quality`,null,t.detail.quality)}),Ge.call(e,e.media,`ready qualitychange`,()=>{z.setDownloadUrl.call(e)});let n=e.config.events.concat([`keyup`,`keydown`]).join(` `);Ge.call(e,e.media,n,n=>{let{detail:r={}}=n;n.type===`error`&&(r=e.media.error),Je.call(e,t.container,n.type,!0,r)})}),l(this,`proxy`,(e,t,n)=>{let{player:r}=this,i=r.config.listeners[n],a=F.function(i),o=!0;a&&(o=i.call(r,e)),o!==!1&&F.function(t)&&t.call(r,e)}),l(this,`bind`,(e,t,n,r,i=!0)=>{let{player:a}=this,o=a.config.listeners[r],s=F.function(o);Ge.call(a,e,t,e=>this.proxy(e,n,r),i&&!s)}),l(this,`controls`,()=>{let{player:e}=this,{elements:t}=e,n=ct.isIE?`change`:`input`;if(t.buttons.play&&Array.from(t.buttons.play).forEach(t=>{this.bind(t,`click`,()=>{Ze(e.togglePlay())},`play`)}),this.bind(t.buttons.restart,`click`,e.restart,`restart`),this.bind(t.buttons.rewind,`click`,()=>{e.lastSeekTime=Date.now(),e.rewind()},`rewind`),this.bind(t.buttons.fastForward,`click`,()=>{e.lastSeekTime=Date.now(),e.forward()},`fastForward`),this.bind(t.buttons.mute,`click`,()=>{e.muted=!e.muted},`mute`),this.bind(t.buttons.captions,`click`,()=>e.toggleCaptions()),this.bind(t.buttons.download,`click`,()=>{Je.call(e,e.media,`download`)},`download`),this.bind(t.buttons.fullscreen,`click`,()=>{e.fullscreen.toggle()},`fullscreen`),this.bind(t.buttons.pip,`click`,()=>{e.pip=`toggle`},`pip`),this.bind(t.buttons.airplay,`click`,e.airplay,`airplay`),this.bind(t.buttons.settings,`click`,t=>{t.stopPropagation(),t.preventDefault(),z.toggleMenu.call(e,t)},null,!1),this.bind(t.buttons.settings,`keyup`,t=>{[` `,`Enter`].includes(t.key)&&(t.key===`Enter`?z.focusFirstMenuItem.call(e,null,!0):(t.preventDefault(),t.stopPropagation(),z.toggleMenu.call(e,t)))},null,!1),this.bind(t.settings.menu,`keydown`,t=>{t.key===`Escape`&&z.toggleMenu.call(e,t)}),this.bind(t.inputs.seek,`mousedown mousemove`,e=>{let n=t.progress.getBoundingClientRect(),r=e.pageX-e.clientX,i=100/n.width*(e.pageX-n.left-r);e.currentTarget.setAttribute(`seek-value`,i)}),this.bind(t.inputs.seek,`mousedown mouseup keydown keyup touchstart touchend`,t=>{let n=t.currentTarget,r=`play-on-seeked`;if(F.keyboardEvent(t)&&![`ArrowLeft`,`ArrowRight`].includes(t.key))return;e.lastSeekTime=Date.now();let i=n.hasAttribute(r),a=[`mouseup`,`touchend`,`keyup`].includes(t.type);i&&a?(n.removeAttribute(r),Ze(e.play())):!a&&e.playing&&(n.setAttribute(r,``),e.pause())}),ct.isIos){let t=Re.call(e,`input[type="range"]`);Array.from(t).forEach(e=>this.bind(e,n,e=>xe(e.target)))}this.bind(t.inputs.seek,n,t=>{let n=t.currentTarget,r=n.getAttribute(`seek-value`);F.empty(r)&&(r=n.value),n.removeAttribute(`seek-value`),e.currentTime=r/n.max*e.duration},`seek`),this.bind(t.progress,`mouseenter mouseleave mousemove`,t=>z.updateSeekTooltip.call(e,t)),this.bind(t.progress,`mousemove touchmove`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.startMove(t)}),this.bind(t.progress,`mouseleave touchend click`,()=>{let{previewThumbnails:t}=e;t&&t.loaded&&t.endMove(!1,!0)}),this.bind(t.progress,`mousedown touchstart`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.startScrubbing(t)}),this.bind(t.progress,`mouseup touchend`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.endScrubbing(t)}),ct.isWebKit&&Array.from(Re.call(e,`input[type="range"]`)).forEach(t=>{this.bind(t,`input`,t=>z.updateRangeFill.call(e,t.target))}),e.config.toggleInvert&&!F.element(t.display.duration)&&this.bind(t.display.currentTime,`click`,()=>{e.currentTime!==0&&(e.config.invertTime=!e.config.invertTime,z.timeUpdate.call(e))}),this.bind(t.inputs.volume,n,t=>{e.volume=t.target.value},`volume`),this.bind(t.controls,`mouseenter mouseleave`,n=>{t.controls.hover=!e.touch&&n.type===`mouseenter`}),t.fullscreen&&Array.from(t.fullscreen.children).filter(e=>!e.contains(t.container)).forEach(n=>{this.bind(n,`mouseenter mouseleave`,n=>{t.controls&&(t.controls.hover=!e.touch&&n.type===`mouseenter`)})}),this.bind(t.controls,`mousedown mouseup touchstart touchend touchcancel`,e=>{t.controls.pressed=[`mousedown`,`touchstart`].includes(e.type)}),this.bind(t.controls,`focusin`,()=>{let{config:n,timers:r}=e;Pe(t.controls,n.classNames.noTransition,!0),Rt.toggleControls.call(e,!0),setTimeout(()=>{Pe(t.controls,n.classNames.noTransition,!1)},0);let i=this.touch?3e3:4e3;clearTimeout(r.controls),r.controls=setTimeout(()=>Rt.toggleControls.call(e,!1),i)}),this.bind(t.inputs.volume,`wheel`,t=>{let n=t.webkitDirectionInvertedFromDevice,[r,i]=[t.deltaX,-t.deltaY].map(e=>n?-e:e),a=Math.sign(Math.abs(r)>Math.abs(i)?r:i);e.increaseVolume(a/50);let{volume:o}=e.media;(a===1&&o<1||a===-1&&o>0)&&t.preventDefault()},`volume`,!1)}),this.player=e,this.lastKey=null,this.focusTimer=null,this.lastKeyDown=null,this.handleKey=this.handleKey.bind(this),this.toggleMenu=this.toggleMenu.bind(this),this.firstTouch=this.firstTouch.bind(this)}handleKey(e){let{player:t}=this,{elements:n}=t,{key:r,type:i,altKey:a,ctrlKey:o,metaKey:s,shiftKey:c}=e,l=i===`keydown`,u=l&&r===this.lastKey;if(a||o||s||c||!r)return;let d=e=>{t.currentTime=t.duration/10*e};if(l){let i=document.activeElement;if(F.element(i)){let{editable:r}=t.config.selectors,{seek:a}=n.inputs;if(i!==a&&Ie(i,r)||e.key===` `&&Ie(i,`button, [role^="menuitem"]`))return}switch([` `,`ArrowLeft`,`ArrowUp`,`ArrowRight`,`ArrowDown`,`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`c`,`f`,`k`,`l`,`m`].includes(r)&&(e.preventDefault(),e.stopPropagation()),r){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:u||d(Number.parseInt(r,10));break;case` `:case`k`:u||Ze(t.togglePlay());break;case`ArrowUp`:t.increaseVolume(.1);break;case`ArrowDown`:t.decreaseVolume(.1);break;case`m`:u||(t.muted=!t.muted);break;case`ArrowRight`:t.forward();break;case`ArrowLeft`:t.rewind();break;case`f`:t.fullscreen.toggle();break;case`c`:u||t.toggleCaptions();break;case`l`:t.loop=!t.loop}r===`Escape`&&!t.fullscreen.usingNative&&t.fullscreen.active&&t.fullscreen.toggle(),this.lastKey=r}else this.lastKey=null}toggleMenu(e){z.toggleMenu.call(this.player,e)}};function Bt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Vt={exports:{}},Ht=Vt.exports,Ut;function Wt(){return Ut||(Ut=1,(function(e,t){(function(t,n){e.exports=n()})(Ht,function(){var e=function(){},t={},n={},r={};function i(e,t){e=e.push?e:[e];for(var i=[],a=e.length,o=a,s=function(e,n){n.length&&i.push(e),o--,o||t(i)},c,l,u;a--;)c=e[a],l=n[c],l?s(c,l):(u=r[c]=r[c]||[],u.push(s))}function a(e,t){if(e){var i=r[e];if(n[e]=t,i)for(;i.length;)i[0](e,t),i.splice(0,1)}}function o(t,n){t.call&&(t={success:t}),n.length?(t.error||e)(n):(t.success||e)(t)}function s(t,n,r,i){var a=document,o=r.async,c=(r.numRetries||0)+1,l=r.before||e,u=t.replace(/[\?|#].*$/,``),d=t.replace(/^(css|img|module|nomodule)!/,``),f,p,m;if(i=i||0,/(^css!|\.css$)/.test(u))m=a.createElement(`link`),m.rel=`stylesheet`,m.href=d,f=`hideFocus`in m,f&&m.relList&&(f=0,m.rel=`preload`,m.as=`style`);else if(/(^img!|\.(png|gif|jpg|svg|webp)$)/.test(u))m=a.createElement(`img`),m.src=d;else if(m=a.createElement(`script`),m.src=d,m.async=o===void 0||o,p=`noModule`in m,/^module!/.test(u)){if(!p)return n(t,`l`);m.type=`module`}else if(/^nomodule!/.test(u)&&p)return n(t,`l`);m.onload=m.onerror=m.onbeforeload=function(e){var a=e.type[0];if(f)try{m.sheet.cssText.length||(a=`e`)}catch(e){e.code!=18&&(a=`e`)}if(a==`e`){if(i+=1,i<c)return s(t,n,r,i)}else if(m.rel==`preload`&&m.as==`style`)return m.rel=`stylesheet`;n(t,a,e.defaultPrevented)},l(t,m)!==!1&&a.head.appendChild(m)}function c(e,t,n){e=e.push?e:[e];for(var r=e.length,i=r,a=[],o=function(e,n,i){if(n==`e`&&a.push(e),n==`b`){if(i)a.push(e);else return}r--,r||t(a)},c=0;c<i;c++)s(e[c],o,n)}function l(e,n,r){var i,s;if(n&&n.trim&&(i=n),s=(i?r:n)||{},i){if(i in t)throw`LoadJS`;t[i]=!0}function l(t,n){c(e,function(e){o(s,e),t&&o({success:t,error:n},e),a(i,e)},s)}if(s.returnPromise)return new Promise(l);l()}return l.ready=function(e,t){return i(e,function(e){o(t,e)}),l},l.done=function(e){a(e,[])},l.reset=function(){t={},n={},r={}},l.isDefined=function(e){return e in t},l})})(Vt)),Vt.exports}var Gt=/*@__PURE__*/ Bt(Wt());function Kt(e){return new Promise((t,n)=>{Gt(e,{success:t,error:n})})}function qt(e){if(F.empty(e))return null;if(F.number(Number(e)))return e;let t=e.match(/^.*(vimeo.com\/|video\/)(\d+).*/);return t?t[2]:e}function Jt(e){let t=e.match(/^.*(vimeo.com\/|video\/)(\d+)(\?.*h=|\/)+([\d,a-f]+)/);return t&&t.length===5?t[4]:null}function Yt(e){e&&!this.embed.hasPlayed&&(this.embed.hasPlayed=!0),this.media.paused===e&&(this.media.paused=!e,Je.call(this,this.media,e?`play`:`pause`))}var Xt={setup(){let e=this;Pe(e.elements.wrapper,e.config.classNames.embed,!0),e.options.speed=e.config.speed.options,it.call(e),F.object(window.Vimeo)?Xt.ready.call(e):Kt(e.config.urls.vimeo.sdk).then(()=>{Xt.ready.call(e)}).catch(t=>{e.debug.warn(`Vimeo SDK (player.js) failed to load`,t)})},ready(){let e=this,t=e.config.vimeo,{premium:n,referrerPolicy:r,...i}=t,a=e.media.getAttribute(`src`),o=``;F.empty(a)?(a=e.media.getAttribute(e.config.attributes.embed.id),o=e.media.getAttribute(e.config.attributes.embed.hash)):o=Jt(a);let s=o?{h:o}:{};n&&Object.assign(i,{controls:!1,sidedock:!1});let c=Dt({loop:e.config.loop.active,autoplay:e.autoplay,muted:e.muted,gesture:`media`,playsinline:e.config.playsinline,...s,...i}),l=qt(a),u=De(`iframe`),d=ut(e.config.urls.vimeo.iframe,l,c);if(u.setAttribute(`src`,d),u.setAttribute(`allowfullscreen`,``),u.setAttribute(`allow`,[`autoplay`,`fullscreen`,`picture-in-picture`,`encrypted-media`,`accelerometer`,`gyroscope`].join(`; `)),F.empty(r)||u.setAttribute(`referrerPolicy`,r),n||!t.customControls)u.setAttribute(`data-poster`,e.poster),e.media=je(u,e.media);else{let t=De(`div`,{class:e.config.classNames.embedContainer,"data-poster":e.poster});t.appendChild(u),e.media=je(t,e.media)}t.customControls||bt(ut(e.config.urls.vimeo.api,d)).then(t=>{!F.empty(t)&&t.thumbnail_url&&Rt.setPoster.call(e,t.thumbnail_url).catch(()=>{})}),e.embed=new window.Vimeo.Player(u,{autopause:e.config.autopause,muted:e.muted}),e.media.paused=!0,e.media.currentTime=0,e.supported.ui&&e.embed.disableTextTrack(),e.media.play=()=>(Yt.call(e,!0),e.embed.play()),e.media.pause=()=>(Yt.call(e,!1),e.embed.pause()),e.media.stop=()=>{e.pause(),e.currentTime=0};let{currentTime:f}=e.media;Object.defineProperty(e.media,"currentTime",{get(){return f},set(t){let{embed:n,media:r,paused:i,volume:a}=e,o=i&&!n.hasPlayed;r.seeking=!0,Je.call(e,r,`seeking`),Promise.resolve(o&&n.setVolume(0)).then(()=>n.setCurrentTime(t)).then(()=>o&&n.pause()).then(()=>o&&n.setVolume(a)).catch(()=>{})}});let p=e.config.speed.selected;Object.defineProperty(e.media,"playbackRate",{get(){return p},set(t){e.embed.setPlaybackRate(t).then(()=>{p=t,Je.call(e,e.media,`ratechange`)}).catch(()=>{e.options.speed=[1]})}});let{volume:m}=e.config;Object.defineProperty(e.media,"volume",{get(){return m},set(t){e.embed.setVolume(t).then(()=>{m=t,Je.call(e,e.media,`volumechange`)})}});let{muted:h}=e.config;Object.defineProperty(e.media,"muted",{get(){return h},set(t){let n=F.boolean(t)?t:!1;e.embed.setMuted(n?!0:e.config.muted).then(()=>{h=n,Je.call(e,e.media,`volumechange`)})}});let{loop:g}=e.config;Object.defineProperty(e.media,"loop",{get(){return g},set(t){let n=F.boolean(t)?t:e.config.loop.active;e.embed.setLoop(n).then(()=>{g=n})}});let _;e.embed.getVideoUrl().then(t=>{_=t,z.setDownloadUrl.call(e)}).catch(e=>{this.debug.warn(e)}),Object.defineProperty(e.media,"currentSrc",{get(){return _}}),Object.defineProperty(e.media,"ended",{get(){return e.currentTime===e.duration}}),Promise.all([e.embed.getVideoWidth(),e.embed.getVideoHeight()]).then(t=>{let[n,r]=t;e.embed.ratio=at(n,r),it.call(this)}),e.embed.setAutopause(e.config.autopause).then(t=>{e.config.autopause=t}),e.embed.getVideoTitle().then(t=>{e.config.title=t,Rt.setTitle.call(this)}),e.embed.getCurrentTime().then(t=>{f=t,Je.call(e,e.media,`timeupdate`)}),e.embed.getDuration().then(t=>{e.media.duration=t,Je.call(e,e.media,`durationchange`)}),e.embed.getTextTracks().then(t=>{e.media.textTracks=t,Ot.setup.call(e)}),e.embed.on(`cuechange`,({cues:t=[]})=>{let n=t.map(e=>ht(e.text));Ot.updateCues.call(e,n)}),e.embed.on(`loaded`,()=>{e.embed.getPaused().then(t=>{Yt.call(e,!t),t||Je.call(e,e.media,`playing`)}),F.element(e.embed.element)&&e.supported.ui&&e.embed.element.setAttribute(`tabindex`,-1)}),e.embed.on(`bufferstart`,()=>{Je.call(e,e.media,`waiting`)}),e.embed.on(`bufferend`,()=>{Je.call(e,e.media,`playing`)}),e.embed.on(`play`,()=>{Yt.call(e,!0),Je.call(e,e.media,`playing`)}),e.embed.on(`pause`,()=>{Yt.call(e,!1)}),e.embed.on(`timeupdate`,t=>{e.media.seeking=!1,f=t.seconds,Je.call(e,e.media,`timeupdate`)}),e.embed.on(`progress`,t=>{e.media.buffered=t.percent,Je.call(e,e.media,`progress`),Number.parseInt(t.percent,10)===1&&Je.call(e,e.media,`canplaythrough`),e.embed.getDuration().then(t=>{t!==e.media.duration&&(e.media.duration=t,Je.call(e,e.media,`durationchange`))})}),e.embed.on(`seeked`,()=>{e.media.seeking=!1,Je.call(e,e.media,`seeked`)}),e.embed.on(`ended`,()=>{e.media.paused=!0,Je.call(e,e.media,`ended`)}),e.embed.on(`error`,t=>{e.media.error=t,Je.call(e,e.media,`error`)}),t.customControls&&setTimeout(()=>Rt.build.call(e),0)}};function Zt(e){if(F.empty(e))return null;let t=e.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|&v=)([^#&?]*).*/);return t&&t[2]?t[2]:e}function Qt(e){e&&!this.embed.hasPlayed&&(this.embed.hasPlayed=!0),this.media.paused===e&&(this.media.paused=!e,Je.call(this,this.media,e?`play`:`pause`))}function $t(e){if(e.noCookie)return`https://www.youtube-nocookie.com`;if(window.location.protocol===`http:`)return`http://www.youtube.com`}var en={setup(){if(Pe(this.elements.wrapper,this.config.classNames.embed,!0),F.object(window.YT)&&F.function(window.YT.Player))en.ready.call(this);else{let e=window.onYouTubeIframeAPIReady;window.onYouTubeIframeAPIReady=()=>{F.function(e)&&e(),en.ready.call(this)},Kt(this.config.urls.youtube.sdk).catch(e=>{this.debug.warn(`YouTube API failed to load`,e)})}},getTitle(e){bt(ut(this.config.urls.youtube.api,e)).then(e=>{if(F.object(e)){let{title:t,height:n,width:r}=e;this.config.title=t,Rt.setTitle.call(this),this.embed.ratio=at(r,n)}it.call(this)}).catch(()=>{it.call(this)})},ready(){let e=this,t=e.config.youtube,n=e.media&&e.media.getAttribute(`id`);if(!F.empty(n)&&n.startsWith(`youtube-`))return;let r=e.media.getAttribute(`src`);F.empty(r)&&(r=e.media.getAttribute(this.config.attributes.embed.id));let i=Zt(r);if(e.media=je(De(`div`,{id:lt(e.provider),"data-poster":t.customControls?e.poster:void 0}),e.media),t.customControls){let t=e=>`https://i.ytimg.com/vi/${i}/${e}default.jpg`;Lt(t(`maxres`),121).catch(()=>Lt(t(`sd`),121)).catch(()=>Lt(t(`hq`))).then(t=>Rt.setPoster.call(e,t.src)).then(t=>{t.includes(`maxres`)||(e.elements.poster.style.backgroundSize=`cover`)}).catch(()=>{})}e.embed=new window.YT.Player(e.media,{videoId:i,host:$t(t),playerVars:we({},{autoplay:+!!e.config.autoplay,hl:e.config.hl,controls:e.supported.ui&&t.customControls?0:1,disablekb:1,playsinline:e.config.playsinline&&!e.config.fullscreen.iosNative?1:0,cc_load_policy:+!!e.captions.active,cc_lang_pref:e.config.captions.language,widget_referrer:window?window.location.href:null},t),events:{onError(t){if(!e.media.error){let n=t.data,r={2:`The request contains an invalid parameter value. For example, this error occurs if you specify a video ID that does not have 11 characters, or if the video ID contains invalid characters, such as exclamation points or asterisks.`,5:`The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.`,100:`The video requested was not found. This error occurs when a video has been removed (for any reason) or has been marked as private.`,101:`The owner of the requested video does not allow it to be played in embedded players.`,150:`The owner of the requested video does not allow it to be played in embedded players.`}[n]||`An unknown error occurred`;e.media.error={code:n,message:r},Je.call(e,e.media,`error`)}},onPlaybackRateChange(t){let n=t.target;e.media.playbackRate=n.getPlaybackRate(),Je.call(e,e.media,`ratechange`)},onReady(n){if(F.function(e.media.play))return;let r=n.target;en.getTitle.call(e,i),e.media.play=()=>{Qt.call(e,!0),r.playVideo()},e.media.pause=()=>{Qt.call(e,!1),r.pauseVideo()},e.media.stop=()=>{r.stopVideo()},e.media.duration=r.getDuration(),e.media.paused=!0,e.media.currentTime=0,Object.defineProperty(e.media,"currentTime",{get(){return Number(r.getCurrentTime())},set(t){e.paused&&!e.embed.hasPlayed&&e.embed.mute(),e.media.seeking=!0,Je.call(e,e.media,`seeking`),r.seekTo(t)}}),Object.defineProperty(e.media,"playbackRate",{get(){return r.getPlaybackRate()},set(e){r.setPlaybackRate(e)}});let{volume:a}=e.config;Object.defineProperty(e.media,"volume",{get(){return a},set(t){a=t,r.setVolume(a*100),Je.call(e,e.media,`volumechange`)}});let{muted:o}=e.config;Object.defineProperty(e.media,"muted",{get(){return o},set(t){let n=F.boolean(t)?t:o;o=n,r[n?`mute`:`unMute`](),r.setVolume(a*100),Je.call(e,e.media,`volumechange`)}}),Object.defineProperty(e.media,"currentSrc",{get(){return r.getVideoUrl()}}),Object.defineProperty(e.media,"ended",{get(){return e.currentTime===e.duration}});let s=r.getAvailablePlaybackRates();e.options.speed=s.filter(t=>e.config.speed.options.includes(t)),e.supported.ui&&t.customControls&&e.media.setAttribute(`tabindex`,-1),Je.call(e,e.media,`timeupdate`),Je.call(e,e.media,`durationchange`),clearInterval(e.timers.buffering),e.timers.buffering=setInterval(()=>{e.media.buffered=r.getVideoLoadedFraction(),(e.media.lastBuffered===null||e.media.lastBuffered<e.media.buffered)&&Je.call(e,e.media,`progress`),e.media.lastBuffered=e.media.buffered,e.media.buffered===1&&(clearInterval(e.timers.buffering),Je.call(e,e.media,`canplaythrough`))},200),t.customControls&&setTimeout(()=>Rt.build.call(e),50)},onStateChange(n){let r=n.target;switch(clearInterval(e.timers.playing),e.media.seeking&&[1,2].includes(n.data)&&(e.media.seeking=!1,Je.call(e,e.media,`seeked`)),n.data){case-1:Je.call(e,e.media,`timeupdate`),e.media.buffered=r.getVideoLoadedFraction(),Je.call(e,e.media,`progress`);break;case 0:Qt.call(e,!1),e.media.loop?(r.stopVideo(),r.playVideo()):Je.call(e,e.media,`ended`);break;case 1:t.customControls&&!e.config.autoplay&&e.media.paused&&!e.embed.hasPlayed?e.media.pause():(Qt.call(e,!0),Je.call(e,e.media,`playing`),e.timers.playing=setInterval(()=>{Je.call(e,e.media,`timeupdate`)},50),e.media.duration!==r.getDuration()&&(e.media.duration=r.getDuration(),Je.call(e,e.media,`durationchange`)));break;case 2:e.muted||e.embed.unMute(),Qt.call(e,!1);break;case 3:Je.call(e,e.media,`waiting`)}Je.call(e,e.elements.container,`statechange`,!1,{code:n.data})}}})}},tn={setup(){this.media?(Pe(this.elements.container,this.config.classNames.type.replace(`{0}`,this.type),!0),Pe(this.elements.container,this.config.classNames.provider.replace(`{0}`,this.provider),!0),this.isEmbed&&Pe(this.elements.container,this.config.classNames.type.replace(`{0}`,`video`),!0),this.isVideo&&(this.elements.wrapper=De(`div`,{class:this.config.classNames.video}),Te(this.media,this.elements.wrapper),this.elements.poster=De(`div`,{class:this.config.classNames.poster}),this.elements.wrapper.appendChild(this.elements.poster)),this.isHTML5?st.setup.call(this):this.isYouTube?en.setup.call(this):this.isVimeo&&Xt.setup.call(this)):this.debug.warn(`No media element found!`)}};function nn(e){e.manager&&e.manager.destroy(),e.elements.displayContainer&&e.elements.displayContainer.destroy(),e.elements.container.remove()}var rn=class{constructor(e){l(this,`load`,()=>{this.enabled&&(!F.object(window.google)||!F.object(window.google.ima)?Kt(this.player.config.urls.googleIMA.sdk).then(()=>{this.ready()}).catch(()=>{this.trigger(`error`,/* @__PURE__ */ Error(`Google IMA SDK failed to load`))}):this.ready())}),l(this,`ready`,()=>{this.enabled||nn(this),this.startSafetyTimer(12e3,`ready()`),this.managerPromise.then(()=>{this.clearSafetyTimer(`onAdsManagerLoaded()`)}),this.listeners(),this.setupIMA()}),l(this,`setupIMA`,()=>{this.elements.container=De(`div`,{class:this.player.config.classNames.ads}),this.player.elements.container.appendChild(this.elements.container),google.ima.settings.setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.ENABLED),google.ima.settings.setLocale(this.player.config.ads.language),google.ima.settings.setDisableCustomPlaybackForIOS10Plus(this.player.config.playsinline),this.elements.displayContainer=new google.ima.AdDisplayContainer(this.elements.container,this.player.media),this.loader=new google.ima.AdsLoader(this.elements.displayContainer),this.loader.addEventListener(google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,e=>this.onAdsManagerLoaded(e),!1),this.loader.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,e=>this.onAdError(e),!1),this.requestAds()}),l(this,`requestAds`,()=>{let{container:e}=this.player.elements;try{let t=new google.ima.AdsRequest;t.adTagUrl=this.tagUrl,t.linearAdSlotWidth=e.offsetWidth,t.linearAdSlotHeight=e.offsetHeight,t.nonLinearAdSlotWidth=e.offsetWidth,t.nonLinearAdSlotHeight=e.offsetHeight,t.forceNonLinearFullSlot=!1,t.setAdWillPlayMuted(!this.player.muted),this.loader.requestAds(t)}catch(e){this.onAdError(e)}}),l(this,`pollCountdown`,(e=!1)=>{if(!e){clearInterval(this.countdownTimer),this.elements.container.removeAttribute(`data-badge-text`);return}let t=()=>{let e=Tt(Math.max(this.manager.getRemainingTime(),0)),t=`${vt.get(`advertisement`,this.player.config)} - ${e}`;this.elements.container.setAttribute(`data-badge-text`,t)};this.countdownTimer=setInterval(t,100)}),l(this,`onAdsManagerLoaded`,e=>{if(!this.enabled)return;let t=new google.ima.AdsRenderingSettings;t.restoreCustomPlaybackStateOnAdBreakComplete=!0,t.enablePreloading=!0,this.manager=e.getAdsManager(this.player,t),this.cuePoints=this.manager.getCuePoints(),this.manager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,e=>this.onAdError(e)),Object.keys(google.ima.AdEvent.Type).forEach(e=>{this.manager.addEventListener(google.ima.AdEvent.Type[e],e=>this.onAdEvent(e))}),this.trigger(`loaded`)}),l(this,`addCuePoints`,()=>{F.empty(this.cuePoints)||this.cuePoints.forEach(e=>{if(e!==0&&e!==-1&&e<this.player.duration){let t=this.player.elements.progress;if(F.element(t)){let n=100/this.player.duration*e,r=De(`span`,{class:this.player.config.classNames.cues});r.style.left=`${n.toString()}%`,t.appendChild(r)}}})}),l(this,`onAdEvent`,e=>{let{container:t}=this.player.elements,n=e.getAd(),r=e.getAdData();switch((e=>{Je.call(this.player,this.player.media,`ads${e.replace(/_/g,``).toLowerCase()}`)})(e.type),e.type){case google.ima.AdEvent.Type.LOADED:this.trigger(`loaded`),this.pollCountdown(!0),n.isLinear()||(n.width=t.offsetWidth,n.height=t.offsetHeight);break;case google.ima.AdEvent.Type.STARTED:this.manager.setVolume(this.player.volume);break;case google.ima.AdEvent.Type.ALL_ADS_COMPLETED:this.player.ended?this.loadAds():this.loader.contentComplete();break;case google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED:this.pauseContent();break;case google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED:this.pollCountdown(),this.resumeContent();break;case google.ima.AdEvent.Type.LOG:r.adError&&this.player.debug.warn(`Non-fatal ad error: ${r.adError.getMessage()}`)}}),l(this,`onAdError`,e=>{this.cancel(),this.player.debug.warn(`Ads error`,e)}),l(this,`listeners`,()=>{let{container:e}=this.player.elements,t;this.player.on(`canplay`,()=>{this.addCuePoints()}),this.player.on(`ended`,()=>{this.loader.contentComplete()}),this.player.on(`timeupdate`,()=>{t=this.player.currentTime}),this.player.on(`seeked`,()=>{let e=this.player.currentTime;F.empty(this.cuePoints)||this.cuePoints.forEach((n,r)=>{t<n&&n<e&&(this.manager.discardAdBreak(),this.cuePoints.splice(r,1))})}),window.addEventListener(`resize`,()=>{this.manager&&this.manager.resize(e.offsetWidth,e.offsetHeight,google.ima.ViewMode.NORMAL)})}),l(this,`play`,()=>{let{container:e}=this.player.elements;this.managerPromise||this.resumeContent(),this.managerPromise.then(()=>{this.manager.setVolume(this.player.volume),this.elements.displayContainer.initialize();try{this.initialized||(this.manager.init(e.offsetWidth,e.offsetHeight,google.ima.ViewMode.NORMAL),this.manager.start()),this.initialized=!0}catch(e){this.onAdError(e)}}).catch(()=>{})}),l(this,`resumeContent`,()=>{this.elements.container.style.zIndex=``,this.playing=!1,Ze(this.player.media.play())}),l(this,`pauseContent`,()=>{this.elements.container.style.zIndex=3,this.playing=!0,this.player.media.pause()}),l(this,`cancel`,()=>{this.initialized&&this.resumeContent(),this.trigger(`error`),this.loadAds()}),l(this,`loadAds`,()=>{this.managerPromise.then(()=>{this.manager&&this.manager.destroy(),this.managerPromise=new Promise(e=>{this.on(`loaded`,e),this.player.debug.log(this.manager)}),this.initialized=!1,this.requestAds()}).catch(()=>{})}),l(this,`trigger`,(e,...t)=>{let n=this.events[e];F.array(n)&&n.forEach(e=>{F.function(e)&&e.apply(this,t)})}),l(this,`on`,(e,t)=>(F.array(this.events[e])||(this.events[e]=[]),this.events[e].push(t),this)),l(this,`startSafetyTimer`,(e,t)=>{this.player.debug.log(`Safety timer invoked from: ${t}`),this.safetyTimer=setTimeout(()=>{this.cancel(),this.clearSafetyTimer(`startSafetyTimer()`)},e)}),l(this,`clearSafetyTimer`,e=>{F.nullOrUndefined(this.safetyTimer)||(this.player.debug.log(`Safety timer cleared from: ${e}`),clearTimeout(this.safetyTimer),this.safetyTimer=null)}),this.player=e,this.config=e.config.ads,this.playing=!1,this.initialized=!1,this.elements={container:null,displayContainer:null},this.manager=null,this.loader=null,this.cuePoints=null,this.events={},this.safetyTimer=null,this.countdownTimer=null,this.managerPromise=new Promise((e,t)=>{this.on(`loaded`,e),this.on(`error`,t)}),this.load()}get enabled(){let{config:e}=this;return this.player.isHTML5&&this.player.isVideo&&e.enabled&&(!F.empty(e.publisherId)||F.url(e.tagUrl))}get tagUrl(){let{config:e}=this;return F.url(e.tagUrl)?e.tagUrl:`https://go.aniview.com/api/adserver6/vast/?${Dt({AV_PUBLISHERID:`58c25bb0073ef448b1087ad6`,AV_CHANNELID:`5a0458dc28a06145e4519d21`,AV_URL:window.location.hostname,cb:Date.now(),AV_WIDTH:640,AV_HEIGHT:480,AV_CDIM2:e.publisherId})}`}};function an(e=0,t=0,n=255){return Math.min(Math.max(e,t),n)}function on(e){let t=[];return e.split(/\r\n\r\n|\n\n|\r\r/).forEach(e=>{let n={};e.split(/\r\n|\n|\r/).forEach(e=>{if(!F.number(n.startTime)){let t=e.match(/(\d{2})?:?(\d{2}):(\d{2}).(\d{2,3})( ?--> ?)(\d{2})?:?(\d{2}):(\d{2}).(\d{2,3})/);t&&(n.startTime=Number(t[1]||0)*60*60+Number(t[2])*60+Number(t[3])+Number(`0.${t[4]}`),n.endTime=Number(t[6]||0)*60*60+Number(t[7])*60+Number(t[8])+Number(`0.${t[9]}`))}else if(!F.empty(e.trim())&&F.empty(n.text)){let t=e.trim().split(`#xywh=`);[n.text]=t,t[1]&&([n.x,n.y,n.w,n.h]=t[1].split(`,`))}}),n.text&&t.push(n)}),t}function sn(e,t){let n=t.width/t.height,r={};return e>n?(r.width=t.width,r.height=1/e*t.width):(r.height=t.height,r.width=e*t.height),r}var cn=class{constructor(e){l(this,`load`,()=>{this.player.elements.display.seekTooltip&&(this.player.elements.display.seekTooltip.hidden=this.enabled),this.enabled&&this.getThumbnails().then(()=>{this.enabled&&(this.render(),this.determineContainerAutoSizing(),this.listeners(),this.loaded=!0)})}),l(this,`getThumbnails`,()=>new Promise(e=>{let{src:t}=this.player.config.previewThumbnails;if(F.empty(t))throw Error(`Missing previewThumbnails.src config attribute`);let n=()=>{this.thumbnails.sort((e,t)=>e.height-t.height),this.player.debug.log(`Preview thumbnails`,this.thumbnails),e()};if(F.function(t))t(e=>{this.thumbnails=e,n()});else{let e=(F.string(t)?[t]:t).map(e=>this.getThumbnail(e));Promise.all(e).then(n)}})),l(this,`getThumbnail`,e=>new Promise(t=>{bt(e,void 0,this.player.config.previewThumbnails.withCredentials).then(n=>{let r={frames:on(n),height:null,urlPrefix:``};!r.frames[0].text.startsWith(`/`)&&!r.frames[0].text.startsWith(`http://`)&&!r.frames[0].text.startsWith(`https://`)&&(r.urlPrefix=e.substring(0,e.lastIndexOf(`/`)+1));let i=new Image;i.onload=()=>{r.height=i.naturalHeight,r.width=i.naturalWidth,this.thumbnails.push(r),t()},i.src=r.urlPrefix+r.frames[0].text})})),l(this,`startMove`,e=>{if(this.loaded&&F.event(e)&&[`touchmove`,`mousemove`].includes(e.type)&&this.player.media.duration){if(e.type===`touchmove`)this.seekTime=this.player.media.duration*(this.player.elements.inputs.seek.value/100);else{let t=this.player.elements.progress.getBoundingClientRect(),n=100/t.width*(e.pageX-t.left);this.seekTime=this.player.media.duration*(n/100),this.seekTime<0&&(this.seekTime=0),this.seekTime>this.player.media.duration-1&&(this.seekTime=this.player.media.duration-1),this.mousePosX=e.pageX,this.elements.thumb.time.textContent=Tt(this.seekTime);let r=this.player.config.markers?.points?.find(({time:e})=>e===Math.round(this.seekTime));r&&this.elements.thumb.time.insertAdjacentHTML(`afterbegin`,`${r.label}<br>`)}this.showImageAtCurrentTime()}}),l(this,`endMove`,()=>{this.toggleThumbContainer(!1,!0)}),l(this,`startScrubbing`,e=>{(F.nullOrUndefined(e.button)||e.button===!1||e.button===0)&&(this.mouseDown=!0,this.player.media.duration&&(this.toggleScrubbingContainer(!0),this.toggleThumbContainer(!1,!0),this.showImageAtCurrentTime()))}),l(this,`endScrubbing`,()=>{this.mouseDown=!1,Math.ceil(this.lastTime)===Math.ceil(this.player.media.currentTime)?this.toggleScrubbingContainer(!1):qe.call(this.player,this.player.media,`timeupdate`,()=>{this.mouseDown||this.toggleScrubbingContainer(!1)})}),l(this,`listeners`,()=>{this.player.on(`play`,()=>{this.toggleThumbContainer(!1,!0)}),this.player.on(`seeked`,()=>{this.toggleThumbContainer(!1)}),this.player.on(`timeupdate`,()=>{this.lastTime=this.player.media.currentTime})}),l(this,`render`,()=>{this.elements.thumb.container=De(`div`,{class:this.player.config.classNames.previewThumbnails.thumbContainer}),this.elements.thumb.imageContainer=De(`div`,{class:this.player.config.classNames.previewThumbnails.imageContainer}),this.elements.thumb.container.appendChild(this.elements.thumb.imageContainer);let e=De(`div`,{class:this.player.config.classNames.previewThumbnails.timeContainer});this.elements.thumb.time=De(`span`,{},`00:00`),e.appendChild(this.elements.thumb.time),this.elements.thumb.imageContainer.appendChild(e),F.element(this.player.elements.progress)&&this.player.elements.progress.appendChild(this.elements.thumb.container),this.elements.scrubbing.container=De(`div`,{class:this.player.config.classNames.previewThumbnails.scrubbingContainer}),this.player.elements.wrapper.appendChild(this.elements.scrubbing.container)}),l(this,`destroy`,()=>{this.elements.thumb.container&&this.elements.thumb.container.remove(),this.elements.scrubbing.container&&this.elements.scrubbing.container.remove()}),l(this,`showImageAtCurrentTime`,()=>{this.mouseDown?this.setScrubbingContainerSize():this.setThumbContainerSizeAndPos();let e=this.thumbnails[0].frames.findIndex(e=>this.seekTime>=e.startTime&&this.seekTime<=e.endTime),t=e>=0,n=0;this.mouseDown||this.toggleThumbContainer(t),t&&(this.thumbnails.forEach((t,r)=>{this.loadedImages.includes(t.frames[e].text)&&(n=r)}),e!==this.showingThumb&&(this.showingThumb=e,this.loadImage(n)))}),l(this,`loadImage`,(e=0)=>{let t=this.showingThumb,n=this.thumbnails[e],{urlPrefix:r}=n,i=n.frames[t],a=n.frames[t].text,o=r+a;if(!this.currentImageElement||this.currentImageElement.dataset.filename!==a){this.loadingImage&&this.usingSprites&&(this.loadingImage.onload=null);let n=new Image;n.src=o,n.dataset.index=t,n.dataset.filename=a,this.showingThumbFilename=a,this.player.debug.log(`Loading image: ${o}`),n.onload=()=>this.showImage(n,i,e,t,a,!0),this.loadingImage=n,this.removeOldImages(n)}else this.showImage(this.currentImageElement,i,e,t,a,!1),this.currentImageElement.dataset.index=t,this.removeOldImages(this.currentImageElement)}),l(this,`showImage`,(e,t,n,r,i,a=!0)=>{this.player.debug.log(`Showing thumb: ${i}. num: ${r}. qual: ${n}. newimg: ${a}`),this.setImageSizeAndOffset(e,t),a&&(this.currentImageContainer.appendChild(e),this.currentImageElement=e,this.loadedImages.includes(i)||this.loadedImages.push(i)),this.preloadNearby(r,!0).then(this.preloadNearby(r,!1)).then(this.getHigherQuality(n,e,t,i))}),l(this,`removeOldImages`,e=>{Array.from(this.currentImageContainer.children).forEach(t=>{if(t.tagName.toLowerCase()!==`img`)return;let n=this.usingSprites?500:1e3;if(t.dataset.index!==e.dataset.index&&!t.dataset.deleting){t.dataset.deleting=!0;let{currentImageContainer:e}=this;setTimeout(()=>{e.removeChild(t),this.player.debug.log(`Removing thumb: ${t.dataset.filename}`)},n)}})}),l(this,`preloadNearby`,(e,t=!0)=>new Promise(n=>{setTimeout(()=>{let r=this.thumbnails[0].frames[e].text;if(this.showingThumbFilename===r){let i;i=t?this.thumbnails[0].frames.slice(e):this.thumbnails[0].frames.slice(0,e).reverse();let a=!1;i.forEach(e=>{let t=e.text;if(t!==r&&!this.loadedImages.includes(t)){a=!0,this.player.debug.log(`Preloading thumb filename: ${t}`);let{urlPrefix:e}=this.thumbnails[0],r=e+t,i=new Image;i.src=r,i.onload=()=>{this.player.debug.log(`Preloaded thumb filename: ${t}`),this.loadedImages.includes(t)||this.loadedImages.push(t),n()}}}),a||n()}},300)})),l(this,`getHigherQuality`,(e,t,n,r)=>{if(e<this.thumbnails.length-1){let i=t.naturalHeight;this.usingSprites&&(i=n.h),i<this.thumbContainerHeight&&setTimeout(()=>{this.showingThumbFilename===r&&(this.player.debug.log(`Showing higher quality thumb for: ${r}`),this.loadImage(e+1))},300)}}),l(this,`toggleThumbContainer`,(e=!1,t=!1)=>{let n=this.player.config.classNames.previewThumbnails.thumbContainerShown;this.elements.thumb.container.classList.toggle(n,e),!e&&t&&(this.showingThumb=null,this.showingThumbFilename=null)}),l(this,`toggleScrubbingContainer`,(e=!1)=>{let t=this.player.config.classNames.previewThumbnails.scrubbingContainerShown;this.elements.scrubbing.container.classList.toggle(t,e),e||(this.showingThumb=null,this.showingThumbFilename=null)}),l(this,`determineContainerAutoSizing`,()=>{(this.elements.thumb.imageContainer.clientHeight>20||this.elements.thumb.imageContainer.clientWidth>20)&&(this.sizeSpecifiedInCSS=!0)}),l(this,`setThumbContainerSizeAndPos`,()=>{let{imageContainer:e}=this.elements.thumb;if(!this.sizeSpecifiedInCSS){let t=Math.floor(this.thumbContainerHeight*this.thumbAspectRatio);e.style.height=`${this.thumbContainerHeight}px`,e.style.width=`${t}px`}else if(e.clientHeight>20&&e.clientWidth<20){let t=Math.floor(e.clientHeight*this.thumbAspectRatio);e.style.width=`${t}px`}else if(e.clientHeight<20&&e.clientWidth>20){let t=Math.floor(e.clientWidth/this.thumbAspectRatio);e.style.height=`${t}px`}this.setThumbContainerPos()}),l(this,`setThumbContainerPos`,()=>{let e=this.player.elements.progress.getBoundingClientRect(),t=this.player.elements.container.getBoundingClientRect(),{container:n}=this.elements.thumb,r=t.left-e.left+10,i=t.right-e.left-n.clientWidth-10,a=this.mousePosX-e.left-n.clientWidth/2,o=an(a,r,i);n.style.left=`${o}px`,n.style.setProperty(`--preview-arrow-offset`,`${a-o}px`)}),l(this,`setScrubbingContainerSize`,()=>{let{width:e,height:t}=sn(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight});this.elements.scrubbing.container.style.width=`${e}px`,this.elements.scrubbing.container.style.height=`${t}px`}),l(this,`setImageSizeAndOffset`,(e,t)=>{if(!this.usingSprites)return;let n=this.thumbContainerHeight/t.h;e.style.height=`${e.naturalHeight*n}px`,e.style.width=`${e.naturalWidth*n}px`,e.style.left=`-${t.x*n}px`,e.style.top=`-${t.y*n}px`}),this.player=e,this.thumbnails=[],this.loaded=!1,this.lastMouseMoveTime=Date.now(),this.mouseDown=!1,this.loadedImages=[],this.elements={thumb:{},scrubbing:{}},this.load()}get enabled(){return this.player.isHTML5&&this.player.isVideo&&this.player.config.previewThumbnails.enabled}get currentImageContainer(){return this.mouseDown?this.elements.scrubbing.container:this.elements.thumb.imageContainer}get usingSprites(){return Object.keys(this.thumbnails[0].frames[0]).includes(`w`)}get thumbAspectRatio(){return this.usingSprites?this.thumbnails[0].frames[0].w/this.thumbnails[0].frames[0].h:this.thumbnails[0].width/this.thumbnails[0].height}get thumbContainerHeight(){if(this.mouseDown){let{height:e}=sn(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight});return e}return this.sizeSpecifiedInCSS?this.elements.thumb.imageContainer.clientHeight:Math.floor(this.player.media.clientWidth/this.thumbAspectRatio/4)}get currentImageElement(){return this.mouseDown?this.currentScrubbingImageElement:this.currentThumbnailImageElement}set currentImageElement(e){this.mouseDown?this.currentScrubbingImageElement=e:this.currentThumbnailImageElement=e}},ln={insertElements(e,t){F.string(t)?ke(e,this.media,{src:t}):F.array(t)&&t.forEach(t=>{ke(e,this.media,t)})},change(e){Ce(e,`sources.length`)?(st.cancelRequests.call(this),this.destroy(()=>{this.options.quality=[],I(this.media),this.media=null,F.element(this.elements.container)&&this.elements.container.removeAttribute(`class`);let{sources:t,type:n}=e,[{provider:r=jt.html5,src:i}]=t,a=r===`html5`?n:`div`,o=r===`html5`?{}:{src:i};Object.assign(this,{provider:r,type:n,supported:He.check(n,r,this.config.playsinline),media:De(a,o)}),this.elements.container.appendChild(this.media),F.boolean(e.autoplay)&&(this.config.autoplay=e.autoplay),this.isHTML5&&(this.config.crossorigin&&this.media.setAttribute(`crossorigin`,``),this.config.autoplay&&this.media.setAttribute(`autoplay`,``),F.empty(e.poster)||(this.poster=e.poster),this.config.loop.active&&this.media.setAttribute(`loop`,``),this.config.muted&&this.media.setAttribute(`muted`,``),this.config.playsinline&&this.media.setAttribute(`playsinline`,``)),Rt.addStyleHook.call(this),this.isHTML5&&ln.insertElements.call(this,`source`,t),this.config.title=e.title,tn.setup.call(this),this.isHTML5&&Object.keys(e).includes(`tracks`)&&ln.insertElements.call(this,`track`,e.tracks),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&Rt.build.call(this),this.isHTML5&&this.media.load(),F.empty(e.previewThumbnails)||(Object.assign(this.config.previewThumbnails,e.previewThumbnails),this.previewThumbnails&&this.previewThumbnails.loaded&&(this.previewThumbnails.destroy(),this.previewThumbnails=null),this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))),this.fullscreen.update()},!0)):this.debug.warn(`Invalid source format`)}},un=class e{constructor(t,n){if(l(this,`play`,()=>F.function(this.media.play)?(this.ads&&this.ads.enabled&&this.ads.managerPromise.then(()=>this.ads.play()).catch(()=>Ze(this.media.play())),this.media.play()):null),l(this,`pause`,()=>!this.playing||!F.function(this.media.pause)?null:this.media.pause()),l(this,`togglePlay`,e=>(F.boolean(e)?e:!this.playing)?this.play():this.pause()),l(this,`stop`,()=>{this.isHTML5?(this.pause(),this.restart()):F.function(this.media.stop)&&this.media.stop()}),l(this,`restart`,()=>{this.currentTime=0}),l(this,`rewind`,e=>{this.currentTime-=F.number(e)?e:this.config.seekTime}),l(this,`forward`,e=>{this.currentTime+=F.number(e)?e:this.config.seekTime}),l(this,`increaseVolume`,e=>{let t=this.media.muted?0:this.volume;this.volume=t+(F.number(e)?e:0)}),l(this,`decreaseVolume`,e=>{this.increaseVolume(-e)}),l(this,`airplay`,()=>{He.airplay&&this.media.webkitShowPlaybackTargetPicker()}),l(this,`toggleControls`,e=>{if(this.supported.ui&&!this.isAudio){let t=Fe(this.elements.container,this.config.classNames.hideControls),n=e===void 0?void 0:!e,r=Pe(this.elements.container,this.config.classNames.hideControls,n);if(r&&F.array(this.config.controls)&&this.config.controls.includes(`settings`)&&!F.empty(this.config.settings)&&z.toggleMenu.call(this,!1),r!==t){let e=r?`controlshidden`:`controlsshown`;Je.call(this,this.media,e)}return!r}return!1}),l(this,`on`,(e,t)=>{Ge.call(this,this.elements.container,e,t)}),l(this,`once`,(e,t)=>{qe.call(this,this.elements.container,e,t)}),l(this,`off`,(e,t)=>{Ke(this.elements.container,e,t)}),l(this,`destroy`,(e,t=!1)=>{if(!this.ready)return;let n=()=>{document.body.style.overflow=``,this.embed=null,t?(Object.keys(this.elements).length&&(I(this.elements.buttons.play),I(this.elements.captions),I(this.elements.controls),I(this.elements.wrapper),this.elements.buttons.play=null,this.elements.captions=null,this.elements.controls=null,this.elements.wrapper=null),F.function(e)&&e()):(Ye.call(this),st.cancelRequests.call(this),je(this.elements.original,this.elements.container),Je.call(this,this.elements.original,`destroyed`,!0),F.function(e)&&e.call(this.elements.original),this.ready=!1,setTimeout(()=>{this.elements=null,this.media=null},200))};this.stop(),clearTimeout(this.timers.loading),clearTimeout(this.timers.controls),clearTimeout(this.timers.resized),this.isHTML5?(Rt.toggleNativeControls.call(this,!0),n()):this.isYouTube?(clearInterval(this.timers.buffering),clearInterval(this.timers.playing),this.embed!==null&&F.function(this.embed.destroy)&&this.embed.destroy(),n()):this.isVimeo&&(this.embed!==null&&this.embed.unload().then(n),setTimeout(n,200))}),l(this,`supports`,e=>He.mime.call(this,e)),this.timers={},this.ready=!1,this.loading=!1,this.failed=!1,this.touch=He.touch,this.media=t,F.string(this.media)&&(this.media=document.querySelectorAll(this.media)),(window.jQuery&&this.media instanceof jQuery||F.nodeList(this.media)||F.array(this.media))&&(this.media=this.media[0]),this.config=we({},kt,e.defaults,n||{},(()=>{try{return JSON.parse(this.media.getAttribute(`data-plyr-config`))}catch{return{}}})()),this.elements={container:null,fullscreen:null,captions:null,buttons:{},display:{},progress:{},inputs:{},settings:{popup:null,menu:null,panels:{},buttons:{}}},this.captions={active:null,currentTrack:-1,meta:/* @__PURE__ */ new WeakMap},this.fullscreen={active:!1},this.options={speed:[],quality:[]},this.debug=new Ft(this.config.debug),this.debug.log(`Config`,this.config),this.debug.log(`Support`,He),F.nullOrUndefined(this.media)||!F.element(this.media)){this.debug.error(`Setup failed: no suitable element passed`);return}if(this.media.plyr){this.debug.warn(`Target already setup`);return}if(!this.config.enabled){this.debug.error(`Setup failed: disabled by config`);return}if(!He.check().api){this.debug.error(`Setup failed: no support`);return}let r=this.media.cloneNode(!0);r.autoplay=!1,this.elements.original=r;let i=this.media.tagName.toLowerCase(),a=null,o=null;switch(i){case`div`:if(a=this.media.querySelector(`iframe`),F.element(a)){if(o=Et(a.getAttribute(`src`)),this.provider=Nt(o.toString()),this.elements.container=this.media,this.media=a,this.elements.container.className=``,o.search.length){let e=[`1`,`true`];e.includes(o.searchParams.get(`autoplay`))&&(this.config.autoplay=!0),e.includes(o.searchParams.get(`loop`))&&(this.config.loop.active=!0),this.isYouTube?(this.config.playsinline=e.includes(o.searchParams.get(`playsinline`)),this.config.youtube.hl=o.searchParams.get(`hl`)):this.config.playsinline=!0}}else this.provider=this.media.getAttribute(this.config.attributes.embed.provider),this.media.removeAttribute(this.config.attributes.embed.provider);if(F.empty(this.provider)||!Object.values(jt).includes(this.provider)){this.debug.error(`Setup failed: Invalid provider`);return}this.type=Mt.video;break;case`video`:case`audio`:this.type=i,this.provider=jt.html5,this.media.hasAttribute(`crossorigin`)&&(this.config.crossorigin=!0),this.media.hasAttribute(`autoplay`)&&(this.config.autoplay=!0),(this.media.hasAttribute(`playsinline`)||this.media.hasAttribute(`webkit-playsinline`))&&(this.config.playsinline=!0),this.media.hasAttribute(`muted`)&&(this.config.muted=!0),this.media.hasAttribute(`loop`)&&(this.config.loop.active=!0);break;default:this.debug.error(`Setup failed: unsupported type`);return}this.supported=He.check(this.type,this.provider),this.supported.api?(this.eventListeners=[],this.listeners=new zt(this),this.storage=new yt(this),this.media.plyr=this,F.element(this.elements.container)||(this.elements.container=De(`div`),Te(this.media,this.elements.container)),Rt.migrateStyles.call(this),Rt.addStyleHook.call(this),tn.setup.call(this),this.config.debug&&Ge.call(this,this.elements.container,this.config.events.join(` `),e=>{this.debug.log(`event: ${e.type}`)}),this.fullscreen=new It(this),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&Rt.build.call(this),this.listeners.container(),this.listeners.global(),this.config.ads.enabled&&(this.ads=new rn(this)),this.isHTML5&&this.config.autoplay&&this.once(`canplay`,()=>Ze(this.play())),this.lastSeekTime=0,this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))):this.debug.error(`Setup failed: no support`)}get isHTML5(){return this.provider===jt.html5}get isEmbed(){return this.isYouTube||this.isVimeo}get isYouTube(){return this.provider===jt.youtube}get isVimeo(){return this.provider===jt.vimeo}get isVideo(){return this.type===Mt.video}get isAudio(){return this.type===Mt.audio}get playing(){return!(!this.ready||this.paused||this.ended)}get paused(){return!!this.media.paused}get stopped(){return!!(this.paused&&this.currentTime===0)}get ended(){return!!this.media.ended}set currentTime(e){if(!this.duration)return;let t=F.number(e)&&e>0;this.media.currentTime=t?Math.min(e,this.duration):0,this.debug.log(`Seeking to ${this.currentTime} seconds`)}get currentTime(){return Number(this.media.currentTime)}get buffered(){let{buffered:e}=this.media;return F.number(e)?e:e&&e.length&&this.duration>0?e.end(0)/this.duration:0}get seeking(){return!!this.media.seeking}get duration(){let e=Number.parseFloat(this.config.duration),t=(this.media||{}).duration,n=!F.number(t)||t===1/0?0:t;return e||n}set volume(e){let t=e;F.string(t)&&(t=Number(t)),F.number(t)||(t=this.storage.get(`volume`)),F.number(t)||({volume:t}=this.config),t>1&&(t=1),t<0&&(t=0),this.config.volume=t,this.media.volume=t,!F.empty(e)&&this.muted&&t>0&&(this.muted=!1)}get volume(){return Number(this.media.volume)}set muted(e){let t=e;F.boolean(t)||(t=this.storage.get(`muted`)),F.boolean(t)||(t=this.config.muted),this.config.muted=t,this.media.muted=t}get muted(){return!!this.media.muted}get hasAudio(){return!this.isHTML5||this.isAudio?!0:!!this.media.mozHasAudio||!!this.media.webkitAudioDecodedByteCount||!!(this.media.audioTracks&&this.media.audioTracks.length)}set speed(e){let t=null;F.number(e)&&(t=e),F.number(t)||(t=this.storage.get(`speed`)),F.number(t)||(t=this.config.speed.selected);let{minimumSpeed:n,maximumSpeed:r}=this;t=an(t,n,r),this.config.speed.selected=t,setTimeout(()=>{this.media&&(this.media.playbackRate=t)},0)}get speed(){return Number(this.media.playbackRate)}get minimumSpeed(){return this.isYouTube?Math.min(...this.options.speed):this.isVimeo?.5:.0625}get maximumSpeed(){return this.isYouTube?Math.max(...this.options.speed):this.isVimeo?2:16}set quality(e){let t=this.config.quality,n=this.options.quality;if(!n.length)return;let r=[!F.empty(e)&&Number(e),this.storage.get(`quality`),t.selected,t.default].find(F.number),i=!0;if(!n.includes(r)){let e=Qe(n,r);this.debug.warn(`Unsupported quality option: ${r}, using ${e} instead`),r=e,i=!1}t.selected=r,this.media.quality=r,i&&this.storage.set({quality:r})}get quality(){return this.media.quality}set loop(e){let t=F.boolean(e)?e:this.config.loop.active;this.config.loop.active=t,this.media.loop=t}get loop(){return!!this.media.loop}set source(e){ln.change.call(this,e)}get source(){return this.media.currentSrc}get download(){let{download:e}=this.config.urls;return F.url(e)?e:this.source}set download(e){F.url(e)&&(this.config.urls.download=e,z.setDownloadUrl.call(this))}set poster(e){this.isVideo?Rt.setPoster.call(this,e,!1).catch(()=>{}):this.debug.warn(`Poster can only be set for video`)}get poster(){return this.isVideo?this.media.getAttribute(`poster`)||this.media.getAttribute(`data-poster`):null}get ratio(){if(!this.isVideo)return null;let e=nt(rt.call(this));return F.array(e)?e.join(`:`):e}set ratio(e){this.isVideo?!F.string(e)||!tt(e)?this.debug.error(`Invalid aspect ratio specified (${e})`):(this.config.ratio=nt(e),it.call(this)):this.debug.warn(`Aspect ratio can only be set for video`)}set autoplay(e){this.config.autoplay=F.boolean(e)?e:this.config.autoplay}get autoplay(){return!!this.config.autoplay}toggleCaptions(e){Ot.toggle.call(this,e,!1)}set currentTrack(e){Ot.set.call(this,e,!1),Ot.setup.call(this)}get currentTrack(){let{toggled:e,currentTrack:t}=this.captions;return e?t:-1}set language(e){Ot.setLanguage.call(this,e,!1)}get language(){return(Ot.getCurrentTrack.call(this)||{}).language}set pip(e){if(!He.pip)return;let t=F.boolean(e)?e:!this.pip;F.function(this.media.webkitSetPresentationMode)&&this.media.webkitSetPresentationMode(t?At.active:At.inactive),F.function(this.media.requestPictureInPicture)&&(!this.pip&&t?this.media.requestPictureInPicture():this.pip&&!t&&document.exitPictureInPicture())}get pip(){return He.pip?F.empty(this.media.webkitPresentationMode)?this.media===document.pictureInPictureElement:this.media.webkitPresentationMode===At.active:null}setPreviewThumbnails(e){this.previewThumbnails&&this.previewThumbnails.loaded&&(this.previewThumbnails.destroy(),this.previewThumbnails=null),Object.assign(this.config.previewThumbnails,e),this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))}static supported(e,t){return He.check(e,t)}static loadSprite(e,t){return xt(e,t)}static setup(t,n={}){let r=null;return F.string(t)?r=Array.from(document.querySelectorAll(t)):F.nodeList(t)?r=Array.from(t):F.array(t)&&(r=t.filter(F.element)),F.empty(r)?null:r.map(t=>new e(t,n))}};un.defaults=Se(kt);var dn=new URL(`plyr-icons.svg`,import.meta.url).href,fn=class extends Error{constructor(e=`PLAYBACK_TOKEN_FAILED`){super(e===`PLAYBACK_TOKEN_TIMEOUT`?`Playback token acquisition timed out`:`Playback token acquisition failed`),this.name=`PlaybackTokenError`,this.code=e}};function pn({embedUuid:e,tokenEndpoint:t,getPlaybackToken:n,tokenHeaders:r}={},{fetchImpl:i=globalThis.fetch,origin:a=globalThis.location?.origin,timeoutMs:o=15e3}={}){let s=t!==void 0,c=n!==void 0,l=()=>new fn;if(s&&c||c&&typeof n!=`function`)throw l();let u,d;if(s)try{if(typeof t!=`string`||!t.trim()||(u=new URL(t,a),![`https:`,`http:`].includes(u.protocol)||u.origin!==new URL(a).origin||u.username||u.password||t.includes(`#`))||(d=new Headers(r),d.has(`Authorization`)))throw l();d.set(`Content-Type`,`application/json`)}catch{throw l()}else if(r!==void 0)try{if(new Headers(r).has(`Authorization`))throw l()}catch{throw l()}let f=!1,p=/* @__PURE__ */ new Set;return{getPlaybackToken:s||c?()=>f?Promise.reject(l()):new Promise((t,r)=>{let a=new AbortController,s=!1,f,m=(e,n)=>{s||(s=!0,clearTimeout(f),p.delete(h),e?r(e):t(n))},h=(e=l())=>{m(e),a.abort()};p.add(h),f=setTimeout(()=>h(new fn(`PLAYBACK_TOKEN_TIMEOUT`)),o),(async()=>{if(c)return n();let t=await i(u.href,{method:`POST`,credentials:`same-origin`,redirect:`error`,cache:`no-store`,headers:d,body:JSON.stringify({embedUuid:e}),signal:a.signal});if(!t.ok||!/^application\/(?:[\w.-]+\+)?json(?:\s*;|$)/i.test(t.headers.get(`Content-Type`)||``))throw l();return(await t.json())?.token})().then(e=>{typeof e!=`string`||!e.trim()?m(l()):m(void 0,e)},()=>m(l()))}):void 0,dispose(){f=!0;for(let e of p)e()}}}function mn(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`),n=t+`=`.repeat((4-t.length%4)%4);if(typeof Buffer<`u`)return Buffer.from(n,`base64`).toString(`utf8`);let r=Uint8Array.from(atob(n),e=>e.charCodeAt(0));return new TextDecoder().decode(r)}function hn(e){let t=e.split(`.`)[1];if(!t)throw Error(`Invalid JWT: missing payload`);return JSON.parse(mn(t))}function gn(e,{skewMs:t=12e4,now:n=Date.now()}={}){let{exp:r}=hn(e);if(typeof r!=`number`)throw Error(`Invalid JWT: missing exp`);let i=r*1e3-t;return Math.max(0,i-n)}function _n(e,t,n){e.headers.Authorization=`Bearer ${t}`;let r=new URL(n).origin;e.uris=e.uris.map(e=>{let n=new URL(e);return n.origin===r?(n.searchParams.set(`access_token`,t),n.toString()):e})}function vn(e){let t=Number(e.duration);return Number.isFinite(t)&&t>=0?t:null}function yn(e){let t=Number(e.currentTime);return Number.isFinite(t)&&t>=0?t:0}function bn(e,{beforeSeek:t=()=>{}}={}){return{mediaElement:e,play:async()=>{await e.play()},pause:()=>{e.pause()},seek:n=>{if(!Number.isFinite(n)||n<0)throw TypeError(`Seek time must be a nonnegative finite number`);let r=vn(e),i=r==null?n:Math.min(n,r),a=Number(e.currentTime);t(Number.isFinite(a)&&a>=0?a:void 0),e.currentTime=i},setMuted:t=>{if(typeof t!=`boolean`)throw TypeError(`Muted must be a boolean`);e.muted=t},getState:()=>({currentTime:yn(e),duration:vn(e),paused:!!e.paused,ended:!!e.ended,muted:!!e.muted})}}function xn(e){let t=Number(e);if(!(!Number.isFinite(t)||t<0))return Math.round(t*1e3)}function Sn(e){let t=Number(e);return Number.isFinite(t)&&t>0?t:void 0}function Cn(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!==void 0))}function wn({video:e,stats:t,now:n=()=>globalThis.performance?.now?.()??Date.now(),setIntervalFn:r=globalThis.setInterval.bind(globalThis),clearIntervalFn:i=globalThis.clearInterval.bind(globalThis),page:a=globalThis,heartbeatIntervalMs:o=1e4}){let s=[],c,l=!1,u=!1,d,f,p,m=0,h=0,g=!1,_,v=xn(e.currentTime),y,b,x=(e,t,n)=>{e.addEventListener?.(t,n),s.push([e,t,n])},S=()=>Cn({playheadMs:xn(e.currentTime),durationMs:xn(e.duration)}),C=()=>{if(f===void 0)return;let e=n();m+=Math.max(0,e-f),f=e},w=()=>{let e=m;return m=0,e},T=()=>{p!==void 0&&(h+=Math.max(0,n()-p),p=void 0)},E=()=>{let e=h;return h=0,e},D=()=>xn(e.currentTime)??v,O=t=>{let n=Sn(e.playbackRate),r={watchMs:w(),bufferMs:E(),durationMs:xn(e.duration)};return _!==void 0&&t!==void 0&&n!==void 0&&Object.assign(r,{fromPlayheadMs:_,toPlayheadMs:t,playheadMs:t,playbackRate:n}),Cn(r)},k=()=>{c!==void 0&&(i(c),c=void 0)},A=(e,t=D(),{reopen:n=!0}={})=>{C(),e(O(t)),g=n,_=n?t:void 0},j=()=>{c===void 0&&(c=r(()=>A(t.trackHeartbeat),o))},M=()=>{l||(d=n())},ee=()=>{T();let r=xn(e.currentTime);r!==void 0&&(v=r),_??(_=r),g=!0,f=n(),l||(l=!0,t.trackStart(Cn({watchMs:0,bufferMs:0,startupMs:d===void 0?void 0:Math.max(0,n()-d),playheadMs:r,durationMs:xn(e.duration)}))),j()},te=()=>{if(e.seeking)return;let t=xn(e.currentTime);t!==void 0&&(v=t)},ne=()=>{k(),!e.ended&&(T(),l&&g&&A(t.trackPause,D(),{reopen:!1}),f=void 0)},re=()=>{k(),T(),l&&g&&A(t.trackEnd,D(),{reopen:!1}),f=void 0},ie=()=>{u||(u=!0,k(),T(),l&&g?A(t.trackLeave,D(),{reopen:!1}):l&&(C(),t.trackLeave(O(D()))),f=void 0)};return x(e,`play`,M),x(e,`playing`,ee),x(e,`timeupdate`,te),x(e,`pause`,ne),x(e,`waiting`,()=>{(d!==void 0||l)&&(k(),C(),f=void 0,p===void 0&&(p=n()))}),x(e,`seeking`,()=>{let e=y??v;y=void 0,k(),C(),f=void 0,l&&g&&A(t.trackHeartbeat,e,{reopen:!1}),b=e}),x(e,`seeked`,()=>{let r=xn(e.currentTime),i={watchMs:w(),bufferMs:E(),durationMs:xn(e.duration)};b!==void 0&&r!==void 0&&Object.assign(i,{fromPlayheadMs:b,toPlayheadMs:r,playheadMs:r}),l&&t.trackSeek(Cn(i)),b=void 0,r!==void 0&&(v=r),l&&!e.paused&&!e.ended&&p===void 0&&(_=r,g=!0,f=n(),j())}),x(e,`ended`,re),x(a,`pagehide`,ie),Object.freeze({beforeProgrammaticSeek:e=>{y=xn(e)},snapshot:S,dispose:()=>{ie();for(let[e,t,n]of s.splice(0))e.removeEventListener?.(t,n)}})}var Tn={en:{restart:`Restart`,rewind:`Rewind {seektime}s`,play:`Play`,pause:`Pause`,fastForward:`Forward {seektime}s`,seek:`Seek`,seekLabel:`{currentTime} of {duration}`,played:`Played`,buffered:`Buffered`,currentTime:`Current time`,duration:`Duration`,volume:`Volume`,mute:`Mute`,unmute:`Unmute`,enableCaptions:`Enable captions`,disableCaptions:`Disable captions`,download:`Download`,enterFullscreen:`Enter fullscreen`,exitFullscreen:`Exit fullscreen`,frameTitle:`Player for {title}`,captions:`Captions`,settings:`Settings`,pip:`PIP`,menuBack:`Go back to previous menu`,speed:`Speed`,normal:`Normal`,quality:`Quality`,loop:`Loop`,start:`Start`,end:`End`,all:`All`,reset:`Reset`,disabled:`Disabled`,enabled:`Enabled`,advertisement:`Ad`,qualityLabel:{0:`Auto`}},cs:{restart:`Spustit znovu`,rewind:`Přetočit o {seektime} s zpět`,play:`Přehrát`,pause:`Pozastavit`,fastForward:`Přetočit o {seektime} s vpřed`,seek:`Posun`,seekLabel:`{currentTime} z {duration}`,played:`Přehráno`,buffered:`Načteno`,currentTime:`Aktuální čas`,duration:`Délka`,volume:`Hlasitost`,mute:`Ztlumit`,unmute:`Zapnout zvuk`,enableCaptions:`Zapnout titulky`,disableCaptions:`Vypnout titulky`,download:`Stáhnout`,enterFullscreen:`Přejít na celou obrazovku`,exitFullscreen:`Ukončit režim celé obrazovky`,frameTitle:`Přehrávač pro {title}`,captions:`Titulky`,settings:`Nastavení`,pip:`Obraz v obraze`,menuBack:`Zpět do předchozí nabídky`,speed:`Rychlost`,normal:`Normální`,quality:`Kvalita`,loop:`Opakování`,start:`Začátek`,end:`Konec`,all:`Vše`,reset:`Obnovit`,disabled:`Vypnuto`,enabled:`Zapnuto`,advertisement:`Reklama`,qualityLabel:{0:`Automaticky`}}};function En(e){if(typeof e!=`string`)return`en`;let t=e.trim().toLowerCase().split(`-`)[0];return Object.hasOwn(Tn,t)?t:`en`}function B(e){let t=Tn[En(e)];return{...t,qualityLabel:{...t.qualityLabel}}}function Dn(e){return!!(e?.fullscreenEnabled||e?.webkitFullscreenEnabled)}function On(e){return typeof e.webkitEnterFullscreen==`function`&&e.webkitSupportsFullscreen!==!1}function kn(e,t){return{enabled:t,fallback:!0,iosNative:!Dn(e.ownerDocument)&&On(e)}}function An(e,t){let n=e?.fullscreen,r=e?.config?.fullscreen,i=t.ownerDocument;if(!n||!r||!i)return()=>{};let a=!1,o=!1,s=!1,c=!1,l=!1,u=0,d=e.elements.container,f=e=>[d.getRootNode(),i].some(t=>t.fullscreenElement===e||t.webkitFullscreenElement===e);Object.defineProperty(n,"active",{configurable:!0,get:()=>!a&&r.enabled&&!!(o||t.webkitDisplayingFullscreen||l||f(d))});let p=n.onChange,m=!1;n.onChange=()=>{let e=n.active;a||e===m||(m=e,p.call(n))};let h=()=>n.onChange();i.addEventListener(`fullscreenchange`,h),i.addEventListener(`webkitfullscreenchange`,h);let g=t=>{!a&&r.enabled&&(o=t,n.onChange(),t||e.toggleControls?.(!0))},_=()=>g(!0),v=()=>{++u,s=!1,g(!1)};t.addEventListener(`webkitbeginfullscreen`,_),t.addEventListener(`webkitendfullscreen`,v);let y=e=>{!a&&e===u&&r.enabled&&(o=!1,s=!1,r.iosNative=!1,n.forceFallback=!0,l=!0,n.toggleFallback(!0))},b=e=>{try{let t=e();t?.then&&Promise.resolve(t).catch(()=>{})}catch{}},x=e=>{let t=d.getRootNode();t.fullscreenElement===e||i.fullscreenElement===e?b(()=>i.exitFullscreen?.()):(t.webkitFullscreenElement===e||i.webkitFullscreenElement===e)&&b(()=>i.webkitExitFullscreen?.())},S=(e,t)=>{let n=++u;try{let r=e();r?.then&&(c=!0,Promise.resolve(r).then(()=>{c=!1,(a||n!==u)&&x(t)},()=>{c=!1,y(n)}))}catch{y(n)}};return n.enter=()=>{if(a||!r.enabled||c||n.active)return;n.forceFallback=!1,r.iosNative=!1;let e=n.target;i.fullscreenEnabled&&typeof e.requestFullscreen==`function`?S(()=>e.requestFullscreen({navigationUI:`hide`}),e):i.webkitFullscreenEnabled&&typeof e.webkitRequestFullscreen==`function`?S(()=>e.webkitRequestFullscreen(),e):On(t)?(r.iosNative=!0,s=!0,S(()=>t.webkitEnterFullscreen(),t)):y(++u)},n.exit=()=>{a||(++u,s||o||t.webkitDisplayingFullscreen?(b(()=>t.webkitExitFullscreen?.()),s=!1,t.webkitDisplayingFullscreen||g(!1)):l?(l=!1,n.toggleFallback(!1),n.forceFallback=!1,e.toggleControls?.(!0)):x(d))},()=>{a||(n.exit(),a=!0,++u,i.removeEventListener(`fullscreenchange`,h),i.removeEventListener(`webkitfullscreenchange`,h),t.removeEventListener(`webkitbeginfullscreen`,_),t.removeEventListener(`webkitendfullscreen`,v))}}var jn=[`play-large`,`play`,`progress`,`current-time`,`mute`,`volume`,`captions`,`settings`,`pip`,`airplay`,`fullscreen`],Mn=[`quality`,`speed`],Nn=new Set(jn),Pn=new Set(Mn),Fn=/* @__PURE__ */ new Set([`top-left`,`top-right`,`bottom-left`,`bottom-right`]),In=/* @__PURE__ */ new Set([`dark`,`light`,`accent`]),Ln={captions:{active:!0,update:!0,language:`auto`},keyboard:{focused:!0,global:!1},controls:jn};function Rn(e=!0,t){if(!e)return[];if(!Array.isArray(t))return[...jn];let n=new Set(t.filter(e=>Nn.has(e)));return jn.filter(e=>n.has(e))}function zn(e){if(!Array.isArray(e))return[`quality`];let t=new Set(e.filter(e=>Pn.has(e)));return Mn.filter(e=>t.has(e))}function Bn(e){if(typeof e!=`string`)return null;let t=e.trim().toLowerCase();return/^#[0-9a-f]{6}$/.test(t)?t:null}function Vn(e){let[t,n,r]=[1,3,5].map(t=>Number.parseInt(e.slice(t,t+2),16)/255).map(e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4),i=.2126*t+.7152*n+.0722*r,a=1.05/(i+.05);return(i+.05)/.05>a?`#000`:`#fff`}function Hn(e){if(!e||typeof e.text!=`string`)return null;let t=Array.from(e.text.trim()).slice(0,64).join(``);return t?{text:t,position:Fn.has(e.position)?e.position:`top-right`,style:In.has(e.style)?e.style:`dark`}:null}function Un(e,{accentColor:t,badge:n,hasControls:r=!0}={}){let i=e?.elements?.container;if(!i)return()=>{};let a=Bn(t),o=Hn(n),s=null;return a&&(i.style.setProperty(`--plyr-color-main`,a),i.style.setProperty(`--vyonio-badge-accent-foreground`,Vn(a))),i.classList.toggle(`vyonio-player--has-controls`,r),o&&(s=(i.ownerDocument??globalThis.document)?.createElement?.(`div`)??null,s&&(s.className=[`vyonio-player__badge`,`vyonio-player__badge--${o.position}`,`vyonio-player__badge--${o.style}`].join(` `),s.setAttribute(`role`,`note`),s.textContent=o.text,i.appendChild(s))),()=>{s?.remove(),i.classList.remove(`vyonio-player--has-controls`),a&&(i.style.removeProperty(`--plyr-color-main`),i.style.removeProperty(`--vyonio-badge-accent-foreground`))}}function Wn(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r;){let e=n%r;n=r,r=e}return n||1}function Gn(e){let t=Number(e?.videoWidth),n=Number(e?.videoHeight);if(!Number.isFinite(t)||!Number.isFinite(n)||t<=0||n<=0)return`16:9`;let r=Wn(t,n);return`${t/r}:${n/r}`}async function Kn(e,t,n=async()=>{},r=null){let i,a=async e=>{try{await e()}catch(e){i||(i=e)}};if(await a(n),await a(t),await a(()=>{r?r.parentNode&&r.remove():e.querySelectorAll(`video`).forEach(e=>e.remove())}),i)throw i}function qn(e,{PlyrCtor:t,quality:n,controls:r=!0,controlItems:i,settingsItems:a,language:o,accentColor:s,badge:c,iconUrl:l}={}){let u=Rn(r,i),d=zn(a),f=u.length>0;if(!t)return e.controls=f,{player:null,destroy:()=>{}};try{e.controls=!1;let r={...Ln,fullscreen:kn(e,u.includes(`fullscreen`)),controls:u,settings:d,i18n:B(o),ratio:Gn(e),blankVideo:``};l&&(r.iconUrl=l,r.loadSprite=!1),n?.options?.length>=3&&(r.quality={default:n.default,options:n.options,forced:!0,onChange:null},r.i18n={...r.i18n,qualityLabel:{...r.i18n.qualityLabel,...n.labels}});let i=new t(e,r),a=An(i,e),p=()=>{e.videoWidth>0&&e.videoHeight>0&&(i.ratio=Gn(e))};e.addEventListener?.(`loadedmetadata`,p),e.addEventListener?.(`resize`,p);let m=Un(i,{accentColor:s,badge:c,hasControls:f});return{player:i,destroy:()=>{a(),e.removeEventListener?.(`loadedmetadata`,p),e.removeEventListener?.(`resize`,p),m(),i.destroy()}}}catch{return e.controls=f,{player:null,destroy:()=>{}}}}var Jn=0;function Yn(e=[],t=`Auto`){let n=/* @__PURE__ */ new Map;for(let t of e){let e=Number(t?.height);if(!Number.isFinite(e)||e<=0)continue;let r=n.get(e);(!r||Number(t.bandwidth||0)>Number(r.bandwidth||0))&&n.set(e,t)}let r=[...n.entries()].sort(([e],[t])=>t-e).map(([e,t])=>({label:`${e}p`,value:e,track:t}));return[{label:t,value:`auto`},...r]}function Xn(e){let t={};return{default:Jn,options:e.map(({label:e,value:n})=>{let r=n===`auto`?Jn:n;return t[r]=e,r}),labels:t}}function Zn(e){e?.config?.quality&&(e.config.quality.forced=!1,e.config.quality.options=[],e.config.quality.onChange=null),e?.options&&(e.options.quality=[]);let t=e?.elements?.settings?.buttons?.quality,n=e?.elements?.settings?.panels?.quality,r=n?.querySelector?.(`[role="menu"]`);r&&r.replaceChildren(),t&&(t.hidden=!0),n&&(n.hidden=!0);let i=e?.elements?.settings?.menu,a=e?.elements?.settings?.buttons;i&&a&&(i.hidden=!Object.values(a).some(e=>e&&!e.hidden))}function Qn(e,{default:t,options:n,labels:r}){if(!e||!Array.isArray(n)||n.length<2)return!1;e.config.quality={...e.config.quality||{},default:t,options:[...n],forced:!0,onChange:e.config.quality?.onChange??null},e.config.i18n={...e.config.i18n||{},qualityLabel:r},e.options.quality=[...n];let i=e.elements?.settings?.buttons?.quality,a=e.elements?.settings?.panels?.quality,o=e.elements?.settings?.panels?.home,s=a?.querySelector?.(`[role="menu"]`);if(!i||!a||!s)return!1;i.hidden=!1,o&&(o.hidden=!1),a.hidden=!0,e.elements?.settings?.menu&&(e.elements.settings.menu.hidden=!1),s.replaceChildren();for(let i of n){let n=r?.[i]??(i===Jn?`Auto`:`${i}p`),a=document.createElement(`button`);a.type=`button`,a.setAttribute(`role`,`menuitemradio`),a.setAttribute(`data-plyr`,`quality`),a.setAttribute(`aria-checked`,i===t?`true`:`false`),a.value=String(i),a.className=e.config.classNames?.control||`plyr__control`;let o=document.createElement(`span`);o.textContent=n,a.appendChild(o),a.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),s.querySelectorAll(`[role="menuitemradio"]`).forEach(e=>{e.setAttribute(`aria-checked`,`false`)}),a.setAttribute(`aria-checked`,`true`),e.quality=i}),s.appendChild(a)}let c=e.config.classNames?.menu?.value||`plyr__menu__value`,l=i.querySelector(`.${c}`),u=r?.[t]??(t===Jn?`Auto`:`${t}p`);return l&&(l.textContent=u),e.config.quality.selected=t,!0}function $n(e,t){let n=()=>e.configure({abr:{enabled:!0}});try{n();let r=t?.config?.i18n?.qualityLabel?.[Jn]??`Auto`,i=Yn(e.getVariantTracks(),r);if(!t||i.length<3)return Zn(t),()=>{};let a=Xn(i),o=new Map(i.filter(({value:e})=>e!==`auto`).map(({value:e,track:t})=>[Number(e),t])),s=r=>{try{let t=Number(r);if(r===`auto`||t===Jn){n();return}let i=o.get(t);if(!i)throw Error(`Unknown quality option: ${r}`);e.configure({abr:{enabled:!1}}),e.selectVariantTrack(i,!0)}catch{n(),Zn(t)}};t.config.quality={...t.config.quality||{},onChange:s},Qn(t,a),t.config.quality.onChange=s;try{t.quality=a.default}catch{}return()=>{t?.config?.quality&&(t.config.quality.onChange=null)}}catch{try{n()}catch{}return Zn(t),()=>{}}}var er=`vyonio-player__popularity-histogram`,tr=`http://www.w3.org/2000/svg`;function nr(e){return!Array.isArray(e)||e.length===0?[]:e.map(e=>{let t=Number(e);return!Number.isFinite(t)||t<0?0:t})}function rr(e,t,n){let r=Math.max(...e,0);if(r<=0||t<=0||n<=0)return null;let i=t/e.length,a=e.map((e,t)=>({x:(t+.5)*i,y:n-e/r*n*.92}));return[{x:0,y:a[0].y},...a,{x:t,y:a[a.length-1].y}]}function ir(e){if(!e||e.length===0)return``;if(e.length===1){let t=e[0];return`M${t.x.toFixed(2)},${t.y.toFixed(2)}`}if(e.length===2){let[t,n]=e;return`M${t.x.toFixed(2)},${t.y.toFixed(2)} L${n.x.toFixed(2)},${n.y.toFixed(2)}`}let t=e=>`${e.x.toFixed(2)},${e.y.toFixed(2)}`,n=`M${t(e[0])}`;for(let r=0;r<e.length-1;r+=1){let i=e[r===0?r:r-1],a=e[r],o=e[r+1],s=e[r+2]??o,c=a.x+(o.x-i.x)/6,l=a.y+(o.y-i.y)/6,u=o.x-(s.x-a.x)/6,d=o.y-(s.y-a.y)/6;n+=` C${c.toFixed(2)},${l.toFixed(2)} ${u.toFixed(2)},${d.toFixed(2)} ${t(o)}`}return n}function ar(e,t,n){let r=rr(e,t,n);if(!r)return``;let i=ir(r);return i?`${i} L${t},${n} L0,${n} Z`:``}function or(e,t,n){return ir(rr(e,t,n))}function sr(e){let t=e.querySelector?.(`.${er}`);return t||(t=document.createElement(`div`),t.className=er,t.setAttribute(`aria-hidden`,`true`),t.style.pointerEvents=`none`,e.appendChild(t),t)}function cr(e,t){let n=ar(t,100,100),r=or(t,100,100);if(!n||!r){e.replaceChildren?.(),`innerHTML`in e&&(e.innerHTML=``);return}let i=document.createElementNS(tr,`svg`);i.setAttribute(`viewBox`,`0 0 100 100`),i.setAttribute(`preserveAspectRatio`,`none`),i.setAttribute(`aria-hidden`,`true`),i.setAttribute(`class`,`${er}-svg`);let a=`${er}-grad-${Math.random().toString(36).slice(2,10)}`,o=document.createElementNS(tr,`defs`),s=document.createElementNS(tr,`linearGradient`);s.setAttribute(`id`,a),s.setAttribute(`x1`,`0`),s.setAttribute(`y1`,`0`),s.setAttribute(`x2`,`0`),s.setAttribute(`y2`,`1`);let c=document.createElementNS(tr,`stop`);c.setAttribute(`offset`,`0%`),c.setAttribute(`stop-color`,`#ffffff`),c.setAttribute(`stop-opacity`,`0.45`);let l=document.createElementNS(tr,`stop`);l.setAttribute(`offset`,`100%`),l.setAttribute(`stop-color`,`#ffffff`),l.setAttribute(`stop-opacity`,`0`),s.appendChild(c),s.appendChild(l),o.appendChild(s),i.appendChild(o);let u=document.createElementNS(tr,`path`);u.setAttribute(`d`,n),u.setAttribute(`class`,`${er}-area`),u.setAttribute(`fill`,`url(#${a})`),i.appendChild(u);let d=document.createElementNS(tr,`path`);d.setAttribute(`d`,r),d.setAttribute(`class`,`${er}-line`),d.setAttribute(`fill`,`none`),i.appendChild(d),typeof e.replaceChildren==`function`?e.replaceChildren(i):(`innerHTML`in e&&(e.innerHTML=``),e.appendChild(i))}function lr(e,t={}){let n=nr(t.buckets),r=!1,i=null,a=null,o=()=>{!r&&e?.elements?.progress&&(n.length===0||n.every(e=>e<=0)?(i?.remove?.(),i=null):(i=sr(e.elements.progress),cr(i,n)))},s=()=>{!r&&e&&(e.ready?o():typeof e.on==`function`?a||(a=()=>{typeof e.off==`function`&&e.off(`ready`,a),a=null,o()},e.on(`ready`,a)):o())};return s(),{update(e){r||(n=nr(e),s())},dispose(){r||(r=!0,a&&typeof e?.off==`function`&&e.off(`ready`,a),a=null,i?.remove?.(),i=null)}}}function ur(){try{let e=globalThis.crypto?.randomUUID?.();if(e)return e}catch{}return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,e=>{let t=Math.floor(Math.random()*16);return(e===`x`?t:t&3|8).toString(16)})}function dr(){return{setPlaybackProtocol(){},trackStart(){},trackHeartbeat(){},trackPause(){},trackSeek(){},trackEnd(){},trackLeave(){},trackError(){},async dispose(){}}}function fr(e){let t=Number(e);return Number.isFinite(t)?Math.max(0,Math.round(t)):0}function pr(e){if(e==null)return;let t=Number(e);return Number.isFinite(t)&&t>=0?Math.round(t):void 0}function mr(e){if(e==null)return;let t=Number(e);return Number.isFinite(t)&&t>0?t:void 0}function hr({telemetry:e,fetchImpl:t=globalThis.fetch?.bind(globalThis),flushIntervalMs:n=1e4,sessionId:r=ur(),uuid:i=ur,now:a=()=>Date.now(),platform:o=`web`,playbackProtocol:s=`unknown`,maxQueueSize:c=50}={}){if(!e?.url||!e?.context)return dr();let l=String(e.url),u=String(e.context),d=String(r??ur()),f=[],p=/* @__PURE__ */ new Set,m=s,h=0,g=!1,_=e=>{g||(f.unshift(...e),f.length>c&&f.splice(0,f.length-c))},v=async(e,{beacon:n=!1}={})=>{try{let r=JSON.stringify({context:u,events:e});if(n&&globalThis.navigator?.sendBeacon&&globalThis.navigator.sendBeacon(l,r)||!t)return;let i=await t(l,{method:`POST`,headers:{"Content-Type":`application/json`},body:r,keepalive:n}),a=Number(i?.status??0);i?.ok===!1&&(a===0||a>=500)&&_(e)}catch{_(e)}},y=({beacon:e=!1}={})=>{if(f.length===0)return Promise.resolve();let t=f.splice(0,f.length),n=v(t,{beacon:e});return p.add(n),n.finally(()=>p.delete(n)),n},b=(e,t={})=>{if(!g)try{let n={event_id:String(i()),event_at:new Date(a()).toISOString(),event_type:e,session_id:d,sequence:h++,watch_ms:fr(t.watchMs),startup_ms:t.startupMs==null?null:fr(t.startupMs),buffer_ms:t.bufferMs==null?null:fr(t.bufferMs),platform:o,playback_protocol:m,error_code:t.errorCode==null?null:String(t.errorCode).slice(0,128),error_fatal:t.errorFatal==null?null:!!t.errorFatal},r={playhead_ms:pr(t.playheadMs),from_playhead_ms:pr(t.fromPlayheadMs),to_playhead_ms:pr(t.toPlayheadMs),duration_ms:pr(t.durationMs),playback_rate:mr(t.playbackRate)};for(let[e,t]of Object.entries(r))t!==void 0&&(n[e]=t);f.push(n),f.length>c&&f.shift()}catch{}},x=setInterval(()=>{y()},n);return{setPlaybackProtocol(e){m=[`dash`,`hls`].includes(e)?e:`unknown`},trackStart(e){b(`start`,e)},trackHeartbeat(e){b(`heartbeat`,e)},trackPause(e){b(`pause`,e)},trackSeek(e){b(`seek`,e)},trackEnd(e){b(`end`,e)},trackLeave(e){b(`leave`,e),y({beacon:!0})},trackError(e,t=!0,n={}){b(`error`,{...n,errorCode:e,errorFatal:t}),y()},async dispose(){g||(clearInterval(x),await y(),g=!0,await Promise.allSettled([...p]))}}}function gr(e){let t=Math.max(0,Math.round(Number(e)*1e3)),n=Math.floor(t/36e5),r=Math.floor(t%36e5/6e4),i=Math.floor(t%6e4/1e3),a=t%1e3;return[String(n).padStart(2,`0`),String(r).padStart(2,`0`),`${String(i).padStart(2,`0`)}.${String(a).padStart(3,`0`)}`].join(`:`)}function _r(e=[],t){let n=e.map(e=>({title:String(e?.title||``).replaceAll(`-->`,`→`).trim(),start:Number(e?.start_seconds)})).filter(({title:e,start:t})=>e&&Number.isFinite(t)&&t>=0).sort((e,t)=>e.start-t.start),r=[`WEBVTT`,``];return n.forEach((e,i)=>{let a=n[i+1]?.start??Number(t),o=Number.isFinite(a)&&a>e.start?a:e.start+.001;r.push(`${gr(e.start)} --> ${gr(o)}`,e.title,``)}),r.join(`
37
+ `);if(n!==this.elements.captions.innerHTML){Ae(this.elements.captions);let e=De(`span`,Me(this.config.selectors.caption));e.innerHTML=n,this.elements.captions.appendChild(e),Je.call(this,this.media,`cuechange`)}}},kt={enabled:!0,title:``,debug:!1,autoplay:!1,autopause:!0,playsinline:!0,seekTime:10,volume:1,muted:!1,duration:null,displayDuration:!0,invertTime:!0,toggleInvert:!0,ratio:null,clickToPlay:!0,hideControls:!0,resetOnEnd:!1,disableContextMenu:!0,loadSprite:!0,iconPrefix:`plyr`,iconUrl:`https://cdn.plyr.io/3.8.4/plyr.svg`,blankVideo:`https://cdn.plyr.io/static/blank.mp4`,quality:{default:576,options:[4320,2880,2160,1440,1080,720,576,480,360,240],forced:!1,onChange:null},loop:{active:!1},speed:{selected:1,options:[.5,.75,1,1.25,1.5,1.75,2,4]},keyboard:{focused:!0,global:!1},tooltips:{controls:!1,seek:!0},captions:{active:!1,language:`auto`,update:!1},fullscreen:{enabled:!0,fallback:!0,iosNative:!1},storage:{enabled:!0,key:`plyr`},controls:[`play-large`,`play`,`progress`,`current-time`,`mute`,`volume`,`captions`,`settings`,`pip`,`airplay`,`fullscreen`],settings:[`captions`,`quality`,`speed`],i18n:{restart:`Restart`,rewind:`Rewind {seektime}s`,play:`Play`,pause:`Pause`,fastForward:`Forward {seektime}s`,seek:`Seek`,seekLabel:`{currentTime} of {duration}`,played:`Played`,buffered:`Buffered`,currentTime:`Current time`,duration:`Duration`,volume:`Volume`,mute:`Mute`,unmute:`Unmute`,enableCaptions:`Enable captions`,disableCaptions:`Disable captions`,download:`Download`,enterFullscreen:`Enter fullscreen`,exitFullscreen:`Exit fullscreen`,frameTitle:`Player for {title}`,captions:`Captions`,settings:`Settings`,pip:`PIP`,menuBack:`Go back to previous menu`,speed:`Speed`,normal:`Normal`,quality:`Quality`,loop:`Loop`,start:`Start`,end:`End`,all:`All`,reset:`Reset`,disabled:`Disabled`,enabled:`Enabled`,advertisement:`Ad`,qualityBadge:{2160:`4K`,1440:`HD`,1080:`HD`,720:`HD`,576:`SD`,480:`SD`}},urls:{download:null,vimeo:{sdk:`https://player.vimeo.com/api/player.js`,iframe:`https://player.vimeo.com/video/{0}?{1}`,api:`https://vimeo.com/api/oembed.json?url={0}`},youtube:{sdk:`https://www.youtube.com/iframe_api`,api:`https://noembed.com/embed?url=https://www.youtube.com/watch?v={0}`},googleIMA:{sdk:`https://imasdk.googleapis.com/js/sdkloader/ima3.js`}},listeners:{seek:null,play:null,pause:null,restart:null,rewind:null,fastForward:null,mute:null,volume:null,captions:null,download:null,fullscreen:null,pip:null,airplay:null,speed:null,quality:null,loop:null,language:null},events:/* @__PURE__ */ `ended.progress.stalled.playing.waiting.canplay.canplaythrough.loadstart.loadeddata.loadedmetadata.timeupdate.volumechange.play.pause.error.seeking.seeked.emptied.ratechange.cuechange.download.enterfullscreen.exitfullscreen.captionsenabled.captionsdisabled.languagechange.controlshidden.controlsshown.ready.statechange.qualitychange.adsloaded.adscontentpause.adscontentresume.adstarted.adsmidpoint.adscomplete.adsallcomplete.adsimpression.adsclick`.split(`.`),selectors:{editable:`input, textarea, select, [contenteditable]`,container:`.plyr`,controls:{container:null,wrapper:`.plyr__controls`},labels:`[data-plyr]`,buttons:{play:`[data-plyr="play"]`,pause:`[data-plyr="pause"]`,restart:`[data-plyr="restart"]`,rewind:`[data-plyr="rewind"]`,fastForward:`[data-plyr="fast-forward"]`,mute:`[data-plyr="mute"]`,captions:`[data-plyr="captions"]`,download:`[data-plyr="download"]`,fullscreen:`[data-plyr="fullscreen"]`,pip:`[data-plyr="pip"]`,airplay:`[data-plyr="airplay"]`,settings:`[data-plyr="settings"]`,loop:`[data-plyr="loop"]`},inputs:{seek:`[data-plyr="seek"]`,volume:`[data-plyr="volume"]`,speed:`[data-plyr="speed"]`,language:`[data-plyr="language"]`,quality:`[data-plyr="quality"]`},display:{currentTime:`.plyr__time--current`,duration:`.plyr__time--duration`,buffer:`.plyr__progress__buffer`,loop:`.plyr__progress__loop`,volume:`.plyr__volume--display`},progress:`.plyr__progress`,captions:`.plyr__captions`,caption:`.plyr__caption`},classNames:{type:`plyr--{0}`,provider:`plyr--{0}`,video:`plyr__video-wrapper`,embed:`plyr__video-embed`,videoFixedRatio:`plyr__video-wrapper--fixed-ratio`,embedContainer:`plyr__video-embed__container`,poster:`plyr__poster`,posterEnabled:`plyr__poster-enabled`,ads:`plyr__ads`,control:`plyr__control`,controlPressed:`plyr__control--pressed`,playing:`plyr--playing`,paused:`plyr--paused`,stopped:`plyr--stopped`,loading:`plyr--loading`,hover:`plyr--hover`,tooltip:`plyr__tooltip`,cues:`plyr__cues`,marker:`plyr__progress__marker`,hidden:`plyr__sr-only`,hideControls:`plyr--hide-controls`,isTouch:`plyr--is-touch`,uiSupported:`plyr--full-ui`,noTransition:`plyr--no-transition`,display:{time:`plyr__time`},menu:{value:`plyr__menu__value`,badge:`plyr__badge`,open:`plyr--menu-open`},captions:{enabled:`plyr--captions-enabled`,active:`plyr--captions-active`},fullscreen:{enabled:`plyr--fullscreen-enabled`,fallback:`plyr--fullscreen-fallback`},pip:{supported:`plyr--pip-supported`,active:`plyr--pip-active`},airplay:{supported:`plyr--airplay-supported`,active:`plyr--airplay-active`},previewThumbnails:{thumbContainer:`plyr__preview-thumb`,thumbContainerShown:`plyr__preview-thumb--is-shown`,imageContainer:`plyr__preview-thumb__image-container`,timeContainer:`plyr__preview-thumb__time-container`,scrubbingContainer:`plyr__preview-scrubbing`,scrubbingContainerShown:`plyr__preview-scrubbing--is-shown`}},attributes:{embed:{provider:`data-plyr-provider`,id:`data-plyr-embed-id`,hash:`data-plyr-embed-hash`}},ads:{enabled:!1,publisherId:``,tagUrl:``},previewThumbnails:{enabled:!1,src:``,withCredentials:!1},vimeo:{byline:!1,portrait:!1,title:!1,speed:!0,transparent:!1,customControls:!0,referrerPolicy:null,premium:!1},youtube:{rel:0,showinfo:0,iv_load_policy:3,modestbranding:1,customControls:!0,noCookie:!1},mediaMetadata:{title:``,artist:``,album:``,artwork:[]},markers:{enabled:!1,points:[]}},At={active:`picture-in-picture`,inactive:`inline`},jt={html5:`html5`,youtube:`youtube`,vimeo:`vimeo`},Mt={audio:`audio`,video:`video`};function Nt(e){return/^(?:https?:\/\/)?(?:www\.)?(?:youtube\.com|youtube-nocookie\.com|youtu\.?be)\/.+$/.test(e)?jt.youtube:/^https?:\/\/player.vimeo.com\/video\/\d{0,9}(?=\b|\/)/.test(e)?jt.vimeo:null}function Pt(){}var Ft=class{constructor(e=!1){this.enabled=window.console&&e,this.enabled&&this.log(`Debugging enabled`)}get log(){return this.enabled?Function.prototype.bind.call(console.log,console):Pt}get warn(){return this.enabled?Function.prototype.bind.call(console.warn,console):Pt}get error(){return this.enabled?Function.prototype.bind.call(console.error,console):Pt}},It=class e{constructor(t){l(this,`onChange`,()=>{if(!this.supported)return;let e=this.player.elements.buttons.fullscreen;F.element(e)&&(e.pressed=this.active);let t=this.target===this.player.media?this.target:this.player.elements.container;Je.call(this.player,t,this.active?`enterfullscreen`:`exitfullscreen`,!0)}),l(this,`toggleFallback`,(e=!1)=>{if(e?this.scrollPosition={x:window.scrollX??0,y:window.scrollY??0}:window.scrollTo(this.scrollPosition.x,this.scrollPosition.y),document.body.style.overflow=e?`hidden`:``,Pe(this.target,this.player.config.classNames.fullscreen.fallback,e),ct.isIos){let t=document.head.querySelector(`meta[name="viewport"]`),n=`viewport-fit=cover`;t||(t=document.createElement(`meta`),t.setAttribute(`name`,`viewport`));let r=F.string(t.content)&&t.content.includes(n);e?(this.cleanupViewport=!r,r||(t.content+=`,${n}`)):this.cleanupViewport&&(t.content=t.content.split(`,`).filter(e=>e.trim()!==n).join(`,`))}this.onChange()}),l(this,`trapFocus`,e=>{if(ct.isIos||ct.isIPadOS||!this.active||e.key!==`Tab`)return;let t=document.activeElement,n=Re.call(this.player,`a[href], button:not(:disabled), input:not(:disabled), [tabindex]`),[r]=n,i=n[n.length-1];t===i&&!e.shiftKey?(r.focus(),e.preventDefault()):t===r&&e.shiftKey&&(i.focus(),e.preventDefault())}),l(this,`update`,()=>{if(this.supported){let t;t=this.forceFallback?`Fallback (forced)`:e.nativeSupported?`Native`:`Fallback`,this.player.debug.log(`${t} fullscreen enabled`)}else this.player.debug.log(`Fullscreen not supported and fallback disabled`);Pe(this.player.elements.container,this.player.config.classNames.fullscreen.enabled,this.supported)}),l(this,`enter`,()=>{this.supported&&(ct.isIos&&this.player.config.fullscreen.iosNative?this.player.isVimeo?this.player.embed.requestFullscreen():this.target.webkitEnterFullscreen():!e.nativeSupported||this.forceFallback?this.toggleFallback(!0):this.prefix?F.empty(this.prefix)||this.target[`${this.prefix}Request${this.property}`]():this.target.requestFullscreen({navigationUI:`hide`}))}),l(this,`exit`,()=>{if(this.supported){if(ct.isIos&&this.player.config.fullscreen.iosNative)this.player.isVimeo?this.player.embed.exitFullscreen():this.target.webkitEnterFullscreen(),Ze(this.player.play());else if(!e.nativeSupported||this.forceFallback)this.toggleFallback(!1);else if(!this.prefix)(document.cancelFullScreen||document.exitFullscreen).call(document);else if(!F.empty(this.prefix)){let e=this.prefix===`moz`?`Cancel`:`Exit`;document[`${this.prefix}${e}${this.property}`]()}}}),l(this,`toggle`,()=>{this.active?this.exit():this.enter()}),this.player=t,this.prefix=e.prefix,this.property=e.property,this.scrollPosition={x:0,y:0},this.forceFallback=t.config.fullscreen.fallback===`force`,this.player.elements.fullscreen=t.config.fullscreen.container&&Le(this.player.elements.container,t.config.fullscreen.container),Ge.call(this.player,document,this.prefix===`ms`?`MSFullscreenChange`:`${this.prefix}fullscreenchange`,()=>{this.onChange()}),Ge.call(this.player,this.player.elements.container,`dblclick`,e=>{F.element(this.player.elements.controls)&&this.player.elements.controls.contains(e.target)||this.player.listeners.proxy(e,this.toggle,`fullscreen`)}),Ge.call(this,this.player.elements.container,`keydown`,e=>this.trapFocus(e)),this.update()}static get nativeSupported(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}get useNative(){return e.nativeSupported&&!this.forceFallback}static get prefix(){if(F.function(document.exitFullscreen))return``;let e=``;return[`webkit`,`moz`,`ms`].some(t=>F.function(document[`${t}ExitFullscreen`])||F.function(document[`${t}CancelFullScreen`])?(e=t,!0):!1),e}static get property(){return this.prefix===`moz`?`FullScreen`:`Fullscreen`}get supported(){return[this.player.config.fullscreen.enabled,this.player.isVideo,e.nativeSupported||this.player.config.fullscreen.fallback,!this.player.isYouTube||e.nativeSupported||!ct.isIos||this.player.config.playsinline&&!this.player.config.fullscreen.iosNative].every(Boolean)}get active(){if(!this.supported)return!1;if(!e.nativeSupported||this.forceFallback)return Fe(this.target,this.player.config.classNames.fullscreen.fallback);let t=this.prefix?this.target.getRootNode()[`${this.prefix}${this.property}Element`]:this.target.getRootNode().fullscreenElement;return t&&t.shadowRoot?t===this.target.getRootNode().host:t===this.target}get target(){return ct.isIos&&this.player.config.fullscreen.iosNative?this.player.media:this.player.elements.fullscreen??this.player.elements.container}};function Lt(e,t=1){return new Promise((n,r)=>{let i=new Image,a=()=>{delete i.onload,delete i.onerror,(i.naturalWidth>=t?n:r)(i)};Object.assign(i,{onload:a,onerror:a,src:e})})}var Rt={addStyleHook(){Pe(this.elements.container,this.config.selectors.container.replace(`.`,``),!0),Pe(this.elements.container,this.config.classNames.uiSupported,this.supported.ui)},toggleNativeControls(e=!1){e&&this.isHTML5?this.media.setAttribute(`controls`,``):this.media.removeAttribute(`controls`)},build(){this.listeners.media(),this.supported.ui?(F.element(this.elements.controls)||(z.inject.call(this),this.listeners.controls()),Rt.toggleNativeControls.call(this),this.isHTML5&&Ot.setup.call(this),this.volume=null,this.muted=null,this.loop=null,this.quality=null,this.speed=null,z.updateVolume.call(this),z.timeUpdate.call(this),z.durationUpdate.call(this),Rt.checkPlaying.call(this),Pe(this.elements.container,this.config.classNames.pip.supported,He.pip&&this.isHTML5&&this.isVideo),Pe(this.elements.container,this.config.classNames.airplay.supported,He.airplay&&this.isHTML5),Pe(this.elements.container,this.config.classNames.isTouch,this.touch),this.ready=!0,setTimeout(()=>{Je.call(this,this.media,`ready`)},0),Rt.setTitle.call(this),this.poster&&Rt.setPoster.call(this,this.poster,!1).catch(()=>{}),this.config.duration&&z.durationUpdate.call(this),this.config.mediaMetadata&&z.setMediaMetadata.call(this)):(this.debug.warn(`Basic support only for ${this.provider} ${this.type}`),Rt.toggleNativeControls.call(this,!0))},setTitle(){let e=vt.get(`play`,this.config);if(F.string(this.config.title)&&!F.empty(this.config.title)&&(e+=`, ${this.config.title}`),Array.from(this.elements.buttons.play||[]).forEach(t=>{t.setAttribute(`aria-label`,e)}),this.isEmbed){let e=ze.call(this,`iframe`);if(!F.element(e))return;let t=F.empty(this.config.title)?`video`:this.config.title,n=vt.get(`frameTitle`,this.config);e.setAttribute(`title`,n.replace(`{title}`,t))}},togglePoster(e){Pe(this.elements.container,this.config.classNames.posterEnabled,e)},setPoster(e,t=!0){return t&&this.poster?Promise.reject(/* @__PURE__ */ Error(`Poster already set`)):(this.media.setAttribute(`data-poster`,e),this.elements.poster.removeAttribute(`hidden`),Xe.call(this).then(()=>Lt(e)).catch(t=>{throw e===this.poster&&Rt.togglePoster.call(this,!1),t}).then(()=>{if(e!==this.poster)throw Error(`setPoster cancelled by later call to setPoster`)}).then(()=>(Object.assign(this.elements.poster.style,{backgroundImage:`url('${e}')`,backgroundSize:``}),Rt.togglePoster.call(this,!0),e)))},checkPlaying(e){Pe(this.elements.container,this.config.classNames.playing,this.playing),Pe(this.elements.container,this.config.classNames.paused,this.paused),Pe(this.elements.container,this.config.classNames.stopped,this.stopped),Array.from(this.elements.buttons.play||[]).forEach(e=>{Object.assign(e,{pressed:this.playing}),e.setAttribute(`aria-label`,vt.get(this.playing?`pause`:`play`,this.config))}),!(F.event(e)&&e.type===`timeupdate`)&&Rt.toggleControls.call(this)},checkLoading(e){this.loading=[`stalled`,`waiting`].includes(e.type),clearTimeout(this.timers.loading),this.timers.loading=setTimeout(()=>{Pe(this.elements.container,this.config.classNames.loading,this.loading),Rt.toggleControls.call(this)},this.loading?250:0)},toggleControls(e){let{controls:t}=this.elements;if(t&&this.config.hideControls){let n=this.touch&&this.lastSeekTime+2e3>Date.now();this.toggleControls(!!(e||this.loading||this.paused||t.pressed||t.hover||n))}},migrateStyles(){Object.values({...this.media.style}).filter(e=>!F.empty(e)&&F.string(e)&&e.startsWith(`--plyr`)).forEach(e=>{this.elements.container.style.setProperty(e,this.media.style.getPropertyValue(e)),this.media.style.removeProperty(e)}),F.empty(this.media.style)&&this.media.removeAttribute(`style`)}},zt=class{constructor(e){l(this,`firstTouch`,()=>{let{player:e}=this,{elements:t}=e;e.touch=!0,Pe(t.container,e.config.classNames.isTouch,!0)}),l(this,`global`,(e=!0)=>{let{player:t}=this;t.config.keyboard.global&&We.call(t,window,`keydown keyup`,this.handleKey,e,!1),We.call(t,document.body,`click`,this.toggleMenu,e),qe.call(t,document.body,`touchstart`,this.firstTouch)}),l(this,`container`,()=>{let{player:e}=this,{config:t,elements:n,timers:r}=e;!t.keyboard.global&&t.keyboard.focused&&Ge.call(e,n.container,`keydown keyup`,this.handleKey,!1),Ge.call(e,n.container,`mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen`,t=>{let{controls:i}=n;i&&t.type===`enterfullscreen`&&(i.pressed=!1,i.hover=!1);let a=[`touchstart`,`touchmove`,`mousemove`].includes(t.type),o=0;a&&(Rt.toggleControls.call(e,!0),o=e.touch?3e3:2e3),clearTimeout(r.controls),r.controls=setTimeout(()=>Rt.toggleControls.call(e,!1),o)});let i=()=>{if(!e.isVimeo||e.config.vimeo.premium)return;let t=n.wrapper,{active:r}=e.fullscreen,[i,a]=rt.call(e),o=$e(`aspect-ratio: ${i} / ${a}`);if(!r){o?(t.style.width=null,t.style.height=null):(t.style.maxWidth=null,t.style.margin=null);return}let[s,c]=ot(),l=s/c>i/a;o?(t.style.width=l?`auto`:`100%`,t.style.height=l?`100%`:`auto`):(t.style.maxWidth=l?`${c/a*i}px`:null,t.style.margin=l?`0 auto`:null)},a=()=>{clearTimeout(r.resized),r.resized=setTimeout(i,50)};Ge.call(e,n.container,`enterfullscreen exitfullscreen`,t=>{let{target:r}=e.fullscreen;r===n.container&&(e.isEmbed||!F.empty(e.config.ratio))&&(i(),(t.type===`enterfullscreen`?Ge:Ke).call(e,window,`resize`,a))})}),l(this,`media`,()=>{let{player:e}=this,{elements:t}=e;if(Ge.call(e,e.media,`timeupdate seeking seeked`,t=>z.timeUpdate.call(e,t)),Ge.call(e,e.media,`durationchange loadeddata loadedmetadata`,t=>z.durationUpdate.call(e,t)),Ge.call(e,e.media,`ended`,()=>{e.isHTML5&&e.isVideo&&e.config.resetOnEnd&&(e.restart(),e.pause())}),Ge.call(e,e.media,`progress playing seeking seeked`,t=>z.updateProgress.call(e,t)),Ge.call(e,e.media,`volumechange`,t=>z.updateVolume.call(e,t)),Ge.call(e,e.media,`playing play pause ended emptied timeupdate`,t=>Rt.checkPlaying.call(e,t)),Ge.call(e,e.media,`waiting canplay seeked playing`,t=>Rt.checkLoading.call(e,t)),e.supported.ui&&e.config.clickToPlay&&!e.isAudio){let n=ze.call(e,`.${e.config.classNames.video}`);if(!F.element(n))return;Ge.call(e,t.container,`click`,r=>{([t.container,n].includes(r.target)||n.contains(r.target))&&(e.touch&&e.config.hideControls||(e.ended?(this.proxy(r,e.restart,`restart`),this.proxy(r,()=>{Ze(e.play())},`play`)):this.proxy(r,()=>{Ze(e.togglePlay())},`play`)))})}e.supported.ui&&e.config.disableContextMenu&&Ge.call(e,t.wrapper,`contextmenu`,e=>{e.preventDefault()},!1),Ge.call(e,e.media,`volumechange`,()=>{e.storage.set({volume:e.volume,muted:e.muted})}),Ge.call(e,e.media,`ratechange`,()=>{z.updateSetting.call(e,`speed`),e.storage.set({speed:e.speed})}),Ge.call(e,e.media,`qualitychange`,t=>{z.updateSetting.call(e,`quality`,null,t.detail.quality)}),Ge.call(e,e.media,`ready qualitychange`,()=>{z.setDownloadUrl.call(e)});let n=e.config.events.concat([`keyup`,`keydown`]).join(` `);Ge.call(e,e.media,n,n=>{let{detail:r={}}=n;n.type===`error`&&(r=e.media.error),Je.call(e,t.container,n.type,!0,r)})}),l(this,`proxy`,(e,t,n)=>{let{player:r}=this,i=r.config.listeners[n],a=F.function(i),o=!0;a&&(o=i.call(r,e)),o!==!1&&F.function(t)&&t.call(r,e)}),l(this,`bind`,(e,t,n,r,i=!0)=>{let{player:a}=this,o=a.config.listeners[r],s=F.function(o);Ge.call(a,e,t,e=>this.proxy(e,n,r),i&&!s)}),l(this,`controls`,()=>{let{player:e}=this,{elements:t}=e,n=ct.isIE?`change`:`input`;if(t.buttons.play&&Array.from(t.buttons.play).forEach(t=>{this.bind(t,`click`,()=>{Ze(e.togglePlay())},`play`)}),this.bind(t.buttons.restart,`click`,e.restart,`restart`),this.bind(t.buttons.rewind,`click`,()=>{e.lastSeekTime=Date.now(),e.rewind()},`rewind`),this.bind(t.buttons.fastForward,`click`,()=>{e.lastSeekTime=Date.now(),e.forward()},`fastForward`),this.bind(t.buttons.mute,`click`,()=>{e.muted=!e.muted},`mute`),this.bind(t.buttons.captions,`click`,()=>e.toggleCaptions()),this.bind(t.buttons.download,`click`,()=>{Je.call(e,e.media,`download`)},`download`),this.bind(t.buttons.fullscreen,`click`,()=>{e.fullscreen.toggle()},`fullscreen`),this.bind(t.buttons.pip,`click`,()=>{e.pip=`toggle`},`pip`),this.bind(t.buttons.airplay,`click`,e.airplay,`airplay`),this.bind(t.buttons.settings,`click`,t=>{t.stopPropagation(),t.preventDefault(),z.toggleMenu.call(e,t)},null,!1),this.bind(t.buttons.settings,`keyup`,t=>{[` `,`Enter`].includes(t.key)&&(t.key===`Enter`?z.focusFirstMenuItem.call(e,null,!0):(t.preventDefault(),t.stopPropagation(),z.toggleMenu.call(e,t)))},null,!1),this.bind(t.settings.menu,`keydown`,t=>{t.key===`Escape`&&z.toggleMenu.call(e,t)}),this.bind(t.inputs.seek,`mousedown mousemove`,e=>{let n=t.progress.getBoundingClientRect(),r=e.pageX-e.clientX,i=100/n.width*(e.pageX-n.left-r);e.currentTarget.setAttribute(`seek-value`,i)}),this.bind(t.inputs.seek,`mousedown mouseup keydown keyup touchstart touchend`,t=>{let n=t.currentTarget,r=`play-on-seeked`;if(F.keyboardEvent(t)&&![`ArrowLeft`,`ArrowRight`].includes(t.key))return;e.lastSeekTime=Date.now();let i=n.hasAttribute(r),a=[`mouseup`,`touchend`,`keyup`].includes(t.type);i&&a?(n.removeAttribute(r),Ze(e.play())):!a&&e.playing&&(n.setAttribute(r,``),e.pause())}),ct.isIos){let t=Re.call(e,`input[type="range"]`);Array.from(t).forEach(e=>this.bind(e,n,e=>xe(e.target)))}this.bind(t.inputs.seek,n,t=>{let n=t.currentTarget,r=n.getAttribute(`seek-value`);F.empty(r)&&(r=n.value),n.removeAttribute(`seek-value`),e.currentTime=r/n.max*e.duration},`seek`),this.bind(t.progress,`mouseenter mouseleave mousemove`,t=>z.updateSeekTooltip.call(e,t)),this.bind(t.progress,`mousemove touchmove`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.startMove(t)}),this.bind(t.progress,`mouseleave touchend click`,()=>{let{previewThumbnails:t}=e;t&&t.loaded&&t.endMove(!1,!0)}),this.bind(t.progress,`mousedown touchstart`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.startScrubbing(t)}),this.bind(t.progress,`mouseup touchend`,t=>{let{previewThumbnails:n}=e;n&&n.loaded&&n.endScrubbing(t)}),ct.isWebKit&&Array.from(Re.call(e,`input[type="range"]`)).forEach(t=>{this.bind(t,`input`,t=>z.updateRangeFill.call(e,t.target))}),e.config.toggleInvert&&!F.element(t.display.duration)&&this.bind(t.display.currentTime,`click`,()=>{e.currentTime!==0&&(e.config.invertTime=!e.config.invertTime,z.timeUpdate.call(e))}),this.bind(t.inputs.volume,n,t=>{e.volume=t.target.value},`volume`),this.bind(t.controls,`mouseenter mouseleave`,n=>{t.controls.hover=!e.touch&&n.type===`mouseenter`}),t.fullscreen&&Array.from(t.fullscreen.children).filter(e=>!e.contains(t.container)).forEach(n=>{this.bind(n,`mouseenter mouseleave`,n=>{t.controls&&(t.controls.hover=!e.touch&&n.type===`mouseenter`)})}),this.bind(t.controls,`mousedown mouseup touchstart touchend touchcancel`,e=>{t.controls.pressed=[`mousedown`,`touchstart`].includes(e.type)}),this.bind(t.controls,`focusin`,()=>{let{config:n,timers:r}=e;Pe(t.controls,n.classNames.noTransition,!0),Rt.toggleControls.call(e,!0),setTimeout(()=>{Pe(t.controls,n.classNames.noTransition,!1)},0);let i=this.touch?3e3:4e3;clearTimeout(r.controls),r.controls=setTimeout(()=>Rt.toggleControls.call(e,!1),i)}),this.bind(t.inputs.volume,`wheel`,t=>{let n=t.webkitDirectionInvertedFromDevice,[r,i]=[t.deltaX,-t.deltaY].map(e=>n?-e:e),a=Math.sign(Math.abs(r)>Math.abs(i)?r:i);e.increaseVolume(a/50);let{volume:o}=e.media;(a===1&&o<1||a===-1&&o>0)&&t.preventDefault()},`volume`,!1)}),this.player=e,this.lastKey=null,this.focusTimer=null,this.lastKeyDown=null,this.handleKey=this.handleKey.bind(this),this.toggleMenu=this.toggleMenu.bind(this),this.firstTouch=this.firstTouch.bind(this)}handleKey(e){let{player:t}=this,{elements:n}=t,{key:r,type:i,altKey:a,ctrlKey:o,metaKey:s,shiftKey:c}=e,l=i===`keydown`,u=l&&r===this.lastKey;if(a||o||s||c||!r)return;let d=e=>{t.currentTime=t.duration/10*e};if(l){let i=document.activeElement;if(F.element(i)){let{editable:r}=t.config.selectors,{seek:a}=n.inputs;if(i!==a&&Ie(i,r)||e.key===` `&&Ie(i,`button, [role^="menuitem"]`))return}switch([` `,`ArrowLeft`,`ArrowUp`,`ArrowRight`,`ArrowDown`,`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`c`,`f`,`k`,`l`,`m`].includes(r)&&(e.preventDefault(),e.stopPropagation()),r){case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:case`8`:case`9`:u||d(Number.parseInt(r,10));break;case` `:case`k`:u||Ze(t.togglePlay());break;case`ArrowUp`:t.increaseVolume(.1);break;case`ArrowDown`:t.decreaseVolume(.1);break;case`m`:u||(t.muted=!t.muted);break;case`ArrowRight`:t.forward();break;case`ArrowLeft`:t.rewind();break;case`f`:t.fullscreen.toggle();break;case`c`:u||t.toggleCaptions();break;case`l`:t.loop=!t.loop}r===`Escape`&&!t.fullscreen.usingNative&&t.fullscreen.active&&t.fullscreen.toggle(),this.lastKey=r}else this.lastKey=null}toggleMenu(e){z.toggleMenu.call(this.player,e)}};function Bt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var Vt={exports:{}},Ht=Vt.exports,Ut;function Wt(){return Ut||(Ut=1,(function(e,t){(function(t,n){e.exports=n()})(Ht,function(){var e=function(){},t={},n={},r={};function i(e,t){e=e.push?e:[e];for(var i=[],a=e.length,o=a,s=function(e,n){n.length&&i.push(e),o--,o||t(i)},c,l,u;a--;)c=e[a],l=n[c],l?s(c,l):(u=r[c]=r[c]||[],u.push(s))}function a(e,t){if(e){var i=r[e];if(n[e]=t,i)for(;i.length;)i[0](e,t),i.splice(0,1)}}function o(t,n){t.call&&(t={success:t}),n.length?(t.error||e)(n):(t.success||e)(t)}function s(t,n,r,i){var a=document,o=r.async,c=(r.numRetries||0)+1,l=r.before||e,u=t.replace(/[\?|#].*$/,``),d=t.replace(/^(css|img|module|nomodule)!/,``),f,p,m;if(i=i||0,/(^css!|\.css$)/.test(u))m=a.createElement(`link`),m.rel=`stylesheet`,m.href=d,f=`hideFocus`in m,f&&m.relList&&(f=0,m.rel=`preload`,m.as=`style`);else if(/(^img!|\.(png|gif|jpg|svg|webp)$)/.test(u))m=a.createElement(`img`),m.src=d;else if(m=a.createElement(`script`),m.src=d,m.async=o===void 0||o,p=`noModule`in m,/^module!/.test(u)){if(!p)return n(t,`l`);m.type=`module`}else if(/^nomodule!/.test(u)&&p)return n(t,`l`);m.onload=m.onerror=m.onbeforeload=function(e){var a=e.type[0];if(f)try{m.sheet.cssText.length||(a=`e`)}catch(e){e.code!=18&&(a=`e`)}if(a==`e`){if(i+=1,i<c)return s(t,n,r,i)}else if(m.rel==`preload`&&m.as==`style`)return m.rel=`stylesheet`;n(t,a,e.defaultPrevented)},l(t,m)!==!1&&a.head.appendChild(m)}function c(e,t,n){e=e.push?e:[e];for(var r=e.length,i=r,a=[],o=function(e,n,i){if(n==`e`&&a.push(e),n==`b`){if(i)a.push(e);else return}r--,r||t(a)},c=0;c<i;c++)s(e[c],o,n)}function l(e,n,r){var i,s;if(n&&n.trim&&(i=n),s=(i?r:n)||{},i){if(i in t)throw`LoadJS`;t[i]=!0}function l(t,n){c(e,function(e){o(s,e),t&&o({success:t,error:n},e),a(i,e)},s)}if(s.returnPromise)return new Promise(l);l()}return l.ready=function(e,t){return i(e,function(e){o(t,e)}),l},l.done=function(e){a(e,[])},l.reset=function(){t={},n={},r={}},l.isDefined=function(e){return e in t},l})})(Vt)),Vt.exports}var Gt=/*@__PURE__*/ Bt(Wt());function Kt(e){return new Promise((t,n)=>{Gt(e,{success:t,error:n})})}function qt(e){if(F.empty(e))return null;if(F.number(Number(e)))return e;let t=e.match(/^.*(vimeo.com\/|video\/)(\d+).*/);return t?t[2]:e}function Jt(e){let t=e.match(/^.*(vimeo.com\/|video\/)(\d+)(\?.*h=|\/)+([\d,a-f]+)/);return t&&t.length===5?t[4]:null}function Yt(e){e&&!this.embed.hasPlayed&&(this.embed.hasPlayed=!0),this.media.paused===e&&(this.media.paused=!e,Je.call(this,this.media,e?`play`:`pause`))}var Xt={setup(){let e=this;Pe(e.elements.wrapper,e.config.classNames.embed,!0),e.options.speed=e.config.speed.options,it.call(e),F.object(window.Vimeo)?Xt.ready.call(e):Kt(e.config.urls.vimeo.sdk).then(()=>{Xt.ready.call(e)}).catch(t=>{e.debug.warn(`Vimeo SDK (player.js) failed to load`,t)})},ready(){let e=this,t=e.config.vimeo,{premium:n,referrerPolicy:r,...i}=t,a=e.media.getAttribute(`src`),o=``;F.empty(a)?(a=e.media.getAttribute(e.config.attributes.embed.id),o=e.media.getAttribute(e.config.attributes.embed.hash)):o=Jt(a);let s=o?{h:o}:{};n&&Object.assign(i,{controls:!1,sidedock:!1});let c=Dt({loop:e.config.loop.active,autoplay:e.autoplay,muted:e.muted,gesture:`media`,playsinline:e.config.playsinline,...s,...i}),l=qt(a),u=De(`iframe`),d=ut(e.config.urls.vimeo.iframe,l,c);if(u.setAttribute(`src`,d),u.setAttribute(`allowfullscreen`,``),u.setAttribute(`allow`,[`autoplay`,`fullscreen`,`picture-in-picture`,`encrypted-media`,`accelerometer`,`gyroscope`].join(`; `)),F.empty(r)||u.setAttribute(`referrerPolicy`,r),n||!t.customControls)u.setAttribute(`data-poster`,e.poster),e.media=je(u,e.media);else{let t=De(`div`,{class:e.config.classNames.embedContainer,"data-poster":e.poster});t.appendChild(u),e.media=je(t,e.media)}t.customControls||bt(ut(e.config.urls.vimeo.api,d)).then(t=>{!F.empty(t)&&t.thumbnail_url&&Rt.setPoster.call(e,t.thumbnail_url).catch(()=>{})}),e.embed=new window.Vimeo.Player(u,{autopause:e.config.autopause,muted:e.muted}),e.media.paused=!0,e.media.currentTime=0,e.supported.ui&&e.embed.disableTextTrack(),e.media.play=()=>(Yt.call(e,!0),e.embed.play()),e.media.pause=()=>(Yt.call(e,!1),e.embed.pause()),e.media.stop=()=>{e.pause(),e.currentTime=0};let{currentTime:f}=e.media;Object.defineProperty(e.media,"currentTime",{get(){return f},set(t){let{embed:n,media:r,paused:i,volume:a}=e,o=i&&!n.hasPlayed;r.seeking=!0,Je.call(e,r,`seeking`),Promise.resolve(o&&n.setVolume(0)).then(()=>n.setCurrentTime(t)).then(()=>o&&n.pause()).then(()=>o&&n.setVolume(a)).catch(()=>{})}});let p=e.config.speed.selected;Object.defineProperty(e.media,"playbackRate",{get(){return p},set(t){e.embed.setPlaybackRate(t).then(()=>{p=t,Je.call(e,e.media,`ratechange`)}).catch(()=>{e.options.speed=[1]})}});let{volume:m}=e.config;Object.defineProperty(e.media,"volume",{get(){return m},set(t){e.embed.setVolume(t).then(()=>{m=t,Je.call(e,e.media,`volumechange`)})}});let{muted:h}=e.config;Object.defineProperty(e.media,"muted",{get(){return h},set(t){let n=F.boolean(t)?t:!1;e.embed.setMuted(n?!0:e.config.muted).then(()=>{h=n,Je.call(e,e.media,`volumechange`)})}});let{loop:g}=e.config;Object.defineProperty(e.media,"loop",{get(){return g},set(t){let n=F.boolean(t)?t:e.config.loop.active;e.embed.setLoop(n).then(()=>{g=n})}});let _;e.embed.getVideoUrl().then(t=>{_=t,z.setDownloadUrl.call(e)}).catch(e=>{this.debug.warn(e)}),Object.defineProperty(e.media,"currentSrc",{get(){return _}}),Object.defineProperty(e.media,"ended",{get(){return e.currentTime===e.duration}}),Promise.all([e.embed.getVideoWidth(),e.embed.getVideoHeight()]).then(t=>{let[n,r]=t;e.embed.ratio=at(n,r),it.call(this)}),e.embed.setAutopause(e.config.autopause).then(t=>{e.config.autopause=t}),e.embed.getVideoTitle().then(t=>{e.config.title=t,Rt.setTitle.call(this)}),e.embed.getCurrentTime().then(t=>{f=t,Je.call(e,e.media,`timeupdate`)}),e.embed.getDuration().then(t=>{e.media.duration=t,Je.call(e,e.media,`durationchange`)}),e.embed.getTextTracks().then(t=>{e.media.textTracks=t,Ot.setup.call(e)}),e.embed.on(`cuechange`,({cues:t=[]})=>{let n=t.map(e=>ht(e.text));Ot.updateCues.call(e,n)}),e.embed.on(`loaded`,()=>{e.embed.getPaused().then(t=>{Yt.call(e,!t),t||Je.call(e,e.media,`playing`)}),F.element(e.embed.element)&&e.supported.ui&&e.embed.element.setAttribute(`tabindex`,-1)}),e.embed.on(`bufferstart`,()=>{Je.call(e,e.media,`waiting`)}),e.embed.on(`bufferend`,()=>{Je.call(e,e.media,`playing`)}),e.embed.on(`play`,()=>{Yt.call(e,!0),Je.call(e,e.media,`playing`)}),e.embed.on(`pause`,()=>{Yt.call(e,!1)}),e.embed.on(`timeupdate`,t=>{e.media.seeking=!1,f=t.seconds,Je.call(e,e.media,`timeupdate`)}),e.embed.on(`progress`,t=>{e.media.buffered=t.percent,Je.call(e,e.media,`progress`),Number.parseInt(t.percent,10)===1&&Je.call(e,e.media,`canplaythrough`),e.embed.getDuration().then(t=>{t!==e.media.duration&&(e.media.duration=t,Je.call(e,e.media,`durationchange`))})}),e.embed.on(`seeked`,()=>{e.media.seeking=!1,Je.call(e,e.media,`seeked`)}),e.embed.on(`ended`,()=>{e.media.paused=!0,Je.call(e,e.media,`ended`)}),e.embed.on(`error`,t=>{e.media.error=t,Je.call(e,e.media,`error`)}),t.customControls&&setTimeout(()=>Rt.build.call(e),0)}};function Zt(e){if(F.empty(e))return null;let t=e.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|&v=)([^#&?]*).*/);return t&&t[2]?t[2]:e}function Qt(e){e&&!this.embed.hasPlayed&&(this.embed.hasPlayed=!0),this.media.paused===e&&(this.media.paused=!e,Je.call(this,this.media,e?`play`:`pause`))}function $t(e){if(e.noCookie)return`https://www.youtube-nocookie.com`;if(window.location.protocol===`http:`)return`http://www.youtube.com`}var en={setup(){if(Pe(this.elements.wrapper,this.config.classNames.embed,!0),F.object(window.YT)&&F.function(window.YT.Player))en.ready.call(this);else{let e=window.onYouTubeIframeAPIReady;window.onYouTubeIframeAPIReady=()=>{F.function(e)&&e(),en.ready.call(this)},Kt(this.config.urls.youtube.sdk).catch(e=>{this.debug.warn(`YouTube API failed to load`,e)})}},getTitle(e){bt(ut(this.config.urls.youtube.api,e)).then(e=>{if(F.object(e)){let{title:t,height:n,width:r}=e;this.config.title=t,Rt.setTitle.call(this),this.embed.ratio=at(r,n)}it.call(this)}).catch(()=>{it.call(this)})},ready(){let e=this,t=e.config.youtube,n=e.media&&e.media.getAttribute(`id`);if(!F.empty(n)&&n.startsWith(`youtube-`))return;let r=e.media.getAttribute(`src`);F.empty(r)&&(r=e.media.getAttribute(this.config.attributes.embed.id));let i=Zt(r);if(e.media=je(De(`div`,{id:lt(e.provider),"data-poster":t.customControls?e.poster:void 0}),e.media),t.customControls){let t=e=>`https://i.ytimg.com/vi/${i}/${e}default.jpg`;Lt(t(`maxres`),121).catch(()=>Lt(t(`sd`),121)).catch(()=>Lt(t(`hq`))).then(t=>Rt.setPoster.call(e,t.src)).then(t=>{t.includes(`maxres`)||(e.elements.poster.style.backgroundSize=`cover`)}).catch(()=>{})}e.embed=new window.YT.Player(e.media,{videoId:i,host:$t(t),playerVars:we({},{autoplay:+!!e.config.autoplay,hl:e.config.hl,controls:e.supported.ui&&t.customControls?0:1,disablekb:1,playsinline:e.config.playsinline&&!e.config.fullscreen.iosNative?1:0,cc_load_policy:+!!e.captions.active,cc_lang_pref:e.config.captions.language,widget_referrer:window?window.location.href:null},t),events:{onError(t){if(!e.media.error){let n=t.data,r={2:`The request contains an invalid parameter value. For example, this error occurs if you specify a video ID that does not have 11 characters, or if the video ID contains invalid characters, such as exclamation points or asterisks.`,5:`The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.`,100:`The video requested was not found. This error occurs when a video has been removed (for any reason) or has been marked as private.`,101:`The owner of the requested video does not allow it to be played in embedded players.`,150:`The owner of the requested video does not allow it to be played in embedded players.`}[n]||`An unknown error occurred`;e.media.error={code:n,message:r},Je.call(e,e.media,`error`)}},onPlaybackRateChange(t){let n=t.target;e.media.playbackRate=n.getPlaybackRate(),Je.call(e,e.media,`ratechange`)},onReady(n){if(F.function(e.media.play))return;let r=n.target;en.getTitle.call(e,i),e.media.play=()=>{Qt.call(e,!0),r.playVideo()},e.media.pause=()=>{Qt.call(e,!1),r.pauseVideo()},e.media.stop=()=>{r.stopVideo()},e.media.duration=r.getDuration(),e.media.paused=!0,e.media.currentTime=0,Object.defineProperty(e.media,"currentTime",{get(){return Number(r.getCurrentTime())},set(t){e.paused&&!e.embed.hasPlayed&&e.embed.mute(),e.media.seeking=!0,Je.call(e,e.media,`seeking`),r.seekTo(t)}}),Object.defineProperty(e.media,"playbackRate",{get(){return r.getPlaybackRate()},set(e){r.setPlaybackRate(e)}});let{volume:a}=e.config;Object.defineProperty(e.media,"volume",{get(){return a},set(t){a=t,r.setVolume(a*100),Je.call(e,e.media,`volumechange`)}});let{muted:o}=e.config;Object.defineProperty(e.media,"muted",{get(){return o},set(t){let n=F.boolean(t)?t:o;o=n,r[n?`mute`:`unMute`](),r.setVolume(a*100),Je.call(e,e.media,`volumechange`)}}),Object.defineProperty(e.media,"currentSrc",{get(){return r.getVideoUrl()}}),Object.defineProperty(e.media,"ended",{get(){return e.currentTime===e.duration}});let s=r.getAvailablePlaybackRates();e.options.speed=s.filter(t=>e.config.speed.options.includes(t)),e.supported.ui&&t.customControls&&e.media.setAttribute(`tabindex`,-1),Je.call(e,e.media,`timeupdate`),Je.call(e,e.media,`durationchange`),clearInterval(e.timers.buffering),e.timers.buffering=setInterval(()=>{e.media.buffered=r.getVideoLoadedFraction(),(e.media.lastBuffered===null||e.media.lastBuffered<e.media.buffered)&&Je.call(e,e.media,`progress`),e.media.lastBuffered=e.media.buffered,e.media.buffered===1&&(clearInterval(e.timers.buffering),Je.call(e,e.media,`canplaythrough`))},200),t.customControls&&setTimeout(()=>Rt.build.call(e),50)},onStateChange(n){let r=n.target;switch(clearInterval(e.timers.playing),e.media.seeking&&[1,2].includes(n.data)&&(e.media.seeking=!1,Je.call(e,e.media,`seeked`)),n.data){case-1:Je.call(e,e.media,`timeupdate`),e.media.buffered=r.getVideoLoadedFraction(),Je.call(e,e.media,`progress`);break;case 0:Qt.call(e,!1),e.media.loop?(r.stopVideo(),r.playVideo()):Je.call(e,e.media,`ended`);break;case 1:t.customControls&&!e.config.autoplay&&e.media.paused&&!e.embed.hasPlayed?e.media.pause():(Qt.call(e,!0),Je.call(e,e.media,`playing`),e.timers.playing=setInterval(()=>{Je.call(e,e.media,`timeupdate`)},50),e.media.duration!==r.getDuration()&&(e.media.duration=r.getDuration(),Je.call(e,e.media,`durationchange`)));break;case 2:e.muted||e.embed.unMute(),Qt.call(e,!1);break;case 3:Je.call(e,e.media,`waiting`)}Je.call(e,e.elements.container,`statechange`,!1,{code:n.data})}}})}},tn={setup(){this.media?(Pe(this.elements.container,this.config.classNames.type.replace(`{0}`,this.type),!0),Pe(this.elements.container,this.config.classNames.provider.replace(`{0}`,this.provider),!0),this.isEmbed&&Pe(this.elements.container,this.config.classNames.type.replace(`{0}`,`video`),!0),this.isVideo&&(this.elements.wrapper=De(`div`,{class:this.config.classNames.video}),Te(this.media,this.elements.wrapper),this.elements.poster=De(`div`,{class:this.config.classNames.poster}),this.elements.wrapper.appendChild(this.elements.poster)),this.isHTML5?st.setup.call(this):this.isYouTube?en.setup.call(this):this.isVimeo&&Xt.setup.call(this)):this.debug.warn(`No media element found!`)}};function nn(e){e.manager&&e.manager.destroy(),e.elements.displayContainer&&e.elements.displayContainer.destroy(),e.elements.container.remove()}var rn=class{constructor(e){l(this,`load`,()=>{this.enabled&&(!F.object(window.google)||!F.object(window.google.ima)?Kt(this.player.config.urls.googleIMA.sdk).then(()=>{this.ready()}).catch(()=>{this.trigger(`error`,/* @__PURE__ */ Error(`Google IMA SDK failed to load`))}):this.ready())}),l(this,`ready`,()=>{this.enabled||nn(this),this.startSafetyTimer(12e3,`ready()`),this.managerPromise.then(()=>{this.clearSafetyTimer(`onAdsManagerLoaded()`)}),this.listeners(),this.setupIMA()}),l(this,`setupIMA`,()=>{this.elements.container=De(`div`,{class:this.player.config.classNames.ads}),this.player.elements.container.appendChild(this.elements.container),google.ima.settings.setVpaidMode(google.ima.ImaSdkSettings.VpaidMode.ENABLED),google.ima.settings.setLocale(this.player.config.ads.language),google.ima.settings.setDisableCustomPlaybackForIOS10Plus(this.player.config.playsinline),this.elements.displayContainer=new google.ima.AdDisplayContainer(this.elements.container,this.player.media),this.loader=new google.ima.AdsLoader(this.elements.displayContainer),this.loader.addEventListener(google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,e=>this.onAdsManagerLoaded(e),!1),this.loader.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,e=>this.onAdError(e),!1),this.requestAds()}),l(this,`requestAds`,()=>{let{container:e}=this.player.elements;try{let t=new google.ima.AdsRequest;t.adTagUrl=this.tagUrl,t.linearAdSlotWidth=e.offsetWidth,t.linearAdSlotHeight=e.offsetHeight,t.nonLinearAdSlotWidth=e.offsetWidth,t.nonLinearAdSlotHeight=e.offsetHeight,t.forceNonLinearFullSlot=!1,t.setAdWillPlayMuted(!this.player.muted),this.loader.requestAds(t)}catch(e){this.onAdError(e)}}),l(this,`pollCountdown`,(e=!1)=>{if(!e){clearInterval(this.countdownTimer),this.elements.container.removeAttribute(`data-badge-text`);return}let t=()=>{let e=Tt(Math.max(this.manager.getRemainingTime(),0)),t=`${vt.get(`advertisement`,this.player.config)} - ${e}`;this.elements.container.setAttribute(`data-badge-text`,t)};this.countdownTimer=setInterval(t,100)}),l(this,`onAdsManagerLoaded`,e=>{if(!this.enabled)return;let t=new google.ima.AdsRenderingSettings;t.restoreCustomPlaybackStateOnAdBreakComplete=!0,t.enablePreloading=!0,this.manager=e.getAdsManager(this.player,t),this.cuePoints=this.manager.getCuePoints(),this.manager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,e=>this.onAdError(e)),Object.keys(google.ima.AdEvent.Type).forEach(e=>{this.manager.addEventListener(google.ima.AdEvent.Type[e],e=>this.onAdEvent(e))}),this.trigger(`loaded`)}),l(this,`addCuePoints`,()=>{F.empty(this.cuePoints)||this.cuePoints.forEach(e=>{if(e!==0&&e!==-1&&e<this.player.duration){let t=this.player.elements.progress;if(F.element(t)){let n=100/this.player.duration*e,r=De(`span`,{class:this.player.config.classNames.cues});r.style.left=`${n.toString()}%`,t.appendChild(r)}}})}),l(this,`onAdEvent`,e=>{let{container:t}=this.player.elements,n=e.getAd(),r=e.getAdData();switch((e=>{Je.call(this.player,this.player.media,`ads${e.replace(/_/g,``).toLowerCase()}`)})(e.type),e.type){case google.ima.AdEvent.Type.LOADED:this.trigger(`loaded`),this.pollCountdown(!0),n.isLinear()||(n.width=t.offsetWidth,n.height=t.offsetHeight);break;case google.ima.AdEvent.Type.STARTED:this.manager.setVolume(this.player.volume);break;case google.ima.AdEvent.Type.ALL_ADS_COMPLETED:this.player.ended?this.loadAds():this.loader.contentComplete();break;case google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED:this.pauseContent();break;case google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED:this.pollCountdown(),this.resumeContent();break;case google.ima.AdEvent.Type.LOG:r.adError&&this.player.debug.warn(`Non-fatal ad error: ${r.adError.getMessage()}`)}}),l(this,`onAdError`,e=>{this.cancel(),this.player.debug.warn(`Ads error`,e)}),l(this,`listeners`,()=>{let{container:e}=this.player.elements,t;this.player.on(`canplay`,()=>{this.addCuePoints()}),this.player.on(`ended`,()=>{this.loader.contentComplete()}),this.player.on(`timeupdate`,()=>{t=this.player.currentTime}),this.player.on(`seeked`,()=>{let e=this.player.currentTime;F.empty(this.cuePoints)||this.cuePoints.forEach((n,r)=>{t<n&&n<e&&(this.manager.discardAdBreak(),this.cuePoints.splice(r,1))})}),window.addEventListener(`resize`,()=>{this.manager&&this.manager.resize(e.offsetWidth,e.offsetHeight,google.ima.ViewMode.NORMAL)})}),l(this,`play`,()=>{let{container:e}=this.player.elements;this.managerPromise||this.resumeContent(),this.managerPromise.then(()=>{this.manager.setVolume(this.player.volume),this.elements.displayContainer.initialize();try{this.initialized||(this.manager.init(e.offsetWidth,e.offsetHeight,google.ima.ViewMode.NORMAL),this.manager.start()),this.initialized=!0}catch(e){this.onAdError(e)}}).catch(()=>{})}),l(this,`resumeContent`,()=>{this.elements.container.style.zIndex=``,this.playing=!1,Ze(this.player.media.play())}),l(this,`pauseContent`,()=>{this.elements.container.style.zIndex=3,this.playing=!0,this.player.media.pause()}),l(this,`cancel`,()=>{this.initialized&&this.resumeContent(),this.trigger(`error`),this.loadAds()}),l(this,`loadAds`,()=>{this.managerPromise.then(()=>{this.manager&&this.manager.destroy(),this.managerPromise=new Promise(e=>{this.on(`loaded`,e),this.player.debug.log(this.manager)}),this.initialized=!1,this.requestAds()}).catch(()=>{})}),l(this,`trigger`,(e,...t)=>{let n=this.events[e];F.array(n)&&n.forEach(e=>{F.function(e)&&e.apply(this,t)})}),l(this,`on`,(e,t)=>(F.array(this.events[e])||(this.events[e]=[]),this.events[e].push(t),this)),l(this,`startSafetyTimer`,(e,t)=>{this.player.debug.log(`Safety timer invoked from: ${t}`),this.safetyTimer=setTimeout(()=>{this.cancel(),this.clearSafetyTimer(`startSafetyTimer()`)},e)}),l(this,`clearSafetyTimer`,e=>{F.nullOrUndefined(this.safetyTimer)||(this.player.debug.log(`Safety timer cleared from: ${e}`),clearTimeout(this.safetyTimer),this.safetyTimer=null)}),this.player=e,this.config=e.config.ads,this.playing=!1,this.initialized=!1,this.elements={container:null,displayContainer:null},this.manager=null,this.loader=null,this.cuePoints=null,this.events={},this.safetyTimer=null,this.countdownTimer=null,this.managerPromise=new Promise((e,t)=>{this.on(`loaded`,e),this.on(`error`,t)}),this.load()}get enabled(){let{config:e}=this;return this.player.isHTML5&&this.player.isVideo&&e.enabled&&(!F.empty(e.publisherId)||F.url(e.tagUrl))}get tagUrl(){let{config:e}=this;return F.url(e.tagUrl)?e.tagUrl:`https://go.aniview.com/api/adserver6/vast/?${Dt({AV_PUBLISHERID:`58c25bb0073ef448b1087ad6`,AV_CHANNELID:`5a0458dc28a06145e4519d21`,AV_URL:window.location.hostname,cb:Date.now(),AV_WIDTH:640,AV_HEIGHT:480,AV_CDIM2:e.publisherId})}`}};function an(e=0,t=0,n=255){return Math.min(Math.max(e,t),n)}function on(e){let t=[];return e.split(/\r\n\r\n|\n\n|\r\r/).forEach(e=>{let n={};e.split(/\r\n|\n|\r/).forEach(e=>{if(!F.number(n.startTime)){let t=e.match(/(\d{2})?:?(\d{2}):(\d{2}).(\d{2,3})( ?--> ?)(\d{2})?:?(\d{2}):(\d{2}).(\d{2,3})/);t&&(n.startTime=Number(t[1]||0)*60*60+Number(t[2])*60+Number(t[3])+Number(`0.${t[4]}`),n.endTime=Number(t[6]||0)*60*60+Number(t[7])*60+Number(t[8])+Number(`0.${t[9]}`))}else if(!F.empty(e.trim())&&F.empty(n.text)){let t=e.trim().split(`#xywh=`);[n.text]=t,t[1]&&([n.x,n.y,n.w,n.h]=t[1].split(`,`))}}),n.text&&t.push(n)}),t}function sn(e,t){let n=t.width/t.height,r={};return e>n?(r.width=t.width,r.height=1/e*t.width):(r.height=t.height,r.width=e*t.height),r}var cn=class{constructor(e){l(this,`load`,()=>{this.player.elements.display.seekTooltip&&(this.player.elements.display.seekTooltip.hidden=this.enabled),this.enabled&&this.getThumbnails().then(()=>{this.enabled&&(this.render(),this.determineContainerAutoSizing(),this.listeners(),this.loaded=!0)})}),l(this,`getThumbnails`,()=>new Promise(e=>{let{src:t}=this.player.config.previewThumbnails;if(F.empty(t))throw Error(`Missing previewThumbnails.src config attribute`);let n=()=>{this.thumbnails.sort((e,t)=>e.height-t.height),this.player.debug.log(`Preview thumbnails`,this.thumbnails),e()};if(F.function(t))t(e=>{this.thumbnails=e,n()});else{let e=(F.string(t)?[t]:t).map(e=>this.getThumbnail(e));Promise.all(e).then(n)}})),l(this,`getThumbnail`,e=>new Promise(t=>{bt(e,void 0,this.player.config.previewThumbnails.withCredentials).then(n=>{let r={frames:on(n),height:null,urlPrefix:``};!r.frames[0].text.startsWith(`/`)&&!r.frames[0].text.startsWith(`http://`)&&!r.frames[0].text.startsWith(`https://`)&&(r.urlPrefix=e.substring(0,e.lastIndexOf(`/`)+1));let i=new Image;i.onload=()=>{r.height=i.naturalHeight,r.width=i.naturalWidth,this.thumbnails.push(r),t()},i.src=r.urlPrefix+r.frames[0].text})})),l(this,`startMove`,e=>{if(this.loaded&&F.event(e)&&[`touchmove`,`mousemove`].includes(e.type)&&this.player.media.duration){if(e.type===`touchmove`)this.seekTime=this.player.media.duration*(this.player.elements.inputs.seek.value/100);else{let t=this.player.elements.progress.getBoundingClientRect(),n=100/t.width*(e.pageX-t.left);this.seekTime=this.player.media.duration*(n/100),this.seekTime<0&&(this.seekTime=0),this.seekTime>this.player.media.duration-1&&(this.seekTime=this.player.media.duration-1),this.mousePosX=e.pageX,this.elements.thumb.time.textContent=Tt(this.seekTime);let r=this.player.config.markers?.points?.find(({time:e})=>e===Math.round(this.seekTime));r&&this.elements.thumb.time.insertAdjacentHTML(`afterbegin`,`${r.label}<br>`)}this.showImageAtCurrentTime()}}),l(this,`endMove`,()=>{this.toggleThumbContainer(!1,!0)}),l(this,`startScrubbing`,e=>{(F.nullOrUndefined(e.button)||e.button===!1||e.button===0)&&(this.mouseDown=!0,this.player.media.duration&&(this.toggleScrubbingContainer(!0),this.toggleThumbContainer(!1,!0),this.showImageAtCurrentTime()))}),l(this,`endScrubbing`,()=>{this.mouseDown=!1,Math.ceil(this.lastTime)===Math.ceil(this.player.media.currentTime)?this.toggleScrubbingContainer(!1):qe.call(this.player,this.player.media,`timeupdate`,()=>{this.mouseDown||this.toggleScrubbingContainer(!1)})}),l(this,`listeners`,()=>{this.player.on(`play`,()=>{this.toggleThumbContainer(!1,!0)}),this.player.on(`seeked`,()=>{this.toggleThumbContainer(!1)}),this.player.on(`timeupdate`,()=>{this.lastTime=this.player.media.currentTime})}),l(this,`render`,()=>{this.elements.thumb.container=De(`div`,{class:this.player.config.classNames.previewThumbnails.thumbContainer}),this.elements.thumb.imageContainer=De(`div`,{class:this.player.config.classNames.previewThumbnails.imageContainer}),this.elements.thumb.container.appendChild(this.elements.thumb.imageContainer);let e=De(`div`,{class:this.player.config.classNames.previewThumbnails.timeContainer});this.elements.thumb.time=De(`span`,{},`00:00`),e.appendChild(this.elements.thumb.time),this.elements.thumb.imageContainer.appendChild(e),F.element(this.player.elements.progress)&&this.player.elements.progress.appendChild(this.elements.thumb.container),this.elements.scrubbing.container=De(`div`,{class:this.player.config.classNames.previewThumbnails.scrubbingContainer}),this.player.elements.wrapper.appendChild(this.elements.scrubbing.container)}),l(this,`destroy`,()=>{this.elements.thumb.container&&this.elements.thumb.container.remove(),this.elements.scrubbing.container&&this.elements.scrubbing.container.remove()}),l(this,`showImageAtCurrentTime`,()=>{this.mouseDown?this.setScrubbingContainerSize():this.setThumbContainerSizeAndPos();let e=this.thumbnails[0].frames.findIndex(e=>this.seekTime>=e.startTime&&this.seekTime<=e.endTime),t=e>=0,n=0;this.mouseDown||this.toggleThumbContainer(t),t&&(this.thumbnails.forEach((t,r)=>{this.loadedImages.includes(t.frames[e].text)&&(n=r)}),e!==this.showingThumb&&(this.showingThumb=e,this.loadImage(n)))}),l(this,`loadImage`,(e=0)=>{let t=this.showingThumb,n=this.thumbnails[e],{urlPrefix:r}=n,i=n.frames[t],a=n.frames[t].text,o=r+a;if(!this.currentImageElement||this.currentImageElement.dataset.filename!==a){this.loadingImage&&this.usingSprites&&(this.loadingImage.onload=null);let n=new Image;n.src=o,n.dataset.index=t,n.dataset.filename=a,this.showingThumbFilename=a,this.player.debug.log(`Loading image: ${o}`),n.onload=()=>this.showImage(n,i,e,t,a,!0),this.loadingImage=n,this.removeOldImages(n)}else this.showImage(this.currentImageElement,i,e,t,a,!1),this.currentImageElement.dataset.index=t,this.removeOldImages(this.currentImageElement)}),l(this,`showImage`,(e,t,n,r,i,a=!0)=>{this.player.debug.log(`Showing thumb: ${i}. num: ${r}. qual: ${n}. newimg: ${a}`),this.setImageSizeAndOffset(e,t),a&&(this.currentImageContainer.appendChild(e),this.currentImageElement=e,this.loadedImages.includes(i)||this.loadedImages.push(i)),this.preloadNearby(r,!0).then(this.preloadNearby(r,!1)).then(this.getHigherQuality(n,e,t,i))}),l(this,`removeOldImages`,e=>{Array.from(this.currentImageContainer.children).forEach(t=>{if(t.tagName.toLowerCase()!==`img`)return;let n=this.usingSprites?500:1e3;if(t.dataset.index!==e.dataset.index&&!t.dataset.deleting){t.dataset.deleting=!0;let{currentImageContainer:e}=this;setTimeout(()=>{e.removeChild(t),this.player.debug.log(`Removing thumb: ${t.dataset.filename}`)},n)}})}),l(this,`preloadNearby`,(e,t=!0)=>new Promise(n=>{setTimeout(()=>{let r=this.thumbnails[0].frames[e].text;if(this.showingThumbFilename===r){let i;i=t?this.thumbnails[0].frames.slice(e):this.thumbnails[0].frames.slice(0,e).reverse();let a=!1;i.forEach(e=>{let t=e.text;if(t!==r&&!this.loadedImages.includes(t)){a=!0,this.player.debug.log(`Preloading thumb filename: ${t}`);let{urlPrefix:e}=this.thumbnails[0],r=e+t,i=new Image;i.src=r,i.onload=()=>{this.player.debug.log(`Preloaded thumb filename: ${t}`),this.loadedImages.includes(t)||this.loadedImages.push(t),n()}}}),a||n()}},300)})),l(this,`getHigherQuality`,(e,t,n,r)=>{if(e<this.thumbnails.length-1){let i=t.naturalHeight;this.usingSprites&&(i=n.h),i<this.thumbContainerHeight&&setTimeout(()=>{this.showingThumbFilename===r&&(this.player.debug.log(`Showing higher quality thumb for: ${r}`),this.loadImage(e+1))},300)}}),l(this,`toggleThumbContainer`,(e=!1,t=!1)=>{let n=this.player.config.classNames.previewThumbnails.thumbContainerShown;this.elements.thumb.container.classList.toggle(n,e),!e&&t&&(this.showingThumb=null,this.showingThumbFilename=null)}),l(this,`toggleScrubbingContainer`,(e=!1)=>{let t=this.player.config.classNames.previewThumbnails.scrubbingContainerShown;this.elements.scrubbing.container.classList.toggle(t,e),e||(this.showingThumb=null,this.showingThumbFilename=null)}),l(this,`determineContainerAutoSizing`,()=>{(this.elements.thumb.imageContainer.clientHeight>20||this.elements.thumb.imageContainer.clientWidth>20)&&(this.sizeSpecifiedInCSS=!0)}),l(this,`setThumbContainerSizeAndPos`,()=>{let{imageContainer:e}=this.elements.thumb;if(!this.sizeSpecifiedInCSS){let t=Math.floor(this.thumbContainerHeight*this.thumbAspectRatio);e.style.height=`${this.thumbContainerHeight}px`,e.style.width=`${t}px`}else if(e.clientHeight>20&&e.clientWidth<20){let t=Math.floor(e.clientHeight*this.thumbAspectRatio);e.style.width=`${t}px`}else if(e.clientHeight<20&&e.clientWidth>20){let t=Math.floor(e.clientWidth/this.thumbAspectRatio);e.style.height=`${t}px`}this.setThumbContainerPos()}),l(this,`setThumbContainerPos`,()=>{let e=this.player.elements.progress.getBoundingClientRect(),t=this.player.elements.container.getBoundingClientRect(),{container:n}=this.elements.thumb,r=t.left-e.left+10,i=t.right-e.left-n.clientWidth-10,a=this.mousePosX-e.left-n.clientWidth/2,o=an(a,r,i);n.style.left=`${o}px`,n.style.setProperty(`--preview-arrow-offset`,`${a-o}px`)}),l(this,`setScrubbingContainerSize`,()=>{let{width:e,height:t}=sn(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight});this.elements.scrubbing.container.style.width=`${e}px`,this.elements.scrubbing.container.style.height=`${t}px`}),l(this,`setImageSizeAndOffset`,(e,t)=>{if(!this.usingSprites)return;let n=this.thumbContainerHeight/t.h;e.style.height=`${e.naturalHeight*n}px`,e.style.width=`${e.naturalWidth*n}px`,e.style.left=`-${t.x*n}px`,e.style.top=`-${t.y*n}px`}),this.player=e,this.thumbnails=[],this.loaded=!1,this.lastMouseMoveTime=Date.now(),this.mouseDown=!1,this.loadedImages=[],this.elements={thumb:{},scrubbing:{}},this.load()}get enabled(){return this.player.isHTML5&&this.player.isVideo&&this.player.config.previewThumbnails.enabled}get currentImageContainer(){return this.mouseDown?this.elements.scrubbing.container:this.elements.thumb.imageContainer}get usingSprites(){return Object.keys(this.thumbnails[0].frames[0]).includes(`w`)}get thumbAspectRatio(){return this.usingSprites?this.thumbnails[0].frames[0].w/this.thumbnails[0].frames[0].h:this.thumbnails[0].width/this.thumbnails[0].height}get thumbContainerHeight(){if(this.mouseDown){let{height:e}=sn(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight});return e}return this.sizeSpecifiedInCSS?this.elements.thumb.imageContainer.clientHeight:Math.floor(this.player.media.clientWidth/this.thumbAspectRatio/4)}get currentImageElement(){return this.mouseDown?this.currentScrubbingImageElement:this.currentThumbnailImageElement}set currentImageElement(e){this.mouseDown?this.currentScrubbingImageElement=e:this.currentThumbnailImageElement=e}},ln={insertElements(e,t){F.string(t)?ke(e,this.media,{src:t}):F.array(t)&&t.forEach(t=>{ke(e,this.media,t)})},change(e){Ce(e,`sources.length`)?(st.cancelRequests.call(this),this.destroy(()=>{this.options.quality=[],I(this.media),this.media=null,F.element(this.elements.container)&&this.elements.container.removeAttribute(`class`);let{sources:t,type:n}=e,[{provider:r=jt.html5,src:i}]=t,a=r===`html5`?n:`div`,o=r===`html5`?{}:{src:i};Object.assign(this,{provider:r,type:n,supported:He.check(n,r,this.config.playsinline),media:De(a,o)}),this.elements.container.appendChild(this.media),F.boolean(e.autoplay)&&(this.config.autoplay=e.autoplay),this.isHTML5&&(this.config.crossorigin&&this.media.setAttribute(`crossorigin`,``),this.config.autoplay&&this.media.setAttribute(`autoplay`,``),F.empty(e.poster)||(this.poster=e.poster),this.config.loop.active&&this.media.setAttribute(`loop`,``),this.config.muted&&this.media.setAttribute(`muted`,``),this.config.playsinline&&this.media.setAttribute(`playsinline`,``)),Rt.addStyleHook.call(this),this.isHTML5&&ln.insertElements.call(this,`source`,t),this.config.title=e.title,tn.setup.call(this),this.isHTML5&&Object.keys(e).includes(`tracks`)&&ln.insertElements.call(this,`track`,e.tracks),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&Rt.build.call(this),this.isHTML5&&this.media.load(),F.empty(e.previewThumbnails)||(Object.assign(this.config.previewThumbnails,e.previewThumbnails),this.previewThumbnails&&this.previewThumbnails.loaded&&(this.previewThumbnails.destroy(),this.previewThumbnails=null),this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))),this.fullscreen.update()},!0)):this.debug.warn(`Invalid source format`)}},un=class e{constructor(t,n){if(l(this,`play`,()=>F.function(this.media.play)?(this.ads&&this.ads.enabled&&this.ads.managerPromise.then(()=>this.ads.play()).catch(()=>Ze(this.media.play())),this.media.play()):null),l(this,`pause`,()=>!this.playing||!F.function(this.media.pause)?null:this.media.pause()),l(this,`togglePlay`,e=>(F.boolean(e)?e:!this.playing)?this.play():this.pause()),l(this,`stop`,()=>{this.isHTML5?(this.pause(),this.restart()):F.function(this.media.stop)&&this.media.stop()}),l(this,`restart`,()=>{this.currentTime=0}),l(this,`rewind`,e=>{this.currentTime-=F.number(e)?e:this.config.seekTime}),l(this,`forward`,e=>{this.currentTime+=F.number(e)?e:this.config.seekTime}),l(this,`increaseVolume`,e=>{let t=this.media.muted?0:this.volume;this.volume=t+(F.number(e)?e:0)}),l(this,`decreaseVolume`,e=>{this.increaseVolume(-e)}),l(this,`airplay`,()=>{He.airplay&&this.media.webkitShowPlaybackTargetPicker()}),l(this,`toggleControls`,e=>{if(this.supported.ui&&!this.isAudio){let t=Fe(this.elements.container,this.config.classNames.hideControls),n=e===void 0?void 0:!e,r=Pe(this.elements.container,this.config.classNames.hideControls,n);if(r&&F.array(this.config.controls)&&this.config.controls.includes(`settings`)&&!F.empty(this.config.settings)&&z.toggleMenu.call(this,!1),r!==t){let e=r?`controlshidden`:`controlsshown`;Je.call(this,this.media,e)}return!r}return!1}),l(this,`on`,(e,t)=>{Ge.call(this,this.elements.container,e,t)}),l(this,`once`,(e,t)=>{qe.call(this,this.elements.container,e,t)}),l(this,`off`,(e,t)=>{Ke(this.elements.container,e,t)}),l(this,`destroy`,(e,t=!1)=>{if(!this.ready)return;let n=()=>{document.body.style.overflow=``,this.embed=null,t?(Object.keys(this.elements).length&&(I(this.elements.buttons.play),I(this.elements.captions),I(this.elements.controls),I(this.elements.wrapper),this.elements.buttons.play=null,this.elements.captions=null,this.elements.controls=null,this.elements.wrapper=null),F.function(e)&&e()):(Ye.call(this),st.cancelRequests.call(this),je(this.elements.original,this.elements.container),Je.call(this,this.elements.original,`destroyed`,!0),F.function(e)&&e.call(this.elements.original),this.ready=!1,setTimeout(()=>{this.elements=null,this.media=null},200))};this.stop(),clearTimeout(this.timers.loading),clearTimeout(this.timers.controls),clearTimeout(this.timers.resized),this.isHTML5?(Rt.toggleNativeControls.call(this,!0),n()):this.isYouTube?(clearInterval(this.timers.buffering),clearInterval(this.timers.playing),this.embed!==null&&F.function(this.embed.destroy)&&this.embed.destroy(),n()):this.isVimeo&&(this.embed!==null&&this.embed.unload().then(n),setTimeout(n,200))}),l(this,`supports`,e=>He.mime.call(this,e)),this.timers={},this.ready=!1,this.loading=!1,this.failed=!1,this.touch=He.touch,this.media=t,F.string(this.media)&&(this.media=document.querySelectorAll(this.media)),(window.jQuery&&this.media instanceof jQuery||F.nodeList(this.media)||F.array(this.media))&&(this.media=this.media[0]),this.config=we({},kt,e.defaults,n||{},(()=>{try{return JSON.parse(this.media.getAttribute(`data-plyr-config`))}catch{return{}}})()),this.elements={container:null,fullscreen:null,captions:null,buttons:{},display:{},progress:{},inputs:{},settings:{popup:null,menu:null,panels:{},buttons:{}}},this.captions={active:null,currentTrack:-1,meta:/* @__PURE__ */ new WeakMap},this.fullscreen={active:!1},this.options={speed:[],quality:[]},this.debug=new Ft(this.config.debug),this.debug.log(`Config`,this.config),this.debug.log(`Support`,He),F.nullOrUndefined(this.media)||!F.element(this.media)){this.debug.error(`Setup failed: no suitable element passed`);return}if(this.media.plyr){this.debug.warn(`Target already setup`);return}if(!this.config.enabled){this.debug.error(`Setup failed: disabled by config`);return}if(!He.check().api){this.debug.error(`Setup failed: no support`);return}let r=this.media.cloneNode(!0);r.autoplay=!1,this.elements.original=r;let i=this.media.tagName.toLowerCase(),a=null,o=null;switch(i){case`div`:if(a=this.media.querySelector(`iframe`),F.element(a)){if(o=Et(a.getAttribute(`src`)),this.provider=Nt(o.toString()),this.elements.container=this.media,this.media=a,this.elements.container.className=``,o.search.length){let e=[`1`,`true`];e.includes(o.searchParams.get(`autoplay`))&&(this.config.autoplay=!0),e.includes(o.searchParams.get(`loop`))&&(this.config.loop.active=!0),this.isYouTube?(this.config.playsinline=e.includes(o.searchParams.get(`playsinline`)),this.config.youtube.hl=o.searchParams.get(`hl`)):this.config.playsinline=!0}}else this.provider=this.media.getAttribute(this.config.attributes.embed.provider),this.media.removeAttribute(this.config.attributes.embed.provider);if(F.empty(this.provider)||!Object.values(jt).includes(this.provider)){this.debug.error(`Setup failed: Invalid provider`);return}this.type=Mt.video;break;case`video`:case`audio`:this.type=i,this.provider=jt.html5,this.media.hasAttribute(`crossorigin`)&&(this.config.crossorigin=!0),this.media.hasAttribute(`autoplay`)&&(this.config.autoplay=!0),(this.media.hasAttribute(`playsinline`)||this.media.hasAttribute(`webkit-playsinline`))&&(this.config.playsinline=!0),this.media.hasAttribute(`muted`)&&(this.config.muted=!0),this.media.hasAttribute(`loop`)&&(this.config.loop.active=!0);break;default:this.debug.error(`Setup failed: unsupported type`);return}this.supported=He.check(this.type,this.provider),this.supported.api?(this.eventListeners=[],this.listeners=new zt(this),this.storage=new yt(this),this.media.plyr=this,F.element(this.elements.container)||(this.elements.container=De(`div`),Te(this.media,this.elements.container)),Rt.migrateStyles.call(this),Rt.addStyleHook.call(this),tn.setup.call(this),this.config.debug&&Ge.call(this,this.elements.container,this.config.events.join(` `),e=>{this.debug.log(`event: ${e.type}`)}),this.fullscreen=new It(this),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&Rt.build.call(this),this.listeners.container(),this.listeners.global(),this.config.ads.enabled&&(this.ads=new rn(this)),this.isHTML5&&this.config.autoplay&&this.once(`canplay`,()=>Ze(this.play())),this.lastSeekTime=0,this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))):this.debug.error(`Setup failed: no support`)}get isHTML5(){return this.provider===jt.html5}get isEmbed(){return this.isYouTube||this.isVimeo}get isYouTube(){return this.provider===jt.youtube}get isVimeo(){return this.provider===jt.vimeo}get isVideo(){return this.type===Mt.video}get isAudio(){return this.type===Mt.audio}get playing(){return!(!this.ready||this.paused||this.ended)}get paused(){return!!this.media.paused}get stopped(){return!!(this.paused&&this.currentTime===0)}get ended(){return!!this.media.ended}set currentTime(e){if(!this.duration)return;let t=F.number(e)&&e>0;this.media.currentTime=t?Math.min(e,this.duration):0,this.debug.log(`Seeking to ${this.currentTime} seconds`)}get currentTime(){return Number(this.media.currentTime)}get buffered(){let{buffered:e}=this.media;return F.number(e)?e:e&&e.length&&this.duration>0?e.end(0)/this.duration:0}get seeking(){return!!this.media.seeking}get duration(){let e=Number.parseFloat(this.config.duration),t=(this.media||{}).duration,n=!F.number(t)||t===1/0?0:t;return e||n}set volume(e){let t=e;F.string(t)&&(t=Number(t)),F.number(t)||(t=this.storage.get(`volume`)),F.number(t)||({volume:t}=this.config),t>1&&(t=1),t<0&&(t=0),this.config.volume=t,this.media.volume=t,!F.empty(e)&&this.muted&&t>0&&(this.muted=!1)}get volume(){return Number(this.media.volume)}set muted(e){let t=e;F.boolean(t)||(t=this.storage.get(`muted`)),F.boolean(t)||(t=this.config.muted),this.config.muted=t,this.media.muted=t}get muted(){return!!this.media.muted}get hasAudio(){return!this.isHTML5||this.isAudio?!0:!!this.media.mozHasAudio||!!this.media.webkitAudioDecodedByteCount||!!(this.media.audioTracks&&this.media.audioTracks.length)}set speed(e){let t=null;F.number(e)&&(t=e),F.number(t)||(t=this.storage.get(`speed`)),F.number(t)||(t=this.config.speed.selected);let{minimumSpeed:n,maximumSpeed:r}=this;t=an(t,n,r),this.config.speed.selected=t,setTimeout(()=>{this.media&&(this.media.playbackRate=t)},0)}get speed(){return Number(this.media.playbackRate)}get minimumSpeed(){return this.isYouTube?Math.min(...this.options.speed):this.isVimeo?.5:.0625}get maximumSpeed(){return this.isYouTube?Math.max(...this.options.speed):this.isVimeo?2:16}set quality(e){let t=this.config.quality,n=this.options.quality;if(!n.length)return;let r=[!F.empty(e)&&Number(e),this.storage.get(`quality`),t.selected,t.default].find(F.number),i=!0;if(!n.includes(r)){let e=Qe(n,r);this.debug.warn(`Unsupported quality option: ${r}, using ${e} instead`),r=e,i=!1}t.selected=r,this.media.quality=r,i&&this.storage.set({quality:r})}get quality(){return this.media.quality}set loop(e){let t=F.boolean(e)?e:this.config.loop.active;this.config.loop.active=t,this.media.loop=t}get loop(){return!!this.media.loop}set source(e){ln.change.call(this,e)}get source(){return this.media.currentSrc}get download(){let{download:e}=this.config.urls;return F.url(e)?e:this.source}set download(e){F.url(e)&&(this.config.urls.download=e,z.setDownloadUrl.call(this))}set poster(e){this.isVideo?Rt.setPoster.call(this,e,!1).catch(()=>{}):this.debug.warn(`Poster can only be set for video`)}get poster(){return this.isVideo?this.media.getAttribute(`poster`)||this.media.getAttribute(`data-poster`):null}get ratio(){if(!this.isVideo)return null;let e=nt(rt.call(this));return F.array(e)?e.join(`:`):e}set ratio(e){this.isVideo?!F.string(e)||!tt(e)?this.debug.error(`Invalid aspect ratio specified (${e})`):(this.config.ratio=nt(e),it.call(this)):this.debug.warn(`Aspect ratio can only be set for video`)}set autoplay(e){this.config.autoplay=F.boolean(e)?e:this.config.autoplay}get autoplay(){return!!this.config.autoplay}toggleCaptions(e){Ot.toggle.call(this,e,!1)}set currentTrack(e){Ot.set.call(this,e,!1),Ot.setup.call(this)}get currentTrack(){let{toggled:e,currentTrack:t}=this.captions;return e?t:-1}set language(e){Ot.setLanguage.call(this,e,!1)}get language(){return(Ot.getCurrentTrack.call(this)||{}).language}set pip(e){if(!He.pip)return;let t=F.boolean(e)?e:!this.pip;F.function(this.media.webkitSetPresentationMode)&&this.media.webkitSetPresentationMode(t?At.active:At.inactive),F.function(this.media.requestPictureInPicture)&&(!this.pip&&t?this.media.requestPictureInPicture():this.pip&&!t&&document.exitPictureInPicture())}get pip(){return He.pip?F.empty(this.media.webkitPresentationMode)?this.media===document.pictureInPictureElement:this.media.webkitPresentationMode===At.active:null}setPreviewThumbnails(e){this.previewThumbnails&&this.previewThumbnails.loaded&&(this.previewThumbnails.destroy(),this.previewThumbnails=null),Object.assign(this.config.previewThumbnails,e),this.config.previewThumbnails.enabled&&(this.previewThumbnails=new cn(this))}static supported(e,t){return He.check(e,t)}static loadSprite(e,t){return xt(e,t)}static setup(t,n={}){let r=null;return F.string(t)?r=Array.from(document.querySelectorAll(t)):F.nodeList(t)?r=Array.from(t):F.array(t)&&(r=t.filter(F.element)),F.empty(r)?null:r.map(t=>new e(t,n))}};un.defaults=Se(kt);var dn=new URL(`plyr-icons.svg`,import.meta.url).href,fn=class extends Error{constructor(e=`PLAYBACK_TOKEN_FAILED`){super(e===`PLAYBACK_TOKEN_TIMEOUT`?`Playback token acquisition timed out`:`Playback token acquisition failed`),this.name=`PlaybackTokenError`,this.code=e}};function pn({embedUuid:e,tokenEndpoint:t,getPlaybackToken:n,tokenHeaders:r}={},{fetchImpl:i=globalThis.fetch,origin:a=globalThis.location?.origin,timeoutMs:o=15e3}={}){let s=t!==void 0,c=n!==void 0,l=()=>new fn;if(s&&c||c&&typeof n!=`function`)throw l();let u,d;if(s)try{if(typeof t!=`string`||!t.trim()||(u=new URL(t,a),![`https:`,`http:`].includes(u.protocol)||u.origin!==new URL(a).origin||u.username||u.password||t.includes(`#`))||(d=new Headers(r),d.has(`Authorization`)))throw l();d.set(`Content-Type`,`application/json`)}catch{throw l()}else if(r!==void 0)try{if(new Headers(r).has(`Authorization`))throw l()}catch{throw l()}let f=!1,p=/* @__PURE__ */ new Set;return{getPlaybackToken:s||c?()=>f?Promise.reject(l()):new Promise((t,r)=>{let a=new AbortController,s=!1,f,m=(e,n)=>{s||(s=!0,clearTimeout(f),p.delete(h),e?r(e):t(n))},h=(e=l())=>{m(e),a.abort()};p.add(h),f=setTimeout(()=>h(new fn(`PLAYBACK_TOKEN_TIMEOUT`)),o),(async()=>{if(c)return n();let t=await i(u.href,{method:`POST`,credentials:`same-origin`,redirect:`error`,cache:`no-store`,headers:d,body:JSON.stringify({embedUuid:e}),signal:a.signal});if(!t.ok||!/^application\/(?:[\w.-]+\+)?json(?:\s*;|$)/i.test(t.headers.get(`Content-Type`)||``))throw l();return(await t.json())?.token})().then(e=>{typeof e!=`string`||!e.trim()?m(l()):m(void 0,e)},()=>m(l()))}):void 0,dispose(){f=!0;for(let e of p)e()}}}function mn(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`),n=t+`=`.repeat((4-t.length%4)%4);if(typeof Buffer<`u`)return Buffer.from(n,`base64`).toString(`utf8`);let r=Uint8Array.from(atob(n),e=>e.charCodeAt(0));return new TextDecoder().decode(r)}function hn(e){let t=e.split(`.`)[1];if(!t)throw Error(`Invalid JWT: missing payload`);return JSON.parse(mn(t))}function gn(e,{skewMs:t=12e4,now:n=Date.now()}={}){let{exp:r}=hn(e);if(typeof r!=`number`)throw Error(`Invalid JWT: missing exp`);let i=r*1e3-t;return Math.max(0,i-n)}function _n(e,t,n){e.headers.Authorization=`Bearer ${t}`;let r=new URL(n).origin;e.uris=e.uris.map(e=>{let n=new URL(e);return n.origin===r?(n.searchParams.set(`access_token`,t),n.toString()):e})}function vn(e){let t=Number(e.duration);return Number.isFinite(t)&&t>=0?t:null}function yn(e){let t=Number(e.currentTime);return Number.isFinite(t)&&t>=0?t:0}function bn(e,{beforeSeek:t=()=>{}}={}){return{mediaElement:e,play:async()=>{await e.play()},pause:()=>{e.pause()},seek:n=>{if(!Number.isFinite(n)||n<0)throw TypeError(`Seek time must be a nonnegative finite number`);let r=vn(e),i=r==null?n:Math.min(n,r),a=Number(e.currentTime);t(Number.isFinite(a)&&a>=0?a:void 0),e.currentTime=i},setMuted:t=>{if(typeof t!=`boolean`)throw TypeError(`Muted must be a boolean`);e.muted=t},getState:()=>({currentTime:yn(e),duration:vn(e),paused:!!e.paused,ended:!!e.ended,muted:!!e.muted})}}function xn(e){let t=Number(e);if(!(!Number.isFinite(t)||t<0))return Math.round(t*1e3)}function Sn(e){let t=Number(e);return Number.isFinite(t)&&t>0?t:void 0}function Cn(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>t!==void 0))}function wn({video:e,stats:t,now:n=()=>globalThis.performance?.now?.()??Date.now(),setIntervalFn:r=globalThis.setInterval.bind(globalThis),clearIntervalFn:i=globalThis.clearInterval.bind(globalThis),page:a=globalThis,heartbeatIntervalMs:o=1e4}){let s=[],c,l=!1,u=!1,d,f,p,m=0,h=0,g=!1,_,v=xn(e.currentTime),y,b,x=(e,t,n)=>{e.addEventListener?.(t,n),s.push([e,t,n])},S=()=>Cn({playheadMs:xn(e.currentTime),durationMs:xn(e.duration)}),C=()=>{if(f===void 0)return;let e=n();m+=Math.max(0,e-f),f=e},w=()=>{let e=m;return m=0,e},T=()=>{p!==void 0&&(h+=Math.max(0,n()-p),p=void 0)},E=()=>{let e=h;return h=0,e},D=()=>xn(e.currentTime)??v,O=t=>{let n=Sn(e.playbackRate),r={watchMs:w(),bufferMs:E(),durationMs:xn(e.duration)};return _!==void 0&&t!==void 0&&n!==void 0&&Object.assign(r,{fromPlayheadMs:_,toPlayheadMs:t,playheadMs:t,playbackRate:n}),Cn(r)},k=()=>{c!==void 0&&(i(c),c=void 0)},A=(e,t=D(),{reopen:n=!0}={})=>{C(),e(O(t)),g=n,_=n?t:void 0},j=()=>{c===void 0&&(c=r(()=>A(t.trackHeartbeat),o))},M=()=>{l||(d=n())},ee=()=>{T();let r=xn(e.currentTime);r!==void 0&&(v=r),_??(_=r),g=!0,f=n(),l||(l=!0,t.trackStart(Cn({watchMs:0,bufferMs:0,startupMs:d===void 0?void 0:Math.max(0,n()-d),playheadMs:r,durationMs:xn(e.duration)}))),j()},te=()=>{if(e.seeking)return;let t=xn(e.currentTime);t!==void 0&&(v=t)},ne=()=>{k(),!e.ended&&(T(),l&&g&&A(t.trackPause,D(),{reopen:!1}),f=void 0)},re=()=>{k(),T(),l&&g&&A(t.trackEnd,D(),{reopen:!1}),f=void 0},ie=()=>{u||(u=!0,k(),T(),l&&g?A(t.trackLeave,D(),{reopen:!1}):l&&(C(),t.trackLeave(O(D()))),f=void 0)};return x(e,`play`,M),x(e,`playing`,ee),x(e,`timeupdate`,te),x(e,`pause`,ne),x(e,`waiting`,()=>{(d!==void 0||l)&&(k(),C(),f=void 0,p===void 0&&(p=n()))}),x(e,`seeking`,()=>{let e=y??v;y=void 0,k(),C(),f=void 0,l&&g&&A(t.trackHeartbeat,e,{reopen:!1}),b=e}),x(e,`seeked`,()=>{let r=xn(e.currentTime),i={watchMs:w(),bufferMs:E(),durationMs:xn(e.duration)};b!==void 0&&r!==void 0&&Object.assign(i,{fromPlayheadMs:b,toPlayheadMs:r,playheadMs:r}),l&&t.trackSeek(Cn(i)),b=void 0,r!==void 0&&(v=r),l&&!e.paused&&!e.ended&&p===void 0&&(_=r,g=!0,f=n(),j())}),x(e,`ended`,re),x(a,`pagehide`,ie),Object.freeze({beforeProgrammaticSeek:e=>{y=xn(e)},snapshot:S,dispose:()=>{ie();for(let[e,t,n]of s.splice(0))e.removeEventListener?.(t,n)}})}var Tn={en:{restart:`Restart`,rewind:`Rewind {seektime}s`,play:`Play`,pause:`Pause`,fastForward:`Forward {seektime}s`,seek:`Seek`,seekLabel:`{currentTime} of {duration}`,played:`Played`,buffered:`Buffered`,currentTime:`Current time`,duration:`Duration`,volume:`Volume`,mute:`Mute`,unmute:`Unmute`,enableCaptions:`Enable captions`,disableCaptions:`Disable captions`,download:`Download`,enterFullscreen:`Enter fullscreen`,exitFullscreen:`Exit fullscreen`,frameTitle:`Player for {title}`,captions:`Captions`,settings:`Settings`,pip:`PIP`,menuBack:`Go back to previous menu`,speed:`Speed`,normal:`Normal`,quality:`Quality`,loop:`Loop`,start:`Start`,end:`End`,all:`All`,reset:`Reset`,disabled:`Disabled`,enabled:`Enabled`,advertisement:`Ad`,qualityLabel:{0:`Auto`}},cs:{restart:`Spustit znovu`,rewind:`Přetočit o {seektime} s zpět`,play:`Přehrát`,pause:`Pozastavit`,fastForward:`Přetočit o {seektime} s vpřed`,seek:`Posun`,seekLabel:`{currentTime} z {duration}`,played:`Přehráno`,buffered:`Načteno`,currentTime:`Aktuální čas`,duration:`Délka`,volume:`Hlasitost`,mute:`Ztlumit`,unmute:`Zapnout zvuk`,enableCaptions:`Zapnout titulky`,disableCaptions:`Vypnout titulky`,download:`Stáhnout`,enterFullscreen:`Přejít na celou obrazovku`,exitFullscreen:`Ukončit režim celé obrazovky`,frameTitle:`Přehrávač pro {title}`,captions:`Titulky`,settings:`Nastavení`,pip:`Obraz v obraze`,menuBack:`Zpět do předchozí nabídky`,speed:`Rychlost`,normal:`Normální`,quality:`Kvalita`,loop:`Opakování`,start:`Začátek`,end:`Konec`,all:`Vše`,reset:`Obnovit`,disabled:`Vypnuto`,enabled:`Zapnuto`,advertisement:`Reklama`,qualityLabel:{0:`Automaticky`}}};function En(e){if(typeof e!=`string`)return`en`;let t=e.trim().toLowerCase().split(`-`)[0];return Object.hasOwn(Tn,t)?t:`en`}function B(e){let t=Tn[En(e)];return{...t,qualityLabel:{...t.qualityLabel}}}function Dn(e){return!!(e?.fullscreenEnabled||e?.webkitFullscreenEnabled)}function On(e){return typeof e.webkitEnterFullscreen==`function`&&e.webkitSupportsFullscreen!==!1}function kn(e,t){return{enabled:t,fallback:!0,iosNative:!Dn(e.ownerDocument)&&On(e)}}function An(e,t){let n=e?.fullscreen,r=e?.config?.fullscreen,i=t.ownerDocument;if(!n||!r||!i)return()=>{};let a=!1,o=!1,s=!1,c=!1,l=!1,u=0,d=e.elements.container,f=e=>[d.getRootNode(),i].some(t=>t.fullscreenElement===e||t.webkitFullscreenElement===e);Object.defineProperty(n,"active",{configurable:!0,get:()=>!a&&r.enabled&&!!(o||t.webkitDisplayingFullscreen||l||f(d))});let p=n.onChange,m=!1;n.onChange=()=>{let e=n.active;a||e===m||(m=e,p.call(n))};let h=()=>n.onChange();i.addEventListener(`fullscreenchange`,h),i.addEventListener(`webkitfullscreenchange`,h);let g=t=>{!a&&r.enabled&&(o=t,n.onChange(),t||e.toggleControls?.(!0))},_=()=>g(!0),v=()=>{++u,s=!1,g(!1)};t.addEventListener(`webkitbeginfullscreen`,_),t.addEventListener(`webkitendfullscreen`,v);let y=e=>{!a&&e===u&&r.enabled&&(o=!1,s=!1,r.iosNative=!1,n.forceFallback=!0,l=!0,n.toggleFallback(!0))},b=e=>{try{let t=e();t?.then&&Promise.resolve(t).catch(()=>{})}catch{}},x=e=>{let t=d.getRootNode();t.fullscreenElement===e||i.fullscreenElement===e?b(()=>i.exitFullscreen?.()):(t.webkitFullscreenElement===e||i.webkitFullscreenElement===e)&&b(()=>i.webkitExitFullscreen?.())},S=(e,t)=>{let n=++u;try{let r=e();r?.then&&(c=!0,Promise.resolve(r).then(()=>{c=!1,(a||n!==u)&&x(t)},()=>{c=!1,y(n)}))}catch{y(n)}};return n.enter=()=>{if(a||!r.enabled||c||n.active)return;n.forceFallback=!1,r.iosNative=!1;let e=n.target;i.fullscreenEnabled&&typeof e.requestFullscreen==`function`?S(()=>e.requestFullscreen({navigationUI:`hide`}),e):i.webkitFullscreenEnabled&&typeof e.webkitRequestFullscreen==`function`?S(()=>e.webkitRequestFullscreen(),e):On(t)?(r.iosNative=!0,s=!0,S(()=>t.webkitEnterFullscreen(),t)):y(++u)},n.exit=()=>{a||(++u,s||o||t.webkitDisplayingFullscreen?(b(()=>t.webkitExitFullscreen?.()),s=!1,t.webkitDisplayingFullscreen||g(!1)):l?(l=!1,n.toggleFallback(!1),n.forceFallback=!1,e.toggleControls?.(!0)):x(d))},()=>{a||(n.exit(),a=!0,++u,i.removeEventListener(`fullscreenchange`,h),i.removeEventListener(`webkitfullscreenchange`,h),t.removeEventListener(`webkitbeginfullscreen`,_),t.removeEventListener(`webkitendfullscreen`,v))}}var jn=[`play-large`,`play`,`progress`,`current-time`,`mute`,`volume`,`captions`,`settings`,`pip`,`airplay`,`fullscreen`],Mn=[`quality`,`speed`],Nn=new Set(jn),Pn=new Set(Mn),Fn=/* @__PURE__ */ new Set([`top-left`,`top-right`,`bottom-left`,`bottom-right`]),In=/* @__PURE__ */ new Set([`dark`,`light`,`accent`]),Ln={captions:{active:!0,update:!0,language:`auto`},keyboard:{focused:!0,global:!1},controls:jn};function Rn(e=!0,t){if(!e)return[];if(!Array.isArray(t))return[...jn];let n=new Set(t.filter(e=>Nn.has(e)));return jn.filter(e=>n.has(e))}function zn(e){if(!Array.isArray(e))return[`quality`];let t=new Set(e.filter(e=>Pn.has(e)));return Mn.filter(e=>t.has(e))}function Bn(e){if(typeof e!=`string`)return null;let t=e.trim().toLowerCase();return/^#[0-9a-f]{6}$/.test(t)?t:null}function Vn(e){let[t,n,r]=[1,3,5].map(t=>Number.parseInt(e.slice(t,t+2),16)/255).map(e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4),i=.2126*t+.7152*n+.0722*r,a=1.05/(i+.05);return(i+.05)/.05>a?`#000`:`#fff`}function Hn(e){if(!e||typeof e.text!=`string`)return null;let t=Array.from(e.text.trim()).slice(0,64).join(``);return t?{text:t,position:Fn.has(e.position)?e.position:`top-right`,style:In.has(e.style)?e.style:`dark`}:null}function Un(e,{accentColor:t,badge:n,hasControls:r=!0}={}){let i=e?.elements?.container;if(!i)return()=>{};let a=Bn(t),o=Hn(n),s=null;return a&&(i.style.setProperty(`--plyr-color-main`,a),i.style.setProperty(`--vyonio-badge-accent-foreground`,Vn(a))),i.classList.toggle(`vyonio-player--has-controls`,r),o&&(s=(i.ownerDocument??globalThis.document)?.createElement?.(`div`)??null,s&&(s.className=[`vyonio-player__badge`,`vyonio-player__badge--${o.position}`,`vyonio-player__badge--${o.style}`].join(` `),s.setAttribute(`role`,`note`),s.textContent=o.text,i.appendChild(s))),()=>{s?.remove(),i.classList.remove(`vyonio-player--has-controls`),a&&(i.style.removeProperty(`--plyr-color-main`),i.style.removeProperty(`--vyonio-badge-accent-foreground`))}}function Wn(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r;){let e=n%r;n=r,r=e}return n||1}function Gn(e){let t=Number(e?.videoWidth),n=Number(e?.videoHeight);if(!Number.isFinite(t)||!Number.isFinite(n)||t<=0||n<=0)return`16:9`;let r=Wn(t,n);return`${t/r}:${n/r}`}async function Kn(e,t,n=async()=>{},r=null){let i,a=async e=>{try{await e()}catch(e){i||(i=e)}};if(await a(n),await a(t),await a(()=>{r?r.parentNode&&r.remove():e.querySelectorAll(`video`).forEach(e=>e.remove())}),i)throw i}function qn(e,{PlyrCtor:t,quality:n,controls:r=!0,controlItems:i,settingsItems:a,language:o,accentColor:s,badge:c,iconUrl:l}={}){let u=!!e.muted,d=Rn(r,i),f=zn(a),p=d.length>0;if(!t)return e.controls=p,{player:null,destroy:()=>{}};try{e.controls=!1;let r={...Ln,fullscreen:kn(e,d.includes(`fullscreen`)),controls:d,settings:f,i18n:B(o),ratio:Gn(e),blankVideo:``};l&&(r.iconUrl=l,r.loadSprite=!1),n?.options?.length>=3&&(r.quality={default:n.default,options:n.options,forced:!0,onChange:null},r.i18n={...r.i18n,qualityLabel:{...r.i18n.qualityLabel,...n.labels}});let i=new t(e,r);i.muted=u;let a=An(i,e),m=()=>{e.videoWidth>0&&e.videoHeight>0&&(i.ratio=Gn(e))};e.addEventListener?.(`loadedmetadata`,m),e.addEventListener?.(`resize`,m);let h=Un(i,{accentColor:s,badge:c,hasControls:p});return{player:i,destroy:()=>{a(),e.removeEventListener?.(`loadedmetadata`,m),e.removeEventListener?.(`resize`,m),h(),i.destroy()}}}catch{return e.controls=p,{player:null,destroy:()=>{}}}}var Jn=0;function Yn(e=[],t=`Auto`){let n=/* @__PURE__ */ new Map;for(let t of e){let e=Number(t?.height);if(!Number.isFinite(e)||e<=0)continue;let r=n.get(e);(!r||Number(t.bandwidth||0)>Number(r.bandwidth||0))&&n.set(e,t)}let r=[...n.entries()].sort(([e],[t])=>t-e).map(([e,t])=>({label:`${e}p`,value:e,track:t}));return[{label:t,value:`auto`},...r]}function Xn(e){let t={};return{default:Jn,options:e.map(({label:e,value:n})=>{let r=n===`auto`?Jn:n;return t[r]=e,r}),labels:t}}function Zn(e){e?.config?.quality&&(e.config.quality.forced=!1,e.config.quality.options=[],e.config.quality.onChange=null),e?.options&&(e.options.quality=[]);let t=e?.elements?.settings?.buttons?.quality,n=e?.elements?.settings?.panels?.quality,r=n?.querySelector?.(`[role="menu"]`);r&&r.replaceChildren(),t&&(t.hidden=!0),n&&(n.hidden=!0);let i=e?.elements?.settings?.menu,a=e?.elements?.settings?.buttons;i&&a&&(i.hidden=!Object.values(a).some(e=>e&&!e.hidden))}function Qn(e,{default:t,options:n,labels:r}){if(!e||!Array.isArray(n)||n.length<2)return!1;e.config.quality={...e.config.quality||{},default:t,options:[...n],forced:!0,onChange:e.config.quality?.onChange??null},e.config.i18n={...e.config.i18n||{},qualityLabel:r},e.options.quality=[...n];let i=e.elements?.settings?.buttons?.quality,a=e.elements?.settings?.panels?.quality,o=e.elements?.settings?.panels?.home,s=a?.querySelector?.(`[role="menu"]`);if(!i||!a||!s)return!1;i.hidden=!1,o&&(o.hidden=!1),a.hidden=!0,e.elements?.settings?.menu&&(e.elements.settings.menu.hidden=!1),s.replaceChildren();for(let i of n){let n=r?.[i]??(i===Jn?`Auto`:`${i}p`),a=document.createElement(`button`);a.type=`button`,a.setAttribute(`role`,`menuitemradio`),a.setAttribute(`data-plyr`,`quality`),a.setAttribute(`aria-checked`,i===t?`true`:`false`),a.value=String(i),a.className=e.config.classNames?.control||`plyr__control`;let o=document.createElement(`span`);o.textContent=n,a.appendChild(o),a.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),s.querySelectorAll(`[role="menuitemradio"]`).forEach(e=>{e.setAttribute(`aria-checked`,`false`)}),a.setAttribute(`aria-checked`,`true`),e.quality=i}),s.appendChild(a)}let c=e.config.classNames?.menu?.value||`plyr__menu__value`,l=i.querySelector(`.${c}`),u=r?.[t]??(t===Jn?`Auto`:`${t}p`);return l&&(l.textContent=u),e.config.quality.selected=t,!0}function $n(e,t){let n=()=>e.configure({abr:{enabled:!0}});try{n();let r=t?.config?.i18n?.qualityLabel?.[Jn]??`Auto`,i=Yn(e.getVariantTracks(),r);if(!t||i.length<3)return Zn(t),()=>{};let a=Xn(i),o=new Map(i.filter(({value:e})=>e!==`auto`).map(({value:e,track:t})=>[Number(e),t])),s=r=>{try{let t=Number(r);if(r===`auto`||t===Jn){n();return}let i=o.get(t);if(!i)throw Error(`Unknown quality option: ${r}`);e.configure({abr:{enabled:!1}}),e.selectVariantTrack(i,!0)}catch{n(),Zn(t)}};t.config.quality={...t.config.quality||{},onChange:s},Qn(t,a),t.config.quality.onChange=s;try{t.quality=a.default}catch{}return()=>{t?.config?.quality&&(t.config.quality.onChange=null)}}catch{try{n()}catch{}return Zn(t),()=>{}}}var er=`vyonio-player__popularity-histogram`,tr=`http://www.w3.org/2000/svg`;function nr(e){return!Array.isArray(e)||e.length===0?[]:e.map(e=>{let t=Number(e);return!Number.isFinite(t)||t<0?0:t})}function rr(e,t,n){let r=Math.max(...e,0);if(r<=0||t<=0||n<=0)return null;let i=t/e.length,a=e.map((e,t)=>({x:(t+.5)*i,y:n-e/r*n*.92}));return[{x:0,y:a[0].y},...a,{x:t,y:a[a.length-1].y}]}function ir(e){if(!e||e.length===0)return``;if(e.length===1){let t=e[0];return`M${t.x.toFixed(2)},${t.y.toFixed(2)}`}if(e.length===2){let[t,n]=e;return`M${t.x.toFixed(2)},${t.y.toFixed(2)} L${n.x.toFixed(2)},${n.y.toFixed(2)}`}let t=e=>`${e.x.toFixed(2)},${e.y.toFixed(2)}`,n=`M${t(e[0])}`;for(let r=0;r<e.length-1;r+=1){let i=e[r===0?r:r-1],a=e[r],o=e[r+1],s=e[r+2]??o,c=a.x+(o.x-i.x)/6,l=a.y+(o.y-i.y)/6,u=o.x-(s.x-a.x)/6,d=o.y-(s.y-a.y)/6;n+=` C${c.toFixed(2)},${l.toFixed(2)} ${u.toFixed(2)},${d.toFixed(2)} ${t(o)}`}return n}function ar(e,t,n){let r=rr(e,t,n);if(!r)return``;let i=ir(r);return i?`${i} L${t},${n} L0,${n} Z`:``}function or(e,t,n){return ir(rr(e,t,n))}function sr(e){let t=e.querySelector?.(`.${er}`);return t||(t=document.createElement(`div`),t.className=er,t.setAttribute(`aria-hidden`,`true`),t.style.pointerEvents=`none`,e.appendChild(t),t)}function cr(e,t){let n=ar(t,100,100),r=or(t,100,100);if(!n||!r){e.replaceChildren?.(),`innerHTML`in e&&(e.innerHTML=``);return}let i=document.createElementNS(tr,`svg`);i.setAttribute(`viewBox`,`0 0 100 100`),i.setAttribute(`preserveAspectRatio`,`none`),i.setAttribute(`aria-hidden`,`true`),i.setAttribute(`class`,`${er}-svg`);let a=`${er}-grad-${Math.random().toString(36).slice(2,10)}`,o=document.createElementNS(tr,`defs`),s=document.createElementNS(tr,`linearGradient`);s.setAttribute(`id`,a),s.setAttribute(`x1`,`0`),s.setAttribute(`y1`,`0`),s.setAttribute(`x2`,`0`),s.setAttribute(`y2`,`1`);let c=document.createElementNS(tr,`stop`);c.setAttribute(`offset`,`0%`),c.setAttribute(`stop-color`,`#ffffff`),c.setAttribute(`stop-opacity`,`0.45`);let l=document.createElementNS(tr,`stop`);l.setAttribute(`offset`,`100%`),l.setAttribute(`stop-color`,`#ffffff`),l.setAttribute(`stop-opacity`,`0`),s.appendChild(c),s.appendChild(l),o.appendChild(s),i.appendChild(o);let u=document.createElementNS(tr,`path`);u.setAttribute(`d`,n),u.setAttribute(`class`,`${er}-area`),u.setAttribute(`fill`,`url(#${a})`),i.appendChild(u);let d=document.createElementNS(tr,`path`);d.setAttribute(`d`,r),d.setAttribute(`class`,`${er}-line`),d.setAttribute(`fill`,`none`),i.appendChild(d),typeof e.replaceChildren==`function`?e.replaceChildren(i):(`innerHTML`in e&&(e.innerHTML=``),e.appendChild(i))}function lr(e,t={}){let n=nr(t.buckets),r=!1,i=null,a=null,o=()=>{!r&&e?.elements?.progress&&(n.length===0||n.every(e=>e<=0)?(i?.remove?.(),i=null):(i=sr(e.elements.progress),cr(i,n)))},s=()=>{!r&&e&&(e.ready?o():typeof e.on==`function`?a||(a=()=>{typeof e.off==`function`&&e.off(`ready`,a),a=null,o()},e.on(`ready`,a)):o())};return s(),{update(e){r||(n=nr(e),s())},dispose(){r||(r=!0,a&&typeof e?.off==`function`&&e.off(`ready`,a),a=null,i?.remove?.(),i=null)}}}function ur(){try{let e=globalThis.crypto?.randomUUID?.();if(e)return e}catch{}return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,e=>{let t=Math.floor(Math.random()*16);return(e===`x`?t:t&3|8).toString(16)})}function dr(){return{setPlaybackProtocol(){},trackStart(){},trackHeartbeat(){},trackPause(){},trackSeek(){},trackEnd(){},trackLeave(){},trackError(){},async dispose(){}}}function fr(e){let t=Number(e);return Number.isFinite(t)?Math.max(0,Math.round(t)):0}function pr(e){if(e==null)return;let t=Number(e);return Number.isFinite(t)&&t>=0?Math.round(t):void 0}function mr(e){if(e==null)return;let t=Number(e);return Number.isFinite(t)&&t>0?t:void 0}function hr({telemetry:e,fetchImpl:t=globalThis.fetch?.bind(globalThis),flushIntervalMs:n=1e4,sessionId:r=ur(),uuid:i=ur,now:a=()=>Date.now(),platform:o=`web`,playbackProtocol:s=`unknown`,maxQueueSize:c=50}={}){if(!e?.url||!e?.context)return dr();let l=String(e.url),u=String(e.context),d=String(r??ur()),f=[],p=/* @__PURE__ */ new Set,m=s,h=0,g=!1,_=e=>{g||(f.unshift(...e),f.length>c&&f.splice(0,f.length-c))},v=async(e,{beacon:n=!1}={})=>{try{let r=JSON.stringify({context:u,events:e});if(n&&globalThis.navigator?.sendBeacon&&globalThis.navigator.sendBeacon(l,r)||!t)return;let i=await t(l,{method:`POST`,headers:{"Content-Type":`application/json`},body:r,keepalive:n}),a=Number(i?.status??0);i?.ok===!1&&(a===0||a>=500)&&_(e)}catch{_(e)}},y=({beacon:e=!1}={})=>{if(f.length===0)return Promise.resolve();let t=f.splice(0,f.length),n=v(t,{beacon:e});return p.add(n),n.finally(()=>p.delete(n)),n},b=(e,t={})=>{if(!g)try{let n={event_id:String(i()),event_at:new Date(a()).toISOString(),event_type:e,session_id:d,sequence:h++,watch_ms:fr(t.watchMs),startup_ms:t.startupMs==null?null:fr(t.startupMs),buffer_ms:t.bufferMs==null?null:fr(t.bufferMs),platform:o,playback_protocol:m,error_code:t.errorCode==null?null:String(t.errorCode).slice(0,128),error_fatal:t.errorFatal==null?null:!!t.errorFatal},r={playhead_ms:pr(t.playheadMs),from_playhead_ms:pr(t.fromPlayheadMs),to_playhead_ms:pr(t.toPlayheadMs),duration_ms:pr(t.durationMs),playback_rate:mr(t.playbackRate)};for(let[e,t]of Object.entries(r))t!==void 0&&(n[e]=t);f.push(n),f.length>c&&f.shift()}catch{}},x=setInterval(()=>{y()},n);return{setPlaybackProtocol(e){m=[`dash`,`hls`].includes(e)?e:`unknown`},trackStart(e){b(`start`,e)},trackHeartbeat(e){b(`heartbeat`,e)},trackPause(e){b(`pause`,e)},trackSeek(e){b(`seek`,e)},trackEnd(e){b(`end`,e)},trackLeave(e){b(`leave`,e),y({beacon:!0})},trackError(e,t=!0,n={}){b(`error`,{...n,errorCode:e,errorFatal:t}),y()},async dispose(){g||(clearInterval(x),await y(),g=!0,await Promise.allSettled([...p]))}}}function gr(e){let t=Math.max(0,Math.round(Number(e)*1e3)),n=Math.floor(t/36e5),r=Math.floor(t%36e5/6e4),i=Math.floor(t%6e4/1e3),a=t%1e3;return[String(n).padStart(2,`0`),String(r).padStart(2,`0`),`${String(i).padStart(2,`0`)}.${String(a).padStart(3,`0`)}`].join(`:`)}function _r(e=[],t){let n=e.map(e=>({title:String(e?.title||``).replaceAll(`-->`,`→`).trim(),start:Number(e?.start_seconds)})).filter(({title:e,start:t})=>e&&Number.isFinite(t)&&t>=0).sort((e,t)=>e.start-t.start),r=[`WEBVTT`,``];return n.forEach((e,i)=>{let a=n[i+1]?.start??Number(t),o=Number.isFinite(a)&&a>e.start?a:e.start+.001;r.push(`${gr(e.start)} --> ${gr(o)}`,e.title,``)}),r.join(`
38
38
  `)}function vr(e,t){if(!t)return e;let n=new URL(e);return n.searchParams.set(`access_token`,t),n.toString()}function yr(e=[],t){let n=Number(t);if(!Number.isFinite(n)||n<=0)return[];let r=e.map(e=>({title:String(e?.title||``).trim(),start:Number(e?.start_seconds)})).filter(({title:e,start:t})=>e&&Number.isFinite(t)&&t>=0&&t<n).sort((e,t)=>e.start-t.start);return r.map((e,t)=>{let i=r[t+1]?.start??n;return{title:e.title,start:e.start,end:i,startPercent:e.start/n*100,endPercent:i/n*100}})}function br(e=[],{gapPx:t=3}={}){if(!Array.isArray(e)||e.length===0)return``;let n=Math.max(0,Number(t)||0)/2,r=e.map(e=>Number(e.startPercent)).filter(e=>Number.isFinite(e)&&e>0&&e<100);if(r.length===0||n<=0)return`linear-gradient(to right, #000 0%, #000 100%)`;let i=[`#000 0%`];return r.forEach(e=>{i.push(`#000 calc(${e}% - ${n}px)`),i.push(`transparent calc(${e}% - ${n}px)`),i.push(`transparent calc(${e}% + ${n}px)`),i.push(`#000 calc(${e}% + ${n}px)`)}),i.push(`#000 100%`),`linear-gradient(to right, ${i.join(`, `)})`}function xr(e,t){let n=e.ownerDocument.createElement(`track`);return Object.entries(t).forEach(([e,t])=>{t!=null&&t!==!1&&n.setAttribute(e,t===!0?``:t)}),e.appendChild(n),n}var Sr=`plyr__progress--chapters`,Cr=`vyonio-player__seek-thumb-rail`,wr=`vyonio-player__seek-thumb`,Tr=`--vyonio-chapter-mask`;function Er(e,t,n){let r=e.ownerDocument,i=null,a=null,o=null,s=()=>t?.elements?.container?.querySelector?.(`.plyr__progress`)||t?.elements?.progress||e.closest?.(`.plyr`)?.querySelector?.(`.plyr__progress`),c=e=>e?.querySelector?.(`input[type="range"]`)||e?.querySelector?.(`input[type=range]`),l=e=>{e&&(e.classList?.remove?.(Sr),typeof e.className==`string`&&(e.className=e.className.split(/\s+/).filter(e=>e&&e!==Sr).join(` `)),e.style?.removeProperty?.(Tr),i?.remove?.(),i=null,a=null,o&&(o.removeEventListener?.(`input`,u),o.removeEventListener?.(`change`,u),o=null))},u=()=>{if(!a||!o)return;let e=o.style?.getPropertyValue?.(`--value`)?.trim();if(e){a.style.left=e;return}let t=Number(o.min||0),n=Number(o.max||100),r=Number(o.value);!Number.isFinite(r)||!Number.isFinite(n)||n===t?a.style.left=`0%`:a.style.left=`${(r-t)/(n-t)*100}%`},d=e=>{if(!r?.createElement)return;(!i||i.parentNode!==e)&&(i?.remove?.(),i=r.createElement(`div`),i.className=Cr,i.setAttribute(`aria-hidden`,`true`),a=r.createElement(`div`),a.className=wr,i.appendChild(a),e.appendChild(i));let t=c(e);t!==o&&(o?.removeEventListener?.(`input`,u),o?.removeEventListener?.(`change`,u),o=t||null,o?.addEventListener?.(`input`,u),o?.addEventListener?.(`change`,u)),u()},f=()=>{let e=s();e&&(e.classList?.contains?.(Sr)||String(e.className||``).split(/\s+/).includes(Sr))&&d(e)},p=()=>{let t=s();if(!t)return;let r=yr(n,e.duration);if(r.length===0){l(t);return}let i=br(r);if(t.classList?.add)t.classList.add(Sr);else{let e=String(t.className||``).split(/\s+/).filter(Boolean);e.includes(Sr)||(t.className=[...e,Sr].join(` `))}t.style?.setProperty?.(Tr,i),d(t)};return e.addEventListener?.(`loadedmetadata`,p),e.addEventListener?.(`timeupdate`,f),t?.on?.(`ready`,p),t?.on?.(`timeupdate`,f),e.readyState>=1&&p(),()=>{e.removeEventListener?.(`loadedmetadata`,p),e.removeEventListener?.(`timeupdate`,f),t?.off?.(`ready`,p),t?.off?.(`timeupdate`,f),l(s())}}async function Dr(e,t,n,{token:r,URLImpl:i=globalThis.URL,fetchImpl:a=globalThis.fetch}={}){let o=[],s=[],c=Er(e,t,n?.chapters||[]),l=!1,u=()=>{l||(l=!0,c(),o.forEach(e=>e.remove()),s.forEach(e=>i.revokeObjectURL(e)))};try{for(let t of n?.captions||[])if(t?.vtt_url)try{let n=await a(vr(t.vtt_url,r),{headers:r?{Authorization:`Bearer ${r}`}:{}});if(!n.ok)continue;let c=i.createObjectURL(await n.blob());s.push(c),o.push(xr(e,{kind:t.kind||`subtitles`,label:t.label||t.language,srclang:t.language,src:c,default:t.default===!0}))}catch{}if(n?.chapters?.length&&i?.createObjectURL){let t=_r(n.chapters,e.duration),r=i.createObjectURL(new Blob([t],{type:`text/vtt`}));s.push(r),o.push(xr(e,{kind:`chapters`,label:`Chapters`,src:r,default:!0}))}}catch(e){throw u(),e}return u}function Or(e){return/^((?!chrome|android).)*safari/i.test(e)}function kr(e,t){return Or(t)&&e.hls_manifest_url?{manifestUrl:e.hls_manifest_url,playbackProtocol:`hls`,useFairPlay:!!e.drm?.fairplay,useWidevine:!1}:{manifestUrl:e.dash_manifest_url,playbackProtocol:`dash`,useFairPlay:!1,useWidevine:e.drm?.widevine!==!1}}function Ar(e,{useFairPlay:t,useWidevine:n}){let r={};return t&&e.fairplay_license_url&&(r[`com.apple.fps`]=e.fairplay_license_url),n&&e.widevine_license_url&&(r[`com.widevine.alpha`]=e.widevine_license_url),Object.keys(r).length===0?null:{drm:{servers:r}}}function jr(e,t){let n=kr(e,t);return{manifestUrl:n.manifestUrl,playbackProtocol:n.playbackProtocol,drmConfig:Ar(e,n)}}var Mr=`vyonio.playback.bandwidth`,Nr=5e7,Pr=2e3,Fr=null;function Ir(){let e;try{e=globalThis.localStorage}catch{e=void 0}return{connection:globalThis.navigator?.connection,storage:e}}function Lr({connection:e,storage:t}={}){return Fr??Br(e)??Vr(t)??55e5}function Rr(e,{storage:t}={}){let n=Hr(e);if(n==null)return!1;Fr=n;try{t?.setItem(Mr,String(n))}catch{}return!0}function zr(e,{connection:t,storage:n,schedule:r=e=>setInterval(e,Pr),cancel:i=clearInterval}={}){let a=Lr({connection:t,storage:n});e.configure({abr:{defaultBandwidthEstimate:a,preferNetworkInformationBandwidth:!1}});let o=()=>{try{let t=Hr(e.getStats()?.estimatedBandwidth);if(t==null||t===Hr(a))return;Rr(t,{storage:n})}catch{}};e.addEventListener(`adaptation`,o);let s=r(o),c=!1;return{estimate:a,dispose(){if(!c){c=!0,o();try{i(s)}catch{}try{e.removeEventListener(`adaptation`,o)}catch{}}}}}function Br(e){let t=Number(e?.downlink);return!Number.isFinite(t)||t<=0?null:Hr(t*1e6)}function Vr(e){try{return Hr(e?.getItem?.(Mr))}catch{return null}}function Hr(e){let t=Number(e);return!Number.isFinite(t)||t<=0?null:Math.min(Math.round(t),Nr)}function Ur(e,t){let n=t??e?.code;if(n===`PLAYBACK_TOKEN_FAILED`||n===`PLAYBACK_TOKEN_TIMEOUT`)return new fn(n);let r=(typeof n==`number`||typeof n==`string`)&&/^\d{1,6}$/.test(String(n)),i=n===`PLAYBACK_AUTH_REFRESH_FAILED`?n:r?String(n):`PLAYBACK_ERROR`;return Object.assign(/* @__PURE__ */ Error(i===`PLAYBACK_AUTH_REFRESH_FAILED`?`Playback authorization refresh failed. Please sign in and check your access.`:`Protected playback failed${r?` (${i})`:``}. Please try again.`),{code:i})}async function Wr(e,{apiBase:t=`https://api.vyonio.com`,embedUuid:n,getPlaybackToken:r,tokenEndpoint:i,tokenHeaders:a,onError:o,autoplay:s=!1,muted:l=!1,loop:u=!1,controls:d=!0,controlItems:f,settingsItems:p,language:m=`en`,accentColor:h,badge:g,startSeconds:_=0,popularityHistogram:v}){let y=pn({embedUuid:n,tokenEndpoint:i,getPlaybackToken:r,tokenHeaders:a}),b=y.getPlaybackToken;try{c.default.polyfill.installAll();let r=b?await b():null,i=r?{Authorization:`Bearer ${r}`}:{},a=await fetch(`${t}/v1/embed/${n}`,{headers:i});if(!a.ok)throw Error(`Video API ${a.status}`);let x=await a.json();if(x.status!==`ready`)throw Error(`Video not ready: ${x.status}`);let S=hr({telemetry:x.telemetry}),C=(e.ownerDocument??document).createElement(`video`);C.controls=!!d&&(!Array.isArray(f)||f.length>0),C.autoplay=!1,C.muted=!!l,C.defaultMuted=!!l,C.loop=!!u,C.style.width=`100%`,C.style.height=`100%`,C.setAttribute(`data-testid`,`drm-video`),C.setAttribute(`playsinline`,``),e.classList.add(`vyonio-player-mount`),e.appendChild(C);let w,T,E,D=!1,O=()=>S.dispose(),k=()=>{},A=()=>{},j=()=>{},M=()=>{},ee=()=>{},te=()=>{E!==void 0&&(clearTimeout(E),E=void 0)},ne=async()=>{if(D)return;D=!0,y.dispose(),te();let t,n=async e=>{try{await e()}catch(e){t||(t=e)}};if(await n(k),await n(O),await n(A),await n(j),await n(M),await n(()=>Kn(e,ee,()=>w?.destroy(),C)),t)throw t};try{let n=qn(C,{PlyrCtor:un,controls:!!d,controlItems:f,settingsItems:p,language:m,accentColor:h,badge:g,iconUrl:dn}),i=n.player;ee=n.destroy,w=new c.default.Player,await w.attach(C);let{manifestUrl:a,playbackProtocol:l,drmConfig:u}=jr(x,navigator.userAgent);S.setPlaybackProtocol(l),u&&w.configure(u),k=zr(w,Ir()).dispose;let y=a;if(r){let e=new URL(y);e.searchParams.set(`access_token`,r),y=e.toString()}let re=(e,n)=>{e===c.default.net.NetworkingEngine.RequestType.LICENSE&&(n.headers[`Content-Type`]=`application/octet-stream`),r&&_n(n,r,t)};w.getNetworkingEngine().registerRequestFilter(re);let ie=()=>{let t=Ur(void 0,`PLAYBACK_AUTH_REFRESH_FAILED`),n={code:t.code,message:t.message,error:t};e.dataset.state=`error`,C.dataset.state=`error`,S.trackError(n.code,!0,T?.snapshot()),e.dispatchEvent(new CustomEvent(`vyonio-player-error`,{detail:n})),o&&o(n)},N=()=>{if(D)return;let e=Math.max(5e3,gn(r));E=setTimeout(async()=>{try{let e=await b();if(D)return;if(r=e,M(),M=await Dr(C,i,x,{token:r}),D){M();return}N()}catch(e){if(D)return;te();try{ie(e)}finally{await ne()}}},e)},ae=t=>{let n=Array.isArray(t?.data)?t.data:void 0,r=t instanceof Error||typeof t?.message==`string`?t.message:`Playback error${t?.code==null?``:` (${t.code})`}`,i=b?Ur(t):void 0,a=i?{code:i.code,message:i.message,error:i}:{code:t?.code==null?`PLAYBACK_ERROR`:String(t.code),message:r,data:n,error:t instanceof Error?t:Error(r)};e.dataset.state=`error`,C.dataset.state=`error`;let s=t?.severity==null||t.severity===c.default.util.Error.Severity.CRITICAL;S.trackError(a.code,s,T?.snapshot()),e.dispatchEvent(new CustomEvent(`vyonio-player-error`,{detail:a})),o&&o(a)};w.addEventListener(`error`,e=>{ae(e?.detail)});let oe=!1;try{let e=Number(_);Number.isFinite(e)&&e>0?await w.load(y,e):await w.load(y),oe=!0}catch(e){throw ae(e),e}finally{oe||(te(),re&&w.getNetworkingEngine().unregisterRequestFilter(re))}try{A=$n(w,i)}catch{w.configure({abr:{enabled:!0}}),A=()=>{}}let se=v?.buckets??x.popularity_histogram?.buckets??x.popularity_histogram;try{let e=lr(i,{buckets:se});j=()=>e.dispose()}catch{j=()=>{}}M=await Dr(C,i,x,{token:r}),T=wn({video:C,stats:S});let ce=bn(C,{beforeSeek:T.beforeProgrammaticSeek});return O=async()=>{T.dispose(),await S.dispose()},b&&r&&N(),s&&(C.autoplay=!0,C.play().catch(()=>{})),{player:w,...ce,destroy:async()=>{try{await ne()}catch(e){throw b?Ur(e):e}}}}catch(e){try{await ne()}catch{}throw e}}catch(e){throw y.dispose(),b?Ur(e):e}}var Gr={mount:Wr};export{fn as PlaybackTokenError,Gr as VyonioPlayer,Wr as mount};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vyonio/player",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "scripts": {