@vkontakte/videoplayer-core 2.0.123-dev.08d4fb1a.0 → 2.0.123-dev.111b6d7e.0

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/esnext.cjs.js CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @vkontakte/videoplayer-core v2.0.123-dev.08d4fb1a.0
3
- * Tue, 14 Jan 2025 10:07:30 GMT
2
+ * @vkontakte/videoplayer-core v2.0.123-dev.111b6d7e.0
3
+ * Tue, 14 Jan 2025 10:01:01 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/2-0-123/doc/
5
5
  */
6
6
  "use strict";var Zg=Object.create;var Da=Object.defineProperty;var eS=Object.getOwnPropertyDescriptor;var tS=Object.getOwnPropertyNames;var rS=Object.getPrototypeOf,iS=Object.prototype.hasOwnProperty;var m=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),aS=(i,e)=>{for(var t in e)Da(i,t,{get:e[t],enumerable:!0})},Fu=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of tS(e))!iS.call(i,a)&&a!==t&&Da(i,a,{get:()=>e[a],enumerable:!(r=eS(e,a))||r.enumerable});return i};var j=(i,e,t)=>(t=i!=null?Zg(rS(i)):{},Fu(e||!i||!i.__esModule?Da(t,"default",{value:i,enumerable:!0}):t,i)),sS=i=>Fu(Da({},"__esModule",{value:!0}),i);var ue=m((zs,qu)=>{"use strict";var ti=function(i){return i&&i.Math===Math&&i};qu.exports=ti(typeof globalThis=="object"&&globalThis)||ti(typeof window=="object"&&window)||ti(typeof self=="object"&&self)||ti(typeof global=="object"&&global)||ti(typeof zs=="object"&&zs)||function(){return this}()||Function("return this")()});var be=m((OA,Uu)=>{"use strict";Uu.exports=function(i){try{return!!i()}catch{return!0}}});var ri=m((BA,Hu)=>{"use strict";var nS=be();Hu.exports=!nS(function(){var i=function(){}.bind();return typeof i!="function"||i.hasOwnProperty("prototype")})});var Ks=m((_A,Wu)=>{"use strict";var oS=ri(),Qu=Function.prototype,ju=Qu.apply,Gu=Qu.call;Wu.exports=typeof Reflect=="object"&&Reflect.apply||(oS?Gu.bind(ju):function(){return Gu.apply(ju,arguments)})});var pe=m((NA,Ku)=>{"use strict";var Yu=ri(),zu=Function.prototype,Xs=zu.call,uS=Yu&&zu.bind.bind(Xs,Xs);Ku.exports=Yu?uS:function(i){return function(){return Xs.apply(i,arguments)}}});var Zt=m((FA,Ju)=>{"use strict";var Xu=pe(),lS=Xu({}.toString),cS=Xu("".slice);Ju.exports=function(i){return cS(lS(i),8,-1)}});var Js=m((qA,Zu)=>{"use strict";var dS=Zt(),pS=pe();Zu.exports=function(i){if(dS(i)==="Function")return pS(i)}});var oe=m((UA,el)=>{"use strict";var Zs=typeof document=="object"&&document.all;el.exports=typeof Zs>"u"&&Zs!==void 0?function(i){return typeof i=="function"||i===Zs}:function(i){return typeof i=="function"}});var Ve=m((HA,tl)=>{"use strict";var hS=be();tl.exports=!hS(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Oe=m((jA,rl)=>{"use strict";var mS=ri(),Oa=Function.prototype.call;rl.exports=mS?Oa.bind(Oa):function(){return Oa.apply(Oa,arguments)}});var en=m(sl=>{"use strict";var il={}.propertyIsEnumerable,al=Object.getOwnPropertyDescriptor,fS=al&&!il.call({1:2},1);sl.f=fS?function(e){var t=al(this,e);return!!t&&t.enumerable}:il});var ii=m((QA,nl)=>{"use strict";nl.exports=function(i,e){return{enumerable:!(i&1),configurable:!(i&2),writable:!(i&4),value:e}}});var ul=m((WA,ol)=>{"use strict";var bS=pe(),gS=be(),SS=Zt(),tn=Object,vS=bS("".split);ol.exports=gS(function(){return!tn("z").propertyIsEnumerable(0)})?function(i){return SS(i)==="String"?vS(i,""):tn(i)}:tn});var yr=m((YA,ll)=>{"use strict";ll.exports=function(i){return i==null}});var _t=m((zA,cl)=>{"use strict";var yS=yr(),TS=TypeError;cl.exports=function(i){if(yS(i))throw new TS("Can't call method on "+i);return i}});var er=m((KA,dl)=>{"use strict";var IS=ul(),ES=_t();dl.exports=function(i){return IS(ES(i))}});var Be=m((XA,pl)=>{"use strict";var xS=oe();pl.exports=function(i){return typeof i=="object"?i!==null:xS(i)}});var Tr=m((JA,hl)=>{"use strict";hl.exports={}});var Et=m((ZA,fl)=>{"use strict";var rn=Tr(),an=ue(),PS=oe(),ml=function(i){return PS(i)?i:void 0};fl.exports=function(i,e){return arguments.length<2?ml(rn[i])||ml(an[i]):rn[i]&&rn[i][e]||an[i]&&an[i][e]}});var ai=m((eR,bl)=>{"use strict";var kS=pe();bl.exports=kS({}.isPrototypeOf)});var tr=m((tR,vl)=>{"use strict";var wS=ue(),gl=wS.navigator,Sl=gl&&gl.userAgent;vl.exports=Sl?String(Sl):""});var nn=m((rR,Pl)=>{"use strict";var xl=ue(),sn=tr(),yl=xl.process,Tl=xl.Deno,Il=yl&&yl.versions||Tl&&Tl.version,El=Il&&Il.v8,Je,Ba;El&&(Je=El.split("."),Ba=Je[0]>0&&Je[0]<4?1:+(Je[0]+Je[1]));!Ba&&sn&&(Je=sn.match(/Edge\/(\d+)/),(!Je||Je[1]>=74)&&(Je=sn.match(/Chrome\/(\d+)/),Je&&(Ba=+Je[1])));Pl.exports=Ba});var on=m((iR,wl)=>{"use strict";var kl=nn(),AS=be(),RS=ue(),$S=RS.String;wl.exports=!!Object.getOwnPropertySymbols&&!AS(function(){var i=Symbol("symbol detection");return!$S(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&kl&&kl<41})});var un=m((aR,Al)=>{"use strict";var LS=on();Al.exports=LS&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var ln=m((sR,Rl)=>{"use strict";var MS=Et(),DS=oe(),CS=ai(),VS=un(),OS=Object;Rl.exports=VS?function(i){return typeof i=="symbol"}:function(i){var e=MS("Symbol");return DS(e)&&CS(e.prototype,OS(i))}});var si=m((nR,$l)=>{"use strict";var BS=String;$l.exports=function(i){try{return BS(i)}catch{return"Object"}}});var ct=m((oR,Ll)=>{"use strict";var _S=oe(),NS=si(),FS=TypeError;Ll.exports=function(i){if(_S(i))return i;throw new FS(NS(i)+" is not a function")}});var ni=m((uR,Ml)=>{"use strict";var qS=ct(),US=yr();Ml.exports=function(i,e){var t=i[e];return US(t)?void 0:qS(t)}});var Cl=m((lR,Dl)=>{"use strict";var cn=Oe(),dn=oe(),pn=Be(),HS=TypeError;Dl.exports=function(i,e){var t,r;if(e==="string"&&dn(t=i.toString)&&!pn(r=cn(t,i))||dn(t=i.valueOf)&&!pn(r=cn(t,i))||e!=="string"&&dn(t=i.toString)&&!pn(r=cn(t,i)))return r;throw new HS("Can't convert object to primitive value")}});var Ze=m((cR,Vl)=>{"use strict";Vl.exports=!0});var _l=m((dR,Bl)=>{"use strict";var Ol=ue(),jS=Object.defineProperty;Bl.exports=function(i,e){try{jS(Ol,i,{value:e,configurable:!0,writable:!0})}catch{Ol[i]=e}return e}});var oi=m((pR,ql)=>{"use strict";var GS=Ze(),QS=ue(),WS=_l(),Nl="__core-js_shared__",Fl=ql.exports=QS[Nl]||WS(Nl,{});(Fl.versions||(Fl.versions=[])).push({version:"3.38.0",mode:GS?"pure":"global",copyright:"\xA9 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.38.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var hn=m((hR,Hl)=>{"use strict";var Ul=oi();Hl.exports=function(i,e){return Ul[i]||(Ul[i]=e||{})}});var Ir=m((mR,jl)=>{"use strict";var YS=_t(),zS=Object;jl.exports=function(i){return zS(YS(i))}});var et=m((fR,Gl)=>{"use strict";var KS=pe(),XS=Ir(),JS=KS({}.hasOwnProperty);Gl.exports=Object.hasOwn||function(e,t){return JS(XS(e),t)}});var mn=m((bR,Ql)=>{"use strict";var ZS=pe(),ev=0,tv=Math.random(),rv=ZS(1 .toString);Ql.exports=function(i){return"Symbol("+(i===void 0?"":i)+")_"+rv(++ev+tv,36)}});var ge=m((gR,Yl)=>{"use strict";var iv=ue(),av=hn(),Wl=et(),sv=mn(),nv=on(),ov=un(),Er=iv.Symbol,fn=av("wks"),uv=ov?Er.for||Er:Er&&Er.withoutSetter||sv;Yl.exports=function(i){return Wl(fn,i)||(fn[i]=nv&&Wl(Er,i)?Er[i]:uv("Symbol."+i)),fn[i]}});var Jl=m((SR,Xl)=>{"use strict";var lv=Oe(),zl=Be(),Kl=ln(),cv=ni(),dv=Cl(),pv=ge(),hv=TypeError,mv=pv("toPrimitive");Xl.exports=function(i,e){if(!zl(i)||Kl(i))return i;var t=cv(i,mv),r;if(t){if(e===void 0&&(e="default"),r=lv(t,i,e),!zl(r)||Kl(r))return r;throw new hv("Can't convert object to primitive value")}return e===void 0&&(e="number"),dv(i,e)}});var bn=m((vR,Zl)=>{"use strict";var fv=Jl(),bv=ln();Zl.exports=function(i){var e=fv(i,"string");return bv(e)?e:e+""}});var _a=m((yR,tc)=>{"use strict";var gv=ue(),ec=Be(),gn=gv.document,Sv=ec(gn)&&ec(gn.createElement);tc.exports=function(i){return Sv?gn.createElement(i):{}}});var Sn=m((TR,rc)=>{"use strict";var vv=Ve(),yv=be(),Tv=_a();rc.exports=!vv&&!yv(function(){return Object.defineProperty(Tv("div"),"a",{get:function(){return 7}}).a!==7})});var sc=m(ac=>{"use strict";var Iv=Ve(),Ev=Oe(),xv=en(),Pv=ii(),kv=er(),wv=bn(),Av=et(),Rv=Sn(),ic=Object.getOwnPropertyDescriptor;ac.f=Iv?ic:function(e,t){if(e=kv(e),t=wv(t),Rv)try{return ic(e,t)}catch{}if(Av(e,t))return Pv(!Ev(xv.f,e,t),e[t])}});var vn=m((ER,nc)=>{"use strict";var $v=be(),Lv=oe(),Mv=/#|\.prototype\./,ui=function(i,e){var t=Cv[Dv(i)];return t===Ov?!0:t===Vv?!1:Lv(e)?$v(e):!!e},Dv=ui.normalize=function(i){return String(i).replace(Mv,".").toLowerCase()},Cv=ui.data={},Vv=ui.NATIVE="N",Ov=ui.POLYFILL="P";nc.exports=ui});var xr=m((xR,uc)=>{"use strict";var oc=Js(),Bv=ct(),_v=ri(),Nv=oc(oc.bind);uc.exports=function(i,e){return Bv(i),e===void 0?i:_v?Nv(i,e):function(){return i.apply(e,arguments)}}});var yn=m((PR,lc)=>{"use strict";var Fv=Ve(),qv=be();lc.exports=Fv&&qv(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var dt=m((kR,cc)=>{"use strict";var Uv=Be(),Hv=String,jv=TypeError;cc.exports=function(i){if(Uv(i))return i;throw new jv(Hv(i)+" is not an object")}});var rr=m(pc=>{"use strict";var Gv=Ve(),Qv=Sn(),Wv=yn(),Na=dt(),dc=bn(),Yv=TypeError,Tn=Object.defineProperty,zv=Object.getOwnPropertyDescriptor,In="enumerable",En="configurable",xn="writable";pc.f=Gv?Wv?function(e,t,r){if(Na(e),t=dc(t),Na(r),typeof e=="function"&&t==="prototype"&&"value"in r&&xn in r&&!r[xn]){var a=zv(e,t);a&&a[xn]&&(e[t]=r.value,r={configurable:En in r?r[En]:a[En],enumerable:In in r?r[In]:a[In],writable:!1})}return Tn(e,t,r)}:Tn:function(e,t,r){if(Na(e),t=dc(t),Na(r),Qv)try{return Tn(e,t,r)}catch{}if("get"in r||"set"in r)throw new Yv("Accessors not supported");return"value"in r&&(e[t]=r.value),e}});var Pr=m((AR,hc)=>{"use strict";var Kv=Ve(),Xv=rr(),Jv=ii();hc.exports=Kv?function(i,e,t){return Xv.f(i,e,Jv(1,t))}:function(i,e,t){return i[e]=t,i}});var le=m((RR,fc)=>{"use strict";var li=ue(),Zv=Ks(),ey=Js(),ty=oe(),ry=sc().f,iy=vn(),kr=Tr(),ay=xr(),wr=Pr(),mc=et();oi();var sy=function(i){var e=function(t,r,a){if(this instanceof e){switch(arguments.length){case 0:return new i;case 1:return new i(t);case 2:return new i(t,r)}return new i(t,r,a)}return Zv(i,this,arguments)};return e.prototype=i.prototype,e};fc.exports=function(i,e){var t=i.target,r=i.global,a=i.stat,s=i.proto,n=r?li:a?li[t]:li[t]&&li[t].prototype,o=r?kr:kr[t]||wr(kr,t,{})[t],u=o.prototype,l,d,c,h,f,b,S,y,I;for(h in e)l=iy(r?h:t+(a?".":"#")+h,i.forced),d=!l&&n&&mc(n,h),b=o[h],d&&(i.dontCallGetSet?(I=ry(n,h),S=I&&I.value):S=n[h]),f=d&&S?S:e[h],!(!l&&!s&&typeof b==typeof f)&&(i.bind&&d?y=ay(f,li):i.wrap&&d?y=sy(f):s&&ty(f)?y=ey(f):y=f,(i.sham||f&&f.sham||b&&b.sham)&&wr(y,"sham",!0),wr(o,h,y),s&&(c=t+"Prototype",mc(kr,c)||wr(kr,c,{}),wr(kr[c],h,f),i.real&&u&&(l||!u[h])&&wr(u,h,f)))}});var gc=m(($R,bc)=>{"use strict";var ny=Math.ceil,oy=Math.floor;bc.exports=Math.trunc||function(e){var t=+e;return(t>0?oy:ny)(t)}});var ci=m((LR,Sc)=>{"use strict";var uy=gc();Sc.exports=function(i){var e=+i;return e!==e||e===0?0:uy(e)}});var yc=m((MR,vc)=>{"use strict";var ly=ci(),cy=Math.max,dy=Math.min;vc.exports=function(i,e){var t=ly(i);return t<0?cy(t+e,0):dy(t,e)}});var Pn=m((DR,Tc)=>{"use strict";var py=ci(),hy=Math.min;Tc.exports=function(i){var e=py(i);return e>0?hy(e,9007199254740991):0}});var Ar=m((CR,Ic)=>{"use strict";var my=Pn();Ic.exports=function(i){return my(i.length)}});var kn=m((VR,xc)=>{"use strict";var fy=er(),by=yc(),gy=Ar(),Ec=function(i){return function(e,t,r){var a=fy(e),s=gy(a);if(s===0)return!i&&-1;var n=by(r,s),o;if(i&&t!==t){for(;s>n;)if(o=a[n++],o!==o)return!0}else for(;s>n;n++)if((i||n in a)&&a[n]===t)return i||n||0;return!i&&-1}};xc.exports={includes:Ec(!0),indexOf:Ec(!1)}});var di=m((OR,Pc)=>{"use strict";Pc.exports=function(){}});var kc=m(()=>{"use strict";var Sy=le(),vy=kn().includes,yy=be(),Ty=di(),Iy=yy(function(){return!Array(1).includes()});Sy({target:"Array",proto:!0,forced:Iy},{includes:function(e){return vy(this,e,arguments.length>1?arguments[1]:void 0)}});Ty("includes")});var Nt=m((NR,wc)=>{"use strict";var Ey=Et();wc.exports=Ey});var Rc=m((FR,Ac)=>{"use strict";kc();var xy=Nt();Ac.exports=xy("Array","includes")});var Lc=m((qR,$c)=>{"use strict";var Py=Rc();$c.exports=Py});var tt=m((UR,Mc)=>{"use strict";var ky=Lc();Mc.exports=ky});var qa=m((ZR,Vc)=>{"use strict";var Ay=hn(),Ry=mn(),Cc=Ay("keys");Vc.exports=function(i){return Cc[i]||(Cc[i]=Ry(i))}});var Bc=m((e$,Oc)=>{"use strict";var $y=be();Oc.exports=!$y(function(){function i(){}return i.prototype.constructor=null,Object.getPrototypeOf(new i)!==i.prototype})});var Ua=m((t$,Nc)=>{"use strict";var Ly=et(),My=oe(),Dy=Ir(),Cy=qa(),Vy=Bc(),_c=Cy("IE_PROTO"),wn=Object,Oy=wn.prototype;Nc.exports=Vy?wn.getPrototypeOf:function(i){var e=Dy(i);if(Ly(e,_c))return e[_c];var t=e.constructor;return My(t)&&e instanceof t?t.prototype:e instanceof wn?Oy:null}});var Ha=m((r$,Fc)=>{"use strict";Fc.exports={}});var Hc=m((i$,Uc)=>{"use strict";var By=pe(),An=et(),_y=er(),Ny=kn().indexOf,Fy=Ha(),qc=By([].push);Uc.exports=function(i,e){var t=_y(i),r=0,a=[],s;for(s in t)!An(Fy,s)&&An(t,s)&&qc(a,s);for(;e.length>r;)An(t,s=e[r++])&&(~Ny(a,s)||qc(a,s));return a}});var Rn=m((a$,jc)=>{"use strict";jc.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var $n=m((s$,Gc)=>{"use strict";var qy=Hc(),Uy=Rn();Gc.exports=Object.keys||function(e){return qy(e,Uy)}});var Ln=m((n$,Kc)=>{"use strict";var Wc=Ve(),Hy=be(),Yc=pe(),jy=Ua(),Gy=$n(),Qy=er(),Wy=en().f,zc=Yc(Wy),Yy=Yc([].push),zy=Wc&&Hy(function(){var i=Object.create(null);return i[2]=2,!zc(i,2)}),Qc=function(i){return function(e){for(var t=Qy(e),r=Gy(t),a=zy&&jy(t)===null,s=r.length,n=0,o=[],u;s>n;)u=r[n++],(!Wc||(a?u in t:zc(t,u)))&&Yy(o,i?[u,t[u]]:t[u]);return o}};Kc.exports={entries:Qc(!0),values:Qc(!1)}});var Xc=m(()=>{"use strict";var Ky=le(),Xy=Ln().entries;Ky({target:"Object",stat:!0},{entries:function(e){return Xy(e)}})});var Zc=m((l$,Jc)=>{"use strict";Xc();var Jy=Tr();Jc.exports=Jy.Object.entries});var td=m((c$,ed)=>{"use strict";var Zy=Zc();ed.exports=Zy});var Rr=m((d$,rd)=>{"use strict";var eT=td();rd.exports=eT});var ir=m((p$,id)=>{"use strict";id.exports={}});var nd=m((h$,sd)=>{"use strict";var tT=ue(),rT=oe(),ad=tT.WeakMap;sd.exports=rT(ad)&&/native code/.test(String(ad))});var Vn=m((m$,ld)=>{"use strict";var iT=nd(),ud=ue(),aT=Be(),sT=Pr(),Mn=et(),Dn=oi(),nT=qa(),oT=Ha(),od="Object already initialized",Cn=ud.TypeError,uT=ud.WeakMap,ja,pi,Ga,lT=function(i){return Ga(i)?pi(i):ja(i,{})},cT=function(i){return function(e){var t;if(!aT(e)||(t=pi(e)).type!==i)throw new Cn("Incompatible receiver, "+i+" required");return t}};iT||Dn.state?(rt=Dn.state||(Dn.state=new uT),rt.get=rt.get,rt.has=rt.has,rt.set=rt.set,ja=function(i,e){if(rt.has(i))throw new Cn(od);return e.facade=i,rt.set(i,e),e},pi=function(i){return rt.get(i)||{}},Ga=function(i){return rt.has(i)}):(ar=nT("state"),oT[ar]=!0,ja=function(i,e){if(Mn(i,ar))throw new Cn(od);return e.facade=i,sT(i,ar,e),e},pi=function(i){return Mn(i,ar)?i[ar]:{}},Ga=function(i){return Mn(i,ar)});var rt,ar;ld.exports={set:ja,get:pi,has:Ga,enforce:lT,getterFor:cT}});var _n=m((f$,dd)=>{"use strict";var On=Ve(),dT=et(),cd=Function.prototype,pT=On&&Object.getOwnPropertyDescriptor,Bn=dT(cd,"name"),hT=Bn&&function(){}.name==="something",mT=Bn&&(!On||On&&pT(cd,"name").configurable);dd.exports={EXISTS:Bn,PROPER:hT,CONFIGURABLE:mT}});var hd=m(pd=>{"use strict";var fT=Ve(),bT=yn(),gT=rr(),ST=dt(),vT=er(),yT=$n();pd.f=fT&&!bT?Object.defineProperties:function(e,t){ST(e);for(var r=vT(t),a=yT(t),s=a.length,n=0,o;s>n;)gT.f(e,o=a[n++],r[o]);return e}});var Nn=m((g$,md)=>{"use strict";var TT=Et();md.exports=TT("document","documentElement")});var Hn=m((S$,Td)=>{"use strict";var IT=dt(),ET=hd(),fd=Rn(),xT=Ha(),PT=Nn(),kT=_a(),wT=qa(),bd=">",gd="<",qn="prototype",Un="script",vd=wT("IE_PROTO"),Fn=function(){},yd=function(i){return gd+Un+bd+i+gd+"/"+Un+bd},Sd=function(i){i.write(yd("")),i.close();var e=i.parentWindow.Object;return i=null,e},AT=function(){var i=kT("iframe"),e="java"+Un+":",t;return i.style.display="none",PT.appendChild(i),i.src=String(e),t=i.contentWindow.document,t.open(),t.write(yd("document.F=Object")),t.close(),t.F},Qa,Wa=function(){try{Qa=new ActiveXObject("htmlfile")}catch{}Wa=typeof document<"u"?document.domain&&Qa?Sd(Qa):AT():Sd(Qa);for(var i=fd.length;i--;)delete Wa[qn][fd[i]];return Wa()};xT[vd]=!0;Td.exports=Object.create||function(e,t){var r;return e!==null?(Fn[qn]=IT(e),r=new Fn,Fn[qn]=null,r[vd]=e):r=Wa(),t===void 0?r:ET.f(r,t)}});var $r=m((v$,Id)=>{"use strict";var RT=Pr();Id.exports=function(i,e,t,r){return r&&r.enumerable?i[e]=t:RT(i,e,t),i}});var Wn=m((y$,Pd)=>{"use strict";var $T=be(),LT=oe(),MT=Be(),DT=Hn(),Ed=Ua(),CT=$r(),VT=ge(),OT=Ze(),Qn=VT("iterator"),xd=!1,xt,jn,Gn;[].keys&&(Gn=[].keys(),"next"in Gn?(jn=Ed(Ed(Gn)),jn!==Object.prototype&&(xt=jn)):xd=!0);var BT=!MT(xt)||$T(function(){var i={};return xt[Qn].call(i)!==i});BT?xt={}:OT&&(xt=DT(xt));LT(xt[Qn])||CT(xt,Qn,function(){return this});Pd.exports={IteratorPrototype:xt,BUGGY_SAFARI_ITERATORS:xd}});var Ya=m((T$,wd)=>{"use strict";var _T=ge(),NT=_T("toStringTag"),kd={};kd[NT]="z";wd.exports=String(kd)==="[object z]"});var hi=m((I$,Ad)=>{"use strict";var FT=Ya(),qT=oe(),za=Zt(),UT=ge(),HT=UT("toStringTag"),jT=Object,GT=za(function(){return arguments}())==="Arguments",QT=function(i,e){try{return i[e]}catch{}};Ad.exports=FT?za:function(i){var e,t,r;return i===void 0?"Undefined":i===null?"Null":typeof(t=QT(e=jT(i),HT))=="string"?t:GT?za(e):(r=za(e))==="Object"&&qT(e.callee)?"Arguments":r}});var $d=m((E$,Rd)=>{"use strict";var WT=Ya(),YT=hi();Rd.exports=WT?{}.toString:function(){return"[object "+YT(this)+"]"}});var mi=m((x$,Md)=>{"use strict";var zT=Ya(),KT=rr().f,XT=Pr(),JT=et(),ZT=$d(),eI=ge(),Ld=eI("toStringTag");Md.exports=function(i,e,t,r){var a=t?i:i&&i.prototype;a&&(JT(a,Ld)||KT(a,Ld,{configurable:!0,value:e}),r&&!zT&&XT(a,"toString",ZT))}});var Cd=m((P$,Dd)=>{"use strict";var tI=Wn().IteratorPrototype,rI=Hn(),iI=ii(),aI=mi(),sI=ir(),nI=function(){return this};Dd.exports=function(i,e,t,r){var a=e+" Iterator";return i.prototype=rI(tI,{next:iI(+!r,t)}),aI(i,a,!1,!0),sI[a]=nI,i}});var Od=m((k$,Vd)=>{"use strict";var oI=pe(),uI=ct();Vd.exports=function(i,e,t){try{return oI(uI(Object.getOwnPropertyDescriptor(i,e)[t]))}catch{}}});var _d=m((w$,Bd)=>{"use strict";var lI=Be();Bd.exports=function(i){return lI(i)||i===null}});var Fd=m((A$,Nd)=>{"use strict";var cI=_d(),dI=String,pI=TypeError;Nd.exports=function(i){if(cI(i))return i;throw new pI("Can't set "+dI(i)+" as a prototype")}});var Yn=m((R$,qd)=>{"use strict";var hI=Od(),mI=Be(),fI=_t(),bI=Fd();qd.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var i=!1,e={},t;try{t=hI(Object.prototype,"__proto__","set"),t(e,[]),i=e instanceof Array}catch{}return function(a,s){return fI(a),bI(s),mI(a)&&(i?t(a,s):a.__proto__=s),a}}():void 0)});var Jd=m(($$,Xd)=>{"use strict";var gI=le(),SI=Oe(),Ka=Ze(),zd=_n(),vI=oe(),yI=Cd(),Ud=Ua(),Hd=Yn(),TI=mi(),II=Pr(),zn=$r(),EI=ge(),jd=ir(),Kd=Wn(),xI=zd.PROPER,PI=zd.CONFIGURABLE,Gd=Kd.IteratorPrototype,Xa=Kd.BUGGY_SAFARI_ITERATORS,fi=EI("iterator"),Qd="keys",bi="values",Wd="entries",Yd=function(){return this};Xd.exports=function(i,e,t,r,a,s,n){yI(t,e,r);var o=function(I){if(I===a&&h)return h;if(!Xa&&I&&I in d)return d[I];switch(I){case Qd:return function(){return new t(this,I)};case bi:return function(){return new t(this,I)};case Wd:return function(){return new t(this,I)}}return function(){return new t(this)}},u=e+" Iterator",l=!1,d=i.prototype,c=d[fi]||d["@@iterator"]||a&&d[a],h=!Xa&&c||o(a),f=e==="Array"&&d.entries||c,b,S,y;if(f&&(b=Ud(f.call(new i)),b!==Object.prototype&&b.next&&(!Ka&&Ud(b)!==Gd&&(Hd?Hd(b,Gd):vI(b[fi])||zn(b,fi,Yd)),TI(b,u,!0,!0),Ka&&(jd[u]=Yd))),xI&&a===bi&&c&&c.name!==bi&&(!Ka&&PI?II(d,"name",bi):(l=!0,h=function(){return SI(c,this)})),a)if(S={values:o(bi),keys:s?h:o(Qd),entries:o(Wd)},n)for(y in S)(Xa||l||!(y in d))&&zn(d,y,S[y]);else gI({target:e,proto:!0,forced:Xa||l},S);return(!Ka||n)&&d[fi]!==h&&zn(d,fi,h,{name:a}),jd[e]=h,S}});var ep=m((L$,Zd)=>{"use strict";Zd.exports=function(i,e){return{value:i,done:e}}});var Xn=m((M$,sp)=>{"use strict";var kI=er(),Kn=di(),tp=ir(),ip=Vn(),wI=rr().f,AI=Jd(),Ja=ep(),RI=Ze(),$I=Ve(),ap="Array Iterator",LI=ip.set,MI=ip.getterFor(ap);sp.exports=AI(Array,"Array",function(i,e){LI(this,{type:ap,target:kI(i),index:0,kind:e})},function(){var i=MI(this),e=i.target,t=i.index++;if(!e||t>=e.length)return i.target=void 0,Ja(void 0,!0);switch(i.kind){case"keys":return Ja(t,!1);case"values":return Ja(e[t],!1)}return Ja([t,e[t]],!1)},"values");var rp=tp.Arguments=tp.Array;Kn("keys");Kn("values");Kn("entries");if(!RI&&$I&&rp.name!=="values")try{wI(rp,"name",{value:"values"})}catch{}});var op=m((D$,np)=>{"use strict";var DI=ge(),CI=ir(),VI=DI("iterator"),OI=Array.prototype;np.exports=function(i){return i!==void 0&&(CI.Array===i||OI[VI]===i)}});var Jn=m((C$,lp)=>{"use strict";var BI=hi(),up=ni(),_I=yr(),NI=ir(),FI=ge(),qI=FI("iterator");lp.exports=function(i){if(!_I(i))return up(i,qI)||up(i,"@@iterator")||NI[BI(i)]}});var dp=m((V$,cp)=>{"use strict";var UI=Oe(),HI=ct(),jI=dt(),GI=si(),QI=Jn(),WI=TypeError;cp.exports=function(i,e){var t=arguments.length<2?QI(i):e;if(HI(t))return jI(UI(t,i));throw new WI(GI(i)+" is not iterable")}});var mp=m((O$,hp)=>{"use strict";var YI=Oe(),pp=dt(),zI=ni();hp.exports=function(i,e,t){var r,a;pp(i);try{if(r=zI(i,"return"),!r){if(e==="throw")throw t;return t}r=YI(r,i)}catch(s){a=!0,r=s}if(e==="throw")throw t;if(a)throw r;return pp(r),t}});var es=m((B$,Sp)=>{"use strict";var KI=xr(),XI=Oe(),JI=dt(),ZI=si(),eE=op(),tE=Ar(),fp=ai(),rE=dp(),iE=Jn(),bp=mp(),aE=TypeError,Za=function(i,e){this.stopped=i,this.result=e},gp=Za.prototype;Sp.exports=function(i,e,t){var r=t&&t.that,a=!!(t&&t.AS_ENTRIES),s=!!(t&&t.IS_RECORD),n=!!(t&&t.IS_ITERATOR),o=!!(t&&t.INTERRUPTED),u=KI(e,r),l,d,c,h,f,b,S,y=function(M){return l&&bp(l,"normal",M),new Za(!0,M)},I=function(M){return a?(JI(M),o?u(M[0],M[1],y):u(M[0],M[1])):o?u(M,y):u(M)};if(s)l=i.iterator;else if(n)l=i;else{if(d=iE(i),!d)throw new aE(ZI(i)+" is not iterable");if(eE(d)){for(c=0,h=tE(i);h>c;c++)if(f=I(i[c]),f&&fp(gp,f))return f;return new Za(!1)}l=rE(i,d)}for(b=s?i.next:l.next;!(S=XI(b,l)).done;){try{f=I(S.value)}catch(M){bp(l,"throw",M)}if(typeof f=="object"&&f&&fp(gp,f))return f}return new Za(!1)}});var yp=m((_$,vp)=>{"use strict";var sE=Ve(),nE=rr(),oE=ii();vp.exports=function(i,e,t){sE?nE.f(i,e,oE(0,t)):i[e]=t}});var Tp=m(()=>{"use strict";var uE=le(),lE=es(),cE=yp();uE({target:"Object",stat:!0},{fromEntries:function(e){var t={};return lE(e,function(r,a){cE(t,r,a)},{AS_ENTRIES:!0}),t}})});var Ep=m((q$,Ip)=>{"use strict";Xn();Tp();var dE=Tr();Ip.exports=dE.Object.fromEntries});var Pp=m((U$,xp)=>{"use strict";xp.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}});var wp=m(()=>{"use strict";Xn();var pE=Pp(),hE=ue(),mE=mi(),kp=ir();for(ts in pE)mE(hE[ts],ts),kp[ts]=kp.Array;var ts});var Rp=m((G$,Ap)=>{"use strict";var fE=Ep();wp();Ap.exports=fE});var Zn=m((Q$,$p)=>{"use strict";var bE=Rp();$p.exports=bE});var Lp=m(()=>{"use strict"});var eo=m((z$,Mp)=>{"use strict";var gi=ue(),gE=tr(),SE=Zt(),rs=function(i){return gE.slice(0,i.length)===i};Mp.exports=function(){return rs("Bun/")?"BUN":rs("Cloudflare-Workers")?"CLOUDFLARE":rs("Deno/")?"DENO":rs("Node.js/")?"NODE":gi.Bun&&typeof Bun.version=="string"?"BUN":gi.Deno&&typeof Deno.version=="object"?"DENO":SE(gi.process)==="process"?"NODE":gi.window&&gi.document?"BROWSER":"REST"}()});var is=m((K$,Dp)=>{"use strict";var vE=eo();Dp.exports=vE==="NODE"});var Vp=m((X$,Cp)=>{"use strict";var yE=rr();Cp.exports=function(i,e,t){return yE.f(i,e,t)}});var _p=m((J$,Bp)=>{"use strict";var TE=Et(),IE=Vp(),EE=ge(),xE=Ve(),Op=EE("species");Bp.exports=function(i){var e=TE(i);xE&&e&&!e[Op]&&IE(e,Op,{configurable:!0,get:function(){return this}})}});var Fp=m((Z$,Np)=>{"use strict";var PE=ai(),kE=TypeError;Np.exports=function(i,e){if(PE(e,i))return i;throw new kE("Incorrect invocation")}});var ro=m((eL,qp)=>{"use strict";var wE=pe(),AE=oe(),to=oi(),RE=wE(Function.toString);AE(to.inspectSource)||(to.inspectSource=function(i){return RE(i)});qp.exports=to.inspectSource});var ao=m((tL,Qp)=>{"use strict";var $E=pe(),LE=be(),Up=oe(),ME=hi(),DE=Et(),CE=ro(),Hp=function(){},jp=DE("Reflect","construct"),io=/^\s*(?:class|function)\b/,VE=$E(io.exec),OE=!io.test(Hp),Si=function(e){if(!Up(e))return!1;try{return jp(Hp,[],e),!0}catch{return!1}},Gp=function(e){if(!Up(e))return!1;switch(ME(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return OE||!!VE(io,CE(e))}catch{return!0}};Gp.sham=!0;Qp.exports=!jp||LE(function(){var i;return Si(Si.call)||!Si(Object)||!Si(function(){i=!0})||i})?Gp:Si});var Yp=m((rL,Wp)=>{"use strict";var BE=ao(),_E=si(),NE=TypeError;Wp.exports=function(i){if(BE(i))return i;throw new NE(_E(i)+" is not a constructor")}});var so=m((iL,Kp)=>{"use strict";var zp=dt(),FE=Yp(),qE=yr(),UE=ge(),HE=UE("species");Kp.exports=function(i,e){var t=zp(i).constructor,r;return t===void 0||qE(r=zp(t)[HE])?e:FE(r)}});var Jp=m((aL,Xp)=>{"use strict";var jE=pe();Xp.exports=jE([].slice)});var eh=m((sL,Zp)=>{"use strict";var GE=TypeError;Zp.exports=function(i,e){if(i<e)throw new GE("Not enough arguments");return i}});var no=m((nL,th)=>{"use strict";var QE=tr();th.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(QE)});var bo=m((oL,ch)=>{"use strict";var _e=ue(),WE=Ks(),YE=xr(),rh=oe(),zE=et(),lh=be(),ih=Nn(),KE=Jp(),ah=_a(),XE=eh(),JE=no(),ZE=is(),ho=_e.setImmediate,mo=_e.clearImmediate,ex=_e.process,oo=_e.Dispatch,tx=_e.Function,sh=_e.MessageChannel,rx=_e.String,uo=0,vi={},nh="onreadystatechange",yi,sr,lo,co;lh(function(){yi=_e.location});var fo=function(i){if(zE(vi,i)){var e=vi[i];delete vi[i],e()}},po=function(i){return function(){fo(i)}},oh=function(i){fo(i.data)},uh=function(i){_e.postMessage(rx(i),yi.protocol+"//"+yi.host)};(!ho||!mo)&&(ho=function(e){XE(arguments.length,1);var t=rh(e)?e:tx(e),r=KE(arguments,1);return vi[++uo]=function(){WE(t,void 0,r)},sr(uo),uo},mo=function(e){delete vi[e]},ZE?sr=function(i){ex.nextTick(po(i))}:oo&&oo.now?sr=function(i){oo.now(po(i))}:sh&&!JE?(lo=new sh,co=lo.port2,lo.port1.onmessage=oh,sr=YE(co.postMessage,co)):_e.addEventListener&&rh(_e.postMessage)&&!_e.importScripts&&yi&&yi.protocol!=="file:"&&!lh(uh)?(sr=uh,_e.addEventListener("message",oh,!1)):nh in ah("script")?sr=function(i){ih.appendChild(ah("script"))[nh]=function(){ih.removeChild(this),fo(i)}}:sr=function(i){setTimeout(po(i),0)});ch.exports={set:ho,clear:mo}});var hh=m((uL,ph)=>{"use strict";var dh=ue(),ix=Ve(),ax=Object.getOwnPropertyDescriptor;ph.exports=function(i){if(!ix)return dh[i];var e=ax(dh,i);return e&&e.value}});var go=m((lL,fh)=>{"use strict";var mh=function(){this.head=null,this.tail=null};mh.prototype={add:function(i){var e={item:i,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var i=this.head;if(i){var e=this.head=i.next;return e===null&&(this.tail=null),i.item}}};fh.exports=mh});var gh=m((cL,bh)=>{"use strict";var sx=tr();bh.exports=/ipad|iphone|ipod/i.test(sx)&&typeof Pebble<"u"});var vh=m((dL,Sh)=>{"use strict";var nx=tr();Sh.exports=/web0s(?!.*chrome)/i.test(nx)});var kh=m((pL,Ph)=>{"use strict";var Mr=ue(),ox=hh(),yh=xr(),So=bo().set,ux=go(),lx=no(),cx=gh(),dx=vh(),vo=is(),Th=Mr.MutationObserver||Mr.WebKitMutationObserver,Ih=Mr.document,Eh=Mr.process,as=Mr.Promise,Io=ox("queueMicrotask"),Lr,yo,To,ss,xh;Io||(Ti=new ux,Ii=function(){var i,e;for(vo&&(i=Eh.domain)&&i.exit();e=Ti.get();)try{e()}catch(t){throw Ti.head&&Lr(),t}i&&i.enter()},!lx&&!vo&&!dx&&Th&&Ih?(yo=!0,To=Ih.createTextNode(""),new Th(Ii).observe(To,{characterData:!0}),Lr=function(){To.data=yo=!yo}):!cx&&as&&as.resolve?(ss=as.resolve(void 0),ss.constructor=as,xh=yh(ss.then,ss),Lr=function(){xh(Ii)}):vo?Lr=function(){Eh.nextTick(Ii)}:(So=yh(So,Mr),Lr=function(){So(Ii)}),Io=function(i){Ti.head||Lr(),Ti.add(i)});var Ti,Ii;Ph.exports=Io});var Ah=m((hL,wh)=>{"use strict";wh.exports=function(i,e){try{arguments.length===1?console.error(i):console.error(i,e)}catch{}}});var ns=m((mL,Rh)=>{"use strict";Rh.exports=function(i){try{return{error:!1,value:i()}}catch(e){return{error:!0,value:e}}}});var nr=m((fL,$h)=>{"use strict";var px=ue();$h.exports=px.Promise});var Dr=m((bL,Ch)=>{"use strict";var hx=ue(),Ei=nr(),mx=oe(),fx=vn(),bx=ro(),gx=ge(),Lh=eo(),Sx=Ze(),Eo=nn(),Mh=Ei&&Ei.prototype,vx=gx("species"),xo=!1,Dh=mx(hx.PromiseRejectionEvent),yx=fx("Promise",function(){var i=bx(Ei),e=i!==String(Ei);if(!e&&Eo===66||Sx&&!(Mh.catch&&Mh.finally))return!0;if(!Eo||Eo<51||!/native code/.test(i)){var t=new Ei(function(s){s(1)}),r=function(s){s(function(){},function(){})},a=t.constructor={};if(a[vx]=r,xo=t.then(function(){})instanceof r,!xo)return!0}return!e&&(Lh==="BROWSER"||Lh==="DENO")&&!Dh});Ch.exports={CONSTRUCTOR:yx,REJECTION_EVENT:Dh,SUBCLASSING:xo}});var Cr=m((gL,Oh)=>{"use strict";var Vh=ct(),Tx=TypeError,Ix=function(i){var e,t;this.promise=new i(function(r,a){if(e!==void 0||t!==void 0)throw new Tx("Bad Promise constructor");e=r,t=a}),this.resolve=Vh(e),this.reject=Vh(t)};Oh.exports.f=function(i){return new Ix(i)}});var tm=m(()=>{"use strict";var Ex=le(),xx=Ze(),cs=is(),Ft=ue(),_r=Oe(),Bh=$r(),_h=Yn(),Px=mi(),kx=_p(),wx=ct(),ls=oe(),Ax=Be(),Rx=Fp(),$x=so(),Hh=bo().set,Ro=kh(),Lx=Ah(),Mx=ns(),Dx=go(),jh=Vn(),ds=nr(),$o=Dr(),Gh=Cr(),ps="Promise",Qh=$o.CONSTRUCTOR,Cx=$o.REJECTION_EVENT,Vx=$o.SUBCLASSING,Po=jh.getterFor(ps),Ox=jh.set,Vr=ds&&ds.prototype,or=ds,os=Vr,Wh=Ft.TypeError,ko=Ft.document,Lo=Ft.process,wo=Gh.f,Bx=wo,_x=!!(ko&&ko.createEvent&&Ft.dispatchEvent),Yh="unhandledrejection",Nx="rejectionhandled",Nh=0,zh=1,Fx=2,Mo=1,Kh=2,us,Fh,qx,qh,Xh=function(i){var e;return Ax(i)&&ls(e=i.then)?e:!1},Jh=function(i,e){var t=e.value,r=e.state===zh,a=r?i.ok:i.fail,s=i.resolve,n=i.reject,o=i.domain,u,l,d;try{a?(r||(e.rejection===Kh&&Hx(e),e.rejection=Mo),a===!0?u=t:(o&&o.enter(),u=a(t),o&&(o.exit(),d=!0)),u===i.promise?n(new Wh("Promise-chain cycle")):(l=Xh(u))?_r(l,u,s,n):s(u)):n(t)}catch(c){o&&!d&&o.exit(),n(c)}},Zh=function(i,e){i.notified||(i.notified=!0,Ro(function(){for(var t=i.reactions,r;r=t.get();)Jh(r,i);i.notified=!1,e&&!i.rejection&&Ux(i)}))},em=function(i,e,t){var r,a;_x?(r=ko.createEvent("Event"),r.promise=e,r.reason=t,r.initEvent(i,!1,!0),Ft.dispatchEvent(r)):r={promise:e,reason:t},!Cx&&(a=Ft["on"+i])?a(r):i===Yh&&Lx("Unhandled promise rejection",t)},Ux=function(i){_r(Hh,Ft,function(){var e=i.facade,t=i.value,r=Uh(i),a;if(r&&(a=Mx(function(){cs?Lo.emit("unhandledRejection",t,e):em(Yh,e,t)}),i.rejection=cs||Uh(i)?Kh:Mo,a.error))throw a.value})},Uh=function(i){return i.rejection!==Mo&&!i.parent},Hx=function(i){_r(Hh,Ft,function(){var e=i.facade;cs?Lo.emit("rejectionHandled",e):em(Nx,e,i.value)})},Or=function(i,e,t){return function(r){i(e,r,t)}},Br=function(i,e,t){i.done||(i.done=!0,t&&(i=t),i.value=e,i.state=Fx,Zh(i,!0))},Ao=function(i,e,t){if(!i.done){i.done=!0,t&&(i=t);try{if(i.facade===e)throw new Wh("Promise can't be resolved itself");var r=Xh(e);r?Ro(function(){var a={done:!1};try{_r(r,e,Or(Ao,a,i),Or(Br,a,i))}catch(s){Br(a,s,i)}}):(i.value=e,i.state=zh,Zh(i,!1))}catch(a){Br({done:!1},a,i)}}};if(Qh&&(or=function(e){Rx(this,os),wx(e),_r(us,this);var t=Po(this);try{e(Or(Ao,t),Or(Br,t))}catch(r){Br(t,r)}},os=or.prototype,us=function(e){Ox(this,{type:ps,done:!1,notified:!1,parent:!1,reactions:new Dx,rejection:!1,state:Nh,value:void 0})},us.prototype=Bh(os,"then",function(e,t){var r=Po(this),a=wo($x(this,or));return r.parent=!0,a.ok=ls(e)?e:!0,a.fail=ls(t)&&t,a.domain=cs?Lo.domain:void 0,r.state===Nh?r.reactions.add(a):Ro(function(){Jh(a,r)}),a.promise}),Fh=function(){var i=new us,e=Po(i);this.promise=i,this.resolve=Or(Ao,e),this.reject=Or(Br,e)},Gh.f=wo=function(i){return i===or||i===qx?new Fh(i):Bx(i)},!xx&&ls(ds)&&Vr!==Object.prototype)){qh=Vr.then,Vx||Bh(Vr,"then",function(e,t){var r=this;return new or(function(a,s){_r(qh,r,a,s)}).then(e,t)},{unsafe:!0});try{delete Vr.constructor}catch{}_h&&_h(Vr,os)}Ex({global:!0,constructor:!0,wrap:!0,forced:Qh},{Promise:or});Px(or,ps,!1,!0);kx(ps)});var nm=m((yL,sm)=>{"use strict";var jx=ge(),im=jx("iterator"),am=!1;try{rm=0,Do={next:function(){return{done:!!rm++}},return:function(){am=!0}},Do[im]=function(){return this},Array.from(Do,function(){throw 2})}catch{}var rm,Do;sm.exports=function(i,e){try{if(!e&&!am)return!1}catch{return!1}var t=!1;try{var r={};r[im]=function(){return{next:function(){return{done:t=!0}}}},i(r)}catch{}return t}});var Co=m((TL,om)=>{"use strict";var Gx=nr(),Qx=nm(),Wx=Dr().CONSTRUCTOR;om.exports=Wx||!Qx(function(i){Gx.all(i).then(void 0,function(){})})});var um=m(()=>{"use strict";var Yx=le(),zx=Oe(),Kx=ct(),Xx=Cr(),Jx=ns(),Zx=es(),eP=Co();Yx({target:"Promise",stat:!0,forced:eP},{all:function(e){var t=this,r=Xx.f(t),a=r.resolve,s=r.reject,n=Jx(function(){var o=Kx(t.resolve),u=[],l=0,d=1;Zx(e,function(c){var h=l++,f=!1;d++,zx(o,t,c).then(function(b){f||(f=!0,u[h]=b,--d||a(u))},s)}),--d||a(u)});return n.error&&s(n.value),r.promise}})});var cm=m(()=>{"use strict";var tP=le(),rP=Ze(),iP=Dr().CONSTRUCTOR,Oo=nr(),aP=Et(),sP=oe(),nP=$r(),lm=Oo&&Oo.prototype;tP({target:"Promise",proto:!0,forced:iP,real:!0},{catch:function(i){return this.then(void 0,i)}});!rP&&sP(Oo)&&(Vo=aP("Promise").prototype.catch,lm.catch!==Vo&&nP(lm,"catch",Vo,{unsafe:!0}));var Vo});var dm=m(()=>{"use strict";var oP=le(),uP=Oe(),lP=ct(),cP=Cr(),dP=ns(),pP=es(),hP=Co();oP({target:"Promise",stat:!0,forced:hP},{race:function(e){var t=this,r=cP.f(t),a=r.reject,s=dP(function(){var n=lP(t.resolve);pP(e,function(o){uP(n,t,o).then(r.resolve,a)})});return s.error&&a(s.value),r.promise}})});var pm=m(()=>{"use strict";var mP=le(),fP=Cr(),bP=Dr().CONSTRUCTOR;mP({target:"Promise",stat:!0,forced:bP},{reject:function(e){var t=fP.f(this),r=t.reject;return r(e),t.promise}})});var Bo=m(($L,hm)=>{"use strict";var gP=dt(),SP=Be(),vP=Cr();hm.exports=function(i,e){if(gP(i),SP(e)&&e.constructor===i)return e;var t=vP.f(i),r=t.resolve;return r(e),t.promise}});var bm=m(()=>{"use strict";var yP=le(),TP=Et(),mm=Ze(),IP=nr(),fm=Dr().CONSTRUCTOR,EP=Bo(),xP=TP("Promise"),PP=mm&&!fm;yP({target:"Promise",stat:!0,forced:mm||fm},{resolve:function(e){return EP(PP&&this===xP?IP:this,e)}})});var gm=m(()=>{"use strict";tm();um();cm();dm();pm();bm()});var Tm=m(()=>{"use strict";var kP=le(),wP=Ze(),hs=nr(),AP=be(),vm=Et(),ym=oe(),RP=so(),Sm=Bo(),$P=$r(),No=hs&&hs.prototype,LP=!!hs&&AP(function(){No.finally.call({then:function(){}},function(){})});kP({target:"Promise",proto:!0,real:!0,forced:LP},{finally:function(i){var e=RP(this,vm("Promise")),t=ym(i);return this.then(t?function(r){return Sm(e,i()).then(function(){return r})}:i,t?function(r){return Sm(e,i()).then(function(){throw r})}:i)}});!wP&&ym(hs)&&(_o=vm("Promise").prototype.finally,No.finally!==_o&&$P(No,"finally",_o,{unsafe:!0}));var _o});var Em=m((BL,Im)=>{"use strict";Lp();gm();Tm();var MP=Nt();Im.exports=MP("Promise","finally")});var Pm=m((_L,xm)=>{"use strict";var DP=Em();xm.exports=DP});var ms=m((NL,km)=>{"use strict";var CP=Pm();km.exports=CP});var Dm=m(()=>{"use strict";var NP=le(),FP=Ln().values;NP({target:"Object",stat:!0},{values:function(e){return FP(e)}})});var Vm=m((bM,Cm)=>{"use strict";Dm();var qP=Tr();Cm.exports=qP.Object.values});var Bm=m((gM,Om)=>{"use strict";var UP=Vm();Om.exports=UP});var Nr=m((SM,_m)=>{"use strict";var HP=Bm();_m.exports=HP});var Um=m(()=>{"use strict";var WP=le(),YP=Ir(),zP=Ar(),KP=ci(),XP=di();WP({target:"Array",proto:!0},{at:function(e){var t=YP(this),r=zP(t),a=KP(e),s=a>=0?a:r+a;return s<0||s>=r?void 0:t[s]}});XP("at")});var jm=m((UM,Hm)=>{"use strict";Um();var JP=Nt();Hm.exports=JP("Array","at")});var Qm=m((HM,Gm)=>{"use strict";var ZP=jm();Gm.exports=ZP});var Fr=m((jM,Wm)=>{"use strict";var ek=Qm();Wm.exports=ek});var ru=m((uC,mf)=>{"use strict";var dk=Zt();mf.exports=Array.isArray||function(e){return dk(e)==="Array"}});var bf=m((lC,ff)=>{"use strict";var pk=TypeError,hk=9007199254740991;ff.exports=function(i){if(i>hk)throw pk("Maximum allowed index exceeded");return i}});var vf=m((cC,Sf)=>{"use strict";var mk=ru(),fk=Ar(),bk=bf(),gk=xr(),gf=function(i,e,t,r,a,s,n,o){for(var u=a,l=0,d=n?gk(n,o):!1,c,h;l<r;)l in t&&(c=d?d(t[l],l,e):t[l],s>0&&mk(c)?(h=fk(c),u=gf(i,e,c,h,u,s-1)-1):(bk(u+1),i[u]=c),u++),l++;return u};Sf.exports=gf});var Ef=m((dC,If)=>{"use strict";var yf=ru(),Sk=ao(),vk=Be(),yk=ge(),Tk=yk("species"),Tf=Array;If.exports=function(i){var e;return yf(i)&&(e=i.constructor,Sk(e)&&(e===Tf||yf(e.prototype))?e=void 0:vk(e)&&(e=e[Tk],e===null&&(e=void 0))),e===void 0?Tf:e}});var Pf=m((pC,xf)=>{"use strict";var Ik=Ef();xf.exports=function(i,e){return new(Ik(i))(e===0?0:e)}});var kf=m(()=>{"use strict";var Ek=le(),xk=vf(),Pk=ct(),kk=Ir(),wk=Ar(),Ak=Pf();Ek({target:"Array",proto:!0},{flatMap:function(e){var t=kk(this),r=wk(t),a;return Pk(e),a=Ak(t,0),a.length=xk(a,t,t,r,0,1,e,arguments.length>1?arguments[1]:void 0),a}})});var wf=m(()=>{"use strict";var Rk=di();Rk("flatMap")});var Rf=m((gC,Af)=>{"use strict";kf();wf();var $k=Nt();Af.exports=$k("Array","flatMap")});var Lf=m((SC,$f)=>{"use strict";var Lk=Rf();$f.exports=Lk});var iu=m((vC,Mf)=>{"use strict";var Mk=Lf();Mf.exports=Mk});var Vi=m((AC,Uf)=>{"use strict";var Fk=hi(),qk=String;Uf.exports=function(i){if(Fk(i)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return qk(i)}});var su=m((RC,Hf)=>{"use strict";Hf.exports=`
7
- \v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF`});var Qf=m(($C,Gf)=>{"use strict";var Uk=pe(),Hk=_t(),jk=Vi(),ou=su(),jf=Uk("".replace),Gk=RegExp("^["+ou+"]+"),Qk=RegExp("(^|[^"+ou+"])["+ou+"]+$"),nu=function(i){return function(e){var t=jk(Hk(e));return i&1&&(t=jf(t,Gk,"")),i&2&&(t=jf(t,Qk,"$1")),t}};Gf.exports={start:nu(1),end:nu(2),trim:nu(3)}});var Kf=m((LC,zf)=>{"use strict";var Wk=_n().PROPER,Yk=be(),Wf=su(),Yf="\u200B\x85\u180E";zf.exports=function(i){return Yk(function(){return!!Wf[i]()||Yf[i]()!==Yf||Wk&&Wf[i].name!==i})}});var uu=m((MC,Xf)=>{"use strict";var zk=Qf().start,Kk=Kf();Xf.exports=Kk("trimStart")?function(){return zk(this)}:"".trimStart});var Zf=m(()=>{"use strict";var Xk=le(),Jf=uu();Xk({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Jf},{trimLeft:Jf})});var tb=m(()=>{"use strict";Zf();var Jk=le(),eb=uu();Jk({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==eb},{trimStart:eb})});var ib=m((BC,rb)=>{"use strict";tb();var Zk=Nt();rb.exports=Zk("String","trimLeft")});var sb=m((_C,ab)=>{"use strict";var ew=ib();ab.exports=ew});var ob=m((NC,nb)=>{"use strict";var tw=sb();nb.exports=tw});var Tb=m(()=>{"use strict"});var Ib=m(()=>{"use strict"});var xb=m((sO,Eb)=>{"use strict";var Tw=Be(),Iw=Zt(),Ew=ge(),xw=Ew("match");Eb.exports=function(i){var e;return Tw(i)&&((e=i[xw])!==void 0?!!e:Iw(i)==="RegExp")}});var kb=m((nO,Pb)=>{"use strict";var Pw=dt();Pb.exports=function(){var i=Pw(this),e="";return i.hasIndices&&(e+="d"),i.global&&(e+="g"),i.ignoreCase&&(e+="i"),i.multiline&&(e+="m"),i.dotAll&&(e+="s"),i.unicode&&(e+="u"),i.unicodeSets&&(e+="v"),i.sticky&&(e+="y"),e}});var Rb=m((oO,Ab)=>{"use strict";var kw=Oe(),ww=et(),Aw=ai(),Rw=kb(),wb=RegExp.prototype;Ab.exports=function(i){var e=i.flags;return e===void 0&&!("flags"in wb)&&!ww(i,"flags")&&Aw(wb,i)?kw(Rw,i):e}});var Lb=m((uO,$b)=>{"use strict";var fu=pe(),$w=Ir(),Lw=Math.floor,hu=fu("".charAt),Mw=fu("".replace),mu=fu("".slice),Dw=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Cw=/\$([$&'`]|\d{1,2})/g;$b.exports=function(i,e,t,r,a,s){var n=t+i.length,o=r.length,u=Cw;return a!==void 0&&(a=$w(a),u=Dw),Mw(s,u,function(l,d){var c;switch(hu(d,0)){case"$":return"$";case"&":return i;case"`":return mu(e,0,t);case"'":return mu(e,n);case"<":c=a[mu(d,1,-1)];break;default:var h=+d;if(h===0)return l;if(h>o){var f=Lw(h/10);return f===0?l:f<=o?r[f-1]===void 0?hu(d,1):r[f-1]+hu(d,1):l}c=r[h-1]}return c===void 0?"":c})}});var Cb=m(()=>{"use strict";var Vw=le(),Ow=Oe(),gu=pe(),Mb=_t(),Bw=oe(),_w=yr(),Nw=xb(),Wr=Vi(),Fw=ni(),qw=Rb(),Uw=Lb(),Hw=ge(),jw=Ze(),Gw=Hw("replace"),Qw=TypeError,bu=gu("".indexOf),Ww=gu("".replace),Db=gu("".slice),Yw=Math.max;Vw({target:"String",proto:!0},{replaceAll:function(e,t){var r=Mb(this),a,s,n,o,u,l,d,c,h,f,b=0,S="";if(!_w(e)){if(a=Nw(e),a&&(s=Wr(Mb(qw(e))),!~bu(s,"g")))throw new Qw("`.replaceAll` does not allow non-global regexes");if(n=Fw(e,Gw),n)return Ow(n,e,r,t);if(jw&&a)return Ww(Wr(r),e,t)}for(o=Wr(r),u=Wr(e),l=Bw(t),l||(t=Wr(t)),d=u.length,c=Yw(1,d),h=bu(o,u);h!==-1;)f=l?Wr(t(u,h,o)):Uw(u,o,h,[],void 0,t),S+=Db(o,b,h)+f,b=h+d,h=h+c>o.length?-1:bu(o,u,h+c);return b<o.length&&(S+=Db(o,b)),S}})});var Ob=m((dO,Vb)=>{"use strict";Tb();Ib();Cb();var zw=Nt();Vb.exports=zw("String","replaceAll")});var _b=m((pO,Bb)=>{"use strict";var Kw=Ob();Bb.exports=Kw});var Fb=m((hO,Nb)=>{"use strict";var Xw=_b();Nb.exports=Xw});var Ub=m((mO,qb)=>{"use strict";var Jw=ci(),Zw=Vi(),eA=_t(),tA=RangeError;qb.exports=function(e){var t=Zw(eA(this)),r="",a=Jw(e);if(a<0||a===1/0)throw new tA("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))a&1&&(r+=t);return r}});var Wb=m((fO,Qb)=>{"use strict";var Gb=pe(),rA=Pn(),Hb=Vi(),iA=Ub(),aA=_t(),sA=Gb(iA),nA=Gb("".slice),oA=Math.ceil,jb=function(i){return function(e,t,r){var a=Hb(aA(e)),s=rA(t),n=a.length,o=r===void 0?" ":Hb(r),u,l;return s<=n||o===""?a:(u=s-n,l=sA(o,oA(u/o.length)),l.length>u&&(l=nA(l,0,u)),i?a+l:l+a)}};Qb.exports={start:jb(!1),end:jb(!0)}});var zb=m((bO,Yb)=>{"use strict";var uA=tr();Yb.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(uA)});var Kb=m(()=>{"use strict";var lA=le(),cA=Wb().start,dA=zb();lA({target:"String",proto:!0,forced:dA},{padStart:function(e){return cA(this,e,arguments.length>1?arguments[1]:void 0)}})});var Jb=m((vO,Xb)=>{"use strict";Kb();var pA=Nt();Xb.exports=pA("String","padStart")});var eg=m((yO,Zb)=>{"use strict";var hA=Jb();Zb.exports=hA});var rg=m((TO,tg)=>{"use strict";var mA=eg();tg.exports=mA});var MA={};aS(MA,{ChromecastState:()=>ei,HttpConnectionType:()=>Ca,Observable:()=>gt.Observable,PlaybackState:()=>Ie,Player:()=>ka,SDK_VERSION:()=>LA,Subject:()=>gt.Subject,Subscription:()=>gt.Subscription,Surface:()=>Va,VERSION:()=>Ys,ValueSubject:()=>gt.ValueSubject,VideoFormat:()=>It,VideoQuality:()=>gt.VideoQuality});module.exports=sS(MA);var Ys="2.0.123-dev.08d4fb1a.0";var Ie=(a=>(a.STOPPED="stopped",a.READY="ready",a.PLAYING="playing",a.PAUSED="paused",a))(Ie||{}),It=(A=>(A.MPEG="MPEG",A.DASH="DASH",A.DASH_SEP="DASH_SEP",A.DASH_SEP_VK="DASH_SEP",A.DASH_WEBM="DASH_WEBM",A.DASH_WEBM_AV1="DASH_WEBM_AV1",A.DASH_STREAMS="DASH_STREAMS",A.DASH_WEBM_VK="DASH_WEBM",A.DASH_ONDEMAND="DASH_ONDEMAND",A.DASH_ONDEMAND_VK="DASH_ONDEMAND",A.DASH_LIVE="DASH_LIVE",A.DASH_LIVE_CMAF="DASH_LIVE_CMAF",A.DASH_LIVE_WEBM="DASH_LIVE_WEBM",A.HLS="HLS",A.HLS_ONDEMAND="HLS_ONDEMAND",A.HLS_JS="HLS",A.HLS_LIVE="HLS_LIVE",A.HLS_LIVE_CMAF="HLS_LIVE_CMAF",A.WEB_RTC_LIVE="WEB_RTC_LIVE",A))(It||{});var ei=(a=>(a.NOT_AVAILABLE="NOT_AVAILABLE",a.AVAILABLE="AVAILABLE",a.CONNECTING="CONNECTING",a.CONNECTED="CONNECTED",a))(ei||{}),Ca=(r=>(r.HTTP1="http1",r.HTTP2="http2",r.QUIC="quic",r))(Ca||{});var Va=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Va||{});var Yg=j(tt(),1);var F=require("@vkontakte/videoplayer-shared");var Dc=i=>new Promise((e,t)=>{let r=document.createElement("script");r.setAttribute("src",i),r.onload=()=>e(),r.onerror=a=>t(a),document.body.appendChild(r)});var Fa=class{constructor(e){this.connection$=new F.ValueSubject(void 0);this.castState$=new F.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new F.Subject;this.realCastState$=new F.ValueSubject("NOT_AVAILABLE");this.subscription=new F.Subscription;this.isDestroyed=!1;this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastInitializer");let t="chrome"in window;if(this.log({message:`[constructor] receiverApplicationId: ${this.params.receiverApplicationId}, isDisabled: ${this.params.isDisabled}, isSupported: ${t}`}),e.isDisabled||!t)return;let r=(0,F.isNonNullable)(window.chrome?.cast),a=!!window.__onGCastApiAvailable;r?this.initializeCastApi():(window.__onGCastApiAvailable=s=>{delete window.__onGCastApiAvailable,s&&!this.isDestroyed&&this.initializeCastApi()},a||Dc("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:F.ErrorCategory.NETWORK,message:"Script loading failed!"})))}connect(){cast.framework.CastContext.getInstance()?.requestSession()}disconnect(){cast.framework.CastContext.getInstance()?.getCurrentSession()?.endSession(!0)}stopMedia(){return new Promise((e,t)=>{cast.framework.CastContext.getInstance()?.getCurrentSession()?.getMediaSession()?.stop(new chrome.cast.media.StopRequest,e,t)})}toggleConnection(){(0,F.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,F.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,F.isNullable)(t)||e!==t.remotePlayer.isMuted&&t.remotePlayerController.muteOrUnmute()}destroy(){this.isDestroyed=!0,this.subscription.unsubscribe()}initListeners(){let e=new cast.framework.RemotePlayer,t=new cast.framework.RemotePlayerController(e),r=cast.framework.CastContext.getInstance();this.subscription.add((0,F.fromEvent)(r,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(a=>{switch(a.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=r.getCurrentSession()?.getMediaSession()?.media?.contentId;break;case cast.framework.SessionState.NO_SESSION:case cast.framework.SessionState.SESSION_ENDING:case cast.framework.SessionState.SESSION_ENDED:case cast.framework.SessionState.SESSION_START_FAILED:this.contentId=void 0;break;default:return(0,F.assertNever)(a.sessionState)}})).add((0,F.merge)((0,F.fromEvent)(r,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,F.tap)(a=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(a)}`})}),(0,F.map)(a=>a.castState)),(0,F.observableFrom)([r.getCastState()])).pipe((0,F.filterChanged)(),(0,F.map)(wy),(0,F.tap)(a=>{this.log({message:`realCastState$: ${a}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(a=>{let s=a==="CONNECTED",n=(0,F.isNonNullable)(this.connection$.getValue());if(s&&!n){let o=r.getCurrentSession();(0,F.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,F.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:o,castDevice:u}))}else!s&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(a==="CONNECTED"?(0,F.isNonNullable)(this.connection$.getValue())?"CONNECTED":"AVAILABLE":a)}))}initializeCastApi(){let e,t,r;try{e=cast.framework.CastContext.getInstance(),t=chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,r=chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED}catch{return}try{e.setOptions({receiverApplicationId:this.params.receiverApplicationId??t,autoJoinPolicy:r}),this.initListeners()}catch(a){this.errorEvent$.next({id:"ChromecastInitializer",category:F.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:a})}}},wy=i=>{switch(i){case cast.framework.CastState.NO_DEVICES_AVAILABLE:return"NOT_AVAILABLE";case cast.framework.CastState.NOT_CONNECTED:return"AVAILABLE";case cast.framework.CastState.CONNECTING:return"CONNECTING";case cast.framework.CastState.CONNECTED:return"CONNECTED";default:return(0,F.assertNever)(i)}};var Ou=j(tt(),1),Vg=j(Rr(),1),Og=j(Zn(),1);var $m=j(ms(),1);var Fo=require("@vkontakte/videoplayer-shared");var Se=(i,e=0,t=0)=>{switch(t){case 0:return i.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return i;let r=new URL(i);return r.searchParams.append("playback_shift",e.toFixed(0)),r.toString()}case 2:{let r=new URL(i);return!r.searchParams.get("offset_p")&&e===0?i:(r.searchParams.set("offset_p",e.toFixed(0)),r.toString())}default:(0,Fo.assertNever)(t)}return i},fs=(i,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(i);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(i);return Number(t.searchParams.get("offset_p")??0)}default:(0,Fo.assertNever)(e)}};var k=(i,e,t=!1)=>{let r=i.getTransition();(t||!r||r.to===e)&&i.setState(e)};var pt=require("@vkontakte/videoplayer-shared"),q=class{constructor(e){this.transitionStarted$=new pt.Subject;this.transitionEnded$=new pt.Subject;this.transitionUpdated$=new pt.Subject;this.forceChanged$=new pt.Subject;this.stateChangeStarted$=(0,pt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,pt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,r=this.state;this.transition=void 0,this.prevState=r,this.state=e,t?t.to===e?this.transitionEnded$.next(t):this.forceChanged$.next({from:t.from,to:e,canceledTransition:t}):this.forceChanged$.next({from:r,to:e,canceledTransition:t})}startTransitionTo(e){let t=this.transition,r=this.state;r===e||(0,pt.isNonNullable)(t)&&t.to===e||(this.prevState=r,this.state=e,t?(this.transition={from:t.from,to:e,canceledTransition:t},this.transitionUpdated$.next(this.transition)):(this.transition={from:r,to:e},this.transitionStarted$.next(this.transition)))}getTransition(){return this.transition}getState(){return this.state}getPrevState(){return this.prevState}};var wm=require("@vkontakte/videoplayer-shared"),Am=i=>{switch(i){case"MPEG":case"DASH":case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":case"HLS":case"HLS_ONDEMAND":return!1;case"DASH_LIVE":case"DASH_LIVE_CMAF":case"HLS_LIVE":case"HLS_LIVE_CMAF":case"DASH_LIVE_WEBM":case"WEB_RTC_LIVE":return!0;default:return(0,wm.assertNever)(i)}};var R=require("@vkontakte/videoplayer-shared");var VP=5,OP=5,BP=500,Rm=7e3,xi=class{constructor(e){this.subscription=new R.Subscription;this.loadMediaTimeoutSubscription=new R.Subscription;this.videoState=new q("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),r=this.params.desiredState.playbackState.getState(),a=this.params.desiredState.playbackState.getTransition(),s=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${r}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(s)};`}),r==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(a?.to!=="paused"&&s.state==="requested"&&e!=="stopped"){this.seek(s.position/1e3);return}switch(r){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}case"playing":{switch(e){case"playing":break;case"paused":this.videoState.startTransitionTo("playing"),this.params.connection.remotePlayerController.playOrPause();break;case"ready":this.videoState.startTransitionTo("playing"),this.params.connection.remotePlayerController.playOrPause();break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}case"paused":{switch(e){case"playing":this.videoState.startTransitionTo("paused"),this.params.connection.remotePlayerController.playOrPause();break;case"paused":break;case"ready":this.videoState.startTransitionTo("paused"),this.videoState.setState("paused");break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}default:(0,R.assertNever)(r)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(Am(e.format)),this.params.output.isAudioAvailable$.next(!0),this.handleRemoteVolumeChange({volume:this.params.connection.remotePlayer.volumeLevel,muted:this.params.connection.remotePlayer.isMuted});let t=this.params.connection.session.getMediaSession();t&&this.restoreSession(t),this.subscribe()}destroy(){this.log({message:"[destroy]"}),this.subscription.unsubscribe()}subscribe(){this.subscription.add(this.loadMediaTimeoutSubscription);let e=new R.Subscription;this.subscription.add(e),this.subscription.add((0,R.merge)(this.videoState.stateChangeStarted$.pipe((0,R.map)(a=>`stateChangeStarted$ ${JSON.stringify(a)}`)),this.videoState.stateChangeEnded$.pipe((0,R.map)(a=>`stateChangeEnded$ ${JSON.stringify(a)}`))).subscribe(a=>this.log({message:`[videoState] ${a}`})));let t=(a,s)=>this.subscription.add(a.subscribe(s));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let a=new R.Subject;e.add(a.pipe((0,R.debounce)(BP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let o=n.value;this.params.output.position$.next(o),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(o-s)>VP)&&a.next(o),s=o})),e.add((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),a=>{this.logRemoteEvent(a),a.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),a=>{this.logRemoteEvent(a),a.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),a=>{this.logRemoteEvent(a);let{remotePlayer:s}=this.params.connection,n=a.value,o=this.params.output.isBuffering$.getValue(),u=n===chrome.cast.media.PlayerState.BUFFERING;switch(o!==u&&this.params.output.isBuffering$.next(u),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&s.duration-s.currentTime<OP&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),k(this.params.desiredState.playbackState,"stopped");break;case chrome.cast.media.PlayerState.PAUSED:{this.handleRemotePause();break}case chrome.cast.media.PlayerState.PLAYING:this.handleRemotePlay();break;case chrome.cast.media.PlayerState.BUFFERING:break;default:(0,R.assertNever)(n)}}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),a=>{this.logRemoteEvent(a),this.handleRemoteVolumeChange({volume:a.value})}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),a=>{this.logRemoteEvent(a),this.handleRemoteVolumeChange({muted:a.value})});let r=(0,R.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,R.observableFrom)(["init"])).pipe((0,R.debounce)(0));t(r,this.syncPlayback)}restoreSession(e){this.log({message:"restoreSession"});let{remotePlayer:t}=this.params.connection;if(e.playerState!==chrome.cast.media.PlayerState.IDLE){t.isPaused?(this.videoState.setState("paused"),k(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),k(this.params.desiredState.playbackState,"playing"));let r=this.params.output.isLive$.getValue();this.params.output.duration$.next(r?0:t.duration),this.params.output.position$.next(r?0:t.currentTime),this.params.desiredState.seekState.setState({state:"none"})}}prepare(){let e=this.params.format;this.log({message:`[prepare] format: ${e}`});let t=this.createMediaInfo(e),r=this.createLoadRequest(t);this.loadMedia(r)}handleRemotePause(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="paused"||e==="playing")&&(this.videoState.setState("paused"),k(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),k(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&k(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){let t=this.params.output.volume$.getValue(),r={volume:e.volume??t.volume,muted:e.muted??t.muted};(r.volume!==t.volume||r.muted!==r.muted)&&this.params.output.volume$.next(r)}seek(e){this.params.output.willSeekEvent$.next();let{remotePlayer:t,remotePlayerController:r}=this.params.connection;t.currentTime=e,r.seek()}stop(){let{remotePlayerController:e}=this.params.connection;e.stop()}createMediaInfo(e){let t=this.params.source,r,a,s;switch(e){case"MPEG":{let l=t[e];(0,R.assertNonNullable)(l);let d=(0,R.getHighestQuality)(Object.keys(l));(0,R.assertNonNullable)(d);let c=l[d];(0,R.assertNonNullable)(c),r=c,a="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/x-mpegurl",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/dash+xml",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/dash+xml",s=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,R.assertNonNullable)(l),r=Se(l.url),a="application/x-mpegurl",s=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let l="Unsupported format for Chromecast",d=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:R.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:d}),d}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,R.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??r,a);n.contentUrl=r,n.streamType=s,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return(0,R.isNonNullable)(o)&&(n.metadata.title=o),(0,R.isNonNullable)(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let r=this.params.desiredState.seekState.getState();return r.state==="applying"||r.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:r.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),r=new Promise((a,s)=>{this.loadMediaTimeoutSubscription.add((0,R.timeout)(Rm).subscribe(()=>s(`timeout(${Rm})`)))});(0,$m.default)(Promise.race([t,r]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},a=>{let s=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${a}`;this.log({message:s}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:R.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:a})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var eu=j(tt(),1);var jo=require("@vkontakte/videoplayer-shared");var Lm=require("@vkontakte/videoplayer-shared"),Mm=i=>{try{i.pause(),i.playbackRate=0,(0,Lm.clearVideoElement)(i),i.remove()}catch(e){console.error(e)}};var bs=require("@vkontakte/videoplayer-shared"),qo=class{constructor(){this.attribute="data-pool-reused"}get(e){return e.hasAttribute(this.attribute)}set(e,t){e.toggleAttribute(this.attribute,t)}delete(e){e.removeAttribute(this.attribute)}},Uo=window.WeakMap?new WeakMap:new qo,Ho=window.WeakMap?new WeakMap:new Map,_P=(i,e=20)=>{let t=0;return(0,bs.fromEvent)(i,"ratechange").subscribe(r=>{t++,t>=e&&(i.currentTime=i.currentTime,t=0)})},Pe=(i,{audioVideoSyncRate:e})=>{let t=i.querySelector("video"),r=!!t;t?(0,jo.clearVideoElement)(t):(t=document.createElement("video"),i.appendChild(t)),Uo.set(t,r);let a=new bs.Subscription;return a.add(_P(t,e)),Ho.set(t,a),t.setAttribute("crossorigin","anonymous"),t.setAttribute("playsinline","playsinline"),t.controls=!1,t.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),t},ke=i=>{Ho.get(i)?.unsubscribe(),Ho.delete(i);let t=Uo.get(i);Uo.delete(i),t?(0,jo.clearVideoElement)(i):Mm(i)};var Go=j(Nr(),1),$=require("@vkontakte/videoplayer-shared");var qt=require("@vkontakte/videoplayer-shared"),gs=(i,e,t,{equal:r=(n,o)=>n===o,changed$:a,onError:s}={})=>{let n=i.getState(),o=e(),u=(0,qt.isNullable)(a),l=new qt.Subscription;return a&&l.add(a.subscribe(d=>{let c=i.getState();r(d,c)&&i.setState(d)},s)),r(o,n)||(t(n),u&&i.setState(n)),l.add(i.stateChangeStarted$.subscribe(d=>{t(d.to),u&&i.setState(d.to)},s)),l},ht=(i,e,t)=>gs(e,()=>i.loop,r=>{(0,qt.isNonNullable)(r)&&(i.loop=r)},{onError:t}),we=(i,e,t,r)=>gs(e,()=>({muted:i.muted,volume:i.volume}),a=>{(0,qt.isNonNullable)(a)&&(i.muted=a.muted,i.volume=a.volume)},{equal:(a,s)=>a===s||a?.muted===s?.muted&&a?.volume===s?.volume,changed$:t,onError:r}),Ue=(i,e,t,r)=>gs(e,()=>i.playbackRate,a=>{(0,qt.isNonNullable)(a)&&(i.playbackRate=a)},{changed$:t,onError:r}),Ut=gs;var jP=i=>["__",i.language,i.label].join("|"),GP=(i,e)=>{if(i.id===e)return!0;let[t,r,a]=e.split("|");return i.language===r&&i.label===a},Qo=class i{constructor(e){this.available$=new $.Subject;this.current$=new $.ValueSubject(void 0);this.error$=new $.Subject;this.subscription=new $.Subscription;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,r){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let a=s=>{this.error$.next({id:"TextTracksManager",category:$.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:s})};this.subscription.add(this.available$.subscribe(r.availableTextTracks$)),this.subscription.add(this.current$.subscribe(r.currentTextTrack$)),this.subscription.add(this.error$.subscribe(r.error$)),this.subscription.add(Ut(t.internalTextTracks,()=>(0,Go.default)(this.internalTracks),s=>{(0,$.isNonNullable)(s)&&this.setInternal(s)},{equal:(s,n)=>(0,$.isNonNullable)(s)&&(0,$.isNonNullable)(n)&&s.length===n.length&&s.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,$.map)(s=>s.filter(({type:n})=>n==="internal"))),onError:a})),this.subscription.add(Ut(t.externalTextTracks,()=>(0,Go.default)(this.externalTracks),s=>{(0,$.isNonNullable)(s)&&this.setExternal(s)},{equal:(s,n)=>(0,$.isNonNullable)(s)&&(0,$.isNonNullable)(n)&&s.length===n.length&&s.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,$.map)(s=>s.filter(({type:n})=>n==="external"))),onError:a})),this.subscription.add(Ut(t.currentTextTrack,()=>{if(this.video)return;let s=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return s&&this.htmlTextTrackToITextTrack(s).id},s=>this.select(s),{changed$:this.current$,onError:a})),this.subscription.add(Ut(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let s of this.htmlTextTracksAsArray())this.applyCueSettings(s.cues),this.applyCueSettings(s.activeCues)}))}subscribe(){(0,$.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,$.fromEvent)(e,"addtrack").subscribe(()=>{let r=this.current$.getValue();r&&this.select(r)})),this.subscription.add((0,$.merge)((0,$.fromEvent)(e,"addtrack"),(0,$.fromEvent)(e,"removetrack"),(0,$.observableFrom)(["init"])).pipe((0,$.map)(()=>this.htmlTextTracksAsArray().map(r=>this.htmlTextTrackToITextTrack(r))),(0,$.filterChanged)((r,a)=>r.length===a.length&&r.every(({id:s},n)=>s===a[n].id))).subscribe(this.available$)),this.subscription.add((0,$.merge)((0,$.fromEvent)(e,"change"),(0,$.observableFrom)(["init"])).pipe((0,$.map)(()=>this.htmlTextTracksAsArray().find(({mode:r})=>r==="showing")),(0,$.map)(r=>r&&this.htmlTextTrackToITextTrack(r).id),(0,$.filterChanged)()).subscribe(this.current$));let t=r=>this.applyCueSettings(r.target?.activeCues??null);this.subscription.add((0,$.fromEvent)(e,"addtrack").subscribe(r=>{r.track?.addEventListener("cuechange",t);let a=s=>{let n=s.target?.cues??null;n&&n.length&&(this.applyCueSettings(s.target?.cues??null),s.target?.removeEventListener("cuechange",a))};r.track?.addEventListener("cuechange",a)})),this.subscription.add((0,$.fromEvent)(e,"removetrack").subscribe(r=>{r.track?.removeEventListener("cuechange",t)}))}applyCueSettings(e){if(!e||!e.length)return;let t=this.cueSettings.getState();for(let r of Array.from(e)){let a=r;(0,$.isNonNullable)(t.align)&&(a.align=t.align),(0,$.isNonNullable)(t.position)&&(a.position=t.position),(0,$.isNonNullable)(t.size)&&(a.size=t.size),(0,$.isNonNullable)(t.line)&&(a.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,$.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(i.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:r}=e,a=e.id?e.id:jP(e),s=this.externalTracks.has(a),n=(s?this.externalTracks.get(a)?.isAuto:this.internalTracks.get(a)?.isAuto)??a.includes("auto");return s?{id:a,type:"external",isAuto:n,language:t,label:r,url:this.externalTracks.get(a)?.url}:{id:a,type:"internal",isAuto:n,language:t,label:r,url:this.internalTracks.get(a)?.url}}static isHealthyTrack(e){return!(e.kind==="metadata"||e.groupId||e.id===""&&e.label===""&&e.language==="")}setExternal(e){this.internalTracks.size>0&&Array.from(this.internalTracks).forEach(([,t])=>this.detach(t)),e.filter(({id:t})=>!this.externalTracks.has(t)).forEach(t=>this.attach(t)),Array.from(this.externalTracks).filter(([t])=>!e.find(r=>r.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:r,language:a,isAuto:s})=>!this.internalTracks.has(r)&&!t.some(([,n])=>n.language===a&&n.isAuto===s)).forEach(r=>this.attach(r)),Array.from(this.internalTracks).filter(([r])=>!e.find(a=>a.id===r)).forEach(([,r])=>this.detach(r))}select(e){(0,$.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,$.isNullable)(e)||!GP(t,e))&&(t.mode="disabled")}destroy(){if(this.subscription.unsubscribe(),this.video)for(let e of Array.from(this.video.getElementsByTagName("track"))){let t=e.getAttribute("id");t&&this.externalTracks.has(t)&&this.video.removeChild(e)}this.externalTracks.clear()}attach(e){(0,$.assertNonNullable)(this.video);let t=document.createElement("track");this.baseURL?t.setAttribute("src",new URL(e.url,this.baseURL).toString()):t.setAttribute("src",e.url),t.setAttribute("id",e.id),e.label&&t.setAttribute("label",e.label),e.language&&t.setAttribute("srclang",e.language),e.type==="external"?this.externalTracks.set(e.id,e):e.type==="internal"&&this.internalTracks.set(e.id,e),this.video.appendChild(t)}detach(e){(0,$.assertNonNullable)(this.video);let t=Array.prototype.find.call(this.video.getElementsByTagName("track"),r=>r.getAttribute("id")===e.id);t&&this.video.removeChild(t),e.type==="external"?this.externalTracks.delete(e.id):e.type==="internal"&&this.internalTracks.delete(e.id)}},He=Qo;var kt=class{constructor(){this.pausedTime=0;this.streamOffset=0;this.pauseTimestamp=0}getTotalPausedTime(){return this.pausedTime+this.getCurrentPausedTime()}getCurrentPausedTime(){return this.pauseTimestamp>0?Date.now()-this.pauseTimestamp:0}getStreamOffset(){return this.streamOffset}getTotalOffset(){return this.getTotalPausedTime()+this.streamOffset}pause(){this.pauseTimestamp===0&&(this.pauseTimestamp=Date.now())}resume(){this.pauseTimestamp>0&&(this.pausedTime+=this.getCurrentPausedTime(),this.pauseTimestamp=0)}resetTo(e,t=!1){this.streamOffset=e,this.pauseTimestamp=0,this.pausedTime=0,t&&this.pause()}};var Nm=i=>{let e=i;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Wo=i=>{let e=Nm(i);return!!(e&&e.fullscreenElement&&e.fullscreenElement===i)},Fm=i=>{let e=Nm(i);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===i)};var D=require("@vkontakte/videoplayer-shared");var QP=3,qm=(i,e,t=QP)=>{let r=0,a=0;for(let s=0;s<i.length;s++){let n=i.start(s),o=i.end(s);if(n<=e&&e<=o){if(r=n,a=o,!t)return{from:r,to:a};for(let u=s-1;u>=0;u--)i.end(u)+t>=r&&(r=i.start(u));for(let u=s+1;u<i.length;u++)i.start(u)-t<=a&&(a=i.end(u))}}return{from:r,to:a}};var Ae=i=>{let e=A=>(0,D.fromEvent)(i,A).pipe((0,D.mapTo)(void 0)),r=(0,D.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(A=>(0,D.fromEvent)(i,A))).pipe((0,D.map)(A=>A.type==="ended"?i.readyState<2:i.readyState<3),(0,D.filterChanged)()),a=(0,D.merge)((0,D.fromEvent)(i,"progress"),(0,D.fromEvent)(i,"timeupdate")).pipe((0,D.map)(()=>qm(i.buffered,i.currentTime))),s=D.clientChecker.isSafari?(0,D.combine)({play:e("play").pipe((0,D.once)()),playing:e("playing")}).pipe((0,D.mapTo)(void 0)):e("playing"),n=(0,D.fromEvent)(i,"volumechange").pipe((0,D.map)(()=>({muted:i.muted,volume:i.volume}))),o=(0,D.fromEvent)(i,"ratechange").pipe((0,D.map)(()=>i.playbackRate)),u=(0,D.fromEvent)(i,"error").pipe((0,D.filter)(()=>!!(i.error||i.played.length)),(0,D.map)(()=>{let A=i.error;return{id:A?`MediaError#${A.code}`:"HtmlVideoError",category:D.ErrorCategory.VIDEO_PIPELINE,message:A?A.message:"Error event from HTML video element",thrown:i.error??void 0}})),l=(0,D.fromEvent)(i,"timeupdate").pipe((0,D.map)(()=>i.currentTime)),d=new D.Subject,c=.3,h;l.subscribe(A=>{i.loop&&(0,D.isNonNullable)(h)&&(0,D.isNonNullable)(A)&&h>=i.duration-c&&A<=c&&d.next(h),h=A});let f=e("pause").pipe((0,D.filter)(()=>!i.error&&h!==i.duration)),b=(0,D.fromEvent)(i,"enterpictureinpicture"),S=(0,D.fromEvent)(i,"leavepictureinpicture"),y=new D.ValueSubject(Fm(i));b.subscribe(()=>y.next(!0)),S.subscribe(()=>y.next(!1));let I=new D.ValueSubject(Wo(i));return(0,D.fromEvent)(i,"fullscreenchange").pipe((0,D.map)(()=>Wo(i))).subscribe(I),{playing$:s,pause$:f,canplay$:e("canplay"),ended$:e("ended"),looped$:d,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,D.fromEvent)(i,"durationchange").pipe((0,D.map)(()=>i.duration)),isBuffering$:r,currentBuffer$:a,volumeState$:n,playbackRateState$:o,inPiP$:y,inFullscreen$:I,enterPip$:b,leavePip$:S}};var wt=require("@vkontakte/videoplayer-shared"),Ht=i=>{switch(i){case"mobile":return wt.VideoQuality.Q_144P;case"lowest":return wt.VideoQuality.Q_240P;case"low":return wt.VideoQuality.Q_360P;case"sd":case"medium":return wt.VideoQuality.Q_480P;case"hd":case"high":return wt.VideoQuality.Q_720P;case"fullhd":case"full":return wt.VideoQuality.Q_1080P;case"quadhd":case"quad":return wt.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return wt.VideoQuality.Q_2160P}};var jt=j(Fr(),1),Jm=j(tt(),1),Ss=j(Rr(),1),L=require("@vkontakte/videoplayer-shared");var Yo=!1,At={},Ym=i=>{Yo=i},zm=()=>{At={}},Km=i=>{i(At)},Pi=(i,e)=>{Yo&&(At.meta=At.meta??{},At.meta[i]=e)},Ee=class{constructor(e){this.name=e}next(e){if(!Yo)return;At.series=At.series??{};let t=At.series[this.name]??[];t.push([Date.now(),e]),At.series[this.name]=t}};var tk=new Ee("best_bitrate"),Zm=(i,e,t)=>(e-t)*Math.pow(2,-10*i)+t;var zo=i=>(e,t)=>i*(Number(e.bitrate)-Number(t.bitrate)),ki=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,L.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},ef='Assertion "ABR Tracks is empty array" failed',vs=(i,e,t,r)=>{let a=[...e].sort(zo(1)),s=[...t].sort(zo(1)),n=s.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(i.bitrate)?i.bitrate/u.bitrate>r:!0),o=(0,jt.default)(s,Math.round(s.length*a.indexOf(i)/(a.length+1)))??(0,jt.default)(s,-1);return o&&(0,Jm.default)(n,o)?o:n.length?(0,jt.default)(n,-1):(0,jt.default)(s,0)},Xm=i=>"quality"in i,tf=(i,e,t,r)=>{let a=(0,L.isNonNullable)(r?.last?.bitrate)&&(0,L.isNonNullable)(t?.bitrate)&&r.last.bitrate<t.bitrate?i.trackCooldownIncreaseQuality:i.trackCooldownDecreaseQuality,s=t&&r&&r.history[t.id]&&(0,L.now)()-r.history[t.id]<=a&&(!r.last||t.id!==r.last.id);if(t?.id&&r&&!s&&r.recordSelection(t),s&&r?.last){let n=r.last;r?.recordSwitch(n);let o=Xm(n)?"video":"audio",u=Xm(n)?n.quality:n.bitrate;return e({message:`
7
+ \v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF`});var Qf=m(($C,Gf)=>{"use strict";var Uk=pe(),Hk=_t(),jk=Vi(),ou=su(),jf=Uk("".replace),Gk=RegExp("^["+ou+"]+"),Qk=RegExp("(^|[^"+ou+"])["+ou+"]+$"),nu=function(i){return function(e){var t=jk(Hk(e));return i&1&&(t=jf(t,Gk,"")),i&2&&(t=jf(t,Qk,"$1")),t}};Gf.exports={start:nu(1),end:nu(2),trim:nu(3)}});var Kf=m((LC,zf)=>{"use strict";var Wk=_n().PROPER,Yk=be(),Wf=su(),Yf="\u200B\x85\u180E";zf.exports=function(i){return Yk(function(){return!!Wf[i]()||Yf[i]()!==Yf||Wk&&Wf[i].name!==i})}});var uu=m((MC,Xf)=>{"use strict";var zk=Qf().start,Kk=Kf();Xf.exports=Kk("trimStart")?function(){return zk(this)}:"".trimStart});var Zf=m(()=>{"use strict";var Xk=le(),Jf=uu();Xk({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Jf},{trimLeft:Jf})});var tb=m(()=>{"use strict";Zf();var Jk=le(),eb=uu();Jk({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==eb},{trimStart:eb})});var ib=m((BC,rb)=>{"use strict";tb();var Zk=Nt();rb.exports=Zk("String","trimLeft")});var sb=m((_C,ab)=>{"use strict";var ew=ib();ab.exports=ew});var ob=m((NC,nb)=>{"use strict";var tw=sb();nb.exports=tw});var Tb=m(()=>{"use strict"});var Ib=m(()=>{"use strict"});var xb=m((sO,Eb)=>{"use strict";var Tw=Be(),Iw=Zt(),Ew=ge(),xw=Ew("match");Eb.exports=function(i){var e;return Tw(i)&&((e=i[xw])!==void 0?!!e:Iw(i)==="RegExp")}});var kb=m((nO,Pb)=>{"use strict";var Pw=dt();Pb.exports=function(){var i=Pw(this),e="";return i.hasIndices&&(e+="d"),i.global&&(e+="g"),i.ignoreCase&&(e+="i"),i.multiline&&(e+="m"),i.dotAll&&(e+="s"),i.unicode&&(e+="u"),i.unicodeSets&&(e+="v"),i.sticky&&(e+="y"),e}});var Rb=m((oO,Ab)=>{"use strict";var kw=Oe(),ww=et(),Aw=ai(),Rw=kb(),wb=RegExp.prototype;Ab.exports=function(i){var e=i.flags;return e===void 0&&!("flags"in wb)&&!ww(i,"flags")&&Aw(wb,i)?kw(Rw,i):e}});var Lb=m((uO,$b)=>{"use strict";var fu=pe(),$w=Ir(),Lw=Math.floor,hu=fu("".charAt),Mw=fu("".replace),mu=fu("".slice),Dw=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Cw=/\$([$&'`]|\d{1,2})/g;$b.exports=function(i,e,t,r,a,s){var n=t+i.length,o=r.length,u=Cw;return a!==void 0&&(a=$w(a),u=Dw),Mw(s,u,function(l,d){var c;switch(hu(d,0)){case"$":return"$";case"&":return i;case"`":return mu(e,0,t);case"'":return mu(e,n);case"<":c=a[mu(d,1,-1)];break;default:var h=+d;if(h===0)return l;if(h>o){var f=Lw(h/10);return f===0?l:f<=o?r[f-1]===void 0?hu(d,1):r[f-1]+hu(d,1):l}c=r[h-1]}return c===void 0?"":c})}});var Cb=m(()=>{"use strict";var Vw=le(),Ow=Oe(),gu=pe(),Mb=_t(),Bw=oe(),_w=yr(),Nw=xb(),Wr=Vi(),Fw=ni(),qw=Rb(),Uw=Lb(),Hw=ge(),jw=Ze(),Gw=Hw("replace"),Qw=TypeError,bu=gu("".indexOf),Ww=gu("".replace),Db=gu("".slice),Yw=Math.max;Vw({target:"String",proto:!0},{replaceAll:function(e,t){var r=Mb(this),a,s,n,o,u,l,d,c,h,f,b=0,S="";if(!_w(e)){if(a=Nw(e),a&&(s=Wr(Mb(qw(e))),!~bu(s,"g")))throw new Qw("`.replaceAll` does not allow non-global regexes");if(n=Fw(e,Gw),n)return Ow(n,e,r,t);if(jw&&a)return Ww(Wr(r),e,t)}for(o=Wr(r),u=Wr(e),l=Bw(t),l||(t=Wr(t)),d=u.length,c=Yw(1,d),h=bu(o,u);h!==-1;)f=l?Wr(t(u,h,o)):Uw(u,o,h,[],void 0,t),S+=Db(o,b,h)+f,b=h+d,h=h+c>o.length?-1:bu(o,u,h+c);return b<o.length&&(S+=Db(o,b)),S}})});var Ob=m((dO,Vb)=>{"use strict";Tb();Ib();Cb();var zw=Nt();Vb.exports=zw("String","replaceAll")});var _b=m((pO,Bb)=>{"use strict";var Kw=Ob();Bb.exports=Kw});var Fb=m((hO,Nb)=>{"use strict";var Xw=_b();Nb.exports=Xw});var Ub=m((mO,qb)=>{"use strict";var Jw=ci(),Zw=Vi(),eA=_t(),tA=RangeError;qb.exports=function(e){var t=Zw(eA(this)),r="",a=Jw(e);if(a<0||a===1/0)throw new tA("Wrong number of repetitions");for(;a>0;(a>>>=1)&&(t+=t))a&1&&(r+=t);return r}});var Wb=m((fO,Qb)=>{"use strict";var Gb=pe(),rA=Pn(),Hb=Vi(),iA=Ub(),aA=_t(),sA=Gb(iA),nA=Gb("".slice),oA=Math.ceil,jb=function(i){return function(e,t,r){var a=Hb(aA(e)),s=rA(t),n=a.length,o=r===void 0?" ":Hb(r),u,l;return s<=n||o===""?a:(u=s-n,l=sA(o,oA(u/o.length)),l.length>u&&(l=nA(l,0,u)),i?a+l:l+a)}};Qb.exports={start:jb(!1),end:jb(!0)}});var zb=m((bO,Yb)=>{"use strict";var uA=tr();Yb.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(uA)});var Kb=m(()=>{"use strict";var lA=le(),cA=Wb().start,dA=zb();lA({target:"String",proto:!0,forced:dA},{padStart:function(e){return cA(this,e,arguments.length>1?arguments[1]:void 0)}})});var Jb=m((vO,Xb)=>{"use strict";Kb();var pA=Nt();Xb.exports=pA("String","padStart")});var eg=m((yO,Zb)=>{"use strict";var hA=Jb();Zb.exports=hA});var rg=m((TO,tg)=>{"use strict";var mA=eg();tg.exports=mA});var MA={};aS(MA,{ChromecastState:()=>ei,HttpConnectionType:()=>Ca,Observable:()=>gt.Observable,PlaybackState:()=>Ie,Player:()=>ka,SDK_VERSION:()=>LA,Subject:()=>gt.Subject,Subscription:()=>gt.Subscription,Surface:()=>Va,VERSION:()=>Ys,ValueSubject:()=>gt.ValueSubject,VideoFormat:()=>It,VideoQuality:()=>gt.VideoQuality});module.exports=sS(MA);var Ys="2.0.123-dev.111b6d7e.0";var Ie=(a=>(a.STOPPED="stopped",a.READY="ready",a.PLAYING="playing",a.PAUSED="paused",a))(Ie||{}),It=(A=>(A.MPEG="MPEG",A.DASH="DASH",A.DASH_SEP="DASH_SEP",A.DASH_SEP_VK="DASH_SEP",A.DASH_WEBM="DASH_WEBM",A.DASH_WEBM_AV1="DASH_WEBM_AV1",A.DASH_STREAMS="DASH_STREAMS",A.DASH_WEBM_VK="DASH_WEBM",A.DASH_ONDEMAND="DASH_ONDEMAND",A.DASH_ONDEMAND_VK="DASH_ONDEMAND",A.DASH_LIVE="DASH_LIVE",A.DASH_LIVE_CMAF="DASH_LIVE_CMAF",A.DASH_LIVE_WEBM="DASH_LIVE_WEBM",A.HLS="HLS",A.HLS_ONDEMAND="HLS_ONDEMAND",A.HLS_JS="HLS",A.HLS_LIVE="HLS_LIVE",A.HLS_LIVE_CMAF="HLS_LIVE_CMAF",A.WEB_RTC_LIVE="WEB_RTC_LIVE",A))(It||{});var ei=(a=>(a.NOT_AVAILABLE="NOT_AVAILABLE",a.AVAILABLE="AVAILABLE",a.CONNECTING="CONNECTING",a.CONNECTED="CONNECTED",a))(ei||{}),Ca=(r=>(r.HTTP1="http1",r.HTTP2="http2",r.QUIC="quic",r))(Ca||{});var Va=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Va||{});var Yg=j(tt(),1);var F=require("@vkontakte/videoplayer-shared");var Dc=i=>new Promise((e,t)=>{let r=document.createElement("script");r.setAttribute("src",i),r.onload=()=>e(),r.onerror=a=>t(a),document.body.appendChild(r)});var Fa=class{constructor(e){this.connection$=new F.ValueSubject(void 0);this.castState$=new F.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new F.Subject;this.realCastState$=new F.ValueSubject("NOT_AVAILABLE");this.subscription=new F.Subscription;this.isDestroyed=!1;this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastInitializer");let t="chrome"in window;if(this.log({message:`[constructor] receiverApplicationId: ${this.params.receiverApplicationId}, isDisabled: ${this.params.isDisabled}, isSupported: ${t}`}),e.isDisabled||!t)return;let r=(0,F.isNonNullable)(window.chrome?.cast),a=!!window.__onGCastApiAvailable;r?this.initializeCastApi():(window.__onGCastApiAvailable=s=>{delete window.__onGCastApiAvailable,s&&!this.isDestroyed&&this.initializeCastApi()},a||Dc("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:F.ErrorCategory.NETWORK,message:"Script loading failed!"})))}connect(){cast.framework.CastContext.getInstance()?.requestSession()}disconnect(){cast.framework.CastContext.getInstance()?.getCurrentSession()?.endSession(!0)}stopMedia(){return new Promise((e,t)=>{cast.framework.CastContext.getInstance()?.getCurrentSession()?.getMediaSession()?.stop(new chrome.cast.media.StopRequest,e,t)})}toggleConnection(){(0,F.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,F.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,F.isNullable)(t)||e!==t.remotePlayer.isMuted&&t.remotePlayerController.muteOrUnmute()}destroy(){this.isDestroyed=!0,this.subscription.unsubscribe()}initListeners(){let e=new cast.framework.RemotePlayer,t=new cast.framework.RemotePlayerController(e),r=cast.framework.CastContext.getInstance();this.subscription.add((0,F.fromEvent)(r,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(a=>{switch(a.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=r.getCurrentSession()?.getMediaSession()?.media?.contentId;break;case cast.framework.SessionState.NO_SESSION:case cast.framework.SessionState.SESSION_ENDING:case cast.framework.SessionState.SESSION_ENDED:case cast.framework.SessionState.SESSION_START_FAILED:this.contentId=void 0;break;default:return(0,F.assertNever)(a.sessionState)}})).add((0,F.merge)((0,F.fromEvent)(r,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,F.tap)(a=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(a)}`})}),(0,F.map)(a=>a.castState)),(0,F.observableFrom)([r.getCastState()])).pipe((0,F.filterChanged)(),(0,F.map)(wy),(0,F.tap)(a=>{this.log({message:`realCastState$: ${a}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(a=>{let s=a==="CONNECTED",n=(0,F.isNonNullable)(this.connection$.getValue());if(s&&!n){let o=r.getCurrentSession();(0,F.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,F.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:o,castDevice:u}))}else!s&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(a==="CONNECTED"?(0,F.isNonNullable)(this.connection$.getValue())?"CONNECTED":"AVAILABLE":a)}))}initializeCastApi(){let e,t,r;try{e=cast.framework.CastContext.getInstance(),t=chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,r=chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED}catch{return}try{e.setOptions({receiverApplicationId:this.params.receiverApplicationId??t,autoJoinPolicy:r}),this.initListeners()}catch(a){this.errorEvent$.next({id:"ChromecastInitializer",category:F.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:a})}}},wy=i=>{switch(i){case cast.framework.CastState.NO_DEVICES_AVAILABLE:return"NOT_AVAILABLE";case cast.framework.CastState.NOT_CONNECTED:return"AVAILABLE";case cast.framework.CastState.CONNECTING:return"CONNECTING";case cast.framework.CastState.CONNECTED:return"CONNECTED";default:return(0,F.assertNever)(i)}};var Ou=j(tt(),1),Vg=j(Rr(),1),Og=j(Zn(),1);var $m=j(ms(),1);var Fo=require("@vkontakte/videoplayer-shared");var Se=(i,e=0,t=0)=>{switch(t){case 0:return i.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return i;let r=new URL(i);return r.searchParams.append("playback_shift",e.toFixed(0)),r.toString()}case 2:{let r=new URL(i);return!r.searchParams.get("offset_p")&&e===0?i:(r.searchParams.set("offset_p",e.toFixed(0)),r.toString())}default:(0,Fo.assertNever)(t)}return i},fs=(i,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(i);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(i);return Number(t.searchParams.get("offset_p")??0)}default:(0,Fo.assertNever)(e)}};var k=(i,e,t=!1)=>{let r=i.getTransition();(t||!r||r.to===e)&&i.setState(e)};var pt=require("@vkontakte/videoplayer-shared"),q=class{constructor(e){this.transitionStarted$=new pt.Subject;this.transitionEnded$=new pt.Subject;this.transitionUpdated$=new pt.Subject;this.forceChanged$=new pt.Subject;this.stateChangeStarted$=(0,pt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,pt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,r=this.state;this.transition=void 0,this.prevState=r,this.state=e,t?t.to===e?this.transitionEnded$.next(t):this.forceChanged$.next({from:t.from,to:e,canceledTransition:t}):this.forceChanged$.next({from:r,to:e,canceledTransition:t})}startTransitionTo(e){let t=this.transition,r=this.state;r===e||(0,pt.isNonNullable)(t)&&t.to===e||(this.prevState=r,this.state=e,t?(this.transition={from:t.from,to:e,canceledTransition:t},this.transitionUpdated$.next(this.transition)):(this.transition={from:r,to:e},this.transitionStarted$.next(this.transition)))}getTransition(){return this.transition}getState(){return this.state}getPrevState(){return this.prevState}};var wm=require("@vkontakte/videoplayer-shared"),Am=i=>{switch(i){case"MPEG":case"DASH":case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":case"HLS":case"HLS_ONDEMAND":return!1;case"DASH_LIVE":case"DASH_LIVE_CMAF":case"HLS_LIVE":case"HLS_LIVE_CMAF":case"DASH_LIVE_WEBM":case"WEB_RTC_LIVE":return!0;default:return(0,wm.assertNever)(i)}};var R=require("@vkontakte/videoplayer-shared");var VP=5,OP=5,BP=500,Rm=7e3,xi=class{constructor(e){this.subscription=new R.Subscription;this.loadMediaTimeoutSubscription=new R.Subscription;this.videoState=new q("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),r=this.params.desiredState.playbackState.getState(),a=this.params.desiredState.playbackState.getTransition(),s=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${r}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(s)};`}),r==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(a?.to!=="paused"&&s.state==="requested"&&e!=="stopped"){this.seek(s.position/1e3);return}switch(r){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}case"playing":{switch(e){case"playing":break;case"paused":this.videoState.startTransitionTo("playing"),this.params.connection.remotePlayerController.playOrPause();break;case"ready":this.videoState.startTransitionTo("playing"),this.params.connection.remotePlayerController.playOrPause();break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}case"paused":{switch(e){case"playing":this.videoState.startTransitionTo("paused"),this.params.connection.remotePlayerController.playOrPause();break;case"paused":break;case"ready":this.videoState.startTransitionTo("paused"),this.videoState.setState("paused");break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,R.assertNever)(e)}break}default:(0,R.assertNever)(r)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(Am(e.format)),this.params.output.isAudioAvailable$.next(!0),this.handleRemoteVolumeChange({volume:this.params.connection.remotePlayer.volumeLevel,muted:this.params.connection.remotePlayer.isMuted});let t=this.params.connection.session.getMediaSession();t&&this.restoreSession(t),this.subscribe()}destroy(){this.log({message:"[destroy]"}),this.subscription.unsubscribe()}subscribe(){this.subscription.add(this.loadMediaTimeoutSubscription);let e=new R.Subscription;this.subscription.add(e),this.subscription.add((0,R.merge)(this.videoState.stateChangeStarted$.pipe((0,R.map)(a=>`stateChangeStarted$ ${JSON.stringify(a)}`)),this.videoState.stateChangeEnded$.pipe((0,R.map)(a=>`stateChangeEnded$ ${JSON.stringify(a)}`))).subscribe(a=>this.log({message:`[videoState] ${a}`})));let t=(a,s)=>this.subscription.add(a.subscribe(s));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let a=new R.Subject;e.add(a.pipe((0,R.debounce)(BP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let o=n.value;this.params.output.position$.next(o),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(o-s)>VP)&&a.next(o),s=o})),e.add((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),a=>{this.logRemoteEvent(a),a.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),a=>{this.logRemoteEvent(a),a.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),a=>{this.logRemoteEvent(a);let{remotePlayer:s}=this.params.connection,n=a.value,o=this.params.output.isBuffering$.getValue(),u=n===chrome.cast.media.PlayerState.BUFFERING;switch(o!==u&&this.params.output.isBuffering$.next(u),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&s.duration-s.currentTime<OP&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),k(this.params.desiredState.playbackState,"stopped");break;case chrome.cast.media.PlayerState.PAUSED:{this.handleRemotePause();break}case chrome.cast.media.PlayerState.PLAYING:this.handleRemotePlay();break;case chrome.cast.media.PlayerState.BUFFERING:break;default:(0,R.assertNever)(n)}}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),a=>{this.logRemoteEvent(a),this.handleRemoteVolumeChange({volume:a.value})}),t((0,R.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),a=>{this.logRemoteEvent(a),this.handleRemoteVolumeChange({muted:a.value})});let r=(0,R.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,R.observableFrom)(["init"])).pipe((0,R.debounce)(0));t(r,this.syncPlayback)}restoreSession(e){this.log({message:"restoreSession"});let{remotePlayer:t}=this.params.connection;if(e.playerState!==chrome.cast.media.PlayerState.IDLE){t.isPaused?(this.videoState.setState("paused"),k(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),k(this.params.desiredState.playbackState,"playing"));let r=this.params.output.isLive$.getValue();this.params.output.duration$.next(r?0:t.duration),this.params.output.position$.next(r?0:t.currentTime),this.params.desiredState.seekState.setState({state:"none"})}}prepare(){let e=this.params.format;this.log({message:`[prepare] format: ${e}`});let t=this.createMediaInfo(e),r=this.createLoadRequest(t);this.loadMedia(r)}handleRemotePause(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="paused"||e==="playing")&&(this.videoState.setState("paused"),k(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),k(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&k(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){let t=this.params.output.volume$.getValue(),r={volume:e.volume??t.volume,muted:e.muted??t.muted};(r.volume!==t.volume||r.muted!==r.muted)&&this.params.output.volume$.next(r)}seek(e){this.params.output.willSeekEvent$.next();let{remotePlayer:t,remotePlayerController:r}=this.params.connection;t.currentTime=e,r.seek()}stop(){let{remotePlayerController:e}=this.params.connection;e.stop()}createMediaInfo(e){let t=this.params.source,r,a,s;switch(e){case"MPEG":{let l=t[e];(0,R.assertNonNullable)(l);let d=(0,R.getHighestQuality)(Object.keys(l));(0,R.assertNonNullable)(d);let c=l[d];(0,R.assertNonNullable)(c),r=c,a="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/x-mpegurl",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/dash+xml",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,R.assertNonNullable)(l),r=l.url,a="application/dash+xml",s=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,R.assertNonNullable)(l),r=Se(l.url),a="application/x-mpegurl",s=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let l="Unsupported format for Chromecast",d=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:R.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:d}),d}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,R.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??r,a);n.contentUrl=r,n.streamType=s,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return(0,R.isNonNullable)(o)&&(n.metadata.title=o),(0,R.isNonNullable)(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let r=this.params.desiredState.seekState.getState();return r.state==="applying"||r.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:r.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),r=new Promise((a,s)=>{this.loadMediaTimeoutSubscription.add((0,R.timeout)(Rm).subscribe(()=>s(`timeout(${Rm})`)))});(0,$m.default)(Promise.race([t,r]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},a=>{let s=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${a}`;this.log({message:s}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:R.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:a})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var eu=j(tt(),1);var jo=require("@vkontakte/videoplayer-shared");var Lm=require("@vkontakte/videoplayer-shared"),Mm=i=>{try{i.pause(),i.playbackRate=0,(0,Lm.clearVideoElement)(i),i.remove()}catch(e){console.error(e)}};var bs=require("@vkontakte/videoplayer-shared"),qo=class{constructor(){this.attribute="data-pool-reused"}get(e){return e.hasAttribute(this.attribute)}set(e,t){e.toggleAttribute(this.attribute,t)}delete(e){e.removeAttribute(this.attribute)}},Uo=window.WeakMap?new WeakMap:new qo,Ho=window.WeakMap?new WeakMap:new Map,_P=(i,e=20)=>{let t=0;return(0,bs.fromEvent)(i,"ratechange").subscribe(r=>{t++,t>=e&&(i.currentTime=i.currentTime,t=0)})},Pe=(i,{audioVideoSyncRate:e})=>{let t=i.querySelector("video"),r=!!t;t?(0,jo.clearVideoElement)(t):(t=document.createElement("video"),i.appendChild(t)),Uo.set(t,r);let a=new bs.Subscription;return a.add(_P(t,e)),Ho.set(t,a),t.setAttribute("crossorigin","anonymous"),t.setAttribute("playsinline","playsinline"),t.controls=!1,t.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),t},ke=i=>{Ho.get(i)?.unsubscribe(),Ho.delete(i);let t=Uo.get(i);Uo.delete(i),t?(0,jo.clearVideoElement)(i):Mm(i)};var Go=j(Nr(),1),$=require("@vkontakte/videoplayer-shared");var qt=require("@vkontakte/videoplayer-shared"),gs=(i,e,t,{equal:r=(n,o)=>n===o,changed$:a,onError:s}={})=>{let n=i.getState(),o=e(),u=(0,qt.isNullable)(a),l=new qt.Subscription;return a&&l.add(a.subscribe(d=>{let c=i.getState();r(d,c)&&i.setState(d)},s)),r(o,n)||(t(n),u&&i.setState(n)),l.add(i.stateChangeStarted$.subscribe(d=>{t(d.to),u&&i.setState(d.to)},s)),l},ht=(i,e,t)=>gs(e,()=>i.loop,r=>{(0,qt.isNonNullable)(r)&&(i.loop=r)},{onError:t}),we=(i,e,t,r)=>gs(e,()=>({muted:i.muted,volume:i.volume}),a=>{(0,qt.isNonNullable)(a)&&(i.muted=a.muted,i.volume=a.volume)},{equal:(a,s)=>a===s||a?.muted===s?.muted&&a?.volume===s?.volume,changed$:t,onError:r}),Ue=(i,e,t,r)=>gs(e,()=>i.playbackRate,a=>{(0,qt.isNonNullable)(a)&&(i.playbackRate=a)},{changed$:t,onError:r}),Ut=gs;var jP=i=>["__",i.language,i.label].join("|"),GP=(i,e)=>{if(i.id===e)return!0;let[t,r,a]=e.split("|");return i.language===r&&i.label===a},Qo=class i{constructor(e){this.available$=new $.Subject;this.current$=new $.ValueSubject(void 0);this.error$=new $.Subject;this.subscription=new $.Subscription;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,r){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let a=s=>{this.error$.next({id:"TextTracksManager",category:$.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:s})};this.subscription.add(this.available$.subscribe(r.availableTextTracks$)),this.subscription.add(this.current$.subscribe(r.currentTextTrack$)),this.subscription.add(this.error$.subscribe(r.error$)),this.subscription.add(Ut(t.internalTextTracks,()=>(0,Go.default)(this.internalTracks),s=>{(0,$.isNonNullable)(s)&&this.setInternal(s)},{equal:(s,n)=>(0,$.isNonNullable)(s)&&(0,$.isNonNullable)(n)&&s.length===n.length&&s.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,$.map)(s=>s.filter(({type:n})=>n==="internal"))),onError:a})),this.subscription.add(Ut(t.externalTextTracks,()=>(0,Go.default)(this.externalTracks),s=>{(0,$.isNonNullable)(s)&&this.setExternal(s)},{equal:(s,n)=>(0,$.isNonNullable)(s)&&(0,$.isNonNullable)(n)&&s.length===n.length&&s.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,$.map)(s=>s.filter(({type:n})=>n==="external"))),onError:a})),this.subscription.add(Ut(t.currentTextTrack,()=>{if(this.video)return;let s=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return s&&this.htmlTextTrackToITextTrack(s).id},s=>this.select(s),{changed$:this.current$,onError:a})),this.subscription.add(Ut(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let s of this.htmlTextTracksAsArray())this.applyCueSettings(s.cues),this.applyCueSettings(s.activeCues)}))}subscribe(){(0,$.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,$.fromEvent)(e,"addtrack").subscribe(()=>{let r=this.current$.getValue();r&&this.select(r)})),this.subscription.add((0,$.merge)((0,$.fromEvent)(e,"addtrack"),(0,$.fromEvent)(e,"removetrack"),(0,$.observableFrom)(["init"])).pipe((0,$.map)(()=>this.htmlTextTracksAsArray().map(r=>this.htmlTextTrackToITextTrack(r))),(0,$.filterChanged)((r,a)=>r.length===a.length&&r.every(({id:s},n)=>s===a[n].id))).subscribe(this.available$)),this.subscription.add((0,$.merge)((0,$.fromEvent)(e,"change"),(0,$.observableFrom)(["init"])).pipe((0,$.map)(()=>this.htmlTextTracksAsArray().find(({mode:r})=>r==="showing")),(0,$.map)(r=>r&&this.htmlTextTrackToITextTrack(r).id),(0,$.filterChanged)()).subscribe(this.current$));let t=r=>this.applyCueSettings(r.target?.activeCues??null);this.subscription.add((0,$.fromEvent)(e,"addtrack").subscribe(r=>{r.track?.addEventListener("cuechange",t);let a=s=>{let n=s.target?.cues??null;n&&n.length&&(this.applyCueSettings(s.target?.cues??null),s.target?.removeEventListener("cuechange",a))};r.track?.addEventListener("cuechange",a)})),this.subscription.add((0,$.fromEvent)(e,"removetrack").subscribe(r=>{r.track?.removeEventListener("cuechange",t)}))}applyCueSettings(e){if(!e||!e.length)return;let t=this.cueSettings.getState();for(let r of Array.from(e)){let a=r;(0,$.isNonNullable)(t.align)&&(a.align=t.align),(0,$.isNonNullable)(t.position)&&(a.position=t.position),(0,$.isNonNullable)(t.size)&&(a.size=t.size),(0,$.isNonNullable)(t.line)&&(a.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,$.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(i.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:r}=e,a=e.id?e.id:jP(e),s=this.externalTracks.has(a),n=(s?this.externalTracks.get(a)?.isAuto:this.internalTracks.get(a)?.isAuto)??a.includes("auto");return s?{id:a,type:"external",isAuto:n,language:t,label:r,url:this.externalTracks.get(a)?.url}:{id:a,type:"internal",isAuto:n,language:t,label:r,url:this.internalTracks.get(a)?.url}}static isHealthyTrack(e){return!(e.kind==="metadata"||e.groupId||e.id===""&&e.label===""&&e.language==="")}setExternal(e){this.internalTracks.size>0&&Array.from(this.internalTracks).forEach(([,t])=>this.detach(t)),e.filter(({id:t})=>!this.externalTracks.has(t)).forEach(t=>this.attach(t)),Array.from(this.externalTracks).filter(([t])=>!e.find(r=>r.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:r,language:a,isAuto:s})=>!this.internalTracks.has(r)&&!t.some(([,n])=>n.language===a&&n.isAuto===s)).forEach(r=>this.attach(r)),Array.from(this.internalTracks).filter(([r])=>!e.find(a=>a.id===r)).forEach(([,r])=>this.detach(r))}select(e){(0,$.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,$.isNullable)(e)||!GP(t,e))&&(t.mode="disabled")}destroy(){if(this.subscription.unsubscribe(),this.video)for(let e of Array.from(this.video.getElementsByTagName("track"))){let t=e.getAttribute("id");t&&this.externalTracks.has(t)&&this.video.removeChild(e)}this.externalTracks.clear()}attach(e){(0,$.assertNonNullable)(this.video);let t=document.createElement("track");this.baseURL?t.setAttribute("src",new URL(e.url,this.baseURL).toString()):t.setAttribute("src",e.url),t.setAttribute("id",e.id),e.label&&t.setAttribute("label",e.label),e.language&&t.setAttribute("srclang",e.language),e.type==="external"?this.externalTracks.set(e.id,e):e.type==="internal"&&this.internalTracks.set(e.id,e),this.video.appendChild(t)}detach(e){(0,$.assertNonNullable)(this.video);let t=Array.prototype.find.call(this.video.getElementsByTagName("track"),r=>r.getAttribute("id")===e.id);t&&this.video.removeChild(t),e.type==="external"?this.externalTracks.delete(e.id):e.type==="internal"&&this.internalTracks.delete(e.id)}},He=Qo;var kt=class{constructor(){this.pausedTime=0;this.streamOffset=0;this.pauseTimestamp=0}getTotalPausedTime(){return this.pausedTime+this.getCurrentPausedTime()}getCurrentPausedTime(){return this.pauseTimestamp>0?Date.now()-this.pauseTimestamp:0}getStreamOffset(){return this.streamOffset}getTotalOffset(){return this.getTotalPausedTime()+this.streamOffset}pause(){this.pauseTimestamp===0&&(this.pauseTimestamp=Date.now())}resume(){this.pauseTimestamp>0&&(this.pausedTime+=this.getCurrentPausedTime(),this.pauseTimestamp=0)}resetTo(e,t=!1){this.streamOffset=e,this.pauseTimestamp=0,this.pausedTime=0,t&&this.pause()}};var Nm=i=>{let e=i;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Wo=i=>{let e=Nm(i);return!!(e&&e.fullscreenElement&&e.fullscreenElement===i)},Fm=i=>{let e=Nm(i);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===i)};var D=require("@vkontakte/videoplayer-shared");var QP=3,qm=(i,e,t=QP)=>{let r=0,a=0;for(let s=0;s<i.length;s++){let n=i.start(s),o=i.end(s);if(n<=e&&e<=o){if(r=n,a=o,!t)return{from:r,to:a};for(let u=s-1;u>=0;u--)i.end(u)+t>=r&&(r=i.start(u));for(let u=s+1;u<i.length;u++)i.start(u)-t<=a&&(a=i.end(u))}}return{from:r,to:a}};var Ae=i=>{let e=A=>(0,D.fromEvent)(i,A).pipe((0,D.mapTo)(void 0)),r=(0,D.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(A=>(0,D.fromEvent)(i,A))).pipe((0,D.map)(A=>A.type==="ended"?i.readyState<2:i.readyState<3),(0,D.filterChanged)()),a=(0,D.merge)((0,D.fromEvent)(i,"progress"),(0,D.fromEvent)(i,"timeupdate")).pipe((0,D.map)(()=>qm(i.buffered,i.currentTime))),s=D.clientChecker.isSafari?(0,D.combine)({play:e("play").pipe((0,D.once)()),playing:e("playing")}).pipe((0,D.mapTo)(void 0)):e("playing"),n=(0,D.fromEvent)(i,"volumechange").pipe((0,D.map)(()=>({muted:i.muted,volume:i.volume}))),o=(0,D.fromEvent)(i,"ratechange").pipe((0,D.map)(()=>i.playbackRate)),u=(0,D.fromEvent)(i,"error").pipe((0,D.filter)(()=>!!(i.error||i.played.length)),(0,D.map)(()=>{let A=i.error;return{id:A?`MediaError#${A.code}`:"HtmlVideoError",category:D.ErrorCategory.VIDEO_PIPELINE,message:A?A.message:"Error event from HTML video element",thrown:i.error??void 0}})),l=(0,D.fromEvent)(i,"timeupdate").pipe((0,D.map)(()=>i.currentTime)),d=new D.Subject,c=.3,h;l.subscribe(A=>{i.loop&&(0,D.isNonNullable)(h)&&(0,D.isNonNullable)(A)&&h>=i.duration-c&&A<=c&&d.next(h),h=A});let f=e("pause").pipe((0,D.filter)(()=>!i.error&&h!==i.duration)),b=(0,D.fromEvent)(i,"enterpictureinpicture"),S=(0,D.fromEvent)(i,"leavepictureinpicture"),y=new D.ValueSubject(Fm(i));b.subscribe(()=>y.next(!0)),S.subscribe(()=>y.next(!1));let I=new D.ValueSubject(Wo(i));return(0,D.fromEvent)(i,"fullscreenchange").pipe((0,D.map)(()=>Wo(i))).subscribe(I),{playing$:s,pause$:f,canplay$:e("canplay"),ended$:e("ended"),looped$:d,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,D.fromEvent)(i,"durationchange").pipe((0,D.map)(()=>i.duration)),isBuffering$:r,currentBuffer$:a,volumeState$:n,playbackRateState$:o,inPiP$:y,inFullscreen$:I,enterPip$:b,leavePip$:S}};var wt=require("@vkontakte/videoplayer-shared"),Ht=i=>{switch(i){case"mobile":return wt.VideoQuality.Q_144P;case"lowest":return wt.VideoQuality.Q_240P;case"low":return wt.VideoQuality.Q_360P;case"sd":case"medium":return wt.VideoQuality.Q_480P;case"hd":case"high":return wt.VideoQuality.Q_720P;case"fullhd":case"full":return wt.VideoQuality.Q_1080P;case"quadhd":case"quad":return wt.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return wt.VideoQuality.Q_2160P}};var jt=j(Fr(),1),Jm=j(tt(),1),Ss=j(Rr(),1),L=require("@vkontakte/videoplayer-shared");var Yo=!1,At={},Ym=i=>{Yo=i},zm=()=>{At={}},Km=i=>{i(At)},Pi=(i,e)=>{Yo&&(At.meta=At.meta??{},At.meta[i]=e)},Ee=class{constructor(e){this.name=e}next(e){if(!Yo)return;At.series=At.series??{};let t=At.series[this.name]??[];t.push([Date.now(),e]),At.series[this.name]=t}};var tk=new Ee("best_bitrate"),Zm=(i,e,t)=>(e-t)*Math.pow(2,-10*i)+t;var zo=i=>(e,t)=>i*(Number(e.bitrate)-Number(t.bitrate)),ki=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,L.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},ef='Assertion "ABR Tracks is empty array" failed',vs=(i,e,t,r)=>{let a=[...e].sort(zo(1)),s=[...t].sort(zo(1)),n=s.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(i.bitrate)?i.bitrate/u.bitrate>r:!0),o=(0,jt.default)(s,Math.round(s.length*a.indexOf(i)/(a.length+1)))??(0,jt.default)(s,-1);return o&&(0,Jm.default)(n,o)?o:n.length?(0,jt.default)(n,-1):(0,jt.default)(s,0)},Xm=i=>"quality"in i,tf=(i,e,t,r)=>{let a=(0,L.isNonNullable)(r?.last?.bitrate)&&(0,L.isNonNullable)(t?.bitrate)&&r.last.bitrate<t.bitrate?i.trackCooldownIncreaseQuality:i.trackCooldownDecreaseQuality,s=t&&r&&r.history[t.id]&&(0,L.now)()-r.history[t.id]<=a&&(!r.last||t.id!==r.last.id);if(t?.id&&r&&!s&&r.recordSelection(t),s&&r?.last){let n=r.last;r?.recordSwitch(n);let o=Xm(n)?"video":"audio",u=Xm(n)?n.quality:n.bitrate;return e({message:`
8
8
  [last ${o} selected] ${u}
9
9
  `}),n}return r?.recordSwitch(t),t},rk=(i,e)=>Math.log(e)/Math.log(i),Gt=(i,{container:e,estimatedThroughput:t,tuning:r,limits:a,reserve:s=0,forwardBufferHealth:n,playbackRate:o,current:u,history:l,visible:d,droppedVideoMaxQualityLimit:c,stallsVideoMaxQualityLimit:h,stallsPredictedThroughput:f,abrLogger:b})=>{(0,L.assertNotEmptyArray)(i,ef);let S=r.containerSizeFactor;if(r.usePixelRatio&&window.devicePixelRatio){let E=window.devicePixelRatio;if(r.pixelRatioMultiplier)S*=r.pixelRatioMultiplier*(E-1)+1;else{let w=r.pixelRatioLogBase,[te=0,Ce=0,We=0]=r.pixelRatioLogCoefficients,C=rk(w,te*E+Ce)+We;Number.isFinite(C)&&(S*=C)}}let y=r.limitByContainer&&e&&e.width>0&&e.height>0?{width:e.width*S,height:e.height*S}:void 0,I=r.considerPlaybackRate&&(0,L.isNonNullable)(o)?o:1,M=i.filter(E=>!(0,L.isInvariantQuality)(E.quality)).sort((E,w)=>(0,L.isHigher)(E.quality,w.quality)?-1:1),A=(0,jt.default)(M,-1)?.quality,V=(0,jt.default)(M,0)?.quality,x=(0,L.isNullable)(a)||(0,L.isNonNullable)(a.min)&&(0,L.isNonNullable)(a.max)&&(0,L.isLower)(a.max,a.min)||(0,L.isNonNullable)(a.min)&&V&&(0,L.isHigher)(a.min,V)||(0,L.isNonNullable)(a.max)&&A&&(0,L.isLower)(a.max,A),P=I*Zm(n??.5,r.bitrateFactorAtEmptyBuffer,r.bitrateFactorAtFullBuffer),G={},X=M.filter(E=>{let w=!0;if(y)if(E.size)w=E.size.width<=y.width&&E.size.height<=y.height;else{let re=y&&(0,L.videoSizeToQuality)(y);w=re?(0,L.isLowerOrEqual)(E.quality,re):!0}if(!w)return G[E.quality]="FitsContainer",!1;let te=f||t;if(!((0,L.isNonNullable)(te)&&isFinite(te)&&(0,L.isNonNullable)(E.bitrate)?te-s>=E.bitrate*P:!0))return G[E.quality]="FitsThroughput",!1;if(r.lazyQualitySwitch&&(0,L.isNonNullable)(r.minBufferToSwitchUp)&&u&&!(0,L.isInvariantQuality)(u.quality)&&(n??0)<r.minBufferToSwitchUp&&(0,L.isHigher)(E.quality,u.quality))return G[E.quality]="Buffer",!1;if(!!c&&(0,L.isHigherOrEqual)(E.quality,c))return G[E.quality]="DroppedFramesLimit",!1;if(!!h&&(0,L.isHigherOrEqual)(E.quality,h))return G[E.quality]="StallsLimit",!1;let K=x||((0,L.isNullable)(a.max)||(0,L.isLowerOrEqual)(E.quality,a.max))&&((0,L.isNullable)(a.min)||(0,L.isHigherOrEqual)(E.quality,a.min)),B=(0,L.isNonNullable)(d)&&!d?(0,L.isLowerOrEqual)(E.quality,r.backgroundVideoQualityLimit):!0;return!K||!B?(G[E.quality]="FitsQualityLimits",!1):!0})[0];X&&X.bitrate&&tk.next(X.bitrate);let ee=X??(0,jt.default)(M,-1)??i[0];return ee.quality!==l?.last?.quality&&b({message:`
10
10
  [VIDEO TRACKS ABR]