@vkontakte/videoplayer-core 2.0.135-beta.2 → 2.0.135-dev.02bf1429.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/es2015.cjs.js +13 -13
- package/es2015.esm.js +18 -18
- package/es2018.cjs.js +18 -18
- package/es2018.esm.js +17 -17
- package/es2024.cjs.js +3 -3
- package/es2024.esm.js +5 -5
- package/esnext.cjs.js +3 -3
- package/esnext.esm.js +5 -5
- package/evergreen.esm.js +3 -3
- package/package.json +2 -2
package/esnext.cjs.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vkontakte/videoplayer-core v2.0.135-
|
|
3
|
-
*
|
|
2
|
+
* @vkontakte/videoplayer-core v2.0.135-dev.02bf1429.0
|
|
3
|
+
* Tue, 08 Jul 2025 08:01:11 GMT
|
|
4
4
|
* https://st.mycdn.me/static/vkontakte-videoplayer/2-0-135/doc/
|
|
5
5
|
*/
|
|
6
6
|
"use strict";var my=Object.create;var Ga=Object.defineProperty;var by=Object.getOwnPropertyDescriptor;var gy=Object.getOwnPropertyNames;var Sy=Object.getPrototypeOf,vy=Object.prototype.hasOwnProperty;var b=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports),yy=(s,e)=>{for(var t in e)Ga(s,t,{get:e[t],enumerable:!0})},Uc=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of gy(e))!vy.call(s,r)&&r!==t&&Ga(s,r,{get:()=>e[r],enumerable:!(i=by(e,r))||i.enumerable});return s};var H=(s,e,t)=>(t=s!=null?my(Sy(s)):{},Uc(e||!s||!s.__esModule?Ga(t,"default",{value:s,enumerable:!0}):t,s)),Ty=s=>Uc(Ga({},"__esModule",{value:!0}),s);var De=b((Fo,qc)=>{"use strict";var Hr=function(s){return s&&s.Math===Math&&s};qc.exports=Hr(typeof globalThis=="object"&&globalThis)||Hr(typeof window=="object"&&window)||Hr(typeof self=="object"&&self)||Hr(typeof global=="object"&&global)||Hr(typeof Fo=="object"&&Fo)||function(){return this}()||Function("return this")()});var Qe=b((IL,jc)=>{"use strict";jc.exports=function(s){try{return!!s()}catch{return!0}}});var zr=b((xL,Hc)=>{"use strict";var Iy=Qe();Hc.exports=!Iy(function(){var s=function(){}.bind();return typeof s!="function"||s.hasOwnProperty("prototype")})});var No=b((EL,Wc)=>{"use strict";var xy=zr(),Gc=Function.prototype,zc=Gc.apply,Qc=Gc.call;Wc.exports=typeof Reflect=="object"&&Reflect.apply||(xy?Qc.bind(zc):function(){return Qc.apply(zc,arguments)})});var je=b((wL,Xc)=>{"use strict";var Yc=zr(),Kc=Function.prototype,Uo=Kc.call,Ey=Yc&&Kc.bind.bind(Uo,Uo);Xc.exports=Yc?Ey:function(s){return function(){return Uo.apply(s,arguments)}}});var Oi=b((AL,Zc)=>{"use strict";var Jc=je(),wy=Jc({}.toString),Ay=Jc("".slice);Zc.exports=function(s){return Ay(wy(s),8,-1)}});var qo=b((PL,ed)=>{"use strict";var Py=Oi(),ky=je();ed.exports=function(s){if(Py(s)==="Function")return ky(s)}});var Me=b((kL,td)=>{"use strict";var jo=typeof document=="object"&&document.all;td.exports=typeof jo>"u"&&jo!==void 0?function(s){return typeof s=="function"||s===jo}:function(s){return typeof s=="function"}});var yt=b((RL,id)=>{"use strict";var Ry=Qe();id.exports=!Ry(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Tt=b((ML,rd)=>{"use strict";var My=zr(),Ka=Function.prototype.call;rd.exports=My?Ka.bind(Ka):function(){return Ka.apply(Ka,arguments)}});var Ho=b(nd=>{"use strict";var sd={}.propertyIsEnumerable,ad=Object.getOwnPropertyDescriptor,Ly=ad&&!sd.call({1:2},1);nd.f=Ly?function(e){var t=ad(this,e);return!!t&&t.enumerable}:sd});var Qr=b((BL,od)=>{"use strict";od.exports=function(s,e){return{enumerable:!(s&1),configurable:!(s&2),writable:!(s&4),value:e}}});var ld=b(($L,ud)=>{"use strict";var By=je(),$y=Qe(),Dy=Oi(),zo=Object,Cy=By("".split);ud.exports=$y(function(){return!zo("z").propertyIsEnumerable(0)})?function(s){return Dy(s)==="String"?Cy(s,""):zo(s)}:zo});var sr=b((DL,cd)=>{"use strict";cd.exports=function(s){return s==null}});var Ii=b((CL,dd)=>{"use strict";var Vy=sr(),Oy=TypeError;dd.exports=function(s){if(Vy(s))throw new Oy("Can't call method on "+s);return s}});var _i=b((VL,pd)=>{"use strict";var _y=ld(),Fy=Ii();pd.exports=function(s){return _y(Fy(s))}});var It=b((OL,hd)=>{"use strict";var Ny=Me();hd.exports=function(s){return typeof s=="object"?s!==null:Ny(s)}});var ar=b((_L,fd)=>{"use strict";fd.exports={}});var oi=b((FL,bd)=>{"use strict";var Qo=ar(),Go=De(),Uy=Me(),md=function(s){return Uy(s)?s:void 0};bd.exports=function(s,e){return arguments.length<2?md(Qo[s])||md(Go[s]):Qo[s]&&Qo[s][e]||Go[s]&&Go[s][e]}});var Gr=b((NL,gd)=>{"use strict";var qy=je();gd.exports=qy({}.isPrototypeOf)});var Fi=b((UL,yd)=>{"use strict";var jy=De(),Sd=jy.navigator,vd=Sd&&Sd.userAgent;yd.exports=vd?String(vd):""});var Yo=b((qL,Ad)=>{"use strict";var wd=De(),Wo=Fi(),Td=wd.process,Id=wd.Deno,xd=Td&&Td.versions||Id&&Id.version,Ed=xd&&xd.v8,Ot,Xa;Ed&&(Ot=Ed.split("."),Xa=Ot[0]>0&&Ot[0]<4?1:+(Ot[0]+Ot[1]));!Xa&&Wo&&(Ot=Wo.match(/Edge\/(\d+)/),(!Ot||Ot[1]>=74)&&(Ot=Wo.match(/Chrome\/(\d+)/),Ot&&(Xa=+Ot[1])));Ad.exports=Xa});var Ko=b((jL,kd)=>{"use strict";var Pd=Yo(),Hy=Qe(),zy=De(),Qy=zy.String;kd.exports=!!Object.getOwnPropertySymbols&&!Hy(function(){var s=Symbol("symbol detection");return!Qy(s)||!(Object(s)instanceof Symbol)||!Symbol.sham&&Pd&&Pd<41})});var Xo=b((HL,Rd)=>{"use strict";var Gy=Ko();Rd.exports=Gy&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Jo=b((zL,Md)=>{"use strict";var Wy=oi(),Yy=Me(),Ky=Gr(),Xy=Xo(),Jy=Object;Md.exports=Xy?function(s){return typeof s=="symbol"}:function(s){var e=Wy("Symbol");return Yy(e)&&Ky(e.prototype,Jy(s))}});var Wr=b((QL,Ld)=>{"use strict";var Zy=String;Ld.exports=function(s){try{return Zy(s)}catch{return"Object"}}});var zt=b((GL,Bd)=>{"use strict";var eT=Me(),tT=Wr(),iT=TypeError;Bd.exports=function(s){if(eT(s))return s;throw new iT(tT(s)+" is not a function")}});var Yr=b((WL,$d)=>{"use strict";var rT=zt(),sT=sr();$d.exports=function(s,e){var t=s[e];return sT(t)?void 0:rT(t)}});var Cd=b((YL,Dd)=>{"use strict";var Zo=Tt(),eu=Me(),tu=It(),aT=TypeError;Dd.exports=function(s,e){var t,i;if(e==="string"&&eu(t=s.toString)&&!tu(i=Zo(t,s))||eu(t=s.valueOf)&&!tu(i=Zo(t,s))||e!=="string"&&eu(t=s.toString)&&!tu(i=Zo(t,s)))return i;throw new aT("Can't convert object to primitive value")}});var _t=b((KL,Vd)=>{"use strict";Vd.exports=!0});var Fd=b((XL,_d)=>{"use strict";var Od=De(),nT=Object.defineProperty;_d.exports=function(s,e){try{nT(Od,s,{value:e,configurable:!0,writable:!0})}catch{Od[s]=e}return e}});var Kr=b((JL,qd)=>{"use strict";var oT=_t(),uT=De(),lT=Fd(),Nd="__core-js_shared__",Ud=qd.exports=uT[Nd]||lT(Nd,{});(Ud.versions||(Ud.versions=[])).push({version:"3.38.0",mode:oT?"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 iu=b((ZL,Hd)=>{"use strict";var jd=Kr();Hd.exports=function(s,e){return jd[s]||(jd[s]=e||{})}});var nr=b((eB,zd)=>{"use strict";var cT=Ii(),dT=Object;zd.exports=function(s){return dT(cT(s))}});var Ft=b((tB,Qd)=>{"use strict";var pT=je(),hT=nr(),fT=pT({}.hasOwnProperty);Qd.exports=Object.hasOwn||function(e,t){return fT(hT(e),t)}});var ru=b((iB,Gd)=>{"use strict";var mT=je(),bT=0,gT=Math.random(),ST=mT(1 .toString);Gd.exports=function(s){return"Symbol("+(s===void 0?"":s)+")_"+ST(++bT+gT,36)}});var Ge=b((rB,Yd)=>{"use strict";var vT=De(),yT=iu(),Wd=Ft(),TT=ru(),IT=Ko(),xT=Xo(),or=vT.Symbol,su=yT("wks"),ET=xT?or.for||or:or&&or.withoutSetter||TT;Yd.exports=function(s){return Wd(su,s)||(su[s]=IT&&Wd(or,s)?or[s]:ET("Symbol."+s)),su[s]}});var Zd=b((sB,Jd)=>{"use strict";var wT=Tt(),Kd=It(),Xd=Jo(),AT=Yr(),PT=Cd(),kT=Ge(),RT=TypeError,MT=kT("toPrimitive");Jd.exports=function(s,e){if(!Kd(s)||Xd(s))return s;var t=AT(s,MT),i;if(t){if(e===void 0&&(e="default"),i=wT(t,s,e),!Kd(i)||Xd(i))return i;throw new RT("Can't convert object to primitive value")}return e===void 0&&(e="number"),PT(s,e)}});var au=b((aB,ep)=>{"use strict";var LT=Zd(),BT=Jo();ep.exports=function(s){var e=LT(s,"string");return BT(e)?e:e+""}});var Ja=b((nB,ip)=>{"use strict";var $T=De(),tp=It(),nu=$T.document,DT=tp(nu)&&tp(nu.createElement);ip.exports=function(s){return DT?nu.createElement(s):{}}});var ou=b((oB,rp)=>{"use strict";var CT=yt(),VT=Qe(),OT=Ja();rp.exports=!CT&&!VT(function(){return Object.defineProperty(OT("div"),"a",{get:function(){return 7}}).a!==7})});var np=b(ap=>{"use strict";var _T=yt(),FT=Tt(),NT=Ho(),UT=Qr(),qT=_i(),jT=au(),HT=Ft(),zT=ou(),sp=Object.getOwnPropertyDescriptor;ap.f=_T?sp:function(e,t){if(e=qT(e),t=jT(t),zT)try{return sp(e,t)}catch{}if(HT(e,t))return UT(!FT(NT.f,e,t),e[t])}});var uu=b((lB,op)=>{"use strict";var QT=Qe(),GT=Me(),WT=/#|\.prototype\./,Xr=function(s,e){var t=KT[YT(s)];return t===JT?!0:t===XT?!1:GT(e)?QT(e):!!e},YT=Xr.normalize=function(s){return String(s).replace(WT,".").toLowerCase()},KT=Xr.data={},XT=Xr.NATIVE="N",JT=Xr.POLYFILL="P";op.exports=Xr});var ur=b((cB,lp)=>{"use strict";var up=qo(),ZT=zt(),eI=zr(),tI=up(up.bind);lp.exports=function(s,e){return ZT(s),e===void 0?s:eI?tI(s,e):function(){return s.apply(e,arguments)}}});var lu=b((dB,cp)=>{"use strict";var iI=yt(),rI=Qe();cp.exports=iI&&rI(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var Qt=b((pB,dp)=>{"use strict";var sI=It(),aI=String,nI=TypeError;dp.exports=function(s){if(sI(s))return s;throw new nI(aI(s)+" is not an object")}});var Ni=b(hp=>{"use strict";var oI=yt(),uI=ou(),lI=lu(),Za=Qt(),pp=au(),cI=TypeError,cu=Object.defineProperty,dI=Object.getOwnPropertyDescriptor,du="enumerable",pu="configurable",hu="writable";hp.f=oI?lI?function(e,t,i){if(Za(e),t=pp(t),Za(i),typeof e=="function"&&t==="prototype"&&"value"in i&&hu in i&&!i[hu]){var r=dI(e,t);r&&r[hu]&&(e[t]=i.value,i={configurable:pu in i?i[pu]:r[pu],enumerable:du in i?i[du]:r[du],writable:!1})}return cu(e,t,i)}:cu:function(e,t,i){if(Za(e),t=pp(t),Za(i),uI)try{return cu(e,t,i)}catch{}if("get"in i||"set"in i)throw new cI("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var lr=b((fB,fp)=>{"use strict";var pI=yt(),hI=Ni(),fI=Qr();fp.exports=pI?function(s,e,t){return hI.f(s,e,fI(1,t))}:function(s,e,t){return s[e]=t,s}});var Oe=b((mB,bp)=>{"use strict";var Jr=De(),mI=No(),bI=qo(),gI=Me(),SI=np().f,vI=uu(),cr=ar(),yI=ur(),dr=lr(),mp=Ft();Kr();var TI=function(s){var e=function(t,i,r){if(this instanceof e){switch(arguments.length){case 0:return new s;case 1:return new s(t);case 2:return new s(t,i)}return new s(t,i,r)}return mI(s,this,arguments)};return e.prototype=s.prototype,e};bp.exports=function(s,e){var t=s.target,i=s.global,r=s.stat,a=s.proto,n=i?Jr:r?Jr[t]:Jr[t]&&Jr[t].prototype,o=i?cr:cr[t]||dr(cr,t,{})[t],u=o.prototype,l,d,c,p,h,m,g,v,T;for(p in e)l=vI(i?p:t+(r?".":"#")+p,s.forced),d=!l&&n&&mp(n,p),m=o[p],d&&(s.dontCallGetSet?(T=SI(n,p),g=T&&T.value):g=n[p]),h=d&&g?g:e[p],!(!l&&!a&&typeof m==typeof h)&&(s.bind&&d?v=yI(h,Jr):s.wrap&&d?v=TI(h):a&&gI(h)?v=bI(h):v=h,(s.sham||h&&h.sham||m&&m.sham)&&dr(v,"sham",!0),dr(o,p,v),a&&(c=t+"Prototype",mp(cr,c)||dr(cr,c,{}),dr(cr[c],p,h),s.real&&u&&(l||!u[p])&&dr(u,p,h)))}});var Sp=b((bB,gp)=>{"use strict";var II=Math.ceil,xI=Math.floor;gp.exports=Math.trunc||function(e){var t=+e;return(t>0?xI:II)(t)}});var Zr=b((gB,vp)=>{"use strict";var EI=Sp();vp.exports=function(s){var e=+s;return e!==e||e===0?0:EI(e)}});var Tp=b((SB,yp)=>{"use strict";var wI=Zr(),AI=Math.max,PI=Math.min;yp.exports=function(s,e){var t=wI(s);return t<0?AI(t+e,0):PI(t,e)}});var fu=b((vB,Ip)=>{"use strict";var kI=Zr(),RI=Math.min;Ip.exports=function(s){var e=kI(s);return e>0?RI(e,9007199254740991):0}});var pr=b((yB,xp)=>{"use strict";var MI=fu();xp.exports=function(s){return MI(s.length)}});var mu=b((TB,wp)=>{"use strict";var LI=_i(),BI=Tp(),$I=pr(),Ep=function(s){return function(e,t,i){var r=LI(e),a=$I(r);if(a===0)return!s&&-1;var n=BI(i,a),o;if(s&&t!==t){for(;a>n;)if(o=r[n++],o!==o)return!0}else for(;a>n;n++)if((s||n in r)&&r[n]===t)return s||n||0;return!s&&-1}};wp.exports={includes:Ep(!0),indexOf:Ep(!1)}});var es=b((IB,Ap)=>{"use strict";Ap.exports=function(){}});var Pp=b(()=>{"use strict";var DI=Oe(),CI=mu().includes,VI=Qe(),OI=es(),_I=VI(function(){return!Array(1).includes()});DI({target:"Array",proto:!0,forced:_I},{includes:function(e){return CI(this,e,arguments.length>1?arguments[1]:void 0)}});OI("includes")});var xi=b((wB,kp)=>{"use strict";var FI=oi();kp.exports=FI});var Mp=b((AB,Rp)=>{"use strict";Pp();var NI=xi();Rp.exports=NI("Array","includes")});var Bp=b((PB,Lp)=>{"use strict";var UI=Mp();Lp.exports=UI});var xt=b((kB,$p)=>{"use strict";var qI=Bp();$p.exports=qI});var tn=b((FB,Vp)=>{"use strict";var HI=iu(),zI=ru(),Cp=HI("keys");Vp.exports=function(s){return Cp[s]||(Cp[s]=zI(s))}});var _p=b((NB,Op)=>{"use strict";var QI=Qe();Op.exports=!QI(function(){function s(){}return s.prototype.constructor=null,Object.getPrototypeOf(new s)!==s.prototype})});var rn=b((UB,Np)=>{"use strict";var GI=Ft(),WI=Me(),YI=nr(),KI=tn(),XI=_p(),Fp=KI("IE_PROTO"),bu=Object,JI=bu.prototype;Np.exports=XI?bu.getPrototypeOf:function(s){var e=YI(s);if(GI(e,Fp))return e[Fp];var t=e.constructor;return WI(t)&&e instanceof t?t.prototype:e instanceof bu?JI:null}});var sn=b((qB,Up)=>{"use strict";Up.exports={}});var Hp=b((jB,jp)=>{"use strict";var ZI=je(),gu=Ft(),ex=_i(),tx=mu().indexOf,ix=sn(),qp=ZI([].push);jp.exports=function(s,e){var t=ex(s),i=0,r=[],a;for(a in t)!gu(ix,a)&&gu(t,a)&&qp(r,a);for(;e.length>i;)gu(t,a=e[i++])&&(~tx(r,a)||qp(r,a));return r}});var Su=b((HB,zp)=>{"use strict";zp.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var vu=b((zB,Qp)=>{"use strict";var rx=Hp(),sx=Su();Qp.exports=Object.keys||function(e){return rx(e,sx)}});var yu=b((QB,Xp)=>{"use strict";var Wp=yt(),ax=Qe(),Yp=je(),nx=rn(),ox=vu(),ux=_i(),lx=Ho().f,Kp=Yp(lx),cx=Yp([].push),dx=Wp&&ax(function(){var s=Object.create(null);return s[2]=2,!Kp(s,2)}),Gp=function(s){return function(e){for(var t=ux(e),i=ox(t),r=dx&&nx(t)===null,a=i.length,n=0,o=[],u;a>n;)u=i[n++],(!Wp||(r?u in t:Kp(t,u)))&&cx(o,s?[u,t[u]]:t[u]);return o}};Xp.exports={entries:Gp(!0),values:Gp(!1)}});var Jp=b(()=>{"use strict";var px=Oe(),hx=yu().entries;px({target:"Object",stat:!0},{entries:function(e){return hx(e)}})});var eh=b((YB,Zp)=>{"use strict";Jp();var fx=ar();Zp.exports=fx.Object.entries});var ih=b((KB,th)=>{"use strict";var mx=eh();th.exports=mx});var Ui=b((XB,rh)=>{"use strict";var bx=ih();rh.exports=bx});var qi=b((JB,sh)=>{"use strict";sh.exports={}});var oh=b((ZB,nh)=>{"use strict";var gx=De(),Sx=Me(),ah=gx.WeakMap;nh.exports=Sx(ah)&&/native code/.test(String(ah))});var Eu=b((e$,ch)=>{"use strict";var vx=oh(),lh=De(),yx=It(),Tx=lr(),Tu=Ft(),Iu=Kr(),Ix=tn(),xx=sn(),uh="Object already initialized",xu=lh.TypeError,Ex=lh.WeakMap,an,ts,nn,wx=function(s){return nn(s)?ts(s):an(s,{})},Ax=function(s){return function(e){var t;if(!yx(e)||(t=ts(e)).type!==s)throw new xu("Incompatible receiver, "+s+" required");return t}};vx||Iu.state?(Nt=Iu.state||(Iu.state=new Ex),Nt.get=Nt.get,Nt.has=Nt.has,Nt.set=Nt.set,an=function(s,e){if(Nt.has(s))throw new xu(uh);return e.facade=s,Nt.set(s,e),e},ts=function(s){return Nt.get(s)||{}},nn=function(s){return Nt.has(s)}):(ji=Ix("state"),xx[ji]=!0,an=function(s,e){if(Tu(s,ji))throw new xu(uh);return e.facade=s,Tx(s,ji,e),e},ts=function(s){return Tu(s,ji)?s[ji]:{}},nn=function(s){return Tu(s,ji)});var Nt,ji;ch.exports={set:an,get:ts,has:nn,enforce:wx,getterFor:Ax}});var Pu=b((t$,ph)=>{"use strict";var wu=yt(),Px=Ft(),dh=Function.prototype,kx=wu&&Object.getOwnPropertyDescriptor,Au=Px(dh,"name"),Rx=Au&&function(){}.name==="something",Mx=Au&&(!wu||wu&&kx(dh,"name").configurable);ph.exports={EXISTS:Au,PROPER:Rx,CONFIGURABLE:Mx}});var fh=b(hh=>{"use strict";var Lx=yt(),Bx=lu(),$x=Ni(),Dx=Qt(),Cx=_i(),Vx=vu();hh.f=Lx&&!Bx?Object.defineProperties:function(e,t){Dx(e);for(var i=Cx(t),r=Vx(t),a=r.length,n=0,o;a>n;)$x.f(e,o=r[n++],i[o]);return e}});var ku=b((r$,mh)=>{"use strict";var Ox=oi();mh.exports=Ox("document","documentElement")});var Bu=b((s$,Ih)=>{"use strict";var _x=Qt(),Fx=fh(),bh=Su(),Nx=sn(),Ux=ku(),qx=Ja(),jx=tn(),gh=">",Sh="<",Mu="prototype",Lu="script",yh=jx("IE_PROTO"),Ru=function(){},Th=function(s){return Sh+Lu+gh+s+Sh+"/"+Lu+gh},vh=function(s){s.write(Th("")),s.close();var e=s.parentWindow.Object;return s=null,e},Hx=function(){var s=qx("iframe"),e="java"+Lu+":",t;return s.style.display="none",Ux.appendChild(s),s.src=String(e),t=s.contentWindow.document,t.open(),t.write(Th("document.F=Object")),t.close(),t.F},on,un=function(){try{on=new ActiveXObject("htmlfile")}catch{}un=typeof document<"u"?document.domain&&on?vh(on):Hx():vh(on);for(var s=bh.length;s--;)delete un[Mu][bh[s]];return un()};Nx[yh]=!0;Ih.exports=Object.create||function(e,t){var i;return e!==null?(Ru[Mu]=_x(e),i=new Ru,Ru[Mu]=null,i[yh]=e):i=un(),t===void 0?i:Fx.f(i,t)}});var hr=b((a$,xh)=>{"use strict";var zx=lr();xh.exports=function(s,e,t,i){return i&&i.enumerable?s[e]=t:zx(s,e,t),s}});var Vu=b((n$,Ah)=>{"use strict";var Qx=Qe(),Gx=Me(),Wx=It(),Yx=Bu(),Eh=rn(),Kx=hr(),Xx=Ge(),Jx=_t(),Cu=Xx("iterator"),wh=!1,ui,$u,Du;[].keys&&(Du=[].keys(),"next"in Du?($u=Eh(Eh(Du)),$u!==Object.prototype&&(ui=$u)):wh=!0);var Zx=!Wx(ui)||Qx(function(){var s={};return ui[Cu].call(s)!==s});Zx?ui={}:Jx&&(ui=Yx(ui));Gx(ui[Cu])||Kx(ui,Cu,function(){return this});Ah.exports={IteratorPrototype:ui,BUGGY_SAFARI_ITERATORS:wh}});var ln=b((o$,kh)=>{"use strict";var eE=Ge(),tE=eE("toStringTag"),Ph={};Ph[tE]="z";kh.exports=String(Ph)==="[object z]"});var is=b((u$,Rh)=>{"use strict";var iE=ln(),rE=Me(),cn=Oi(),sE=Ge(),aE=sE("toStringTag"),nE=Object,oE=cn(function(){return arguments}())==="Arguments",uE=function(s,e){try{return s[e]}catch{}};Rh.exports=iE?cn:function(s){var e,t,i;return s===void 0?"Undefined":s===null?"Null":typeof(t=uE(e=nE(s),aE))=="string"?t:oE?cn(e):(i=cn(e))==="Object"&&rE(e.callee)?"Arguments":i}});var Lh=b((l$,Mh)=>{"use strict";var lE=ln(),cE=is();Mh.exports=lE?{}.toString:function(){return"[object "+cE(this)+"]"}});var rs=b((c$,$h)=>{"use strict";var dE=ln(),pE=Ni().f,hE=lr(),fE=Ft(),mE=Lh(),bE=Ge(),Bh=bE("toStringTag");$h.exports=function(s,e,t,i){var r=t?s:s&&s.prototype;r&&(fE(r,Bh)||pE(r,Bh,{configurable:!0,value:e}),i&&!dE&&hE(r,"toString",mE))}});var Ch=b((d$,Dh)=>{"use strict";var gE=Vu().IteratorPrototype,SE=Bu(),vE=Qr(),yE=rs(),TE=qi(),IE=function(){return this};Dh.exports=function(s,e,t,i){var r=e+" Iterator";return s.prototype=SE(gE,{next:vE(+!i,t)}),yE(s,r,!1,!0),TE[r]=IE,s}});var Oh=b((p$,Vh)=>{"use strict";var xE=je(),EE=zt();Vh.exports=function(s,e,t){try{return xE(EE(Object.getOwnPropertyDescriptor(s,e)[t]))}catch{}}});var Fh=b((h$,_h)=>{"use strict";var wE=It();_h.exports=function(s){return wE(s)||s===null}});var Uh=b((f$,Nh)=>{"use strict";var AE=Fh(),PE=String,kE=TypeError;Nh.exports=function(s){if(AE(s))return s;throw new kE("Can't set "+PE(s)+" as a prototype")}});var Ou=b((m$,qh)=>{"use strict";var RE=Oh(),ME=It(),LE=Ii(),BE=Uh();qh.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var s=!1,e={},t;try{t=RE(Object.prototype,"__proto__","set"),t(e,[]),s=e instanceof Array}catch{}return function(r,a){return LE(r),BE(a),ME(r)&&(s?t(r,a):r.__proto__=a),r}}():void 0)});var Zh=b((b$,Jh)=>{"use strict";var $E=Oe(),DE=Tt(),dn=_t(),Kh=Pu(),CE=Me(),VE=Ch(),jh=rn(),Hh=Ou(),OE=rs(),_E=lr(),_u=hr(),FE=Ge(),zh=qi(),Xh=Vu(),NE=Kh.PROPER,UE=Kh.CONFIGURABLE,Qh=Xh.IteratorPrototype,pn=Xh.BUGGY_SAFARI_ITERATORS,ss=FE("iterator"),Gh="keys",as="values",Wh="entries",Yh=function(){return this};Jh.exports=function(s,e,t,i,r,a,n){VE(t,e,i);var o=function(T){if(T===r&&p)return p;if(!pn&&T&&T in d)return d[T];switch(T){case Gh:return function(){return new t(this,T)};case as:return function(){return new t(this,T)};case Wh:return function(){return new t(this,T)}}return function(){return new t(this)}},u=e+" Iterator",l=!1,d=s.prototype,c=d[ss]||d["@@iterator"]||r&&d[r],p=!pn&&c||o(r),h=e==="Array"&&d.entries||c,m,g,v;if(h&&(m=jh(h.call(new s)),m!==Object.prototype&&m.next&&(!dn&&jh(m)!==Qh&&(Hh?Hh(m,Qh):CE(m[ss])||_u(m,ss,Yh)),OE(m,u,!0,!0),dn&&(zh[u]=Yh))),NE&&r===as&&c&&c.name!==as&&(!dn&&UE?_E(d,"name",as):(l=!0,p=function(){return DE(c,this)})),r)if(g={values:o(as),keys:a?p:o(Gh),entries:o(Wh)},n)for(v in g)(pn||l||!(v in d))&&_u(d,v,g[v]);else $E({target:e,proto:!0,forced:pn||l},g);return(!dn||n)&&d[ss]!==p&&_u(d,ss,p,{name:r}),zh[e]=p,g}});var tf=b((g$,ef)=>{"use strict";ef.exports=function(s,e){return{value:s,done:e}}});var Nu=b((S$,of)=>{"use strict";var qE=_i(),Fu=es(),rf=qi(),af=Eu(),jE=Ni().f,HE=Zh(),hn=tf(),zE=_t(),QE=yt(),nf="Array Iterator",GE=af.set,WE=af.getterFor(nf);of.exports=HE(Array,"Array",function(s,e){GE(this,{type:nf,target:qE(s),index:0,kind:e})},function(){var s=WE(this),e=s.target,t=s.index++;if(!e||t>=e.length)return s.target=void 0,hn(void 0,!0);switch(s.kind){case"keys":return hn(t,!1);case"values":return hn(e[t],!1)}return hn([t,e[t]],!1)},"values");var sf=rf.Arguments=rf.Array;Fu("keys");Fu("values");Fu("entries");if(!zE&&QE&&sf.name!=="values")try{jE(sf,"name",{value:"values"})}catch{}});var lf=b((v$,uf)=>{"use strict";var YE=Ge(),KE=qi(),XE=YE("iterator"),JE=Array.prototype;uf.exports=function(s){return s!==void 0&&(KE.Array===s||JE[XE]===s)}});var Uu=b((y$,df)=>{"use strict";var ZE=is(),cf=Yr(),ew=sr(),tw=qi(),iw=Ge(),rw=iw("iterator");df.exports=function(s){if(!ew(s))return cf(s,rw)||cf(s,"@@iterator")||tw[ZE(s)]}});var hf=b((T$,pf)=>{"use strict";var sw=Tt(),aw=zt(),nw=Qt(),ow=Wr(),uw=Uu(),lw=TypeError;pf.exports=function(s,e){var t=arguments.length<2?uw(s):e;if(aw(t))return nw(sw(t,s));throw new lw(ow(s)+" is not iterable")}});var bf=b((I$,mf)=>{"use strict";var cw=Tt(),ff=Qt(),dw=Yr();mf.exports=function(s,e,t){var i,r;ff(s);try{if(i=dw(s,"return"),!i){if(e==="throw")throw t;return t}i=cw(i,s)}catch(a){r=!0,i=a}if(e==="throw")throw t;if(r)throw i;return ff(i),t}});var mn=b((x$,yf)=>{"use strict";var pw=ur(),hw=Tt(),fw=Qt(),mw=Wr(),bw=lf(),gw=pr(),gf=Gr(),Sw=hf(),vw=Uu(),Sf=bf(),yw=TypeError,fn=function(s,e){this.stopped=s,this.result=e},vf=fn.prototype;yf.exports=function(s,e,t){var i=t&&t.that,r=!!(t&&t.AS_ENTRIES),a=!!(t&&t.IS_RECORD),n=!!(t&&t.IS_ITERATOR),o=!!(t&&t.INTERRUPTED),u=pw(e,i),l,d,c,p,h,m,g,v=function(w){return l&&Sf(l,"normal",w),new fn(!0,w)},T=function(w){return r?(fw(w),o?u(w[0],w[1],v):u(w[0],w[1])):o?u(w,v):u(w)};if(a)l=s.iterator;else if(n)l=s;else{if(d=vw(s),!d)throw new yw(mw(s)+" is not iterable");if(bw(d)){for(c=0,p=gw(s);p>c;c++)if(h=T(s[c]),h&&gf(vf,h))return h;return new fn(!1)}l=Sw(s,d)}for(m=a?s.next:l.next;!(g=hw(m,l)).done;){try{h=T(g.value)}catch(w){Sf(l,"throw",w)}if(typeof h=="object"&&h&&gf(vf,h))return h}return new fn(!1)}});var If=b((E$,Tf)=>{"use strict";var Tw=yt(),Iw=Ni(),xw=Qr();Tf.exports=function(s,e,t){Tw?Iw.f(s,e,xw(0,t)):s[e]=t}});var xf=b(()=>{"use strict";var Ew=Oe(),ww=mn(),Aw=If();Ew({target:"Object",stat:!0},{fromEntries:function(e){var t={};return ww(e,function(i,r){Aw(t,i,r)},{AS_ENTRIES:!0}),t}})});var wf=b((P$,Ef)=>{"use strict";Nu();xf();var Pw=ar();Ef.exports=Pw.Object.fromEntries});var Pf=b((k$,Af)=>{"use strict";Af.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 Rf=b(()=>{"use strict";Nu();var kw=Pf(),Rw=De(),Mw=rs(),kf=qi();for(bn in kw)Mw(Rw[bn],bn),kf[bn]=kf.Array;var bn});var Lf=b((L$,Mf)=>{"use strict";var Lw=wf();Rf();Mf.exports=Lw});var qu=b((B$,Bf)=>{"use strict";var Bw=Lf();Bf.exports=Bw});var $f=b(()=>{"use strict"});var ju=b((C$,Df)=>{"use strict";var ns=De(),$w=Fi(),Dw=Oi(),gn=function(s){return $w.slice(0,s.length)===s};Df.exports=function(){return gn("Bun/")?"BUN":gn("Cloudflare-Workers")?"CLOUDFLARE":gn("Deno/")?"DENO":gn("Node.js/")?"NODE":ns.Bun&&typeof Bun.version=="string"?"BUN":ns.Deno&&typeof Deno.version=="object"?"DENO":Dw(ns.process)==="process"?"NODE":ns.window&&ns.document?"BROWSER":"REST"}()});var Sn=b((V$,Cf)=>{"use strict";var Cw=ju();Cf.exports=Cw==="NODE"});var Of=b((O$,Vf)=>{"use strict";var Vw=Ni();Vf.exports=function(s,e,t){return Vw.f(s,e,t)}});var Nf=b((_$,Ff)=>{"use strict";var Ow=oi(),_w=Of(),Fw=Ge(),Nw=yt(),_f=Fw("species");Ff.exports=function(s){var e=Ow(s);Nw&&e&&!e[_f]&&_w(e,_f,{configurable:!0,get:function(){return this}})}});var qf=b((F$,Uf)=>{"use strict";var Uw=Gr(),qw=TypeError;Uf.exports=function(s,e){if(Uw(e,s))return s;throw new qw("Incorrect invocation")}});var zu=b((N$,jf)=>{"use strict";var jw=je(),Hw=Me(),Hu=Kr(),zw=jw(Function.toString);Hw(Hu.inspectSource)||(Hu.inspectSource=function(s){return zw(s)});jf.exports=Hu.inspectSource});var Gu=b((U$,Wf)=>{"use strict";var Qw=je(),Gw=Qe(),Hf=Me(),Ww=is(),Yw=oi(),Kw=zu(),zf=function(){},Qf=Yw("Reflect","construct"),Qu=/^\s*(?:class|function)\b/,Xw=Qw(Qu.exec),Jw=!Qu.test(zf),os=function(e){if(!Hf(e))return!1;try{return Qf(zf,[],e),!0}catch{return!1}},Gf=function(e){if(!Hf(e))return!1;switch(Ww(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Jw||!!Xw(Qu,Kw(e))}catch{return!0}};Gf.sham=!0;Wf.exports=!Qf||Gw(function(){var s;return os(os.call)||!os(Object)||!os(function(){s=!0})||s})?Gf:os});var Kf=b((q$,Yf)=>{"use strict";var Zw=Gu(),eA=Wr(),tA=TypeError;Yf.exports=function(s){if(Zw(s))return s;throw new tA(eA(s)+" is not a constructor")}});var Wu=b((j$,Jf)=>{"use strict";var Xf=Qt(),iA=Kf(),rA=sr(),sA=Ge(),aA=sA("species");Jf.exports=function(s,e){var t=Xf(s).constructor,i;return t===void 0||rA(i=Xf(t)[aA])?e:iA(i)}});var em=b((H$,Zf)=>{"use strict";var nA=je();Zf.exports=nA([].slice)});var im=b((z$,tm)=>{"use strict";var oA=TypeError;tm.exports=function(s,e){if(s<e)throw new oA("Not enough arguments");return s}});var Yu=b((Q$,rm)=>{"use strict";var uA=Fi();rm.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(uA)});var sl=b((G$,pm)=>{"use strict";var Et=De(),lA=No(),cA=ur(),sm=Me(),dA=Ft(),dm=Qe(),am=ku(),pA=em(),nm=Ja(),hA=im(),fA=Yu(),mA=Sn(),tl=Et.setImmediate,il=Et.clearImmediate,bA=Et.process,Ku=Et.Dispatch,gA=Et.Function,om=Et.MessageChannel,SA=Et.String,Xu=0,us={},um="onreadystatechange",ls,Hi,Ju,Zu;dm(function(){ls=Et.location});var rl=function(s){if(dA(us,s)){var e=us[s];delete us[s],e()}},el=function(s){return function(){rl(s)}},lm=function(s){rl(s.data)},cm=function(s){Et.postMessage(SA(s),ls.protocol+"//"+ls.host)};(!tl||!il)&&(tl=function(e){hA(arguments.length,1);var t=sm(e)?e:gA(e),i=pA(arguments,1);return us[++Xu]=function(){lA(t,void 0,i)},Hi(Xu),Xu},il=function(e){delete us[e]},mA?Hi=function(s){bA.nextTick(el(s))}:Ku&&Ku.now?Hi=function(s){Ku.now(el(s))}:om&&!fA?(Ju=new om,Zu=Ju.port2,Ju.port1.onmessage=lm,Hi=cA(Zu.postMessage,Zu)):Et.addEventListener&&sm(Et.postMessage)&&!Et.importScripts&&ls&&ls.protocol!=="file:"&&!dm(cm)?(Hi=cm,Et.addEventListener("message",lm,!1)):um in nm("script")?Hi=function(s){am.appendChild(nm("script"))[um]=function(){am.removeChild(this),rl(s)}}:Hi=function(s){setTimeout(el(s),0)});pm.exports={set:tl,clear:il}});var mm=b((W$,fm)=>{"use strict";var hm=De(),vA=yt(),yA=Object.getOwnPropertyDescriptor;fm.exports=function(s){if(!vA)return hm[s];var e=yA(hm,s);return e&&e.value}});var al=b((Y$,gm)=>{"use strict";var bm=function(){this.head=null,this.tail=null};bm.prototype={add:function(s){var e={item:s,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var s=this.head;if(s){var e=this.head=s.next;return e===null&&(this.tail=null),s.item}}};gm.exports=bm});var vm=b((K$,Sm)=>{"use strict";var TA=Fi();Sm.exports=/ipad|iphone|ipod/i.test(TA)&&typeof Pebble<"u"});var Tm=b((X$,ym)=>{"use strict";var IA=Fi();ym.exports=/web0s(?!.*chrome)/i.test(IA)});var km=b((J$,Pm)=>{"use strict";var mr=De(),xA=mm(),Im=ur(),nl=sl().set,EA=al(),wA=Yu(),AA=vm(),PA=Tm(),ol=Sn(),xm=mr.MutationObserver||mr.WebKitMutationObserver,Em=mr.document,wm=mr.process,vn=mr.Promise,cl=xA("queueMicrotask"),fr,ul,ll,yn,Am;cl||(cs=new EA,ds=function(){var s,e;for(ol&&(s=wm.domain)&&s.exit();e=cs.get();)try{e()}catch(t){throw cs.head&&fr(),t}s&&s.enter()},!wA&&!ol&&!PA&&xm&&Em?(ul=!0,ll=Em.createTextNode(""),new xm(ds).observe(ll,{characterData:!0}),fr=function(){ll.data=ul=!ul}):!AA&&vn&&vn.resolve?(yn=vn.resolve(void 0),yn.constructor=vn,Am=Im(yn.then,yn),fr=function(){Am(ds)}):ol?fr=function(){wm.nextTick(ds)}:(nl=Im(nl,mr),fr=function(){nl(ds)}),cl=function(s){cs.head||fr(),cs.add(s)});var cs,ds;Pm.exports=cl});var Mm=b((Z$,Rm)=>{"use strict";Rm.exports=function(s,e){try{arguments.length===1?console.error(s):console.error(s,e)}catch{}}});var Tn=b((eD,Lm)=>{"use strict";Lm.exports=function(s){try{return{error:!1,value:s()}}catch(e){return{error:!0,value:e}}}});var zi=b((tD,Bm)=>{"use strict";var kA=De();Bm.exports=kA.Promise});var br=b((iD,Vm)=>{"use strict";var RA=De(),ps=zi(),MA=Me(),LA=uu(),BA=zu(),$A=Ge(),$m=ju(),DA=_t(),dl=Yo(),Dm=ps&&ps.prototype,CA=$A("species"),pl=!1,Cm=MA(RA.PromiseRejectionEvent),VA=LA("Promise",function(){var s=BA(ps),e=s!==String(ps);if(!e&&dl===66||DA&&!(Dm.catch&&Dm.finally))return!0;if(!dl||dl<51||!/native code/.test(s)){var t=new ps(function(a){a(1)}),i=function(a){a(function(){},function(){})},r=t.constructor={};if(r[CA]=i,pl=t.then(function(){})instanceof i,!pl)return!0}return!e&&($m==="BROWSER"||$m==="DENO")&&!Cm});Vm.exports={CONSTRUCTOR:VA,REJECTION_EVENT:Cm,SUBCLASSING:pl}});var gr=b((rD,_m)=>{"use strict";var Om=zt(),OA=TypeError,_A=function(s){var e,t;this.promise=new s(function(i,r){if(e!==void 0||t!==void 0)throw new OA("Bad Promise constructor");e=i,t=r}),this.resolve=Om(e),this.reject=Om(t)};_m.exports.f=function(s){return new _A(s)}});var rb=b(()=>{"use strict";var FA=Oe(),NA=_t(),wn=Sn(),Ei=De(),Tr=Tt(),Fm=hr(),Nm=Ou(),UA=rs(),qA=Nf(),jA=zt(),En=Me(),HA=It(),zA=qf(),QA=Wu(),zm=sl().set,gl=km(),GA=Mm(),WA=Tn(),YA=al(),Qm=Eu(),An=zi(),Sl=br(),Gm=gr(),Pn="Promise",Wm=Sl.CONSTRUCTOR,KA=Sl.REJECTION_EVENT,XA=Sl.SUBCLASSING,hl=Qm.getterFor(Pn),JA=Qm.set,Sr=An&&An.prototype,Qi=An,In=Sr,Ym=Ei.TypeError,fl=Ei.document,vl=Ei.process,ml=Gm.f,ZA=ml,eP=!!(fl&&fl.createEvent&&Ei.dispatchEvent),Km="unhandledrejection",tP="rejectionhandled",Um=0,Xm=1,iP=2,yl=1,Jm=2,xn,qm,rP,jm,Zm=function(s){var e;return HA(s)&&En(e=s.then)?e:!1},eb=function(s,e){var t=e.value,i=e.state===Xm,r=i?s.ok:s.fail,a=s.resolve,n=s.reject,o=s.domain,u,l,d;try{r?(i||(e.rejection===Jm&&aP(e),e.rejection=yl),r===!0?u=t:(o&&o.enter(),u=r(t),o&&(o.exit(),d=!0)),u===s.promise?n(new Ym("Promise-chain cycle")):(l=Zm(u))?Tr(l,u,a,n):a(u)):n(t)}catch(c){o&&!d&&o.exit(),n(c)}},tb=function(s,e){s.notified||(s.notified=!0,gl(function(){for(var t=s.reactions,i;i=t.get();)eb(i,s);s.notified=!1,e&&!s.rejection&&sP(s)}))},ib=function(s,e,t){var i,r;eP?(i=fl.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(s,!1,!0),Ei.dispatchEvent(i)):i={promise:e,reason:t},!KA&&(r=Ei["on"+s])?r(i):s===Km&&GA("Unhandled promise rejection",t)},sP=function(s){Tr(zm,Ei,function(){var e=s.facade,t=s.value,i=Hm(s),r;if(i&&(r=WA(function(){wn?vl.emit("unhandledRejection",t,e):ib(Km,e,t)}),s.rejection=wn||Hm(s)?Jm:yl,r.error))throw r.value})},Hm=function(s){return s.rejection!==yl&&!s.parent},aP=function(s){Tr(zm,Ei,function(){var e=s.facade;wn?vl.emit("rejectionHandled",e):ib(tP,e,s.value)})},vr=function(s,e,t){return function(i){s(e,i,t)}},yr=function(s,e,t){s.done||(s.done=!0,t&&(s=t),s.value=e,s.state=iP,tb(s,!0))},bl=function(s,e,t){if(!s.done){s.done=!0,t&&(s=t);try{if(s.facade===e)throw new Ym("Promise can't be resolved itself");var i=Zm(e);i?gl(function(){var r={done:!1};try{Tr(i,e,vr(bl,r,s),vr(yr,r,s))}catch(a){yr(r,a,s)}}):(s.value=e,s.state=Xm,tb(s,!1))}catch(r){yr({done:!1},r,s)}}};if(Wm&&(Qi=function(e){zA(this,In),jA(e),Tr(xn,this);var t=hl(this);try{e(vr(bl,t),vr(yr,t))}catch(i){yr(t,i)}},In=Qi.prototype,xn=function(e){JA(this,{type:Pn,done:!1,notified:!1,parent:!1,reactions:new YA,rejection:!1,state:Um,value:void 0})},xn.prototype=Fm(In,"then",function(e,t){var i=hl(this),r=ml(QA(this,Qi));return i.parent=!0,r.ok=En(e)?e:!0,r.fail=En(t)&&t,r.domain=wn?vl.domain:void 0,i.state===Um?i.reactions.add(r):gl(function(){eb(r,i)}),r.promise}),qm=function(){var s=new xn,e=hl(s);this.promise=s,this.resolve=vr(bl,e),this.reject=vr(yr,e)},Gm.f=ml=function(s){return s===Qi||s===rP?new qm(s):ZA(s)},!NA&&En(An)&&Sr!==Object.prototype)){jm=Sr.then,XA||Fm(Sr,"then",function(e,t){var i=this;return new Qi(function(r,a){Tr(jm,i,r,a)}).then(e,t)},{unsafe:!0});try{delete Sr.constructor}catch{}Nm&&Nm(Sr,In)}FA({global:!0,constructor:!0,wrap:!0,forced:Wm},{Promise:Qi});UA(Qi,Pn,!1,!0);qA(Pn)});var ub=b((nD,ob)=>{"use strict";var nP=Ge(),ab=nP("iterator"),nb=!1;try{sb=0,Tl={next:function(){return{done:!!sb++}},return:function(){nb=!0}},Tl[ab]=function(){return this},Array.from(Tl,function(){throw 2})}catch{}var sb,Tl;ob.exports=function(s,e){try{if(!e&&!nb)return!1}catch{return!1}var t=!1;try{var i={};i[ab]=function(){return{next:function(){return{done:t=!0}}}},s(i)}catch{}return t}});var Il=b((oD,lb)=>{"use strict";var oP=zi(),uP=ub(),lP=br().CONSTRUCTOR;lb.exports=lP||!uP(function(s){oP.all(s).then(void 0,function(){})})});var cb=b(()=>{"use strict";var cP=Oe(),dP=Tt(),pP=zt(),hP=gr(),fP=Tn(),mP=mn(),bP=Il();cP({target:"Promise",stat:!0,forced:bP},{all:function(e){var t=this,i=hP.f(t),r=i.resolve,a=i.reject,n=fP(function(){var o=pP(t.resolve),u=[],l=0,d=1;mP(e,function(c){var p=l++,h=!1;d++,dP(o,t,c).then(function(m){h||(h=!0,u[p]=m,--d||r(u))},a)}),--d||r(u)});return n.error&&a(n.value),i.promise}})});var pb=b(()=>{"use strict";var gP=Oe(),SP=_t(),vP=br().CONSTRUCTOR,El=zi(),yP=oi(),TP=Me(),IP=hr(),db=El&&El.prototype;gP({target:"Promise",proto:!0,forced:vP,real:!0},{catch:function(s){return this.then(void 0,s)}});!SP&&TP(El)&&(xl=yP("Promise").prototype.catch,db.catch!==xl&&IP(db,"catch",xl,{unsafe:!0}));var xl});var hb=b(()=>{"use strict";var xP=Oe(),EP=Tt(),wP=zt(),AP=gr(),PP=Tn(),kP=mn(),RP=Il();xP({target:"Promise",stat:!0,forced:RP},{race:function(e){var t=this,i=AP.f(t),r=i.reject,a=PP(function(){var n=wP(t.resolve);kP(e,function(o){EP(n,t,o).then(i.resolve,r)})});return a.error&&r(a.value),i.promise}})});var fb=b(()=>{"use strict";var MP=Oe(),LP=gr(),BP=br().CONSTRUCTOR;MP({target:"Promise",stat:!0,forced:BP},{reject:function(e){var t=LP.f(this),i=t.reject;return i(e),t.promise}})});var wl=b((bD,mb)=>{"use strict";var $P=Qt(),DP=It(),CP=gr();mb.exports=function(s,e){if($P(s),DP(e)&&e.constructor===s)return e;var t=CP.f(s),i=t.resolve;return i(e),t.promise}});var Sb=b(()=>{"use strict";var VP=Oe(),OP=oi(),bb=_t(),_P=zi(),gb=br().CONSTRUCTOR,FP=wl(),NP=OP("Promise"),UP=bb&&!gb;VP({target:"Promise",stat:!0,forced:bb||gb},{resolve:function(e){return FP(UP&&this===NP?_P:this,e)}})});var vb=b(()=>{"use strict";rb();cb();pb();hb();fb();Sb()});var xb=b(()=>{"use strict";var qP=Oe(),jP=_t(),kn=zi(),HP=Qe(),Tb=oi(),Ib=Me(),zP=Wu(),yb=wl(),QP=hr(),Pl=kn&&kn.prototype,GP=!!kn&&HP(function(){Pl.finally.call({then:function(){}},function(){})});qP({target:"Promise",proto:!0,real:!0,forced:GP},{finally:function(s){var e=zP(this,Tb("Promise")),t=Ib(s);return this.then(t?function(i){return yb(e,s()).then(function(){return i})}:s,t?function(i){return yb(e,s()).then(function(){throw i})}:s)}});!jP&&Ib(kn)&&(Al=Tb("Promise").prototype.finally,Pl.finally!==Al&&QP(Pl,"finally",Al,{unsafe:!0}));var Al});var wb=b((xD,Eb)=>{"use strict";$f();vb();xb();var WP=xi();Eb.exports=WP("Promise","finally")});var Pb=b((ED,Ab)=>{"use strict";var YP=wb();Ab.exports=YP});var Rn=b((wD,kb)=>{"use strict";var KP=Pb();kb.exports=KP});var Cb=b(()=>{"use strict";var tk=Oe(),ik=yu().values;tk({target:"Object",stat:!0},{values:function(e){return ik(e)}})});var Ob=b((i0,Vb)=>{"use strict";Cb();var rk=ar();Vb.exports=rk.Object.values});var Fb=b((r0,_b)=>{"use strict";var sk=Ob();_b.exports=sk});var Gi=b((s0,Nb)=>{"use strict";var ak=Fb();Nb.exports=ak});var Xb=b(()=>{"use strict";var mk=Oe(),bk=nr(),gk=pr(),Sk=Zr(),vk=es();mk({target:"Array",proto:!0},{at:function(e){var t=bk(this),i=gk(t),r=Sk(e),a=r>=0?r:i+r;return a<0||a>=i?void 0:t[a]}});vk("at")});var Zb=b((uC,Jb)=>{"use strict";Xb();var yk=xi();Jb.exports=yk("Array","at")});var tg=b((lC,eg)=>{"use strict";var Tk=Zb();eg.exports=Tk});var Ut=b((cC,ig)=>{"use strict";var Ik=tg();ig.exports=Ik});var Ql=b((FV,Eg)=>{"use strict";var $k=Oi();Eg.exports=Array.isArray||function(e){return $k(e)==="Array"}});var Ag=b((NV,wg)=>{"use strict";var Dk=TypeError,Ck=9007199254740991;wg.exports=function(s){if(s>Ck)throw Dk("Maximum allowed index exceeded");return s}});var Rg=b((UV,kg)=>{"use strict";var Vk=Ql(),Ok=pr(),_k=Ag(),Fk=ur(),Pg=function(s,e,t,i,r,a,n,o){for(var u=r,l=0,d=n?Fk(n,o):!1,c,p;l<i;)l in t&&(c=d?d(t[l],l,e):t[l],a>0&&Vk(c)?(p=Ok(c),u=Pg(s,e,c,p,u,a-1)-1):(_k(u+1),s[u]=c),u++),l++;return u};kg.exports=Pg});var $g=b((qV,Bg)=>{"use strict";var Mg=Ql(),Nk=Gu(),Uk=It(),qk=Ge(),jk=qk("species"),Lg=Array;Bg.exports=function(s){var e;return Mg(s)&&(e=s.constructor,Nk(e)&&(e===Lg||Mg(e.prototype))?e=void 0:Uk(e)&&(e=e[jk],e===null&&(e=void 0))),e===void 0?Lg:e}});var Cg=b((jV,Dg)=>{"use strict";var Hk=$g();Dg.exports=function(s,e){return new(Hk(s))(e===0?0:e)}});var Vg=b(()=>{"use strict";var zk=Oe(),Qk=Rg(),Gk=zt(),Wk=nr(),Yk=pr(),Kk=Cg();zk({target:"Array",proto:!0},{flatMap:function(e){var t=Wk(this),i=Yk(t),r;return Gk(e),r=Kk(t,0),r.length=Qk(r,t,t,i,0,1,e,arguments.length>1?arguments[1]:void 0),r}})});var Og=b(()=>{"use strict";var Xk=es();Xk("flatMap")});var Fg=b((WV,_g)=>{"use strict";Vg();Og();var Jk=xi();_g.exports=Jk("Array","flatMap")});var Ug=b((YV,Ng)=>{"use strict";var Zk=Fg();Ng.exports=Zk});var ws=b((KV,qg)=>{"use strict";var eR=Ug();qg.exports=eR});var As=b((XV,jg)=>{"use strict";var tR=is(),iR=String;jg.exports=function(s){if(tR(s)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return iR(s)}});var Gl=b((JV,Hg)=>{"use strict";Hg.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 Gg=b((ZV,Qg)=>{"use strict";var rR=je(),sR=Ii(),aR=As(),Yl=Gl(),zg=rR("".replace),nR=RegExp("^["+Yl+"]+"),oR=RegExp("(^|[^"+Yl+"])["+Yl+"]+$"),Wl=function(s){return function(e){var t=aR(sR(e));return s&1&&(t=zg(t,nR,"")),s&2&&(t=zg(t,oR,"$1")),t}};Qg.exports={start:Wl(1),end:Wl(2),trim:Wl(3)}});var Xg=b((eO,Kg)=>{"use strict";var uR=Pu().PROPER,lR=Qe(),Wg=Gl(),Yg="\u200B\x85\u180E";Kg.exports=function(s){return lR(function(){return!!Wg[s]()||Yg[s]()!==Yg||uR&&Wg[s].name!==s})}});var Kl=b((tO,Jg)=>{"use strict";var cR=Gg().start,dR=Xg();Jg.exports=dR("trimStart")?function(){return cR(this)}:"".trimStart});var eS=b(()=>{"use strict";var pR=Oe(),Zg=Kl();pR({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Zg},{trimLeft:Zg})});var iS=b(()=>{"use strict";eS();var hR=Oe(),tS=Kl();hR({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==tS},{trimStart:tS})});var sS=b((nO,rS)=>{"use strict";iS();var fR=xi();rS.exports=fR("String","trimLeft")});var nS=b((oO,aS)=>{"use strict";var mR=sS();aS.exports=mR});var uS=b((uO,oS)=>{"use strict";var bR=nS();oS.exports=bR});var TS=b(()=>{"use strict"});var IS=b(()=>{"use strict"});var ES=b((_F,xS)=>{"use strict";var VR=It(),OR=Oi(),_R=Ge(),FR=_R("match");xS.exports=function(s){var e;return VR(s)&&((e=s[FR])!==void 0?!!e:OR(s)==="RegExp")}});var AS=b((FF,wS)=>{"use strict";var NR=Qt();wS.exports=function(){var s=NR(this),e="";return s.hasIndices&&(e+="d"),s.global&&(e+="g"),s.ignoreCase&&(e+="i"),s.multiline&&(e+="m"),s.dotAll&&(e+="s"),s.unicode&&(e+="u"),s.unicodeSets&&(e+="v"),s.sticky&&(e+="y"),e}});var RS=b((NF,kS)=>{"use strict";var UR=Tt(),qR=Ft(),jR=Gr(),HR=AS(),PS=RegExp.prototype;kS.exports=function(s){var e=s.flags;return e===void 0&&!("flags"in PS)&&!qR(s,"flags")&&jR(PS,s)?UR(HR,s):e}});var LS=b((UF,MS)=>{"use strict";var tc=je(),zR=nr(),QR=Math.floor,Zl=tc("".charAt),GR=tc("".replace),ec=tc("".slice),WR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,YR=/\$([$&'`]|\d{1,2})/g;MS.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=YR;return r!==void 0&&(r=zR(r),u=WR),GR(a,u,function(l,d){var c;switch(Zl(d,0)){case"$":return"$";case"&":return s;case"`":return ec(e,0,t);case"'":return ec(e,n);case"<":c=r[ec(d,1,-1)];break;default:var p=+d;if(p===0)return l;if(p>o){var h=QR(p/10);return h===0?l:h<=o?i[h-1]===void 0?Zl(d,1):i[h-1]+Zl(d,1):l}c=i[p-1]}return c===void 0?"":c})}});var DS=b(()=>{"use strict";var KR=Oe(),XR=Tt(),rc=je(),BS=Ii(),JR=Me(),ZR=sr(),eM=ES(),$r=As(),tM=Yr(),iM=RS(),rM=LS(),sM=Ge(),aM=_t(),nM=sM("replace"),oM=TypeError,ic=rc("".indexOf),uM=rc("".replace),$S=rc("".slice),lM=Math.max;KR({target:"String",proto:!0},{replaceAll:function(e,t){var i=BS(this),r,a,n,o,u,l,d,c,p,h,m=0,g="";if(!ZR(e)){if(r=eM(e),r&&(a=$r(BS(iM(e))),!~ic(a,"g")))throw new oM("`.replaceAll` does not allow non-global regexes");if(n=tM(e,nM),n)return XR(n,e,i,t);if(aM&&r)return uM($r(i),e,t)}for(o=$r(i),u=$r(e),l=JR(t),l||(t=$r(t)),d=u.length,c=lM(1,d),p=ic(o,u);p!==-1;)h=l?$r(t(u,p,o)):rM(u,o,p,[],void 0,t),g+=$S(o,m,p)+h,m=p+d,p=p+c>o.length?-1:ic(o,u,p+c);return m<o.length&&(g+=$S(o,m)),g}})});var VS=b((HF,CS)=>{"use strict";TS();IS();DS();var cM=xi();CS.exports=cM("String","replaceAll")});var _S=b((zF,OS)=>{"use strict";var dM=VS();OS.exports=dM});var sc=b((QF,FS)=>{"use strict";var pM=_S();FS.exports=pM});var US=b((GF,NS)=>{"use strict";var hM=Zr(),fM=As(),mM=Ii(),bM=RangeError;NS.exports=function(e){var t=fM(mM(this)),i="",r=hM(e);if(r<0||r===1/0)throw new bM("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var QS=b((WF,zS)=>{"use strict";var HS=je(),gM=fu(),qS=As(),SM=US(),vM=Ii(),yM=HS(SM),TM=HS("".slice),IM=Math.ceil,jS=function(s){return function(e,t,i){var r=qS(vM(e)),a=gM(t),n=r.length,o=i===void 0?" ":qS(i),u,l;return a<=n||o===""?r:(u=a-n,l=yM(o,IM(u/o.length)),l.length>u&&(l=TM(l,0,u)),s?r+l:l+r)}};zS.exports={start:jS(!1),end:jS(!0)}});var WS=b((YF,GS)=>{"use strict";var xM=Fi();GS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(xM)});var YS=b(()=>{"use strict";var EM=Oe(),wM=QS().start,AM=WS();EM({target:"String",proto:!0,forced:AM},{padStart:function(e){return wM(this,e,arguments.length>1?arguments[1]:void 0)}})});var XS=b((JF,KS)=>{"use strict";YS();var PM=xi();KS.exports=PM("String","padStart")});var ZS=b((ZF,JS)=>{"use strict";var kM=XS();JS.exports=kM});var ac=b((eN,ev)=>{"use strict";var RM=ZS();ev.exports=RM});var SL={};yy(SL,{ChromecastState:()=>qr,HttpConnectionType:()=>Wa,Observable:()=>Jt.Observable,PlaybackState:()=>et,Player:()=>Qa,PredefinedQualityLimits:()=>jr,SDK_VERSION:()=>gL,Subject:()=>Jt.Subject,Subscription:()=>Jt.Subscription,Surface:()=>Ya,VERSION:()=>_o,ValueSubject:()=>Jt.ValueSubject,VideoFormat:()=>Ht,VideoQuality:()=>Jt.VideoQuality,clientChecker:()=>W,isMobile:()=>Ir});module.exports=Ty(SL);var _o="2.0.135-beta.2";var et=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(et||{}),Ht=(x=>(x.MPEG="MPEG",x.DASH="DASH",x.DASH_SEP="DASH_SEP",x.DASH_SEP_VK="DASH_SEP",x.DASH_WEBM="DASH_WEBM",x.DASH_WEBM_AV1="DASH_WEBM_AV1",x.DASH_STREAMS="DASH_STREAMS",x.DASH_WEBM_VK="DASH_WEBM",x.DASH_ONDEMAND="DASH_ONDEMAND",x.DASH_ONDEMAND_VK="DASH_ONDEMAND",x.DASH_LIVE="DASH_LIVE",x.DASH_LIVE_CMAF="DASH_LIVE_CMAF",x.DASH_LIVE_WEBM="DASH_LIVE_WEBM",x.HLS="HLS",x.HLS_ONDEMAND="HLS_ONDEMAND",x.HLS_JS="HLS",x.HLS_LIVE="HLS_LIVE",x.HLS_LIVE_CMAF="HLS_LIVE_CMAF",x.WEB_RTC_LIVE="WEB_RTC_LIVE",x))(Ht||{});var qr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(qr||{}),Wa=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Wa||{});var Ya=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Ya||{}),jr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(jr||{});var fy=H(xt(),1);var te=require("@vkontakte/videoplayer-shared");var Dp=s=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",s),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var en=class{constructor(e){this.connection$=new te.ValueSubject(void 0);this.castState$=new te.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new te.Subject;this.realCastState$=new te.ValueSubject("NOT_AVAILABLE");this.subscription=new te.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 i=(0,te.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=a=>{delete window.__onGCastApiAvailable,a&&!this.isDestroyed&&this.initializeCastApi()},r||Dp("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:te.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,te.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,te.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,te.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),i=cast.framework.CastContext.getInstance();this.subscription.add((0,te.fromEvent)(i,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(r=>{switch(r.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=i.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,te.assertNever)(r.sessionState)}})).add((0,te.merge)((0,te.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,te.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,te.map)(r=>r.castState)),(0,te.observableFrom)([i.getCastState()])).pipe((0,te.filterChanged)(),(0,te.map)(jI),(0,te.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let a=r==="CONNECTED",n=(0,te.isNonNullable)(this.connection$.getValue());if(a&&!n){let o=i.getCurrentSession();(0,te.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,te.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:o,castDevice:u}))}else!a&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?(0,te.isNonNullable)(this.connection$.getValue())?"CONNECTED":"AVAILABLE":r)}))}initializeCastApi(){let e,t,i;try{e=cast.framework.CastContext.getInstance(),t=chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,i=chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED}catch{return}try{e.setOptions({receiverApplicationId:this.params.receiverApplicationId??t,autoJoinPolicy:i}),this.initListeners()}catch(r){this.errorEvent$.next({id:"ChromecastInitializer",category:te.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},jI=s=>{switch(s){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,te.assertNever)(s)}};var _c=H(xt(),1),ty=H(Ui(),1),iy=H(qu(),1);var Bb=H(Rn(),1);var kl=require("@vkontakte/videoplayer-shared");var Le=(s,e=0,t=0)=>{switch(t){case 0:return s.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return s;let i=new URL(s);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(s);return!i.searchParams.get("offset_p")&&e===0?s:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:(0,kl.assertNever)(t)}return s},wi=(s,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(s);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(s);return Number(t.searchParams.get("offset_p")??0)}default:(0,kl.assertNever)(e)}};var _=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};var Gt=require("@vkontakte/videoplayer-shared"),ie=class{constructor(e){this.transitionStarted$=new Gt.Subject;this.transitionEnded$=new Gt.Subject;this.transitionUpdated$=new Gt.Subject;this.forceChanged$=new Gt.Subject;this.stateChangeStarted$=(0,Gt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Gt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,i=this.state;this.transition=void 0,this.prevState=i,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:i,to:e,canceledTransition:t})}startTransitionTo(e){let t=this.transition,i=this.state;i===e||(0,Gt.isNonNullable)(t)&&t.to===e||(this.prevState=i,this.state=e,t?(this.transition={from:t.from,to:e,canceledTransition:t},this.transitionUpdated$.next(this.transition)):(this.transition={from:i,to:e},this.transitionStarted$.next(this.transition)))}getTransition(){return this.transition}getState(){return this.state}getPrevState(){return this.prevState}};var Rb=require("@vkontakte/videoplayer-shared"),Mb=s=>{switch(s){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,Rb.assertNever)(s)}};var q=require("@vkontakte/videoplayer-shared");var XP=5,JP=5,ZP=500,Lb=7e3,hs=class{constructor(e){this.subscription=new q.Subscription;this.loadMediaTimeoutSubscription=new q.Subscription;this.videoState=new ie("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),a=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${i}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(a)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(r?.to!=="paused"&&a.state==="requested"&&e!=="stopped"){this.seek(a.position/1e3);return}switch(i){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,q.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,q.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,q.assertNever)(e)}break}default:(0,q.assertNever)(i)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(Mb(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 q.Subscription;this.subscription.add(e),this.subscription.add((0,q.merge)(this.videoState.stateChangeStarted$.pipe((0,q.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,q.map)(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,a)=>this.subscription.add(r.subscribe(a));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new q.Subject;e.add(r.pipe((0,q.debounce)(ZP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add((0,q.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-a)>XP)&&r.next(o),a=o})),e.add((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:a}=this.params.connection,n=r.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()&&a.duration-a.currentTime<JP&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),_(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,q.assertNever)(n)}}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,q.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,q.observableFrom)(["init"])).pipe((0,q.debounce)(0));t(i,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"),_(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),_(this.params.desiredState.playbackState,"playing"));let i=this.params.output.isLive$.getValue();this.params.output.duration$.next(i?0:t.duration),this.params.output.position$.next(i?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),i=this.createLoadRequest(t);this.loadMedia(i)}handleRemotePause(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="paused"||e==="playing")&&(this.videoState.setState("paused"),_(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),_(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&_(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){let t=this.params.output.volume$.getValue(),i={volume:e.volume??t.volume,muted:e.muted??t.muted};(i.volume!==t.volume||i.muted!==i.muted)&&this.params.output.volume$.next(i)}seek(e){this.params.output.willSeekEvent$.next();let{remotePlayer:t,remotePlayerController:i}=this.params.connection;t.currentTime=e,i.seek()}stop(){let{remotePlayerController:e}=this.params.connection;e.stop()}createMediaInfo(e){let t=this.params.source,i,r,a;switch(e){case"MPEG":{let l=t[e];(0,q.assertNonNullable)(l);let d=(0,q.getHighestQuality)(Object.keys(l));(0,q.assertNonNullable)(d);let c=l[d];(0,q.assertNonNullable)(c),i=c,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,q.assertNonNullable)(l),i=l.url,r="application/x-mpegurl",a=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,q.assertNonNullable)(l),i=l.url,r="application/dash+xml",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,q.assertNonNullable)(l),i=l.url,r="application/dash+xml",a=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,q.assertNonNullable)(l),i=Le(l.url),r="application/x-mpegurl",a=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:q.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,q.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??i,r);n.contentUrl=i,n.streamType=a,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return(0,q.isNonNullable)(o)&&(n.metadata.title=o),(0,q.isNonNullable)(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let i=this.params.desiredState.seekState.getState();return i.state==="applying"||i.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:i.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),i=new Promise((r,a)=>{this.loadMediaTimeoutSubscription.add((0,q.timeout)(Lb).subscribe(()=>a(`timeout(${Lb})`)))});(0,Bb.default)(Promise.race([t,i]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},r=>{let a=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:a}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:q.ErrorCategory.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Hl=H(xt(),1);var Bl=require("@vkontakte/videoplayer-shared");var $b=require("@vkontakte/videoplayer-shared"),Db=s=>{try{s.pause(),s.playbackRate=0,(0,$b.clearVideoElement)(s),s.remove()}catch(e){console.error(e)}};var Mn=require("@vkontakte/videoplayer-shared"),Rl=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)}},Ml=window.WeakMap?new WeakMap:new Rl,Ll=window.WeakMap?new WeakMap:new Map,ek=(s,e=20)=>{let t=0;return(0,Mn.fromEvent)(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},at=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?(0,Bl.clearVideoElement)(i):(i=document.createElement("video"),s.appendChild(i)),Ml.set(i,r);let a=new Mn.Subscription;return a.add(ek(i,e)),Ll.set(i,a),i.setAttribute("crossorigin","anonymous"),i.setAttribute("playsinline","playsinline"),t&&i.setAttribute("x-yandex-pip","false"),i.controls=!1,i.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),i},nt=s=>{Ll.get(s)?.unsubscribe(),Ll.delete(s);let t=Ml.get(s);Ml.delete(s),t?(0,Bl.clearVideoElement)(s):Db(s)};var $l=H(Gi(),1),j=require("@vkontakte/videoplayer-shared");var Ai=require("@vkontakte/videoplayer-shared"),Ln=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=(0,Ai.isNullable)(r),l=new Ai.Subscription;return r&&l.add(r.subscribe(d=>{let c=s.getState();i(d,c)&&s.setState(d)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(d=>{t(d.to),u&&s.setState(d.to)},a)),l},Wt=(s,e,t)=>Ln(e,()=>s.loop,i=>{(0,Ai.isNonNullable)(i)&&(s.loop=i)},{onError:t}),ot=(s,e,t,i)=>Ln(e,()=>({muted:s.muted,volume:s.volume}),r=>{(0,Ai.isNonNullable)(r)&&(s.muted=r.muted,s.volume=r.volume)},{equal:(r,a)=>r===a||r?.muted===a?.muted&&r?.volume===a?.volume,changed$:t,onError:i}),kt=(s,e,t,i)=>Ln(e,()=>s.playbackRate,r=>{(0,Ai.isNonNullable)(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),fs=Ln;var nk=s=>["__",s.language,s.label].join("|"),ok=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},Dl=class s{constructor(e){this.available$=new j.Subject;this.current$=new j.ValueSubject(void 0);this.error$=new j.Subject;this.subscription=new j.Subscription;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,i){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let r=a=>{this.error$.next({id:"TextTracksManager",category:j.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:a})};this.subscription.add(this.available$.subscribe(i.availableTextTracks$)),this.subscription.add(this.current$.subscribe(i.currentTextTrack$)),this.subscription.add(this.error$.subscribe(i.error$)),this.subscription.add(fs(t.internalTextTracks,()=>(0,$l.default)(this.internalTracks),a=>{(0,j.isNonNullable)(a)&&this.setInternal(a)},{equal:(a,n)=>(0,j.isNonNullable)(a)&&(0,j.isNonNullable)(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,j.map)(a=>a.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(fs(t.externalTextTracks,()=>(0,$l.default)(this.externalTracks),a=>{(0,j.isNonNullable)(a)&&this.setExternal(a)},{equal:(a,n)=>(0,j.isNonNullable)(a)&&(0,j.isNonNullable)(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,j.map)(a=>a.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(fs(t.currentTextTrack,()=>{if(this.video)return;let a=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return a&&this.htmlTextTrackToITextTrack(a).id},a=>this.select(a),{changed$:this.current$,onError:r})),this.subscription.add(fs(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let a of this.htmlTextTracksAsArray())this.applyCueSettings(a.cues),this.applyCueSettings(a.activeCues)}))}subscribe(){(0,j.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,j.fromEvent)(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add((0,j.merge)((0,j.fromEvent)(e,"addtrack"),(0,j.fromEvent)(e,"removetrack"),(0,j.observableFrom)(["init"])).pipe((0,j.map)(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),(0,j.filterChanged)((i,r)=>i.length===r.length&&i.every(({id:a},n)=>a===r[n].id))).subscribe(this.available$)),this.subscription.add((0,j.merge)((0,j.fromEvent)(e,"change"),(0,j.observableFrom)(["init"])).pipe((0,j.map)(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),(0,j.map)(i=>i&&this.htmlTextTrackToITextTrack(i).id),(0,j.filterChanged)()).subscribe(this.current$));let t=i=>this.applyCueSettings(i.target?.activeCues??null);this.subscription.add((0,j.fromEvent)(e,"addtrack").subscribe(i=>{i.track?.addEventListener("cuechange",t);let r=a=>{let n=a.target?.cues??null;n&&n.length&&(this.applyCueSettings(a.target?.cues??null),a.target?.removeEventListener("cuechange",r))};i.track?.addEventListener("cuechange",r)})),this.subscription.add((0,j.fromEvent)(e,"removetrack").subscribe(i=>{i.track?.removeEventListener("cuechange",t)}))}applyCueSettings(e){if(!e||!e.length)return;let t=this.cueSettings.getState();for(let i of Array.from(e)){let r=i;(0,j.isNonNullable)(t.align)&&(r.align=t.align),(0,j.isNonNullable)(t.position)&&(r.position=t.position),(0,j.isNonNullable)(t.size)&&(r.size=t.size),(0,j.isNonNullable)(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,j.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(s.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:i}=e,r=e.id?e.id:nk(e),a=this.externalTracks.has(r),n=(a?this.externalTracks.get(r)?.isAuto:this.internalTracks.get(r)?.isAuto)??r.includes("auto");return a?{id:r,type:"external",isAuto:n,language:t,label:i,url:this.externalTracks.get(r)?.url}:{id:r,type:"internal",isAuto:n,language:t,label:i,url:this.internalTracks.get(r)?.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(i=>i.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:i,language:r,isAuto:a})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===a)).forEach(i=>this.attach(i)),Array.from(this.internalTracks).filter(([i])=>!e.find(r=>r.id===i)).forEach(([,i])=>this.detach(i))}select(e){(0,j.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,j.isNullable)(e)||!ok(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,j.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,j.assertNonNullable)(this.video);let t=Array.prototype.find.call(this.video.getElementsByTagName("track"),i=>i.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)}},Rt=Dl;var Wi=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 Ub=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Cl=s=>{let e=Ub(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},qb=s=>{let e=Ub(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};var O=require("@vkontakte/videoplayer-shared");var uk=3,jb=(s,e,t=uk)=>{let i=0,r=0;for(let a=0;a<s.length;a++){let n=s.start(a),o=s.end(a);if(n<=e&&e<=o){if(i=n,r=o,!t)return{from:i,to:r};for(let u=a-1;u>=0;u--)s.end(u)+t>=i&&(i=s.start(u));for(let u=a+1;u<s.length;u++)s.start(u)-t<=r&&(r=s.end(u))}}return{from:i,to:r}};var Bn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,a=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,o=/webkit|safari|khtml/i.test(e)?"Safari":void 0,u=/opr\//i.test(e)?"Opera":void 0,l=/edg/i.test(e)?"Edge":void 0;this._isMiuiBrowser=/(XiaoMi)|(MiuiBrowser)/i.test(e),this._current=t||i||n||u||l||r||a||o||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],a=parseInt(r,10);if(!isNaN(a))return this._current_version=a,a}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var Hb=H(xt(),1);var Ir=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var $n=class{constructor(e){this._highEntropyValues={};this._displayChecker=e}get current(){return this._current}get isIOS(){let e=["iPhone","iPad","iPod"];return this._highEntropyValues.platform==="iOS"||(0,Hb.default)(e,this.current)}get isMac(){return this._highEntropyValues.platform==="macOS"||this.current==="Mac"}get isApple(){return this.isIOS||this.isMac}get isIphoneOrOldIpad(){if(!this.isApple||!this._displayChecker.isTouch)return!1;let e=this.current==="iPad"||this._displayChecker.width>700,t=this._iosVersion;return!e||e&&!!t&&t<16}get isAndroid(){return this._highEntropyValues.platform==="Android"||this.current==="Android"}get isMobile(){return this._highEntropyValues.mobile||this._isMobile}get iOSVersion(){return this._iosVersion}detect(){let{userAgent:e}=navigator;try{this._isMobile=Ir()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e?.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,a=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,o=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||a||o||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let a=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(a);this._iosVersion=n;return}let{userAgent:e}=window.navigator,t=e.match(/OS (\d+(_\d+)?)/i);if(!t)return;let i=t[1].replace(/_/g,".");if(!i)return;let r=parseFloat(i);if(isNaN(r))return;this._iosVersion=r}catch(e){console.error(e)}}};var Dn=class{get isTouch(){return typeof this._maxTouchPoints=="number"?this._maxTouchPoints>1:"ontouchstart"in window}get maxTouchPoints(){return this._maxTouchPoints}get height(){return this._height}get width(){return this._width}get screenHeight(){return this._screenHeight}get screenWidth(){return this._screenWidth}get pixelRatio(){return this._pixelRatio}get isHDR(){return this._isHdr}get colorDepth(){return this._colorDepth}detect(){let{maxTouchPoints:e}=navigator;try{this._maxTouchPoints=e??0,this._isHdr=!!matchMedia("(dynamic-range: high)")?.matches,this._colorDepth=screen.colorDepth}catch(t){console.error(t)}try{this._pixelRatio=window.devicePixelRatio||1,this._height=screen.height,this._width=screen.width,this._height=screen.height,this._screenHeight=this._height*this._pixelRatio,this._screenWidth=this._width*this._pixelRatio}catch(t){console.error(t)}}};var wt=()=>window.ManagedMediaSource||window.MediaSource,xr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),zb=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Cn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var lk=document.createElement("video"),ck='video/mp4; codecs="avc1.42000a,mp4a.40.2"',dk='video/mp4; codecs="hev1.1.6.L93.B0"',Qb='video/webm; codecs="vp09.00.10.08"',Gb='video/webm; codecs="av01.0.00M.08"',pk='audio/mp4; codecs="mp4a.40.2"',hk='audio/webm; codecs="opus"',Wb,fk=async()=>{if(!window.navigator.mediaCapabilities)return;let s={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Gb}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Qb}})]);Wb={DASH_WEBM_AV1:e,DASH_WEBM:t}};fk().catch(s=>{console.log(lk),console.error(s)});var Vn=class{constructor(e,t){this._deviceChecker=e,this._browserChecker=t}get protocols(){return this._protocols}get containers(){return this._containers}get codecs(){return this._codecs}get webmDecodingInfo(){return Wb}get supportedCodecs(){return Object.keys(this._codecs).filter(e=>this._codecs[e])}get nativeHlsSupported(){return this._nativeHlsSupported}detect(){this._video=document.createElement("video");try{this._protocols={mms:xr(),mse:zb(),hls:!!(this._video.canPlayType?.("application/x-mpegurl")||this._video.canPlayType?.("vnd.apple.mpegURL")),webrtc:!!window.RTCPeerConnection,ws:!!window.WebSocket},this._containers={mp4:!!this._video.canPlayType?.("video/mp4"),webm:!!this._video.canPlayType?.("video/webm"),cmaf:!0};let e=!!wt()?.isTypeSupported?.(ck),t=!!wt()?.isTypeSupported?.(dk),i=!!wt()?.isTypeSupported?.(pk);this._codecs={h264:e,h265:t,vp9:!!wt()?.isTypeSupported?.(Qb),av1:!!wt()?.isTypeSupported?.(Gb),aac:i,opus:!!wt()?.isTypeSupported?.(hk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}try{this.destroyVideoElement()}catch(e){console.error("Error destroying video element:",e)}}destroyVideoElement(){if(!this._video)return;if(this._video.pause(),this._video.currentTime=0,this._video.removeAttribute("src"),this._video.src="",this._video.load(),this._video.remove){this._video.remove(),this._video=null;return}this._video.parentNode&&this._video.parentNode.removeChild(this._video);let e=this._video.cloneNode(!1);this._video.parentNode?.replaceChild(e,this._video),this._video=null}};var Yb="audio/mpeg",On=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(Yb)},this._codecs={mp3:!!wt()?.isTypeSupported?.(Yb)}}catch(e){console.error(e)}try{this.destroyAudioElement()}catch(e){console.error("Error destroying audio element:",e)}}destroyAudioElement(){if(!this._audio)return;if(this._audio.pause(),this._audio.currentTime=0,this._audio.removeAttribute("src"),this._audio.src="",this._audio.load(),this._audio.remove){this._audio.remove(),this._audio=null;return}this._audio.parentNode&&this._audio.parentNode.removeChild(this._audio);let e=this._audio.cloneNode(!1);this._audio.parentNode?.replaceChild(e,this._audio),this._audio=null}};var Kb=require("@vkontakte/videoplayer-shared"),Vl=class{constructor(){this.isInited$=new Kb.ValueSubject(!1);this._displayChecker=new Dn,this._deviceChecker=new $n(this._displayChecker),this._browserChecker=new Bn,this._videoChecker=new Vn(this._deviceChecker,this._browserChecker),this._audioChecker=new On,this.detect()}get display(){return this._displayChecker}get device(){return this._deviceChecker}get browser(){return this._browserChecker}get video(){return this._videoChecker}get audio(){return this._audioChecker}async detect(){this._displayChecker.detect(),this._deviceChecker.detect(),this._browserChecker.detect(),this._videoChecker.detect(),this._audioChecker.detect(),this.isInited$.next(!0)}},W=new Vl;var ut=s=>{let e=I=>(0,O.fromEvent)(s,I).pipe((0,O.mapTo)(void 0)),t=new O.Subscription,i=()=>t.unsubscribe(),r=(0,O.merge)((0,O.fromEvent)(s,"progress"),(0,O.fromEvent)(s,"timeupdate")).pipe((0,O.map)(()=>jb(s.buffered,s.currentTime))),a=W.browser.isSafari?(0,O.combine)({play:e("play").pipe((0,O.once)()),playing:e("playing")}).pipe((0,O.mapTo)(void 0)):e("playing"),n=(0,O.fromEvent)(s,"volumechange").pipe((0,O.map)(()=>({muted:s.muted,volume:s.volume}))),o=(0,O.fromEvent)(s,"ratechange").pipe((0,O.map)(()=>s.playbackRate)),u=(0,O.fromEvent)(s,"error").pipe((0,O.filter)(()=>!!(s.error||s.played.length)),(0,O.map)(()=>{let I=s.error;return{id:I?`MediaError#${I.code}`:"HtmlVideoError",category:O.ErrorCategory.VIDEO_PIPELINE,message:I?I.message:"Error event from HTML video element",thrown:s.error??void 0}})),l=(0,O.fromEvent)(s,"timeupdate").pipe((0,O.map)(()=>s.currentTime)),d=["waiting","seeking","seeked","timeupdate"],c=new O.Subject,p=.3,h;t.add((0,O.merge)(...d.map(I=>(0,O.fromEvent)(s,I))).subscribe(I=>{let U=s.currentTime;s.loop&&(0,O.isNonNullable)(h)&&(0,O.isNonNullable)(U)&&h>=s.duration-p&&U<=p&&c.next(h),h=U}));let m=e("pause").pipe((0,O.filter)(()=>!s.error&&h!==s.duration)),g=(0,O.fromEvent)(s,"enterpictureinpicture"),v=(0,O.fromEvent)(s,"leavepictureinpicture"),T=new O.ValueSubject(qb(s));t.add(g.subscribe(()=>T.next(!0))),t.add(v.subscribe(()=>T.next(!1)));let w=new O.ValueSubject(Cl(s)),x=(0,O.fromEvent)(s,"fullscreenchange");t.add(x.pipe((0,O.map)(()=>Cl(s))).subscribe(w));let M=.1,B=1e3,F=(0,O.fromEvent)(s,"timeupdate").pipe((0,O.map)(I=>s.duration-s.currentTime<M),(0,O.filterChanged)()),G=(0,O.merge)(F.pipe((0,O.filter)(I=>!s.loop&&I)),(0,O.fromEvent)(s,"ended")).pipe((0,O.throttle)(B),(0,O.mapTo)(void 0)),D=(0,O.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(I=>(0,O.fromEvent)(s,I)),F.pipe((0,O.map)(I=>({type:I?"ended":"unknown"})))).pipe((0,O.map)(I=>W.browser.isFirefox&&I.type==="ended"?s.readyState<2:s.readyState<3),(0,O.filterChanged)());return{playing$:a,pause$:m,canplay$:e("canplay"),ended$:G,looped$:c,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,O.fromEvent)(s,"durationchange").pipe((0,O.map)(()=>s.duration)),isBuffering$:D,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:T,inFullscreen$:w,enterPip$:g,leavePip$:v,destroy:i}};var ci=require("@vkontakte/videoplayer-shared"),Pi=s=>{switch(s){case"mobile":return ci.VideoQuality.Q_144P;case"lowest":return ci.VideoQuality.Q_240P;case"low":return ci.VideoQuality.Q_360P;case"sd":case"medium":return ci.VideoQuality.Q_480P;case"hd":case"high":return ci.VideoQuality.Q_720P;case"fullhd":case"full":return ci.VideoQuality.Q_1080P;case"quadhd":case"quad":return ci.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return ci.VideoQuality.Q_2160P}};var it=H(Ut(),1),Fl=H(xt(),1),Yi=H(Ui(),1),L=require("@vkontakte/videoplayer-shared");var Ol=!1,di={},rg=s=>{Ol=s},sg=()=>{di={}},ag=s=>{s(di)},ms=(s,e)=>{Ol&&(di.meta=di.meta??{},di.meta[s]=e)},tt=class{constructor(e){this.name=e}next(e){if(!Ol)return;di.series=di.series??{};let t=di.series[this.name]??[];t.push([Date.now(),e]),di.series[this.name]=t}};var _e=require("@vkontakte/videoplayer-shared");function _l(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function _n(s,e,t){return!!s&&_l(s,e,t)==="high_quality"}function Er(s,e,t){return(0,_e.isNullable)(s)||(0,_e.isNonNullable)(s.min)&&(0,_e.isNonNullable)(s.max)&&(0,_e.isLower)(s.max,s.min)||(0,_e.isNonNullable)(s.min)&&e&&(0,_e.isHigher)(s.min,e)||(0,_e.isNonNullable)(s.max)&&t&&(0,_e.isLower)(s.max,t)}function ng({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return Er({max:s?.max?(0,_e.videoHeightToQuality)(s.max):void 0,min:s?.min?(0,_e.videoHeightToQuality)(s.min):void 0},e?(0,_e.videoHeightToQuality)(e):void 0,t?(0,_e.videoHeightToQuality)(t):void 0)}var dg=new tt("best_bitrate"),Nn=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var wr=s=>(e,t)=>s*(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={}}},Un='Assertion "ABR Tracks is empty array" failed',Fn=new WeakMap,og=new WeakMap,ug=new WeakMap,bs=(s,e,t,i)=>{let r=[...e].sort(wr(1)),a=[...t].sort(wr(1)),n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),o=(0,it.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,it.default)(a,-1);return o&&(0,Fl.default)(n,o)?o:n.length?(0,it.default)(n,-1):(0,it.default)(a,0)},gs=(s,e,t,i)=>{let r=Fn.get(e);r||(r=[...e].sort(wr(1)),Fn.set(e,r));let a=Fn.get(t);a||(a=[...t].sort(wr(1)),Fn.set(t,a));let n=ug.get(s);n||(n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),ug.set(s,n));let o=(0,it.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,it.default)(a,-1);return o&&(0,Fl.default)(n,o)?o:n.length?(0,it.default)(n,-1):(0,it.default)(a,0)},lg=s=>"quality"in s,qn=(s,e,t,i)=>{let r=(0,L.isNonNullable)(i?.last?.bitrate)&&(0,L.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?s.trackCooldownIncreaseQuality:s.trackCooldownDecreaseQuality,a=t&&i&&i.history[t.id]&&(0,L.now)()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t?.id&&i&&!a&&i.recordSelection(t),a&&i?.last){let n=i.last;i?.recordSwitch(n);let o=lg(n)?"video":"audio",u=lg(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 Gg=b((ZV,Qg)=>{"use strict";var rR=je(),sR=Ii(),aR=As(),Yl=Gl(),zg=rR("".replace),nR=RegExp("^["+Yl+"]+"),oR=RegExp("(^|[^"+Yl+"])["+Yl+"]+$"),Wl=function(s){return function(e){var t=aR(sR(e));return s&1&&(t=zg(t,nR,"")),s&2&&(t=zg(t,oR,"$1")),t}};Qg.exports={start:Wl(1),end:Wl(2),trim:Wl(3)}});var Xg=b((eO,Kg)=>{"use strict";var uR=Pu().PROPER,lR=Qe(),Wg=Gl(),Yg="\u200B\x85\u180E";Kg.exports=function(s){return lR(function(){return!!Wg[s]()||Yg[s]()!==Yg||uR&&Wg[s].name!==s})}});var Kl=b((tO,Jg)=>{"use strict";var cR=Gg().start,dR=Xg();Jg.exports=dR("trimStart")?function(){return cR(this)}:"".trimStart});var eS=b(()=>{"use strict";var pR=Oe(),Zg=Kl();pR({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Zg},{trimLeft:Zg})});var iS=b(()=>{"use strict";eS();var hR=Oe(),tS=Kl();hR({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==tS},{trimStart:tS})});var sS=b((nO,rS)=>{"use strict";iS();var fR=xi();rS.exports=fR("String","trimLeft")});var nS=b((oO,aS)=>{"use strict";var mR=sS();aS.exports=mR});var uS=b((uO,oS)=>{"use strict";var bR=nS();oS.exports=bR});var TS=b(()=>{"use strict"});var IS=b(()=>{"use strict"});var ES=b((_F,xS)=>{"use strict";var VR=It(),OR=Oi(),_R=Ge(),FR=_R("match");xS.exports=function(s){var e;return VR(s)&&((e=s[FR])!==void 0?!!e:OR(s)==="RegExp")}});var AS=b((FF,wS)=>{"use strict";var NR=Qt();wS.exports=function(){var s=NR(this),e="";return s.hasIndices&&(e+="d"),s.global&&(e+="g"),s.ignoreCase&&(e+="i"),s.multiline&&(e+="m"),s.dotAll&&(e+="s"),s.unicode&&(e+="u"),s.unicodeSets&&(e+="v"),s.sticky&&(e+="y"),e}});var RS=b((NF,kS)=>{"use strict";var UR=Tt(),qR=Ft(),jR=Gr(),HR=AS(),PS=RegExp.prototype;kS.exports=function(s){var e=s.flags;return e===void 0&&!("flags"in PS)&&!qR(s,"flags")&&jR(PS,s)?UR(HR,s):e}});var LS=b((UF,MS)=>{"use strict";var tc=je(),zR=nr(),QR=Math.floor,Zl=tc("".charAt),GR=tc("".replace),ec=tc("".slice),WR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,YR=/\$([$&'`]|\d{1,2})/g;MS.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=YR;return r!==void 0&&(r=zR(r),u=WR),GR(a,u,function(l,d){var c;switch(Zl(d,0)){case"$":return"$";case"&":return s;case"`":return ec(e,0,t);case"'":return ec(e,n);case"<":c=r[ec(d,1,-1)];break;default:var p=+d;if(p===0)return l;if(p>o){var h=QR(p/10);return h===0?l:h<=o?i[h-1]===void 0?Zl(d,1):i[h-1]+Zl(d,1):l}c=i[p-1]}return c===void 0?"":c})}});var DS=b(()=>{"use strict";var KR=Oe(),XR=Tt(),rc=je(),BS=Ii(),JR=Me(),ZR=sr(),eM=ES(),$r=As(),tM=Yr(),iM=RS(),rM=LS(),sM=Ge(),aM=_t(),nM=sM("replace"),oM=TypeError,ic=rc("".indexOf),uM=rc("".replace),$S=rc("".slice),lM=Math.max;KR({target:"String",proto:!0},{replaceAll:function(e,t){var i=BS(this),r,a,n,o,u,l,d,c,p,h,m=0,g="";if(!ZR(e)){if(r=eM(e),r&&(a=$r(BS(iM(e))),!~ic(a,"g")))throw new oM("`.replaceAll` does not allow non-global regexes");if(n=tM(e,nM),n)return XR(n,e,i,t);if(aM&&r)return uM($r(i),e,t)}for(o=$r(i),u=$r(e),l=JR(t),l||(t=$r(t)),d=u.length,c=lM(1,d),p=ic(o,u);p!==-1;)h=l?$r(t(u,p,o)):rM(u,o,p,[],void 0,t),g+=$S(o,m,p)+h,m=p+d,p=p+c>o.length?-1:ic(o,u,p+c);return m<o.length&&(g+=$S(o,m)),g}})});var VS=b((HF,CS)=>{"use strict";TS();IS();DS();var cM=xi();CS.exports=cM("String","replaceAll")});var _S=b((zF,OS)=>{"use strict";var dM=VS();OS.exports=dM});var sc=b((QF,FS)=>{"use strict";var pM=_S();FS.exports=pM});var US=b((GF,NS)=>{"use strict";var hM=Zr(),fM=As(),mM=Ii(),bM=RangeError;NS.exports=function(e){var t=fM(mM(this)),i="",r=hM(e);if(r<0||r===1/0)throw new bM("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var QS=b((WF,zS)=>{"use strict";var HS=je(),gM=fu(),qS=As(),SM=US(),vM=Ii(),yM=HS(SM),TM=HS("".slice),IM=Math.ceil,jS=function(s){return function(e,t,i){var r=qS(vM(e)),a=gM(t),n=r.length,o=i===void 0?" ":qS(i),u,l;return a<=n||o===""?r:(u=a-n,l=yM(o,IM(u/o.length)),l.length>u&&(l=TM(l,0,u)),s?r+l:l+r)}};zS.exports={start:jS(!1),end:jS(!0)}});var WS=b((YF,GS)=>{"use strict";var xM=Fi();GS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(xM)});var YS=b(()=>{"use strict";var EM=Oe(),wM=QS().start,AM=WS();EM({target:"String",proto:!0,forced:AM},{padStart:function(e){return wM(this,e,arguments.length>1?arguments[1]:void 0)}})});var XS=b((JF,KS)=>{"use strict";YS();var PM=xi();KS.exports=PM("String","padStart")});var ZS=b((ZF,JS)=>{"use strict";var kM=XS();JS.exports=kM});var ac=b((eN,ev)=>{"use strict";var RM=ZS();ev.exports=RM});var SL={};yy(SL,{ChromecastState:()=>qr,HttpConnectionType:()=>Wa,Observable:()=>Jt.Observable,PlaybackState:()=>et,Player:()=>Qa,PredefinedQualityLimits:()=>jr,SDK_VERSION:()=>gL,Subject:()=>Jt.Subject,Subscription:()=>Jt.Subscription,Surface:()=>Ya,VERSION:()=>_o,ValueSubject:()=>Jt.ValueSubject,VideoFormat:()=>Ht,VideoQuality:()=>Jt.VideoQuality,clientChecker:()=>W,isMobile:()=>Ir});module.exports=Ty(SL);var _o="2.0.135-dev.02bf1429.0";var et=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(et||{}),Ht=(x=>(x.MPEG="MPEG",x.DASH="DASH",x.DASH_SEP="DASH_SEP",x.DASH_SEP_VK="DASH_SEP",x.DASH_WEBM="DASH_WEBM",x.DASH_WEBM_AV1="DASH_WEBM_AV1",x.DASH_STREAMS="DASH_STREAMS",x.DASH_WEBM_VK="DASH_WEBM",x.DASH_ONDEMAND="DASH_ONDEMAND",x.DASH_ONDEMAND_VK="DASH_ONDEMAND",x.DASH_LIVE="DASH_LIVE",x.DASH_LIVE_CMAF="DASH_LIVE_CMAF",x.DASH_LIVE_WEBM="DASH_LIVE_WEBM",x.HLS="HLS",x.HLS_ONDEMAND="HLS_ONDEMAND",x.HLS_JS="HLS",x.HLS_LIVE="HLS_LIVE",x.HLS_LIVE_CMAF="HLS_LIVE_CMAF",x.WEB_RTC_LIVE="WEB_RTC_LIVE",x))(Ht||{});var qr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(qr||{}),Wa=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Wa||{});var Ya=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Ya||{}),jr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(jr||{});var fy=H(xt(),1);var te=require("@vkontakte/videoplayer-shared");var Dp=s=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",s),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var en=class{constructor(e){this.connection$=new te.ValueSubject(void 0);this.castState$=new te.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new te.Subject;this.realCastState$=new te.ValueSubject("NOT_AVAILABLE");this.subscription=new te.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 i=(0,te.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=a=>{delete window.__onGCastApiAvailable,a&&!this.isDestroyed&&this.initializeCastApi()},r||Dp("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:te.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,te.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,te.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,te.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),i=cast.framework.CastContext.getInstance();this.subscription.add((0,te.fromEvent)(i,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(r=>{switch(r.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=i.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,te.assertNever)(r.sessionState)}})).add((0,te.merge)((0,te.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,te.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,te.map)(r=>r.castState)),(0,te.observableFrom)([i.getCastState()])).pipe((0,te.filterChanged)(),(0,te.map)(jI),(0,te.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let a=r==="CONNECTED",n=(0,te.isNonNullable)(this.connection$.getValue());if(a&&!n){let o=i.getCurrentSession();(0,te.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,te.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:o,castDevice:u}))}else!a&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?(0,te.isNonNullable)(this.connection$.getValue())?"CONNECTED":"AVAILABLE":r)}))}initializeCastApi(){let e,t,i;try{e=cast.framework.CastContext.getInstance(),t=chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID,i=chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED}catch{return}try{e.setOptions({receiverApplicationId:this.params.receiverApplicationId??t,autoJoinPolicy:i}),this.initListeners()}catch(r){this.errorEvent$.next({id:"ChromecastInitializer",category:te.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},jI=s=>{switch(s){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,te.assertNever)(s)}};var _c=H(xt(),1),ty=H(Ui(),1),iy=H(qu(),1);var Bb=H(Rn(),1);var kl=require("@vkontakte/videoplayer-shared");var Le=(s,e=0,t=0)=>{switch(t){case 0:return s.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return s;let i=new URL(s);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(s);return!i.searchParams.get("offset_p")&&e===0?s:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:(0,kl.assertNever)(t)}return s},wi=(s,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(s);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(s);return Number(t.searchParams.get("offset_p")??0)}default:(0,kl.assertNever)(e)}};var _=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};var Gt=require("@vkontakte/videoplayer-shared"),ie=class{constructor(e){this.transitionStarted$=new Gt.Subject;this.transitionEnded$=new Gt.Subject;this.transitionUpdated$=new Gt.Subject;this.forceChanged$=new Gt.Subject;this.stateChangeStarted$=(0,Gt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Gt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,i=this.state;this.transition=void 0,this.prevState=i,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:i,to:e,canceledTransition:t})}startTransitionTo(e){let t=this.transition,i=this.state;i===e||(0,Gt.isNonNullable)(t)&&t.to===e||(this.prevState=i,this.state=e,t?(this.transition={from:t.from,to:e,canceledTransition:t},this.transitionUpdated$.next(this.transition)):(this.transition={from:i,to:e},this.transitionStarted$.next(this.transition)))}getTransition(){return this.transition}getState(){return this.state}getPrevState(){return this.prevState}};var Rb=require("@vkontakte/videoplayer-shared"),Mb=s=>{switch(s){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,Rb.assertNever)(s)}};var q=require("@vkontakte/videoplayer-shared");var XP=5,JP=5,ZP=500,Lb=7e3,hs=class{constructor(e){this.subscription=new q.Subscription;this.loadMediaTimeoutSubscription=new q.Subscription;this.videoState=new ie("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),a=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${i}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(a)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(r?.to!=="paused"&&a.state==="requested"&&e!=="stopped"){this.seek(a.position/1e3);return}switch(i){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:(0,q.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,q.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,q.assertNever)(e)}break}default:(0,q.assertNever)(i)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(Mb(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 q.Subscription;this.subscription.add(e),this.subscription.add((0,q.merge)(this.videoState.stateChangeStarted$.pipe((0,q.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,q.map)(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,a)=>this.subscription.add(r.subscribe(a));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new q.Subject;e.add(r.pipe((0,q.debounce)(ZP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add((0,q.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-a)>XP)&&r.next(o),a=o})),e.add((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:a}=this.params.connection,n=r.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()&&a.duration-a.currentTime<JP&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),_(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,q.assertNever)(n)}}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,q.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,q.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,q.observableFrom)(["init"])).pipe((0,q.debounce)(0));t(i,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"),_(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),_(this.params.desiredState.playbackState,"playing"));let i=this.params.output.isLive$.getValue();this.params.output.duration$.next(i?0:t.duration),this.params.output.position$.next(i?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),i=this.createLoadRequest(t);this.loadMedia(i)}handleRemotePause(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="paused"||e==="playing")&&(this.videoState.setState("paused"),_(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),_(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&_(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){let t=this.params.output.volume$.getValue(),i={volume:e.volume??t.volume,muted:e.muted??t.muted};(i.volume!==t.volume||i.muted!==i.muted)&&this.params.output.volume$.next(i)}seek(e){this.params.output.willSeekEvent$.next();let{remotePlayer:t,remotePlayerController:i}=this.params.connection;t.currentTime=e,i.seek()}stop(){let{remotePlayerController:e}=this.params.connection;e.stop()}createMediaInfo(e){let t=this.params.source,i,r,a;switch(e){case"MPEG":{let l=t[e];(0,q.assertNonNullable)(l);let d=(0,q.getHighestQuality)(Object.keys(l));(0,q.assertNonNullable)(d);let c=l[d];(0,q.assertNonNullable)(c),i=c,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,q.assertNonNullable)(l),i=l.url,r="application/x-mpegurl",a=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,q.assertNonNullable)(l),i=l.url,r="application/dash+xml",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,q.assertNonNullable)(l),i=l.url,r="application/dash+xml",a=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,q.assertNonNullable)(l),i=Le(l.url),r="application/x-mpegurl",a=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:q.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,q.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??i,r);n.contentUrl=i,n.streamType=a,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return(0,q.isNonNullable)(o)&&(n.metadata.title=o),(0,q.isNonNullable)(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let i=this.params.desiredState.seekState.getState();return i.state==="applying"||i.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:i.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),i=new Promise((r,a)=>{this.loadMediaTimeoutSubscription.add((0,q.timeout)(Lb).subscribe(()=>a(`timeout(${Lb})`)))});(0,Bb.default)(Promise.race([t,i]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},r=>{let a=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:a}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:q.ErrorCategory.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Hl=H(xt(),1);var Bl=require("@vkontakte/videoplayer-shared");var $b=require("@vkontakte/videoplayer-shared"),Db=s=>{try{s.pause(),s.playbackRate=0,(0,$b.clearVideoElement)(s),s.remove()}catch(e){console.error(e)}};var Mn=require("@vkontakte/videoplayer-shared"),Rl=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)}},Ml=window.WeakMap?new WeakMap:new Rl,Ll=window.WeakMap?new WeakMap:new Map,ek=(s,e=20)=>{let t=0;return(0,Mn.fromEvent)(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},at=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?(0,Bl.clearVideoElement)(i):(i=document.createElement("video"),s.appendChild(i)),Ml.set(i,r);let a=new Mn.Subscription;return a.add(ek(i,e)),Ll.set(i,a),i.setAttribute("crossorigin","anonymous"),i.setAttribute("playsinline","playsinline"),t&&i.setAttribute("x-yandex-pip","false"),i.controls=!1,i.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),i},nt=s=>{Ll.get(s)?.unsubscribe(),Ll.delete(s);let t=Ml.get(s);Ml.delete(s),t?(0,Bl.clearVideoElement)(s):Db(s)};var $l=H(Gi(),1),j=require("@vkontakte/videoplayer-shared");var Ai=require("@vkontakte/videoplayer-shared"),Ln=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=(0,Ai.isNullable)(r),l=new Ai.Subscription;return r&&l.add(r.subscribe(d=>{let c=s.getState();i(d,c)&&s.setState(d)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(d=>{t(d.to),u&&s.setState(d.to)},a)),l},Wt=(s,e,t)=>Ln(e,()=>s.loop,i=>{(0,Ai.isNonNullable)(i)&&(s.loop=i)},{onError:t}),ot=(s,e,t,i)=>Ln(e,()=>({muted:s.muted,volume:s.volume}),r=>{(0,Ai.isNonNullable)(r)&&(s.muted=r.muted,s.volume=r.volume)},{equal:(r,a)=>r===a||r?.muted===a?.muted&&r?.volume===a?.volume,changed$:t,onError:i}),kt=(s,e,t,i)=>Ln(e,()=>s.playbackRate,r=>{(0,Ai.isNonNullable)(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),fs=Ln;var nk=s=>["__",s.language,s.label].join("|"),ok=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},Dl=class s{constructor(e){this.available$=new j.Subject;this.current$=new j.ValueSubject(void 0);this.error$=new j.Subject;this.subscription=new j.Subscription;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,i){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let r=a=>{this.error$.next({id:"TextTracksManager",category:j.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:a})};this.subscription.add(this.available$.subscribe(i.availableTextTracks$)),this.subscription.add(this.current$.subscribe(i.currentTextTrack$)),this.subscription.add(this.error$.subscribe(i.error$)),this.subscription.add(fs(t.internalTextTracks,()=>(0,$l.default)(this.internalTracks),a=>{(0,j.isNonNullable)(a)&&this.setInternal(a)},{equal:(a,n)=>(0,j.isNonNullable)(a)&&(0,j.isNonNullable)(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,j.map)(a=>a.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(fs(t.externalTextTracks,()=>(0,$l.default)(this.externalTracks),a=>{(0,j.isNonNullable)(a)&&this.setExternal(a)},{equal:(a,n)=>(0,j.isNonNullable)(a)&&(0,j.isNonNullable)(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe((0,j.map)(a=>a.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(fs(t.currentTextTrack,()=>{if(this.video)return;let a=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return a&&this.htmlTextTrackToITextTrack(a).id},a=>this.select(a),{changed$:this.current$,onError:r})),this.subscription.add(fs(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let a of this.htmlTextTracksAsArray())this.applyCueSettings(a.cues),this.applyCueSettings(a.activeCues)}))}subscribe(){(0,j.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,j.fromEvent)(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add((0,j.merge)((0,j.fromEvent)(e,"addtrack"),(0,j.fromEvent)(e,"removetrack"),(0,j.observableFrom)(["init"])).pipe((0,j.map)(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),(0,j.filterChanged)((i,r)=>i.length===r.length&&i.every(({id:a},n)=>a===r[n].id))).subscribe(this.available$)),this.subscription.add((0,j.merge)((0,j.fromEvent)(e,"change"),(0,j.observableFrom)(["init"])).pipe((0,j.map)(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),(0,j.map)(i=>i&&this.htmlTextTrackToITextTrack(i).id),(0,j.filterChanged)()).subscribe(this.current$));let t=i=>this.applyCueSettings(i.target?.activeCues??null);this.subscription.add((0,j.fromEvent)(e,"addtrack").subscribe(i=>{i.track?.addEventListener("cuechange",t);let r=a=>{let n=a.target?.cues??null;n&&n.length&&(this.applyCueSettings(a.target?.cues??null),a.target?.removeEventListener("cuechange",r))};i.track?.addEventListener("cuechange",r)})),this.subscription.add((0,j.fromEvent)(e,"removetrack").subscribe(i=>{i.track?.removeEventListener("cuechange",t)}))}applyCueSettings(e){if(!e||!e.length)return;let t=this.cueSettings.getState();for(let i of Array.from(e)){let r=i;(0,j.isNonNullable)(t.align)&&(r.align=t.align),(0,j.isNonNullable)(t.position)&&(r.position=t.position),(0,j.isNonNullable)(t.size)&&(r.size=t.size),(0,j.isNonNullable)(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,j.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(s.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:i}=e,r=e.id?e.id:nk(e),a=this.externalTracks.has(r),n=(a?this.externalTracks.get(r)?.isAuto:this.internalTracks.get(r)?.isAuto)??r.includes("auto");return a?{id:r,type:"external",isAuto:n,language:t,label:i,url:this.externalTracks.get(r)?.url}:{id:r,type:"internal",isAuto:n,language:t,label:i,url:this.internalTracks.get(r)?.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(i=>i.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:i,language:r,isAuto:a})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===a)).forEach(i=>this.attach(i)),Array.from(this.internalTracks).filter(([i])=>!e.find(r=>r.id===i)).forEach(([,i])=>this.detach(i))}select(e){(0,j.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,j.isNullable)(e)||!ok(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,j.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,j.assertNonNullable)(this.video);let t=Array.prototype.find.call(this.video.getElementsByTagName("track"),i=>i.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)}},Rt=Dl;var Wi=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 Ub=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Cl=s=>{let e=Ub(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},qb=s=>{let e=Ub(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};var O=require("@vkontakte/videoplayer-shared");var uk=3,jb=(s,e,t=uk)=>{let i=0,r=0;for(let a=0;a<s.length;a++){let n=s.start(a),o=s.end(a);if(n<=e&&e<=o){if(i=n,r=o,!t)return{from:i,to:r};for(let u=a-1;u>=0;u--)s.end(u)+t>=i&&(i=s.start(u));for(let u=a+1;u<s.length;u++)s.start(u)-t<=r&&(r=s.end(u))}}return{from:i,to:r}};var Bn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,a=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,o=/webkit|safari|khtml/i.test(e)?"Safari":void 0,u=/opr\//i.test(e)?"Opera":void 0,l=/edg/i.test(e)?"Edge":void 0;this._isMiuiBrowser=/(XiaoMi)|(MiuiBrowser)/i.test(e),this._current=t||i||n||u||l||r||a||o||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],a=parseInt(r,10);if(!isNaN(a))return this._current_version=a,a}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var Hb=H(xt(),1);var Ir=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var $n=class{constructor(e){this._highEntropyValues={};this._displayChecker=e}get current(){return this._current}get isIOS(){let e=["iPhone","iPad","iPod"];return this._highEntropyValues.platform==="iOS"||(0,Hb.default)(e,this.current)}get isMac(){return this._highEntropyValues.platform==="macOS"||this.current==="Mac"}get isApple(){return this.isIOS||this.isMac}get isIphoneOrOldIpad(){if(!this.isApple||!this._displayChecker.isTouch)return!1;let e=this.current==="iPad"||this._displayChecker.width>700,t=this._iosVersion;return!e||e&&!!t&&t<16}get isAndroid(){return this._highEntropyValues.platform==="Android"||this.current==="Android"}get isMobile(){return this._highEntropyValues.mobile||this._isMobile}get iOSVersion(){return this._iosVersion}detect(){let{userAgent:e}=navigator;try{this._isMobile=Ir()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e?.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,a=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,o=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||a||o||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let a=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(a);this._iosVersion=n;return}let{userAgent:e}=window.navigator,t=e.match(/OS (\d+(_\d+)?)/i);if(!t)return;let i=t[1].replace(/_/g,".");if(!i)return;let r=parseFloat(i);if(isNaN(r))return;this._iosVersion=r}catch(e){console.error(e)}}};var Dn=class{get isTouch(){return typeof this._maxTouchPoints=="number"?this._maxTouchPoints>1:"ontouchstart"in window}get maxTouchPoints(){return this._maxTouchPoints}get height(){return this._height}get width(){return this._width}get screenHeight(){return this._screenHeight}get screenWidth(){return this._screenWidth}get pixelRatio(){return this._pixelRatio}get isHDR(){return this._isHdr}get colorDepth(){return this._colorDepth}detect(){let{maxTouchPoints:e}=navigator;try{this._maxTouchPoints=e??0,this._isHdr=!!matchMedia("(dynamic-range: high)")?.matches,this._colorDepth=screen.colorDepth}catch(t){console.error(t)}try{this._pixelRatio=window.devicePixelRatio||1,this._height=screen.height,this._width=screen.width,this._height=screen.height,this._screenHeight=this._height*this._pixelRatio,this._screenWidth=this._width*this._pixelRatio}catch(t){console.error(t)}}};var wt=()=>window.ManagedMediaSource||window.MediaSource,xr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),zb=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Cn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var lk=document.createElement("video"),ck='video/mp4; codecs="avc1.42000a,mp4a.40.2"',dk='video/mp4; codecs="hev1.1.6.L93.B0"',Qb='video/webm; codecs="vp09.00.10.08"',Gb='video/webm; codecs="av01.0.00M.08"',pk='audio/mp4; codecs="mp4a.40.2"',hk='audio/webm; codecs="opus"',Wb,fk=async()=>{if(!window.navigator.mediaCapabilities)return;let s={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Gb}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Qb}})]);Wb={DASH_WEBM_AV1:e,DASH_WEBM:t}};fk().catch(s=>{console.log(lk),console.error(s)});var Vn=class{constructor(e,t){this._deviceChecker=e,this._browserChecker=t}get protocols(){return this._protocols}get containers(){return this._containers}get codecs(){return this._codecs}get webmDecodingInfo(){return Wb}get supportedCodecs(){return Object.keys(this._codecs).filter(e=>this._codecs[e])}get nativeHlsSupported(){return this._nativeHlsSupported}detect(){this._video=document.createElement("video");try{this._protocols={mms:xr(),mse:zb(),hls:!!(this._video.canPlayType?.("application/x-mpegurl")||this._video.canPlayType?.("vnd.apple.mpegURL")),webrtc:!!window.RTCPeerConnection,ws:!!window.WebSocket},this._containers={mp4:!!this._video.canPlayType?.("video/mp4"),webm:!!this._video.canPlayType?.("video/webm"),cmaf:!0};let e=!!wt()?.isTypeSupported?.(ck),t=!!wt()?.isTypeSupported?.(dk),i=!!wt()?.isTypeSupported?.(pk);this._codecs={h264:e,h265:t,vp9:!!wt()?.isTypeSupported?.(Qb),av1:!!wt()?.isTypeSupported?.(Gb),aac:i,opus:!!wt()?.isTypeSupported?.(hk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}try{this.destroyVideoElement()}catch(e){console.error("Error destroying video element:",e)}}destroyVideoElement(){if(!this._video)return;if(this._video.pause(),this._video.currentTime=0,this._video.removeAttribute("src"),this._video.src="",this._video.load(),this._video.remove){this._video.remove(),this._video=null;return}this._video.parentNode&&this._video.parentNode.removeChild(this._video);let e=this._video.cloneNode(!1);this._video.parentNode?.replaceChild(e,this._video),this._video=null}};var Yb="audio/mpeg",On=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(Yb)},this._codecs={mp3:!!wt()?.isTypeSupported?.(Yb)}}catch(e){console.error(e)}try{this.destroyAudioElement()}catch(e){console.error("Error destroying audio element:",e)}}destroyAudioElement(){if(!this._audio)return;if(this._audio.pause(),this._audio.currentTime=0,this._audio.removeAttribute("src"),this._audio.src="",this._audio.load(),this._audio.remove){this._audio.remove(),this._audio=null;return}this._audio.parentNode&&this._audio.parentNode.removeChild(this._audio);let e=this._audio.cloneNode(!1);this._audio.parentNode?.replaceChild(e,this._audio),this._audio=null}};var Kb=require("@vkontakte/videoplayer-shared"),Vl=class{constructor(){this.isInited$=new Kb.ValueSubject(!1);this._displayChecker=new Dn,this._deviceChecker=new $n(this._displayChecker),this._browserChecker=new Bn,this._videoChecker=new Vn(this._deviceChecker,this._browserChecker),this._audioChecker=new On,this.detect()}get display(){return this._displayChecker}get device(){return this._deviceChecker}get browser(){return this._browserChecker}get video(){return this._videoChecker}get audio(){return this._audioChecker}async detect(){this._displayChecker.detect(),this._deviceChecker.detect(),this._browserChecker.detect(),this._videoChecker.detect(),this._audioChecker.detect(),this.isInited$.next(!0)}},W=new Vl;var ut=s=>{let e=I=>(0,O.fromEvent)(s,I).pipe((0,O.mapTo)(void 0)),t=new O.Subscription,i=()=>t.unsubscribe(),r=(0,O.merge)((0,O.fromEvent)(s,"progress"),(0,O.fromEvent)(s,"timeupdate")).pipe((0,O.map)(()=>jb(s.buffered,s.currentTime))),a=W.browser.isSafari?(0,O.combine)({play:e("play").pipe((0,O.once)()),playing:e("playing")}).pipe((0,O.mapTo)(void 0)):e("playing"),n=(0,O.fromEvent)(s,"volumechange").pipe((0,O.map)(()=>({muted:s.muted,volume:s.volume}))),o=(0,O.fromEvent)(s,"ratechange").pipe((0,O.map)(()=>s.playbackRate)),u=(0,O.fromEvent)(s,"error").pipe((0,O.filter)(()=>!!(s.error||s.played.length)),(0,O.map)(()=>{let I=s.error;return{id:I?`MediaError#${I.code}`:"HtmlVideoError",category:O.ErrorCategory.VIDEO_PIPELINE,message:I?I.message:"Error event from HTML video element",thrown:s.error??void 0}})),l=(0,O.fromEvent)(s,"timeupdate").pipe((0,O.map)(()=>s.currentTime)),d=["waiting","seeking","seeked","timeupdate"],c=new O.Subject,p=.3,h;t.add((0,O.merge)(...d.map(I=>(0,O.fromEvent)(s,I))).subscribe(I=>{let U=s.currentTime;s.loop&&(0,O.isNonNullable)(h)&&(0,O.isNonNullable)(U)&&h>=s.duration-p&&U<=p&&c.next(h),h=U}));let m=e("pause").pipe((0,O.filter)(()=>!s.error&&h!==s.duration)),g=(0,O.fromEvent)(s,"enterpictureinpicture"),v=(0,O.fromEvent)(s,"leavepictureinpicture"),T=new O.ValueSubject(qb(s));t.add(g.subscribe(()=>T.next(!0))),t.add(v.subscribe(()=>T.next(!1)));let w=new O.ValueSubject(Cl(s)),x=(0,O.fromEvent)(s,"fullscreenchange");t.add(x.pipe((0,O.map)(()=>Cl(s))).subscribe(w));let M=.1,B=1e3,F=(0,O.fromEvent)(s,"timeupdate").pipe((0,O.map)(I=>s.duration-s.currentTime<M),(0,O.filterChanged)()),G=(0,O.merge)(F.pipe((0,O.filter)(I=>!s.loop&&I)),(0,O.fromEvent)(s,"ended")).pipe((0,O.throttle)(B),(0,O.mapTo)(void 0)),D=(0,O.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(I=>(0,O.fromEvent)(s,I)),F.pipe((0,O.map)(I=>({type:I?"ended":"unknown"})))).pipe((0,O.map)(I=>W.browser.isFirefox&&I.type==="ended"?s.readyState<2:s.readyState<3),(0,O.filterChanged)());return{playing$:a,pause$:m,canplay$:e("canplay"),ended$:G,looped$:c,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,O.fromEvent)(s,"durationchange").pipe((0,O.map)(()=>s.duration)),isBuffering$:D,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:T,inFullscreen$:w,enterPip$:g,leavePip$:v,destroy:i}};var ci=require("@vkontakte/videoplayer-shared"),Pi=s=>{switch(s){case"mobile":return ci.VideoQuality.Q_144P;case"lowest":return ci.VideoQuality.Q_240P;case"low":return ci.VideoQuality.Q_360P;case"sd":case"medium":return ci.VideoQuality.Q_480P;case"hd":case"high":return ci.VideoQuality.Q_720P;case"fullhd":case"full":return ci.VideoQuality.Q_1080P;case"quadhd":case"quad":return ci.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return ci.VideoQuality.Q_2160P}};var it=H(Ut(),1),Fl=H(xt(),1),Yi=H(Ui(),1),L=require("@vkontakte/videoplayer-shared");var Ol=!1,di={},rg=s=>{Ol=s},sg=()=>{di={}},ag=s=>{s(di)},ms=(s,e)=>{Ol&&(di.meta=di.meta??{},di.meta[s]=e)},tt=class{constructor(e){this.name=e}next(e){if(!Ol)return;di.series=di.series??{};let t=di.series[this.name]??[];t.push([Date.now(),e]),di.series[this.name]=t}};var _e=require("@vkontakte/videoplayer-shared");function _l(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function _n(s,e,t){return!!s&&_l(s,e,t)==="high_quality"}function Er(s,e,t){return(0,_e.isNullable)(s)||(0,_e.isNonNullable)(s.min)&&(0,_e.isNonNullable)(s.max)&&(0,_e.isLower)(s.max,s.min)||(0,_e.isNonNullable)(s.min)&&e&&(0,_e.isHigher)(s.min,e)||(0,_e.isNonNullable)(s.max)&&t&&(0,_e.isLower)(s.max,t)}function ng({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return Er({max:s?.max?(0,_e.videoHeightToQuality)(s.max):void 0,min:s?.min?(0,_e.videoHeightToQuality)(s.min):void 0},e?(0,_e.videoHeightToQuality)(e):void 0,t?(0,_e.videoHeightToQuality)(t):void 0)}var dg=new tt("best_bitrate"),Nn=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var wr=s=>(e,t)=>s*(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={}}},Un='Assertion "ABR Tracks is empty array" failed',Fn=new WeakMap,og=new WeakMap,ug=new WeakMap,bs=(s,e,t,i)=>{let r=[...e].sort(wr(1)),a=[...t].sort(wr(1)),n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),o=(0,it.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,it.default)(a,-1);return o&&(0,Fl.default)(n,o)?o:n.length?(0,it.default)(n,-1):(0,it.default)(a,0)},gs=(s,e,t,i)=>{let r=Fn.get(e);r||(r=[...e].sort(wr(1)),Fn.set(e,r));let a=Fn.get(t);a||(a=[...t].sort(wr(1)),Fn.set(t,a));let n=ug.get(s);n||(n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),ug.set(s,n));let o=(0,it.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,it.default)(a,-1);return o&&(0,Fl.default)(n,o)?o:n.length?(0,it.default)(n,-1):(0,it.default)(a,0)},lg=s=>"quality"in s,qn=(s,e,t,i)=>{let r=(0,L.isNonNullable)(i?.last?.bitrate)&&(0,L.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?s.trackCooldownIncreaseQuality:s.trackCooldownDecreaseQuality,a=t&&i&&i.history[t.id]&&(0,L.now)()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t?.id&&i&&!a&&i.recordSelection(t),a&&i?.last){let n=i.last;i?.recordSwitch(n);let o=lg(n)?"video":"audio",u=lg(n)?n.quality:n.bitrate;return e({message:`
|
|
8
8
|
[last ${o} selected] ${u}
|
|
9
9
|
`}),n}return i?.recordSwitch(t),t},xk=(s,e)=>Math.log(e)/Math.log(s),pg=({tuning:s,container:e,limits:t,panelSize:i})=>{let r=s.containerSizeFactor;if(i)return{containerSizeLimit:i,containerSizeFactor:r};if(s.usePixelRatio&&W.display.pixelRatio){let a=W.display.pixelRatio;if(s.pixelRatioMultiplier)r*=s.pixelRatioMultiplier*(a-1)+1;else{let n=s.pixelRatioLogBase,[o=0,u=0,l=0]=s.pixelRatioLogCoefficients,d=xk(n,o*a+u)+l;Number.isFinite(d)&&(r*=d)}}return _n(t,s.highQualityLimit,s.trafficSavingLimit)&&(r*=2),{containerSizeLimit:s.limitByContainer&&e&&e.width>0&&e.height>0?{width:e.width*r,height:e.height*r}:void 0,containerSizeFactor:r}},cg=new WeakMap,Yt=(s,{container:e,estimatedThroughput:t,tuning:i,limits:r,reserve:a=0,forwardBufferHealth:n,playbackRate:o,current:u,history:l,visible:d,droppedVideoMaxQualityLimit:c,stallsVideoMaxQualityLimit:p,stallsPredictedThroughput:h,abrLogger:m,panelSize:g})=>{(0,L.assertNotEmptyArray)(s,Un);let{containerSizeFactor:v,containerSizeLimit:T}=pg({container:e,tuning:i,limits:r,panelSize:g}),w=i.considerPlaybackRate&&(0,L.isNonNullable)(o)?o:1,x=cg.get(s);x||(x=s.filter(R=>!(0,L.isInvariantQuality)(R.quality)).sort((R,C)=>(0,L.isHigher)(R.quality,C.quality)?-1:1),cg.set(s,x));let M=(0,it.default)(x,-1)?.quality,B=(0,it.default)(x,0)?.quality,F=Er(r,B,M),G=w*Nn(n??.5,i.bitrateFactorAtEmptyBuffer,i.bitrateFactorAtFullBuffer),$={},D=null;for(let R of x){let C=!0;if(T)if(R.size)C=R.size.width<=T.width&&R.size.height<=T.height;else{let V=T&&(0,L.videoSizeToQuality)(T);C=V?(0,L.isLowerOrEqual)(R.quality,V):!0}if(!C){$[R.quality]="FitsContainer";continue}let be=h||t,N=(0,L.isNonNullable)(be)&&isFinite(be)&&(0,L.isNonNullable)(R.bitrate)?be-a>=R.bitrate*G:!0,re=_n(r,i.highQualityLimit,i.trafficSavingLimit)&&r?.min===R.quality;if(!N&&!re){$[R.quality]="FitsThroughput";continue}if(i.lazyQualitySwitch&&(0,L.isNonNullable)(i.minBufferToSwitchUp)&&u&&!(0,L.isInvariantQuality)(u.quality)&&(n??0)<i.minBufferToSwitchUp&&(0,L.isHigher)(R.quality,u.quality)){$[R.quality]="Buffer";continue}if(!!c&&(0,L.isHigherOrEqual)(R.quality,c)&&!re){$[R.quality]="DroppedFramesLimit";continue}if(!!p&&(0,L.isHigherOrEqual)(R.quality,p)&&!re){$[R.quality]="StallsLimit";continue}let Ie=F||((0,L.isNullable)(r?.max)||(0,L.isLowerOrEqual)(R.quality,r.max))&&((0,L.isNullable)(r?.min)||(0,L.isHigherOrEqual)(R.quality,r.min)),ce=(0,L.isNonNullable)(d)&&!d?(0,L.isLowerOrEqual)(R.quality,i.backgroundVideoQualityLimit):!0;if(!Ie||!ce){$[R.quality]="FitsQualityLimits";continue}D||(D=R)}D&&D.bitrate&&dg.next(D.bitrate);let I=D??(0,it.default)(x,-1)??s[0],U=l?.last,k=qn(i,m,I,l);return(0,L.isNonNullable)(l)&&k.quality!==U?.quality&&m({message:`
|
|
10
10
|
[VIDEO TRACKS ABR]
|