@vkontakte/videoplayer-core 2.0.136-dev.e1130126.0 → 2.0.136-dev.e1184048.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/es2024.cjs.js CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @vkontakte/videoplayer-core v2.0.136-dev.e1130126.0
3
- * Thu, 17 Jul 2025 12:59:44 GMT
2
+ * @vkontakte/videoplayer-core v2.0.136-dev.e1184048.0
3
+ * Fri, 25 Jul 2025 10:14:32 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/2-0-136/doc/
5
5
  */
6
6
  "use strict";var Ev=Object.create;var os=Object.defineProperty;var xv=Object.getOwnPropertyDescriptor;var wv=Object.getOwnPropertyNames;var Av=Object.getPrototypeOf,kv=Object.prototype.hasOwnProperty;var b=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports),Pv=(a,e)=>{for(var t in e)os(a,t,{get:e[t],enumerable:!0})},Kl=(a,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of wv(e))!kv.call(a,r)&&r!==t&&os(a,r,{get:()=>e[r],enumerable:!(i=xv(e,r))||i.enumerable});return a};var Q=(a,e,t)=>(t=a!=null?Ev(Av(a)):{},Kl(e||!a||!a.__esModule?os(t,"default",{value:a,enumerable:!0}):t,a)),Rv=a=>Kl(os({},"__esModule",{value:!0}),a);var Se=b((Jn,Xl)=>{"use strict";var Ar=function(a){return a&&a.Math===Math&&a};Xl.exports=Ar(typeof globalThis=="object"&&globalThis)||Ar(typeof window=="object"&&window)||Ar(typeof self=="object"&&self)||Ar(typeof global=="object"&&global)||Ar(typeof Jn=="object"&&Jn)||function(){return this}()||Function("return this")()});var we=b((gL,Jl)=>{"use strict";Jl.exports=function(a){try{return!!a()}catch{return!0}}});var kr=b((SL,Zl)=>{"use strict";var Lv=we();Zl.exports=!Lv(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var Zn=b((vL,rc)=>{"use strict";var $v=kr(),ic=Function.prototype,ec=ic.apply,tc=ic.call;rc.exports=typeof Reflect=="object"&&Reflect.apply||($v?tc.bind(ec):function(){return tc.apply(ec,arguments)})});var Ae=b((yL,nc)=>{"use strict";var ac=kr(),sc=Function.prototype,eo=sc.call,Mv=ac&&sc.bind.bind(eo,eo);nc.exports=ac?Mv:function(a){return function(){return eo.apply(a,arguments)}}});var pi=b((TL,uc)=>{"use strict";var oc=Ae(),Dv=oc({}.toString),Cv=oc("".slice);uc.exports=function(a){return Cv(Dv(a),8,-1)}});var to=b((IL,lc)=>{"use strict";var Bv=pi(),Vv=Ae();lc.exports=function(a){if(Bv(a)==="Function")return Vv(a)}});var ve=b((EL,cc)=>{"use strict";var io=typeof document=="object"&&document.all;cc.exports=typeof io>"u"&&io!==void 0?function(a){return typeof a=="function"||a===io}:function(a){return typeof a=="function"}});var Ye=b((xL,dc)=>{"use strict";var _v=we();dc.exports=!_v(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Ke=b((wL,pc)=>{"use strict";var Ov=kr(),cs=Function.prototype.call;pc.exports=Ov?cs.bind(cs):function(){return cs.apply(cs,arguments)}});var ro=b(mc=>{"use strict";var hc={}.propertyIsEnumerable,fc=Object.getOwnPropertyDescriptor,Fv=fc&&!hc.call({1:2},1);mc.f=Fv?function(e){var t=fc(this,e);return!!t&&t.enumerable}:hc});var Pr=b((kL,bc)=>{"use strict";bc.exports=function(a,e){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:e}}});var Sc=b((PL,gc)=>{"use strict";var Nv=Ae(),Uv=we(),qv=pi(),ao=Object,Hv=Nv("".split);gc.exports=Uv(function(){return!ao("z").propertyIsEnumerable(0)})?function(a){return qv(a)==="String"?Hv(a,""):ao(a)}:ao});var Rr=b((RL,vc)=>{"use strict";vc.exports=function(a){return a==null}});var Xt=b((LL,yc)=>{"use strict";var jv=Rr(),Qv=TypeError;yc.exports=function(a){if(jv(a))throw new Qv("Can't call method on "+a);return a}});var hi=b(($L,Tc)=>{"use strict";var Gv=Sc(),Wv=Xt();Tc.exports=function(a){return Gv(Wv(a))}});var Ne=b((ML,Ic)=>{"use strict";var zv=ve();Ic.exports=function(a){return typeof a=="object"?a!==null:zv(a)}});var fi=b((DL,Ec)=>{"use strict";Ec.exports={}});var Vt=b((CL,wc)=>{"use strict";var so=fi(),no=Se(),Yv=ve(),xc=function(a){return Yv(a)?a:void 0};wc.exports=function(a,e){return arguments.length<2?xc(so[a])||xc(no[a]):so[a]&&so[a][e]||no[a]&&no[a][e]}});var Lr=b((BL,Ac)=>{"use strict";var Kv=Ae();Ac.exports=Kv({}.isPrototypeOf)});var mi=b((VL,Rc)=>{"use strict";var Xv=Se(),kc=Xv.navigator,Pc=kc&&kc.userAgent;Rc.exports=Pc?String(Pc):""});var uo=b((_L,Bc)=>{"use strict";var Cc=Se(),oo=mi(),Lc=Cc.process,$c=Cc.Deno,Mc=Lc&&Lc.versions||$c&&$c.version,Dc=Mc&&Mc.v8,ht,ds;Dc&&(ht=Dc.split("."),ds=ht[0]>0&&ht[0]<4?1:+(ht[0]+ht[1]));!ds&&oo&&(ht=oo.match(/Edge\/(\d+)/),(!ht||ht[1]>=74)&&(ht=oo.match(/Chrome\/(\d+)/),ht&&(ds=+ht[1])));Bc.exports=ds});var lo=b((OL,_c)=>{"use strict";var Vc=uo(),Jv=we(),Zv=Se(),ey=Zv.String;_c.exports=!!Object.getOwnPropertySymbols&&!Jv(function(){var a=Symbol("symbol detection");return!ey(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&Vc&&Vc<41})});var co=b((FL,Oc)=>{"use strict";var ty=lo();Oc.exports=ty&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var po=b((NL,Fc)=>{"use strict";var iy=Vt(),ry=ve(),ay=Lr(),sy=co(),ny=Object;Fc.exports=sy?function(a){return typeof a=="symbol"}:function(a){var e=iy("Symbol");return ry(e)&&ay(e.prototype,ny(a))}});var $r=b((UL,Nc)=>{"use strict";var oy=String;Nc.exports=function(a){try{return oy(a)}catch{return"Object"}}});var wt=b((qL,Uc)=>{"use strict";var uy=ve(),ly=$r(),cy=TypeError;Uc.exports=function(a){if(uy(a))return a;throw new cy(ly(a)+" is not a function")}});var Mr=b((HL,qc)=>{"use strict";var dy=wt(),py=Rr();qc.exports=function(a,e){var t=a[e];return py(t)?void 0:dy(t)}});var jc=b((jL,Hc)=>{"use strict";var ho=Ke(),fo=ve(),mo=Ne(),hy=TypeError;Hc.exports=function(a,e){var t,i;if(e==="string"&&fo(t=a.toString)&&!mo(i=ho(t,a))||fo(t=a.valueOf)&&!mo(i=ho(t,a))||e!=="string"&&fo(t=a.toString)&&!mo(i=ho(t,a)))return i;throw new hy("Can't convert object to primitive value")}});var ft=b((QL,Qc)=>{"use strict";Qc.exports=!0});var zc=b((GL,Wc)=>{"use strict";var Gc=Se(),fy=Object.defineProperty;Wc.exports=function(a,e){try{fy(Gc,a,{value:e,configurable:!0,writable:!0})}catch{Gc[a]=e}return e}});var Dr=b((WL,Xc)=>{"use strict";var my=ft(),by=Se(),gy=zc(),Yc="__core-js_shared__",Kc=Xc.exports=by[Yc]||gy(Yc,{});(Kc.versions||(Kc.versions=[])).push({version:"3.43.0",mode:my?"pure":"global",copyright:"\xA9 2014-2025 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.43.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var bo=b((zL,Zc)=>{"use strict";var Jc=Dr();Zc.exports=function(a,e){return Jc[a]||(Jc[a]=e||{})}});var Fi=b((YL,ed)=>{"use strict";var Sy=Xt(),vy=Object;ed.exports=function(a){return vy(Sy(a))}});var mt=b((KL,td)=>{"use strict";var yy=Ae(),Ty=Fi(),Iy=yy({}.hasOwnProperty);td.exports=Object.hasOwn||function(e,t){return Iy(Ty(e),t)}});var go=b((XL,id)=>{"use strict";var Ey=Ae(),xy=0,wy=Math.random(),Ay=Ey(1.1.toString);id.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+Ay(++xy+wy,36)}});var $e=b((JL,ad)=>{"use strict";var ky=Se(),Py=bo(),rd=mt(),Ry=go(),Ly=lo(),$y=co(),Ni=ky.Symbol,So=Py("wks"),My=$y?Ni.for||Ni:Ni&&Ni.withoutSetter||Ry;ad.exports=function(a){return rd(So,a)||(So[a]=Ly&&rd(Ni,a)?Ni[a]:My("Symbol."+a)),So[a]}});var ud=b((ZL,od)=>{"use strict";var Dy=Ke(),sd=Ne(),nd=po(),Cy=Mr(),By=jc(),Vy=$e(),_y=TypeError,Oy=Vy("toPrimitive");od.exports=function(a,e){if(!sd(a)||nd(a))return a;var t=Cy(a,Oy),i;if(t){if(e===void 0&&(e="default"),i=Dy(t,a,e),!sd(i)||nd(i))return i;throw new _y("Can't convert object to primitive value")}return e===void 0&&(e="number"),By(a,e)}});var vo=b((e$,ld)=>{"use strict";var Fy=ud(),Ny=po();ld.exports=function(a){var e=Fy(a,"string");return Ny(e)?e:e+""}});var ps=b((t$,dd)=>{"use strict";var Uy=Se(),cd=Ne(),yo=Uy.document,qy=cd(yo)&&cd(yo.createElement);dd.exports=function(a){return qy?yo.createElement(a):{}}});var To=b((i$,pd)=>{"use strict";var Hy=Ye(),jy=we(),Qy=ps();pd.exports=!Hy&&!jy(function(){return Object.defineProperty(Qy("div"),"a",{get:function(){return 7}}).a!==7})});var md=b(fd=>{"use strict";var Gy=Ye(),Wy=Ke(),zy=ro(),Yy=Pr(),Ky=hi(),Xy=vo(),Jy=mt(),Zy=To(),hd=Object.getOwnPropertyDescriptor;fd.f=Gy?hd:function(e,t){if(e=Ky(e),t=Xy(t),Zy)try{return hd(e,t)}catch{}if(Jy(e,t))return Yy(!Wy(zy.f,e,t),e[t])}});var Io=b((a$,bd)=>{"use strict";var eT=we(),tT=ve(),iT=/#|\.prototype\./,Cr=function(a,e){var t=aT[rT(a)];return t===nT?!0:t===sT?!1:tT(e)?eT(e):!!e},rT=Cr.normalize=function(a){return String(a).replace(iT,".").toLowerCase()},aT=Cr.data={},sT=Cr.NATIVE="N",nT=Cr.POLYFILL="P";bd.exports=Cr});var Ui=b((s$,Sd)=>{"use strict";var gd=to(),oT=wt(),uT=kr(),lT=gd(gd.bind);Sd.exports=function(a,e){return oT(a),e===void 0?a:uT?lT(a,e):function(){return a.apply(e,arguments)}}});var Eo=b((n$,vd)=>{"use strict";var cT=Ye(),dT=we();vd.exports=cT&&dT(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var At=b((o$,yd)=>{"use strict";var pT=Ne(),hT=String,fT=TypeError;yd.exports=function(a){if(pT(a))return a;throw new fT(hT(a)+" is not an object")}});var bi=b(Id=>{"use strict";var mT=Ye(),bT=To(),gT=Eo(),hs=At(),Td=vo(),ST=TypeError,xo=Object.defineProperty,vT=Object.getOwnPropertyDescriptor,wo="enumerable",Ao="configurable",ko="writable";Id.f=mT?gT?function(e,t,i){if(hs(e),t=Td(t),hs(i),typeof e=="function"&&t==="prototype"&&"value"in i&&ko in i&&!i[ko]){var r=vT(e,t);r&&r[ko]&&(e[t]=i.value,i={configurable:Ao in i?i[Ao]:r[Ao],enumerable:wo in i?i[wo]:r[wo],writable:!1})}return xo(e,t,i)}:xo:function(e,t,i){if(hs(e),t=Td(t),hs(i),bT)try{return xo(e,t,i)}catch{}if("get"in i||"set"in i)throw new ST("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var qi=b((l$,Ed)=>{"use strict";var yT=Ye(),TT=bi(),IT=Pr();Ed.exports=yT?function(a,e,t){return TT.f(a,e,IT(1,t))}:function(a,e,t){return a[e]=t,a}});var Te=b((c$,wd)=>{"use strict";var Br=Se(),ET=Zn(),xT=to(),wT=ve(),AT=md().f,kT=Io(),Hi=fi(),PT=Ui(),ji=qi(),xd=mt();Dr();var RT=function(a){var e=function(t,i,r){if(this instanceof e){switch(arguments.length){case 0:return new a;case 1:return new a(t);case 2:return new a(t,i)}return new a(t,i,r)}return ET(a,this,arguments)};return e.prototype=a.prototype,e};wd.exports=function(a,e){var t=a.target,i=a.global,r=a.stat,s=a.proto,n=i?Br:r?Br[t]:Br[t]&&Br[t].prototype,u=i?Hi:Hi[t]||ji(Hi,t,{})[t],o=u.prototype,l,c,p,d,h,m,g,S,T;for(d in e)l=kT(i?d:t+(r?".":"#")+d,a.forced),c=!l&&n&&xd(n,d),m=u[d],c&&(a.dontCallGetSet?(T=AT(n,d),g=T&&T.value):g=n[d]),h=c&&g?g:e[d],!(!l&&!s&&typeof m==typeof h)&&(a.bind&&c?S=PT(h,Br):a.wrap&&c?S=RT(h):s&&wT(h)?S=xT(h):S=h,(a.sham||h&&h.sham||m&&m.sham)&&ji(S,"sham",!0),ji(u,d,S),s&&(p=t+"Prototype",xd(Hi,p)||ji(Hi,p,{}),ji(Hi[p],d,h),a.real&&o&&(l||!o[d])&&ji(o,d,h)))}});var kd=b((d$,Ad)=>{"use strict";var LT=Math.ceil,$T=Math.floor;Ad.exports=Math.trunc||function(e){var t=+e;return(t>0?$T:LT)(t)}});var Vr=b((p$,Pd)=>{"use strict";var MT=kd();Pd.exports=function(a){var e=+a;return e!==e||e===0?0:MT(e)}});var Ld=b((h$,Rd)=>{"use strict";var DT=Vr(),CT=Math.max,BT=Math.min;Rd.exports=function(a,e){var t=DT(a);return t<0?CT(t+e,0):BT(t,e)}});var Po=b((f$,$d)=>{"use strict";var VT=Vr(),_T=Math.min;$d.exports=function(a){var e=VT(a);return e>0?_T(e,9007199254740991):0}});var Qi=b((m$,Md)=>{"use strict";var OT=Po();Md.exports=function(a){return OT(a.length)}});var Ro=b((b$,Cd)=>{"use strict";var FT=hi(),NT=Ld(),UT=Qi(),Dd=function(a){return function(e,t,i){var r=FT(e),s=UT(r);if(s===0)return!a&&-1;var n=NT(i,s),u;if(a&&t!==t){for(;s>n;)if(u=r[n++],u!==u)return!0}else for(;s>n;n++)if((a||n in r)&&r[n]===t)return a||n||0;return!a&&-1}};Cd.exports={includes:Dd(!0),indexOf:Dd(!1)}});var _r=b((g$,Bd)=>{"use strict";Bd.exports=function(){}});var Vd=b(()=>{"use strict";var qT=Te(),HT=Ro().includes,jT=we(),QT=_r(),GT=jT(function(){return!Array(1).includes()});qT({target:"Array",proto:!0,forced:GT},{includes:function(e){return HT(this,e,arguments.length>1?arguments[1]:void 0)}});QT("includes")});var Jt=b((y$,_d)=>{"use strict";var WT=Vt();_d.exports=WT});var Fd=b((T$,Od)=>{"use strict";Vd();var zT=Jt();Od.exports=zT("Array","includes")});var Ud=b((I$,Nd)=>{"use strict";var YT=Fd();Nd.exports=YT});var st=b((E$,qd)=>{"use strict";var KT=Ud();qd.exports=KT});var ms=b((C$,Qd)=>{"use strict";var JT=bo(),ZT=go(),jd=JT("keys");Qd.exports=function(a){return jd[a]||(jd[a]=ZT(a))}});var Wd=b((B$,Gd)=>{"use strict";var eI=we();Gd.exports=!eI(function(){function a(){}return a.prototype.constructor=null,Object.getPrototypeOf(new a)!==a.prototype})});var bs=b((V$,Yd)=>{"use strict";var tI=mt(),iI=ve(),rI=Fi(),aI=ms(),sI=Wd(),zd=aI("IE_PROTO"),Lo=Object,nI=Lo.prototype;Yd.exports=sI?Lo.getPrototypeOf:function(a){var e=rI(a);if(tI(e,zd))return e[zd];var t=e.constructor;return iI(t)&&e instanceof t?t.prototype:e instanceof Lo?nI:null}});var gs=b((_$,Kd)=>{"use strict";Kd.exports={}});var Zd=b((O$,Jd)=>{"use strict";var oI=Ae(),$o=mt(),uI=hi(),lI=Ro().indexOf,cI=gs(),Xd=oI([].push);Jd.exports=function(a,e){var t=uI(a),i=0,r=[],s;for(s in t)!$o(cI,s)&&$o(t,s)&&Xd(r,s);for(;e.length>i;)$o(t,s=e[i++])&&(~lI(r,s)||Xd(r,s));return r}});var Mo=b((F$,ep)=>{"use strict";ep.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Do=b((N$,tp)=>{"use strict";var dI=Zd(),pI=Mo();tp.exports=Object.keys||function(e){return dI(e,pI)}});var Co=b((U$,np)=>{"use strict";var rp=Ye(),hI=we(),ap=Ae(),fI=bs(),mI=Do(),bI=hi(),gI=ro().f,sp=ap(gI),SI=ap([].push),vI=rp&&hI(function(){var a=Object.create(null);return a[2]=2,!sp(a,2)}),ip=function(a){return function(e){for(var t=bI(e),i=mI(t),r=vI&&fI(t)===null,s=i.length,n=0,u=[],o;s>n;)o=i[n++],(!rp||(r?o in t:sp(t,o)))&&SI(u,a?[o,t[o]]:t[o]);return u}};np.exports={entries:ip(!0),values:ip(!1)}});var op=b(()=>{"use strict";var yI=Te(),TI=Co().entries;yI({target:"Object",stat:!0},{entries:function(e){return TI(e)}})});var lp=b((j$,up)=>{"use strict";op();var II=fi();up.exports=II.Object.entries});var dp=b((Q$,cp)=>{"use strict";var EI=lp();cp.exports=EI});var Gi=b((G$,pp)=>{"use strict";var xI=dp();pp.exports=xI});var gi=b((W$,hp)=>{"use strict";hp.exports={}});var bp=b((z$,mp)=>{"use strict";var wI=Se(),AI=ve(),fp=wI.WeakMap;mp.exports=AI(fp)&&/native code/.test(String(fp))});var Oo=b((Y$,vp)=>{"use strict";var kI=bp(),Sp=Se(),PI=Ne(),RI=qi(),Bo=mt(),Vo=Dr(),LI=ms(),$I=gs(),gp="Object already initialized",_o=Sp.TypeError,MI=Sp.WeakMap,Ss,Or,vs,DI=function(a){return vs(a)?Or(a):Ss(a,{})},CI=function(a){return function(e){var t;if(!PI(e)||(t=Or(e)).type!==a)throw new _o("Incompatible receiver, "+a+" required");return t}};kI||Vo.state?(bt=Vo.state||(Vo.state=new MI),bt.get=bt.get,bt.has=bt.has,bt.set=bt.set,Ss=function(a,e){if(bt.has(a))throw new _o(gp);return e.facade=a,bt.set(a,e),e},Or=function(a){return bt.get(a)||{}},vs=function(a){return bt.has(a)}):(Si=LI("state"),$I[Si]=!0,Ss=function(a,e){if(Bo(a,Si))throw new _o(gp);return e.facade=a,RI(a,Si,e),e},Or=function(a){return Bo(a,Si)?a[Si]:{}},vs=function(a){return Bo(a,Si)});var bt,Si;vp.exports={set:Ss,get:Or,has:vs,enforce:DI,getterFor:CI}});var Uo=b((K$,Tp)=>{"use strict";var Fo=Ye(),BI=mt(),yp=Function.prototype,VI=Fo&&Object.getOwnPropertyDescriptor,No=BI(yp,"name"),_I=No&&function(){}.name==="something",OI=No&&(!Fo||Fo&&VI(yp,"name").configurable);Tp.exports={EXISTS:No,PROPER:_I,CONFIGURABLE:OI}});var Ep=b(Ip=>{"use strict";var FI=Ye(),NI=Eo(),UI=bi(),qI=At(),HI=hi(),jI=Do();Ip.f=FI&&!NI?Object.defineProperties:function(e,t){qI(e);for(var i=HI(t),r=jI(t),s=r.length,n=0,u;s>n;)UI.f(e,u=r[n++],i[u]);return e}});var qo=b((J$,xp)=>{"use strict";var QI=Vt();xp.exports=QI("document","documentElement")});var Go=b((Z$,$p)=>{"use strict";var GI=At(),WI=Ep(),wp=Mo(),zI=gs(),YI=qo(),KI=ps(),XI=ms(),Ap=">",kp="<",jo="prototype",Qo="script",Rp=XI("IE_PROTO"),Ho=function(){},Lp=function(a){return kp+Qo+Ap+a+kp+"/"+Qo+Ap},Pp=function(a){a.write(Lp("")),a.close();var e=a.parentWindow.Object;return a=null,e},JI=function(){var a=KI("iframe"),e="java"+Qo+":",t;return a.style.display="none",YI.appendChild(a),a.src=String(e),t=a.contentWindow.document,t.open(),t.write(Lp("document.F=Object")),t.close(),t.F},ys,Ts=function(){try{ys=new ActiveXObject("htmlfile")}catch{}Ts=typeof document<"u"?document.domain&&ys?Pp(ys):JI():Pp(ys);for(var a=wp.length;a--;)delete Ts[jo][wp[a]];return Ts()};zI[Rp]=!0;$p.exports=Object.create||function(e,t){var i;return e!==null?(Ho[jo]=GI(e),i=new Ho,Ho[jo]=null,i[Rp]=e):i=Ts(),t===void 0?i:WI.f(i,t)}});var Wi=b((eM,Mp)=>{"use strict";var ZI=qi();Mp.exports=function(a,e,t,i){return i&&i.enumerable?a[e]=t:ZI(a,e,t),a}});var Ko=b((tM,Bp)=>{"use strict";var eE=we(),tE=ve(),iE=Ne(),rE=Go(),Dp=bs(),aE=Wi(),sE=$e(),nE=ft(),Yo=sE("iterator"),Cp=!1,_t,Wo,zo;[].keys&&(zo=[].keys(),"next"in zo?(Wo=Dp(Dp(zo)),Wo!==Object.prototype&&(_t=Wo)):Cp=!0);var oE=!iE(_t)||eE(function(){var a={};return _t[Yo].call(a)!==a});oE?_t={}:nE&&(_t=rE(_t));tE(_t[Yo])||aE(_t,Yo,function(){return this});Bp.exports={IteratorPrototype:_t,BUGGY_SAFARI_ITERATORS:Cp}});var Is=b((iM,_p)=>{"use strict";var uE=$e(),lE=uE("toStringTag"),Vp={};Vp[lE]="z";_p.exports=String(Vp)==="[object z]"});var Fr=b((rM,Op)=>{"use strict";var cE=Is(),dE=ve(),Es=pi(),pE=$e(),hE=pE("toStringTag"),fE=Object,mE=Es(function(){return arguments}())==="Arguments",bE=function(a,e){try{return a[e]}catch{}};Op.exports=cE?Es:function(a){var e,t,i;return a===void 0?"Undefined":a===null?"Null":typeof(t=bE(e=fE(a),hE))=="string"?t:mE?Es(e):(i=Es(e))==="Object"&&dE(e.callee)?"Arguments":i}});var Np=b((aM,Fp)=>{"use strict";var gE=Is(),SE=Fr();Fp.exports=gE?{}.toString:function(){return"[object "+SE(this)+"]"}});var Nr=b((sM,qp)=>{"use strict";var vE=Is(),yE=bi().f,TE=qi(),IE=mt(),EE=Np(),xE=$e(),Up=xE("toStringTag");qp.exports=function(a,e,t,i){var r=t?a:a&&a.prototype;r&&(IE(r,Up)||yE(r,Up,{configurable:!0,value:e}),i&&!vE&&TE(r,"toString",EE))}});var jp=b((nM,Hp)=>{"use strict";var wE=Ko().IteratorPrototype,AE=Go(),kE=Pr(),PE=Nr(),RE=gi(),LE=function(){return this};Hp.exports=function(a,e,t,i){var r=e+" Iterator";return a.prototype=AE(wE,{next:kE(+!i,t)}),PE(a,r,!1,!0),RE[r]=LE,a}});var Gp=b((oM,Qp)=>{"use strict";var $E=Ae(),ME=wt();Qp.exports=function(a,e,t){try{return $E(ME(Object.getOwnPropertyDescriptor(a,e)[t]))}catch{}}});var zp=b((uM,Wp)=>{"use strict";var DE=Ne();Wp.exports=function(a){return DE(a)||a===null}});var Kp=b((lM,Yp)=>{"use strict";var CE=zp(),BE=String,VE=TypeError;Yp.exports=function(a){if(CE(a))return a;throw new VE("Can't set "+BE(a)+" as a prototype")}});var Xo=b((cM,Xp)=>{"use strict";var _E=Gp(),OE=Ne(),FE=Xt(),NE=Kp();Xp.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var a=!1,e={},t;try{t=_E(Object.prototype,"__proto__","set"),t(e,[]),a=e instanceof Array}catch{}return function(r,s){return FE(r),NE(s),OE(r)&&(a?t(r,s):r.__proto__=s),r}}():void 0)});var uh=b((dM,oh)=>{"use strict";var UE=Te(),qE=Ke(),xs=ft(),sh=Uo(),HE=ve(),jE=jp(),Jp=bs(),Zp=Xo(),QE=Nr(),GE=qi(),Jo=Wi(),WE=$e(),eh=gi(),nh=Ko(),zE=sh.PROPER,YE=sh.CONFIGURABLE,th=nh.IteratorPrototype,ws=nh.BUGGY_SAFARI_ITERATORS,Ur=WE("iterator"),ih="keys",qr="values",rh="entries",ah=function(){return this};oh.exports=function(a,e,t,i,r,s,n){jE(t,e,i);var u=function(T){if(T===r&&d)return d;if(!ws&&T&&T in c)return c[T];switch(T){case ih:return function(){return new t(this,T)};case qr:return function(){return new t(this,T)};case rh:return function(){return new t(this,T)}}return function(){return new t(this)}},o=e+" Iterator",l=!1,c=a.prototype,p=c[Ur]||c["@@iterator"]||r&&c[r],d=!ws&&p||u(r),h=e==="Array"&&c.entries||p,m,g,S;if(h&&(m=Jp(h.call(new a)),m!==Object.prototype&&m.next&&(!xs&&Jp(m)!==th&&(Zp?Zp(m,th):HE(m[Ur])||Jo(m,Ur,ah)),QE(m,o,!0,!0),xs&&(eh[o]=ah))),zE&&r===qr&&p&&p.name!==qr&&(!xs&&YE?GE(c,"name",qr):(l=!0,d=function(){return qE(p,this)})),r)if(g={values:u(qr),keys:s?d:u(ih),entries:u(rh)},n)for(S in g)(ws||l||!(S in c))&&Jo(c,S,g[S]);else UE({target:e,proto:!0,forced:ws||l},g);return(!xs||n)&&c[Ur]!==d&&Jo(c,Ur,d,{name:r}),eh[e]=d,g}});var ch=b((pM,lh)=>{"use strict";lh.exports=function(a,e){return{value:a,done:e}}});var eu=b((hM,mh)=>{"use strict";var KE=hi(),Zo=_r(),dh=gi(),hh=Oo(),XE=bi().f,JE=uh(),As=ch(),ZE=ft(),ex=Ye(),fh="Array Iterator",tx=hh.set,ix=hh.getterFor(fh);mh.exports=JE(Array,"Array",function(a,e){tx(this,{type:fh,target:KE(a),index:0,kind:e})},function(){var a=ix(this),e=a.target,t=a.index++;if(!e||t>=e.length)return a.target=null,As(void 0,!0);switch(a.kind){case"keys":return As(t,!1);case"values":return As(e[t],!1)}return As([t,e[t]],!1)},"values");var ph=dh.Arguments=dh.Array;Zo("keys");Zo("values");Zo("entries");if(!ZE&&ex&&ph.name!=="values")try{XE(ph,"name",{value:"values"})}catch{}});var gh=b((fM,bh)=>{"use strict";var rx=$e(),ax=gi(),sx=rx("iterator"),nx=Array.prototype;bh.exports=function(a){return a!==void 0&&(ax.Array===a||nx[sx]===a)}});var tu=b((mM,vh)=>{"use strict";var ox=Fr(),Sh=Mr(),ux=Rr(),lx=gi(),cx=$e(),dx=cx("iterator");vh.exports=function(a){if(!ux(a))return Sh(a,dx)||Sh(a,"@@iterator")||lx[ox(a)]}});var Th=b((bM,yh)=>{"use strict";var px=Ke(),hx=wt(),fx=At(),mx=$r(),bx=tu(),gx=TypeError;yh.exports=function(a,e){var t=arguments.length<2?bx(a):e;if(hx(t))return fx(px(t,a));throw new gx(mx(a)+" is not iterable")}});var xh=b((gM,Eh)=>{"use strict";var Sx=Ke(),Ih=At(),vx=Mr();Eh.exports=function(a,e,t){var i,r;Ih(a);try{if(i=vx(a,"return"),!i){if(e==="throw")throw t;return t}i=Sx(i,a)}catch(s){r=!0,i=s}if(e==="throw")throw t;if(r)throw i;return Ih(i),t}});var Ps=b((SM,Ph)=>{"use strict";var yx=Ui(),Tx=Ke(),Ix=At(),Ex=$r(),xx=gh(),wx=Qi(),wh=Lr(),Ax=Th(),kx=tu(),Ah=xh(),Px=TypeError,ks=function(a,e){this.stopped=a,this.result=e},kh=ks.prototype;Ph.exports=function(a,e,t){var i=t&&t.that,r=!!(t&&t.AS_ENTRIES),s=!!(t&&t.IS_RECORD),n=!!(t&&t.IS_ITERATOR),u=!!(t&&t.INTERRUPTED),o=yx(e,i),l,c,p,d,h,m,g,S=function(k){return l&&Ah(l,"normal"),new ks(!0,k)},T=function(k){return r?(Ix(k),u?o(k[0],k[1],S):o(k[0],k[1])):u?o(k,S):o(k)};if(s)l=a.iterator;else if(n)l=a;else{if(c=kx(a),!c)throw new Px(Ex(a)+" is not iterable");if(xx(c)){for(p=0,d=wx(a);d>p;p++)if(h=T(a[p]),h&&wh(kh,h))return h;return new ks(!1)}l=Ax(a,c)}for(m=s?a.next:l.next;!(g=Tx(m,l)).done;){try{h=T(g.value)}catch(k){Ah(l,"throw",k)}if(typeof h=="object"&&h&&wh(kh,h))return h}return new ks(!1)}});var Lh=b((vM,Rh)=>{"use strict";var Rx=Ye(),Lx=bi(),$x=Pr();Rh.exports=function(a,e,t){Rx?Lx.f(a,e,$x(0,t)):a[e]=t}});var $h=b(()=>{"use strict";var Mx=Te(),Dx=Ps(),Cx=Lh();Mx({target:"Object",stat:!0},{fromEntries:function(e){var t={};return Dx(e,function(i,r){Cx(t,i,r)},{AS_ENTRIES:!0}),t}})});var Dh=b((IM,Mh)=>{"use strict";eu();$h();var Bx=fi();Mh.exports=Bx.Object.fromEntries});var Bh=b((EM,Ch)=>{"use strict";Ch.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 _h=b(()=>{"use strict";eu();var Vx=Bh(),_x=Se(),Ox=Nr(),Vh=gi();for(Rs in Vx)Ox(_x[Rs],Rs),Vh[Rs]=Vh.Array;var Rs});var Fh=b((AM,Oh)=>{"use strict";var Fx=Dh();_h();Oh.exports=Fx});var iu=b((kM,Nh)=>{"use strict";var Nx=Fh();Nh.exports=Nx});var Uh=b(()=>{"use strict"});var ru=b((LM,qh)=>{"use strict";var Hr=Se(),Ux=mi(),qx=pi(),Ls=function(a){return Ux.slice(0,a.length)===a};qh.exports=function(){return Ls("Bun/")?"BUN":Ls("Cloudflare-Workers")?"CLOUDFLARE":Ls("Deno/")?"DENO":Ls("Node.js/")?"NODE":Hr.Bun&&typeof Bun.version=="string"?"BUN":Hr.Deno&&typeof Deno.version=="object"?"DENO":qx(Hr.process)==="process"?"NODE":Hr.window&&Hr.document?"BROWSER":"REST"}()});var $s=b(($M,Hh)=>{"use strict";var Hx=ru();Hh.exports=Hx==="NODE"});var Qh=b((MM,jh)=>{"use strict";var jx=bi();jh.exports=function(a,e,t){return jx.f(a,e,t)}});var zh=b((DM,Wh)=>{"use strict";var Qx=Vt(),Gx=Qh(),Wx=$e(),zx=Ye(),Gh=Wx("species");Wh.exports=function(a){var e=Qx(a);zx&&e&&!e[Gh]&&Gx(e,Gh,{configurable:!0,get:function(){return this}})}});var Kh=b((CM,Yh)=>{"use strict";var Yx=Lr(),Kx=TypeError;Yh.exports=function(a,e){if(Yx(e,a))return a;throw new Kx("Incorrect invocation")}});var su=b((BM,Xh)=>{"use strict";var Xx=Ae(),Jx=ve(),au=Dr(),Zx=Xx(Function.toString);Jx(au.inspectSource)||(au.inspectSource=function(a){return Zx(a)});Xh.exports=au.inspectSource});var ou=b((VM,rf)=>{"use strict";var ew=Ae(),tw=we(),Jh=ve(),iw=Fr(),rw=Vt(),aw=su(),Zh=function(){},ef=rw("Reflect","construct"),nu=/^\s*(?:class|function)\b/,sw=ew(nu.exec),nw=!nu.test(Zh),jr=function(e){if(!Jh(e))return!1;try{return ef(Zh,[],e),!0}catch{return!1}},tf=function(e){if(!Jh(e))return!1;switch(iw(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return nw||!!sw(nu,aw(e))}catch{return!0}};tf.sham=!0;rf.exports=!ef||tw(function(){var a;return jr(jr.call)||!jr(Object)||!jr(function(){a=!0})||a})?tf:jr});var sf=b((_M,af)=>{"use strict";var ow=ou(),uw=$r(),lw=TypeError;af.exports=function(a){if(ow(a))return a;throw new lw(uw(a)+" is not a constructor")}});var uu=b((OM,of)=>{"use strict";var nf=At(),cw=sf(),dw=Rr(),pw=$e(),hw=pw("species");of.exports=function(a,e){var t=nf(a).constructor,i;return t===void 0||dw(i=nf(t)[hw])?e:cw(i)}});var lf=b((FM,uf)=>{"use strict";var fw=Ae();uf.exports=fw([].slice)});var df=b((NM,cf)=>{"use strict";var mw=TypeError;cf.exports=function(a,e){if(a<e)throw new mw("Not enough arguments");return a}});var lu=b((UM,pf)=>{"use strict";var bw=mi();pf.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(bw)});var Su=b((qM,Tf)=>{"use strict";var Xe=Se(),gw=Zn(),Sw=Ui(),hf=ve(),vw=mt(),yf=we(),ff=qo(),yw=lf(),mf=ps(),Tw=df(),Iw=lu(),Ew=$s(),mu=Xe.setImmediate,bu=Xe.clearImmediate,xw=Xe.process,cu=Xe.Dispatch,ww=Xe.Function,bf=Xe.MessageChannel,Aw=Xe.String,du=0,Qr={},gf="onreadystatechange",Gr,vi,pu,hu;yf(function(){Gr=Xe.location});var gu=function(a){if(vw(Qr,a)){var e=Qr[a];delete Qr[a],e()}},fu=function(a){return function(){gu(a)}},Sf=function(a){gu(a.data)},vf=function(a){Xe.postMessage(Aw(a),Gr.protocol+"//"+Gr.host)};(!mu||!bu)&&(mu=function(e){Tw(arguments.length,1);var t=hf(e)?e:ww(e),i=yw(arguments,1);return Qr[++du]=function(){gw(t,void 0,i)},vi(du),du},bu=function(e){delete Qr[e]},Ew?vi=function(a){xw.nextTick(fu(a))}:cu&&cu.now?vi=function(a){cu.now(fu(a))}:bf&&!Iw?(pu=new bf,hu=pu.port2,pu.port1.onmessage=Sf,vi=Sw(hu.postMessage,hu)):Xe.addEventListener&&hf(Xe.postMessage)&&!Xe.importScripts&&Gr&&Gr.protocol!=="file:"&&!yf(vf)?(vi=vf,Xe.addEventListener("message",Sf,!1)):gf in mf("script")?vi=function(a){ff.appendChild(mf("script"))[gf]=function(){ff.removeChild(this),gu(a)}}:vi=function(a){setTimeout(fu(a),0)});Tf.exports={set:mu,clear:bu}});var xf=b((HM,Ef)=>{"use strict";var If=Se(),kw=Ye(),Pw=Object.getOwnPropertyDescriptor;Ef.exports=function(a){if(!kw)return If[a];var e=Pw(If,a);return e&&e.value}});var vu=b((jM,Af)=>{"use strict";var wf=function(){this.head=null,this.tail=null};wf.prototype={add:function(a){var e={item:a,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var a=this.head;if(a){var e=this.head=a.next;return e===null&&(this.tail=null),a.item}}};Af.exports=wf});var Pf=b((QM,kf)=>{"use strict";var Rw=mi();kf.exports=/ipad|iphone|ipod/i.test(Rw)&&typeof Pebble<"u"});var Lf=b((GM,Rf)=>{"use strict";var Lw=mi();Rf.exports=/web0s(?!.*chrome)/i.test(Lw)});var _f=b((WM,Vf)=>{"use strict";var Yi=Se(),$w=xf(),$f=Ui(),yu=Su().set,Mw=vu(),Dw=lu(),Cw=Pf(),Bw=Lf(),Tu=$s(),Mf=Yi.MutationObserver||Yi.WebKitMutationObserver,Df=Yi.document,Cf=Yi.process,Ms=Yi.Promise,xu=$w("queueMicrotask"),zi,Iu,Eu,Ds,Bf;xu||(Wr=new Mw,zr=function(){var a,e;for(Tu&&(a=Cf.domain)&&a.exit();e=Wr.get();)try{e()}catch(t){throw Wr.head&&zi(),t}a&&a.enter()},!Dw&&!Tu&&!Bw&&Mf&&Df?(Iu=!0,Eu=Df.createTextNode(""),new Mf(zr).observe(Eu,{characterData:!0}),zi=function(){Eu.data=Iu=!Iu}):!Cw&&Ms&&Ms.resolve?(Ds=Ms.resolve(void 0),Ds.constructor=Ms,Bf=$f(Ds.then,Ds),zi=function(){Bf(zr)}):Tu?zi=function(){Cf.nextTick(zr)}:(yu=$f(yu,Yi),zi=function(){yu(zr)}),xu=function(a){Wr.head||zi(),Wr.add(a)});var Wr,zr;Vf.exports=xu});var Ff=b((zM,Of)=>{"use strict";Of.exports=function(a,e){try{arguments.length===1?console.error(a):console.error(a,e)}catch{}}});var Cs=b((YM,Nf)=>{"use strict";Nf.exports=function(a){try{return{error:!1,value:a()}}catch(e){return{error:!0,value:e}}}});var yi=b((KM,Uf)=>{"use strict";var Vw=Se();Uf.exports=Vw.Promise});var Ki=b((XM,Qf)=>{"use strict";var _w=Se(),Yr=yi(),Ow=ve(),Fw=Io(),Nw=su(),Uw=$e(),qf=ru(),qw=ft(),wu=uo(),Hf=Yr&&Yr.prototype,Hw=Uw("species"),Au=!1,jf=Ow(_w.PromiseRejectionEvent),jw=Fw("Promise",function(){var a=Nw(Yr),e=a!==String(Yr);if(!e&&wu===66||qw&&!(Hf.catch&&Hf.finally))return!0;if(!wu||wu<51||!/native code/.test(a)){var t=new Yr(function(s){s(1)}),i=function(s){s(function(){},function(){})},r=t.constructor={};if(r[Hw]=i,Au=t.then(function(){})instanceof i,!Au)return!0}return!e&&(qf==="BROWSER"||qf==="DENO")&&!jf});Qf.exports={CONSTRUCTOR:jw,REJECTION_EVENT:jf,SUBCLASSING:Au}});var Xi=b((JM,Wf)=>{"use strict";var Gf=wt(),Qw=TypeError,Gw=function(a){var e,t;this.promise=new a(function(i,r){if(e!==void 0||t!==void 0)throw new Qw("Bad Promise constructor");e=i,t=r}),this.resolve=Gf(e),this.reject=Gf(t)};Wf.exports.f=function(a){return new Gw(a)}});var hm=b(()=>{"use strict";var Ww=Te(),zw=ft(),Os=$s(),Zt=Se(),Yw=fi(),tr=Ke(),zf=Wi(),Yf=Xo(),Kw=Nr(),Xw=zh(),Jw=wt(),_s=ve(),Zw=Ne(),eA=Kh(),tA=uu(),em=Su().set,$u=_f(),iA=Ff(),rA=Cs(),aA=vu(),tm=Oo(),Fs=yi(),Mu=Ki(),im=Xi(),Ns="Promise",rm=Mu.CONSTRUCTOR,sA=Mu.REJECTION_EVENT,nA=Mu.SUBCLASSING,ku=tm.getterFor(Ns),oA=tm.set,Ji=Fs&&Fs.prototype,Ti=Fs,Bs=Ji,am=Zt.TypeError,Pu=Zt.document,Du=Zt.process,Ru=im.f,uA=Ru,lA=!!(Pu&&Pu.createEvent&&Zt.dispatchEvent),sm="unhandledrejection",cA="rejectionhandled",Kf=0,nm=1,dA=2,Cu=1,om=2,Vs,Xf,um,Jf,lm=function(a){var e;return Zw(a)&&_s(e=a.then)?e:!1},cm=function(a,e){var t=e.value,i=e.state===nm,r=i?a.ok:a.fail,s=a.resolve,n=a.reject,u=a.domain,o,l,c;try{r?(i||(e.rejection===om&&hA(e),e.rejection=Cu),r===!0?o=t:(u&&u.enter(),o=r(t),u&&(u.exit(),c=!0)),o===a.promise?n(new am("Promise-chain cycle")):(l=lm(o))?tr(l,o,s,n):s(o)):n(t)}catch(p){u&&!c&&u.exit(),n(p)}},dm=function(a,e){a.notified||(a.notified=!0,$u(function(){for(var t=a.reactions,i;i=t.get();)cm(i,a);a.notified=!1,e&&!a.rejection&&pA(a)}))},pm=function(a,e,t){var i,r;lA?(i=Pu.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(a,!1,!0),Zt.dispatchEvent(i)):i={promise:e,reason:t},!sA&&(r=Zt["on"+a])?r(i):a===sm&&iA("Unhandled promise rejection",t)},pA=function(a){tr(em,Zt,function(){var e=a.facade,t=a.value,i=Zf(a),r;if(i&&(r=rA(function(){Os?Du.emit("unhandledRejection",t,e):pm(sm,e,t)}),a.rejection=Os||Zf(a)?om:Cu,r.error))throw r.value})},Zf=function(a){return a.rejection!==Cu&&!a.parent},hA=function(a){tr(em,Zt,function(){var e=a.facade;Os?Du.emit("rejectionHandled",e):pm(cA,e,a.value)})},Zi=function(a,e,t){return function(i){a(e,i,t)}},er=function(a,e,t){a.done||(a.done=!0,t&&(a=t),a.value=e,a.state=dA,dm(a,!0))},Lu=function(a,e,t){if(!a.done){a.done=!0,t&&(a=t);try{if(a.facade===e)throw new am("Promise can't be resolved itself");var i=lm(e);i?$u(function(){var r={done:!1};try{tr(i,e,Zi(Lu,r,a),Zi(er,r,a))}catch(s){er(r,s,a)}}):(a.value=e,a.state=nm,dm(a,!1))}catch(r){er({done:!1},r,a)}}};if(rm&&(Ti=function(e){eA(this,Bs),Jw(e),tr(Vs,this);var t=ku(this);try{e(Zi(Lu,t),Zi(er,t))}catch(i){er(t,i)}},Bs=Ti.prototype,Vs=function(e){oA(this,{type:Ns,done:!1,notified:!1,parent:!1,reactions:new aA,rejection:!1,state:Kf,value:null})},Vs.prototype=zf(Bs,"then",function(e,t){var i=ku(this),r=Ru(tA(this,Ti));return i.parent=!0,r.ok=_s(e)?e:!0,r.fail=_s(t)&&t,r.domain=Os?Du.domain:void 0,i.state===Kf?i.reactions.add(r):$u(function(){cm(r,i)}),r.promise}),Xf=function(){var a=new Vs,e=ku(a);this.promise=a,this.resolve=Zi(Lu,e),this.reject=Zi(er,e)},im.f=Ru=function(a){return a===Ti||a===um?new Xf(a):uA(a)},!zw&&_s(Fs)&&Ji!==Object.prototype)){Jf=Ji.then,nA||zf(Ji,"then",function(e,t){var i=this;return new Ti(function(r,s){tr(Jf,i,r,s)}).then(e,t)},{unsafe:!0});try{delete Ji.constructor}catch{}Yf&&Yf(Ji,Bs)}Ww({global:!0,constructor:!0,wrap:!0,forced:rm},{Promise:Ti});um=Yw.Promise;Kw(Ti,Ns,!1,!0);Xw(Ns)});var Sm=b((tD,gm)=>{"use strict";var fA=$e(),mm=fA("iterator"),bm=!1;try{fm=0,Bu={next:function(){return{done:!!fm++}},return:function(){bm=!0}},Bu[mm]=function(){return this},Array.from(Bu,function(){throw 2})}catch{}var fm,Bu;gm.exports=function(a,e){try{if(!e&&!bm)return!1}catch{return!1}var t=!1;try{var i={};i[mm]=function(){return{next:function(){return{done:t=!0}}}},a(i)}catch{}return t}});var Vu=b((iD,vm)=>{"use strict";var mA=yi(),bA=Sm(),gA=Ki().CONSTRUCTOR;vm.exports=gA||!bA(function(a){mA.all(a).then(void 0,function(){})})});var ym=b(()=>{"use strict";var SA=Te(),vA=Ke(),yA=wt(),TA=Xi(),IA=Cs(),EA=Ps(),xA=Vu();SA({target:"Promise",stat:!0,forced:xA},{all:function(e){var t=this,i=TA.f(t),r=i.resolve,s=i.reject,n=IA(function(){var u=yA(t.resolve),o=[],l=0,c=1;EA(e,function(p){var d=l++,h=!1;c++,vA(u,t,p).then(function(m){h||(h=!0,o[d]=m,--c||r(o))},s)}),--c||r(o)});return n.error&&s(n.value),i.promise}})});var Im=b(()=>{"use strict";var wA=Te(),AA=ft(),kA=Ki().CONSTRUCTOR,Ou=yi(),PA=Vt(),RA=ve(),LA=Wi(),Tm=Ou&&Ou.prototype;wA({target:"Promise",proto:!0,forced:kA,real:!0},{catch:function(a){return this.then(void 0,a)}});!AA&&RA(Ou)&&(_u=PA("Promise").prototype.catch,Tm.catch!==_u&&LA(Tm,"catch",_u,{unsafe:!0}));var _u});var Em=b(()=>{"use strict";var $A=Te(),MA=Ke(),DA=wt(),CA=Xi(),BA=Cs(),VA=Ps(),_A=Vu();$A({target:"Promise",stat:!0,forced:_A},{race:function(e){var t=this,i=CA.f(t),r=i.reject,s=BA(function(){var n=DA(t.resolve);VA(e,function(u){MA(n,t,u).then(i.resolve,r)})});return s.error&&r(s.value),i.promise}})});var xm=b(()=>{"use strict";var OA=Te(),FA=Xi(),NA=Ki().CONSTRUCTOR;OA({target:"Promise",stat:!0,forced:NA},{reject:function(e){var t=FA.f(this),i=t.reject;return i(e),t.promise}})});var Fu=b((dD,wm)=>{"use strict";var UA=At(),qA=Ne(),HA=Xi();wm.exports=function(a,e){if(UA(a),qA(e)&&e.constructor===a)return e;var t=HA.f(a),i=t.resolve;return i(e),t.promise}});var Pm=b(()=>{"use strict";var jA=Te(),QA=Vt(),Am=ft(),GA=yi(),km=Ki().CONSTRUCTOR,WA=Fu(),zA=QA("Promise"),YA=Am&&!km;jA({target:"Promise",stat:!0,forced:Am||km},{resolve:function(e){return WA(YA&&this===zA?GA:this,e)}})});var Rm=b(()=>{"use strict";hm();ym();Im();Em();xm();Pm()});var Dm=b(()=>{"use strict";var KA=Te(),XA=ft(),Us=yi(),JA=we(),$m=Vt(),Mm=ve(),ZA=uu(),Lm=Fu(),ek=Wi(),Uu=Us&&Us.prototype,tk=!!Us&&JA(function(){Uu.finally.call({then:function(){}},function(){})});KA({target:"Promise",proto:!0,real:!0,forced:tk},{finally:function(a){var e=ZA(this,$m("Promise")),t=Mm(a);return this.then(t?function(i){return Lm(e,a()).then(function(){return i})}:a,t?function(i){return Lm(e,a()).then(function(){throw i})}:a)}});!XA&&Mm(Us)&&(Nu=$m("Promise").prototype.finally,Uu.finally!==Nu&&ek(Uu,"finally",Nu,{unsafe:!0}));var Nu});var Bm=b((SD,Cm)=>{"use strict";Uh();Rm();Dm();var ik=Jt();Cm.exports=ik("Promise","finally")});var _m=b((vD,Vm)=>{"use strict";var rk=Bm();Vm.exports=rk});var qs=b((yD,Om)=>{"use strict";var ak=_m();Om.exports=ak});var Xm=b(()=>{"use strict";var mk=Te(),bk=Co().values;mk({target:"Object",stat:!0},{values:function(e){return bk(e)}})});var Zm=b((LC,Jm)=>{"use strict";Xm();var gk=fi();Jm.exports=gk.Object.values});var tb=b(($C,eb)=>{"use strict";var Sk=Zm();eb.exports=Sk});var ar=b((MC,ib)=>{"use strict";var vk=tb();ib.exports=vk});var nb=b(()=>{"use strict";var Ek=Te(),xk=Fi(),wk=Qi(),Ak=Vr(),kk=_r();Ek({target:"Array",proto:!0},{at:function(e){var t=xk(this),i=wk(t),r=Ak(e),s=r>=0?r:i+r;return s<0||s>=i?void 0:t[s]}});kk("at")});var ub=b((aB,ob)=>{"use strict";nb();var Pk=Jt();ob.exports=Pk("Array","at")});var cb=b((sB,lb)=>{"use strict";var Rk=ub();lb.exports=Rk});var gt=b((nB,db)=>{"use strict";var Lk=cb();db.exports=Lk});var ll=b((N0,Bb)=>{"use strict";var Uk=pi();Bb.exports=Array.isArray||function(e){return Uk(e)==="Array"}});var _b=b((U0,Vb)=>{"use strict";var qk=TypeError,Hk=9007199254740991;Vb.exports=function(a){if(a>Hk)throw qk("Maximum allowed index exceeded");return a}});var Nb=b((q0,Fb)=>{"use strict";var jk=ll(),Qk=Qi(),Gk=_b(),Wk=Ui(),Ob=function(a,e,t,i,r,s,n,u){for(var o=r,l=0,c=n?Wk(n,u):!1,p,d;l<i;)l in t&&(p=c?c(t[l],l,e):t[l],s>0&&jk(p)?(d=Qk(p),o=Ob(a,e,p,d,o,s-1)-1):(Gk(o+1),a[o]=p),o++),l++;return o};Fb.exports=Ob});var jb=b((H0,Hb)=>{"use strict";var Ub=ll(),zk=ou(),Yk=Ne(),Kk=$e(),Xk=Kk("species"),qb=Array;Hb.exports=function(a){var e;return Ub(a)&&(e=a.constructor,zk(e)&&(e===qb||Ub(e.prototype))?e=void 0:Yk(e)&&(e=e[Xk],e===null&&(e=void 0))),e===void 0?qb:e}});var Gb=b((j0,Qb)=>{"use strict";var Jk=jb();Qb.exports=function(a,e){return new(Jk(a))(e===0?0:e)}});var Wb=b(()=>{"use strict";var Zk=Te(),eP=Nb(),tP=wt(),iP=Fi(),rP=Qi(),aP=Gb();Zk({target:"Array",proto:!0},{flatMap:function(e){var t=iP(this),i=rP(t),r;return tP(e),r=aP(t,0),r.length=eP(r,t,t,i,0,1,e,arguments.length>1?arguments[1]:void 0),r}})});var zb=b(()=>{"use strict";var sP=_r();sP("flatMap")});var Kb=b((Y0,Yb)=>{"use strict";Wb();zb();var nP=Jt();Yb.exports=nP("Array","flatMap")});var Jb=b((K0,Xb)=>{"use strict";var oP=Kb();Xb.exports=oP});var oa=b((X0,Zb)=>{"use strict";var uP=Jb();Zb.exports=uP});var ua=b((J0,eg)=>{"use strict";var lP=Fr(),cP=String;eg.exports=function(a){if(lP(a)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return cP(a)}});var cl=b((Z0,tg)=>{"use strict";tg.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 ag=b((eV,rg)=>{"use strict";var dP=Ae(),pP=Xt(),hP=ua(),pl=cl(),ig=dP("".replace),fP=RegExp("^["+pl+"]+"),mP=RegExp("(^|[^"+pl+"])["+pl+"]+$"),dl=function(a){return function(e){var t=hP(pP(e));return a&1&&(t=ig(t,fP,"")),a&2&&(t=ig(t,mP,"$1")),t}};rg.exports={start:dl(1),end:dl(2),trim:dl(3)}});var ug=b((tV,og)=>{"use strict";var bP=Uo().PROPER,gP=we(),sg=cl(),ng="\u200B\x85\u180E";og.exports=function(a){return gP(function(){return!!sg[a]()||ng[a]()!==ng||bP&&sg[a].name!==a})}});var hl=b((iV,lg)=>{"use strict";var SP=ag().start,vP=ug();lg.exports=vP("trimStart")?function(){return SP(this)}:"".trimStart});var dg=b(()=>{"use strict";var yP=Te(),cg=hl();yP({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==cg},{trimLeft:cg})});var hg=b(()=>{"use strict";dg();var TP=Te(),pg=hl();TP({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==pg},{trimStart:pg})});var mg=b((oV,fg)=>{"use strict";hg();var IP=Jt();fg.exports=IP("String","trimLeft")});var gg=b((uV,bg)=>{"use strict";var EP=mg();bg.exports=EP});var vg=b((lV,Sg)=>{"use strict";var xP=gg();Sg.exports=xP});var Cg=b(()=>{"use strict"});var Bg=b(()=>{"use strict"});var _g=b((jO,Vg)=>{"use strict";var jP=Ne(),QP=pi(),GP=$e(),WP=GP("match");Vg.exports=function(a){var e;return jP(a)&&((e=a[WP])!==void 0?!!e:QP(a)==="RegExp")}});var Ng=b((QO,Fg)=>{"use strict";var zP=Se(),YP=we(),Og=zP.RegExp,KP=!YP(function(){var a=!0;try{Og(".","d")}catch{a=!1}var e={},t="",i=a?"dgimsy":"gimsy",r=function(o,l){Object.defineProperty(e,o,{get:function(){return t+=l,!0}})},s={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(s.hasIndices="d");for(var n in s)r(n,s[n]);var u=Object.getOwnPropertyDescriptor(Og.prototype,"flags").get.call(e);return u!==i||t!==i});Fg.exports={correct:KP}});var qg=b((GO,Ug)=>{"use strict";var XP=At();Ug.exports=function(){var a=XP(this),e="";return a.hasIndices&&(e+="d"),a.global&&(e+="g"),a.ignoreCase&&(e+="i"),a.multiline&&(e+="m"),a.dotAll&&(e+="s"),a.unicode&&(e+="u"),a.unicodeSets&&(e+="v"),a.sticky&&(e+="y"),e}});var Qg=b((WO,jg)=>{"use strict";var JP=Ke(),ZP=mt(),eR=Lr(),Hg=Ng(),tR=qg(),iR=RegExp.prototype;jg.exports=Hg.correct?function(a){return a.flags}:function(a){return!Hg.correct&&eR(iR,a)&&!ZP(a,"flags")?JP(tR,a):a.flags}});var Wg=b((zO,Gg)=>{"use strict";var gl=Ae(),rR=Fi(),aR=Math.floor,ml=gl("".charAt),sR=gl("".replace),bl=gl("".slice),nR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,oR=/\$([$&'`]|\d{1,2})/g;Gg.exports=function(a,e,t,i,r,s){var n=t+a.length,u=i.length,o=oR;return r!==void 0&&(r=rR(r),o=nR),sR(s,o,function(l,c){var p;switch(ml(c,0)){case"$":return"$";case"&":return a;case"`":return bl(e,0,t);case"'":return bl(e,n);case"<":p=r[bl(c,1,-1)];break;default:var d=+c;if(d===0)return l;if(d>u){var h=aR(d/10);return h===0?l:h<=u?i[h-1]===void 0?ml(c,1):i[h-1]+ml(c,1):l}p=i[d-1]}return p===void 0?"":p})}});var Kg=b(()=>{"use strict";var uR=Te(),lR=Ke(),vl=Ae(),zg=Xt(),cR=ve(),dR=Ne(),pR=_g(),fr=ua(),hR=Mr(),fR=Qg(),mR=Wg(),bR=$e(),gR=ft(),SR=bR("replace"),vR=TypeError,Sl=vl("".indexOf),yR=vl("".replace),Yg=vl("".slice),TR=Math.max;uR({target:"String",proto:!0},{replaceAll:function(e,t){var i=zg(this),r,s,n,u,o,l,c,p,d,h,m=0,g="";if(dR(e)){if(r=pR(e),r&&(s=fr(zg(fR(e))),!~Sl(s,"g")))throw new vR("`.replaceAll` does not allow non-global regexes");if(n=hR(e,SR),n)return lR(n,e,i,t);if(gR&&r)return yR(fr(i),e,t)}for(u=fr(i),o=fr(e),l=cR(t),l||(t=fr(t)),c=o.length,p=TR(1,c),d=Sl(u,o);d!==-1;)h=l?fr(t(o,d,u)):mR(o,u,d,[],void 0,t),g+=Yg(u,m,d)+h,m=d+c,d=d+p>u.length?-1:Sl(u,o,d+p);return m<u.length&&(g+=Yg(u,m)),g}})});var Jg=b((XO,Xg)=>{"use strict";Cg();Bg();Kg();var IR=Jt();Xg.exports=IR("String","replaceAll")});var eS=b((JO,Zg)=>{"use strict";var ER=Jg();Zg.exports=ER});var iS=b((ZO,tS)=>{"use strict";var xR=eS();tS.exports=xR});var aS=b((eF,rS)=>{"use strict";var wR=Vr(),AR=ua(),kR=Xt(),PR=RangeError;rS.exports=function(e){var t=AR(kR(this)),i="",r=wR(e);if(r<0||r===1/0)throw new PR("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var lS=b((tF,uS)=>{"use strict";var oS=Ae(),RR=Po(),sS=ua(),LR=aS(),$R=Xt(),MR=oS(LR),DR=oS("".slice),CR=Math.ceil,nS=function(a){return function(e,t,i){var r=sS($R(e)),s=RR(t),n=r.length,u=i===void 0?" ":sS(i),o,l;return s<=n||u===""?r:(o=s-n,l=MR(u,CR(o/u.length)),l.length>o&&(l=DR(l,0,o)),a?r+l:l+r)}};uS.exports={start:nS(!1),end:nS(!0)}});var dS=b((iF,cS)=>{"use strict";var BR=mi();cS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(BR)});var pS=b(()=>{"use strict";var VR=Te(),_R=lS().start,OR=dS();VR({target:"String",proto:!0,forced:OR},{padStart:function(e){return _R(this,e,arguments.length>1?arguments[1]:void 0)}})});var fS=b((sF,hS)=>{"use strict";pS();var FR=Jt();hS.exports=FR("String","padStart")});var bS=b((nF,mS)=>{"use strict";var NR=fS();mS.exports=NR});var SS=b((oF,gS)=>{"use strict";var UR=bS();gS.exports=UR});var hL={};Pv(hL,{ChromecastState:()=>xr,HttpConnectionType:()=>us,Observable:()=>Ct.Observable,PlaybackState:()=>Ve,Player:()=>Ja,PredefinedQualityLimits:()=>wr,SDK_VERSION:()=>pL,Subject:()=>Ct.Subject,Subscription:()=>Ct.Subscription,Surface:()=>ls,VERSION:()=>Xn,ValueSubject:()=>Ct.ValueSubject,VideoFormat:()=>xt,VideoQuality:()=>Ct.VideoQuality,areValidLiveRecordSources:()=>Gm,clientChecker:()=>j,isMobile:()=>ir});module.exports=Rv(hL);var Xn="2.0.136-dev.e1130126.0";var Ve=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(Ve||{}),xt=(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))(xt||{});var xr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(xr||{}),us=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(us||{});var ls=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(ls||{}),wr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(wr||{});var Sv=Q(st(),1);var J=require("@vkontakte/videoplayer-shared/es2024");var Hd=a=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",a),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var fs=class{constructor(e){this.connection$=new J.ValueSubject(void 0);this.castState$=new J.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new J.Subject;this.realCastState$=new J.ValueSubject("NOT_AVAILABLE");this.subscription=new J.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,J.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=s=>{delete window.__onGCastApiAvailable,s&&!this.isDestroyed&&this.initializeCastApi()},r||Hd("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:J.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,J.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,J.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,J.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,J.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,J.assertNever)(r.sessionState)}})).add((0,J.merge)((0,J.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,J.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,J.map)(r=>r.castState)),(0,J.observableFrom)([i.getCastState()])).pipe((0,J.filterChanged)(),(0,J.map)(XT),(0,J.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let s=r==="CONNECTED",n=(0,J.isNonNullable)(this.connection$.getValue());if(s&&!n){let u=i.getCurrentSession();(0,J.assertNonNullable)(u);let o=u.getCastDevice(),l=u.getMediaSession()?.media?.contentId;((0,J.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:u,castDevice:o}))}else!s&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?(0,J.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:J.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},XT=a=>{switch(a){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,J.assertNever)(a)}};var Gl=Q(st(),1),sv=Q(Gi(),1),nv=Q(iu(),1);var zm=Q(qs(),1);var qu=require("@vkontakte/videoplayer-shared/es2024");var ye=(a,e=0,t=0)=>{switch(t){case 0:return a.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return a;let i=new URL(a);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(a);return!i.searchParams.get("offset_p")&&e===0?a:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:(0,qu.assertNever)(t)}return a},ei=(a,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(a);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(a);return Number(t.searchParams.get("offset_p")??0)}default:(0,qu.assertNever)(e)}};var B=(a,e,t=!1)=>{let i=a.getTransition();(t||!i||i.to===e)&&a.setState(e)};var kt=require("@vkontakte/videoplayer-shared/es2024"),Z=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 ju=require("@vkontakte/videoplayer-shared/es2024");var Hs=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,s=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,u=/webkit|safari|khtml/i.test(e)?"Safari":void 0,o=/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||o||l||r||s||u||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],s=parseInt(r,10);if(!isNaN(s))return this._current_version=s,s}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var Fm=Q(st(),1);var ir=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var js=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,Fm.default)(e,this.current)}get isMac(){return this._highEntropyValues.platform==="macOS"||this.current==="Mac"}get isApple(){return this.isIOS||this.isMac}get isIphoneOrOldIpad(){if(!this.isApple||!this._displayChecker.isTouch)return!1;let e=this.current==="iPad"||this._displayChecker.width>700,t=this._iosVersion;return!e||e&&!!t&&t<16}get isAndroid(){return this._highEntropyValues.platform==="Android"||this.current==="Android"}get isMobile(){return this._highEntropyValues.mobile||this._isMobile}get iOSVersion(){return this._iosVersion}detect(){let{userAgent:e}=navigator;try{this._isMobile=ir()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e?.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,s=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,u=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||s||u||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let s=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(s);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 Qs=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 Je=()=>window.ManagedMediaSource||window.MediaSource,rr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Nm=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Gs=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var sk=document.createElement("video"),nk='video/mp4; codecs="avc1.42000a,mp4a.40.2"',ok='video/mp4; codecs="hev1.1.6.L93.B0"',Um='video/webm; codecs="vp09.00.10.08"',qm='video/webm; codecs="av01.0.00M.08"',uk='audio/mp4; codecs="mp4a.40.2"',lk='audio/webm; codecs="opus"',Hm,ck=async()=>{if(!window.navigator.mediaCapabilities)return;let a={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:qm}}),window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:Um}})]);Hm={DASH_WEBM_AV1:e,DASH_WEBM:t}};ck().catch(a=>{console.log(sk),console.error(a)});var Ws=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 Hm}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:rr(),mse:Nm(),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=!!Je()?.isTypeSupported?.(nk),t=!!Je()?.isTypeSupported?.(ok),i=!!Je()?.isTypeSupported?.(uk);this._codecs={h264:e,h265:t,vp9:!!Je()?.isTypeSupported?.(Um),av1:!!Je()?.isTypeSupported?.(qm),aac:i,opus:!!Je()?.isTypeSupported?.(lk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}try{this.destroyVideoElement()}catch(e){console.error("Error destroying video element:",e)}}destroyVideoElement(){if(!this._video)return;if(this._video.pause(),this._video.currentTime=0,this._video.removeAttribute("src"),this._video.src="",this._video.load(),this._video.remove){this._video.remove(),this._video=null;return}this._video.parentNode&&this._video.parentNode.removeChild(this._video);let e=this._video.cloneNode(!1);this._video.parentNode?.replaceChild(e,this._video),this._video=null}};var jm="audio/mpeg",zs=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(jm)},this._codecs={mp3:!!Je()?.isTypeSupported?.(jm)}}catch(e){console.error(e)}try{this.destroyAudioElement()}catch(e){console.error("Error destroying audio element:",e)}}destroyAudioElement(){if(!this._audio)return;if(this._audio.pause(),this._audio.currentTime=0,this._audio.removeAttribute("src"),this._audio.src="",this._audio.load(),this._audio.remove){this._audio.remove(),this._audio=null;return}this._audio.parentNode&&this._audio.parentNode.removeChild(this._audio);let e=this._audio.cloneNode(!1);this._audio.parentNode?.replaceChild(e,this._audio),this._audio=null}};var Qm=require("@vkontakte/videoplayer-shared/es2024"),Hu=class{constructor(){this.isInited$=new Qm.ValueSubject(!1);this._displayChecker=new Qs,this._deviceChecker=new js(this._displayChecker),this._browserChecker=new Hs,this._videoChecker=new Ws(this._deviceChecker,this._browserChecker),this._audioChecker=new zs,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)}},j=new Hu;var Qu=(a,{useManagedMediaSource:e,useOldMSEDetection:t})=>{let{containers:i,protocols:r,codecs:s,nativeHlsSupported:n}=j.video,u=(s.h264||s.h265)&&s.aac,o=r.mse&&(!t||!!window.MediaStreamTrack)||r.mms&&e;return a.filter(l=>{switch(l){case"DASH_SEP":return o&&i.mp4&&u;case"DASH_WEBM":return o&&i.webm&&s.vp9&&s.opus;case"DASH_WEBM_AV1":return o&&i.webm&&s.av1&&s.opus;case"DASH_STREAMS":return o&&(i.mp4&&u||i.webm&&(s.vp9||s.av1)&&(s.opus||s.aac));case"DASH_LIVE":return o&&i.mp4&&u;case"DASH_LIVE_CMAF":return o&&i.mp4&&u&&i.cmaf;case"DASH_ONDEMAND":return o&&i.mp4&&u;case"HLS":case"HLS_ONDEMAND":case"HLS_LIVE":case"HLS_LIVE_CMAF":return n;case"MPEG":return i.mp4;case"DASH":case"DASH_LIVE_WEBM":return!1;case"WEB_RTC_LIVE":return r.webrtc&&r.ws&&s.h264&&(i.mp4||i.webm);default:return(0,ju.assertNever)(l)}})},Gu=a=>{switch(a){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,ju.assertNever)(a)}},Gm=(a,e)=>{let i=Object.keys(a).filter(r=>!Gu(r));return Qu(i,e).length>0};var U=require("@vkontakte/videoplayer-shared/es2024");var dk=5,pk=5,hk=500,Wm=7e3,Kr=class{constructor(e){this.subscription=new U.Subscription;this.loadMediaTimeoutSubscription=new U.Subscription;this.videoState=new Z("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),s=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(s)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(r?.to!=="paused"&&s.state==="requested"&&e!=="stopped"){this.seek(s.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,U.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,U.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,U.assertNever)(e)}break}default:(0,U.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(Gu(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 U.Subscription;this.subscription.add(e),this.subscription.add((0,U.merge)(this.videoState.stateChangeStarted$.pipe((0,U.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,U.map)(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,s)=>this.subscription.add(r.subscribe(s));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new U.Subject;e.add(r.pipe((0,U.debounce)(hk)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let u=n.value;this.params.output.position$.next(u),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(u-s)>dk)&&r.next(u),s=u})),e.add((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,U.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,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:s}=this.params.connection,n=r.value,u=this.params.output.isBuffering$.getValue(),o=n===chrome.cast.media.PlayerState.BUFFERING;switch(u!==o&&this.params.output.isBuffering$.next(o),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&s.duration-s.currentTime<pk&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),B(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,U.assertNever)(n)}}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,U.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,U.observableFrom)(["init"])).pipe((0,U.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"),B(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),B(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"),B(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),B(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&B(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,s;switch(e){case"MPEG":{let l=t[e];(0,U.assertNonNullable)(l);let c=(0,U.getHighestQuality)(Object.keys(l));(0,U.assertNonNullable)(c);let p=l[c];(0,U.assertNonNullable)(p),i=p,r="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/x-mpegurl",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/dash+xml",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/dash+xml",s=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,U.assertNonNullable)(l),i=ye(l.url),r="application/x-mpegurl",s=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let l="Unsupported format for Chromecast",c=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:U.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:c}),c}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,U.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??i,r);n.contentUrl=i,n.streamType=s,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:u,subtitle:o}=this.params.meta;return(0,U.isNonNullable)(u)&&(n.metadata.title=u),(0,U.isNonNullable)(o)&&(n.metadata.subtitle=o),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,s)=>{this.loadMediaTimeoutSubscription.add((0,U.timeout)(Wm).subscribe(()=>s(`timeout(${Wm})`)))});(0,zm.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 s=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:s}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:U.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var ol=Q(st(),1);var Ku=require("@vkontakte/videoplayer-shared/es2024");var Ym=require("@vkontakte/videoplayer-shared/es2024"),Km=a=>{try{a.pause(),a.playbackRate=0,(0,Ym.clearVideoElement)(a),a.remove()}catch(e){console.error(e)}};var Ys=require("@vkontakte/videoplayer-shared/es2024"),Wu=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)}},zu=window.WeakMap?new WeakMap:new Wu,Yu=window.WeakMap?new WeakMap:new Map,fk=(a,e=20)=>{let t=0;return(0,Ys.fromEvent)(a,"ratechange").subscribe(i=>{t++,t>=e&&(a.currentTime=a.currentTime,t=0)})},Ue=(a,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=a.querySelector("video"),r=!!i;i?(0,Ku.clearVideoElement)(i):(i=document.createElement("video"),a.appendChild(i)),zu.set(i,r);let s=new Ys.Subscription;return s.add(fk(i,e)),Yu.set(i,s),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},qe=a=>{Yu.get(a)?.unsubscribe(),Yu.delete(a);let t=zu.get(a);zu.delete(a),t?(0,Ku.clearVideoElement)(a):Km(a)};var Xu=Q(ar(),1),q=require("@vkontakte/videoplayer-shared/es2024");var ti=require("@vkontakte/videoplayer-shared/es2024"),Ks=(a,e,t,{equal:i=(n,u)=>n===u,changed$:r,onError:s}={})=>{let n=a.getState(),u=e(),o=(0,ti.isNullable)(r),l=new ti.Subscription;return r&&l.add(r.subscribe(c=>{let p=a.getState();i(c,p)&&a.setState(c)},s)),i(u,n)||(t(n),o&&a.setState(n)),l.add(a.stateChangeStarted$.subscribe(c=>{t(c.to),o&&a.setState(c.to)},s)),l},Pt=(a,e,t)=>Ks(e,()=>a.loop,i=>{(0,ti.isNonNullable)(i)&&(a.loop=i)},{onError:t}),He=(a,e,t,i)=>Ks(e,()=>({muted:a.muted,volume:a.volume}),r=>{(0,ti.isNonNullable)(r)&&(a.muted=r.muted,a.volume=r.volume)},{equal:(r,s)=>r===s||r?.muted===s?.muted&&r?.volume===s?.volume,changed$:t,onError:i}),nt=(a,e,t,i)=>Ks(e,()=>a.playbackRate,r=>{(0,ti.isNonNullable)(r)&&(a.playbackRate=r)},{changed$:t,onError:i}),Xr=Ks;var yk=a=>["__",a.language,a.label].join("|"),Tk=(a,e)=>{if(a.id===e)return!0;let[t,i,r]=e.split("|");return a.language===i&&a.label===r},Ju=class a{constructor(e){this.available$=new q.Subject;this.current$=new q.ValueSubject(void 0);this.error$=new q.Subject;this.subscription=new q.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=s=>{this.error$.next({id:"TextTracksManager",category:q.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:s})};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(Xr(t.internalTextTracks,()=>(0,Xu.default)(this.internalTracks),s=>{(0,q.isNonNullable)(s)&&this.setInternal(s)},{equal:(s,n)=>(0,q.isNonNullable)(s)&&(0,q.isNonNullable)(n)&&s.length===n.length&&s.every(({id:u},o)=>u===n[o].id),changed$:this.available$.pipe((0,q.map)(s=>s.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(Xr(t.externalTextTracks,()=>(0,Xu.default)(this.externalTracks),s=>{(0,q.isNonNullable)(s)&&this.setExternal(s)},{equal:(s,n)=>(0,q.isNonNullable)(s)&&(0,q.isNonNullable)(n)&&s.length===n.length&&s.every(({id:u},o)=>u===n[o].id),changed$:this.available$.pipe((0,q.map)(s=>s.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(Xr(t.currentTextTrack,()=>{if(this.video)return;let s=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return s&&this.htmlTextTrackToITextTrack(s).id},s=>this.select(s),{changed$:this.current$,onError:r})),this.subscription.add(Xr(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let s of this.htmlTextTracksAsArray())this.applyCueSettings(s.cues),this.applyCueSettings(s.activeCues)}))}subscribe(){(0,q.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,q.fromEvent)(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add((0,q.merge)((0,q.fromEvent)(e,"addtrack"),(0,q.fromEvent)(e,"removetrack"),(0,q.observableFrom)(["init"])).pipe((0,q.map)(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),(0,q.filterChanged)((i,r)=>i.length===r.length&&i.every(({id:s},n)=>s===r[n].id))).subscribe(this.available$)),this.subscription.add((0,q.merge)((0,q.fromEvent)(e,"change"),(0,q.observableFrom)(["init"])).pipe((0,q.map)(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),(0,q.map)(i=>i&&this.htmlTextTrackToITextTrack(i).id),(0,q.filterChanged)()).subscribe(this.current$));let t=i=>this.applyCueSettings(i.target?.activeCues??null);this.subscription.add((0,q.fromEvent)(e,"addtrack").subscribe(i=>{i.track?.addEventListener("cuechange",t);let r=s=>{let n=s.target?.cues??null;n&&n.length&&(this.applyCueSettings(s.target?.cues??null),s.target?.removeEventListener("cuechange",r))};i.track?.addEventListener("cuechange",r)})),this.subscription.add((0,q.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,q.isNonNullable)(t.align)&&(r.align=t.align),(0,q.isNonNullable)(t.position)&&(r.position=t.position),(0,q.isNonNullable)(t.size)&&(r.size=t.size),(0,q.isNonNullable)(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,q.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(a.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:i}=e,r=e.id?e.id:yk(e),s=this.externalTracks.has(r),n=(s?this.externalTracks.get(r)?.isAuto:this.internalTracks.get(r)?.isAuto)??r.includes("auto");return s?{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:s})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===s)).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,q.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,q.isNullable)(e)||!Tk(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,q.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,q.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)}},ot=Ju;var Ii=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 rb=a=>{let e=a;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Zu=a=>{let e=rb(a);return!!(e&&e.fullscreenElement&&e.fullscreenElement===a)},ab=a=>{let e=rb(a);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===a)};var $=require("@vkontakte/videoplayer-shared/es2024");var Ik=3,sb=(a,e,t=Ik)=>{let i=0,r=0;for(let s=0;s<a.length;s++){let n=a.start(s),u=a.end(s);if(n<=e&&e<=u){if(i=n,r=u,!t)return{from:i,to:r};for(let o=s-1;o>=0;o--)a.end(o)+t>=i&&(i=a.start(o));for(let o=s+1;o<a.length;o++)a.start(o)-t<=r&&(r=a.end(o))}}return{from:i,to:r}};var je=a=>{let e=w=>(0,$.fromEvent)(a,w).pipe((0,$.mapTo)(void 0),(0,$.shareReplay)(1)),t=new $.Subscription,i=()=>t.unsubscribe(),r=(0,$.merge)((0,$.fromEvent)(a,"progress"),(0,$.fromEvent)(a,"timeupdate")).pipe((0,$.map)(()=>sb(a.buffered,a.currentTime)),(0,$.shareReplay)(1)),s=j.browser.isSafari?(0,$.combine)({play:e("play").pipe((0,$.once)()),playing:e("playing")}).pipe((0,$.mapTo)(void 0),(0,$.shareReplay)(1)):e("playing"),n=(0,$.fromEvent)(a,"volumechange").pipe((0,$.map)(()=>({muted:a.muted,volume:a.volume})),(0,$.shareReplay)(1)),u=(0,$.fromEvent)(a,"ratechange").pipe((0,$.map)(()=>a.playbackRate),(0,$.shareReplay)(1)),o=(0,$.fromEvent)(a,"error").pipe((0,$.filter)(()=>!!(a.error||a.played.length)),(0,$.map)(()=>{let w=a.error;return{id:w?`MediaError#${w.code}`:"HtmlVideoError",category:$.ErrorCategory.VIDEO_PIPELINE,message:w?w.message:"Error event from HTML video element",thrown:a.error??void 0}}),(0,$.shareReplay)(1)),l=(0,$.fromEvent)(a,"timeupdate").pipe((0,$.map)(()=>a.currentTime),(0,$.shareReplay)(1)),c=["waiting","seeking","seeked","timeupdate"],p=new $.Subject,d=.3,h;t.add((0,$.merge)(...c.map(w=>(0,$.fromEvent)(a,w))).subscribe(w=>{let ee=a.currentTime;a.loop&&(0,$.isNonNullable)(h)&&(0,$.isNonNullable)(ee)&&h>=a.duration-d&&ee<=d&&p.next(h),h=ee}));let m=e("pause").pipe((0,$.filter)(()=>!a.error&&h!==a.duration),(0,$.shareReplay)(1)),g=(0,$.fromEvent)(a,"enterpictureinpicture").pipe((0,$.shareReplay)(1)),S=(0,$.fromEvent)(a,"leavepictureinpicture").pipe((0,$.shareReplay)(1)),T=new $.ValueSubject(ab(a));t.add(g.subscribe(()=>T.next(!0))),t.add(S.subscribe(()=>T.next(!1)));let k=new $.ValueSubject(Zu(a)),x=(0,$.fromEvent)(a,"fullscreenchange").pipe((0,$.shareReplay)(1));t.add(x.pipe((0,$.map)(()=>Zu(a))).subscribe(k));let L=.1,C=1e3,V=(0,$.fromEvent)(a,"timeupdate").pipe((0,$.map)(w=>a.duration-a.currentTime<L),(0,$.filterChanged)(),(0,$.shareReplay)(1)),O=(0,$.merge)(V.pipe((0,$.filter)(w=>!a.loop&&w)),(0,$.fromEvent)(a,"ended")).pipe((0,$.throttle)(C),(0,$.mapTo)(void 0),(0,$.shareReplay)(1)),_=(0,$.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(w=>(0,$.fromEvent)(a,w)),V.pipe((0,$.map)(w=>({type:w?"ended":"unknown"})))).pipe((0,$.map)(w=>j.browser.isFirefox&&w.type==="ended"?a.readyState<2:a.readyState<3),(0,$.filterChanged)(),(0,$.shareReplay)(1));return{playing$:s,pause$:m,canplay$:e("canplay"),ended$:O,looped$:p,error$:o,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,$.fromEvent)(a,"durationchange").pipe((0,$.map)(()=>a.duration),(0,$.shareReplay)(1)),isBuffering$:_,currentBuffer$:r,volumeState$:n,playbackRateState$:u,inPiP$:T,inFullscreen$:k,enterPip$:g,leavePip$:S,destroy:i}};var Ft=require("@vkontakte/videoplayer-shared/es2024"),ii=a=>{switch(a){case"mobile":return Ft.VideoQuality.Q_144P;case"lowest":return Ft.VideoQuality.Q_240P;case"low":return Ft.VideoQuality.Q_360P;case"sd":case"medium":return Ft.VideoQuality.Q_480P;case"hd":case"high":return Ft.VideoQuality.Q_720P;case"fullhd":case"full":return Ft.VideoQuality.Q_1080P;case"quadhd":case"quad":return Ft.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return Ft.VideoQuality.Q_2160P}};var Oe=Q(gt(),1),il=Q(st(),1),Ei=Q(Gi(),1),M=require("@vkontakte/videoplayer-shared/es2024");var el=!1,Nt={},pb=a=>{el=a},hb=()=>{Nt={}},fb=a=>{a(Nt)},Jr=(a,e)=>{el&&(Nt.meta=Nt.meta??{},Nt.meta[a]=e)},_e=class{constructor(e){this.name=e}next(e){if(!el)return;Nt.series=Nt.series??{};let t=Nt.series[this.name]??[];t.push([Date.now(),e]),Nt.series[this.name]=t}};var Ie=require("@vkontakte/videoplayer-shared/es2024");function tl(a,e,t){return!a.max&&a.min===e?"high_quality":!a.min&&a.max===t?"traffic_saving":"unknown"}function Xs(a,e,t){return!!a&&tl(a,e,t)==="high_quality"}function sr(a,e,t){return(0,Ie.isNullable)(a)||(0,Ie.isNonNullable)(a.min)&&(0,Ie.isNonNullable)(a.max)&&(0,Ie.isLower)(a.max,a.min)||(0,Ie.isNonNullable)(a.min)&&e&&(0,Ie.isHigher)(a.min,e)||(0,Ie.isNonNullable)(a.max)&&t&&(0,Ie.isLower)(a.max,t)}function mb({limits:a,highestAvailableHeight:e,lowestAvailableHeight:t}){return sr({max:a?.max?(0,Ie.videoHeightToQuality)(a.max):void 0,min:a?.min?(0,Ie.videoHeightToQuality)(a.min):void 0},e?(0,Ie.videoHeightToQuality)(e):void 0,t?(0,Ie.videoHeightToQuality)(t):void 0)}var yb=new _e("best_bitrate"),Zs=(a,e,t)=>(e-t)*Math.pow(2,-10*a)+t;var nr=a=>(e,t)=>a*(Number(e.bitrate)-Number(t.bitrate)),ri=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,M.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},en='Assertion "ABR Tracks is empty array" failed',Js=new WeakMap,bb=new WeakMap,gb=new WeakMap,Zr=(a,e,t,i)=>{let r=[...e].sort(nr(1)),s=[...t].sort(nr(1)),n=s.filter(o=>(0,M.isNonNullable)(o.bitrate)&&(0,M.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),u=(0,Oe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Oe.default)(s,-1);return u&&(0,il.default)(n,u)?u:n.length?(0,Oe.default)(n,-1):(0,Oe.default)(s,0)},ea=(a,e,t,i)=>{let r=Js.get(e);r||(r=[...e].sort(nr(1)),Js.set(e,r));let s=Js.get(t);s||(s=[...t].sort(nr(1)),Js.set(t,s));let n=gb.get(a);n||(n=s.filter(o=>(0,M.isNonNullable)(o.bitrate)&&(0,M.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),gb.set(a,n));let u=(0,Oe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Oe.default)(s,-1);return u&&(0,il.default)(n,u)?u:n.length?(0,Oe.default)(n,-1):(0,Oe.default)(s,0)},Sb=a=>"quality"in a,tn=(a,e,t,i)=>{let r=(0,M.isNonNullable)(i?.last?.bitrate)&&(0,M.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?a.trackCooldownIncreaseQuality:a.trackCooldownDecreaseQuality,s=t&&i&&i.history[t.id]&&(0,M.now)()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t?.id&&i&&!s&&i.recordSelection(t),s&&i?.last){let n=i.last;i?.recordSwitch(n);let u=Sb(n)?"video":"audio",o=Sb(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 ag=b((eV,rg)=>{"use strict";var dP=Ae(),pP=Xt(),hP=ua(),pl=cl(),ig=dP("".replace),fP=RegExp("^["+pl+"]+"),mP=RegExp("(^|[^"+pl+"])["+pl+"]+$"),dl=function(a){return function(e){var t=hP(pP(e));return a&1&&(t=ig(t,fP,"")),a&2&&(t=ig(t,mP,"$1")),t}};rg.exports={start:dl(1),end:dl(2),trim:dl(3)}});var ug=b((tV,og)=>{"use strict";var bP=Uo().PROPER,gP=we(),sg=cl(),ng="\u200B\x85\u180E";og.exports=function(a){return gP(function(){return!!sg[a]()||ng[a]()!==ng||bP&&sg[a].name!==a})}});var hl=b((iV,lg)=>{"use strict";var SP=ag().start,vP=ug();lg.exports=vP("trimStart")?function(){return SP(this)}:"".trimStart});var dg=b(()=>{"use strict";var yP=Te(),cg=hl();yP({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==cg},{trimLeft:cg})});var hg=b(()=>{"use strict";dg();var TP=Te(),pg=hl();TP({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==pg},{trimStart:pg})});var mg=b((oV,fg)=>{"use strict";hg();var IP=Jt();fg.exports=IP("String","trimLeft")});var gg=b((uV,bg)=>{"use strict";var EP=mg();bg.exports=EP});var vg=b((lV,Sg)=>{"use strict";var xP=gg();Sg.exports=xP});var Cg=b(()=>{"use strict"});var Bg=b(()=>{"use strict"});var _g=b((jO,Vg)=>{"use strict";var jP=Ne(),QP=pi(),GP=$e(),WP=GP("match");Vg.exports=function(a){var e;return jP(a)&&((e=a[WP])!==void 0?!!e:QP(a)==="RegExp")}});var Ng=b((QO,Fg)=>{"use strict";var zP=Se(),YP=we(),Og=zP.RegExp,KP=!YP(function(){var a=!0;try{Og(".","d")}catch{a=!1}var e={},t="",i=a?"dgimsy":"gimsy",r=function(o,l){Object.defineProperty(e,o,{get:function(){return t+=l,!0}})},s={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};a&&(s.hasIndices="d");for(var n in s)r(n,s[n]);var u=Object.getOwnPropertyDescriptor(Og.prototype,"flags").get.call(e);return u!==i||t!==i});Fg.exports={correct:KP}});var qg=b((GO,Ug)=>{"use strict";var XP=At();Ug.exports=function(){var a=XP(this),e="";return a.hasIndices&&(e+="d"),a.global&&(e+="g"),a.ignoreCase&&(e+="i"),a.multiline&&(e+="m"),a.dotAll&&(e+="s"),a.unicode&&(e+="u"),a.unicodeSets&&(e+="v"),a.sticky&&(e+="y"),e}});var Qg=b((WO,jg)=>{"use strict";var JP=Ke(),ZP=mt(),eR=Lr(),Hg=Ng(),tR=qg(),iR=RegExp.prototype;jg.exports=Hg.correct?function(a){return a.flags}:function(a){return!Hg.correct&&eR(iR,a)&&!ZP(a,"flags")?JP(tR,a):a.flags}});var Wg=b((zO,Gg)=>{"use strict";var gl=Ae(),rR=Fi(),aR=Math.floor,ml=gl("".charAt),sR=gl("".replace),bl=gl("".slice),nR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,oR=/\$([$&'`]|\d{1,2})/g;Gg.exports=function(a,e,t,i,r,s){var n=t+a.length,u=i.length,o=oR;return r!==void 0&&(r=rR(r),o=nR),sR(s,o,function(l,c){var p;switch(ml(c,0)){case"$":return"$";case"&":return a;case"`":return bl(e,0,t);case"'":return bl(e,n);case"<":p=r[bl(c,1,-1)];break;default:var d=+c;if(d===0)return l;if(d>u){var h=aR(d/10);return h===0?l:h<=u?i[h-1]===void 0?ml(c,1):i[h-1]+ml(c,1):l}p=i[d-1]}return p===void 0?"":p})}});var Kg=b(()=>{"use strict";var uR=Te(),lR=Ke(),vl=Ae(),zg=Xt(),cR=ve(),dR=Ne(),pR=_g(),fr=ua(),hR=Mr(),fR=Qg(),mR=Wg(),bR=$e(),gR=ft(),SR=bR("replace"),vR=TypeError,Sl=vl("".indexOf),yR=vl("".replace),Yg=vl("".slice),TR=Math.max;uR({target:"String",proto:!0},{replaceAll:function(e,t){var i=zg(this),r,s,n,u,o,l,c,p,d,h,m=0,g="";if(dR(e)){if(r=pR(e),r&&(s=fr(zg(fR(e))),!~Sl(s,"g")))throw new vR("`.replaceAll` does not allow non-global regexes");if(n=hR(e,SR),n)return lR(n,e,i,t);if(gR&&r)return yR(fr(i),e,t)}for(u=fr(i),o=fr(e),l=cR(t),l||(t=fr(t)),c=o.length,p=TR(1,c),d=Sl(u,o);d!==-1;)h=l?fr(t(o,d,u)):mR(o,u,d,[],void 0,t),g+=Yg(u,m,d)+h,m=d+c,d=d+p>u.length?-1:Sl(u,o,d+p);return m<u.length&&(g+=Yg(u,m)),g}})});var Jg=b((XO,Xg)=>{"use strict";Cg();Bg();Kg();var IR=Jt();Xg.exports=IR("String","replaceAll")});var eS=b((JO,Zg)=>{"use strict";var ER=Jg();Zg.exports=ER});var iS=b((ZO,tS)=>{"use strict";var xR=eS();tS.exports=xR});var aS=b((eF,rS)=>{"use strict";var wR=Vr(),AR=ua(),kR=Xt(),PR=RangeError;rS.exports=function(e){var t=AR(kR(this)),i="",r=wR(e);if(r<0||r===1/0)throw new PR("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var lS=b((tF,uS)=>{"use strict";var oS=Ae(),RR=Po(),sS=ua(),LR=aS(),$R=Xt(),MR=oS(LR),DR=oS("".slice),CR=Math.ceil,nS=function(a){return function(e,t,i){var r=sS($R(e)),s=RR(t),n=r.length,u=i===void 0?" ":sS(i),o,l;return s<=n||u===""?r:(o=s-n,l=MR(u,CR(o/u.length)),l.length>o&&(l=DR(l,0,o)),a?r+l:l+r)}};uS.exports={start:nS(!1),end:nS(!0)}});var dS=b((iF,cS)=>{"use strict";var BR=mi();cS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(BR)});var pS=b(()=>{"use strict";var VR=Te(),_R=lS().start,OR=dS();VR({target:"String",proto:!0,forced:OR},{padStart:function(e){return _R(this,e,arguments.length>1?arguments[1]:void 0)}})});var fS=b((sF,hS)=>{"use strict";pS();var FR=Jt();hS.exports=FR("String","padStart")});var bS=b((nF,mS)=>{"use strict";var NR=fS();mS.exports=NR});var SS=b((oF,gS)=>{"use strict";var UR=bS();gS.exports=UR});var hL={};Pv(hL,{ChromecastState:()=>xr,HttpConnectionType:()=>us,Observable:()=>Ct.Observable,PlaybackState:()=>Ve,Player:()=>Ja,PredefinedQualityLimits:()=>wr,SDK_VERSION:()=>pL,Subject:()=>Ct.Subject,Subscription:()=>Ct.Subscription,Surface:()=>ls,VERSION:()=>Xn,ValueSubject:()=>Ct.ValueSubject,VideoFormat:()=>xt,VideoQuality:()=>Ct.VideoQuality,areValidLiveRecordSources:()=>Gm,clientChecker:()=>j,isMobile:()=>ir});module.exports=Rv(hL);var Xn="2.0.136-dev.e1184048.0";var Ve=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(Ve||{}),xt=(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))(xt||{});var xr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(xr||{}),us=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(us||{});var ls=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(ls||{}),wr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(wr||{});var Sv=Q(st(),1);var J=require("@vkontakte/videoplayer-shared/es2024");var Hd=a=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",a),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var fs=class{constructor(e){this.connection$=new J.ValueSubject(void 0);this.castState$=new J.ValueSubject("NOT_AVAILABLE");this.errorEvent$=new J.Subject;this.realCastState$=new J.ValueSubject("NOT_AVAILABLE");this.subscription=new J.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,J.isNonNullable)(window.chrome?.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=s=>{delete window.__onGCastApiAvailable,s&&!this.isDestroyed&&this.initializeCastApi()},r||Hd("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:J.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,J.isNonNullable)(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();(0,J.isNullable)(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();(0,J.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,J.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,J.assertNever)(r.sessionState)}})).add((0,J.merge)((0,J.fromEvent)(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe((0,J.tap)(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),(0,J.map)(r=>r.castState)),(0,J.observableFrom)([i.getCastState()])).pipe((0,J.filterChanged)(),(0,J.map)(XT),(0,J.tap)(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{let s=r==="CONNECTED",n=(0,J.isNonNullable)(this.connection$.getValue());if(s&&!n){let u=i.getCurrentSession();(0,J.assertNonNullable)(u);let o=u.getCastDevice(),l=u.getMediaSession()?.media?.contentId;((0,J.isNullable)(l)||l===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:u,castDevice:o}))}else!s&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?(0,J.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:J.ErrorCategory.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:r})}}},XT=a=>{switch(a){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,J.assertNever)(a)}};var Gl=Q(st(),1),sv=Q(Gi(),1),nv=Q(iu(),1);var zm=Q(qs(),1);var qu=require("@vkontakte/videoplayer-shared/es2024");var ye=(a,e=0,t=0)=>{switch(t){case 0:return a.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return a;let i=new URL(a);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(a);return!i.searchParams.get("offset_p")&&e===0?a:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:(0,qu.assertNever)(t)}return a},ei=(a,e)=>{switch(e){case 0:return NaN;case 1:{let t=new URL(a);return Number(t.searchParams.get("playback_shift"))}case 2:{let t=new URL(a);return Number(t.searchParams.get("offset_p")??0)}default:(0,qu.assertNever)(e)}};var B=(a,e,t=!1)=>{let i=a.getTransition();(t||!i||i.to===e)&&a.setState(e)};var kt=require("@vkontakte/videoplayer-shared/es2024"),Z=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 ju=require("@vkontakte/videoplayer-shared/es2024");var Hs=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,s=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,u=/webkit|safari|khtml/i.test(e)?"Safari":void 0,o=/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||o||l||r||s||u||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],s=parseInt(r,10);if(!isNaN(s))return this._current_version=s,s}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var Fm=Q(st(),1);var ir=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var js=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,Fm.default)(e,this.current)}get isMac(){return this._highEntropyValues.platform==="macOS"||this.current==="Mac"}get isApple(){return this.isIOS||this.isMac}get isIphoneOrOldIpad(){if(!this.isApple||!this._displayChecker.isTouch)return!1;let e=this.current==="iPad"||this._displayChecker.width>700,t=this._iosVersion;return!e||e&&!!t&&t<16}get isAndroid(){return this._highEntropyValues.platform==="Android"||this.current==="Android"}get isMobile(){return this._highEntropyValues.mobile||this._isMobile}get iOSVersion(){return this._iosVersion}detect(){let{userAgent:e}=navigator;try{this._isMobile=ir()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e?.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,s=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,u=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||s||u||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let s=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(s);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 Qs=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 Je=()=>window.ManagedMediaSource||window.MediaSource,rr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Nm=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Gs=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var sk=document.createElement("video"),nk='video/mp4; codecs="avc1.42000a,mp4a.40.2"',ok='video/mp4; codecs="hev1.1.6.L93.B0"',Um='video/webm; codecs="vp09.00.10.08"',qm='video/webm; codecs="av01.0.00M.08"',uk='audio/mp4; codecs="mp4a.40.2"',lk='audio/webm; codecs="opus"',Hm,ck=async()=>{if(!window.navigator.mediaCapabilities)return;let a={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:qm}}),window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:Um}})]);Hm={DASH_WEBM_AV1:e,DASH_WEBM:t}};ck().catch(a=>{console.log(sk),console.error(a)});var Ws=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 Hm}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:rr(),mse:Nm(),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=!!Je()?.isTypeSupported?.(nk),t=!!Je()?.isTypeSupported?.(ok),i=!!Je()?.isTypeSupported?.(uk);this._codecs={h264:e,h265:t,vp9:!!Je()?.isTypeSupported?.(Um),av1:!!Je()?.isTypeSupported?.(qm),aac:i,opus:!!Je()?.isTypeSupported?.(lk),mpeg:(e||t)&&i},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(e){console.error(e)}try{this.destroyVideoElement()}catch(e){console.error("Error destroying video element:",e)}}destroyVideoElement(){if(!this._video)return;if(this._video.pause(),this._video.currentTime=0,this._video.removeAttribute("src"),this._video.src="",this._video.load(),this._video.remove){this._video.remove(),this._video=null;return}this._video.parentNode&&this._video.parentNode.removeChild(this._video);let e=this._video.cloneNode(!1);this._video.parentNode?.replaceChild(e,this._video),this._video=null}};var jm="audio/mpeg",zs=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(jm)},this._codecs={mp3:!!Je()?.isTypeSupported?.(jm)}}catch(e){console.error(e)}try{this.destroyAudioElement()}catch(e){console.error("Error destroying audio element:",e)}}destroyAudioElement(){if(!this._audio)return;if(this._audio.pause(),this._audio.currentTime=0,this._audio.removeAttribute("src"),this._audio.src="",this._audio.load(),this._audio.remove){this._audio.remove(),this._audio=null;return}this._audio.parentNode&&this._audio.parentNode.removeChild(this._audio);let e=this._audio.cloneNode(!1);this._audio.parentNode?.replaceChild(e,this._audio),this._audio=null}};var Qm=require("@vkontakte/videoplayer-shared/es2024"),Hu=class{constructor(){this.isInited$=new Qm.ValueSubject(!1);this._displayChecker=new Qs,this._deviceChecker=new js(this._displayChecker),this._browserChecker=new Hs,this._videoChecker=new Ws(this._deviceChecker,this._browserChecker),this._audioChecker=new zs,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)}},j=new Hu;var Qu=(a,{useManagedMediaSource:e,useOldMSEDetection:t})=>{let{containers:i,protocols:r,codecs:s,nativeHlsSupported:n}=j.video,u=(s.h264||s.h265)&&s.aac,o=r.mse&&(!t||!!window.MediaStreamTrack)||r.mms&&e;return a.filter(l=>{switch(l){case"DASH_SEP":return o&&i.mp4&&u;case"DASH_WEBM":return o&&i.webm&&s.vp9&&s.opus;case"DASH_WEBM_AV1":return o&&i.webm&&s.av1&&s.opus;case"DASH_STREAMS":return o&&(i.mp4&&u||i.webm&&(s.vp9||s.av1)&&(s.opus||s.aac));case"DASH_LIVE":return o&&i.mp4&&u;case"DASH_LIVE_CMAF":return o&&i.mp4&&u&&i.cmaf;case"DASH_ONDEMAND":return o&&i.mp4&&u;case"HLS":case"HLS_ONDEMAND":case"HLS_LIVE":case"HLS_LIVE_CMAF":return n;case"MPEG":return i.mp4;case"DASH":case"DASH_LIVE_WEBM":return!1;case"WEB_RTC_LIVE":return r.webrtc&&r.ws&&s.h264&&(i.mp4||i.webm);default:return(0,ju.assertNever)(l)}})},Gu=a=>{switch(a){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,ju.assertNever)(a)}},Gm=(a,e)=>{let i=Object.keys(a).filter(r=>!Gu(r));return Qu(i,e).length>0};var U=require("@vkontakte/videoplayer-shared/es2024");var dk=5,pk=5,hk=500,Wm=7e3,Kr=class{constructor(e){this.subscription=new U.Subscription;this.loadMediaTimeoutSubscription=new U.Subscription;this.videoState=new Z("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),s=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(s)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if(r?.to!=="paused"&&s.state==="requested"&&e!=="stopped"){this.seek(s.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,U.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,U.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,U.assertNever)(e)}break}default:(0,U.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(Gu(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 U.Subscription;this.subscription.add(e),this.subscription.add((0,U.merge)(this.videoState.stateChangeStarted$.pipe((0,U.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,U.map)(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,s)=>this.subscription.add(r.subscribe(s));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new U.Subject;e.add(r.pipe((0,U.debounce)(hk)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let u=n.value;this.params.output.position$.next(u),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(u-s)>dk)&&r.next(u),s=u})),e.add((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,U.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,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:s}=this.params.connection,n=r.value,u=this.params.output.isBuffering$.getValue(),o=n===chrome.cast.media.PlayerState.BUFFERING;switch(u!==o&&this.params.output.isBuffering$.next(o),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&s.duration-s.currentTime<pk&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),B(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,U.assertNever)(n)}}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,U.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,U.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,U.observableFrom)(["init"])).pipe((0,U.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"),B(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),B(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"),B(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState();(this.videoState.getTransition()?.to==="playing"||e==="paused")&&(this.videoState.setState("playing"),B(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){this.videoState.getTransition()?.to==="ready"&&this.videoState.setState("ready"),this.params.desiredState.playbackState.getTransition()?.to==="ready"&&B(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,s;switch(e){case"MPEG":{let l=t[e];(0,U.assertNonNullable)(l);let c=(0,U.getHighestQuality)(Object.keys(l));(0,U.assertNonNullable)(c);let p=l[c];(0,U.assertNonNullable)(p),i=p,r="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_ONDEMAND":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/x-mpegurl",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/dash+xml",s=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let l=t[e];(0,U.assertNonNullable)(l),i=l.url,r="application/dash+xml",s=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let l=t[e];(0,U.assertNonNullable)(l),i=ye(l.url),r="application/x-mpegurl",s=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let l="Unsupported format for Chromecast",c=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:U.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:c}),c}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,U.assertNever)(e)}let n=new chrome.cast.media.MediaInfo(this.params.meta.videoId??i,r);n.contentUrl=i,n.streamType=s,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:u,subtitle:o}=this.params.meta;return(0,U.isNonNullable)(u)&&(n.metadata.title=u),(0,U.isNonNullable)(o)&&(n.metadata.subtitle=o),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,s)=>{this.loadMediaTimeoutSubscription.add((0,U.timeout)(Wm).subscribe(()=>s(`timeout(${Wm})`)))});(0,zm.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 s=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:s}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:U.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var ol=Q(st(),1);var Ku=require("@vkontakte/videoplayer-shared/es2024");var Ym=require("@vkontakte/videoplayer-shared/es2024"),Km=a=>{try{a.pause(),a.playbackRate=0,(0,Ym.clearVideoElement)(a),a.remove()}catch(e){console.error(e)}};var Ys=require("@vkontakte/videoplayer-shared/es2024"),Wu=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)}},zu=window.WeakMap?new WeakMap:new Wu,Yu=window.WeakMap?new WeakMap:new Map,fk=(a,e=20)=>{let t=0;return(0,Ys.fromEvent)(a,"ratechange").subscribe(i=>{t++,t>=e&&(a.currentTime=a.currentTime,t=0)})},Ue=(a,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=a.querySelector("video"),r=!!i;i?(0,Ku.clearVideoElement)(i):(i=document.createElement("video"),a.appendChild(i)),zu.set(i,r);let s=new Ys.Subscription;return s.add(fk(i,e)),Yu.set(i,s),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},qe=a=>{Yu.get(a)?.unsubscribe(),Yu.delete(a);let t=zu.get(a);zu.delete(a),t?(0,Ku.clearVideoElement)(a):Km(a)};var Xu=Q(ar(),1),q=require("@vkontakte/videoplayer-shared/es2024");var ti=require("@vkontakte/videoplayer-shared/es2024"),Ks=(a,e,t,{equal:i=(n,u)=>n===u,changed$:r,onError:s}={})=>{let n=a.getState(),u=e(),o=(0,ti.isNullable)(r),l=new ti.Subscription;return r&&l.add(r.subscribe(c=>{let p=a.getState();i(c,p)&&a.setState(c)},s)),i(u,n)||(t(n),o&&a.setState(n)),l.add(a.stateChangeStarted$.subscribe(c=>{t(c.to),o&&a.setState(c.to)},s)),l},Pt=(a,e,t)=>Ks(e,()=>a.loop,i=>{(0,ti.isNonNullable)(i)&&(a.loop=i)},{onError:t}),He=(a,e,t,i)=>Ks(e,()=>({muted:a.muted,volume:a.volume}),r=>{(0,ti.isNonNullable)(r)&&(a.muted=r.muted,a.volume=r.volume)},{equal:(r,s)=>r===s||r?.muted===s?.muted&&r?.volume===s?.volume,changed$:t,onError:i}),nt=(a,e,t,i)=>Ks(e,()=>a.playbackRate,r=>{(0,ti.isNonNullable)(r)&&(a.playbackRate=r)},{changed$:t,onError:i}),Xr=Ks;var yk=a=>["__",a.language,a.label].join("|"),Tk=(a,e)=>{if(a.id===e)return!0;let[t,i,r]=e.split("|");return a.language===i&&a.label===r},Ju=class a{constructor(e){this.available$=new q.Subject;this.current$=new q.ValueSubject(void 0);this.error$=new q.Subject;this.subscription=new q.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=s=>{this.error$.next({id:"TextTracksManager",category:q.ErrorCategory.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:s})};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(Xr(t.internalTextTracks,()=>(0,Xu.default)(this.internalTracks),s=>{(0,q.isNonNullable)(s)&&this.setInternal(s)},{equal:(s,n)=>(0,q.isNonNullable)(s)&&(0,q.isNonNullable)(n)&&s.length===n.length&&s.every(({id:u},o)=>u===n[o].id),changed$:this.available$.pipe((0,q.map)(s=>s.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(Xr(t.externalTextTracks,()=>(0,Xu.default)(this.externalTracks),s=>{(0,q.isNonNullable)(s)&&this.setExternal(s)},{equal:(s,n)=>(0,q.isNonNullable)(s)&&(0,q.isNonNullable)(n)&&s.length===n.length&&s.every(({id:u},o)=>u===n[o].id),changed$:this.available$.pipe((0,q.map)(s=>s.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(Xr(t.currentTextTrack,()=>{if(this.video)return;let s=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return s&&this.htmlTextTrackToITextTrack(s).id},s=>this.select(s),{changed$:this.current$,onError:r})),this.subscription.add(Xr(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let s of this.htmlTextTracksAsArray())this.applyCueSettings(s.cues),this.applyCueSettings(s.activeCues)}))}subscribe(){(0,q.assertNonNullable)(this.video);let{textTracks:e}=this.video;this.subscription.add((0,q.fromEvent)(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add((0,q.merge)((0,q.fromEvent)(e,"addtrack"),(0,q.fromEvent)(e,"removetrack"),(0,q.observableFrom)(["init"])).pipe((0,q.map)(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),(0,q.filterChanged)((i,r)=>i.length===r.length&&i.every(({id:s},n)=>s===r[n].id))).subscribe(this.available$)),this.subscription.add((0,q.merge)((0,q.fromEvent)(e,"change"),(0,q.observableFrom)(["init"])).pipe((0,q.map)(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),(0,q.map)(i=>i&&this.htmlTextTrackToITextTrack(i).id),(0,q.filterChanged)()).subscribe(this.current$));let t=i=>this.applyCueSettings(i.target?.activeCues??null);this.subscription.add((0,q.fromEvent)(e,"addtrack").subscribe(i=>{i.track?.addEventListener("cuechange",t);let r=s=>{let n=s.target?.cues??null;n&&n.length&&(this.applyCueSettings(s.target?.cues??null),s.target?.removeEventListener("cuechange",r))};i.track?.addEventListener("cuechange",r)})),this.subscription.add((0,q.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,q.isNonNullable)(t.align)&&(r.align=t.align),(0,q.isNonNullable)(t.position)&&(r.position=t.position),(0,q.isNonNullable)(t.size)&&(r.size=t.size),(0,q.isNonNullable)(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){(0,q.assertNonNullable)(this.video);let t=[...this.video.textTracks];return e?t:t.filter(a.isHealthyTrack)}htmlTextTrackToITextTrack(e){let{language:t,label:i}=e,r=e.id?e.id:yk(e),s=this.externalTracks.has(r),n=(s?this.externalTracks.get(r)?.isAuto:this.internalTracks.get(r)?.isAuto)??r.includes("auto");return s?{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:s})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===s)).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,q.assertNonNullable)(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))((0,q.isNullable)(e)||!Tk(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,q.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,q.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)}},ot=Ju;var Ii=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 rb=a=>{let e=a;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},Zu=a=>{let e=rb(a);return!!(e&&e.fullscreenElement&&e.fullscreenElement===a)},ab=a=>{let e=rb(a);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===a)};var $=require("@vkontakte/videoplayer-shared/es2024");var Ik=3,sb=(a,e,t=Ik)=>{let i=0,r=0;for(let s=0;s<a.length;s++){let n=a.start(s),u=a.end(s);if(n<=e&&e<=u){if(i=n,r=u,!t)return{from:i,to:r};for(let o=s-1;o>=0;o--)a.end(o)+t>=i&&(i=a.start(o));for(let o=s+1;o<a.length;o++)a.start(o)-t<=r&&(r=a.end(o))}}return{from:i,to:r}};var je=a=>{let e=w=>(0,$.fromEvent)(a,w).pipe((0,$.mapTo)(void 0),(0,$.shareReplay)(1)),t=new $.Subscription,i=()=>t.unsubscribe(),r=(0,$.merge)((0,$.fromEvent)(a,"progress"),(0,$.fromEvent)(a,"timeupdate")).pipe((0,$.map)(()=>sb(a.buffered,a.currentTime)),(0,$.shareReplay)(1)),s=j.browser.isSafari?(0,$.combine)({play:e("play").pipe((0,$.once)()),playing:e("playing")}).pipe((0,$.mapTo)(void 0),(0,$.shareReplay)(1)):e("playing"),n=(0,$.fromEvent)(a,"volumechange").pipe((0,$.map)(()=>({muted:a.muted,volume:a.volume})),(0,$.shareReplay)(1)),u=(0,$.fromEvent)(a,"ratechange").pipe((0,$.map)(()=>a.playbackRate),(0,$.shareReplay)(1)),o=(0,$.fromEvent)(a,"error").pipe((0,$.filter)(()=>!!(a.error||a.played.length)),(0,$.map)(()=>{let w=a.error;return{id:w?`MediaError#${w.code}`:"HtmlVideoError",category:$.ErrorCategory.VIDEO_PIPELINE,message:w?w.message:"Error event from HTML video element",thrown:a.error??void 0}}),(0,$.shareReplay)(1)),l=(0,$.fromEvent)(a,"timeupdate").pipe((0,$.map)(()=>a.currentTime),(0,$.shareReplay)(1)),c=["waiting","seeking","seeked","timeupdate"],p=new $.Subject,d=.3,h;t.add((0,$.merge)(...c.map(w=>(0,$.fromEvent)(a,w))).subscribe(w=>{let ee=a.currentTime;a.loop&&(0,$.isNonNullable)(h)&&(0,$.isNonNullable)(ee)&&h>=a.duration-d&&ee<=d&&p.next(h),h=ee}));let m=e("pause").pipe((0,$.filter)(()=>!a.error&&h!==a.duration),(0,$.shareReplay)(1)),g=(0,$.fromEvent)(a,"enterpictureinpicture").pipe((0,$.shareReplay)(1)),S=(0,$.fromEvent)(a,"leavepictureinpicture").pipe((0,$.shareReplay)(1)),T=new $.ValueSubject(ab(a));t.add(g.subscribe(()=>T.next(!0))),t.add(S.subscribe(()=>T.next(!1)));let k=new $.ValueSubject(Zu(a)),x=(0,$.fromEvent)(a,"fullscreenchange").pipe((0,$.shareReplay)(1));t.add(x.pipe((0,$.map)(()=>Zu(a))).subscribe(k));let L=.1,C=1e3,V=(0,$.fromEvent)(a,"timeupdate").pipe((0,$.map)(w=>a.duration-a.currentTime<L),(0,$.filterChanged)(),(0,$.shareReplay)(1)),O=(0,$.merge)(V.pipe((0,$.filter)(w=>!a.loop&&w)),(0,$.fromEvent)(a,"ended")).pipe((0,$.throttle)(C),(0,$.mapTo)(void 0),(0,$.shareReplay)(1)),_=(0,$.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(w=>(0,$.fromEvent)(a,w)),V.pipe((0,$.map)(w=>({type:w?"ended":"unknown"})))).pipe((0,$.map)(w=>j.browser.isFirefox&&w.type==="ended"?a.readyState<2:a.readyState<3),(0,$.filterChanged)(),(0,$.shareReplay)(1));return{playing$:s,pause$:m,canplay$:e("canplay"),ended$:O,looped$:p,error$:o,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,$.fromEvent)(a,"durationchange").pipe((0,$.map)(()=>a.duration),(0,$.shareReplay)(1)),isBuffering$:_,currentBuffer$:r,volumeState$:n,playbackRateState$:u,inPiP$:T,inFullscreen$:k,enterPip$:g,leavePip$:S,destroy:i}};var Ft=require("@vkontakte/videoplayer-shared/es2024"),ii=a=>{switch(a){case"mobile":return Ft.VideoQuality.Q_144P;case"lowest":return Ft.VideoQuality.Q_240P;case"low":return Ft.VideoQuality.Q_360P;case"sd":case"medium":return Ft.VideoQuality.Q_480P;case"hd":case"high":return Ft.VideoQuality.Q_720P;case"fullhd":case"full":return Ft.VideoQuality.Q_1080P;case"quadhd":case"quad":return Ft.VideoQuality.Q_1440P;case"ultrahd":case"ultra":return Ft.VideoQuality.Q_2160P}};var Oe=Q(gt(),1),il=Q(st(),1),Ei=Q(Gi(),1),M=require("@vkontakte/videoplayer-shared/es2024");var el=!1,Nt={},pb=a=>{el=a},hb=()=>{Nt={}},fb=a=>{a(Nt)},Jr=(a,e)=>{el&&(Nt.meta=Nt.meta??{},Nt.meta[a]=e)},_e=class{constructor(e){this.name=e}next(e){if(!el)return;Nt.series=Nt.series??{};let t=Nt.series[this.name]??[];t.push([Date.now(),e]),Nt.series[this.name]=t}};var Ie=require("@vkontakte/videoplayer-shared/es2024");function tl(a,e,t){return!a.max&&a.min===e?"high_quality":!a.min&&a.max===t?"traffic_saving":"unknown"}function Xs(a,e,t){return!!a&&tl(a,e,t)==="high_quality"}function sr(a,e,t){return(0,Ie.isNullable)(a)||(0,Ie.isNonNullable)(a.min)&&(0,Ie.isNonNullable)(a.max)&&(0,Ie.isLower)(a.max,a.min)||(0,Ie.isNonNullable)(a.min)&&e&&(0,Ie.isHigher)(a.min,e)||(0,Ie.isNonNullable)(a.max)&&t&&(0,Ie.isLower)(a.max,t)}function mb({limits:a,highestAvailableHeight:e,lowestAvailableHeight:t}){return sr({max:a?.max?(0,Ie.videoHeightToQuality)(a.max):void 0,min:a?.min?(0,Ie.videoHeightToQuality)(a.min):void 0},e?(0,Ie.videoHeightToQuality)(e):void 0,t?(0,Ie.videoHeightToQuality)(t):void 0)}var yb=new _e("best_bitrate"),Zs=(a,e,t)=>(e-t)*Math.pow(2,-10*a)+t;var nr=a=>(e,t)=>a*(Number(e.bitrate)-Number(t.bitrate)),ri=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,M.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},en='Assertion "ABR Tracks is empty array" failed',Js=new WeakMap,bb=new WeakMap,gb=new WeakMap,Zr=(a,e,t,i)=>{let r=[...e].sort(nr(1)),s=[...t].sort(nr(1)),n=s.filter(o=>(0,M.isNonNullable)(o.bitrate)&&(0,M.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),u=(0,Oe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Oe.default)(s,-1);return u&&(0,il.default)(n,u)?u:n.length?(0,Oe.default)(n,-1):(0,Oe.default)(s,0)},ea=(a,e,t,i)=>{let r=Js.get(e);r||(r=[...e].sort(nr(1)),Js.set(e,r));let s=Js.get(t);s||(s=[...t].sort(nr(1)),Js.set(t,s));let n=gb.get(a);n||(n=s.filter(o=>(0,M.isNonNullable)(o.bitrate)&&(0,M.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),gb.set(a,n));let u=(0,Oe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Oe.default)(s,-1);return u&&(0,il.default)(n,u)?u:n.length?(0,Oe.default)(n,-1):(0,Oe.default)(s,0)},Sb=a=>"quality"in a,tn=(a,e,t,i)=>{let r=(0,M.isNonNullable)(i?.last?.bitrate)&&(0,M.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?a.trackCooldownIncreaseQuality:a.trackCooldownDecreaseQuality,s=t&&i&&i.history[t.id]&&(0,M.now)()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t?.id&&i&&!s&&i.recordSelection(t),s&&i?.last){let n=i.last;i?.recordSwitch(n);let u=Sb(n)?"video":"audio",o=Sb(n)?n.quality:n.bitrate;return e({message:`
8
8
  [last ${u} selected] ${o}
9
9
  `}),n}return i?.recordSwitch(t),t},$k=(a,e)=>Math.log(e)/Math.log(a),Tb=({tuning:a,container:e,limits:t,panelSize:i})=>{let r=a.containerSizeFactor;if(i)return{containerSizeLimit:i,containerSizeFactor:r};if(a.usePixelRatio&&j.display.pixelRatio){let s=j.display.pixelRatio;if(a.pixelRatioMultiplier)r*=a.pixelRatioMultiplier*(s-1)+1;else{let n=a.pixelRatioLogBase,[u=0,o=0,l=0]=a.pixelRatioLogCoefficients,c=$k(n,u*s+o)+l;Number.isFinite(c)&&(r*=c)}}return Xs(t,a.highQualityLimit,a.trafficSavingLimit)&&(r*=2),{containerSizeLimit:a.limitByContainer&&e&&e.width>0&&e.height>0?{width:e.width*r,height:e.height*r}:void 0,containerSizeFactor:r}},vb=new WeakMap,Rt=(a,{container:e,estimatedThroughput:t,tuning:i,limits:r,reserve:s=0,forwardBufferHealth:n,playbackRate:u,current:o,history:l,visible:c,droppedVideoMaxQualityLimit:p,stallsVideoMaxQualityLimit:d,stallsPredictedThroughput:h,abrLogger:m,panelSize:g})=>{(0,M.assertNotEmptyArray)(a,en);let{containerSizeFactor:S,containerSizeLimit:T}=Tb({container:e,tuning:i,limits:r,panelSize:g}),k=i.considerPlaybackRate&&(0,M.isNonNullable)(u)?u:1,x=vb.get(a);x||(x=a.filter(E=>!(0,M.isInvariantQuality)(E.quality)).sort((E,R)=>(0,M.isHigher)(E.quality,R.quality)?-1:1),vb.set(a,x));let L=(0,Oe.default)(x,-1)?.quality,C=(0,Oe.default)(x,0)?.quality,V=sr(r,C,L),O=k*Zs(n??.5,i.bitrateFactorAtEmptyBuffer,i.bitrateFactorAtFullBuffer),D={},_=null;for(let E of x){let R=!0;if(T)if(E.size)R=E.size.width<=T.width&&E.size.height<=T.height;else{let ae=T&&(0,M.videoSizeToQuality)(T);R=ae?(0,M.isLowerOrEqual)(E.quality,ae):!0}if(!R){D[E.quality]="FitsContainer";continue}let oe=h||t,N=(0,M.isNonNullable)(oe)&&isFinite(oe)&&(0,M.isNonNullable)(E.bitrate)?oe-s>=E.bitrate*O:!0,re=Xs(r,i.highQualityLimit,i.trafficSavingLimit)&&r?.min===E.quality;if(!N&&!re){D[E.quality]="FitsThroughput";continue}if(i.lazyQualitySwitch&&(0,M.isNonNullable)(i.minBufferToSwitchUp)&&o&&!(0,M.isInvariantQuality)(o.quality)&&(n??0)<i.minBufferToSwitchUp&&(0,M.isHigher)(E.quality,o.quality)){D[E.quality]="Buffer";continue}if(!!p&&(0,M.isHigherOrEqual)(E.quality,p)&&!re){D[E.quality]="DroppedFramesLimit";continue}if(!!d&&(0,M.isHigherOrEqual)(E.quality,d)&&!re){D[E.quality]="StallsLimit";continue}let Re=V||((0,M.isNullable)(r?.max)||(0,M.isLowerOrEqual)(E.quality,r.max))&&((0,M.isNullable)(r?.min)||(0,M.isHigherOrEqual)(E.quality,r.min)),Le=(0,M.isNonNullable)(c)&&!c?(0,M.isLowerOrEqual)(E.quality,i.backgroundVideoQualityLimit):!0;if(!Re||!Le){D[E.quality]="FitsQualityLimits";continue}_||(_=E)}_&&_.bitrate&&yb.next(_.bitrate);let w=_??(0,Oe.default)(x,-1)??a[0],ee=l?.last,F=tn(i,m,w,l);return(0,M.isNonNullable)(l)&&F.quality!==ee?.quality&&m({message:`
10
10
  [VIDEO TRACKS ABR]