@vkontakte/videoplayer-core 2.0.143 → 2.0.144-dev.3ba5a3c2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es2015.cjs.js +14 -14
- package/es2015.esm.js +12 -12
- package/es2018.cjs.js +15 -15
- package/es2018.esm.js +12 -12
- package/es2024.cjs.js +4 -4
- package/es2024.esm.js +5 -5
- package/esnext.cjs.js +4 -4
- package/esnext.esm.js +5 -5
- package/evergreen.esm.js +4 -4
- package/package.json +2 -2
package/es2024.cjs.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vkontakte/videoplayer-core v2.0.
|
|
3
|
-
* Mon,
|
|
4
|
-
* https://st.mycdn.me/static/vkontakte-videoplayer/2-0-
|
|
2
|
+
* @vkontakte/videoplayer-core v2.0.144-dev.3ba5a3c2.0
|
|
3
|
+
* Mon, 27 Oct 2025 11:39:44 GMT
|
|
4
|
+
* https://st.mycdn.me/static/vkontakte-videoplayer/2-0-144/doc/
|
|
5
5
|
*/
|
|
6
6
|
"use strict";var kv=Object.create;var hs=Object.defineProperty;var Rv=Object.getOwnPropertyDescriptor;var Lv=Object.getOwnPropertyNames;var $v=Object.getPrototypeOf,Mv=Object.prototype.hasOwnProperty;var g=(a,e)=>()=>(e||a((e={exports:{}}).exports,e),e.exports),Dv=(a,e)=>{for(var t in e)hs(a,t,{get:e[t],enumerable:!0})},ic=(a,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Lv(e))!Mv.call(a,r)&&r!==t&&hs(a,r,{get:()=>e[r],enumerable:!(i=Rv(e,r))||i.enumerable});return a};var Q=(a,e,t)=>(t=a!=null?kv($v(a)):{},ic(e||!a||!a.__esModule?hs(t,"default",{value:a,enumerable:!0}):t,a)),Cv=a=>ic(hs({},"__esModule",{value:!0}),a);var Se=g((ao,rc)=>{"use strict";var Lr=function(a){return a&&a.Math===Math&&a};rc.exports=Lr(typeof globalThis=="object"&&globalThis)||Lr(typeof window=="object"&&window)||Lr(typeof self=="object"&&self)||Lr(typeof global=="object"&&global)||Lr(typeof ao=="object"&&ao)||function(){return this}()||Function("return this")()});var we=g((xL,ac)=>{"use strict";ac.exports=function(a){try{return!!a()}catch{return!0}}});var $r=g((wL,sc)=>{"use strict";var Bv=we();sc.exports=!Bv(function(){var a=function(){}.bind();return typeof a!="function"||a.hasOwnProperty("prototype")})});var so=g((AL,lc)=>{"use strict";var Vv=$r(),uc=Function.prototype,nc=uc.apply,oc=uc.call;lc.exports=typeof Reflect=="object"&&Reflect.apply||(Vv?oc.bind(nc):function(){return oc.apply(nc,arguments)})});var Ae=g((PL,pc)=>{"use strict";var cc=$r(),dc=Function.prototype,no=dc.call,_v=cc&&dc.bind.bind(no,no);pc.exports=cc?_v:function(a){return function(){return no.apply(a,arguments)}}});var hi=g((kL,fc)=>{"use strict";var hc=Ae(),Ov=hc({}.toString),Fv=hc("".slice);fc.exports=function(a){return Fv(Ov(a),8,-1)}});var oo=g((RL,mc)=>{"use strict";var Nv=hi(),qv=Ae();mc.exports=function(a){if(Nv(a)==="Function")return qv(a)}});var ve=g((LL,bc)=>{"use strict";var uo=typeof document=="object"&&document.all;bc.exports=typeof uo>"u"&&uo!==void 0?function(a){return typeof a=="function"||a===uo}:function(a){return typeof a=="function"}});var Ke=g(($L,gc)=>{"use strict";var Uv=we();gc.exports=!Uv(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var Xe=g((ML,Sc)=>{"use strict";var Hv=$r(),bs=Function.prototype.call;Sc.exports=Hv?bs.bind(bs):function(){return bs.apply(bs,arguments)}});var lo=g(Tc=>{"use strict";var vc={}.propertyIsEnumerable,yc=Object.getOwnPropertyDescriptor,jv=yc&&!vc.call({1:2},1);Tc.f=jv?function(e){var t=yc(this,e);return!!t&&t.enumerable}:vc});var Mr=g((CL,Ic)=>{"use strict";Ic.exports=function(a,e){return{enumerable:!(a&1),configurable:!(a&2),writable:!(a&4),value:e}}});var xc=g((BL,Ec)=>{"use strict";var Wv=Ae(),Qv=we(),Gv=hi(),co=Object,zv=Wv("".split);Ec.exports=Qv(function(){return!co("z").propertyIsEnumerable(0)})?function(a){return Gv(a)==="String"?zv(a,""):co(a)}:co});var Dr=g((VL,wc)=>{"use strict";wc.exports=function(a){return a==null}});var Xt=g((_L,Ac)=>{"use strict";var Yv=Dr(),Kv=TypeError;Ac.exports=function(a){if(Yv(a))throw new Kv("Can't call method on "+a);return a}});var fi=g((OL,Pc)=>{"use strict";var Xv=xc(),Jv=Xt();Pc.exports=function(a){return Xv(Jv(a))}});var Ne=g((FL,kc)=>{"use strict";var Zv=ve();kc.exports=function(a){return typeof a=="object"?a!==null:Zv(a)}});var mi=g((NL,Rc)=>{"use strict";Rc.exports={}});var Vt=g((qL,$c)=>{"use strict";var po=mi(),ho=Se(),ey=ve(),Lc=function(a){return ey(a)?a:void 0};$c.exports=function(a,e){return arguments.length<2?Lc(po[a])||Lc(ho[a]):po[a]&&po[a][e]||ho[a]&&ho[a][e]}});var Cr=g((UL,Mc)=>{"use strict";var ty=Ae();Mc.exports=ty({}.isPrototypeOf)});var bi=g((HL,Bc)=>{"use strict";var iy=Se(),Dc=iy.navigator,Cc=Dc&&Dc.userAgent;Bc.exports=Cc?String(Cc):""});var mo=g((jL,qc)=>{"use strict";var Nc=Se(),fo=bi(),Vc=Nc.process,_c=Nc.Deno,Oc=Vc&&Vc.versions||_c&&_c.version,Fc=Oc&&Oc.v8,ht,gs;Fc&&(ht=Fc.split("."),gs=ht[0]>0&&ht[0]<4?1:+(ht[0]+ht[1]));!gs&&fo&&(ht=fo.match(/Edge\/(\d+)/),(!ht||ht[1]>=74)&&(ht=fo.match(/Chrome\/(\d+)/),ht&&(gs=+ht[1])));qc.exports=gs});var bo=g((WL,Hc)=>{"use strict";var Uc=mo(),ry=we(),ay=Se(),sy=ay.String;Hc.exports=!!Object.getOwnPropertySymbols&&!ry(function(){var a=Symbol("symbol detection");return!sy(a)||!(Object(a)instanceof Symbol)||!Symbol.sham&&Uc&&Uc<41})});var go=g((QL,jc)=>{"use strict";var ny=bo();jc.exports=ny&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var So=g((GL,Wc)=>{"use strict";var oy=Vt(),uy=ve(),ly=Cr(),cy=go(),dy=Object;Wc.exports=cy?function(a){return typeof a=="symbol"}:function(a){var e=oy("Symbol");return uy(e)&&ly(e.prototype,dy(a))}});var Br=g((zL,Qc)=>{"use strict";var py=String;Qc.exports=function(a){try{return py(a)}catch{return"Object"}}});var wt=g((YL,Gc)=>{"use strict";var hy=ve(),fy=Br(),my=TypeError;Gc.exports=function(a){if(hy(a))return a;throw new my(fy(a)+" is not a function")}});var Vr=g((KL,zc)=>{"use strict";var by=wt(),gy=Dr();zc.exports=function(a,e){var t=a[e];return gy(t)?void 0:by(t)}});var Kc=g((XL,Yc)=>{"use strict";var vo=Xe(),yo=ve(),To=Ne(),Sy=TypeError;Yc.exports=function(a,e){var t,i;if(e==="string"&&yo(t=a.toString)&&!To(i=vo(t,a))||yo(t=a.valueOf)&&!To(i=vo(t,a))||e!=="string"&&yo(t=a.toString)&&!To(i=vo(t,a)))return i;throw new Sy("Can't convert object to primitive value")}});var ft=g((JL,Xc)=>{"use strict";Xc.exports=!0});var ed=g((ZL,Zc)=>{"use strict";var Jc=Se(),vy=Object.defineProperty;Zc.exports=function(a,e){try{vy(Jc,a,{value:e,configurable:!0,writable:!0})}catch{Jc[a]=e}return e}});var _r=g((e$,rd)=>{"use strict";var yy=ft(),Ty=Se(),Iy=ed(),td="__core-js_shared__",id=rd.exports=Ty[td]||Iy(td,{});(id.versions||(id.versions=[])).push({version:"3.43.0",mode:yy?"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 Io=g((t$,sd)=>{"use strict";var ad=_r();sd.exports=function(a,e){return ad[a]||(ad[a]=e||{})}});var qi=g((i$,nd)=>{"use strict";var Ey=Xt(),xy=Object;nd.exports=function(a){return xy(Ey(a))}});var mt=g((r$,od)=>{"use strict";var wy=Ae(),Ay=qi(),Py=wy({}.hasOwnProperty);od.exports=Object.hasOwn||function(e,t){return Py(Ay(e),t)}});var Eo=g((a$,ud)=>{"use strict";var ky=Ae(),Ry=0,Ly=Math.random(),$y=ky(1.1.toString);ud.exports=function(a){return"Symbol("+(a===void 0?"":a)+")_"+$y(++Ry+Ly,36)}});var $e=g((s$,cd)=>{"use strict";var My=Se(),Dy=Io(),ld=mt(),Cy=Eo(),By=bo(),Vy=go(),Ui=My.Symbol,xo=Dy("wks"),_y=Vy?Ui.for||Ui:Ui&&Ui.withoutSetter||Cy;cd.exports=function(a){return ld(xo,a)||(xo[a]=By&&ld(Ui,a)?Ui[a]:_y("Symbol."+a)),xo[a]}});var fd=g((n$,hd)=>{"use strict";var Oy=Xe(),dd=Ne(),pd=So(),Fy=Vr(),Ny=Kc(),qy=$e(),Uy=TypeError,Hy=qy("toPrimitive");hd.exports=function(a,e){if(!dd(a)||pd(a))return a;var t=Fy(a,Hy),i;if(t){if(e===void 0&&(e="default"),i=Oy(t,a,e),!dd(i)||pd(i))return i;throw new Uy("Can't convert object to primitive value")}return e===void 0&&(e="number"),Ny(a,e)}});var wo=g((o$,md)=>{"use strict";var jy=fd(),Wy=So();md.exports=function(a){var e=jy(a,"string");return Wy(e)?e:e+""}});var Ss=g((u$,gd)=>{"use strict";var Qy=Se(),bd=Ne(),Ao=Qy.document,Gy=bd(Ao)&&bd(Ao.createElement);gd.exports=function(a){return Gy?Ao.createElement(a):{}}});var Po=g((l$,Sd)=>{"use strict";var zy=Ke(),Yy=we(),Ky=Ss();Sd.exports=!zy&&!Yy(function(){return Object.defineProperty(Ky("div"),"a",{get:function(){return 7}}).a!==7})});var Td=g(yd=>{"use strict";var Xy=Ke(),Jy=Xe(),Zy=lo(),eT=Mr(),tT=fi(),iT=wo(),rT=mt(),aT=Po(),vd=Object.getOwnPropertyDescriptor;yd.f=Xy?vd:function(e,t){if(e=tT(e),t=iT(t),aT)try{return vd(e,t)}catch{}if(rT(e,t))return eT(!Jy(Zy.f,e,t),e[t])}});var ko=g((d$,Id)=>{"use strict";var sT=we(),nT=ve(),oT=/#|\.prototype\./,Or=function(a,e){var t=lT[uT(a)];return t===dT?!0:t===cT?!1:nT(e)?sT(e):!!e},uT=Or.normalize=function(a){return String(a).replace(oT,".").toLowerCase()},lT=Or.data={},cT=Or.NATIVE="N",dT=Or.POLYFILL="P";Id.exports=Or});var Hi=g((p$,xd)=>{"use strict";var Ed=oo(),pT=wt(),hT=$r(),fT=Ed(Ed.bind);xd.exports=function(a,e){return pT(a),e===void 0?a:hT?fT(a,e):function(){return a.apply(e,arguments)}}});var Ro=g((h$,wd)=>{"use strict";var mT=Ke(),bT=we();wd.exports=mT&&bT(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var At=g((f$,Ad)=>{"use strict";var gT=Ne(),ST=String,vT=TypeError;Ad.exports=function(a){if(gT(a))return a;throw new vT(ST(a)+" is not an object")}});var gi=g(kd=>{"use strict";var yT=Ke(),TT=Po(),IT=Ro(),vs=At(),Pd=wo(),ET=TypeError,Lo=Object.defineProperty,xT=Object.getOwnPropertyDescriptor,$o="enumerable",Mo="configurable",Do="writable";kd.f=yT?IT?function(e,t,i){if(vs(e),t=Pd(t),vs(i),typeof e=="function"&&t==="prototype"&&"value"in i&&Do in i&&!i[Do]){var r=xT(e,t);r&&r[Do]&&(e[t]=i.value,i={configurable:Mo in i?i[Mo]:r[Mo],enumerable:$o in i?i[$o]:r[$o],writable:!1})}return Lo(e,t,i)}:Lo:function(e,t,i){if(vs(e),t=Pd(t),vs(i),TT)try{return Lo(e,t,i)}catch{}if("get"in i||"set"in i)throw new ET("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var ji=g((b$,Rd)=>{"use strict";var wT=Ke(),AT=gi(),PT=Mr();Rd.exports=wT?function(a,e,t){return AT.f(a,e,PT(1,t))}:function(a,e,t){return a[e]=t,a}});var Te=g((g$,$d)=>{"use strict";var Fr=Se(),kT=so(),RT=oo(),LT=ve(),$T=Td().f,MT=ko(),Wi=mi(),DT=Hi(),Qi=ji(),Ld=mt();_r();var CT=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 kT(a,this,arguments)};return e.prototype=a.prototype,e};$d.exports=function(a,e){var t=a.target,i=a.global,r=a.stat,s=a.proto,n=i?Fr:r?Fr[t]:Fr[t]&&Fr[t].prototype,u=i?Wi:Wi[t]||Qi(Wi,t,{})[t],o=u.prototype,l,p,c,d,h,m,b,S,v;for(d in e)l=MT(i?d:t+(r?".":"#")+d,a.forced),p=!l&&n&&Ld(n,d),m=u[d],p&&(a.dontCallGetSet?(v=$T(n,d),b=v&&v.value):b=n[d]),h=p&&b?b:e[d],!(!l&&!s&&typeof m==typeof h)&&(a.bind&&p?S=DT(h,Fr):a.wrap&&p?S=CT(h):s&<(h)?S=RT(h):S=h,(a.sham||h&&h.sham||m&&m.sham)&&Qi(S,"sham",!0),Qi(u,d,S),s&&(c=t+"Prototype",Ld(Wi,c)||Qi(Wi,c,{}),Qi(Wi[c],d,h),a.real&&o&&(l||!o[d])&&Qi(o,d,h)))}});var ys=g((S$,Dd)=>{"use strict";var BT=Io(),VT=Eo(),Md=BT("keys");Dd.exports=function(a){return Md[a]||(Md[a]=VT(a))}});var Bd=g((v$,Cd)=>{"use strict";var _T=we();Cd.exports=!_T(function(){function a(){}return a.prototype.constructor=null,Object.getPrototypeOf(new a)!==a.prototype})});var Ts=g((y$,_d)=>{"use strict";var OT=mt(),FT=ve(),NT=qi(),qT=ys(),UT=Bd(),Vd=qT("IE_PROTO"),Co=Object,HT=Co.prototype;_d.exports=UT?Co.getPrototypeOf:function(a){var e=NT(a);if(OT(e,Vd))return e[Vd];var t=e.constructor;return FT(t)&&e instanceof t?t.prototype:e instanceof Co?HT:null}});var Fd=g((T$,Od)=>{"use strict";var jT=Math.ceil,WT=Math.floor;Od.exports=Math.trunc||function(e){var t=+e;return(t>0?WT:jT)(t)}});var Nr=g((I$,Nd)=>{"use strict";var QT=Fd();Nd.exports=function(a){var e=+a;return e!==e||e===0?0:QT(e)}});var Ud=g((E$,qd)=>{"use strict";var GT=Nr(),zT=Math.max,YT=Math.min;qd.exports=function(a,e){var t=GT(a);return t<0?zT(t+e,0):YT(t,e)}});var Bo=g((x$,Hd)=>{"use strict";var KT=Nr(),XT=Math.min;Hd.exports=function(a){var e=KT(a);return e>0?XT(e,9007199254740991):0}});var Gi=g((w$,jd)=>{"use strict";var JT=Bo();jd.exports=function(a){return JT(a.length)}});var Vo=g((A$,Qd)=>{"use strict";var ZT=fi(),eI=Ud(),tI=Gi(),Wd=function(a){return function(e,t,i){var r=ZT(e),s=tI(r);if(s===0)return!a&&-1;var n=eI(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}};Qd.exports={includes:Wd(!0),indexOf:Wd(!1)}});var Is=g((P$,Gd)=>{"use strict";Gd.exports={}});var Kd=g((k$,Yd)=>{"use strict";var iI=Ae(),_o=mt(),rI=fi(),aI=Vo().indexOf,sI=Is(),zd=iI([].push);Yd.exports=function(a,e){var t=rI(a),i=0,r=[],s;for(s in t)!_o(sI,s)&&_o(t,s)&&zd(r,s);for(;e.length>i;)_o(t,s=e[i++])&&(~aI(r,s)||zd(r,s));return r}});var Oo=g((R$,Xd)=>{"use strict";Xd.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var Fo=g((L$,Jd)=>{"use strict";var nI=Kd(),oI=Oo();Jd.exports=Object.keys||function(e){return nI(e,oI)}});var No=g(($$,rp)=>{"use strict";var ep=Ke(),uI=we(),tp=Ae(),lI=Ts(),cI=Fo(),dI=fi(),pI=lo().f,ip=tp(pI),hI=tp([].push),fI=ep&&uI(function(){var a=Object.create(null);return a[2]=2,!ip(a,2)}),Zd=function(a){return function(e){for(var t=dI(e),i=cI(t),r=fI&&lI(t)===null,s=i.length,n=0,u=[],o;s>n;)o=i[n++],(!ep||(r?o in t:ip(t,o)))&&hI(u,a?[o,t[o]]:t[o]);return u}};rp.exports={entries:Zd(!0),values:Zd(!1)}});var ap=g(()=>{"use strict";var mI=Te(),bI=No().values;mI({target:"Object",stat:!0},{values:function(e){return bI(e)}})});var np=g((C$,sp)=>{"use strict";ap();var gI=mi();sp.exports=gI.Object.values});var up=g((B$,op)=>{"use strict";var SI=np();op.exports=SI});var Si=g((V$,lp)=>{"use strict";var vI=up();lp.exports=vI});var qr=g((_$,cp)=>{"use strict";cp.exports=function(){}});var dp=g(()=>{"use strict";var yI=Te(),TI=Vo().includes,II=we(),EI=qr(),xI=II(function(){return!Array(1).includes()});yI({target:"Array",proto:!0,forced:xI},{includes:function(e){return TI(this,e,arguments.length>1?arguments[1]:void 0)}});EI("includes")});var Jt=g((N$,pp)=>{"use strict";var wI=Vt();pp.exports=wI});var fp=g((q$,hp)=>{"use strict";dp();var AI=Jt();hp.exports=AI("Array","includes")});var bp=g((U$,mp)=>{"use strict";var PI=fp();mp.exports=PI});var qe=g((H$,gp)=>{"use strict";var kI=bp();gp.exports=kI});var vp=g(()=>{"use strict";var LI=Te(),$I=No().entries;LI({target:"Object",stat:!0},{entries:function(e){return $I(e)}})});var Tp=g((iM,yp)=>{"use strict";vp();var MI=mi();yp.exports=MI.Object.entries});var Ep=g((rM,Ip)=>{"use strict";var DI=Tp();Ip.exports=DI});var zi=g((aM,xp)=>{"use strict";var CI=Ep();xp.exports=CI});var vi=g((sM,wp)=>{"use strict";wp.exports={}});var kp=g((nM,Pp)=>{"use strict";var BI=Se(),VI=ve(),Ap=BI.WeakMap;Pp.exports=VI(Ap)&&/native code/.test(String(Ap))});var jo=g((oM,$p)=>{"use strict";var _I=kp(),Lp=Se(),OI=Ne(),FI=ji(),qo=mt(),Uo=_r(),NI=ys(),qI=Is(),Rp="Object already initialized",Ho=Lp.TypeError,UI=Lp.WeakMap,xs,Ur,ws,HI=function(a){return ws(a)?Ur(a):xs(a,{})},jI=function(a){return function(e){var t;if(!OI(e)||(t=Ur(e)).type!==a)throw new Ho("Incompatible receiver, "+a+" required");return t}};_I||Uo.state?(bt=Uo.state||(Uo.state=new UI),bt.get=bt.get,bt.has=bt.has,bt.set=bt.set,xs=function(a,e){if(bt.has(a))throw new Ho(Rp);return e.facade=a,bt.set(a,e),e},Ur=function(a){return bt.get(a)||{}},ws=function(a){return bt.has(a)}):(yi=NI("state"),qI[yi]=!0,xs=function(a,e){if(qo(a,yi))throw new Ho(Rp);return e.facade=a,FI(a,yi,e),e},Ur=function(a){return qo(a,yi)?a[yi]:{}},ws=function(a){return qo(a,yi)});var bt,yi;$p.exports={set:xs,get:Ur,has:ws,enforce:HI,getterFor:jI}});var Go=g((uM,Dp)=>{"use strict";var Wo=Ke(),WI=mt(),Mp=Function.prototype,QI=Wo&&Object.getOwnPropertyDescriptor,Qo=WI(Mp,"name"),GI=Qo&&function(){}.name==="something",zI=Qo&&(!Wo||Wo&&QI(Mp,"name").configurable);Dp.exports={EXISTS:Qo,PROPER:GI,CONFIGURABLE:zI}});var Bp=g(Cp=>{"use strict";var YI=Ke(),KI=Ro(),XI=gi(),JI=At(),ZI=fi(),eE=Fo();Cp.f=YI&&!KI?Object.defineProperties:function(e,t){JI(e);for(var i=ZI(t),r=eE(t),s=r.length,n=0,u;s>n;)XI.f(e,u=r[n++],i[u]);return e}});var zo=g((cM,Vp)=>{"use strict";var tE=Vt();Vp.exports=tE("document","documentElement")});var Jo=g((dM,Hp)=>{"use strict";var iE=At(),rE=Bp(),_p=Oo(),aE=Is(),sE=zo(),nE=Ss(),oE=ys(),Op=">",Fp="<",Ko="prototype",Xo="script",qp=oE("IE_PROTO"),Yo=function(){},Up=function(a){return Fp+Xo+Op+a+Fp+"/"+Xo+Op},Np=function(a){a.write(Up("")),a.close();var e=a.parentWindow.Object;return a=null,e},uE=function(){var a=nE("iframe"),e="java"+Xo+":",t;return a.style.display="none",sE.appendChild(a),a.src=String(e),t=a.contentWindow.document,t.open(),t.write(Up("document.F=Object")),t.close(),t.F},As,Ps=function(){try{As=new ActiveXObject("htmlfile")}catch{}Ps=typeof document<"u"?document.domain&&As?Np(As):uE():Np(As);for(var a=_p.length;a--;)delete Ps[Ko][_p[a]];return Ps()};aE[qp]=!0;Hp.exports=Object.create||function(e,t){var i;return e!==null?(Yo[Ko]=iE(e),i=new Yo,Yo[Ko]=null,i[qp]=e):i=Ps(),t===void 0?i:rE.f(i,t)}});var Yi=g((pM,jp)=>{"use strict";var lE=ji();jp.exports=function(a,e,t,i){return i&&i.enumerable?a[e]=t:lE(a,e,t),a}});var iu=g((hM,Gp)=>{"use strict";var cE=we(),dE=ve(),pE=Ne(),hE=Jo(),Wp=Ts(),fE=Yi(),mE=$e(),bE=ft(),tu=mE("iterator"),Qp=!1,_t,Zo,eu;[].keys&&(eu=[].keys(),"next"in eu?(Zo=Wp(Wp(eu)),Zo!==Object.prototype&&(_t=Zo)):Qp=!0);var gE=!pE(_t)||cE(function(){var a={};return _t[tu].call(a)!==a});gE?_t={}:bE&&(_t=hE(_t));dE(_t[tu])||fE(_t,tu,function(){return this});Gp.exports={IteratorPrototype:_t,BUGGY_SAFARI_ITERATORS:Qp}});var ks=g((fM,Yp)=>{"use strict";var SE=$e(),vE=SE("toStringTag"),zp={};zp[vE]="z";Yp.exports=String(zp)==="[object z]"});var Hr=g((mM,Kp)=>{"use strict";var yE=ks(),TE=ve(),Rs=hi(),IE=$e(),EE=IE("toStringTag"),xE=Object,wE=Rs(function(){return arguments}())==="Arguments",AE=function(a,e){try{return a[e]}catch{}};Kp.exports=yE?Rs:function(a){var e,t,i;return a===void 0?"Undefined":a===null?"Null":typeof(t=AE(e=xE(a),EE))=="string"?t:wE?Rs(e):(i=Rs(e))==="Object"&&TE(e.callee)?"Arguments":i}});var Jp=g((bM,Xp)=>{"use strict";var PE=ks(),kE=Hr();Xp.exports=PE?{}.toString:function(){return"[object "+kE(this)+"]"}});var jr=g((gM,eh)=>{"use strict";var RE=ks(),LE=gi().f,$E=ji(),ME=mt(),DE=Jp(),CE=$e(),Zp=CE("toStringTag");eh.exports=function(a,e,t,i){var r=t?a:a&&a.prototype;r&&(ME(r,Zp)||LE(r,Zp,{configurable:!0,value:e}),i&&!RE&&$E(r,"toString",DE))}});var ih=g((SM,th)=>{"use strict";var BE=iu().IteratorPrototype,VE=Jo(),_E=Mr(),OE=jr(),FE=vi(),NE=function(){return this};th.exports=function(a,e,t,i){var r=e+" Iterator";return a.prototype=VE(BE,{next:_E(+!i,t)}),OE(a,r,!1,!0),FE[r]=NE,a}});var ah=g((vM,rh)=>{"use strict";var qE=Ae(),UE=wt();rh.exports=function(a,e,t){try{return qE(UE(Object.getOwnPropertyDescriptor(a,e)[t]))}catch{}}});var nh=g((yM,sh)=>{"use strict";var HE=Ne();sh.exports=function(a){return HE(a)||a===null}});var uh=g((TM,oh)=>{"use strict";var jE=nh(),WE=String,QE=TypeError;oh.exports=function(a){if(jE(a))return a;throw new QE("Can't set "+WE(a)+" as a prototype")}});var ru=g((IM,lh)=>{"use strict";var GE=ah(),zE=Ne(),YE=Xt(),KE=uh();lh.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var a=!1,e={},t;try{t=GE(Object.prototype,"__proto__","set"),t(e,[]),a=e instanceof Array}catch{}return function(r,s){return YE(r),KE(s),zE(r)&&(a?t(r,s):r.__proto__=s),r}}():void 0)});var yh=g((EM,vh)=>{"use strict";var XE=Te(),JE=Xe(),Ls=ft(),gh=Go(),ZE=ve(),ex=ih(),ch=Ts(),dh=ru(),tx=jr(),ix=ji(),au=Yi(),rx=$e(),ph=vi(),Sh=iu(),ax=gh.PROPER,sx=gh.CONFIGURABLE,hh=Sh.IteratorPrototype,$s=Sh.BUGGY_SAFARI_ITERATORS,Wr=rx("iterator"),fh="keys",Qr="values",mh="entries",bh=function(){return this};vh.exports=function(a,e,t,i,r,s,n){ex(t,e,i);var u=function(v){if(v===r&&d)return d;if(!$s&&v&&v in p)return p[v];switch(v){case fh:return function(){return new t(this,v)};case Qr:return function(){return new t(this,v)};case mh:return function(){return new t(this,v)}}return function(){return new t(this)}},o=e+" Iterator",l=!1,p=a.prototype,c=p[Wr]||p["@@iterator"]||r&&p[r],d=!$s&&c||u(r),h=e==="Array"&&p.entries||c,m,b,S;if(h&&(m=ch(h.call(new a)),m!==Object.prototype&&m.next&&(!Ls&&ch(m)!==hh&&(dh?dh(m,hh):ZE(m[Wr])||au(m,Wr,bh)),tx(m,o,!0,!0),Ls&&(ph[o]=bh))),ax&&r===Qr&&c&&c.name!==Qr&&(!Ls&&sx?ix(p,"name",Qr):(l=!0,d=function(){return JE(c,this)})),r)if(b={values:u(Qr),keys:s?d:u(fh),entries:u(mh)},n)for(S in b)($s||l||!(S in p))&&au(p,S,b[S]);else XE({target:e,proto:!0,forced:$s||l},b);return(!Ls||n)&&p[Wr]!==d&&au(p,Wr,d,{name:r}),ph[e]=d,b}});var Ih=g((xM,Th)=>{"use strict";Th.exports=function(a,e){return{value:a,done:e}}});var nu=g((wM,Ph)=>{"use strict";var nx=fi(),su=qr(),Eh=vi(),wh=jo(),ox=gi().f,ux=yh(),Ms=Ih(),lx=ft(),cx=Ke(),Ah="Array Iterator",dx=wh.set,px=wh.getterFor(Ah);Ph.exports=ux(Array,"Array",function(a,e){dx(this,{type:Ah,target:nx(a),index:0,kind:e})},function(){var a=px(this),e=a.target,t=a.index++;if(!e||t>=e.length)return a.target=null,Ms(void 0,!0);switch(a.kind){case"keys":return Ms(t,!1);case"values":return Ms(e[t],!1)}return Ms([t,e[t]],!1)},"values");var xh=Eh.Arguments=Eh.Array;su("keys");su("values");su("entries");if(!lx&&cx&&xh.name!=="values")try{ox(xh,"name",{value:"values"})}catch{}});var Rh=g((AM,kh)=>{"use strict";var hx=$e(),fx=vi(),mx=hx("iterator"),bx=Array.prototype;kh.exports=function(a){return a!==void 0&&(fx.Array===a||bx[mx]===a)}});var ou=g((PM,$h)=>{"use strict";var gx=Hr(),Lh=Vr(),Sx=Dr(),vx=vi(),yx=$e(),Tx=yx("iterator");$h.exports=function(a){if(!Sx(a))return Lh(a,Tx)||Lh(a,"@@iterator")||vx[gx(a)]}});var Dh=g((kM,Mh)=>{"use strict";var Ix=Xe(),Ex=wt(),xx=At(),wx=Br(),Ax=ou(),Px=TypeError;Mh.exports=function(a,e){var t=arguments.length<2?Ax(a):e;if(Ex(t))return xx(Ix(t,a));throw new Px(wx(a)+" is not iterable")}});var Vh=g((RM,Bh)=>{"use strict";var kx=Xe(),Ch=At(),Rx=Vr();Bh.exports=function(a,e,t){var i,r;Ch(a);try{if(i=Rx(a,"return"),!i){if(e==="throw")throw t;return t}i=kx(i,a)}catch(s){r=!0,i=s}if(e==="throw")throw t;if(r)throw i;return Ch(i),t}});var Cs=g((LM,Nh)=>{"use strict";var Lx=Hi(),$x=Xe(),Mx=At(),Dx=Br(),Cx=Rh(),Bx=Gi(),_h=Cr(),Vx=Dh(),_x=ou(),Oh=Vh(),Ox=TypeError,Ds=function(a,e){this.stopped=a,this.result=e},Fh=Ds.prototype;Nh.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=Lx(e,i),l,p,c,d,h,m,b,S=function(I){return l&&Oh(l,"normal"),new Ds(!0,I)},v=function(I){return r?(Mx(I),u?o(I[0],I[1],S):o(I[0],I[1])):u?o(I,S):o(I)};if(s)l=a.iterator;else if(n)l=a;else{if(p=_x(a),!p)throw new Ox(Dx(a)+" is not iterable");if(Cx(p)){for(c=0,d=Bx(a);d>c;c++)if(h=v(a[c]),h&&_h(Fh,h))return h;return new Ds(!1)}l=Vx(a,p)}for(m=s?a.next:l.next;!(b=$x(m,l)).done;){try{h=v(b.value)}catch(I){Oh(l,"throw",I)}if(typeof h=="object"&&h&&_h(Fh,h))return h}return new Ds(!1)}});var Uh=g(($M,qh)=>{"use strict";var Fx=Ke(),Nx=gi(),qx=Mr();qh.exports=function(a,e,t){Fx?Nx.f(a,e,qx(0,t)):a[e]=t}});var Hh=g(()=>{"use strict";var Ux=Te(),Hx=Cs(),jx=Uh();Ux({target:"Object",stat:!0},{fromEntries:function(e){var t={};return Hx(e,function(i,r){jx(t,i,r)},{AS_ENTRIES:!0}),t}})});var Wh=g((CM,jh)=>{"use strict";nu();Hh();var Wx=mi();jh.exports=Wx.Object.fromEntries});var Gh=g((BM,Qh)=>{"use strict";Qh.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 Yh=g(()=>{"use strict";nu();var Qx=Gh(),Gx=Se(),zx=jr(),zh=vi();for(Bs in Qx)zx(Gx[Bs],Bs),zh[Bs]=zh.Array;var Bs});var Xh=g((OM,Kh)=>{"use strict";var Yx=Wh();Yh();Kh.exports=Yx});var uu=g((FM,Jh)=>{"use strict";var Kx=Xh();Jh.exports=Kx});var Zh=g(()=>{"use strict"});var lu=g((UM,ef)=>{"use strict";var Gr=Se(),Xx=bi(),Jx=hi(),Vs=function(a){return Xx.slice(0,a.length)===a};ef.exports=function(){return Vs("Bun/")?"BUN":Vs("Cloudflare-Workers")?"CLOUDFLARE":Vs("Deno/")?"DENO":Vs("Node.js/")?"NODE":Gr.Bun&&typeof Bun.version=="string"?"BUN":Gr.Deno&&typeof Deno.version=="object"?"DENO":Jx(Gr.process)==="process"?"NODE":Gr.window&&Gr.document?"BROWSER":"REST"}()});var _s=g((HM,tf)=>{"use strict";var Zx=lu();tf.exports=Zx==="NODE"});var af=g((jM,rf)=>{"use strict";var ew=gi();rf.exports=function(a,e,t){return ew.f(a,e,t)}});var of=g((WM,nf)=>{"use strict";var tw=Vt(),iw=af(),rw=$e(),aw=Ke(),sf=rw("species");nf.exports=function(a){var e=tw(a);aw&&e&&!e[sf]&&iw(e,sf,{configurable:!0,get:function(){return this}})}});var lf=g((QM,uf)=>{"use strict";var sw=Cr(),nw=TypeError;uf.exports=function(a,e){if(sw(e,a))return a;throw new nw("Incorrect invocation")}});var du=g((GM,cf)=>{"use strict";var ow=Ae(),uw=ve(),cu=_r(),lw=ow(Function.toString);uw(cu.inspectSource)||(cu.inspectSource=function(a){return lw(a)});cf.exports=cu.inspectSource});var hu=g((zM,mf)=>{"use strict";var cw=Ae(),dw=we(),df=ve(),pw=Hr(),hw=Vt(),fw=du(),pf=function(){},hf=hw("Reflect","construct"),pu=/^\s*(?:class|function)\b/,mw=cw(pu.exec),bw=!pu.test(pf),zr=function(e){if(!df(e))return!1;try{return hf(pf,[],e),!0}catch{return!1}},ff=function(e){if(!df(e))return!1;switch(pw(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return bw||!!mw(pu,fw(e))}catch{return!0}};ff.sham=!0;mf.exports=!hf||dw(function(){var a;return zr(zr.call)||!zr(Object)||!zr(function(){a=!0})||a})?ff:zr});var gf=g((YM,bf)=>{"use strict";var gw=hu(),Sw=Br(),vw=TypeError;bf.exports=function(a){if(gw(a))return a;throw new vw(Sw(a)+" is not a constructor")}});var fu=g((KM,vf)=>{"use strict";var Sf=At(),yw=gf(),Tw=Dr(),Iw=$e(),Ew=Iw("species");vf.exports=function(a,e){var t=Sf(a).constructor,i;return t===void 0||Tw(i=Sf(t)[Ew])?e:yw(i)}});var Tf=g((XM,yf)=>{"use strict";var xw=Ae();yf.exports=xw([].slice)});var Ef=g((JM,If)=>{"use strict";var ww=TypeError;If.exports=function(a,e){if(a<e)throw new ww("Not enough arguments");return a}});var mu=g((ZM,xf)=>{"use strict";var Aw=bi();xf.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(Aw)});var xu=g((eD,Df)=>{"use strict";var Je=Se(),Pw=so(),kw=Hi(),wf=ve(),Rw=mt(),Mf=we(),Af=zo(),Lw=Tf(),Pf=Ss(),$w=Ef(),Mw=mu(),Dw=_s(),Tu=Je.setImmediate,Iu=Je.clearImmediate,Cw=Je.process,bu=Je.Dispatch,Bw=Je.Function,kf=Je.MessageChannel,Vw=Je.String,gu=0,Yr={},Rf="onreadystatechange",Kr,Ti,Su,vu;Mf(function(){Kr=Je.location});var Eu=function(a){if(Rw(Yr,a)){var e=Yr[a];delete Yr[a],e()}},yu=function(a){return function(){Eu(a)}},Lf=function(a){Eu(a.data)},$f=function(a){Je.postMessage(Vw(a),Kr.protocol+"//"+Kr.host)};(!Tu||!Iu)&&(Tu=function(e){$w(arguments.length,1);var t=wf(e)?e:Bw(e),i=Lw(arguments,1);return Yr[++gu]=function(){Pw(t,void 0,i)},Ti(gu),gu},Iu=function(e){delete Yr[e]},Dw?Ti=function(a){Cw.nextTick(yu(a))}:bu&&bu.now?Ti=function(a){bu.now(yu(a))}:kf&&!Mw?(Su=new kf,vu=Su.port2,Su.port1.onmessage=Lf,Ti=kw(vu.postMessage,vu)):Je.addEventListener&&wf(Je.postMessage)&&!Je.importScripts&&Kr&&Kr.protocol!=="file:"&&!Mf($f)?(Ti=$f,Je.addEventListener("message",Lf,!1)):Rf in Pf("script")?Ti=function(a){Af.appendChild(Pf("script"))[Rf]=function(){Af.removeChild(this),Eu(a)}}:Ti=function(a){setTimeout(yu(a),0)});Df.exports={set:Tu,clear:Iu}});var Vf=g((tD,Bf)=>{"use strict";var Cf=Se(),_w=Ke(),Ow=Object.getOwnPropertyDescriptor;Bf.exports=function(a){if(!_w)return Cf[a];var e=Ow(Cf,a);return e&&e.value}});var wu=g((iD,Of)=>{"use strict";var _f=function(){this.head=null,this.tail=null};_f.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}}};Of.exports=_f});var Nf=g((rD,Ff)=>{"use strict";var Fw=bi();Ff.exports=/ipad|iphone|ipod/i.test(Fw)&&typeof Pebble<"u"});var Uf=g((aD,qf)=>{"use strict";var Nw=bi();qf.exports=/web0s(?!.*chrome)/i.test(Nw)});var Yf=g((sD,zf)=>{"use strict";var Xi=Se(),qw=Vf(),Hf=Hi(),Au=xu().set,Uw=wu(),Hw=mu(),jw=Nf(),Ww=Uf(),Pu=_s(),jf=Xi.MutationObserver||Xi.WebKitMutationObserver,Wf=Xi.document,Qf=Xi.process,Os=Xi.Promise,Lu=qw("queueMicrotask"),Ki,ku,Ru,Fs,Gf;Lu||(Xr=new Uw,Jr=function(){var a,e;for(Pu&&(a=Qf.domain)&&a.exit();e=Xr.get();)try{e()}catch(t){throw Xr.head&&Ki(),t}a&&a.enter()},!Hw&&!Pu&&!Ww&&jf&&Wf?(ku=!0,Ru=Wf.createTextNode(""),new jf(Jr).observe(Ru,{characterData:!0}),Ki=function(){Ru.data=ku=!ku}):!jw&&Os&&Os.resolve?(Fs=Os.resolve(void 0),Fs.constructor=Os,Gf=Hf(Fs.then,Fs),Ki=function(){Gf(Jr)}):Pu?Ki=function(){Qf.nextTick(Jr)}:(Au=Hf(Au,Xi),Ki=function(){Au(Jr)}),Lu=function(a){Xr.head||Ki(),Xr.add(a)});var Xr,Jr;zf.exports=Lu});var Xf=g((nD,Kf)=>{"use strict";Kf.exports=function(a,e){try{arguments.length===1?console.error(a):console.error(a,e)}catch{}}});var Ns=g((oD,Jf)=>{"use strict";Jf.exports=function(a){try{return{error:!1,value:a()}}catch(e){return{error:!0,value:e}}}});var Ii=g((uD,Zf)=>{"use strict";var Qw=Se();Zf.exports=Qw.Promise});var Ji=g((lD,rm)=>{"use strict";var Gw=Se(),Zr=Ii(),zw=ve(),Yw=ko(),Kw=du(),Xw=$e(),em=lu(),Jw=ft(),$u=mo(),tm=Zr&&Zr.prototype,Zw=Xw("species"),Mu=!1,im=zw(Gw.PromiseRejectionEvent),eA=Yw("Promise",function(){var a=Kw(Zr),e=a!==String(Zr);if(!e&&$u===66||Jw&&!(tm.catch&&tm.finally))return!0;if(!$u||$u<51||!/native code/.test(a)){var t=new Zr(function(s){s(1)}),i=function(s){s(function(){},function(){})},r=t.constructor={};if(r[Zw]=i,Mu=t.then(function(){})instanceof i,!Mu)return!0}return!e&&(em==="BROWSER"||em==="DENO")&&!im});rm.exports={CONSTRUCTOR:eA,REJECTION_EVENT:im,SUBCLASSING:Mu}});var Zi=g((cD,sm)=>{"use strict";var am=wt(),tA=TypeError,iA=function(a){var e,t;this.promise=new a(function(i,r){if(e!==void 0||t!==void 0)throw new tA("Bad Promise constructor");e=i,t=r}),this.resolve=am(e),this.reject=am(t)};sm.exports.f=function(a){return new iA(a)}});var wm=g(()=>{"use strict";var rA=Te(),aA=ft(),js=_s(),Zt=Se(),sA=mi(),rr=Xe(),nm=Yi(),om=ru(),nA=jr(),oA=of(),uA=wt(),Hs=ve(),lA=Ne(),cA=lf(),dA=fu(),pm=xu().set,_u=Yf(),pA=Xf(),hA=Ns(),fA=wu(),hm=jo(),Ws=Ii(),Ou=Ji(),fm=Zi(),Qs="Promise",mm=Ou.CONSTRUCTOR,mA=Ou.REJECTION_EVENT,bA=Ou.SUBCLASSING,Du=hm.getterFor(Qs),gA=hm.set,er=Ws&&Ws.prototype,Ei=Ws,qs=er,bm=Zt.TypeError,Cu=Zt.document,Fu=Zt.process,Bu=fm.f,SA=Bu,vA=!!(Cu&&Cu.createEvent&&Zt.dispatchEvent),gm="unhandledrejection",yA="rejectionhandled",um=0,Sm=1,TA=2,Nu=1,vm=2,Us,lm,ym,cm,Tm=function(a){var e;return lA(a)&&Hs(e=a.then)?e:!1},Im=function(a,e){var t=e.value,i=e.state===Sm,r=i?a.ok:a.fail,s=a.resolve,n=a.reject,u=a.domain,o,l,p;try{r?(i||(e.rejection===vm&&EA(e),e.rejection=Nu),r===!0?o=t:(u&&u.enter(),o=r(t),u&&(u.exit(),p=!0)),o===a.promise?n(new bm("Promise-chain cycle")):(l=Tm(o))?rr(l,o,s,n):s(o)):n(t)}catch(c){u&&!p&&u.exit(),n(c)}},Em=function(a,e){a.notified||(a.notified=!0,_u(function(){for(var t=a.reactions,i;i=t.get();)Im(i,a);a.notified=!1,e&&!a.rejection&&IA(a)}))},xm=function(a,e,t){var i,r;vA?(i=Cu.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(a,!1,!0),Zt.dispatchEvent(i)):i={promise:e,reason:t},!mA&&(r=Zt["on"+a])?r(i):a===gm&&pA("Unhandled promise rejection",t)},IA=function(a){rr(pm,Zt,function(){var e=a.facade,t=a.value,i=dm(a),r;if(i&&(r=hA(function(){js?Fu.emit("unhandledRejection",t,e):xm(gm,e,t)}),a.rejection=js||dm(a)?vm:Nu,r.error))throw r.value})},dm=function(a){return a.rejection!==Nu&&!a.parent},EA=function(a){rr(pm,Zt,function(){var e=a.facade;js?Fu.emit("rejectionHandled",e):xm(yA,e,a.value)})},tr=function(a,e,t){return function(i){a(e,i,t)}},ir=function(a,e,t){a.done||(a.done=!0,t&&(a=t),a.value=e,a.state=TA,Em(a,!0))},Vu=function(a,e,t){if(!a.done){a.done=!0,t&&(a=t);try{if(a.facade===e)throw new bm("Promise can't be resolved itself");var i=Tm(e);i?_u(function(){var r={done:!1};try{rr(i,e,tr(Vu,r,a),tr(ir,r,a))}catch(s){ir(r,s,a)}}):(a.value=e,a.state=Sm,Em(a,!1))}catch(r){ir({done:!1},r,a)}}};if(mm&&(Ei=function(e){cA(this,qs),uA(e),rr(Us,this);var t=Du(this);try{e(tr(Vu,t),tr(ir,t))}catch(i){ir(t,i)}},qs=Ei.prototype,Us=function(e){gA(this,{type:Qs,done:!1,notified:!1,parent:!1,reactions:new fA,rejection:!1,state:um,value:null})},Us.prototype=nm(qs,"then",function(e,t){var i=Du(this),r=Bu(dA(this,Ei));return i.parent=!0,r.ok=Hs(e)?e:!0,r.fail=Hs(t)&&t,r.domain=js?Fu.domain:void 0,i.state===um?i.reactions.add(r):_u(function(){Im(r,i)}),r.promise}),lm=function(){var a=new Us,e=Du(a);this.promise=a,this.resolve=tr(Vu,e),this.reject=tr(ir,e)},fm.f=Bu=function(a){return a===Ei||a===ym?new lm(a):SA(a)},!aA&&Hs(Ws)&&er!==Object.prototype)){cm=er.then,bA||nm(er,"then",function(e,t){var i=this;return new Ei(function(r,s){rr(cm,i,r,s)}).then(e,t)},{unsafe:!0});try{delete er.constructor}catch{}om&&om(er,qs)}rA({global:!0,constructor:!0,wrap:!0,forced:mm},{Promise:Ei});ym=sA.Promise;nA(Ei,Qs,!1,!0);oA(Qs)});var Lm=g((hD,Rm)=>{"use strict";var xA=$e(),Pm=xA("iterator"),km=!1;try{Am=0,qu={next:function(){return{done:!!Am++}},return:function(){km=!0}},qu[Pm]=function(){return this},Array.from(qu,function(){throw 2})}catch{}var Am,qu;Rm.exports=function(a,e){try{if(!e&&!km)return!1}catch{return!1}var t=!1;try{var i={};i[Pm]=function(){return{next:function(){return{done:t=!0}}}},a(i)}catch{}return t}});var Uu=g((fD,$m)=>{"use strict";var wA=Ii(),AA=Lm(),PA=Ji().CONSTRUCTOR;$m.exports=PA||!AA(function(a){wA.all(a).then(void 0,function(){})})});var Mm=g(()=>{"use strict";var kA=Te(),RA=Xe(),LA=wt(),$A=Zi(),MA=Ns(),DA=Cs(),CA=Uu();kA({target:"Promise",stat:!0,forced:CA},{all:function(e){var t=this,i=$A.f(t),r=i.resolve,s=i.reject,n=MA(function(){var u=LA(t.resolve),o=[],l=0,p=1;DA(e,function(c){var d=l++,h=!1;p++,RA(u,t,c).then(function(m){h||(h=!0,o[d]=m,--p||r(o))},s)}),--p||r(o)});return n.error&&s(n.value),i.promise}})});var Cm=g(()=>{"use strict";var BA=Te(),VA=ft(),_A=Ji().CONSTRUCTOR,ju=Ii(),OA=Vt(),FA=ve(),NA=Yi(),Dm=ju&&ju.prototype;BA({target:"Promise",proto:!0,forced:_A,real:!0},{catch:function(a){return this.then(void 0,a)}});!VA&&FA(ju)&&(Hu=OA("Promise").prototype.catch,Dm.catch!==Hu&&NA(Dm,"catch",Hu,{unsafe:!0}));var Hu});var Bm=g(()=>{"use strict";var qA=Te(),UA=Xe(),HA=wt(),jA=Zi(),WA=Ns(),QA=Cs(),GA=Uu();qA({target:"Promise",stat:!0,forced:GA},{race:function(e){var t=this,i=jA.f(t),r=i.reject,s=WA(function(){var n=HA(t.resolve);QA(e,function(u){UA(n,t,u).then(i.resolve,r)})});return s.error&&r(s.value),i.promise}})});var Vm=g(()=>{"use strict";var zA=Te(),YA=Zi(),KA=Ji().CONSTRUCTOR;zA({target:"Promise",stat:!0,forced:KA},{reject:function(e){var t=YA.f(this),i=t.reject;return i(e),t.promise}})});var Wu=g((ED,_m)=>{"use strict";var XA=At(),JA=Ne(),ZA=Zi();_m.exports=function(a,e){if(XA(a),JA(e)&&e.constructor===a)return e;var t=ZA.f(a),i=t.resolve;return i(e),t.promise}});var Nm=g(()=>{"use strict";var eP=Te(),tP=Vt(),Om=ft(),iP=Ii(),Fm=Ji().CONSTRUCTOR,rP=Wu(),aP=tP("Promise"),sP=Om&&!Fm;eP({target:"Promise",stat:!0,forced:Om||Fm},{resolve:function(e){return rP(sP&&this===aP?iP:this,e)}})});var qm=g(()=>{"use strict";wm();Mm();Cm();Bm();Vm();Nm()});var Wm=g(()=>{"use strict";var nP=Te(),oP=ft(),Gs=Ii(),uP=we(),Hm=Vt(),jm=ve(),lP=fu(),Um=Wu(),cP=Yi(),Gu=Gs&&Gs.prototype,dP=!!Gs&&uP(function(){Gu.finally.call({then:function(){}},function(){})});nP({target:"Promise",proto:!0,real:!0,forced:dP},{finally:function(a){var e=lP(this,Hm("Promise")),t=jm(a);return this.then(t?function(i){return Um(e,a()).then(function(){return i})}:a,t?function(i){return Um(e,a()).then(function(){throw i})}:a)}});!oP&&jm(Gs)&&(Qu=Hm("Promise").prototype.finally,Gu.finally!==Qu&&cP(Gu,"finally",Qu,{unsafe:!0}));var Qu});var Gm=g((LD,Qm)=>{"use strict";Zh();qm();Wm();var pP=Jt();Qm.exports=pP("Promise","finally")});var Ym=g(($D,zm)=>{"use strict";var hP=Gm();zm.exports=hP});var zs=g((MD,Km)=>{"use strict";var fP=Ym();Km.exports=fP});var pb=g(()=>{"use strict";var kP=Te(),RP=qi(),LP=Gi(),$P=Nr(),MP=qr();kP({target:"Array",proto:!0},{at:function(e){var t=RP(this),i=LP(t),r=$P(e),s=r>=0?r:i+r;return s<0||s>=i?void 0:t[s]}});MP("at")});var fb=g((dB,hb)=>{"use strict";pb();var DP=Jt();hb.exports=DP("Array","at")});var bb=g((pB,mb)=>{"use strict";var CP=fb();mb.exports=CP});var gt=g((hB,gb)=>{"use strict";var BP=bb();gb.exports=BP});var fl=g((G0,Ub)=>{"use strict";var QP=hi();Ub.exports=Array.isArray||function(e){return QP(e)==="Array"}});var jb=g((z0,Hb)=>{"use strict";var GP=TypeError,zP=9007199254740991;Hb.exports=function(a){if(a>zP)throw GP("Maximum allowed index exceeded");return a}});var Gb=g((Y0,Qb)=>{"use strict";var YP=fl(),KP=Gi(),XP=jb(),JP=Hi(),Wb=function(a,e,t,i,r,s,n,u){for(var o=r,l=0,p=n?JP(n,u):!1,c,d;l<i;)l in t&&(c=p?p(t[l],l,e):t[l],s>0&&YP(c)?(d=KP(c),o=Wb(a,e,c,d,o,s-1)-1):(XP(o+1),a[o]=c),o++),l++;return o};Qb.exports=Wb});var Xb=g((K0,Kb)=>{"use strict";var zb=fl(),ZP=hu(),ek=Ne(),tk=$e(),ik=tk("species"),Yb=Array;Kb.exports=function(a){var e;return zb(a)&&(e=a.constructor,ZP(e)&&(e===Yb||zb(e.prototype))?e=void 0:ek(e)&&(e=e[ik],e===null&&(e=void 0))),e===void 0?Yb:e}});var Zb=g((X0,Jb)=>{"use strict";var rk=Xb();Jb.exports=function(a,e){return new(rk(a))(e===0?0:e)}});var eg=g(()=>{"use strict";var ak=Te(),sk=Gb(),nk=wt(),ok=qi(),uk=Gi(),lk=Zb();ak({target:"Array",proto:!0},{flatMap:function(e){var t=ok(this),i=uk(t),r;return nk(e),r=lk(t,0),r.length=sk(r,t,t,i,0,1,e,arguments.length>1?arguments[1]:void 0),r}})});var tg=g(()=>{"use strict";var ck=qr();ck("flatMap")});var rg=g((iV,ig)=>{"use strict";eg();tg();var dk=Jt();ig.exports=dk("Array","flatMap")});var sg=g((rV,ag)=>{"use strict";var pk=rg();ag.exports=pk});var da=g((aV,ng)=>{"use strict";var hk=sg();ng.exports=hk});var pa=g((sV,og)=>{"use strict";var fk=Hr(),mk=String;og.exports=function(a){if(fk(a)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return mk(a)}});var ml=g((nV,ug)=>{"use strict";ug.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 dg=g((oV,cg)=>{"use strict";var bk=Ae(),gk=Xt(),Sk=pa(),gl=ml(),lg=bk("".replace),vk=RegExp("^["+gl+"]+"),yk=RegExp("(^|[^"+gl+"])["+gl+"]+$"),bl=function(a){return function(e){var t=Sk(gk(e));return a&1&&(t=lg(t,vk,"")),a&2&&(t=lg(t,yk,"$1")),t}};cg.exports={start:bl(1),end:bl(2),trim:bl(3)}});var mg=g((uV,fg)=>{"use strict";var Tk=Go().PROPER,Ik=we(),pg=ml(),hg="\u200B\x85\u180E";fg.exports=function(a){return Ik(function(){return!!pg[a]()||hg[a]()!==hg||Tk&&pg[a].name!==a})}});var Sl=g((lV,bg)=>{"use strict";var Ek=dg().start,xk=mg();bg.exports=xk("trimStart")?function(){return Ek(this)}:"".trimStart});var Sg=g(()=>{"use strict";var wk=Te(),gg=Sl();wk({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==gg},{trimLeft:gg})});var yg=g(()=>{"use strict";Sg();var Ak=Te(),vg=Sl();Ak({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==vg},{trimStart:vg})});var Ig=g((fV,Tg)=>{"use strict";yg();var Pk=Jt();Tg.exports=Pk("String","trimLeft")});var xg=g((mV,Eg)=>{"use strict";var kk=Ig();Eg.exports=kk});var Ag=g((bV,wg)=>{"use strict";var Rk=xg();wg.exports=Rk});var qg=g(()=>{"use strict"});var Ug=g(()=>{"use strict"});var jg=g((XO,Hg)=>{"use strict";var Yk=Ne(),Kk=hi(),Xk=$e(),Jk=Xk("match");Hg.exports=function(a){var e;return Yk(a)&&((e=a[Jk])!==void 0?!!e:Kk(a)==="RegExp")}});var Gg=g((JO,Qg)=>{"use strict";var Zk=Se(),eR=we(),Wg=Zk.RegExp,tR=!eR(function(){var a=!0;try{Wg(".","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(Wg.prototype,"flags").get.call(e);return u!==i||t!==i});Qg.exports={correct:tR}});var Yg=g((ZO,zg)=>{"use strict";var iR=At();zg.exports=function(){var a=iR(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 Jg=g((eF,Xg)=>{"use strict";var rR=Xe(),aR=mt(),sR=Cr(),Kg=Gg(),nR=Yg(),oR=RegExp.prototype;Xg.exports=Kg.correct?function(a){return a.flags}:function(a){return!Kg.correct&&sR(oR,a)&&!aR(a,"flags")?rR(nR,a):a.flags}});var eS=g((tF,Zg)=>{"use strict";var Il=Ae(),uR=qi(),lR=Math.floor,yl=Il("".charAt),cR=Il("".replace),Tl=Il("".slice),dR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,pR=/\$([$&'`]|\d{1,2})/g;Zg.exports=function(a,e,t,i,r,s){var n=t+a.length,u=i.length,o=pR;return r!==void 0&&(r=uR(r),o=dR),cR(s,o,function(l,p){var c;switch(yl(p,0)){case"$":return"$";case"&":return a;case"`":return Tl(e,0,t);case"'":return Tl(e,n);case"<":c=r[Tl(p,1,-1)];break;default:var d=+p;if(d===0)return l;if(d>u){var h=lR(d/10);return h===0?l:h<=u?i[h-1]===void 0?yl(p,1):i[h-1]+yl(p,1):l}c=i[d-1]}return c===void 0?"":c})}});var rS=g(()=>{"use strict";var hR=Te(),fR=Xe(),xl=Ae(),tS=Xt(),mR=ve(),bR=Ne(),gR=jg(),mr=pa(),SR=Vr(),vR=Jg(),yR=eS(),TR=$e(),IR=ft(),ER=TR("replace"),xR=TypeError,El=xl("".indexOf),wR=xl("".replace),iS=xl("".slice),AR=Math.max;hR({target:"String",proto:!0},{replaceAll:function(e,t){var i=tS(this),r,s,n,u,o,l,p,c,d,h,m=0,b="";if(bR(e)){if(r=gR(e),r&&(s=mr(tS(vR(e))),!~El(s,"g")))throw new xR("`.replaceAll` does not allow non-global regexes");if(n=SR(e,ER),n)return fR(n,e,i,t);if(IR&&r)return wR(mr(i),e,t)}for(u=mr(i),o=mr(e),l=mR(t),l||(t=mr(t)),p=o.length,c=AR(1,p),d=El(u,o);d!==-1;)h=l?mr(t(o,d,u)):yR(o,u,d,[],void 0,t),b+=iS(u,m,d)+h,m=d+p,d=d+c>u.length?-1:El(u,o,d+c);return m<u.length&&(b+=iS(u,m)),b}})});var sS=g((aF,aS)=>{"use strict";qg();Ug();rS();var PR=Jt();aS.exports=PR("String","replaceAll")});var oS=g((sF,nS)=>{"use strict";var kR=sS();nS.exports=kR});var lS=g((nF,uS)=>{"use strict";var RR=oS();uS.exports=RR});var dS=g((oF,cS)=>{"use strict";var LR=Nr(),$R=pa(),MR=Xt(),DR=RangeError;cS.exports=function(e){var t=$R(MR(this)),i="",r=LR(e);if(r<0||r===1/0)throw new DR("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var bS=g((uF,mS)=>{"use strict";var fS=Ae(),CR=Bo(),pS=pa(),BR=dS(),VR=Xt(),_R=fS(BR),OR=fS("".slice),FR=Math.ceil,hS=function(a){return function(e,t,i){var r=pS(VR(e)),s=CR(t),n=r.length,u=i===void 0?" ":pS(i),o,l;return s<=n||u===""?r:(o=s-n,l=_R(u,FR(o/u.length)),l.length>o&&(l=OR(l,0,o)),a?r+l:l+r)}};mS.exports={start:hS(!1),end:hS(!0)}});var SS=g((lF,gS)=>{"use strict";var NR=bi();gS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(NR)});var vS=g(()=>{"use strict";var qR=Te(),UR=bS().start,HR=SS();qR({target:"String",proto:!0,forced:HR},{padStart:function(e){return UR(this,e,arguments.length>1?arguments[1]:void 0)}})});var TS=g((pF,yS)=>{"use strict";vS();var jR=Jt();yS.exports=jR("String","padStart")});var ES=g((hF,IS)=>{"use strict";var WR=TS();IS.exports=WR});var wS=g((fF,xS)=>{"use strict";var QR=ES();xS.exports=QR});var yL={};Dv(yL,{ChromecastState:()=>kr,HttpConnectionType:()=>fs,Observable:()=>Ct.Observable,PlaybackState:()=>_e,Player:()=>as,PredefinedQualityLimits:()=>Rr,SDK_VERSION:()=>vL,Subject:()=>Ct.Subject,Subscription:()=>Ct.Subscription,Surface:()=>ms,VERSION:()=>ro,ValueSubject:()=>Ct.ValueSubject,VideoFormat:()=>xt,VideoQuality:()=>Ct.VideoQuality,areValidLiveRecordSources:()=>ab,clientChecker:()=>j,isMobile:()=>ar});module.exports=Cv(yL);var ro="2.0.143";var _e=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(_e||{}),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_FMP4="HLS_FMP4",x.HLS_LIVE="HLS_LIVE",x.HLS_LIVE_CMAF="HLS_LIVE_CMAF",x.WEB_RTC_LIVE="WEB_RTC_LIVE",x))(xt||{});var kr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(kr||{}),fs=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(fs||{});var ms=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(ms||{}),Rr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(Rr||{});var ec=Q(Si(),1),Ev=Q(qe(),1);var J=require("@vkontakte/videoplayer-shared/es2024");var Sp=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 Es=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||Sp("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)(RI),(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})}}},RI=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 Xl=Q(qe(),1),cv=Q(zi(),1),dv=Q(uu(),1);var nb=Q(zs(),1);var zu=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,zu.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,zu.assertNever)(e)}};var B=(a,e,t=!1)=>{let i=a.getTransition();(t||!i||i.to===e)&&a.setState(e)};var Pt=require("@vkontakte/videoplayer-shared/es2024"),Z=class{constructor(e){this.transitionStarted$=new Pt.Subject;this.transitionEnded$=new Pt.Subject;this.transitionUpdated$=new Pt.Subject;this.forceChanged$=new Pt.Subject;this.stateChangeStarted$=(0,Pt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Pt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,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,Pt.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 Ku=require("@vkontakte/videoplayer-shared/es2024");var Ys=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 Xm=Q(qe(),1);var ar=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var Ks=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,Xm.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=ar()}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 Xs=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 Ze=()=>window.ManagedMediaSource||window.MediaSource,sr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Jm=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Js=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var mP=document.createElement("video"),bP='video/mp4; codecs="avc1.42000a,mp4a.40.2"',gP='video/mp4; codecs="hev1.1.6.L93.B0"',Zm='video/webm; codecs="vp09.00.10.08"',eb='video/webm; codecs="av01.0.00M.08"',SP='audio/mp4; codecs="mp4a.40.2"',vP='audio/webm; codecs="opus"',tb,yP=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:eb}}),window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:Zm}})]);tb={DASH_WEBM_AV1:e,DASH_WEBM:t}};yP().catch(a=>{console.log(mP),console.error(a)});var Zs=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 tb}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:sr(),mse:Jm(),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=!!Ze()?.isTypeSupported?.(bP),t=!!Ze()?.isTypeSupported?.(gP),i=!!Ze()?.isTypeSupported?.(SP);this._codecs={h264:e,h265:t,vp9:!!Ze()?.isTypeSupported?.(Zm),av1:!!Ze()?.isTypeSupported?.(eb),aac:i,opus:!!Ze()?.isTypeSupported?.(vP),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 ib="audio/mpeg",en=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(ib)},this._codecs={mp3:!!Ze()?.isTypeSupported?.(ib)}}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 rb=require("@vkontakte/videoplayer-shared/es2024"),Yu=class{constructor(){this.isInited$=new rb.ValueSubject(!1);this._displayChecker=new Xs,this._deviceChecker=new Ks(this._displayChecker),this._browserChecker=new Ys,this._videoChecker=new Zs(this._deviceChecker,this._browserChecker),this._audioChecker=new en,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 Yu;var Xu=a=>{let{containers:e,protocols:t,codecs:i,nativeHlsSupported:r}=j.video,s=(i.h264||i.h265)&&i.aac,n=t.mse||t.mms;return a.filter(u=>{switch(u){case"DASH_SEP":return n&&e.mp4&&s;case"DASH_WEBM":return n&&e.webm&&i.vp9&&i.opus;case"DASH_WEBM_AV1":return n&&e.webm&&i.av1&&i.opus;case"DASH_STREAMS":return n&&(e.mp4&&s||e.webm&&(i.vp9||i.av1)&&(i.opus||i.aac));case"DASH_LIVE":return n&&e.mp4&&s;case"DASH_LIVE_CMAF":return n&&e.mp4&&s&&e.cmaf;case"DASH_ONDEMAND":return n&&e.mp4&&s;case"HLS":case"HLS_ONDEMAND":case"HLS_FMP4":case"HLS_LIVE":case"HLS_LIVE_CMAF":return r;case"MPEG":return e.mp4;case"DASH":case"DASH_LIVE_WEBM":return!1;case"WEB_RTC_LIVE":return t.webrtc&&t.ws&&i.h264&&(e.mp4||e.webm);default:return(0,Ku.assertNever)(u)}})},Ju=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_FMP4":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,Ku.assertNever)(a)}},ab=a=>{let t=Object.keys(a).filter(i=>!Ju(i));return Xu(t).length>0};var N=require("@vkontakte/videoplayer-shared/es2024");var TP=5,IP=5,EP=500,sb=7e3,ea=class{constructor(e){this.subscription=new N.Subscription;this.loadMediaTimeoutSubscription=new N.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,N.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,N.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,N.assertNever)(e)}break}default:(0,N.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(Ju(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 N.Subscription;this.subscription.add(e),this.subscription.add((0,N.merge)(this.videoState.stateChangeStarted$.pipe((0,N.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,N.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 N.Subject;e.add(r.pipe((0,N.debounce)(EP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,N.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)>TP)&&r.next(u),s=u})),e.add((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,N.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,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,N.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<IP&&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,N.assertNever)(n)}}),t((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,N.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,N.observableFrom)(["init"])).pipe((0,N.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,N.assertNonNullable)(l);let p=(0,N.getHighestQuality)(Object.keys(l));(0,N.assertNonNullable)(p);let c=l[p];(0,N.assertNonNullable)(c),i=c,r="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_FMP4":case"HLS_ONDEMAND":{let l=t[e];(0,N.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,N.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,N.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,N.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",p=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:N.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:p}),p}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,N.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,N.isNonNullable)(u)&&(n.metadata.title=u),(0,N.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,N.timeout)(sb).subscribe(()=>s(`timeout(${sb})`)))});(0,nb.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:N.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var pl=Q(qe(),1);var il=require("@vkontakte/videoplayer-shared/es2024");var ob=require("@vkontakte/videoplayer-shared/es2024"),ub=a=>{try{a.pause(),a.playbackRate=0,(0,ob.clearVideoElement)(a),a.remove()}catch(e){console.error(e)}};var tn=require("@vkontakte/videoplayer-shared/es2024"),Zu=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)}},el=window.WeakMap?new WeakMap:new Zu,tl=window.WeakMap?new WeakMap:new Map,xP=(a,e=20)=>{let t=0;return(0,tn.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,il.clearVideoElement)(i):(i=document.createElement("video"),a.appendChild(i)),el.set(i,r);let s=new tn.Subscription;return s.add(xP(i,e)),tl.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},He=a=>{tl.get(a)?.unsubscribe(),tl.delete(a);let t=el.get(a);el.delete(a),t?(0,il.clearVideoElement)(a):ub(a)};var rl=Q(Si(),1),q=require("@vkontakte/videoplayer-shared/es2024");var ti=require("@vkontakte/videoplayer-shared/es2024"),rn=(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(p=>{let c=a.getState();i(p,c)&&a.setState(p)},s)),i(u,n)||(t(n),o&&a.setState(n)),l.add(a.stateChangeStarted$.subscribe(p=>{t(p.to),o&&a.setState(p.to)},s)),l},kt=(a,e,t)=>rn(e,()=>a.loop,i=>{(0,ti.isNonNullable)(i)&&(a.loop=i)},{onError:t}),je=(a,e,t,i)=>rn(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)=>rn(e,()=>a.playbackRate,r=>{(0,ti.isNonNullable)(r)&&(a.playbackRate=r)},{changed$:t,onError:i}),ta=rn;var wP=a=>["__",a.language,a.label].join("|"),AP=(a,e)=>{if(a.id===e)return!0;let[t,i,r]=e.split("|");return a.language===i&&a.label===r},al=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(ta(t.internalTextTracks,()=>(0,rl.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(ta(t.externalTextTracks,()=>(0,rl.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(ta(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(ta(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:wP(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)||!AP(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=al;var xi=class{constructor(){this.pausedTime=0;this.streamOffset=0;this.pauseTimestamp=0}getTotalPausedTime(){return this.pausedTime+this.getCurrentPausedTime()}getCurrentPausedTime(){return this.pauseTimestamp>0?Date.now()-this.pauseTimestamp:0}getStreamOffset(){return this.streamOffset}getTotalOffset(){return this.getTotalPausedTime()+this.streamOffset}pause(){this.pauseTimestamp===0&&(this.pauseTimestamp=Date.now())}resume(){this.pauseTimestamp>0&&(this.pausedTime+=this.getCurrentPausedTime(),this.pauseTimestamp=0)}resetTo(e,t=!1){this.streamOffset=e,this.pauseTimestamp=0,this.pausedTime=0,t&&this.pause()}};var lb=a=>{let e=a;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},sl=a=>{let e=lb(a);return!!(e&&e.fullscreenElement&&e.fullscreenElement===a)},cb=a=>{let e=lb(a);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===a)};var L=require("@vkontakte/videoplayer-shared/es2024");var PP=3,db=(a,e,t=PP)=>{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 We=a=>{let e=$=>(0,L.fromEvent)(a,$).pipe((0,L.mapTo)(void 0),(0,L.shareReplay)(1)),t=new L.Subscription,i=()=>t.unsubscribe(),r=(0,L.merge)((0,L.fromEvent)(a,"progress"),(0,L.fromEvent)(a,"timeupdate")).pipe((0,L.map)(()=>db(a.buffered,a.currentTime)),(0,L.shareReplay)(1)),s=j.browser.isSafari?(0,L.combine)({play:e("play").pipe((0,L.once)()),playing:e("playing")}).pipe((0,L.mapTo)(void 0),(0,L.shareReplay)(1)):e("playing"),n=(0,L.fromEvent)(a,"volumechange").pipe((0,L.map)(()=>({muted:a.muted,volume:a.volume})),(0,L.shareReplay)(1)),u=(0,L.fromEvent)(a,"ratechange").pipe((0,L.map)(()=>a.playbackRate),(0,L.shareReplay)(1)),o=(0,L.fromEvent)(a,"error").pipe((0,L.filter)(()=>!!(a.error||a.played.length)),(0,L.map)(()=>{let $=a.error;return{id:$?`MediaError#${$.code}`:"HtmlVideoError",category:L.ErrorCategory.VIDEO_PIPELINE,message:$?$.message:"Error event from HTML video element",thrown:a.error??void 0}}),(0,L.shareReplay)(1)),l=(0,L.fromEvent)(a,"timeupdate").pipe((0,L.map)(()=>a.currentTime),(0,L.shareReplay)(1)),p=["waiting","seeking","seeked","timeupdate"],c=new L.Subject,d=.3,h;t.add((0,L.merge)(...p.map($=>(0,L.fromEvent)(a,$))).subscribe($=>{let ee=a.currentTime;a.loop&&(0,L.isNonNullable)(h)&&(0,L.isNonNullable)(ee)&&h>=a.duration-d&&ee<=d&&c.next(h),h=ee}));let m=e("pause").pipe((0,L.filter)(()=>!a.error&&h!==a.duration),(0,L.shareReplay)(1)),b=(0,L.fromEvent)(a,"enterpictureinpicture").pipe((0,L.shareReplay)(1)),S=(0,L.fromEvent)(a,"leavepictureinpicture").pipe((0,L.shareReplay)(1)),v=new L.ValueSubject(cb(a));t.add(b.subscribe(()=>v.next(!0))),t.add(S.subscribe(()=>v.next(!1)));let I=new L.ValueSubject(sl(a)),P=(0,L.fromEvent)(a,"fullscreenchange").pipe((0,L.shareReplay)(1));t.add(P.pipe((0,L.map)(()=>sl(a))).subscribe(I));let x=.1,M=1e3,_=(0,L.fromEvent)(a,"timeupdate").pipe((0,L.map)($=>a.duration-a.currentTime<x),(0,L.filterChanged)(),(0,L.shareReplay)(1)),V=(0,L.merge)(_.pipe((0,L.filter)($=>!a.loop&&$)),(0,L.fromEvent)(a,"ended")).pipe((0,L.throttle)(M),(0,L.mapTo)(void 0),(0,L.shareReplay)(1)),H=(0,L.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map($=>(0,L.fromEvent)(a,$)),_.pipe((0,L.map)($=>({type:$?"ended":"unknown"})))).pipe((0,L.map)($=>j.browser.isFirefox&&$.type==="ended"?a.readyState<2:a.readyState<3),(0,L.filterChanged)(),(0,L.shareReplay)(1));return{playing$:s,pause$:m,canplay$:e("canplay"),ended$:V,looped$:c,error$:o,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,L.fromEvent)(a,"durationchange").pipe((0,L.map)(()=>a.duration),(0,L.shareReplay)(1)),isBuffering$:H,currentBuffer$:r,volumeState$:n,playbackRateState$:u,inPiP$:v,inFullscreen$:I,enterPip$:b,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 Fe=Q(gt(),1),ol=Q(qe(),1),wi=Q(zi(),1),D=require("@vkontakte/videoplayer-shared/es2024");var nl=!1,Nt={},Sb=a=>{nl=a},vb=()=>{Nt={}},yb=a=>{a(Nt)},ia=(a,e)=>{nl&&(Nt.meta=Nt.meta??{},Nt.meta[a]=e)},Oe=class{constructor(e){this.name=e}next(e){if(!nl)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 Tb(a,e,t){return!a.max&&a.min===e?"high_quality":!a.min&&a.max===t?"traffic_saving":"unknown"}function nr(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 Ib({limits:a,highestAvailableHeight:e,lowestAvailableHeight:t}){return nr({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 Pb=new Oe("best_bitrate"),sn=(a,e,t)=>(e-t)*Math.pow(2,-10*a)+t;var or=a=>(e,t)=>a*(Number(e.bitrate)-Number(t.bitrate)),ri=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,D.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},nn='Assertion "ABR Tracks is empty array" failed',an=new WeakMap,Eb=new WeakMap,xb=new WeakMap,ra=(a,e,t,i)=>{let r=[...e].sort(or(1)),s=[...t].sort(or(1)),n=s.filter(o=>(0,D.isNonNullable)(o.bitrate)&&(0,D.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),u=(0,Fe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Fe.default)(s,-1);return u&&(0,ol.default)(n,u)?u:n.length?(0,Fe.default)(n,-1):(0,Fe.default)(s,0)},aa=(a,e,t,i)=>{let r=an.get(e);r||(r=[...e].sort(or(1)),an.set(e,r));let s=an.get(t);s||(s=[...t].sort(or(1)),an.set(t,s));let n=xb.get(a);n||(n=s.filter(o=>(0,D.isNonNullable)(o.bitrate)&&(0,D.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),xb.set(a,n));let u=(0,Fe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Fe.default)(s,-1);return u&&(0,ol.default)(n,u)?u:n.length?(0,Fe.default)(n,-1):(0,Fe.default)(s,0)},wb=a=>"quality"in a,on=(a,e,t,i)=>{let r=(0,D.isNonNullable)(i?.last?.bitrate)&&(0,D.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?a.trackCooldownIncreaseQuality:a.trackCooldownDecreaseQuality,s=t&&i&&i.history[t.id]&&(0,D.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=wb(n)?"video":"audio",o=wb(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 dg=g((oV,cg)=>{"use strict";var bk=Ae(),gk=Xt(),Sk=pa(),gl=ml(),lg=bk("".replace),vk=RegExp("^["+gl+"]+"),yk=RegExp("(^|[^"+gl+"])["+gl+"]+$"),bl=function(a){return function(e){var t=Sk(gk(e));return a&1&&(t=lg(t,vk,"")),a&2&&(t=lg(t,yk,"$1")),t}};cg.exports={start:bl(1),end:bl(2),trim:bl(3)}});var mg=g((uV,fg)=>{"use strict";var Tk=Go().PROPER,Ik=we(),pg=ml(),hg="\u200B\x85\u180E";fg.exports=function(a){return Ik(function(){return!!pg[a]()||hg[a]()!==hg||Tk&&pg[a].name!==a})}});var Sl=g((lV,bg)=>{"use strict";var Ek=dg().start,xk=mg();bg.exports=xk("trimStart")?function(){return Ek(this)}:"".trimStart});var Sg=g(()=>{"use strict";var wk=Te(),gg=Sl();wk({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==gg},{trimLeft:gg})});var yg=g(()=>{"use strict";Sg();var Ak=Te(),vg=Sl();Ak({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==vg},{trimStart:vg})});var Ig=g((fV,Tg)=>{"use strict";yg();var Pk=Jt();Tg.exports=Pk("String","trimLeft")});var xg=g((mV,Eg)=>{"use strict";var kk=Ig();Eg.exports=kk});var Ag=g((bV,wg)=>{"use strict";var Rk=xg();wg.exports=Rk});var qg=g(()=>{"use strict"});var Ug=g(()=>{"use strict"});var jg=g((XO,Hg)=>{"use strict";var Yk=Ne(),Kk=hi(),Xk=$e(),Jk=Xk("match");Hg.exports=function(a){var e;return Yk(a)&&((e=a[Jk])!==void 0?!!e:Kk(a)==="RegExp")}});var Gg=g((JO,Qg)=>{"use strict";var Zk=Se(),eR=we(),Wg=Zk.RegExp,tR=!eR(function(){var a=!0;try{Wg(".","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(Wg.prototype,"flags").get.call(e);return u!==i||t!==i});Qg.exports={correct:tR}});var Yg=g((ZO,zg)=>{"use strict";var iR=At();zg.exports=function(){var a=iR(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 Jg=g((eF,Xg)=>{"use strict";var rR=Xe(),aR=mt(),sR=Cr(),Kg=Gg(),nR=Yg(),oR=RegExp.prototype;Xg.exports=Kg.correct?function(a){return a.flags}:function(a){return!Kg.correct&&sR(oR,a)&&!aR(a,"flags")?rR(nR,a):a.flags}});var eS=g((tF,Zg)=>{"use strict";var Il=Ae(),uR=qi(),lR=Math.floor,yl=Il("".charAt),cR=Il("".replace),Tl=Il("".slice),dR=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,pR=/\$([$&'`]|\d{1,2})/g;Zg.exports=function(a,e,t,i,r,s){var n=t+a.length,u=i.length,o=pR;return r!==void 0&&(r=uR(r),o=dR),cR(s,o,function(l,p){var c;switch(yl(p,0)){case"$":return"$";case"&":return a;case"`":return Tl(e,0,t);case"'":return Tl(e,n);case"<":c=r[Tl(p,1,-1)];break;default:var d=+p;if(d===0)return l;if(d>u){var h=lR(d/10);return h===0?l:h<=u?i[h-1]===void 0?yl(p,1):i[h-1]+yl(p,1):l}c=i[d-1]}return c===void 0?"":c})}});var rS=g(()=>{"use strict";var hR=Te(),fR=Xe(),xl=Ae(),tS=Xt(),mR=ve(),bR=Ne(),gR=jg(),mr=pa(),SR=Vr(),vR=Jg(),yR=eS(),TR=$e(),IR=ft(),ER=TR("replace"),xR=TypeError,El=xl("".indexOf),wR=xl("".replace),iS=xl("".slice),AR=Math.max;hR({target:"String",proto:!0},{replaceAll:function(e,t){var i=tS(this),r,s,n,u,o,l,p,c,d,h,m=0,b="";if(bR(e)){if(r=gR(e),r&&(s=mr(tS(vR(e))),!~El(s,"g")))throw new xR("`.replaceAll` does not allow non-global regexes");if(n=SR(e,ER),n)return fR(n,e,i,t);if(IR&&r)return wR(mr(i),e,t)}for(u=mr(i),o=mr(e),l=mR(t),l||(t=mr(t)),p=o.length,c=AR(1,p),d=El(u,o);d!==-1;)h=l?mr(t(o,d,u)):yR(o,u,d,[],void 0,t),b+=iS(u,m,d)+h,m=d+p,d=d+c>u.length?-1:El(u,o,d+c);return m<u.length&&(b+=iS(u,m)),b}})});var sS=g((aF,aS)=>{"use strict";qg();Ug();rS();var PR=Jt();aS.exports=PR("String","replaceAll")});var oS=g((sF,nS)=>{"use strict";var kR=sS();nS.exports=kR});var lS=g((nF,uS)=>{"use strict";var RR=oS();uS.exports=RR});var dS=g((oF,cS)=>{"use strict";var LR=Nr(),$R=pa(),MR=Xt(),DR=RangeError;cS.exports=function(e){var t=$R(MR(this)),i="",r=LR(e);if(r<0||r===1/0)throw new DR("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var bS=g((uF,mS)=>{"use strict";var fS=Ae(),CR=Bo(),pS=pa(),BR=dS(),VR=Xt(),_R=fS(BR),OR=fS("".slice),FR=Math.ceil,hS=function(a){return function(e,t,i){var r=pS(VR(e)),s=CR(t),n=r.length,u=i===void 0?" ":pS(i),o,l;return s<=n||u===""?r:(o=s-n,l=_R(u,FR(o/u.length)),l.length>o&&(l=OR(l,0,o)),a?r+l:l+r)}};mS.exports={start:hS(!1),end:hS(!0)}});var SS=g((lF,gS)=>{"use strict";var NR=bi();gS.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(NR)});var vS=g(()=>{"use strict";var qR=Te(),UR=bS().start,HR=SS();qR({target:"String",proto:!0,forced:HR},{padStart:function(e){return UR(this,e,arguments.length>1?arguments[1]:void 0)}})});var TS=g((pF,yS)=>{"use strict";vS();var jR=Jt();yS.exports=jR("String","padStart")});var ES=g((hF,IS)=>{"use strict";var WR=TS();IS.exports=WR});var wS=g((fF,xS)=>{"use strict";var QR=ES();xS.exports=QR});var yL={};Dv(yL,{ChromecastState:()=>kr,HttpConnectionType:()=>fs,Observable:()=>Ct.Observable,PlaybackState:()=>_e,Player:()=>as,PredefinedQualityLimits:()=>Rr,SDK_VERSION:()=>vL,Subject:()=>Ct.Subject,Subscription:()=>Ct.Subscription,Surface:()=>ms,VERSION:()=>ro,ValueSubject:()=>Ct.ValueSubject,VideoFormat:()=>xt,VideoQuality:()=>Ct.VideoQuality,areValidLiveRecordSources:()=>ab,clientChecker:()=>j,isMobile:()=>ar});module.exports=Cv(yL);var ro="2.0.144-dev.3ba5a3c2.0";var _e=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))(_e||{}),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_FMP4="HLS_FMP4",x.HLS_LIVE="HLS_LIVE",x.HLS_LIVE_CMAF="HLS_LIVE_CMAF",x.WEB_RTC_LIVE="WEB_RTC_LIVE",x))(xt||{});var kr=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(kr||{}),fs=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(fs||{});var ms=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(ms||{}),Rr=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(Rr||{});var ec=Q(Si(),1),Ev=Q(qe(),1);var J=require("@vkontakte/videoplayer-shared/es2024");var Sp=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 Es=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||Sp("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)(RI),(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})}}},RI=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 Xl=Q(qe(),1),cv=Q(zi(),1),dv=Q(uu(),1);var nb=Q(zs(),1);var zu=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,zu.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,zu.assertNever)(e)}};var B=(a,e,t=!1)=>{let i=a.getTransition();(t||!i||i.to===e)&&a.setState(e)};var Pt=require("@vkontakte/videoplayer-shared/es2024"),Z=class{constructor(e){this.transitionStarted$=new Pt.Subject;this.transitionEnded$=new Pt.Subject;this.transitionUpdated$=new Pt.Subject;this.forceChanged$=new Pt.Subject;this.stateChangeStarted$=(0,Pt.merge)(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=(0,Pt.merge)(this.transitionEnded$,this.forceChanged$);this.state=e,this.prevState=void 0}setState(e){let t=this.transition,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,Pt.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 Ku=require("@vkontakte/videoplayer-shared/es2024");var Ys=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 Xm=Q(qe(),1);var ar=()=>/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test(navigator.appVersion??navigator.userAgent)||navigator?.userAgentData?.mobile;var Ks=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,Xm.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=ar()}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 Xs=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 Ze=()=>window.ManagedMediaSource||window.MediaSource,sr=()=>!!(window.ManagedMediaSource&&window.ManagedSourceBuffer?.prototype?.appendBuffer),Jm=()=>!!(window.MediaSource&&window.SourceBuffer?.prototype?.appendBuffer),Js=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var mP=document.createElement("video"),bP='video/mp4; codecs="avc1.42000a,mp4a.40.2"',gP='video/mp4; codecs="hev1.1.6.L93.B0"',Zm='video/webm; codecs="vp09.00.10.08"',eb='video/webm; codecs="av01.0.00M.08"',SP='audio/mp4; codecs="mp4a.40.2"',vP='audio/webm; codecs="opus"',tb,yP=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:eb}}),window.navigator.mediaCapabilities.decodingInfo({...a,video:{...a.video,contentType:Zm}})]);tb={DASH_WEBM_AV1:e,DASH_WEBM:t}};yP().catch(a=>{console.log(mP),console.error(a)});var Zs=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 tb}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:sr(),mse:Jm(),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=!!Ze()?.isTypeSupported?.(bP),t=!!Ze()?.isTypeSupported?.(gP),i=!!Ze()?.isTypeSupported?.(SP);this._codecs={h264:e,h265:t,vp9:!!Ze()?.isTypeSupported?.(Zm),av1:!!Ze()?.isTypeSupported?.(eb),aac:i,opus:!!Ze()?.isTypeSupported?.(vP),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 ib="audio/mpeg",en=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){this._audio=document.createElement("audio");try{this._containers={mpeg:!!this._audio.canPlayType?.(ib)},this._codecs={mp3:!!Ze()?.isTypeSupported?.(ib)}}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 rb=require("@vkontakte/videoplayer-shared/es2024"),Yu=class{constructor(){this.isInited$=new rb.ValueSubject(!1);this._displayChecker=new Xs,this._deviceChecker=new Ks(this._displayChecker),this._browserChecker=new Ys,this._videoChecker=new Zs(this._deviceChecker,this._browserChecker),this._audioChecker=new en,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 Yu;var Xu=a=>{let{containers:e,protocols:t,codecs:i,nativeHlsSupported:r}=j.video,s=(i.h264||i.h265)&&i.aac,n=t.mse||t.mms;return a.filter(u=>{switch(u){case"DASH_SEP":return n&&e.mp4&&s;case"DASH_WEBM":return n&&e.webm&&i.vp9&&i.opus;case"DASH_WEBM_AV1":return n&&e.webm&&i.av1&&i.opus;case"DASH_STREAMS":return n&&(e.mp4&&s||e.webm&&(i.vp9||i.av1)&&(i.opus||i.aac));case"DASH_LIVE":return n&&e.mp4&&s;case"DASH_LIVE_CMAF":return n&&e.mp4&&s&&e.cmaf;case"DASH_ONDEMAND":return n&&e.mp4&&s;case"HLS":case"HLS_ONDEMAND":case"HLS_FMP4":case"HLS_LIVE":case"HLS_LIVE_CMAF":return r;case"MPEG":return e.mp4;case"DASH":case"DASH_LIVE_WEBM":return!1;case"WEB_RTC_LIVE":return t.webrtc&&t.ws&&i.h264&&(e.mp4||e.webm);default:return(0,Ku.assertNever)(u)}})},Ju=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_FMP4":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,Ku.assertNever)(a)}},ab=a=>{let t=Object.keys(a).filter(i=>!Ju(i));return Xu(t).length>0};var N=require("@vkontakte/videoplayer-shared/es2024");var TP=5,IP=5,EP=500,sb=7e3,ea=class{constructor(e){this.subscription=new N.Subscription;this.loadMediaTimeoutSubscription=new N.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,N.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,N.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,N.assertNever)(e)}break}default:(0,N.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(Ju(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 N.Subscription;this.subscription.add(e),this.subscription.add((0,N.merge)(this.videoState.stateChangeStarted$.pipe((0,N.map)(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe((0,N.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 N.Subject;e.add(r.pipe((0,N.debounce)(EP)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let s=NaN;e.add((0,N.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)>TP)&&r.next(u),s=u})),e.add((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t((0,N.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,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t((0,N.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<IP&&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,N.assertNever)(n)}}),t((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t((0,N.fromEvent)(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=(0,N.merge)(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,(0,N.observableFrom)(["init"])).pipe((0,N.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,N.assertNonNullable)(l);let p=(0,N.getHighestQuality)(Object.keys(l));(0,N.assertNonNullable)(p);let c=l[p];(0,N.assertNonNullable)(c),i=c,r="video/mp4",s=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_FMP4":case"HLS_ONDEMAND":{let l=t[e];(0,N.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,N.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,N.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,N.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",p=new Error(l);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:N.ErrorCategory.VIDEO_PIPELINE,message:l,thrown:p}),p}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return(0,N.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,N.isNonNullable)(u)&&(n.metadata.title=u),(0,N.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,N.timeout)(sb).subscribe(()=>s(`timeout(${sb})`)))});(0,nb.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:N.ErrorCategory.VIDEO_PIPELINE,message:s,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var pl=Q(qe(),1);var il=require("@vkontakte/videoplayer-shared/es2024");var ob=require("@vkontakte/videoplayer-shared/es2024"),ub=a=>{try{a.pause(),a.playbackRate=0,(0,ob.clearVideoElement)(a),a.remove()}catch(e){console.error(e)}};var tn=require("@vkontakte/videoplayer-shared/es2024"),Zu=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)}},el=window.WeakMap?new WeakMap:new Zu,tl=window.WeakMap?new WeakMap:new Map,xP=(a,e=20)=>{let t=0;return(0,tn.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,il.clearVideoElement)(i):(i=document.createElement("video"),a.appendChild(i)),el.set(i,r);let s=new tn.Subscription;return s.add(xP(i,e)),tl.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},He=a=>{tl.get(a)?.unsubscribe(),tl.delete(a);let t=el.get(a);el.delete(a),t?(0,il.clearVideoElement)(a):ub(a)};var rl=Q(Si(),1),q=require("@vkontakte/videoplayer-shared/es2024");var ti=require("@vkontakte/videoplayer-shared/es2024"),rn=(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(p=>{let c=a.getState();i(p,c)&&a.setState(p)},s)),i(u,n)||(t(n),o&&a.setState(n)),l.add(a.stateChangeStarted$.subscribe(p=>{t(p.to),o&&a.setState(p.to)},s)),l},kt=(a,e,t)=>rn(e,()=>a.loop,i=>{(0,ti.isNonNullable)(i)&&(a.loop=i)},{onError:t}),je=(a,e,t,i)=>rn(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)=>rn(e,()=>a.playbackRate,r=>{(0,ti.isNonNullable)(r)&&(a.playbackRate=r)},{changed$:t,onError:i}),ta=rn;var wP=a=>["__",a.language,a.label].join("|"),AP=(a,e)=>{if(a.id===e)return!0;let[t,i,r]=e.split("|");return a.language===i&&a.label===r},al=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(ta(t.internalTextTracks,()=>(0,rl.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(ta(t.externalTextTracks,()=>(0,rl.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(ta(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(ta(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:wP(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)||!AP(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=al;var xi=class{constructor(){this.pausedTime=0;this.streamOffset=0;this.pauseTimestamp=0}getTotalPausedTime(){return this.pausedTime+this.getCurrentPausedTime()}getCurrentPausedTime(){return this.pauseTimestamp>0?Date.now()-this.pauseTimestamp:0}getStreamOffset(){return this.streamOffset}getTotalOffset(){return this.getTotalPausedTime()+this.streamOffset}pause(){this.pauseTimestamp===0&&(this.pauseTimestamp=Date.now())}resume(){this.pauseTimestamp>0&&(this.pausedTime+=this.getCurrentPausedTime(),this.pauseTimestamp=0)}resetTo(e,t=!1){this.streamOffset=e,this.pauseTimestamp=0,this.pausedTime=0,t&&this.pause()}};var lb=a=>{let e=a;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e?.parentNode;return e??void 0},sl=a=>{let e=lb(a);return!!(e&&e.fullscreenElement&&e.fullscreenElement===a)},cb=a=>{let e=lb(a);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===a)};var L=require("@vkontakte/videoplayer-shared/es2024");var PP=3,db=(a,e,t=PP)=>{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 We=a=>{let e=$=>(0,L.fromEvent)(a,$).pipe((0,L.mapTo)(void 0),(0,L.shareReplay)(1)),t=new L.Subscription,i=()=>t.unsubscribe(),r=(0,L.merge)((0,L.fromEvent)(a,"progress"),(0,L.fromEvent)(a,"timeupdate")).pipe((0,L.map)(()=>db(a.buffered,a.currentTime)),(0,L.shareReplay)(1)),s=j.browser.isSafari?(0,L.combine)({play:e("play").pipe((0,L.once)()),playing:e("playing")}).pipe((0,L.mapTo)(void 0),(0,L.shareReplay)(1)):e("playing"),n=(0,L.fromEvent)(a,"volumechange").pipe((0,L.map)(()=>({muted:a.muted,volume:a.volume})),(0,L.shareReplay)(1)),u=(0,L.fromEvent)(a,"ratechange").pipe((0,L.map)(()=>a.playbackRate),(0,L.shareReplay)(1)),o=(0,L.fromEvent)(a,"error").pipe((0,L.filter)(()=>!!(a.error||a.played.length)),(0,L.map)(()=>{let $=a.error;return{id:$?`MediaError#${$.code}`:"HtmlVideoError",category:L.ErrorCategory.VIDEO_PIPELINE,message:$?$.message:"Error event from HTML video element",thrown:a.error??void 0}}),(0,L.shareReplay)(1)),l=(0,L.fromEvent)(a,"timeupdate").pipe((0,L.map)(()=>a.currentTime),(0,L.shareReplay)(1)),p=["waiting","seeking","seeked","timeupdate"],c=new L.Subject,d=.3,h;t.add((0,L.merge)(...p.map($=>(0,L.fromEvent)(a,$))).subscribe($=>{let ee=a.currentTime;a.loop&&(0,L.isNonNullable)(h)&&(0,L.isNonNullable)(ee)&&h>=a.duration-d&&ee<=d&&c.next(h),h=ee}));let m=e("pause").pipe((0,L.filter)(()=>!a.error&&h!==a.duration),(0,L.shareReplay)(1)),b=(0,L.fromEvent)(a,"enterpictureinpicture").pipe((0,L.shareReplay)(1)),S=(0,L.fromEvent)(a,"leavepictureinpicture").pipe((0,L.shareReplay)(1)),v=new L.ValueSubject(cb(a));t.add(b.subscribe(()=>v.next(!0))),t.add(S.subscribe(()=>v.next(!1)));let I=new L.ValueSubject(sl(a)),P=(0,L.fromEvent)(a,"fullscreenchange").pipe((0,L.shareReplay)(1));t.add(P.pipe((0,L.map)(()=>sl(a))).subscribe(I));let x=.1,M=1e3,_=(0,L.fromEvent)(a,"timeupdate").pipe((0,L.map)($=>a.duration-a.currentTime<x),(0,L.filterChanged)(),(0,L.shareReplay)(1)),V=(0,L.merge)(_.pipe((0,L.filter)($=>!a.loop&&$)),(0,L.fromEvent)(a,"ended")).pipe((0,L.throttle)(M),(0,L.mapTo)(void 0),(0,L.shareReplay)(1)),H=(0,L.merge)(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map($=>(0,L.fromEvent)(a,$)),_.pipe((0,L.map)($=>({type:$?"ended":"unknown"})))).pipe((0,L.map)($=>j.browser.isFirefox&&$.type==="ended"?a.readyState<2:a.readyState<3),(0,L.filterChanged)(),(0,L.shareReplay)(1));return{playing$:s,pause$:m,canplay$:e("canplay"),ended$:V,looped$:c,error$:o,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:(0,L.fromEvent)(a,"durationchange").pipe((0,L.map)(()=>a.duration),(0,L.shareReplay)(1)),isBuffering$:H,currentBuffer$:r,volumeState$:n,playbackRateState$:u,inPiP$:v,inFullscreen$:I,enterPip$:b,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 Fe=Q(gt(),1),ol=Q(qe(),1),wi=Q(zi(),1),D=require("@vkontakte/videoplayer-shared/es2024");var nl=!1,Nt={},Sb=a=>{nl=a},vb=()=>{Nt={}},yb=a=>{a(Nt)},ia=(a,e)=>{nl&&(Nt.meta=Nt.meta??{},Nt.meta[a]=e)},Oe=class{constructor(e){this.name=e}next(e){if(!nl)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 Tb(a,e,t){return!a.max&&a.min===e?"high_quality":!a.min&&a.max===t?"traffic_saving":"unknown"}function nr(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 Ib({limits:a,highestAvailableHeight:e,lowestAvailableHeight:t}){return nr({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 Pb=new Oe("best_bitrate"),sn=(a,e,t)=>(e-t)*Math.pow(2,-10*a)+t;var or=a=>(e,t)=>a*(Number(e.bitrate)-Number(t.bitrate)),ri=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=(0,D.now)()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},nn='Assertion "ABR Tracks is empty array" failed',an=new WeakMap,Eb=new WeakMap,xb=new WeakMap,ra=(a,e,t,i)=>{let r=[...e].sort(or(1)),s=[...t].sort(or(1)),n=s.filter(o=>(0,D.isNonNullable)(o.bitrate)&&(0,D.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),u=(0,Fe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Fe.default)(s,-1);return u&&(0,ol.default)(n,u)?u:n.length?(0,Fe.default)(n,-1):(0,Fe.default)(s,0)},aa=(a,e,t,i)=>{let r=an.get(e);r||(r=[...e].sort(or(1)),an.set(e,r));let s=an.get(t);s||(s=[...t].sort(or(1)),an.set(t,s));let n=xb.get(a);n||(n=s.filter(o=>(0,D.isNonNullable)(o.bitrate)&&(0,D.isNonNullable)(a.bitrate)?a.bitrate/o.bitrate>i:!0),xb.set(a,n));let u=(0,Fe.default)(s,Math.round(s.length*r.indexOf(a)/(r.length+1)))??(0,Fe.default)(s,-1);return u&&(0,ol.default)(n,u)?u:n.length?(0,Fe.default)(n,-1):(0,Fe.default)(s,0)},wb=a=>"quality"in a,on=(a,e,t,i)=>{let r=(0,D.isNonNullable)(i?.last?.bitrate)&&(0,D.isNonNullable)(t?.bitrate)&&i.last.bitrate<t.bitrate?a.trackCooldownIncreaseQuality:a.trackCooldownDecreaseQuality,s=t&&i&&i.history[t.id]&&(0,D.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=wb(n)?"video":"audio",o=wb(n)?n.quality:n.bitrate;return e({message:`
|
|
8
8
|
[last ${u} selected] ${o}
|
|
9
9
|
`}),n}return i?.recordSwitch(t),t},VP=(a,e)=>Math.log(e)/Math.log(a),kb=({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,p=VP(n,u*s+o)+l;Number.isFinite(p)&&(r*=p)}}return(0,D.isNonNullable)(t?.min)&&(0,D.isHigherOrEqual)(t.min,a.highQualityLimit)&&(r*=2),{containerSizeLimit:a.limitByContainer&&e&&e.width>0&&e.height>0?{width:e.width*r,height:e.height*r}:void 0,containerSizeFactor:r}},Ab=new WeakMap,Rt=(a,{container:e,estimatedThroughput:t,tuning:i,limits:r,reserve:s=0,forwardBufferHealth:n,playbackRate:u,current:o,history:l,visible:p,droppedVideoMaxQualityLimit:c,stallsVideoMaxQualityLimit:d,stallsPredictedThroughput:h,abrLogger:m,panelSize:b})=>{(0,D.assertNotEmptyArray)(a,nn);let{containerSizeFactor:S,containerSizeLimit:v}=kb({container:e,tuning:i,limits:r,panelSize:b}),I=i.considerPlaybackRate&&(0,D.isNonNullable)(u)?u:1,P=Ab.get(a);P||(P=a.filter(w=>!(0,D.isInvariantQuality)(w.quality)).sort((w,R)=>(0,D.isHigher)(w.quality,R.quality)?-1:1),Ab.set(a,P));let x=(0,Fe.default)(P,-1)?.quality,M=(0,Fe.default)(P,0)?.quality,_=nr(r,M,x),V=I*sn(n??.5,i.bitrateFactorAtEmptyBuffer,i.bitrateFactorAtFullBuffer),C={},H=null;for(let w of P){let R=!0;if(v)if(w.size)R=w.size.width<=v.width&&w.size.height<=v.height;else{let ae=v&&(0,D.videoSizeToQuality)(v);R=ae?(0,D.isLowerOrEqual)(w.quality,ae):!0}if(!R){C[w.quality]="FitsContainer";continue}let oe=h||t,F=(0,D.isNonNullable)(oe)&&isFinite(oe)&&(0,D.isNonNullable)(w.bitrate)?oe-s>=w.bitrate*V:!0,re=r?.min===w.quality;if(!F&&!re){C[w.quality]="FitsThroughput";continue}if(i.lazyQualitySwitch&&(0,D.isNonNullable)(i.minBufferToSwitchUp)&&o&&!(0,D.isInvariantQuality)(o.quality)&&(n??0)<i.minBufferToSwitchUp&&(0,D.isHigher)(w.quality,o.quality)){C[w.quality]="Buffer";continue}if(!!c&&(0,D.isHigherOrEqual)(w.quality,c)&&!re){C[w.quality]="DroppedFramesLimit";continue}if(!!d&&(0,D.isHigherOrEqual)(w.quality,d)&&!re){C[w.quality]="StallsLimit";continue}let ke=_||((0,D.isNullable)(r?.max)||(0,D.isLowerOrEqual)(w.quality,r.max))&&((0,D.isNullable)(r?.min)||(0,D.isHigherOrEqual)(w.quality,r.min)),Re=(0,D.isNonNullable)(p)&&!p?(0,D.isLowerOrEqual)(w.quality,i.backgroundVideoQualityLimit):!0;if(!ke||!Re){C[w.quality]="FitsQualityLimits";continue}H||(H=w)}H&&H.bitrate&&Pb.next(H.bitrate);let $=H??(0,Fe.default)(P,-1)??a[0],ee=l?.last,W=on(i,m,$,l);return(0,D.isNonNullable)(l)&&W.quality!==ee?.quality&&m({message:`
|
|
10
10
|
[VIDEO TRACKS ABR]
|