@vkontakte/videoplayer-core 2.0.134-dev.464b6f35.0 → 2.0.134-dev.6250ee46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esnext.cjs.js CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @vkontakte/videoplayer-core v2.0.134-dev.464b6f35.0
3
- * Mon, 09 Jun 2025 10:17:36 GMT
2
+ * @vkontakte/videoplayer-core v2.0.134-dev.6250ee46.0
3
+ * Tue, 10 Jun 2025 05:36:00 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/2-0-134/doc/
5
5
  */
6
6
  "use strict";var yy=Object.create;var Ja=Object.defineProperty;var Ty=Object.getOwnPropertyDescriptor;var Iy=Object.getOwnPropertyNames;var xy=Object.getPrototypeOf,Ey=Object.prototype.hasOwnProperty;var b=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports),Py=(s,e)=>{for(var t in e)Ja(s,t,{get:e[t],enumerable:!0})},zc=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Iy(e))!Ey.call(s,r)&&r!==t&&Ja(s,r,{get:()=>e[r],enumerable:!(i=Ty(e,r))||i.enumerable});return s};var q=(s,e,t)=>(t=s!=null?yy(xy(s)):{},zc(e||!s||!s.__esModule?Ja(t,"default",{value:s,enumerable:!0}):t,s)),wy=s=>zc(Ja({},"__esModule",{value:!0}),s);var Ce=b((Ho,Gc)=>{"use strict";var Wr=function(s){return s&&s.Math===Math&&s};Gc.exports=Wr(typeof globalThis=="object"&&globalThis)||Wr(typeof window=="object"&&window)||Wr(typeof self=="object"&&self)||Wr(typeof global=="object"&&global)||Wr(typeof Ho=="object"&&Ho)||function(){return this}()||Function("return this")()});var We=b((AM,Qc)=>{"use strict";Qc.exports=function(s){try{return!!s()}catch{return!0}}});var Yr=b((kM,Wc)=>{"use strict";var Ay=We();Wc.exports=!Ay(function(){var s=function(){}.bind();return typeof s!="function"||s.hasOwnProperty("prototype")})});var jo=b((RM,Jc)=>{"use strict";var ky=Yr(),Xc=Function.prototype,Yc=Xc.apply,Kc=Xc.call;Jc.exports=typeof Reflect=="object"&&Reflect.apply||(ky?Kc.bind(Yc):function(){return Kc.apply(Yc,arguments)})});var ze=b((LM,td)=>{"use strict";var Zc=Yr(),ed=Function.prototype,zo=ed.call,Ry=Zc&&ed.bind.bind(zo,zo);td.exports=Zc?Ry:function(s){return function(){return zo.apply(s,arguments)}}});var Ni=b((MM,rd)=>{"use strict";var id=ze(),Ly=id({}.toString),My=id("".slice);rd.exports=function(s){return My(Ly(s),8,-1)}});var Go=b(($M,sd)=>{"use strict";var $y=Ni(),By=ze();sd.exports=function(s){if($y(s)==="Function")return By(s)}});var Me=b((BM,ad)=>{"use strict";var Qo=typeof document=="object"&&document.all;ad.exports=typeof Qo>"u"&&Qo!==void 0?function(s){return typeof s=="function"||s===Qo}:function(s){return typeof s=="function"}});var Et=b((DM,nd)=>{"use strict";var Dy=We();nd.exports=!Dy(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Pt=b((CM,od)=>{"use strict";var Cy=Yr(),tn=Function.prototype.call;od.exports=Cy?tn.bind(tn):function(){return tn.apply(tn,arguments)}});var Wo=b(cd=>{"use strict";var ud={}.propertyIsEnumerable,ld=Object.getOwnPropertyDescriptor,Vy=ld&&!ud.call({1:2},1);cd.f=Vy?function(e){var t=ld(this,e);return!!t&&t.enumerable}:ud});var Kr=b((OM,dd)=>{"use strict";dd.exports=function(s,e){return{enumerable:!(s&1),configurable:!(s&2),writable:!(s&4),value:e}}});var hd=b((_M,pd)=>{"use strict";var Oy=ze(),_y=We(),Fy=Ni(),Yo=Object,Ny=Oy("".split);pd.exports=_y(function(){return!Yo("z").propertyIsEnumerable(0)})?function(s){return Fy(s)==="String"?Ny(s,""):Yo(s)}:Yo});var or=b((FM,fd)=>{"use strict";fd.exports=function(s){return s==null}});var Pi=b((NM,md)=>{"use strict";var Uy=or(),qy=TypeError;md.exports=function(s){if(Uy(s))throw new qy("Can't call method on "+s);return s}});var Ui=b((UM,bd)=>{"use strict";var Hy=hd(),jy=Pi();bd.exports=function(s){return Hy(jy(s))}});var wt=b((qM,gd)=>{"use strict";var zy=Me();gd.exports=function(s){return typeof s=="object"?s!==null:zy(s)}});var ur=b((HM,Sd)=>{"use strict";Sd.exports={}});var di=b((jM,yd)=>{"use strict";var Ko=ur(),Xo=Ce(),Gy=Me(),vd=function(s){return Gy(s)?s:void 0};yd.exports=function(s,e){return arguments.length<2?vd(Ko[s])||vd(Xo[s]):Ko[s]&&Ko[s][e]||Xo[s]&&Xo[s][e]}});var Xr=b((zM,Td)=>{"use strict";var Qy=ze();Td.exports=Qy({}.isPrototypeOf)});var qi=b((GM,Ed)=>{"use strict";var Wy=Ce(),Id=Wy.navigator,xd=Id&&Id.userAgent;Ed.exports=xd?String(xd):""});var Zo=b((QM,Ld)=>{"use strict";var Rd=Ce(),Jo=qi(),Pd=Rd.process,wd=Rd.Deno,Ad=Pd&&Pd.versions||wd&&wd.version,kd=Ad&&Ad.v8,Ft,rn;kd&&(Ft=kd.split("."),rn=Ft[0]>0&&Ft[0]<4?1:+(Ft[0]+Ft[1]));!rn&&Jo&&(Ft=Jo.match(/Edge\/(\d+)/),(!Ft||Ft[1]>=74)&&(Ft=Jo.match(/Chrome\/(\d+)/),Ft&&(rn=+Ft[1])));Ld.exports=rn});var eu=b((WM,$d)=>{"use strict";var Md=Zo(),Yy=We(),Ky=Ce(),Xy=Ky.String;$d.exports=!!Object.getOwnPropertySymbols&&!Yy(function(){var s=Symbol("symbol detection");return!Xy(s)||!(Object(s)instanceof Symbol)||!Symbol.sham&&Md&&Md<41})});var tu=b((YM,Bd)=>{"use strict";var Jy=eu();Bd.exports=Jy&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var iu=b((KM,Dd)=>{"use strict";var Zy=di(),eT=Me(),tT=Xr(),iT=tu(),rT=Object;Dd.exports=iT?function(s){return typeof s=="symbol"}:function(s){var e=Zy("Symbol");return eT(e)&&tT(e.prototype,rT(s))}});var Jr=b((XM,Cd)=>{"use strict";var sT=String;Cd.exports=function(s){try{return sT(s)}catch{return"Object"}}});var Wt=b((JM,Vd)=>{"use strict";var aT=Me(),nT=Jr(),oT=TypeError;Vd.exports=function(s){if(aT(s))return s;throw new oT(nT(s)+" is not a function")}});var Zr=b((ZM,Od)=>{"use strict";var uT=Wt(),lT=or();Od.exports=function(s,e){var t=s[e];return lT(t)?void 0:uT(t)}});var Fd=b((e$,_d)=>{"use strict";var ru=Pt(),su=Me(),au=wt(),cT=TypeError;_d.exports=function(s,e){var t,i;if(e==="string"&&su(t=s.toString)&&!au(i=ru(t,s))||su(t=s.valueOf)&&!au(i=ru(t,s))||e!=="string"&&su(t=s.toString)&&!au(i=ru(t,s)))return i;throw new cT("Can't convert object to primitive value")}});var Nt=b((t$,Nd)=>{"use strict";Nd.exports=!0});var Hd=b((i$,qd)=>{"use strict";var Ud=Ce(),dT=Object.defineProperty;qd.exports=function(s,e){try{dT(Ud,s,{value:e,configurable:!0,writable:!0})}catch{Ud[s]=e}return e}});var es=b((r$,Gd)=>{"use strict";var pT=Nt(),hT=Ce(),fT=Hd(),jd="__core-js_shared__",zd=Gd.exports=hT[jd]||fT(jd,{});(zd.versions||(zd.versions=[])).push({version:"3.38.0",mode:pT?"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 nu=b((s$,Wd)=>{"use strict";var Qd=es();Wd.exports=function(s,e){return Qd[s]||(Qd[s]=e||{})}});var lr=b((a$,Yd)=>{"use strict";var mT=Pi(),bT=Object;Yd.exports=function(s){return bT(mT(s))}});var Ut=b((n$,Kd)=>{"use strict";var gT=ze(),ST=lr(),vT=gT({}.hasOwnProperty);Kd.exports=Object.hasOwn||function(e,t){return vT(ST(e),t)}});var ou=b((o$,Xd)=>{"use strict";var yT=ze(),TT=0,IT=Math.random(),xT=yT(1 .toString);Xd.exports=function(s){return"Symbol("+(s===void 0?"":s)+")_"+xT(++TT+IT,36)}});var Ye=b((u$,Zd)=>{"use strict";var ET=Ce(),PT=nu(),Jd=Ut(),wT=ou(),AT=eu(),kT=tu(),cr=ET.Symbol,uu=PT("wks"),RT=kT?cr.for||cr:cr&&cr.withoutSetter||wT;Zd.exports=function(s){return Jd(uu,s)||(uu[s]=AT&&Jd(cr,s)?cr[s]:RT("Symbol."+s)),uu[s]}});var rp=b((l$,ip)=>{"use strict";var LT=Pt(),ep=wt(),tp=iu(),MT=Zr(),$T=Fd(),BT=Ye(),DT=TypeError,CT=BT("toPrimitive");ip.exports=function(s,e){if(!ep(s)||tp(s))return s;var t=MT(s,CT),i;if(t){if(e===void 0&&(e="default"),i=LT(t,s,e),!ep(i)||tp(i))return i;throw new DT("Can't convert object to primitive value")}return e===void 0&&(e="number"),$T(s,e)}});var lu=b((c$,sp)=>{"use strict";var VT=rp(),OT=iu();sp.exports=function(s){var e=VT(s,"string");return OT(e)?e:e+""}});var sn=b((d$,np)=>{"use strict";var _T=Ce(),ap=wt(),cu=_T.document,FT=ap(cu)&&ap(cu.createElement);np.exports=function(s){return FT?cu.createElement(s):{}}});var du=b((p$,op)=>{"use strict";var NT=Et(),UT=We(),qT=sn();op.exports=!NT&&!UT(function(){return Object.defineProperty(qT("div"),"a",{get:function(){return 7}}).a!==7})});var cp=b(lp=>{"use strict";var HT=Et(),jT=Pt(),zT=Wo(),GT=Kr(),QT=Ui(),WT=lu(),YT=Ut(),KT=du(),up=Object.getOwnPropertyDescriptor;lp.f=HT?up:function(e,t){if(e=QT(e),t=WT(t),KT)try{return up(e,t)}catch{}if(YT(e,t))return GT(!jT(zT.f,e,t),e[t])}});var pu=b((f$,dp)=>{"use strict";var XT=We(),JT=Me(),ZT=/#|\.prototype\./,ts=function(s,e){var t=tI[eI(s)];return t===rI?!0:t===iI?!1:JT(e)?XT(e):!!e},eI=ts.normalize=function(s){return String(s).replace(ZT,".").toLowerCase()},tI=ts.data={},iI=ts.NATIVE="N",rI=ts.POLYFILL="P";dp.exports=ts});var dr=b((m$,hp)=>{"use strict";var pp=Go(),sI=Wt(),aI=Yr(),nI=pp(pp.bind);hp.exports=function(s,e){return sI(s),e===void 0?s:aI?nI(s,e):function(){return s.apply(e,arguments)}}});var hu=b((b$,fp)=>{"use strict";var oI=Et(),uI=We();fp.exports=oI&&uI(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var Yt=b((g$,mp)=>{"use strict";var lI=wt(),cI=String,dI=TypeError;mp.exports=function(s){if(lI(s))return s;throw new dI(cI(s)+" is not an object")}});var Hi=b(gp=>{"use strict";var pI=Et(),hI=du(),fI=hu(),an=Yt(),bp=lu(),mI=TypeError,fu=Object.defineProperty,bI=Object.getOwnPropertyDescriptor,mu="enumerable",bu="configurable",gu="writable";gp.f=pI?fI?function(e,t,i){if(an(e),t=bp(t),an(i),typeof e=="function"&&t==="prototype"&&"value"in i&&gu in i&&!i[gu]){var r=bI(e,t);r&&r[gu]&&(e[t]=i.value,i={configurable:bu in i?i[bu]:r[bu],enumerable:mu in i?i[mu]:r[mu],writable:!1})}return fu(e,t,i)}:fu:function(e,t,i){if(an(e),t=bp(t),an(i),hI)try{return fu(e,t,i)}catch{}if("get"in i||"set"in i)throw new mI("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var pr=b((v$,Sp)=>{"use strict";var gI=Et(),SI=Hi(),vI=Kr();Sp.exports=gI?function(s,e,t){return SI.f(s,e,vI(1,t))}:function(s,e,t){return s[e]=t,s}});var _e=b((y$,yp)=>{"use strict";var is=Ce(),yI=jo(),TI=Go(),II=Me(),xI=cp().f,EI=pu(),hr=ur(),PI=dr(),fr=pr(),vp=Ut();es();var wI=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 yI(s,this,arguments)};return e.prototype=s.prototype,e};yp.exports=function(s,e){var t=s.target,i=s.global,r=s.stat,a=s.proto,n=i?is:r?is[t]:is[t]&&is[t].prototype,o=i?hr:hr[t]||fr(hr,t,{})[t],u=o.prototype,l,p,c,d,h,m,g,S,y;for(d in e)l=EI(i?d:t+(r?".":"#")+d,s.forced),p=!l&&n&&vp(n,d),m=o[d],p&&(s.dontCallGetSet?(y=xI(n,d),g=y&&y.value):g=n[d]),h=p&&g?g:e[d],!(!l&&!a&&typeof m==typeof h)&&(s.bind&&p?S=PI(h,is):s.wrap&&p?S=wI(h):a&&II(h)?S=TI(h):S=h,(s.sham||h&&h.sham||m&&m.sham)&&fr(S,"sham",!0),fr(o,d,S),a&&(c=t+"Prototype",vp(hr,c)||fr(hr,c,{}),fr(hr[c],d,h),s.real&&u&&(l||!u[d])&&fr(u,d,h)))}});var Ip=b((T$,Tp)=>{"use strict";var AI=Math.ceil,kI=Math.floor;Tp.exports=Math.trunc||function(e){var t=+e;return(t>0?kI:AI)(t)}});var rs=b((I$,xp)=>{"use strict";var RI=Ip();xp.exports=function(s){var e=+s;return e!==e||e===0?0:RI(e)}});var Pp=b((x$,Ep)=>{"use strict";var LI=rs(),MI=Math.max,$I=Math.min;Ep.exports=function(s,e){var t=LI(s);return t<0?MI(t+e,0):$I(t,e)}});var Su=b((E$,wp)=>{"use strict";var BI=rs(),DI=Math.min;wp.exports=function(s){var e=BI(s);return e>0?DI(e,9007199254740991):0}});var mr=b((P$,Ap)=>{"use strict";var CI=Su();Ap.exports=function(s){return CI(s.length)}});var vu=b((w$,Rp)=>{"use strict";var VI=Ui(),OI=Pp(),_I=mr(),kp=function(s){return function(e,t,i){var r=VI(e),a=_I(r);if(a===0)return!s&&-1;var n=OI(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}};Rp.exports={includes:kp(!0),indexOf:kp(!1)}});var ss=b((A$,Lp)=>{"use strict";Lp.exports=function(){}});var Mp=b(()=>{"use strict";var FI=_e(),NI=vu().includes,UI=We(),qI=ss(),HI=UI(function(){return!Array(1).includes()});FI({target:"Array",proto:!0,forced:HI},{includes:function(e){return NI(this,e,arguments.length>1?arguments[1]:void 0)}});qI("includes")});var wi=b((L$,$p)=>{"use strict";var jI=di();$p.exports=jI});var Dp=b((M$,Bp)=>{"use strict";Mp();var zI=wi();Bp.exports=zI("Array","includes")});var Vp=b(($$,Cp)=>{"use strict";var GI=Dp();Cp.exports=GI});var At=b((B$,Op)=>{"use strict";var QI=Vp();Op.exports=QI});var on=b((j$,Np)=>{"use strict";var YI=nu(),KI=ou(),Fp=YI("keys");Np.exports=function(s){return Fp[s]||(Fp[s]=KI(s))}});var qp=b((z$,Up)=>{"use strict";var XI=We();Up.exports=!XI(function(){function s(){}return s.prototype.constructor=null,Object.getPrototypeOf(new s)!==s.prototype})});var un=b((G$,jp)=>{"use strict";var JI=Ut(),ZI=Me(),ex=lr(),tx=on(),ix=qp(),Hp=tx("IE_PROTO"),yu=Object,rx=yu.prototype;jp.exports=ix?yu.getPrototypeOf:function(s){var e=ex(s);if(JI(e,Hp))return e[Hp];var t=e.constructor;return ZI(t)&&e instanceof t?t.prototype:e instanceof yu?rx:null}});var ln=b((Q$,zp)=>{"use strict";zp.exports={}});var Wp=b((W$,Qp)=>{"use strict";var sx=ze(),Tu=Ut(),ax=Ui(),nx=vu().indexOf,ox=ln(),Gp=sx([].push);Qp.exports=function(s,e){var t=ax(s),i=0,r=[],a;for(a in t)!Tu(ox,a)&&Tu(t,a)&&Gp(r,a);for(;e.length>i;)Tu(t,a=e[i++])&&(~nx(r,a)||Gp(r,a));return r}});var Iu=b((Y$,Yp)=>{"use strict";Yp.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var xu=b((K$,Kp)=>{"use strict";var ux=Wp(),lx=Iu();Kp.exports=Object.keys||function(e){return ux(e,lx)}});var Eu=b((X$,th)=>{"use strict";var Jp=Et(),cx=We(),Zp=ze(),dx=un(),px=xu(),hx=Ui(),fx=Wo().f,eh=Zp(fx),mx=Zp([].push),bx=Jp&&cx(function(){var s=Object.create(null);return s[2]=2,!eh(s,2)}),Xp=function(s){return function(e){for(var t=hx(e),i=px(t),r=bx&&dx(t)===null,a=i.length,n=0,o=[],u;a>n;)u=i[n++],(!Jp||(r?u in t:eh(t,u)))&&mx(o,s?[u,t[u]]:t[u]);return o}};th.exports={entries:Xp(!0),values:Xp(!1)}});var ih=b(()=>{"use strict";var gx=_e(),Sx=Eu().entries;gx({target:"Object",stat:!0},{entries:function(e){return Sx(e)}})});var sh=b((eB,rh)=>{"use strict";ih();var vx=ur();rh.exports=vx.Object.entries});var nh=b((tB,ah)=>{"use strict";var yx=sh();ah.exports=yx});var ji=b((iB,oh)=>{"use strict";var Tx=nh();oh.exports=Tx});var zi=b((rB,uh)=>{"use strict";uh.exports={}});var dh=b((sB,ch)=>{"use strict";var Ix=Ce(),xx=Me(),lh=Ix.WeakMap;ch.exports=xx(lh)&&/native code/.test(String(lh))});var ku=b((aB,fh)=>{"use strict";var Ex=dh(),hh=Ce(),Px=wt(),wx=pr(),Pu=Ut(),wu=es(),Ax=on(),kx=ln(),ph="Object already initialized",Au=hh.TypeError,Rx=hh.WeakMap,cn,as,dn,Lx=function(s){return dn(s)?as(s):cn(s,{})},Mx=function(s){return function(e){var t;if(!Px(e)||(t=as(e)).type!==s)throw new Au("Incompatible receiver, "+s+" required");return t}};Ex||wu.state?(qt=wu.state||(wu.state=new Rx),qt.get=qt.get,qt.has=qt.has,qt.set=qt.set,cn=function(s,e){if(qt.has(s))throw new Au(ph);return e.facade=s,qt.set(s,e),e},as=function(s){return qt.get(s)||{}},dn=function(s){return qt.has(s)}):(Gi=Ax("state"),kx[Gi]=!0,cn=function(s,e){if(Pu(s,Gi))throw new Au(ph);return e.facade=s,wx(s,Gi,e),e},as=function(s){return Pu(s,Gi)?s[Gi]:{}},dn=function(s){return Pu(s,Gi)});var qt,Gi;fh.exports={set:cn,get:as,has:dn,enforce:Lx,getterFor:Mx}});var Mu=b((nB,bh)=>{"use strict";var Ru=Et(),$x=Ut(),mh=Function.prototype,Bx=Ru&&Object.getOwnPropertyDescriptor,Lu=$x(mh,"name"),Dx=Lu&&function(){}.name==="something",Cx=Lu&&(!Ru||Ru&&Bx(mh,"name").configurable);bh.exports={EXISTS:Lu,PROPER:Dx,CONFIGURABLE:Cx}});var Sh=b(gh=>{"use strict";var Vx=Et(),Ox=hu(),_x=Hi(),Fx=Yt(),Nx=Ui(),Ux=xu();gh.f=Vx&&!Ox?Object.defineProperties:function(e,t){Fx(e);for(var i=Nx(t),r=Ux(t),a=r.length,n=0,o;a>n;)_x.f(e,o=r[n++],i[o]);return e}});var $u=b((uB,vh)=>{"use strict";var qx=di();vh.exports=qx("document","documentElement")});var Vu=b((lB,wh)=>{"use strict";var Hx=Yt(),jx=Sh(),yh=Iu(),zx=ln(),Gx=$u(),Qx=sn(),Wx=on(),Th=">",Ih="<",Du="prototype",Cu="script",Eh=Wx("IE_PROTO"),Bu=function(){},Ph=function(s){return Ih+Cu+Th+s+Ih+"/"+Cu+Th},xh=function(s){s.write(Ph("")),s.close();var e=s.parentWindow.Object;return s=null,e},Yx=function(){var s=Qx("iframe"),e="java"+Cu+":",t;return s.style.display="none",Gx.appendChild(s),s.src=String(e),t=s.contentWindow.document,t.open(),t.write(Ph("document.F=Object")),t.close(),t.F},pn,hn=function(){try{pn=new ActiveXObject("htmlfile")}catch{}hn=typeof document<"u"?document.domain&&pn?xh(pn):Yx():xh(pn);for(var s=yh.length;s--;)delete hn[Du][yh[s]];return hn()};zx[Eh]=!0;wh.exports=Object.create||function(e,t){var i;return e!==null?(Bu[Du]=Hx(e),i=new Bu,Bu[Du]=null,i[Eh]=e):i=hn(),t===void 0?i:jx.f(i,t)}});var br=b((cB,Ah)=>{"use strict";var Kx=pr();Ah.exports=function(s,e,t,i){return i&&i.enumerable?s[e]=t:Kx(s,e,t),s}});var Nu=b((dB,Lh)=>{"use strict";var Xx=We(),Jx=Me(),Zx=wt(),eE=Vu(),kh=un(),tE=br(),iE=Ye(),rE=Nt(),Fu=iE("iterator"),Rh=!1,pi,Ou,_u;[].keys&&(_u=[].keys(),"next"in _u?(Ou=kh(kh(_u)),Ou!==Object.prototype&&(pi=Ou)):Rh=!0);var sE=!Zx(pi)||Xx(function(){var s={};return pi[Fu].call(s)!==s});sE?pi={}:rE&&(pi=eE(pi));Jx(pi[Fu])||tE(pi,Fu,function(){return this});Lh.exports={IteratorPrototype:pi,BUGGY_SAFARI_ITERATORS:Rh}});var fn=b((pB,$h)=>{"use strict";var aE=Ye(),nE=aE("toStringTag"),Mh={};Mh[nE]="z";$h.exports=String(Mh)==="[object z]"});var ns=b((hB,Bh)=>{"use strict";var oE=fn(),uE=Me(),mn=Ni(),lE=Ye(),cE=lE("toStringTag"),dE=Object,pE=mn(function(){return arguments}())==="Arguments",hE=function(s,e){try{return s[e]}catch{}};Bh.exports=oE?mn:function(s){var e,t,i;return s===void 0?"Undefined":s===null?"Null":typeof(t=hE(e=dE(s),cE))=="string"?t:pE?mn(e):(i=mn(e))==="Object"&&uE(e.callee)?"Arguments":i}});var Ch=b((fB,Dh)=>{"use strict";var fE=fn(),mE=ns();Dh.exports=fE?{}.toString:function(){return"[object "+mE(this)+"]"}});var os=b((mB,Oh)=>{"use strict";var bE=fn(),gE=Hi().f,SE=pr(),vE=Ut(),yE=Ch(),TE=Ye(),Vh=TE("toStringTag");Oh.exports=function(s,e,t,i){var r=t?s:s&&s.prototype;r&&(vE(r,Vh)||gE(r,Vh,{configurable:!0,value:e}),i&&!bE&&SE(r,"toString",yE))}});var Fh=b((bB,_h)=>{"use strict";var IE=Nu().IteratorPrototype,xE=Vu(),EE=Kr(),PE=os(),wE=zi(),AE=function(){return this};_h.exports=function(s,e,t,i){var r=e+" Iterator";return s.prototype=xE(IE,{next:EE(+!i,t)}),PE(s,r,!1,!0),wE[r]=AE,s}});var Uh=b((gB,Nh)=>{"use strict";var kE=ze(),RE=Wt();Nh.exports=function(s,e,t){try{return kE(RE(Object.getOwnPropertyDescriptor(s,e)[t]))}catch{}}});var Hh=b((SB,qh)=>{"use strict";var LE=wt();qh.exports=function(s){return LE(s)||s===null}});var zh=b((vB,jh)=>{"use strict";var ME=Hh(),$E=String,BE=TypeError;jh.exports=function(s){if(ME(s))return s;throw new BE("Can't set "+$E(s)+" as a prototype")}});var Uu=b((yB,Gh)=>{"use strict";var DE=Uh(),CE=wt(),VE=Pi(),OE=zh();Gh.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var s=!1,e={},t;try{t=DE(Object.prototype,"__proto__","set"),t(e,[]),s=e instanceof Array}catch{}return function(r,a){return VE(r),OE(a),CE(r)&&(s?t(r,a):r.__proto__=a),r}}():void 0)});var sf=b((TB,rf)=>{"use strict";var _E=_e(),FE=Pt(),bn=Nt(),ef=Mu(),NE=Me(),UE=Fh(),Qh=un(),Wh=Uu(),qE=os(),HE=pr(),qu=br(),jE=Ye(),Yh=zi(),tf=Nu(),zE=ef.PROPER,GE=ef.CONFIGURABLE,Kh=tf.IteratorPrototype,gn=tf.BUGGY_SAFARI_ITERATORS,us=jE("iterator"),Xh="keys",ls="values",Jh="entries",Zh=function(){return this};rf.exports=function(s,e,t,i,r,a,n){UE(t,e,i);var o=function(y){if(y===r&&d)return d;if(!gn&&y&&y in p)return p[y];switch(y){case Xh:return function(){return new t(this,y)};case ls:return function(){return new t(this,y)};case Jh:return function(){return new t(this,y)}}return function(){return new t(this)}},u=e+" Iterator",l=!1,p=s.prototype,c=p[us]||p["@@iterator"]||r&&p[r],d=!gn&&c||o(r),h=e==="Array"&&p.entries||c,m,g,S;if(h&&(m=Qh(h.call(new s)),m!==Object.prototype&&m.next&&(!bn&&Qh(m)!==Kh&&(Wh?Wh(m,Kh):NE(m[us])||qu(m,us,Zh)),qE(m,u,!0,!0),bn&&(Yh[u]=Zh))),zE&&r===ls&&c&&c.name!==ls&&(!bn&&GE?HE(p,"name",ls):(l=!0,d=function(){return FE(c,this)})),r)if(g={values:o(ls),keys:a?d:o(Xh),entries:o(Jh)},n)for(S in g)(gn||l||!(S in p))&&qu(p,S,g[S]);else _E({target:e,proto:!0,forced:gn||l},g);return(!bn||n)&&p[us]!==d&&qu(p,us,d,{name:r}),Yh[e]=d,g}});var nf=b((IB,af)=>{"use strict";af.exports=function(s,e){return{value:s,done:e}}});var ju=b((xB,df)=>{"use strict";var QE=Ui(),Hu=ss(),of=zi(),lf=ku(),WE=Hi().f,YE=sf(),Sn=nf(),KE=Nt(),XE=Et(),cf="Array Iterator",JE=lf.set,ZE=lf.getterFor(cf);df.exports=YE(Array,"Array",function(s,e){JE(this,{type:cf,target:QE(s),index:0,kind:e})},function(){var s=ZE(this),e=s.target,t=s.index++;if(!e||t>=e.length)return s.target=void 0,Sn(void 0,!0);switch(s.kind){case"keys":return Sn(t,!1);case"values":return Sn(e[t],!1)}return Sn([t,e[t]],!1)},"values");var uf=of.Arguments=of.Array;Hu("keys");Hu("values");Hu("entries");if(!KE&&XE&&uf.name!=="values")try{WE(uf,"name",{value:"values"})}catch{}});var hf=b((EB,pf)=>{"use strict";var eP=Ye(),tP=zi(),iP=eP("iterator"),rP=Array.prototype;pf.exports=function(s){return s!==void 0&&(tP.Array===s||rP[iP]===s)}});var zu=b((PB,mf)=>{"use strict";var sP=ns(),ff=Zr(),aP=or(),nP=zi(),oP=Ye(),uP=oP("iterator");mf.exports=function(s){if(!aP(s))return ff(s,uP)||ff(s,"@@iterator")||nP[sP(s)]}});var gf=b((wB,bf)=>{"use strict";var lP=Pt(),cP=Wt(),dP=Yt(),pP=Jr(),hP=zu(),fP=TypeError;bf.exports=function(s,e){var t=arguments.length<2?hP(s):e;if(cP(t))return dP(lP(t,s));throw new fP(pP(s)+" is not iterable")}});var yf=b((AB,vf)=>{"use strict";var mP=Pt(),Sf=Yt(),bP=Zr();vf.exports=function(s,e,t){var i,r;Sf(s);try{if(i=bP(s,"return"),!i){if(e==="throw")throw t;return t}i=mP(i,s)}catch(a){r=!0,i=a}if(e==="throw")throw t;if(r)throw i;return Sf(i),t}});var yn=b((kB,Ef)=>{"use strict";var gP=dr(),SP=Pt(),vP=Yt(),yP=Jr(),TP=hf(),IP=mr(),Tf=Xr(),xP=gf(),EP=zu(),If=yf(),PP=TypeError,vn=function(s,e){this.stopped=s,this.result=e},xf=vn.prototype;Ef.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=gP(e,i),l,p,c,d,h,m,g,S=function(w){return l&&If(l,"normal",w),new vn(!0,w)},y=function(w){return r?(vP(w),o?u(w[0],w[1],S):u(w[0],w[1])):o?u(w,S):u(w)};if(a)l=s.iterator;else if(n)l=s;else{if(p=EP(s),!p)throw new PP(yP(s)+" is not iterable");if(TP(p)){for(c=0,d=IP(s);d>c;c++)if(h=y(s[c]),h&&Tf(xf,h))return h;return new vn(!1)}l=xP(s,p)}for(m=a?s.next:l.next;!(g=SP(m,l)).done;){try{h=y(g.value)}catch(w){If(l,"throw",w)}if(typeof h=="object"&&h&&Tf(xf,h))return h}return new vn(!1)}});var wf=b((RB,Pf)=>{"use strict";var wP=Et(),AP=Hi(),kP=Kr();Pf.exports=function(s,e,t){wP?AP.f(s,e,kP(0,t)):s[e]=t}});var Af=b(()=>{"use strict";var RP=_e(),LP=yn(),MP=wf();RP({target:"Object",stat:!0},{fromEntries:function(e){var t={};return LP(e,function(i,r){MP(t,i,r)},{AS_ENTRIES:!0}),t}})});var Rf=b(($B,kf)=>{"use strict";ju();Af();var $P=ur();kf.exports=$P.Object.fromEntries});var Mf=b((BB,Lf)=>{"use strict";Lf.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 Bf=b(()=>{"use strict";ju();var BP=Mf(),DP=Ce(),CP=os(),$f=zi();for(Tn in BP)CP(DP[Tn],Tn),$f[Tn]=$f.Array;var Tn});var Cf=b((VB,Df)=>{"use strict";var VP=Rf();Bf();Df.exports=VP});var Gu=b((OB,Vf)=>{"use strict";var OP=Cf();Vf.exports=OP});var Of=b(()=>{"use strict"});var Qu=b((NB,_f)=>{"use strict";var cs=Ce(),_P=qi(),FP=Ni(),In=function(s){return _P.slice(0,s.length)===s};_f.exports=function(){return In("Bun/")?"BUN":In("Cloudflare-Workers")?"CLOUDFLARE":In("Deno/")?"DENO":In("Node.js/")?"NODE":cs.Bun&&typeof Bun.version=="string"?"BUN":cs.Deno&&typeof Deno.version=="object"?"DENO":FP(cs.process)==="process"?"NODE":cs.window&&cs.document?"BROWSER":"REST"}()});var xn=b((UB,Ff)=>{"use strict";var NP=Qu();Ff.exports=NP==="NODE"});var Uf=b((qB,Nf)=>{"use strict";var UP=Hi();Nf.exports=function(s,e,t){return UP.f(s,e,t)}});var jf=b((HB,Hf)=>{"use strict";var qP=di(),HP=Uf(),jP=Ye(),zP=Et(),qf=jP("species");Hf.exports=function(s){var e=qP(s);zP&&e&&!e[qf]&&HP(e,qf,{configurable:!0,get:function(){return this}})}});var Gf=b((jB,zf)=>{"use strict";var GP=Xr(),QP=TypeError;zf.exports=function(s,e){if(GP(e,s))return s;throw new QP("Incorrect invocation")}});var Yu=b((zB,Qf)=>{"use strict";var WP=ze(),YP=Me(),Wu=es(),KP=WP(Function.toString);YP(Wu.inspectSource)||(Wu.inspectSource=function(s){return KP(s)});Qf.exports=Wu.inspectSource});var Xu=b((GB,Jf)=>{"use strict";var XP=ze(),JP=We(),Wf=Me(),ZP=ns(),ew=di(),tw=Yu(),Yf=function(){},Kf=ew("Reflect","construct"),Ku=/^\s*(?:class|function)\b/,iw=XP(Ku.exec),rw=!Ku.test(Yf),ds=function(e){if(!Wf(e))return!1;try{return Kf(Yf,[],e),!0}catch{return!1}},Xf=function(e){if(!Wf(e))return!1;switch(ZP(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return rw||!!iw(Ku,tw(e))}catch{return!0}};Xf.sham=!0;Jf.exports=!Kf||JP(function(){var s;return ds(ds.call)||!ds(Object)||!ds(function(){s=!0})||s})?Xf:ds});var em=b((QB,Zf)=>{"use strict";var sw=Xu(),aw=Jr(),nw=TypeError;Zf.exports=function(s){if(sw(s))return s;throw new nw(aw(s)+" is not a constructor")}});var Ju=b((WB,im)=>{"use strict";var tm=Yt(),ow=em(),uw=or(),lw=Ye(),cw=lw("species");im.exports=function(s,e){var t=tm(s).constructor,i;return t===void 0||uw(i=tm(t)[cw])?e:ow(i)}});var sm=b((YB,rm)=>{"use strict";var dw=ze();rm.exports=dw([].slice)});var nm=b((KB,am)=>{"use strict";var pw=TypeError;am.exports=function(s,e){if(s<e)throw new pw("Not enough arguments");return s}});var Zu=b((XB,om)=>{"use strict";var hw=qi();om.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(hw)});var ul=b((JB,bm)=>{"use strict";var kt=Ce(),fw=jo(),mw=dr(),um=Me(),bw=Ut(),mm=We(),lm=$u(),gw=sm(),cm=sn(),Sw=nm(),vw=Zu(),yw=xn(),al=kt.setImmediate,nl=kt.clearImmediate,Tw=kt.process,el=kt.Dispatch,Iw=kt.Function,dm=kt.MessageChannel,xw=kt.String,tl=0,ps={},pm="onreadystatechange",hs,Qi,il,rl;mm(function(){hs=kt.location});var ol=function(s){if(bw(ps,s)){var e=ps[s];delete ps[s],e()}},sl=function(s){return function(){ol(s)}},hm=function(s){ol(s.data)},fm=function(s){kt.postMessage(xw(s),hs.protocol+"//"+hs.host)};(!al||!nl)&&(al=function(e){Sw(arguments.length,1);var t=um(e)?e:Iw(e),i=gw(arguments,1);return ps[++tl]=function(){fw(t,void 0,i)},Qi(tl),tl},nl=function(e){delete ps[e]},yw?Qi=function(s){Tw.nextTick(sl(s))}:el&&el.now?Qi=function(s){el.now(sl(s))}:dm&&!vw?(il=new dm,rl=il.port2,il.port1.onmessage=hm,Qi=mw(rl.postMessage,rl)):kt.addEventListener&&um(kt.postMessage)&&!kt.importScripts&&hs&&hs.protocol!=="file:"&&!mm(fm)?(Qi=fm,kt.addEventListener("message",hm,!1)):pm in cm("script")?Qi=function(s){lm.appendChild(cm("script"))[pm]=function(){lm.removeChild(this),ol(s)}}:Qi=function(s){setTimeout(sl(s),0)});bm.exports={set:al,clear:nl}});var vm=b((ZB,Sm)=>{"use strict";var gm=Ce(),Ew=Et(),Pw=Object.getOwnPropertyDescriptor;Sm.exports=function(s){if(!Ew)return gm[s];var e=Pw(gm,s);return e&&e.value}});var ll=b((eD,Tm)=>{"use strict";var ym=function(){this.head=null,this.tail=null};ym.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}}};Tm.exports=ym});var xm=b((tD,Im)=>{"use strict";var ww=qi();Im.exports=/ipad|iphone|ipod/i.test(ww)&&typeof Pebble<"u"});var Pm=b((iD,Em)=>{"use strict";var Aw=qi();Em.exports=/web0s(?!.*chrome)/i.test(Aw)});var $m=b((rD,Mm)=>{"use strict";var Sr=Ce(),kw=vm(),wm=dr(),cl=ul().set,Rw=ll(),Lw=Zu(),Mw=xm(),$w=Pm(),dl=xn(),Am=Sr.MutationObserver||Sr.WebKitMutationObserver,km=Sr.document,Rm=Sr.process,En=Sr.Promise,fl=kw("queueMicrotask"),gr,pl,hl,Pn,Lm;fl||(fs=new Rw,ms=function(){var s,e;for(dl&&(s=Rm.domain)&&s.exit();e=fs.get();)try{e()}catch(t){throw fs.head&&gr(),t}s&&s.enter()},!Lw&&!dl&&!$w&&Am&&km?(pl=!0,hl=km.createTextNode(""),new Am(ms).observe(hl,{characterData:!0}),gr=function(){hl.data=pl=!pl}):!Mw&&En&&En.resolve?(Pn=En.resolve(void 0),Pn.constructor=En,Lm=wm(Pn.then,Pn),gr=function(){Lm(ms)}):dl?gr=function(){Rm.nextTick(ms)}:(cl=wm(cl,Sr),gr=function(){cl(ms)}),fl=function(s){fs.head||gr(),fs.add(s)});var fs,ms;Mm.exports=fl});var Dm=b((sD,Bm)=>{"use strict";Bm.exports=function(s,e){try{arguments.length===1?console.error(s):console.error(s,e)}catch{}}});var wn=b((aD,Cm)=>{"use strict";Cm.exports=function(s){try{return{error:!1,value:s()}}catch(e){return{error:!0,value:e}}}});var Wi=b((nD,Vm)=>{"use strict";var Bw=Ce();Vm.exports=Bw.Promise});var vr=b((oD,Nm)=>{"use strict";var Dw=Ce(),bs=Wi(),Cw=Me(),Vw=pu(),Ow=Yu(),_w=Ye(),Om=Qu(),Fw=Nt(),ml=Zo(),_m=bs&&bs.prototype,Nw=_w("species"),bl=!1,Fm=Cw(Dw.PromiseRejectionEvent),Uw=Vw("Promise",function(){var s=Ow(bs),e=s!==String(bs);if(!e&&ml===66||Fw&&!(_m.catch&&_m.finally))return!0;if(!ml||ml<51||!/native code/.test(s)){var t=new bs(function(a){a(1)}),i=function(a){a(function(){},function(){})},r=t.constructor={};if(r[Nw]=i,bl=t.then(function(){})instanceof i,!bl)return!0}return!e&&(Om==="BROWSER"||Om==="DENO")&&!Fm});Nm.exports={CONSTRUCTOR:Uw,REJECTION_EVENT:Fm,SUBCLASSING:bl}});var yr=b((uD,qm)=>{"use strict";var Um=Wt(),qw=TypeError,Hw=function(s){var e,t;this.promise=new s(function(i,r){if(e!==void 0||t!==void 0)throw new qw("Bad Promise constructor");e=i,t=r}),this.resolve=Um(e),this.reject=Um(t)};qm.exports.f=function(s){return new Hw(s)}});var ob=b(()=>{"use strict";var jw=_e(),zw=Nt(),Ln=xn(),Ai=Ce(),Er=Pt(),Hm=br(),jm=Uu(),Gw=os(),Qw=jf(),Ww=Wt(),Rn=Me(),Yw=wt(),Kw=Gf(),Xw=Ju(),Ym=ul().set,Tl=$m(),Jw=Dm(),Zw=wn(),eA=ll(),Km=ku(),Mn=Wi(),Il=vr(),Xm=yr(),$n="Promise",Jm=Il.CONSTRUCTOR,tA=Il.REJECTION_EVENT,iA=Il.SUBCLASSING,gl=Km.getterFor($n),rA=Km.set,Tr=Mn&&Mn.prototype,Yi=Mn,An=Tr,Zm=Ai.TypeError,Sl=Ai.document,xl=Ai.process,vl=Xm.f,sA=vl,aA=!!(Sl&&Sl.createEvent&&Ai.dispatchEvent),eb="unhandledrejection",nA="rejectionhandled",zm=0,tb=1,oA=2,El=1,ib=2,kn,Gm,uA,Qm,rb=function(s){var e;return Yw(s)&&Rn(e=s.then)?e:!1},sb=function(s,e){var t=e.value,i=e.state===tb,r=i?s.ok:s.fail,a=s.resolve,n=s.reject,o=s.domain,u,l,p;try{r?(i||(e.rejection===ib&&cA(e),e.rejection=El),r===!0?u=t:(o&&o.enter(),u=r(t),o&&(o.exit(),p=!0)),u===s.promise?n(new Zm("Promise-chain cycle")):(l=rb(u))?Er(l,u,a,n):a(u)):n(t)}catch(c){o&&!p&&o.exit(),n(c)}},ab=function(s,e){s.notified||(s.notified=!0,Tl(function(){for(var t=s.reactions,i;i=t.get();)sb(i,s);s.notified=!1,e&&!s.rejection&&lA(s)}))},nb=function(s,e,t){var i,r;aA?(i=Sl.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(s,!1,!0),Ai.dispatchEvent(i)):i={promise:e,reason:t},!tA&&(r=Ai["on"+s])?r(i):s===eb&&Jw("Unhandled promise rejection",t)},lA=function(s){Er(Ym,Ai,function(){var e=s.facade,t=s.value,i=Wm(s),r;if(i&&(r=Zw(function(){Ln?xl.emit("unhandledRejection",t,e):nb(eb,e,t)}),s.rejection=Ln||Wm(s)?ib:El,r.error))throw r.value})},Wm=function(s){return s.rejection!==El&&!s.parent},cA=function(s){Er(Ym,Ai,function(){var e=s.facade;Ln?xl.emit("rejectionHandled",e):nb(nA,e,s.value)})},Ir=function(s,e,t){return function(i){s(e,i,t)}},xr=function(s,e,t){s.done||(s.done=!0,t&&(s=t),s.value=e,s.state=oA,ab(s,!0))},yl=function(s,e,t){if(!s.done){s.done=!0,t&&(s=t);try{if(s.facade===e)throw new Zm("Promise can't be resolved itself");var i=rb(e);i?Tl(function(){var r={done:!1};try{Er(i,e,Ir(yl,r,s),Ir(xr,r,s))}catch(a){xr(r,a,s)}}):(s.value=e,s.state=tb,ab(s,!1))}catch(r){xr({done:!1},r,s)}}};if(Jm&&(Yi=function(e){Kw(this,An),Ww(e),Er(kn,this);var t=gl(this);try{e(Ir(yl,t),Ir(xr,t))}catch(i){xr(t,i)}},An=Yi.prototype,kn=function(e){rA(this,{type:$n,done:!1,notified:!1,parent:!1,reactions:new eA,rejection:!1,state:zm,value:void 0})},kn.prototype=Hm(An,"then",function(e,t){var i=gl(this),r=vl(Xw(this,Yi));return i.parent=!0,r.ok=Rn(e)?e:!0,r.fail=Rn(t)&&t,r.domain=Ln?xl.domain:void 0,i.state===zm?i.reactions.add(r):Tl(function(){sb(r,i)}),r.promise}),Gm=function(){var s=new kn,e=gl(s);this.promise=s,this.resolve=Ir(yl,e),this.reject=Ir(xr,e)},Xm.f=vl=function(s){return s===Yi||s===uA?new Gm(s):sA(s)},!zw&&Rn(Mn)&&Tr!==Object.prototype)){Qm=Tr.then,iA||Hm(Tr,"then",function(e,t){var i=this;return new Yi(function(r,a){Er(Qm,i,r,a)}).then(e,t)},{unsafe:!0});try{delete Tr.constructor}catch{}jm&&jm(Tr,An)}jw({global:!0,constructor:!0,wrap:!0,forced:Jm},{Promise:Yi});Gw(Yi,$n,!1,!0);Qw($n)});var pb=b((dD,db)=>{"use strict";var dA=Ye(),lb=dA("iterator"),cb=!1;try{ub=0,Pl={next:function(){return{done:!!ub++}},return:function(){cb=!0}},Pl[lb]=function(){return this},Array.from(Pl,function(){throw 2})}catch{}var ub,Pl;db.exports=function(s,e){try{if(!e&&!cb)return!1}catch{return!1}var t=!1;try{var i={};i[lb]=function(){return{next:function(){return{done:t=!0}}}},s(i)}catch{}return t}});var wl=b((pD,hb)=>{"use strict";var pA=Wi(),hA=pb(),fA=vr().CONSTRUCTOR;hb.exports=fA||!hA(function(s){pA.all(s).then(void 0,function(){})})});var fb=b(()=>{"use strict";var mA=_e(),bA=Pt(),gA=Wt(),SA=yr(),vA=wn(),yA=yn(),TA=wl();mA({target:"Promise",stat:!0,forced:TA},{all:function(e){var t=this,i=SA.f(t),r=i.resolve,a=i.reject,n=vA(function(){var o=gA(t.resolve),u=[],l=0,p=1;yA(e,function(c){var d=l++,h=!1;p++,bA(o,t,c).then(function(m){h||(h=!0,u[d]=m,--p||r(u))},a)}),--p||r(u)});return n.error&&a(n.value),i.promise}})});var bb=b(()=>{"use strict";var IA=_e(),xA=Nt(),EA=vr().CONSTRUCTOR,kl=Wi(),PA=di(),wA=Me(),AA=br(),mb=kl&&kl.prototype;IA({target:"Promise",proto:!0,forced:EA,real:!0},{catch:function(s){return this.then(void 0,s)}});!xA&&wA(kl)&&(Al=PA("Promise").prototype.catch,mb.catch!==Al&&AA(mb,"catch",Al,{unsafe:!0}));var Al});var gb=b(()=>{"use strict";var kA=_e(),RA=Pt(),LA=Wt(),MA=yr(),$A=wn(),BA=yn(),DA=wl();kA({target:"Promise",stat:!0,forced:DA},{race:function(e){var t=this,i=MA.f(t),r=i.reject,a=$A(function(){var n=LA(t.resolve);BA(e,function(o){RA(n,t,o).then(i.resolve,r)})});return a.error&&r(a.value),i.promise}})});var Sb=b(()=>{"use strict";var CA=_e(),VA=yr(),OA=vr().CONSTRUCTOR;CA({target:"Promise",stat:!0,forced:OA},{reject:function(e){var t=VA.f(this),i=t.reject;return i(e),t.promise}})});var Rl=b((TD,vb)=>{"use strict";var _A=Yt(),FA=wt(),NA=yr();vb.exports=function(s,e){if(_A(s),FA(e)&&e.constructor===s)return e;var t=NA.f(s),i=t.resolve;return i(e),t.promise}});var Ib=b(()=>{"use strict";var UA=_e(),qA=di(),yb=Nt(),HA=Wi(),Tb=vr().CONSTRUCTOR,jA=Rl(),zA=qA("Promise"),GA=yb&&!Tb;UA({target:"Promise",stat:!0,forced:yb||Tb},{resolve:function(e){return jA(GA&&this===zA?HA:this,e)}})});var xb=b(()=>{"use strict";ob();fb();bb();gb();Sb();Ib()});var Ab=b(()=>{"use strict";var QA=_e(),WA=Nt(),Bn=Wi(),YA=We(),Pb=di(),wb=Me(),KA=Ju(),Eb=Rl(),XA=br(),Ml=Bn&&Bn.prototype,JA=!!Bn&&YA(function(){Ml.finally.call({then:function(){}},function(){})});QA({target:"Promise",proto:!0,real:!0,forced:JA},{finally:function(s){var e=KA(this,Pb("Promise")),t=wb(s);return this.then(t?function(i){return Eb(e,s()).then(function(){return i})}:s,t?function(i){return Eb(e,s()).then(function(){throw i})}:s)}});!WA&&wb(Bn)&&(Ll=Pb("Promise").prototype.finally,Ml.finally!==Ll&&XA(Ml,"finally",Ll,{unsafe:!0}));var Ll});var Rb=b((kD,kb)=>{"use strict";Of();xb();Ab();var ZA=wi();kb.exports=ZA("Promise","finally")});var Mb=b((RD,Lb)=>{"use strict";var ek=Rb();Lb.exports=ek});var gs=b((LD,$b)=>{"use strict";var tk=Mb();$b.exports=tk});var Fb=b(()=>{"use strict";var nk=_e(),ok=Eu().values;nk({target:"Object",stat:!0},{values:function(e){return ok(e)}})});var Ub=b((o0,Nb)=>{"use strict";Fb();var uk=ur();Nb.exports=uk.Object.values});var Hb=b((u0,qb)=>{"use strict";var lk=Ub();qb.exports=lk});var Ki=b((l0,jb)=>{"use strict";var ck=Hb();jb.exports=ck});var tg=b(()=>{"use strict";var yk=_e(),Tk=lr(),Ik=mr(),xk=rs(),Ek=ss();yk({target:"Array",proto:!0},{at:function(e){var t=Tk(this),i=Ik(t),r=xk(e),a=r>=0?r:i+r;return a<0||a>=i?void 0:t[a]}});Ek("at")});var rg=b((hC,ig)=>{"use strict";tg();var Pk=wi();ig.exports=Pk("Array","at")});var ag=b((fC,sg)=>{"use strict";var wk=rg();sg.exports=wk});var Ht=b((mC,ng)=>{"use strict";var Ak=ag();ng.exports=Ak});var Kl=b((HV,kg)=>{"use strict";var _k=Ni();kg.exports=Array.isArray||function(e){return _k(e)==="Array"}});var Lg=b((jV,Rg)=>{"use strict";var Fk=TypeError,Nk=9007199254740991;Rg.exports=function(s){if(s>Nk)throw Fk("Maximum allowed index exceeded");return s}});var Bg=b((zV,$g)=>{"use strict";var Uk=Kl(),qk=mr(),Hk=Lg(),jk=dr(),Mg=function(s,e,t,i,r,a,n,o){for(var u=r,l=0,p=n?jk(n,o):!1,c,d;l<i;)l in t&&(c=p?p(t[l],l,e):t[l],a>0&&Uk(c)?(d=qk(c),u=Mg(s,e,c,d,u,a-1)-1):(Hk(u+1),s[u]=c),u++),l++;return u};$g.exports=Mg});var Og=b((GV,Vg)=>{"use strict";var Dg=Kl(),zk=Xu(),Gk=wt(),Qk=Ye(),Wk=Qk("species"),Cg=Array;Vg.exports=function(s){var e;return Dg(s)&&(e=s.constructor,zk(e)&&(e===Cg||Dg(e.prototype))?e=void 0:Gk(e)&&(e=e[Wk],e===null&&(e=void 0))),e===void 0?Cg:e}});var Fg=b((QV,_g)=>{"use strict";var Yk=Og();_g.exports=function(s,e){return new(Yk(s))(e===0?0:e)}});var Ng=b(()=>{"use strict";var Kk=_e(),Xk=Bg(),Jk=Wt(),Zk=lr(),eR=mr(),tR=Fg();Kk({target:"Array",proto:!0},{flatMap:function(e){var t=Zk(this),i=eR(t),r;return Jk(e),r=tR(t,0),r.length=Xk(r,t,t,i,0,1,e,arguments.length>1?arguments[1]:void 0),r}})});var Ug=b(()=>{"use strict";var iR=ss();iR("flatMap")});var Hg=b((JV,qg)=>{"use strict";Ng();Ug();var rR=wi();qg.exports=rR("Array","flatMap")});var zg=b((ZV,jg)=>{"use strict";var sR=Hg();jg.exports=sR});var Rs=b((eO,Gg)=>{"use strict";var aR=zg();Gg.exports=aR});var Ls=b((tO,Qg)=>{"use strict";var nR=ns(),oR=String;Qg.exports=function(s){if(nR(s)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return oR(s)}});var Xl=b((iO,Wg)=>{"use strict";Wg.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 Xg=b((rO,Kg)=>{"use strict";var uR=ze(),lR=Pi(),cR=Ls(),Zl=Xl(),Yg=uR("".replace),dR=RegExp("^["+Zl+"]+"),pR=RegExp("(^|[^"+Zl+"])["+Zl+"]+$"),Jl=function(s){return function(e){var t=cR(lR(e));return s&1&&(t=Yg(t,dR,"")),s&2&&(t=Yg(t,pR,"$1")),t}};Kg.exports={start:Jl(1),end:Jl(2),trim:Jl(3)}});var tS=b((sO,eS)=>{"use strict";var hR=Mu().PROPER,fR=We(),Jg=Xl(),Zg="\u200B\x85\u180E";eS.exports=function(s){return fR(function(){return!!Jg[s]()||Zg[s]()!==Zg||hR&&Jg[s].name!==s})}});var ec=b((aO,iS)=>{"use strict";var mR=Xg().start,bR=tS();iS.exports=bR("trimStart")?function(){return mR(this)}:"".trimStart});var sS=b(()=>{"use strict";var gR=_e(),rS=ec();gR({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==rS},{trimLeft:rS})});var nS=b(()=>{"use strict";sS();var SR=_e(),aS=ec();SR({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==aS},{trimStart:aS})});var uS=b((cO,oS)=>{"use strict";nS();var vR=wi();oS.exports=vR("String","trimLeft")});var cS=b((dO,lS)=>{"use strict";var yR=uS();lS.exports=yR});var pS=b((pO,dS)=>{"use strict";var TR=cS();dS.exports=TR});var PS=b(()=>{"use strict"});var wS=b(()=>{"use strict"});var kS=b((qF,AS)=>{"use strict";var UR=wt(),qR=Ni(),HR=Ye(),jR=HR("match");AS.exports=function(s){var e;return UR(s)&&((e=s[jR])!==void 0?!!e:qR(s)==="RegExp")}});var LS=b((HF,RS)=>{"use strict";var zR=Yt();RS.exports=function(){var s=zR(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 BS=b((jF,$S)=>{"use strict";var GR=Pt(),QR=Ut(),WR=Xr(),YR=LS(),MS=RegExp.prototype;$S.exports=function(s){var e=s.flags;return e===void 0&&!("flags"in MS)&&!QR(s,"flags")&&WR(MS,s)?GR(YR,s):e}});var CS=b((zF,DS)=>{"use strict";var ac=ze(),KR=lr(),XR=Math.floor,rc=ac("".charAt),JR=ac("".replace),sc=ac("".slice),ZR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,eL=/\$([$&'`]|\d{1,2})/g;DS.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=eL;return r!==void 0&&(r=KR(r),u=ZR),JR(a,u,function(l,p){var c;switch(rc(p,0)){case"$":return"$";case"&":return s;case"`":return sc(e,0,t);case"'":return sc(e,n);case"<":c=r[sc(p,1,-1)];break;default:var d=+p;if(d===0)return l;if(d>o){var h=XR(d/10);return h===0?l:h<=o?i[h-1]===void 0?rc(p,1):i[h-1]+rc(p,1):l}c=i[d-1]}return c===void 0?"":c})}});var _S=b(()=>{"use strict";var tL=_e(),iL=Pt(),oc=ze(),VS=Pi(),rL=Me(),sL=or(),aL=kS(),Vr=Ls(),nL=Zr(),oL=BS(),uL=CS(),lL=Ye(),cL=Nt(),dL=lL("replace"),pL=TypeError,nc=oc("".indexOf),hL=oc("".replace),OS=oc("".slice),fL=Math.max;tL({target:"String",proto:!0},{replaceAll:function(e,t){var i=VS(this),r,a,n,o,u,l,p,c,d,h,m=0,g="";if(!sL(e)){if(r=aL(e),r&&(a=Vr(VS(oL(e))),!~nc(a,"g")))throw new pL("`.replaceAll` does not allow non-global regexes");if(n=nL(e,dL),n)return iL(n,e,i,t);if(cL&&r)return hL(Vr(i),e,t)}for(o=Vr(i),u=Vr(e),l=rL(t),l||(t=Vr(t)),p=u.length,c=fL(1,p),d=nc(o,u);d!==-1;)h=l?Vr(t(u,d,o)):uL(u,o,d,[],void 0,t),g+=OS(o,m,d)+h,m=d+p,d=d+c>o.length?-1:nc(o,u,d+c);return m<o.length&&(g+=OS(o,m)),g}})});var NS=b((WF,FS)=>{"use strict";PS();wS();_S();var mL=wi();FS.exports=mL("String","replaceAll")});var qS=b((YF,US)=>{"use strict";var bL=NS();US.exports=bL});var uc=b((KF,HS)=>{"use strict";var gL=qS();HS.exports=gL});var zS=b((XF,jS)=>{"use strict";var SL=rs(),vL=Ls(),yL=Pi(),TL=RangeError;jS.exports=function(e){var t=vL(yL(this)),i="",r=SL(e);if(r<0||r===1/0)throw new TL("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var KS=b((JF,YS)=>{"use strict";var WS=ze(),IL=Su(),GS=Ls(),xL=zS(),EL=Pi(),PL=WS(xL),wL=WS("".slice),AL=Math.ceil,QS=function(s){return function(e,t,i){var r=GS(EL(e)),a=IL(t),n=r.length,o=i===void 0?" ":GS(i),u,l;return a<=n||o===""?r:(u=a-n,l=PL(o,AL(u/o.length)),l.length>u&&(l=wL(l,0,u)),s?r+l:l+r)}};YS.exports={start:QS(!1),end:QS(!0)}});var JS=b((ZF,XS)=>{"use strict";var kL=qi();XS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(kL)});var ZS=b(()=>{"use strict";var RL=_e(),LL=KS().start,ML=JS();RL({target:"String",proto:!0,forced:ML},{padStart:function(e){return LL(this,e,arguments.length>1?arguments[1]:void 0)}})});var tv=b((iN,ev)=>{"use strict";ZS();var $L=wi();ev.exports=$L("String","padStart")});var rv=b((rN,iv)=>{"use strict";var BL=tv();iv.exports=BL});var lc=b((sN,sv)=>{"use strict";var DL=rv();sv.exports=DL});var xM={};Py(xM,{ChromecastState:()=>Gr,HttpConnectionType:()=>Za,Observable:()=>ii.Observable,PlaybackState:()=>nt,Player:()=>Xa,PredefinedQualityLimits:()=>Qr,SDK_VERSION:()=>IM,Subject:()=>ii.Subject,Subscription:()=>ii.Subscription,Surface:()=>en,VERSION:()=>qo,ValueSubject:()=>ii.ValueSubject,VideoFormat:()=>Qt,VideoQuality:()=>ii.VideoQuality,clientChecker:()=>G,isMobile:()=>Pr});module.exports=wy(xM);var qo="2.0.134-dev.464b6f35.0";var nt=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(nt||{}),Qt=(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))(Qt||{});var Gr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(Gr||{}),Za=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Za||{});var en=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(en||{}),Qr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(Qr||{});var vy=q(At(),1);var ie=require("@vkontakte/videoplayer-shared");var _p=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 nn=class{constructor(e){this.connection$=new ie.ValueSubject(void 0);this.castState$=new ie.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new ie.Subject;this.realCastState$=new ie.ValueSubject("NOT_AVAILABLE");this.subscription=new ie.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,ie.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=a=>{delete window.__onGCastApiAvailable,a&&!this.isDestroyed&&this.initializeCastApi()},r||_p("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:ie.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,ie.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,ie.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,ie.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,ie.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,ie.assertNever)(r.sessionState)}})).add((0,ie.merge)((0,ie.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,ie.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,ie.map)(r=>r.castState)),(0,ie.observableFrom)([i.getCastState()])).pipe((0,ie.filterChanged)(),(0,ie.map)(WI),(0,ie.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let a=r==="CONNECTED",n=(0,ie.isNonNullable)(this.connection$.getValue());if(a&&!n){let o=i.getCurrentSession();(0,ie.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,ie.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,ie.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:ie.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},WI=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,ie.assertNever)(s)}};var qc=q(At(),1),ny=q(ji(),1),oy=q(Gu(),1);var Vb=q(gs(),1);var $l=require("@vkontakte/videoplayer-shared");var $e=(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,$l.assertNever)(t)}return s},ki=(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,$l.assertNever)(e)}};var C=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};var Kt=require("@vkontakte/videoplayer-shared"),X=class{constructor(e){this.transitionStarted$=new Kt.Subject;this.transitionEnded$=new Kt.Subject;this.transitionUpdated$=new Kt.Subject;this.forceChanged$=new Kt.Subject;this.stateChangeStarted$=(0,Kt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Kt.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,Kt.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 Bb=require("@vkontakte/videoplayer-shared"),Db=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,Bb.assertNever)(s)}};var H=require("@vkontakte/videoplayer-shared");var ik=5,rk=5,sk=500,Cb=7e3,Ss=class{constructor(e){this.subscription=new H.Subscription;this.loadMediaTimeoutSubscription=new H.Subscription;this.videoState=new X("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,H.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,H.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,H.assertNever)(e)}break}default:(0,H.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(Db(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 H.Subscription;this.subscription.add(e),this.subscription.add((0,H.merge)(this.videoState.stateChangeStarted$.pipe((0,H.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,H.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 H.Subject;e.add(r.pipe((0,H.debounce)(sk)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add((0,H.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)>ik)&&r.next(o),a=o})),e.add((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,H.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,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,H.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<rk&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),C(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,H.assertNever)(n)}}),t((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,H.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,H.observableFrom)(["init"])).pipe((0,H.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"),C(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),C(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"),C(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),C(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&C(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,H.assertNonNullable)(l);let p=(0,H.getHighestQuality)(Object.keys(l));(0,H.assertNonNullable)(p);let c=l[p];(0,H.assertNonNullable)(c),i=c,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,H.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,H.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,H.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,H.assertNonNullable)(l),i=$e(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",p=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:H.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:p}),p}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,H.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,H.isNonNullable)(o)&&(n.metadata.title=o),(0,H.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,H.timeout)(Cb).subscribe(()=>a(`timeout(${Cb})`)))});(0,Vb.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:H.ErrorCategory.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Wl=q(At(),1);var Vl=require("@vkontakte/videoplayer-shared");var Ob=require("@vkontakte/videoplayer-shared"),_b=s=>{try{s.pause(),s.playbackRate=0,(0,Ob.clearVideoElement)(s),s.remove()}catch(e){console.error(e)}};var Dn=require("@vkontakte/videoplayer-shared"),Bl=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)}},Dl=window.WeakMap?new WeakMap:new Bl,Cl=window.WeakMap?new WeakMap:new Map,ak=(s,e=20)=>{let t=0;return(0,Dn.fromEvent)(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},Ke=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?(0,Vl.clearVideoElement)(i):(i=document.createElement("video"),s.appendChild(i)),Dl.set(i,r);let a=new Dn.Subscription;return a.add(ak(i,e)),Cl.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},Xe=s=>{Cl.get(s)?.unsubscribe(),Cl.delete(s);let t=Dl.get(s);Dl.delete(s),t?(0,Vl.clearVideoElement)(s):_b(s)};var Ol=q(Ki(),1),j=require("@vkontakte/videoplayer-shared");var Ri=require("@vkontakte/videoplayer-shared"),Cn=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=(0,Ri.isNullable)(r),l=new Ri.Subscription;return r&&l.add(r.subscribe(p=>{let c=s.getState();i(p,c)&&s.setState(p)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(p=>{t(p.to),u&&s.setState(p.to)},a)),l},$t=(s,e,t)=>Cn(e,()=>s.loop,i=>{(0,Ri.isNonNullable)(i)&&(s.loop=i)},{onError:t}),Je=(s,e,t,i)=>Cn(e,()=>({muted:s.muted,volume:s.volume}),r=>{(0,Ri.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}),dt=(s,e,t,i)=>Cn(e,()=>s.playbackRate,r=>{(0,Ri.isNonNullable)(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),Li=Cn;var dk=s=>["__",s.language,s.label].join("|"),pk=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},_l=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(Li(t.internalTextTracks,()=>(0,Ol.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(Li(t.externalTextTracks,()=>(0,Ol.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(Li(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(Li(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:dk(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)||!pk(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)}},pt=_l;var Xi=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 zb=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Fl=s=>{let e=zb(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},Gb=s=>{let e=zb(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};var _=require("@vkontakte/videoplayer-shared");var hk=3,Qb=(s,e,t=hk)=>{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 Vn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isYandex(){return this.current==="Yandex"}get isSafari(){return this.current==="Safari"}get isFirefox(){return this.current==="Firefox"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get safariVersion(){return this._safariVersion}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.isSafari&&this.detectSafariVersion()}detectSafariVersion(){try{let{userAgent:e}=window.navigator,t=e.match(/Version\/(\d+)/);if(!t)return;let i=t[1],r=parseInt(i,10);if(isNaN(r))return;this._safariVersion=r}catch(e){console.error(e)}}};var Wb=q(At(),1);var Pr=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var On=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,Wb.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=Pr()}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 _n=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 Rt=()=>window.ManagedMediaSource||window.MediaSource,wr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Yb=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Fn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var fk=document.createElement("video"),mk='video/mp4; codecs="avc1.42000a,mp4a.40.2"',bk='video/mp4; codecs="hev1.1.6.L93.B0"',Kb='video/webm; codecs="vp09.00.10.08"',Xb='video/webm; codecs="av01.0.00M.08"',gk='audio/mp4; codecs="mp4a.40.2"',Sk='audio/webm; codecs="opus"',Jb,vk=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:Xb}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Kb}})]);Jb={DASH_WEBM_AV1:e,DASH_WEBM:t}};vk().catch(s=>{console.log(fk),console.error(s)});var Nn=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 Jb}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:wr(),mse:Yb(),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=!!Rt()?.isTypeSupported?.(mk),t=!!Rt()?.isTypeSupported?.(bk),i=!!Rt()?.isTypeSupported?.(gk);this._codecs={h264:e,h265:t,vp9:!!Rt()?.isTypeSupported?.(Kb),av1:!!Rt()?.isTypeSupported?.(Xb),aac:i,opus:!!Rt()?.isTypeSupported?.(Sk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}this.destroyVideoElement()}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 Zb="audio/mpeg",Un=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(Zb)},this._codecs={mp3:!!Rt()?.isTypeSupported?.(Zb)}}catch(e){console.error(e)}this.destroyAudioElement()}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 eg=require("@vkontakte/videoplayer-shared"),Nl=class{constructor(){this.isInited$=new eg.ValueSubject(!1);this._displayChecker=new _n,this._deviceChecker=new On(this._displayChecker),this._browserChecker=new Vn,this._videoChecker=new Nn(this._deviceChecker,this._browserChecker),this._audioChecker=new Un,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)}},G=new Nl;var Ze=s=>{let e=I=>(0,_.fromEvent)(s,I).pipe((0,_.mapTo)(void 0)),t=new _.Subscription,i=()=>t.unsubscribe(),r=(0,_.merge)((0,_.fromEvent)(s,"progress"),(0,_.fromEvent)(s,"timeupdate")).pipe((0,_.map)(()=>Qb(s.buffered,s.currentTime))),a=G.browser.isSafari?(0,_.combine)({play:e("play").pipe((0,_.once)()),playing:e("playing")}).pipe((0,_.mapTo)(void 0)):e("playing"),n=(0,_.fromEvent)(s,"volumechange").pipe((0,_.map)(()=>({muted:s.muted,volume:s.volume}))),o=(0,_.fromEvent)(s,"ratechange").pipe((0,_.map)(()=>s.playbackRate)),u=(0,_.fromEvent)(s,"error").pipe((0,_.filter)(()=>!!(s.error||s.played.length)),(0,_.map)(()=>{let I=s.error;return{id:I?`MediaError#${I.code}`:"HtmlVideoError",category:_.ErrorCategory.VIDEO_PIPELINE,message:I?I.message:"Error event from HTML video element",thrown:s.error??void 0}})),l=(0,_.fromEvent)(s,"timeupdate").pipe((0,_.map)(()=>s.currentTime)),p=["waiting","seeking","seeked","timeupdate"],c=new _.Subject,d=.3,h;t.add((0,_.merge)(...p.map(I=>(0,_.fromEvent)(s,I))).subscribe(I=>{let U=s.currentTime;s.loop&&(0,_.isNonNullable)(h)&&(0,_.isNonNullable)(U)&&h>=s.duration-d&&U<=d&&c.next(h),h=U}));let m=e("pause").pipe((0,_.filter)(()=>!s.error&&h!==s.duration)),g=(0,_.fromEvent)(s,"enterpictureinpicture"),S=(0,_.fromEvent)(s,"leavepictureinpicture"),y=new _.ValueSubject(Gb(s));t.add(g.subscribe(()=>y.next(!0))),t.add(S.subscribe(()=>y.next(!1)));let w=new _.ValueSubject(Fl(s)),x=(0,_.fromEvent)(s,"fullscreenchange");t.add(x.pipe((0,_.map)(()=>Fl(s))).subscribe(w));let M=.1,$=1e3,F=(0,_.fromEvent)(s,"timeupdate").pipe((0,_.map)(I=>s.duration-s.currentTime<M),(0,_.filterChanged)()),W=(0,_.merge)(F.pipe((0,_.filter)(I=>!s.loop&&I)),(0,_.fromEvent)(s,"ended")).pipe((0,_.throttle)($),(0,_.mapTo)(void 0)),D=(0,_.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(I=>(0,_.fromEvent)(s,I)),F.pipe((0,_.map)(I=>({type:I?"ended":"unknown"})))).pipe((0,_.map)(I=>G.browser.isFirefox&&I.type==="ended"?s.readyState<2:s.readyState<3),(0,_.filterChanged)());return{playing$:a,pause$:m,canplay$:e("canplay"),ended$:W,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,_.fromEvent)(s,"durationchange").pipe((0,_.map)(()=>s.duration)),isBuffering$:D,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:y,inFullscreen$:w,enterPip$:g,leavePip$:S,destroy:i}};var hi=require("@vkontakte/videoplayer-shared"),Jt=s=>{switch(s){case"mobile":return hi.VideoQuality.Q_144P;case"lowest":return hi.VideoQuality.Q_240P;case"low":return hi.VideoQuality.Q_360P;case"sd":case"medium":return hi.VideoQuality.Q_480P;case"hd":case"high":return hi.VideoQuality.Q_720P;case"fullhd":case"full":return hi.VideoQuality.Q_1080P;case"quadhd":case"quad":return hi.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return hi.VideoQuality.Q_2160P}};var ut=q(Ht(),1),Hl=q(At(),1),Ji=q(ji(),1),L=require("@vkontakte/videoplayer-shared");var Ul=!1,fi={},og=s=>{Ul=s},ug=()=>{fi={}},lg=s=>{s(fi)},vs=(s,e)=>{Ul&&(fi.meta=fi.meta??{},fi.meta[s]=e)},ot=class{constructor(e){this.name=e}next(e){if(!Ul)return;fi.series=fi.series??{};let t=fi.series[this.name]??[];t.push([Date.now(),e]),fi.series[this.name]=t}};var Fe=require("@vkontakte/videoplayer-shared");function ql(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function qn(s,e,t){return!!s&&ql(s,e,t)==="high_quality"}function Ar(s,e,t){return(0,Fe.isNullable)(s)||(0,Fe.isNonNullable)(s.min)&&(0,Fe.isNonNullable)(s.max)&&(0,Fe.isLower)(s.max,s.min)||(0,Fe.isNonNullable)(s.min)&&e&&(0,Fe.isHigher)(s.min,e)||(0,Fe.isNonNullable)(s.max)&&t&&(0,Fe.isLower)(s.max,t)}function cg({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return Ar({max:s?.max?(0,Fe.videoHeightToQuality)(s.max):void 0,min:s?.min?(0,Fe.videoHeightToQuality)(s.min):void 0},e?(0,Fe.videoHeightToQuality)(e):void 0,t?(0,Fe.videoHeightToQuality)(t):void 0)}var mg=new ot("best_bitrate"),jn=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var kr=s=>(e,t)=>s*(Number(e.bitrate)-Number(t.bitrate)),Mi=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={}}},zn='Assertion "ABR Tracks is empty array" failed',Hn=new WeakMap,dg=new WeakMap,pg=new WeakMap,ys=(s,e,t,i)=>{let r=[...e].sort(kr(1)),a=[...t].sort(kr(1)),n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),o=(0,ut.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,ut.default)(a,-1);return o&&(0,Hl.default)(n,o)?o:n.length?(0,ut.default)(n,-1):(0,ut.default)(a,0)},Ts=(s,e,t,i)=>{let r=Hn.get(e);r||(r=[...e].sort(kr(1)),Hn.set(e,r));let a=Hn.get(t);a||(a=[...t].sort(kr(1)),Hn.set(t,a));let n=pg.get(s);n||(n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),pg.set(s,n));let o=(0,ut.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,ut.default)(a,-1);return o&&(0,Hl.default)(n,o)?o:n.length?(0,ut.default)(n,-1):(0,ut.default)(a,0)},hg=s=>"quality"in s,Gn=(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=hg(n)?"video":"audio",u=hg(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 Xg=b((rO,Kg)=>{"use strict";var uR=ze(),lR=Pi(),cR=Ls(),Zl=Xl(),Yg=uR("".replace),dR=RegExp("^["+Zl+"]+"),pR=RegExp("(^|[^"+Zl+"])["+Zl+"]+$"),Jl=function(s){return function(e){var t=cR(lR(e));return s&1&&(t=Yg(t,dR,"")),s&2&&(t=Yg(t,pR,"$1")),t}};Kg.exports={start:Jl(1),end:Jl(2),trim:Jl(3)}});var tS=b((sO,eS)=>{"use strict";var hR=Mu().PROPER,fR=We(),Jg=Xl(),Zg="\u200B\x85\u180E";eS.exports=function(s){return fR(function(){return!!Jg[s]()||Zg[s]()!==Zg||hR&&Jg[s].name!==s})}});var ec=b((aO,iS)=>{"use strict";var mR=Xg().start,bR=tS();iS.exports=bR("trimStart")?function(){return mR(this)}:"".trimStart});var sS=b(()=>{"use strict";var gR=_e(),rS=ec();gR({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==rS},{trimLeft:rS})});var nS=b(()=>{"use strict";sS();var SR=_e(),aS=ec();SR({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==aS},{trimStart:aS})});var uS=b((cO,oS)=>{"use strict";nS();var vR=wi();oS.exports=vR("String","trimLeft")});var cS=b((dO,lS)=>{"use strict";var yR=uS();lS.exports=yR});var pS=b((pO,dS)=>{"use strict";var TR=cS();dS.exports=TR});var PS=b(()=>{"use strict"});var wS=b(()=>{"use strict"});var kS=b((qF,AS)=>{"use strict";var UR=wt(),qR=Ni(),HR=Ye(),jR=HR("match");AS.exports=function(s){var e;return UR(s)&&((e=s[jR])!==void 0?!!e:qR(s)==="RegExp")}});var LS=b((HF,RS)=>{"use strict";var zR=Yt();RS.exports=function(){var s=zR(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 BS=b((jF,$S)=>{"use strict";var GR=Pt(),QR=Ut(),WR=Xr(),YR=LS(),MS=RegExp.prototype;$S.exports=function(s){var e=s.flags;return e===void 0&&!("flags"in MS)&&!QR(s,"flags")&&WR(MS,s)?GR(YR,s):e}});var CS=b((zF,DS)=>{"use strict";var ac=ze(),KR=lr(),XR=Math.floor,rc=ac("".charAt),JR=ac("".replace),sc=ac("".slice),ZR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,eL=/\$([$&'`]|\d{1,2})/g;DS.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=eL;return r!==void 0&&(r=KR(r),u=ZR),JR(a,u,function(l,p){var c;switch(rc(p,0)){case"$":return"$";case"&":return s;case"`":return sc(e,0,t);case"'":return sc(e,n);case"<":c=r[sc(p,1,-1)];break;default:var d=+p;if(d===0)return l;if(d>o){var h=XR(d/10);return h===0?l:h<=o?i[h-1]===void 0?rc(p,1):i[h-1]+rc(p,1):l}c=i[d-1]}return c===void 0?"":c})}});var _S=b(()=>{"use strict";var tL=_e(),iL=Pt(),oc=ze(),VS=Pi(),rL=Me(),sL=or(),aL=kS(),Vr=Ls(),nL=Zr(),oL=BS(),uL=CS(),lL=Ye(),cL=Nt(),dL=lL("replace"),pL=TypeError,nc=oc("".indexOf),hL=oc("".replace),OS=oc("".slice),fL=Math.max;tL({target:"String",proto:!0},{replaceAll:function(e,t){var i=VS(this),r,a,n,o,u,l,p,c,d,h,m=0,g="";if(!sL(e)){if(r=aL(e),r&&(a=Vr(VS(oL(e))),!~nc(a,"g")))throw new pL("`.replaceAll` does not allow non-global regexes");if(n=nL(e,dL),n)return iL(n,e,i,t);if(cL&&r)return hL(Vr(i),e,t)}for(o=Vr(i),u=Vr(e),l=rL(t),l||(t=Vr(t)),p=u.length,c=fL(1,p),d=nc(o,u);d!==-1;)h=l?Vr(t(u,d,o)):uL(u,o,d,[],void 0,t),g+=OS(o,m,d)+h,m=d+p,d=d+c>o.length?-1:nc(o,u,d+c);return m<o.length&&(g+=OS(o,m)),g}})});var NS=b((WF,FS)=>{"use strict";PS();wS();_S();var mL=wi();FS.exports=mL("String","replaceAll")});var qS=b((YF,US)=>{"use strict";var bL=NS();US.exports=bL});var uc=b((KF,HS)=>{"use strict";var gL=qS();HS.exports=gL});var zS=b((XF,jS)=>{"use strict";var SL=rs(),vL=Ls(),yL=Pi(),TL=RangeError;jS.exports=function(e){var t=vL(yL(this)),i="",r=SL(e);if(r<0||r===1/0)throw new TL("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var KS=b((JF,YS)=>{"use strict";var WS=ze(),IL=Su(),GS=Ls(),xL=zS(),EL=Pi(),PL=WS(xL),wL=WS("".slice),AL=Math.ceil,QS=function(s){return function(e,t,i){var r=GS(EL(e)),a=IL(t),n=r.length,o=i===void 0?" ":GS(i),u,l;return a<=n||o===""?r:(u=a-n,l=PL(o,AL(u/o.length)),l.length>u&&(l=wL(l,0,u)),s?r+l:l+r)}};YS.exports={start:QS(!1),end:QS(!0)}});var JS=b((ZF,XS)=>{"use strict";var kL=qi();XS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(kL)});var ZS=b(()=>{"use strict";var RL=_e(),LL=KS().start,ML=JS();RL({target:"String",proto:!0,forced:ML},{padStart:function(e){return LL(this,e,arguments.length>1?arguments[1]:void 0)}})});var tv=b((iN,ev)=>{"use strict";ZS();var $L=wi();ev.exports=$L("String","padStart")});var rv=b((rN,iv)=>{"use strict";var BL=tv();iv.exports=BL});var lc=b((sN,sv)=>{"use strict";var DL=rv();sv.exports=DL});var xM={};Py(xM,{ChromecastState:()=>Gr,HttpConnectionType:()=>Za,Observable:()=>ii.Observable,PlaybackState:()=>nt,Player:()=>Xa,PredefinedQualityLimits:()=>Qr,SDK_VERSION:()=>IM,Subject:()=>ii.Subject,Subscription:()=>ii.Subscription,Surface:()=>en,VERSION:()=>qo,ValueSubject:()=>ii.ValueSubject,VideoFormat:()=>Qt,VideoQuality:()=>ii.VideoQuality,clientChecker:()=>G,isMobile:()=>Pr});module.exports=wy(xM);var qo="2.0.134-dev.6250ee46.0";var nt=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(nt||{}),Qt=(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))(Qt||{});var Gr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(Gr||{}),Za=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Za||{});var en=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(en||{}),Qr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(Qr||{});var vy=q(At(),1);var ie=require("@vkontakte/videoplayer-shared");var _p=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 nn=class{constructor(e){this.connection$=new ie.ValueSubject(void 0);this.castState$=new ie.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new ie.Subject;this.realCastState$=new ie.ValueSubject("NOT_AVAILABLE");this.subscription=new ie.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,ie.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=a=>{delete window.__onGCastApiAvailable,a&&!this.isDestroyed&&this.initializeCastApi()},r||_p("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:ie.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,ie.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,ie.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,ie.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,ie.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,ie.assertNever)(r.sessionState)}})).add((0,ie.merge)((0,ie.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,ie.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,ie.map)(r=>r.castState)),(0,ie.observableFrom)([i.getCastState()])).pipe((0,ie.filterChanged)(),(0,ie.map)(WI),(0,ie.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let a=r==="CONNECTED",n=(0,ie.isNonNullable)(this.connection$.getValue());if(a&&!n){let o=i.getCurrentSession();(0,ie.assertNonNullable)(o);let u=o.getCastDevice(),l=o.getMediaSession()?.media?.contentId;((0,ie.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,ie.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:ie.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},WI=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,ie.assertNever)(s)}};var qc=q(At(),1),ny=q(ji(),1),oy=q(Gu(),1);var Vb=q(gs(),1);var $l=require("@vkontakte/videoplayer-shared");var $e=(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,$l.assertNever)(t)}return s},ki=(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,$l.assertNever)(e)}};var C=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};var Kt=require("@vkontakte/videoplayer-shared"),X=class{constructor(e){this.transitionStarted$=new Kt.Subject;this.transitionEnded$=new Kt.Subject;this.transitionUpdated$=new Kt.Subject;this.forceChanged$=new Kt.Subject;this.stateChangeStarted$=(0,Kt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Kt.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,Kt.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 Bb=require("@vkontakte/videoplayer-shared"),Db=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,Bb.assertNever)(s)}};var H=require("@vkontakte/videoplayer-shared");var ik=5,rk=5,sk=500,Cb=7e3,Ss=class{constructor(e){this.subscription=new H.Subscription;this.loadMediaTimeoutSubscription=new H.Subscription;this.videoState=new X("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,H.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,H.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,H.assertNever)(e)}break}default:(0,H.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(Db(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 H.Subscription;this.subscription.add(e),this.subscription.add((0,H.merge)(this.videoState.stateChangeStarted$.pipe((0,H.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,H.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 H.Subject;e.add(r.pipe((0,H.debounce)(sk)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add((0,H.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)>ik)&&r.next(o),a=o})),e.add((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,H.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,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,H.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<rk&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),C(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,H.assertNever)(n)}}),t((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,H.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,H.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,H.observableFrom)(["init"])).pipe((0,H.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"),C(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),C(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"),C(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),C(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&C(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,H.assertNonNullable)(l);let p=(0,H.getHighestQuality)(Object.keys(l));(0,H.assertNonNullable)(p);let c=l[p];(0,H.assertNonNullable)(c),i=c,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,H.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,H.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,H.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,H.assertNonNullable)(l),i=$e(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",p=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:H.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:p}),p}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,H.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,H.isNonNullable)(o)&&(n.metadata.title=o),(0,H.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,H.timeout)(Cb).subscribe(()=>a(`timeout(${Cb})`)))});(0,Vb.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:H.ErrorCategory.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Wl=q(At(),1);var Vl=require("@vkontakte/videoplayer-shared");var Ob=require("@vkontakte/videoplayer-shared"),_b=s=>{try{s.pause(),s.playbackRate=0,(0,Ob.clearVideoElement)(s),s.remove()}catch(e){console.error(e)}};var Dn=require("@vkontakte/videoplayer-shared"),Bl=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)}},Dl=window.WeakMap?new WeakMap:new Bl,Cl=window.WeakMap?new WeakMap:new Map,ak=(s,e=20)=>{let t=0;return(0,Dn.fromEvent)(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},Ke=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?(0,Vl.clearVideoElement)(i):(i=document.createElement("video"),s.appendChild(i)),Dl.set(i,r);let a=new Dn.Subscription;return a.add(ak(i,e)),Cl.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},Xe=s=>{Cl.get(s)?.unsubscribe(),Cl.delete(s);let t=Dl.get(s);Dl.delete(s),t?(0,Vl.clearVideoElement)(s):_b(s)};var Ol=q(Ki(),1),j=require("@vkontakte/videoplayer-shared");var Ri=require("@vkontakte/videoplayer-shared"),Cn=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=(0,Ri.isNullable)(r),l=new Ri.Subscription;return r&&l.add(r.subscribe(p=>{let c=s.getState();i(p,c)&&s.setState(p)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(p=>{t(p.to),u&&s.setState(p.to)},a)),l},$t=(s,e,t)=>Cn(e,()=>s.loop,i=>{(0,Ri.isNonNullable)(i)&&(s.loop=i)},{onError:t}),Je=(s,e,t,i)=>Cn(e,()=>({muted:s.muted,volume:s.volume}),r=>{(0,Ri.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}),dt=(s,e,t,i)=>Cn(e,()=>s.playbackRate,r=>{(0,Ri.isNonNullable)(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),Li=Cn;var dk=s=>["__",s.language,s.label].join("|"),pk=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},_l=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(Li(t.internalTextTracks,()=>(0,Ol.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(Li(t.externalTextTracks,()=>(0,Ol.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(Li(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(Li(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:dk(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)||!pk(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)}},pt=_l;var Xi=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 zb=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Fl=s=>{let e=zb(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},Gb=s=>{let e=zb(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};var _=require("@vkontakte/videoplayer-shared");var hk=3,Qb=(s,e,t=hk)=>{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 Vn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isYandex(){return this.current==="Yandex"}get isSafari(){return this.current==="Safari"}get isFirefox(){return this.current==="Firefox"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get safariVersion(){return this._safariVersion}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.isSafari&&this.detectSafariVersion()}detectSafariVersion(){try{let{userAgent:e}=window.navigator,t=e.match(/Version\/(\d+)/);if(!t)return;let i=t[1],r=parseInt(i,10);if(isNaN(r))return;this._safariVersion=r}catch(e){console.error(e)}}};var Wb=q(At(),1);var Pr=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var On=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,Wb.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=Pr()}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 _n=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 Rt=()=>window.ManagedMediaSource||window.MediaSource,wr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Yb=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Fn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var fk=document.createElement("video"),mk='video/mp4; codecs="avc1.42000a,mp4a.40.2"',bk='video/mp4; codecs="hev1.1.6.L93.B0"',Kb='video/webm; codecs="vp09.00.10.08"',Xb='video/webm; codecs="av01.0.00M.08"',gk='audio/mp4; codecs="mp4a.40.2"',Sk='audio/webm; codecs="opus"',Jb,vk=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:Xb}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:Kb}})]);Jb={DASH_WEBM_AV1:e,DASH_WEBM:t}};vk().catch(s=>{console.log(fk),console.error(s)});var Nn=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 Jb}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:wr(),mse:Yb(),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=!!Rt()?.isTypeSupported?.(mk),t=!!Rt()?.isTypeSupported?.(bk),i=!!Rt()?.isTypeSupported?.(gk);this._codecs={h264:e,h265:t,vp9:!!Rt()?.isTypeSupported?.(Kb),av1:!!Rt()?.isTypeSupported?.(Xb),aac:i,opus:!!Rt()?.isTypeSupported?.(Sk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}this.destroyVideoElement()}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 Zb="audio/mpeg",Un=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(Zb)},this._codecs={mp3:!!Rt()?.isTypeSupported?.(Zb)}}catch(e){console.error(e)}this.destroyAudioElement()}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 eg=require("@vkontakte/videoplayer-shared"),Nl=class{constructor(){this.isInited$=new eg.ValueSubject(!1);this._displayChecker=new _n,this._deviceChecker=new On(this._displayChecker),this._browserChecker=new Vn,this._videoChecker=new Nn(this._deviceChecker,this._browserChecker),this._audioChecker=new Un,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)}},G=new Nl;var Ze=s=>{let e=I=>(0,_.fromEvent)(s,I).pipe((0,_.mapTo)(void 0)),t=new _.Subscription,i=()=>t.unsubscribe(),r=(0,_.merge)((0,_.fromEvent)(s,"progress"),(0,_.fromEvent)(s,"timeupdate")).pipe((0,_.map)(()=>Qb(s.buffered,s.currentTime))),a=G.browser.isSafari?(0,_.combine)({play:e("play").pipe((0,_.once)()),playing:e("playing")}).pipe((0,_.mapTo)(void 0)):e("playing"),n=(0,_.fromEvent)(s,"volumechange").pipe((0,_.map)(()=>({muted:s.muted,volume:s.volume}))),o=(0,_.fromEvent)(s,"ratechange").pipe((0,_.map)(()=>s.playbackRate)),u=(0,_.fromEvent)(s,"error").pipe((0,_.filter)(()=>!!(s.error||s.played.length)),(0,_.map)(()=>{let I=s.error;return{id:I?`MediaError#${I.code}`:"HtmlVideoError",category:_.ErrorCategory.VIDEO_PIPELINE,message:I?I.message:"Error event from HTML video element",thrown:s.error??void 0}})),l=(0,_.fromEvent)(s,"timeupdate").pipe((0,_.map)(()=>s.currentTime)),p=["waiting","seeking","seeked","timeupdate"],c=new _.Subject,d=.3,h;t.add((0,_.merge)(...p.map(I=>(0,_.fromEvent)(s,I))).subscribe(I=>{let U=s.currentTime;s.loop&&(0,_.isNonNullable)(h)&&(0,_.isNonNullable)(U)&&h>=s.duration-d&&U<=d&&c.next(h),h=U}));let m=e("pause").pipe((0,_.filter)(()=>!s.error&&h!==s.duration)),g=(0,_.fromEvent)(s,"enterpictureinpicture"),S=(0,_.fromEvent)(s,"leavepictureinpicture"),y=new _.ValueSubject(Gb(s));t.add(g.subscribe(()=>y.next(!0))),t.add(S.subscribe(()=>y.next(!1)));let w=new _.ValueSubject(Fl(s)),x=(0,_.fromEvent)(s,"fullscreenchange");t.add(x.pipe((0,_.map)(()=>Fl(s))).subscribe(w));let M=.1,$=1e3,F=(0,_.fromEvent)(s,"timeupdate").pipe((0,_.map)(I=>s.duration-s.currentTime<M),(0,_.filterChanged)()),W=(0,_.merge)(F.pipe((0,_.filter)(I=>!s.loop&&I)),(0,_.fromEvent)(s,"ended")).pipe((0,_.throttle)($),(0,_.mapTo)(void 0)),D=(0,_.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(I=>(0,_.fromEvent)(s,I)),F.pipe((0,_.map)(I=>({type:I?"ended":"unknown"})))).pipe((0,_.map)(I=>G.browser.isFirefox&&I.type==="ended"?s.readyState<2:s.readyState<3),(0,_.filterChanged)());return{playing$:a,pause$:m,canplay$:e("canplay"),ended$:W,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,_.fromEvent)(s,"durationchange").pipe((0,_.map)(()=>s.duration)),isBuffering$:D,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:y,inFullscreen$:w,enterPip$:g,leavePip$:S,destroy:i}};var hi=require("@vkontakte/videoplayer-shared"),Jt=s=>{switch(s){case"mobile":return hi.VideoQuality.Q_144P;case"lowest":return hi.VideoQuality.Q_240P;case"low":return hi.VideoQuality.Q_360P;case"sd":case"medium":return hi.VideoQuality.Q_480P;case"hd":case"high":return hi.VideoQuality.Q_720P;case"fullhd":case"full":return hi.VideoQuality.Q_1080P;case"quadhd":case"quad":return hi.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return hi.VideoQuality.Q_2160P}};var ut=q(Ht(),1),Hl=q(At(),1),Ji=q(ji(),1),L=require("@vkontakte/videoplayer-shared");var Ul=!1,fi={},og=s=>{Ul=s},ug=()=>{fi={}},lg=s=>{s(fi)},vs=(s,e)=>{Ul&&(fi.meta=fi.meta??{},fi.meta[s]=e)},ot=class{constructor(e){this.name=e}next(e){if(!Ul)return;fi.series=fi.series??{};let t=fi.series[this.name]??[];t.push([Date.now(),e]),fi.series[this.name]=t}};var Fe=require("@vkontakte/videoplayer-shared");function ql(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function qn(s,e,t){return!!s&&ql(s,e,t)==="high_quality"}function Ar(s,e,t){return(0,Fe.isNullable)(s)||(0,Fe.isNonNullable)(s.min)&&(0,Fe.isNonNullable)(s.max)&&(0,Fe.isLower)(s.max,s.min)||(0,Fe.isNonNullable)(s.min)&&e&&(0,Fe.isHigher)(s.min,e)||(0,Fe.isNonNullable)(s.max)&&t&&(0,Fe.isLower)(s.max,t)}function cg({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return Ar({max:s?.max?(0,Fe.videoHeightToQuality)(s.max):void 0,min:s?.min?(0,Fe.videoHeightToQuality)(s.min):void 0},e?(0,Fe.videoHeightToQuality)(e):void 0,t?(0,Fe.videoHeightToQuality)(t):void 0)}var mg=new ot("best_bitrate"),jn=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var kr=s=>(e,t)=>s*(Number(e.bitrate)-Number(t.bitrate)),Mi=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={}}},zn='Assertion "ABR Tracks is empty array" failed',Hn=new WeakMap,dg=new WeakMap,pg=new WeakMap,ys=(s,e,t,i)=>{let r=[...e].sort(kr(1)),a=[...t].sort(kr(1)),n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),o=(0,ut.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,ut.default)(a,-1);return o&&(0,Hl.default)(n,o)?o:n.length?(0,ut.default)(n,-1):(0,ut.default)(a,0)},Ts=(s,e,t,i)=>{let r=Hn.get(e);r||(r=[...e].sort(kr(1)),Hn.set(e,r));let a=Hn.get(t);a||(a=[...t].sort(kr(1)),Hn.set(t,a));let n=pg.get(s);n||(n=a.filter(u=>(0,L.isNonNullable)(u.bitrate)&&(0,L.isNonNullable)(s.bitrate)?s.bitrate/u.bitrate>i:!0),pg.set(s,n));let o=(0,ut.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1)))??(0,ut.default)(a,-1);return o&&(0,Hl.default)(n,o)?o:n.length?(0,ut.default)(n,-1):(0,ut.default)(a,0)},hg=s=>"quality"in s,Gn=(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=hg(n)?"video":"audio",u=hg(n)?n.quality:n.bitrate;return e({message:`
8
8
  [last ${o} selected] ${u}
9
9
  `}),n}return i?.recordSwitch(t),t},kk=(s,e)=>Math.log(e)/Math.log(s),bg=({tuning:s,container:e,limits:t,panelSize:i})=>{let r=s.containerSizeFactor;if(i)return{containerSizeLimit:i,containerSizeFactor:r};if(s.usePixelRatio&&G.display.pixelRatio){let a=G.display.pixelRatio;if(s.pixelRatioMultiplier)r*=s.pixelRatioMultiplier*(a-1)+1;else{let n=s.pixelRatioLogBase,[o=0,u=0,l=0]=s.pixelRatioLogCoefficients,p=kk(n,o*a+u)+l;Number.isFinite(p)&&(r*=p)}}return qn(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}},fg=new WeakMap,Zt=(s,{container:e,estimatedThroughput:t,tuning:i,limits:r,reserve:a=0,forwardBufferHealth:n,playbackRate:o,current:u,history:l,visible:p,droppedVideoMaxQualityLimit:c,stallsVideoMaxQualityLimit:d,stallsPredictedThroughput:h,abrLogger:m,panelSize:g})=>{(0,L.assertNotEmptyArray)(s,zn);let{containerSizeFactor:S,containerSizeLimit:y}=bg({container:e,tuning:i,limits:r,panelSize:g}),w=i.considerPlaybackRate&&(0,L.isNonNullable)(o)?o:1,x=fg.get(s);x||(x=s.filter(R=>!(0,L.isInvariantQuality)(R.quality)).sort((R,V)=>(0,L.isHigher)(R.quality,V.quality)?-1:1),fg.set(s,x));let M=(0,ut.default)(x,-1)?.quality,$=(0,ut.default)(x,0)?.quality,F=Ar(r,$,M),W=w*jn(n??.5,i.bitrateFactorAtEmptyBuffer,i.bitrateFactorAtFullBuffer),B={},D=null;for(let R of x){let V=!0;if(y)if(R.size)V=R.size.width<=y.width&&R.size.height<=y.height;else{let O=y&&(0,L.videoSizeToQuality)(y);V=O?(0,L.isLowerOrEqual)(R.quality,O):!0}if(!V){B[R.quality]="FitsContainer";continue}let ge=h||t,N=(0,L.isNonNullable)(ge)&&isFinite(ge)&&(0,L.isNonNullable)(R.bitrate)?ge-a>=R.bitrate*W:!0,re=qn(r,i.highQualityLimit,i.trafficSavingLimit)&&r?.min===R.quality;if(!N&&!re){B[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)){B[R.quality]="Buffer";continue}if(!!c&&(0,L.isHigherOrEqual)(R.quality,c)&&!re){B[R.quality]="DroppedFramesLimit";continue}if(!!d&&(0,L.isHigherOrEqual)(R.quality,d)&&!re){B[R.quality]="StallsLimit";continue}let xe=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)),de=(0,L.isNonNullable)(p)&&!p?(0,L.isLowerOrEqual)(R.quality,i.backgroundVideoQualityLimit):!0;if(!xe||!de){B[R.quality]="FitsQualityLimits";continue}D||(D=R)}D&&D.bitrate&&mg.next(D.bitrate);let I=D??(0,ut.default)(x,-1)??s[0],U=l?.last,k=Gn(i,m,I,l);return(0,L.isNonNullable)(l)&&k.quality!==U?.quality&&m({message:`
10
10
  [VIDEO TRACKS ABR]