@vkontakte/videoplayer-core 2.0.140-dev.7e2bd993.0 → 2.0.140-dev.86635a70.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/es2018.esm.js CHANGED
@@ -1,10 +1,10 @@
1
1
  /**
2
- * @vkontakte/videoplayer-core v2.0.140-dev.7e2bd993.0
3
- * Wed, 17 Sep 2025 08:42:32 GMT
2
+ * @vkontakte/videoplayer-core v2.0.140-dev.86635a70.0
3
+ * Thu, 18 Sep 2025 15:21:34 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/2-0-140/doc/
5
5
  */
6
6
  var WE=Object.create;var Qp=Object.defineProperty;var GE=Object.getOwnPropertyDescriptor;var zE=Object.getOwnPropertyNames;var YE=Object.getPrototypeOf,KE=Object.prototype.hasOwnProperty;var S=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports);var XE=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of zE(e))!KE.call(s,r)&&r!==t&&Qp(s,r,{get:()=>e[r],enumerable:!(i=GE(e,r))||i.enumerable});return s};var O=(s,e,t)=>(t=s!=null?WE(YE(s)):{},XE(e||!s||!s.__esModule?Qp(t,"default",{value:s,enumerable:!0}):t,s));var ne=S((xu,Gp)=>{"use strict";var Zr=function(s){return s&&s.Math===Math&&s};Gp.exports=Zr(typeof globalThis=="object"&&globalThis)||Zr(typeof window=="object"&&window)||Zr(typeof self=="object"&&self)||Zr(typeof global=="object"&&global)||Zr(typeof xu=="object"&&xu)||function(){return this}()||Function("return this")()});var fe=S((a_,zp)=>{"use strict";zp.exports=function(s){try{return!!s()}catch(e){return!0}}});var es=S((n_,Yp)=>{"use strict";var JE=fe();Yp.exports=!JE(function(){var s=function(){}.bind();return typeof s!="function"||s.hasOwnProperty("prototype")})});var wu=S((o_,Zp)=>{"use strict";var ZE=es(),Jp=Function.prototype,Kp=Jp.apply,Xp=Jp.call;Zp.exports=typeof Reflect=="object"&&Reflect.apply||(ZE?Xp.bind(Kp):function(){return Xp.apply(Kp,arguments)})});var me=S((u_,ih)=>{"use strict";var eh=es(),th=Function.prototype,Au=th.call,ex=eh&&th.bind.bind(Au,Au);ih.exports=eh?ex:function(s){return function(){return Au.apply(s,arguments)}}});var gi=S((l_,sh)=>{"use strict";var rh=me(),tx=rh({}.toString),ix=rh("".slice);sh.exports=function(s){return ix(tx(s),8,-1)}});var Ru=S((c_,ah)=>{"use strict";var rx=gi(),sx=me();ah.exports=function(s){if(rx(s)==="Function")return sx(s)}});var oe=S((d_,nh)=>{"use strict";var Pu=typeof document=="object"&&document.all;nh.exports=typeof Pu=="undefined"&&Pu!==void 0?function(s){return typeof s=="function"||s===Pu}:function(s){return typeof s=="function"}});var Ne=S((p_,oh)=>{"use strict";var ax=fe();oh.exports=!ax(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!==7})});var qe=S((h_,uh)=>{"use strict";var nx=es(),dn=Function.prototype.call;uh.exports=nx?dn.bind(dn):function(){return dn.apply(dn,arguments)}});var ku=S(dh=>{"use strict";var lh={}.propertyIsEnumerable,ch=Object.getOwnPropertyDescriptor,ox=ch&&!lh.call({1:2},1);dh.f=ox?function(e){var t=ch(this,e);return!!t&&t.enumerable}:lh});var ts=S((m_,ph)=>{"use strict";ph.exports=function(s,e){return{enumerable:!(s&1),configurable:!(s&2),writable:!(s&4),value:e}}});var fh=S((b_,hh)=>{"use strict";var ux=me(),lx=fe(),cx=gi(),Lu=Object,dx=ux("".split);hh.exports=lx(function(){return!Lu("z").propertyIsEnumerable(0)})?function(s){return cx(s)==="String"?dx(s,""):Lu(s)}:Lu});var is=S((g_,mh)=>{"use strict";mh.exports=function(s){return s==null}});var Qt=S((S_,bh)=>{"use strict";var px=is(),hx=TypeError;bh.exports=function(s){if(px(s))throw new hx("Can't call method on "+s);return s}});var Si=S((v_,gh)=>{"use strict";var fx=fh(),mx=Qt();gh.exports=function(s){return fx(mx(s))}});var Me=S((y_,Sh)=>{"use strict";var bx=oe();Sh.exports=function(s){return typeof s=="object"?s!==null:bx(s)}});var vi=S((T_,vh)=>{"use strict";vh.exports={}});var Rt=S((I_,Th)=>{"use strict";var $u=vi(),Mu=ne(),gx=oe(),yh=function(s){return gx(s)?s:void 0};Th.exports=function(s,e){return arguments.length<2?yh($u[s])||yh(Mu[s]):$u[s]&&$u[s][e]||Mu[s]&&Mu[s][e]}});var rs=S((E_,Ih)=>{"use strict";var Sx=me();Ih.exports=Sx({}.isPrototypeOf)});var yi=S((x_,wh)=>{"use strict";var vx=ne(),Eh=vx.navigator,xh=Eh&&Eh.userAgent;wh.exports=xh?String(xh):""});var Cu=S((w_,$h)=>{"use strict";var Lh=ne(),Du=yi(),Ah=Lh.process,Rh=Lh.Deno,Ph=Ah&&Ah.versions||Rh&&Rh.version,kh=Ph&&Ph.v8,tt,pn;kh&&(tt=kh.split("."),pn=tt[0]>0&&tt[0]<4?1:+(tt[0]+tt[1]));!pn&&Du&&(tt=Du.match(/Edge\/(\d+)/),(!tt||tt[1]>=74)&&(tt=Du.match(/Chrome\/(\d+)/),tt&&(pn=+tt[1])));$h.exports=pn});var Bu=S((A_,Dh)=>{"use strict";var Mh=Cu(),yx=fe(),Tx=ne(),Ix=Tx.String;Dh.exports=!!Object.getOwnPropertySymbols&&!yx(function(){var s=Symbol("symbol detection");return!Ix(s)||!(Object(s)instanceof Symbol)||!Symbol.sham&&Mh&&Mh<41})});var Vu=S((R_,Ch)=>{"use strict";var Ex=Bu();Ch.exports=Ex&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var _u=S((P_,Bh)=>{"use strict";var xx=Rt(),wx=oe(),Ax=rs(),Rx=Vu(),Px=Object;Bh.exports=Rx?function(s){return typeof s=="symbol"}:function(s){var e=xx("Symbol");return wx(e)&&Ax(e.prototype,Px(s))}});var ss=S((k_,Vh)=>{"use strict";var kx=String;Vh.exports=function(s){try{return kx(s)}catch(e){return"Object"}}});var ft=S((L_,_h)=>{"use strict";var Lx=oe(),$x=ss(),Mx=TypeError;_h.exports=function(s){if(Lx(s))return s;throw new Mx($x(s)+" is not a function")}});var as=S(($_,Oh)=>{"use strict";var Dx=ft(),Cx=is();Oh.exports=function(s,e){var t=s[e];return Cx(t)?void 0:Dx(t)}});var Nh=S((M_,Fh)=>{"use strict";var Ou=qe(),Fu=oe(),Nu=Me(),Bx=TypeError;Fh.exports=function(s,e){var t,i;if(e==="string"&&Fu(t=s.toString)&&!Nu(i=Ou(t,s))||Fu(t=s.valueOf)&&!Nu(i=Ou(t,s))||e!=="string"&&Fu(t=s.toString)&&!Nu(i=Ou(t,s)))return i;throw new Bx("Can't convert object to primitive value")}});var it=S((D_,qh)=>{"use strict";qh.exports=!0});var Hh=S((C_,jh)=>{"use strict";var Uh=ne(),Vx=Object.defineProperty;jh.exports=function(s,e){try{Vx(Uh,s,{value:e,configurable:!0,writable:!0})}catch(t){Uh[s]=e}return e}});var ns=S((B_,Gh)=>{"use strict";var _x=it(),Ox=ne(),Fx=Hh(),Qh="__core-js_shared__",Wh=Gh.exports=Ox[Qh]||Fx(Qh,{});(Wh.versions||(Wh.versions=[])).push({version:"3.43.0",mode:_x?"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 qu=S((V_,Yh)=>{"use strict";var zh=ns();Yh.exports=function(s,e){return zh[s]||(zh[s]=e||{})}});var Zi=S((__,Kh)=>{"use strict";var Nx=Qt(),qx=Object;Kh.exports=function(s){return qx(Nx(s))}});var rt=S((O_,Xh)=>{"use strict";var Ux=me(),jx=Zi(),Hx=Ux({}.hasOwnProperty);Xh.exports=Object.hasOwn||function(e,t){return Hx(jx(e),t)}});var Uu=S((F_,Jh)=>{"use strict";var Qx=me(),Wx=0,Gx=Math.random(),zx=Qx(1.1.toString);Jh.exports=function(s){return"Symbol("+(s===void 0?"":s)+")_"+zx(++Wx+Gx,36)}});var ye=S((N_,ef)=>{"use strict";var Yx=ne(),Kx=qu(),Zh=rt(),Xx=Uu(),Jx=Bu(),Zx=Vu(),er=Yx.Symbol,ju=Kx("wks"),ew=Zx?er.for||er:er&&er.withoutSetter||Xx;ef.exports=function(s){return Zh(ju,s)||(ju[s]=Jx&&Zh(er,s)?er[s]:ew("Symbol."+s)),ju[s]}});var af=S((q_,sf)=>{"use strict";var tw=qe(),tf=Me(),rf=_u(),iw=as(),rw=Nh(),sw=ye(),aw=TypeError,nw=sw("toPrimitive");sf.exports=function(s,e){if(!tf(s)||rf(s))return s;var t=iw(s,nw),i;if(t){if(e===void 0&&(e="default"),i=tw(t,s,e),!tf(i)||rf(i))return i;throw new aw("Can't convert object to primitive value")}return e===void 0&&(e="number"),rw(s,e)}});var Hu=S((U_,nf)=>{"use strict";var ow=af(),uw=_u();nf.exports=function(s){var e=ow(s,"string");return uw(e)?e:e+""}});var hn=S((j_,uf)=>{"use strict";var lw=ne(),of=Me(),Qu=lw.document,cw=of(Qu)&&of(Qu.createElement);uf.exports=function(s){return cw?Qu.createElement(s):{}}});var Wu=S((H_,lf)=>{"use strict";var dw=Ne(),pw=fe(),hw=hn();lf.exports=!dw&&!pw(function(){return Object.defineProperty(hw("div"),"a",{get:function(){return 7}}).a!==7})});var pf=S(df=>{"use strict";var fw=Ne(),mw=qe(),bw=ku(),gw=ts(),Sw=Si(),vw=Hu(),yw=rt(),Tw=Wu(),cf=Object.getOwnPropertyDescriptor;df.f=fw?cf:function(e,t){if(e=Sw(e),t=vw(t),Tw)try{return cf(e,t)}catch(i){}if(yw(e,t))return gw(!mw(bw.f,e,t),e[t])}});var Gu=S((W_,hf)=>{"use strict";var Iw=fe(),Ew=oe(),xw=/#|\.prototype\./,os=function(s,e){var t=Aw[ww(s)];return t===Pw?!0:t===Rw?!1:Ew(e)?Iw(e):!!e},ww=os.normalize=function(s){return String(s).replace(xw,".").toLowerCase()},Aw=os.data={},Rw=os.NATIVE="N",Pw=os.POLYFILL="P";hf.exports=os});var tr=S((G_,mf)=>{"use strict";var ff=Ru(),kw=ft(),Lw=es(),$w=ff(ff.bind);mf.exports=function(s,e){return kw(s),e===void 0?s:Lw?$w(s,e):function(){return s.apply(e,arguments)}}});var zu=S((z_,bf)=>{"use strict";var Mw=Ne(),Dw=fe();bf.exports=Mw&&Dw(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42})});var mt=S((Y_,gf)=>{"use strict";var Cw=Me(),Bw=String,Vw=TypeError;gf.exports=function(s){if(Cw(s))return s;throw new Vw(Bw(s)+" is not an object")}});var Ti=S(vf=>{"use strict";var _w=Ne(),Ow=Wu(),Fw=zu(),fn=mt(),Sf=Hu(),Nw=TypeError,Yu=Object.defineProperty,qw=Object.getOwnPropertyDescriptor,Ku="enumerable",Xu="configurable",Ju="writable";vf.f=_w?Fw?function(e,t,i){if(fn(e),t=Sf(t),fn(i),typeof e=="function"&&t==="prototype"&&"value"in i&&Ju in i&&!i[Ju]){var r=qw(e,t);r&&r[Ju]&&(e[t]=i.value,i={configurable:Xu in i?i[Xu]:r[Xu],enumerable:Ku in i?i[Ku]:r[Ku],writable:!1})}return Yu(e,t,i)}:Yu:function(e,t,i){if(fn(e),t=Sf(t),fn(i),Ow)try{return Yu(e,t,i)}catch(r){}if("get"in i||"set"in i)throw new Nw("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var ir=S((X_,yf)=>{"use strict";var Uw=Ne(),jw=Ti(),Hw=ts();yf.exports=Uw?function(s,e,t){return jw.f(s,e,Hw(1,t))}:function(s,e,t){return s[e]=t,s}});var de=S((J_,If)=>{"use strict";var us=ne(),Qw=wu(),Ww=Ru(),Gw=oe(),zw=pf().f,Yw=Gu(),rr=vi(),Kw=tr(),sr=ir(),Tf=rt();ns();var Xw=function(s){var e=function(t,i,r){if(this instanceof e){switch(arguments.length){case 0:return new s;case 1:return new s(t);case 2:return new s(t,i)}return new s(t,i,r)}return Qw(s,this,arguments)};return e.prototype=s.prototype,e};If.exports=function(s,e){var t=s.target,i=s.global,r=s.stat,a=s.proto,n=i?us:r?us[t]:us[t]&&us[t].prototype,o=i?rr:rr[t]||sr(rr,t,{})[t],u=o.prototype,l,c,d,f,p,h,m,g,b;for(f in e)l=Yw(i?f:t+(r?".":"#")+f,s.forced),c=!l&&n&&Tf(n,f),h=o[f],c&&(s.dontCallGetSet?(b=zw(n,f),m=b&&b.value):m=n[f]),p=c&&m?m:e[f],!(!l&&!a&&typeof h==typeof p)&&(s.bind&&c?g=Kw(p,us):s.wrap&&c?g=Xw(p):a&&Gw(p)?g=Ww(p):g=p,(s.sham||p&&p.sham||h&&h.sham)&&sr(g,"sham",!0),sr(o,f,g),a&&(d=t+"Prototype",Tf(rr,d)||sr(rr,d,{}),sr(rr[d],f,p),s.real&&u&&(l||!u[f])&&sr(u,f,p)))}});var mn=S((Z_,xf)=>{"use strict";var Jw=qu(),Zw=Uu(),Ef=Jw("keys");xf.exports=function(s){return Ef[s]||(Ef[s]=Zw(s))}});var Af=S((eO,wf)=>{"use strict";var eA=fe();wf.exports=!eA(function(){function s(){}return s.prototype.constructor=null,Object.getPrototypeOf(new s)!==s.prototype})});var bn=S((tO,Pf)=>{"use strict";var tA=rt(),iA=oe(),rA=Zi(),sA=mn(),aA=Af(),Rf=sA("IE_PROTO"),Zu=Object,nA=Zu.prototype;Pf.exports=aA?Zu.getPrototypeOf:function(s){var e=rA(s);if(tA(e,Rf))return e[Rf];var t=e.constructor;return iA(t)&&e instanceof t?t.prototype:e instanceof Zu?nA:null}});var Lf=S((iO,kf)=>{"use strict";var oA=Math.ceil,uA=Math.floor;kf.exports=Math.trunc||function(e){var t=+e;return(t>0?uA:oA)(t)}});var ls=S((rO,$f)=>{"use strict";var lA=Lf();$f.exports=function(s){var e=+s;return e!==e||e===0?0:lA(e)}});var Df=S((sO,Mf)=>{"use strict";var cA=ls(),dA=Math.max,pA=Math.min;Mf.exports=function(s,e){var t=cA(s);return t<0?dA(t+e,0):pA(t,e)}});var el=S((aO,Cf)=>{"use strict";var hA=ls(),fA=Math.min;Cf.exports=function(s){var e=hA(s);return e>0?fA(e,9007199254740991):0}});var ar=S((nO,Bf)=>{"use strict";var mA=el();Bf.exports=function(s){return mA(s.length)}});var tl=S((oO,_f)=>{"use strict";var bA=Si(),gA=Df(),SA=ar(),Vf=function(s){return function(e,t,i){var r=bA(e),a=SA(r);if(a===0)return!s&&-1;var n=gA(i,a),o;if(s&&t!==t){for(;a>n;)if(o=r[n++],o!==o)return!0}else for(;a>n;n++)if((s||n in r)&&r[n]===t)return s||n||0;return!s&&-1}};_f.exports={includes:Vf(!0),indexOf:Vf(!1)}});var gn=S((uO,Of)=>{"use strict";Of.exports={}});var qf=S((lO,Nf)=>{"use strict";var vA=me(),il=rt(),yA=Si(),TA=tl().indexOf,IA=gn(),Ff=vA([].push);Nf.exports=function(s,e){var t=yA(s),i=0,r=[],a;for(a in t)!il(IA,a)&&il(t,a)&&Ff(r,a);for(;e.length>i;)il(t,a=e[i++])&&(~TA(r,a)||Ff(r,a));return r}});var rl=S((cO,Uf)=>{"use strict";Uf.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var sl=S((dO,jf)=>{"use strict";var EA=qf(),xA=rl();jf.exports=Object.keys||function(e){return EA(e,xA)}});var al=S((pO,zf)=>{"use strict";var Qf=Ne(),wA=fe(),Wf=me(),AA=bn(),RA=sl(),PA=Si(),kA=ku().f,Gf=Wf(kA),LA=Wf([].push),$A=Qf&&wA(function(){var s=Object.create(null);return s[2]=2,!Gf(s,2)}),Hf=function(s){return function(e){for(var t=PA(e),i=RA(t),r=$A&&AA(t)===null,a=i.length,n=0,o=[],u;a>n;)u=i[n++],(!Qf||(r?u in t:Gf(t,u)))&&LA(o,s?[u,t[u]]:t[u]);return o}};zf.exports={entries:Hf(!0),values:Hf(!1)}});var Yf=S(()=>{"use strict";var MA=de(),DA=al().values;MA({target:"Object",stat:!0},{values:function(e){return DA(e)}})});var Xf=S((mO,Kf)=>{"use strict";Yf();var CA=vi();Kf.exports=CA.Object.values});var Zf=S((bO,Jf)=>{"use strict";var BA=Xf();Jf.exports=BA});var Ii=S((gO,em)=>{"use strict";var VA=Zf();em.exports=VA});var cs=S((SO,tm)=>{"use strict";tm.exports=function(){}});var im=S(()=>{"use strict";var _A=de(),OA=tl().includes,FA=fe(),NA=cs(),qA=FA(function(){return!Array(1).includes()});_A({target:"Array",proto:!0,forced:qA},{includes:function(e){return OA(this,e,arguments.length>1?arguments[1]:void 0)}});NA("includes")});var Wt=S((TO,rm)=>{"use strict";var UA=Rt();rm.exports=UA});var am=S((IO,sm)=>{"use strict";im();var jA=Wt();sm.exports=jA("Array","includes")});var om=S((EO,nm)=>{"use strict";var HA=am();nm.exports=HA});var De=S((xO,um)=>{"use strict";var QA=om();um.exports=QA});var mm=S(()=>{"use strict";var ZA=de(),eR=al().entries;ZA({target:"Object",stat:!0},{entries:function(e){return eR(e)}})});var gm=S((OO,bm)=>{"use strict";mm();var tR=vi();bm.exports=tR.Object.entries});var vm=S((FO,Sm)=>{"use strict";var iR=gm();Sm.exports=iR});var nr=S((NO,ym)=>{"use strict";var rR=vm();ym.exports=rR});var Ei=S((qO,Tm)=>{"use strict";Tm.exports={}});var xm=S((UO,Em)=>{"use strict";var sR=ne(),aR=oe(),Im=sR.WeakMap;Em.exports=aR(Im)&&/native code/.test(String(Im))});var dl=S((jO,Rm)=>{"use strict";var nR=xm(),Am=ne(),oR=Me(),uR=ir(),ul=rt(),ll=ns(),lR=mn(),cR=gn(),wm="Object already initialized",cl=Am.TypeError,dR=Am.WeakMap,yn,ds,Tn,pR=function(s){return Tn(s)?ds(s):yn(s,{})},hR=function(s){return function(e){var t;if(!oR(e)||(t=ds(e)).type!==s)throw new cl("Incompatible receiver, "+s+" required");return t}};nR||ll.state?(st=ll.state||(ll.state=new dR),st.get=st.get,st.has=st.has,st.set=st.set,yn=function(s,e){if(st.has(s))throw new cl(wm);return e.facade=s,st.set(s,e),e},ds=function(s){return st.get(s)||{}},Tn=function(s){return st.has(s)}):(xi=lR("state"),cR[xi]=!0,yn=function(s,e){if(ul(s,xi))throw new cl(wm);return e.facade=s,uR(s,xi,e),e},ds=function(s){return ul(s,xi)?s[xi]:{}},Tn=function(s){return ul(s,xi)});var st,xi;Rm.exports={set:yn,get:ds,has:Tn,enforce:pR,getterFor:hR}});var fl=S((HO,km)=>{"use strict";var pl=Ne(),fR=rt(),Pm=Function.prototype,mR=pl&&Object.getOwnPropertyDescriptor,hl=fR(Pm,"name"),bR=hl&&function(){}.name==="something",gR=hl&&(!pl||pl&&mR(Pm,"name").configurable);km.exports={EXISTS:hl,PROPER:bR,CONFIGURABLE:gR}});var $m=S(Lm=>{"use strict";var SR=Ne(),vR=zu(),yR=Ti(),TR=mt(),IR=Si(),ER=sl();Lm.f=SR&&!vR?Object.defineProperties:function(e,t){TR(e);for(var i=IR(t),r=ER(t),a=r.length,n=0,o;a>n;)yR.f(e,o=r[n++],i[o]);return e}});var ml=S((WO,Mm)=>{"use strict";var xR=Rt();Mm.exports=xR("document","documentElement")});var vl=S((GO,Fm)=>{"use strict";var wR=mt(),AR=$m(),Dm=rl(),RR=gn(),PR=ml(),kR=hn(),LR=mn(),Cm=">",Bm="<",gl="prototype",Sl="script",_m=LR("IE_PROTO"),bl=function(){},Om=function(s){return Bm+Sl+Cm+s+Bm+"/"+Sl+Cm},Vm=function(s){s.write(Om("")),s.close();var e=s.parentWindow.Object;return s=null,e},$R=function(){var s=kR("iframe"),e="java"+Sl+":",t;return s.style.display="none",PR.appendChild(s),s.src=String(e),t=s.contentWindow.document,t.open(),t.write(Om("document.F=Object")),t.close(),t.F},In,En=function(){try{In=new ActiveXObject("htmlfile")}catch(e){}En=typeof document!="undefined"?document.domain&&In?Vm(In):$R():Vm(In);for(var s=Dm.length;s--;)delete En[gl][Dm[s]];return En()};RR[_m]=!0;Fm.exports=Object.create||function(e,t){var i;return e!==null?(bl[gl]=wR(e),i=new bl,bl[gl]=null,i[_m]=e):i=En(),t===void 0?i:AR.f(i,t)}});var or=S((zO,Nm)=>{"use strict";var MR=ir();Nm.exports=function(s,e,t,i){return i&&i.enumerable?s[e]=t:MR(s,e,t),s}});var El=S((YO,jm)=>{"use strict";var DR=fe(),CR=oe(),BR=Me(),VR=vl(),qm=bn(),_R=or(),OR=ye(),FR=it(),Il=OR("iterator"),Um=!1,Pt,yl,Tl;[].keys&&(Tl=[].keys(),"next"in Tl?(yl=qm(qm(Tl)),yl!==Object.prototype&&(Pt=yl)):Um=!0);var NR=!BR(Pt)||DR(function(){var s={};return Pt[Il].call(s)!==s});NR?Pt={}:FR&&(Pt=VR(Pt));CR(Pt[Il])||_R(Pt,Il,function(){return this});jm.exports={IteratorPrototype:Pt,BUGGY_SAFARI_ITERATORS:Um}});var xn=S((KO,Qm)=>{"use strict";var qR=ye(),UR=qR("toStringTag"),Hm={};Hm[UR]="z";Qm.exports=String(Hm)==="[object z]"});var ps=S((XO,Wm)=>{"use strict";var jR=xn(),HR=oe(),wn=gi(),QR=ye(),WR=QR("toStringTag"),GR=Object,zR=wn(function(){return arguments}())==="Arguments",YR=function(s,e){try{return s[e]}catch(t){}};Wm.exports=jR?wn:function(s){var e,t,i;return s===void 0?"Undefined":s===null?"Null":typeof(t=YR(e=GR(s),WR))=="string"?t:zR?wn(e):(i=wn(e))==="Object"&&HR(e.callee)?"Arguments":i}});var zm=S((JO,Gm)=>{"use strict";var KR=xn(),XR=ps();Gm.exports=KR?{}.toString:function(){return"[object "+XR(this)+"]"}});var hs=S((ZO,Km)=>{"use strict";var JR=xn(),ZR=Ti().f,eP=ir(),tP=rt(),iP=zm(),rP=ye(),Ym=rP("toStringTag");Km.exports=function(s,e,t,i){var r=t?s:s&&s.prototype;r&&(tP(r,Ym)||ZR(r,Ym,{configurable:!0,value:e}),i&&!JR&&eP(r,"toString",iP))}});var Jm=S((eF,Xm)=>{"use strict";var sP=El().IteratorPrototype,aP=vl(),nP=ts(),oP=hs(),uP=Ei(),lP=function(){return this};Xm.exports=function(s,e,t,i){var r=e+" Iterator";return s.prototype=aP(sP,{next:nP(+!i,t)}),oP(s,r,!1,!0),uP[r]=lP,s}});var eb=S((tF,Zm)=>{"use strict";var cP=me(),dP=ft();Zm.exports=function(s,e,t){try{return cP(dP(Object.getOwnPropertyDescriptor(s,e)[t]))}catch(i){}}});var ib=S((iF,tb)=>{"use strict";var pP=Me();tb.exports=function(s){return pP(s)||s===null}});var sb=S((rF,rb)=>{"use strict";var hP=ib(),fP=String,mP=TypeError;rb.exports=function(s){if(hP(s))return s;throw new mP("Can't set "+fP(s)+" as a prototype")}});var xl=S((sF,ab)=>{"use strict";var bP=eb(),gP=Me(),SP=Qt(),vP=sb();ab.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var s=!1,e={},t;try{t=bP(Object.prototype,"__proto__","set"),t(e,[]),s=e instanceof Array}catch(i){}return function(r,a){return SP(r),vP(a),gP(r)&&(s?t(r,a):r.__proto__=a),r}}():void 0)});var bb=S((aF,mb)=>{"use strict";var yP=de(),TP=qe(),An=it(),hb=fl(),IP=oe(),EP=Jm(),nb=bn(),ob=xl(),xP=hs(),wP=ir(),wl=or(),AP=ye(),ub=Ei(),fb=El(),RP=hb.PROPER,PP=hb.CONFIGURABLE,lb=fb.IteratorPrototype,Rn=fb.BUGGY_SAFARI_ITERATORS,fs=AP("iterator"),cb="keys",ms="values",db="entries",pb=function(){return this};mb.exports=function(s,e,t,i,r,a,n){EP(t,e,i);var o=function(b){if(b===r&&f)return f;if(!Rn&&b&&b in c)return c[b];switch(b){case cb:return function(){return new t(this,b)};case ms:return function(){return new t(this,b)};case db:return function(){return new t(this,b)}}return function(){return new t(this)}},u=e+" Iterator",l=!1,c=s.prototype,d=c[fs]||c["@@iterator"]||r&&c[r],f=!Rn&&d||o(r),p=e==="Array"&&c.entries||d,h,m,g;if(p&&(h=nb(p.call(new s)),h!==Object.prototype&&h.next&&(!An&&nb(h)!==lb&&(ob?ob(h,lb):IP(h[fs])||wl(h,fs,pb)),xP(h,u,!0,!0),An&&(ub[u]=pb))),RP&&r===ms&&d&&d.name!==ms&&(!An&&PP?wP(c,"name",ms):(l=!0,f=function(){return TP(d,this)})),r)if(m={values:o(ms),keys:a?f:o(cb),entries:o(db)},n)for(g in m)(Rn||l||!(g in c))&&wl(c,g,m[g]);else yP({target:e,proto:!0,forced:Rn||l},m);return(!An||n)&&c[fs]!==f&&wl(c,fs,f,{name:r}),ub[e]=f,m}});var Sb=S((nF,gb)=>{"use strict";gb.exports=function(s,e){return{value:s,done:e}}});var Rl=S((oF,Eb)=>{"use strict";var kP=Si(),Al=cs(),vb=Ei(),Tb=dl(),LP=Ti().f,$P=bb(),Pn=Sb(),MP=it(),DP=Ne(),Ib="Array Iterator",CP=Tb.set,BP=Tb.getterFor(Ib);Eb.exports=$P(Array,"Array",function(s,e){CP(this,{type:Ib,target:kP(s),index:0,kind:e})},function(){var s=BP(this),e=s.target,t=s.index++;if(!e||t>=e.length)return s.target=null,Pn(void 0,!0);switch(s.kind){case"keys":return Pn(t,!1);case"values":return Pn(e[t],!1)}return Pn([t,e[t]],!1)},"values");var yb=vb.Arguments=vb.Array;Al("keys");Al("values");Al("entries");if(!MP&&DP&&yb.name!=="values")try{LP(yb,"name",{value:"values"})}catch(s){}});var wb=S((uF,xb)=>{"use strict";var VP=ye(),_P=Ei(),OP=VP("iterator"),FP=Array.prototype;xb.exports=function(s){return s!==void 0&&(_P.Array===s||FP[OP]===s)}});var Pl=S((lF,Rb)=>{"use strict";var NP=ps(),Ab=as(),qP=is(),UP=Ei(),jP=ye(),HP=jP("iterator");Rb.exports=function(s){if(!qP(s))return Ab(s,HP)||Ab(s,"@@iterator")||UP[NP(s)]}});var kb=S((cF,Pb)=>{"use strict";var QP=qe(),WP=ft(),GP=mt(),zP=ss(),YP=Pl(),KP=TypeError;Pb.exports=function(s,e){var t=arguments.length<2?YP(s):e;if(WP(t))return GP(QP(t,s));throw new KP(zP(s)+" is not iterable")}});var Mb=S((dF,$b)=>{"use strict";var XP=qe(),Lb=mt(),JP=as();$b.exports=function(s,e,t){var i,r;Lb(s);try{if(i=JP(s,"return"),!i){if(e==="throw")throw t;return t}i=XP(i,s)}catch(a){r=!0,i=a}if(e==="throw")throw t;if(r)throw i;return Lb(i),t}});var Ln=S((pF,Vb)=>{"use strict";var ZP=tr(),ek=qe(),tk=mt(),ik=ss(),rk=wb(),sk=ar(),Db=rs(),ak=kb(),nk=Pl(),Cb=Mb(),ok=TypeError,kn=function(s,e){this.stopped=s,this.result=e},Bb=kn.prototype;Vb.exports=function(s,e,t){var i=t&&t.that,r=!!(t&&t.AS_ENTRIES),a=!!(t&&t.IS_RECORD),n=!!(t&&t.IS_ITERATOR),o=!!(t&&t.INTERRUPTED),u=ZP(e,i),l,c,d,f,p,h,m,g=function(v){return l&&Cb(l,"normal"),new kn(!0,v)},b=function(v){return r?(tk(v),o?u(v[0],v[1],g):u(v[0],v[1])):o?u(v,g):u(v)};if(a)l=s.iterator;else if(n)l=s;else{if(c=nk(s),!c)throw new ok(ik(s)+" is not iterable");if(rk(c)){for(d=0,f=sk(s);f>d;d++)if(p=b(s[d]),p&&Db(Bb,p))return p;return new kn(!1)}l=ak(s,c)}for(h=a?s.next:l.next;!(m=ek(h,l)).done;){try{p=b(m.value)}catch(v){Cb(l,"throw",v)}if(typeof p=="object"&&p&&Db(Bb,p))return p}return new kn(!1)}});var Ob=S((hF,_b)=>{"use strict";var uk=Ne(),lk=Ti(),ck=ts();_b.exports=function(s,e,t){uk?lk.f(s,e,ck(0,t)):s[e]=t}});var Fb=S(()=>{"use strict";var dk=de(),pk=Ln(),hk=Ob();dk({target:"Object",stat:!0},{fromEntries:function(e){var t={};return pk(e,function(i,r){hk(t,i,r)},{AS_ENTRIES:!0}),t}})});var qb=S((bF,Nb)=>{"use strict";Rl();Fb();var fk=vi();Nb.exports=fk.Object.fromEntries});var jb=S((gF,Ub)=>{"use strict";Ub.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 Qb=S(()=>{"use strict";Rl();var mk=jb(),bk=ne(),gk=hs(),Hb=Ei();for($n in mk)gk(bk[$n],$n),Hb[$n]=Hb.Array;var $n});var Gb=S((yF,Wb)=>{"use strict";var Sk=qb();Qb();Wb.exports=Sk});var kl=S((TF,zb)=>{"use strict";var vk=Gb();zb.exports=vk});var Yb=S(()=>{"use strict"});var Ll=S((xF,Kb)=>{"use strict";var bs=ne(),yk=yi(),Tk=gi(),Mn=function(s){return yk.slice(0,s.length)===s};Kb.exports=function(){return Mn("Bun/")?"BUN":Mn("Cloudflare-Workers")?"CLOUDFLARE":Mn("Deno/")?"DENO":Mn("Node.js/")?"NODE":bs.Bun&&typeof Bun.version=="string"?"BUN":bs.Deno&&typeof Deno.version=="object"?"DENO":Tk(bs.process)==="process"?"NODE":bs.window&&bs.document?"BROWSER":"REST"}()});var Dn=S((wF,Xb)=>{"use strict";var Ik=Ll();Xb.exports=Ik==="NODE"});var Zb=S((AF,Jb)=>{"use strict";var Ek=Ti();Jb.exports=function(s,e,t){return Ek.f(s,e,t)}});var ig=S((RF,tg)=>{"use strict";var xk=Rt(),wk=Zb(),Ak=ye(),Rk=Ne(),eg=Ak("species");tg.exports=function(s){var e=xk(s);Rk&&e&&!e[eg]&&wk(e,eg,{configurable:!0,get:function(){return this}})}});var sg=S((PF,rg)=>{"use strict";var Pk=rs(),kk=TypeError;rg.exports=function(s,e){if(Pk(e,s))return s;throw new kk("Incorrect invocation")}});var Ml=S((kF,ag)=>{"use strict";var Lk=me(),$k=oe(),$l=ns(),Mk=Lk(Function.toString);$k($l.inspectSource)||($l.inspectSource=function(s){return Mk(s)});ag.exports=$l.inspectSource});var Cl=S((LF,cg)=>{"use strict";var Dk=me(),Ck=fe(),ng=oe(),Bk=ps(),Vk=Rt(),_k=Ml(),og=function(){},ug=Vk("Reflect","construct"),Dl=/^\s*(?:class|function)\b/,Ok=Dk(Dl.exec),Fk=!Dl.test(og),gs=function(e){if(!ng(e))return!1;try{return ug(og,[],e),!0}catch(t){return!1}},lg=function(e){if(!ng(e))return!1;switch(Bk(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Fk||!!Ok(Dl,_k(e))}catch(t){return!0}};lg.sham=!0;cg.exports=!ug||Ck(function(){var s;return gs(gs.call)||!gs(Object)||!gs(function(){s=!0})||s})?lg:gs});var pg=S(($F,dg)=>{"use strict";var Nk=Cl(),qk=ss(),Uk=TypeError;dg.exports=function(s){if(Nk(s))return s;throw new Uk(qk(s)+" is not a constructor")}});var Bl=S((MF,fg)=>{"use strict";var hg=mt(),jk=pg(),Hk=is(),Qk=ye(),Wk=Qk("species");fg.exports=function(s,e){var t=hg(s).constructor,i;return t===void 0||Hk(i=hg(t)[Wk])?e:jk(i)}});var bg=S((DF,mg)=>{"use strict";var Gk=me();mg.exports=Gk([].slice)});var Sg=S((CF,gg)=>{"use strict";var zk=TypeError;gg.exports=function(s,e){if(s<e)throw new zk("Not enough arguments");return s}});var Vl=S((BF,vg)=>{"use strict";var Yk=yi();vg.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(Yk)});var Ql=S((VF,Pg)=>{"use strict";var Ue=ne(),Kk=wu(),Xk=tr(),yg=oe(),Jk=rt(),Rg=fe(),Tg=ml(),Zk=bg(),Ig=hn(),eL=Sg(),tL=Vl(),iL=Dn(),Ul=Ue.setImmediate,jl=Ue.clearImmediate,rL=Ue.process,_l=Ue.Dispatch,sL=Ue.Function,Eg=Ue.MessageChannel,aL=Ue.String,Ol=0,Ss={},xg="onreadystatechange",vs,wi,Fl,Nl;Rg(function(){vs=Ue.location});var Hl=function(s){if(Jk(Ss,s)){var e=Ss[s];delete Ss[s],e()}},ql=function(s){return function(){Hl(s)}},wg=function(s){Hl(s.data)},Ag=function(s){Ue.postMessage(aL(s),vs.protocol+"//"+vs.host)};(!Ul||!jl)&&(Ul=function(e){eL(arguments.length,1);var t=yg(e)?e:sL(e),i=Zk(arguments,1);return Ss[++Ol]=function(){Kk(t,void 0,i)},wi(Ol),Ol},jl=function(e){delete Ss[e]},iL?wi=function(s){rL.nextTick(ql(s))}:_l&&_l.now?wi=function(s){_l.now(ql(s))}:Eg&&!tL?(Fl=new Eg,Nl=Fl.port2,Fl.port1.onmessage=wg,wi=Xk(Nl.postMessage,Nl)):Ue.addEventListener&&yg(Ue.postMessage)&&!Ue.importScripts&&vs&&vs.protocol!=="file:"&&!Rg(Ag)?(wi=Ag,Ue.addEventListener("message",wg,!1)):xg in Ig("script")?wi=function(s){Tg.appendChild(Ig("script"))[xg]=function(){Tg.removeChild(this),Hl(s)}}:wi=function(s){setTimeout(ql(s),0)});Pg.exports={set:Ul,clear:jl}});var $g=S((_F,Lg)=>{"use strict";var kg=ne(),nL=Ne(),oL=Object.getOwnPropertyDescriptor;Lg.exports=function(s){if(!nL)return kg[s];var e=oL(kg,s);return e&&e.value}});var Wl=S((OF,Dg)=>{"use strict";var Mg=function(){this.head=null,this.tail=null};Mg.prototype={add:function(s){var e={item:s,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var s=this.head;if(s){var e=this.head=s.next;return e===null&&(this.tail=null),s.item}}};Dg.exports=Mg});var Bg=S((FF,Cg)=>{"use strict";var uL=yi();Cg.exports=/ipad|iphone|ipod/i.test(uL)&&typeof Pebble!="undefined"});var _g=S((NF,Vg)=>{"use strict";var lL=yi();Vg.exports=/web0s(?!.*chrome)/i.test(lL)});var Hg=S((qF,jg)=>{"use strict";var lr=ne(),cL=$g(),Og=tr(),Gl=Ql().set,dL=Wl(),pL=Vl(),hL=Bg(),fL=_g(),zl=Dn(),Fg=lr.MutationObserver||lr.WebKitMutationObserver,Ng=lr.document,qg=lr.process,Cn=lr.Promise,Xl=cL("queueMicrotask"),ur,Yl,Kl,Bn,Ug;Xl||(ys=new dL,Ts=function(){var s,e;for(zl&&(s=qg.domain)&&s.exit();e=ys.get();)try{e()}catch(t){throw ys.head&&ur(),t}s&&s.enter()},!pL&&!zl&&!fL&&Fg&&Ng?(Yl=!0,Kl=Ng.createTextNode(""),new Fg(Ts).observe(Kl,{characterData:!0}),ur=function(){Kl.data=Yl=!Yl}):!hL&&Cn&&Cn.resolve?(Bn=Cn.resolve(void 0),Bn.constructor=Cn,Ug=Og(Bn.then,Bn),ur=function(){Ug(Ts)}):zl?ur=function(){qg.nextTick(Ts)}:(Gl=Og(Gl,lr),ur=function(){Gl(Ts)}),Xl=function(s){ys.head||ur(),ys.add(s)});var ys,Ts;jg.exports=Xl});var Wg=S((UF,Qg)=>{"use strict";Qg.exports=function(s,e){try{arguments.length===1?console.error(s):console.error(s,e)}catch(t){}}});var Vn=S((jF,Gg)=>{"use strict";Gg.exports=function(s){try{return{error:!1,value:s()}}catch(e){return{error:!0,value:e}}}});var Ai=S((HF,zg)=>{"use strict";var mL=ne();zg.exports=mL.Promise});var cr=S((QF,Jg)=>{"use strict";var bL=ne(),Is=Ai(),gL=oe(),SL=Gu(),vL=Ml(),yL=ye(),Yg=Ll(),TL=it(),Jl=Cu(),Kg=Is&&Is.prototype,IL=yL("species"),Zl=!1,Xg=gL(bL.PromiseRejectionEvent),EL=SL("Promise",function(){var s=vL(Is),e=s!==String(Is);if(!e&&Jl===66||TL&&!(Kg.catch&&Kg.finally))return!0;if(!Jl||Jl<51||!/native code/.test(s)){var t=new Is(function(a){a(1)}),i=function(a){a(function(){},function(){})},r=t.constructor={};if(r[IL]=i,Zl=t.then(function(){})instanceof i,!Zl)return!0}return!e&&(Yg==="BROWSER"||Yg==="DENO")&&!Xg});Jg.exports={CONSTRUCTOR:EL,REJECTION_EVENT:Xg,SUBCLASSING:Zl}});var dr=S((WF,eS)=>{"use strict";var Zg=ft(),xL=TypeError,wL=function(s){var e,t;this.promise=new s(function(i,r){if(e!==void 0||t!==void 0)throw new xL("Bad Promise constructor");e=i,t=r}),this.resolve=Zg(e),this.reject=Zg(t)};eS.exports.f=function(s){return new wL(s)}});var yS=S(()=>{"use strict";var AL=de(),RL=it(),Nn=Dn(),Gt=ne(),PL=vi(),mr=qe(),tS=or(),iS=xl(),kL=hs(),LL=ig(),$L=ft(),Fn=oe(),ML=Me(),DL=sg(),CL=Bl(),oS=Ql().set,sc=Hg(),BL=Wg(),VL=Vn(),_L=Wl(),uS=dl(),qn=Ai(),ac=cr(),lS=dr(),Un="Promise",cS=ac.CONSTRUCTOR,OL=ac.REJECTION_EVENT,FL=ac.SUBCLASSING,ec=uS.getterFor(Un),NL=uS.set,pr=qn&&qn.prototype,Ri=qn,_n=pr,dS=Gt.TypeError,tc=Gt.document,nc=Gt.process,ic=lS.f,qL=ic,UL=!!(tc&&tc.createEvent&&Gt.dispatchEvent),pS="unhandledrejection",jL="rejectionhandled",rS=0,hS=1,HL=2,oc=1,fS=2,On,sS,mS,aS,bS=function(s){var e;return ML(s)&&Fn(e=s.then)?e:!1},gS=function(s,e){var t=e.value,i=e.state===hS,r=i?s.ok:s.fail,a=s.resolve,n=s.reject,o=s.domain,u,l,c;try{r?(i||(e.rejection===fS&&WL(e),e.rejection=oc),r===!0?u=t:(o&&o.enter(),u=r(t),o&&(o.exit(),c=!0)),u===s.promise?n(new dS("Promise-chain cycle")):(l=bS(u))?mr(l,u,a,n):a(u)):n(t)}catch(d){o&&!c&&o.exit(),n(d)}},SS=function(s,e){s.notified||(s.notified=!0,sc(function(){for(var t=s.reactions,i;i=t.get();)gS(i,s);s.notified=!1,e&&!s.rejection&&QL(s)}))},vS=function(s,e,t){var i,r;UL?(i=tc.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(s,!1,!0),Gt.dispatchEvent(i)):i={promise:e,reason:t},!OL&&(r=Gt["on"+s])?r(i):s===pS&&BL("Unhandled promise rejection",t)},QL=function(s){mr(oS,Gt,function(){var e=s.facade,t=s.value,i=nS(s),r;if(i&&(r=VL(function(){Nn?nc.emit("unhandledRejection",t,e):vS(pS,e,t)}),s.rejection=Nn||nS(s)?fS:oc,r.error))throw r.value})},nS=function(s){return s.rejection!==oc&&!s.parent},WL=function(s){mr(oS,Gt,function(){var e=s.facade;Nn?nc.emit("rejectionHandled",e):vS(jL,e,s.value)})},hr=function(s,e,t){return function(i){s(e,i,t)}},fr=function(s,e,t){s.done||(s.done=!0,t&&(s=t),s.value=e,s.state=HL,SS(s,!0))},rc=function(s,e,t){if(!s.done){s.done=!0,t&&(s=t);try{if(s.facade===e)throw new dS("Promise can't be resolved itself");var i=bS(e);i?sc(function(){var r={done:!1};try{mr(i,e,hr(rc,r,s),hr(fr,r,s))}catch(a){fr(r,a,s)}}):(s.value=e,s.state=hS,SS(s,!1))}catch(r){fr({done:!1},r,s)}}};if(cS&&(Ri=function(e){DL(this,_n),$L(e),mr(On,this);var t=ec(this);try{e(hr(rc,t),hr(fr,t))}catch(i){fr(t,i)}},_n=Ri.prototype,On=function(e){NL(this,{type:Un,done:!1,notified:!1,parent:!1,reactions:new _L,rejection:!1,state:rS,value:null})},On.prototype=tS(_n,"then",function(e,t){var i=ec(this),r=ic(CL(this,Ri));return i.parent=!0,r.ok=Fn(e)?e:!0,r.fail=Fn(t)&&t,r.domain=Nn?nc.domain:void 0,i.state===rS?i.reactions.add(r):sc(function(){gS(r,i)}),r.promise}),sS=function(){var s=new On,e=ec(s);this.promise=s,this.resolve=hr(rc,e),this.reject=hr(fr,e)},lS.f=ic=function(s){return s===Ri||s===mS?new sS(s):qL(s)},!RL&&Fn(qn)&&pr!==Object.prototype)){aS=pr.then,FL||tS(pr,"then",function(e,t){var i=this;return new Ri(function(r,a){mr(aS,i,r,a)}).then(e,t)},{unsafe:!0});try{delete pr.constructor}catch(s){}iS&&iS(pr,_n)}AL({global:!0,constructor:!0,wrap:!0,forced:cS},{Promise:Ri});mS=PL.Promise;kL(Ri,Un,!1,!0);LL(Un)});var wS=S((YF,xS)=>{"use strict";var GL=ye(),IS=GL("iterator"),ES=!1;try{TS=0,uc={next:function(){return{done:!!TS++}},return:function(){ES=!0}},uc[IS]=function(){return this},Array.from(uc,function(){throw 2})}catch(s){}var TS,uc;xS.exports=function(s,e){try{if(!e&&!ES)return!1}catch(r){return!1}var t=!1;try{var i={};i[IS]=function(){return{next:function(){return{done:t=!0}}}},s(i)}catch(r){}return t}});var lc=S((KF,AS)=>{"use strict";var zL=Ai(),YL=wS(),KL=cr().CONSTRUCTOR;AS.exports=KL||!YL(function(s){zL.all(s).then(void 0,function(){})})});var RS=S(()=>{"use strict";var XL=de(),JL=qe(),ZL=ft(),e$=dr(),t$=Vn(),i$=Ln(),r$=lc();XL({target:"Promise",stat:!0,forced:r$},{all:function(e){var t=this,i=e$.f(t),r=i.resolve,a=i.reject,n=t$(function(){var o=ZL(t.resolve),u=[],l=0,c=1;i$(e,function(d){var f=l++,p=!1;c++,JL(o,t,d).then(function(h){p||(p=!0,u[f]=h,--c||r(u))},a)}),--c||r(u)});return n.error&&a(n.value),i.promise}})});var kS=S(()=>{"use strict";var s$=de(),a$=it(),n$=cr().CONSTRUCTOR,dc=Ai(),o$=Rt(),u$=oe(),l$=or(),PS=dc&&dc.prototype;s$({target:"Promise",proto:!0,forced:n$,real:!0},{catch:function(s){return this.then(void 0,s)}});!a$&&u$(dc)&&(cc=o$("Promise").prototype.catch,PS.catch!==cc&&l$(PS,"catch",cc,{unsafe:!0}));var cc});var LS=S(()=>{"use strict";var c$=de(),d$=qe(),p$=ft(),h$=dr(),f$=Vn(),m$=Ln(),b$=lc();c$({target:"Promise",stat:!0,forced:b$},{race:function(e){var t=this,i=h$.f(t),r=i.reject,a=f$(function(){var n=p$(t.resolve);m$(e,function(o){d$(n,t,o).then(i.resolve,r)})});return a.error&&r(a.value),i.promise}})});var $S=S(()=>{"use strict";var g$=de(),S$=dr(),v$=cr().CONSTRUCTOR;g$({target:"Promise",stat:!0,forced:v$},{reject:function(e){var t=S$.f(this),i=t.reject;return i(e),t.promise}})});var pc=S((aN,MS)=>{"use strict";var y$=mt(),T$=Me(),I$=dr();MS.exports=function(s,e){if(y$(s),T$(e)&&e.constructor===s)return e;var t=I$.f(s),i=t.resolve;return i(e),t.promise}});var BS=S(()=>{"use strict";var E$=de(),x$=Rt(),DS=it(),w$=Ai(),CS=cr().CONSTRUCTOR,A$=pc(),R$=x$("Promise"),P$=DS&&!CS;E$({target:"Promise",stat:!0,forced:DS||CS},{resolve:function(e){return A$(P$&&this===R$?w$:this,e)}})});var VS=S(()=>{"use strict";yS();RS();kS();LS();$S();BS()});var NS=S(()=>{"use strict";var k$=de(),L$=it(),jn=Ai(),$$=fe(),OS=Rt(),FS=oe(),M$=Bl(),_S=pc(),D$=or(),fc=jn&&jn.prototype,C$=!!jn&&$$(function(){fc.finally.call({then:function(){}},function(){})});k$({target:"Promise",proto:!0,real:!0,forced:C$},{finally:function(s){var e=M$(this,OS("Promise")),t=FS(s);return this.then(t?function(i){return _S(e,s()).then(function(){return i})}:s,t?function(i){return _S(e,s()).then(function(){throw i})}:s)}});!L$&&FS(jn)&&(hc=OS("Promise").prototype.finally,fc.finally!==hc&&D$(fc,"finally",hc,{unsafe:!0}));var hc});var US=S((pN,qS)=>{"use strict";Yb();VS();NS();var B$=Wt();qS.exports=B$("Promise","finally")});var HS=S((hN,jS)=>{"use strict";var V$=US();jS.exports=V$});var Hn=S((fN,QS)=>{"use strict";var _$=HS();QS.exports=_$});var yv=S(()=>{"use strict";var vM=de(),yM=Zi(),TM=ar(),IM=ls(),EM=cs();vM({target:"Array",proto:!0},{at:function(e){var t=yM(this),i=TM(t),r=IM(e),a=r>=0?r:i+r;return a<0||a>=i?void 0:t[a]}});EM("at")});var Iv=S((aU,Tv)=>{"use strict";yv();var xM=Wt();Tv.exports=xM("Array","at")});var xv=S((nU,Ev)=>{"use strict";var wM=Iv();Ev.exports=wM});var at=S((oU,wv)=>{"use strict";var AM=xv();wv.exports=AM});var Oc=S((J1,oy)=>{"use strict";var nD=gi();oy.exports=Array.isArray||function(e){return nD(e)==="Array"}});var ly=S((Z1,uy)=>{"use strict";var oD=TypeError,uD=9007199254740991;uy.exports=function(s){if(s>uD)throw oD("Maximum allowed index exceeded");return s}});var py=S((ej,dy)=>{"use strict";var lD=Oc(),cD=ar(),dD=ly(),pD=tr(),cy=function(s,e,t,i,r,a,n,o){for(var u=r,l=0,c=n?pD(n,o):!1,d,f;l<i;)l in t&&(d=c?c(t[l],l,e):t[l],a>0&&lD(d)?(f=cD(d),u=cy(s,e,d,f,u,a-1)-1):(dD(u+1),s[u]=d),u++),l++;return u};dy.exports=cy});var by=S((tj,my)=>{"use strict";var hy=Oc(),hD=Cl(),fD=Me(),mD=ye(),bD=mD("species"),fy=Array;my.exports=function(s){var e;return hy(s)&&(e=s.constructor,hD(e)&&(e===fy||hy(e.prototype))?e=void 0:fD(e)&&(e=e[bD],e===null&&(e=void 0))),e===void 0?fy:e}});var Sy=S((ij,gy)=>{"use strict";var gD=by();gy.exports=function(s,e){return new(gD(s))(e===0?0:e)}});var vy=S(()=>{"use strict";var SD=de(),vD=py(),yD=ft(),TD=Zi(),ID=ar(),ED=Sy();SD({target:"Array",proto:!0},{flatMap:function(e){var t=TD(this),i=ID(t),r;return yD(e),r=ED(t,0),r.length=vD(r,t,t,i,0,1,e,arguments.length>1?arguments[1]:void 0),r}})});var yy=S(()=>{"use strict";var xD=cs();xD("flatMap")});var Iy=S((oj,Ty)=>{"use strict";vy();yy();var wD=Wt();Ty.exports=wD("Array","flatMap")});var xy=S((uj,Ey)=>{"use strict";var AD=Iy();Ey.exports=AD});var Os=S((lj,wy)=>{"use strict";var RD=xy();wy.exports=RD});var Fs=S((cj,Ay)=>{"use strict";var PD=ps(),kD=String;Ay.exports=function(s){if(PD(s)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return kD(s)}});var Fc=S((dj,Ry)=>{"use strict";Ry.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 Ly=S((pj,ky)=>{"use strict";var LD=me(),$D=Qt(),MD=Fs(),qc=Fc(),Py=LD("".replace),DD=RegExp("^["+qc+"]+"),CD=RegExp("(^|[^"+qc+"])["+qc+"]+$"),Nc=function(s){return function(e){var t=MD($D(e));return s&1&&(t=Py(t,DD,"")),s&2&&(t=Py(t,CD,"$1")),t}};ky.exports={start:Nc(1),end:Nc(2),trim:Nc(3)}});var Cy=S((hj,Dy)=>{"use strict";var BD=fl().PROPER,VD=fe(),$y=Fc(),My="\u200B\x85\u180E";Dy.exports=function(s){return VD(function(){return!!$y[s]()||My[s]()!==My||BD&&$y[s].name!==s})}});var Uc=S((fj,By)=>{"use strict";var _D=Ly().start,OD=Cy();By.exports=OD("trimStart")?function(){return _D(this)}:"".trimStart});var _y=S(()=>{"use strict";var FD=de(),Vy=Uc();FD({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Vy},{trimLeft:Vy})});var Fy=S(()=>{"use strict";_y();var ND=de(),Oy=Uc();ND({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==Oy},{trimStart:Oy})});var qy=S((vj,Ny)=>{"use strict";Fy();var qD=Wt();Ny.exports=qD("String","trimLeft")});var jy=S((yj,Uy)=>{"use strict";var UD=qy();Uy.exports=UD});var Qy=S((Tj,Hy)=>{"use strict";var jD=jy();Hy.exports=jD});var oT=S(()=>{"use strict"});var uT=S(()=>{"use strict"});var cT=S((oW,lT)=>{"use strict";var hC=Me(),fC=gi(),mC=ye(),bC=mC("match");lT.exports=function(s){var e;return hC(s)&&((e=s[bC])!==void 0?!!e:fC(s)==="RegExp")}});var hT=S((uW,pT)=>{"use strict";var gC=ne(),SC=fe(),dT=gC.RegExp,vC=!SC(function(){var s=!0;try{dT(".","d")}catch(u){s=!1}var e={},t="",i=s?"dgimsy":"gimsy",r=function(u,l){Object.defineProperty(e,u,{get:function(){return t+=l,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};s&&(a.hasIndices="d");for(var n in a)r(n,a[n]);var o=Object.getOwnPropertyDescriptor(dT.prototype,"flags").get.call(e);return o!==i||t!==i});pT.exports={correct:vC}});var mT=S((lW,fT)=>{"use strict";var yC=mt();fT.exports=function(){var s=yC(this),e="";return s.hasIndices&&(e+="d"),s.global&&(e+="g"),s.ignoreCase&&(e+="i"),s.multiline&&(e+="m"),s.dotAll&&(e+="s"),s.unicode&&(e+="u"),s.unicodeSets&&(e+="v"),s.sticky&&(e+="y"),e}});var ST=S((cW,gT)=>{"use strict";var TC=qe(),IC=rt(),EC=rs(),bT=hT(),xC=mT(),wC=RegExp.prototype;gT.exports=bT.correct?function(s){return s.flags}:function(s){return!bT.correct&&EC(wC,s)&&!IC(s,"flags")?TC(xC,s):s.flags}});var yT=S((dW,vT)=>{"use strict";var Gc=me(),AC=Zi(),RC=Math.floor,Qc=Gc("".charAt),PC=Gc("".replace),Wc=Gc("".slice),kC=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,LC=/\$([$&'`]|\d{1,2})/g;vT.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=LC;return r!==void 0&&(r=AC(r),u=kC),PC(a,u,function(l,c){var d;switch(Qc(c,0)){case"$":return"$";case"&":return s;case"`":return Wc(e,0,t);case"'":return Wc(e,n);case"<":d=r[Wc(c,1,-1)];break;default:var f=+c;if(f===0)return l;if(f>o){var p=RC(f/10);return p===0?l:p<=o?i[p-1]===void 0?Qc(c,1):i[p-1]+Qc(c,1):l}d=i[f-1]}return d===void 0?"":d})}});var ET=S(()=>{"use strict";var $C=de(),MC=qe(),Yc=me(),TT=Qt(),DC=oe(),CC=Me(),BC=cT(),Pr=Fs(),VC=as(),_C=ST(),OC=yT(),FC=ye(),NC=it(),qC=FC("replace"),UC=TypeError,zc=Yc("".indexOf),jC=Yc("".replace),IT=Yc("".slice),HC=Math.max;$C({target:"String",proto:!0},{replaceAll:function(e,t){var i=TT(this),r,a,n,o,u,l,c,d,f,p,h=0,m="";if(CC(e)){if(r=BC(e),r&&(a=Pr(TT(_C(e))),!~zc(a,"g")))throw new UC("`.replaceAll` does not allow non-global regexes");if(n=VC(e,qC),n)return MC(n,e,i,t);if(NC&&r)return jC(Pr(i),e,t)}for(o=Pr(i),u=Pr(e),l=DC(t),l||(t=Pr(t)),c=u.length,d=HC(1,c),f=zc(o,u);f!==-1;)p=l?Pr(t(u,f,o)):OC(u,o,f,[],void 0,t),m+=IT(o,h,f)+p,h=f+c,f=f+d>o.length?-1:zc(o,u,f+d);return h<o.length&&(m+=IT(o,h)),m}})});var wT=S((fW,xT)=>{"use strict";oT();uT();ET();var QC=Wt();xT.exports=QC("String","replaceAll")});var RT=S((mW,AT)=>{"use strict";var WC=wT();AT.exports=WC});var kT=S((bW,PT)=>{"use strict";var GC=RT();PT.exports=GC});var $T=S((gW,LT)=>{"use strict";var zC=ls(),YC=Fs(),KC=Qt(),XC=RangeError;LT.exports=function(e){var t=YC(KC(this)),i="",r=zC(e);if(r<0||r===1/0)throw new XC("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var VT=S((SW,BT)=>{"use strict";var CT=me(),JC=el(),MT=Fs(),ZC=$T(),eB=Qt(),tB=CT(ZC),iB=CT("".slice),rB=Math.ceil,DT=function(s){return function(e,t,i){var r=MT(eB(e)),a=JC(t),n=r.length,o=i===void 0?" ":MT(i),u,l;return a<=n||o===""?r:(u=a-n,l=tB(o,rB(u/o.length)),l.length>u&&(l=iB(l,0,u)),s?r+l:l+r)}};BT.exports={start:DT(!1),end:DT(!0)}});var OT=S((vW,_T)=>{"use strict";var sB=yi();_T.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(sB)});var FT=S(()=>{"use strict";var aB=de(),nB=VT().start,oB=OT();aB({target:"String",proto:!0,forced:oB},{padStart:function(e){return nB(this,e,arguments.length>1?arguments[1]:void 0)}})});var qT=S((IW,NT)=>{"use strict";FT();var uB=Wt();NT.exports=uB("String","padStart")});var jT=S((EW,UT)=>{"use strict";var lB=qT();UT.exports=lB});var QT=S((xW,HT)=>{"use strict";var cB=jT();HT.exports=cB});var Wp="2.0.140-dev.7e2bd993.0";var $e=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))($e||{}),At=(y=>(y.MPEG="MPEG",y.DASH="DASH",y.DASH_SEP="DASH_SEP",y.DASH_SEP_VK="DASH_SEP",y.DASH_WEBM="DASH_WEBM",y.DASH_WEBM_AV1="DASH_WEBM_AV1",y.DASH_STREAMS="DASH_STREAMS",y.DASH_WEBM_VK="DASH_WEBM",y.DASH_ONDEMAND="DASH_ONDEMAND",y.DASH_ONDEMAND_VK="DASH_ONDEMAND",y.DASH_LIVE="DASH_LIVE",y.DASH_LIVE_CMAF="DASH_LIVE_CMAF",y.DASH_LIVE_WEBM="DASH_LIVE_WEBM",y.HLS="HLS",y.HLS_ONDEMAND="HLS_ONDEMAND",y.HLS_JS="HLS",y.HLS_FMP4="HLS_FMP4",y.HLS_LIVE="HLS_LIVE",y.HLS_LIVE_CMAF="HLS_LIVE_CMAF",y.WEB_RTC_LIVE="WEB_RTC_LIVE",y))(At||{});var ln=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(ln||{}),Iu=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Iu||{});var Eu=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Eu||{}),cn=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(cn||{});var np=O(Ii(),1),OE=O(De(),1);import{assertNever as fm,assertNonNullable as WA,isNonNullable as Sn,ValueSubject as nl,Subject as GA,Subscription as zA,merge as YA,observableFrom as KA,fromEvent as cm,map as dm,tap as pm,filterChanged as XA,isNullable as ol,ErrorCategory as hm}from"@vkontakte/videoplayer-shared/es2018";var lm=s=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",s),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var vn=class{constructor(e){this.connection$=new nl(void 0);this.castState$=new nl("NOT_AVAILABLE");this.errorEvent$=new GA;this.realCastState$=new nl("NOT_AVAILABLE");this.subscription=new zA;this.isDestroyed=!1;var a;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=Sn((a=window.chrome)==null?void 0:a.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=n=>{delete window.__onGCastApiAvailable,n&&!this.isDestroyed&&this.initializeCastApi()},r||lm("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:hm.NETWORK,message:"Script loading failed!"})))}connect(){var e;(e=cast.framework.CastContext.getInstance())==null||e.requestSession()}disconnect(){var e,t;(t=(e=cast.framework.CastContext.getInstance())==null?void 0:e.getCurrentSession())==null||t.endSession(!0)}stopMedia(){return new Promise((e,t)=>{var i,r,a;(a=(r=(i=cast.framework.CastContext.getInstance())==null?void 0:i.getCurrentSession())==null?void 0:r.getMediaSession())==null||a.stop(new chrome.cast.media.StopRequest,e,t)})}toggleConnection(){Sn(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();ol(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();ol(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(cm(i,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(r=>{var a,n,o;switch(r.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=(o=(n=(a=i.getCurrentSession())==null?void 0:a.getMediaSession())==null?void 0:n.media)==null?void 0:o.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 fm(r.sessionState)}})).add(YA(cm(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe(pm(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),dm(r=>r.castState)),KA([i.getCastState()])).pipe(XA(),dm(JA),pm(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{var o,u;let a=r==="CONNECTED",n=Sn(this.connection$.getValue());if(a&&!n){let l=i.getCurrentSession();WA(l);let c=l.getCastDevice(),d=(u=(o=l.getMediaSession())==null?void 0:o.media)==null?void 0:u.contentId;(ol(d)||d===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:l,castDevice:c}))}else!a&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?Sn(this.connection$.getValue())?"CONNECTED":"AVAILABLE":r)}))}initializeCastApi(){var r;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(a){return}try{e.setOptions({receiverApplicationId:(r=this.params.receiverApplicationId)!=null?r:t,autoJoinPolicy:i}),this.initListeners()}catch(a){this.errorEvent$.next({id:"ChromecastInitializer",category:hm.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:a})}}},JA=s=>{switch(s){case cast.framework.CastState.NO_DEVICES_AVAILABLE:return"NOT_AVAILABLE";case cast.framework.CastState.NOT_CONNECTED:return"AVAILABLE";case cast.framework.CastState.CONNECTING:return"CONNECTING";case cast.framework.CastState.CONNECTED:return"CONNECTED";default:return fm(s)}};var Jd=O(De(),1),vE=O(nr(),1),yE=O(kl(),1);var ov=O(Hn(),1);import{assertNever as WS}from"@vkontakte/videoplayer-shared/es2018";var ue=(s,e=0,t=0)=>{switch(t){case 0:return s.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return s;let i=new URL(s);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(s);return!i.searchParams.get("offset_p")&&e===0?s:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:WS(t)}return s},zt=(s,e)=>{var t;switch(e){case 0:return NaN;case 1:{let i=new URL(s);return Number(i.searchParams.get("playback_shift"))}case 2:{let i=new URL(s);return Number((t=i.searchParams.get("offset_p"))!=null?t:0)}default:WS(e)}};var $=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};import{isNonNullable as O$,Subject as Qn,merge as GS}from"@vkontakte/videoplayer-shared/es2018";var j=class{constructor(e){this.transitionStarted$=new Qn;this.transitionEnded$=new Qn;this.transitionUpdated$=new Qn;this.forceChanged$=new Qn;this.stateChangeStarted$=GS(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=GS(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||O$(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}};import{assertNever as ev}from"@vkontakte/videoplayer-shared/es2018";var Wn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,a=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,o=/webkit|safari|khtml/i.test(e)?"Safari":void 0,u=/opr\//i.test(e)?"Opera":void 0,l=/edg/i.test(e)?"Edge":void 0;this._isMiuiBrowser=/(XiaoMi)|(MiuiBrowser)/i.test(e),this._current=t||i||n||u||l||r||a||o||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],a=parseInt(r,10);if(!isNaN(a))return this._current_version=a,a}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var zS=O(De(),1);var Es=()=>{var s,e;return/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test((s=navigator.appVersion)!=null?s:navigator.userAgent)||((e=navigator==null?void 0:navigator.userAgentData)==null?void 0:e.mobile)};var Gn=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,zS.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=Es()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e!=null&&e.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,a=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,o=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||a||o||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let a=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(a);this._iosVersion=n;return}let{userAgent:e}=window.navigator,t=e.match(/OS (\d+(_\d+)?)/i);if(!t)return;let i=t[1].replace(/_/g,".");if(!i)return;let r=parseFloat(i);if(isNaN(r))return;this._iosVersion=r}catch(e){console.error(e)}}};var zn=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(){var t;let{maxTouchPoints:e}=navigator;try{this._maxTouchPoints=e!=null?e:0,this._isHdr=!!((t=matchMedia("(dynamic-range: high)"))!=null&&t.matches),this._colorDepth=screen.colorDepth}catch(i){console.error(i)}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(i){console.error(i)}}};var je=()=>window.ManagedMediaSource||window.MediaSource,br=()=>{var s,e;return!!(window.ManagedMediaSource&&((e=(s=window.ManagedSourceBuffer)==null?void 0:s.prototype)!=null&&e.appendBuffer))},YS=()=>{var s,e;return!!(window.MediaSource&&((e=(s=window.SourceBuffer)==null?void 0:s.prototype)!=null&&e.appendBuffer))},Yn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var F$=document.createElement("video"),N$='video/mp4; codecs="avc1.42000a,mp4a.40.2"',q$='video/mp4; codecs="hev1.1.6.L93.B0"',KS='video/webm; codecs="vp09.00.10.08"',XS='video/webm; codecs="av01.0.00M.08"',U$='audio/mp4; codecs="mp4a.40.2"',j$='audio/webm; codecs="opus"',JS,H$=async()=>{if(!window.navigator.mediaCapabilities)return;let s={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:XS}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:KS}})]);JS={DASH_WEBM_AV1:e,DASH_WEBM:t}};H$().catch(s=>{console.log(F$),console.error(s)});var Kn=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 JS}get supportedCodecs(){return Object.keys(this._codecs).filter(e=>this._codecs[e])}get nativeHlsSupported(){return this._nativeHlsSupported}detect(){var e,t,i,r,a,n,o,u,l,c,d,f,p,h,m,g,b,v,T,y;this._video=document.createElement("video");try{this._protocols={mms:br(),mse:YS(),hls:!!((t=(e=this._video).canPlayType)!=null&&t.call(e,"application/x-mpegurl")||(r=(i=this._video).canPlayType)!=null&&r.call(i,"vnd.apple.mpegURL")),webrtc:!!window.RTCPeerConnection,ws:!!window.WebSocket},this._containers={mp4:!!((n=(a=this._video).canPlayType)!=null&&n.call(a,"video/mp4")),webm:!!((u=(o=this._video).canPlayType)!=null&&u.call(o,"video/webm")),cmaf:!0};let I=!!((c=(l=je())==null?void 0:l.isTypeSupported)!=null&&c.call(l,N$)),x=!!((f=(d=je())==null?void 0:d.isTypeSupported)!=null&&f.call(d,q$)),L=!!((h=(p=je())==null?void 0:p.isTypeSupported)!=null&&h.call(p,U$));this._codecs={h264:I,h265:x,vp9:!!((g=(m=je())==null?void 0:m.isTypeSupported)!=null&&g.call(m,KS)),av1:!!((v=(b=je())==null?void 0:b.isTypeSupported)!=null&&v.call(b,XS)),aac:L,opus:!!((y=(T=je())==null?void 0:T.isTypeSupported)!=null&&y.call(T,j$)),mpeg:(I||x)&&L},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(I){console.error(I)}try{this.destroyVideoElement()}catch(I){console.error("Error destroying video element:",I)}}destroyVideoElement(){var t;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);(t=this._video.parentNode)==null||t.replaceChild(e,this._video),this._video=null}};var ZS="audio/mpeg",Xn=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){var e,t,i,r;this._audio=document.createElement("audio");try{this._containers={mpeg:!!((t=(e=this._audio).canPlayType)!=null&&t.call(e,ZS))},this._codecs={mp3:!!((r=(i=je())==null?void 0:i.isTypeSupported)!=null&&r.call(i,ZS))}}catch(a){console.error(a)}try{this.destroyAudioElement()}catch(a){console.error("Error destroying audio element:",a)}}destroyAudioElement(){var t;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);(t=this._audio.parentNode)==null||t.replaceChild(e,this._audio),this._audio=null}};import{ValueSubject as Q$}from"@vkontakte/videoplayer-shared/es2018";var mc=class{constructor(){this.isInited$=new Q$(!1);this._displayChecker=new zn,this._deviceChecker=new Gn(this._displayChecker),this._browserChecker=new Wn,this._videoChecker=new Kn(this._deviceChecker,this._browserChecker),this._audioChecker=new Xn,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)}},F=new mc;var bc=s=>{let{containers:e,protocols:t,codecs:i,nativeHlsSupported:r}=F.video,a=(i.h264||i.h265)&&i.aac,n=t.mse||t.mms;return s.filter(o=>{switch(o){case"DASH_SEP":return n&&e.mp4&&a;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&&a||e.webm&&(i.vp9||i.av1)&&(i.opus||i.aac));case"DASH_LIVE":return n&&e.mp4&&a;case"DASH_LIVE_CMAF":return n&&e.mp4&&a&&e.cmaf;case"DASH_ONDEMAND":return n&&e.mp4&&a;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 ev(o)}})},gc=s=>{switch(s){case"MPEG":case"DASH":case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":case"HLS":case"HLS_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 ev(s)}},W$=s=>{let t=Object.keys(s).filter(i=>!gc(i));return bc(t).length>0};import{assertNever as gr,assertNonNullable as Pi,debounce as tv,ErrorCategory as iv,fromEvent as ki,isNonNullable as rv,map as sv,merge as av,observableFrom as G$,Subject as z$,Subscription as Sc,timeout as Y$,getHighestQuality as K$}from"@vkontakte/videoplayer-shared/es2018";var X$=5,J$=5,Z$=500,nv=7e3,xs=class{constructor(e){this.subscription=new Sc;this.loadMediaTimeoutSubscription=new Sc;this.videoState=new j("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),a=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${i}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(a)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if((r==null?void 0:r.to)!=="paused"&&a.state==="requested"&&e!=="stopped"){this.seek(a.position/1e3);return}switch(i){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:gr(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:gr(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:gr(e)}break}default:gr(i)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(gc(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 Sc;this.subscription.add(e),this.subscription.add(av(this.videoState.stateChangeStarted$.pipe(sv(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe(sv(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,a)=>this.subscription.add(r.subscribe(a));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new z$;e.add(r.pipe(tv(Z$)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let o=n.value;this.params.output.position$.next(o),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(o-a)>X$)&&r.next(o),a=o})),e.add(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:a}=this.params.connection,n=r.value,o=this.params.output.isBuffering$.getValue(),u=n===chrome.cast.media.PlayerState.BUFFERING;switch(o!==u&&this.params.output.isBuffering$.next(u),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&a.duration-a.currentTime<J$&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),$(this.params.desiredState.playbackState,"stopped");break;case chrome.cast.media.PlayerState.PAUSED:{this.handleRemotePause();break}case chrome.cast.media.PlayerState.PLAYING:this.handleRemotePlay();break;case chrome.cast.media.PlayerState.BUFFERING:break;default:gr(n)}}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=av(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,G$(["init"])).pipe(tv(0));t(i,this.syncPlayback)}restoreSession(e){this.log({message:"restoreSession"});let{remotePlayer:t}=this.params.connection;if(e.playerState!==chrome.cast.media.PlayerState.IDLE){t.isPaused?(this.videoState.setState("paused"),$(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),$(this.params.desiredState.playbackState,"playing"));let i=this.params.output.isLive$.getValue();this.params.output.duration$.next(i?0:t.duration),this.params.output.position$.next(i?0:t.currentTime),this.params.desiredState.seekState.setState({state:"none"})}}prepare(){let e=this.params.format;this.log({message:`[prepare] format: ${e}`});let t=this.createMediaInfo(e),i=this.createLoadRequest(t);this.loadMedia(i)}handleRemotePause(){let e=this.videoState.getState(),t=this.videoState.getTransition();((t==null?void 0:t.to)==="paused"||e==="playing")&&(this.videoState.setState("paused"),$(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState(),t=this.videoState.getTransition();((t==null?void 0:t.to)==="playing"||e==="paused")&&(this.videoState.setState("playing"),$(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){var t;let e=this.videoState.getTransition();(e==null?void 0:e.to)==="ready"&&this.videoState.setState("ready"),((t=this.params.desiredState.playbackState.getTransition())==null?void 0:t.to)==="ready"&&$(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){var r,a;let t=this.params.output.volume$.getValue(),i={volume:(r=e.volume)!=null?r:t.volume,muted:(a=e.muted)!=null?a: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){var l;let t=this.params.source,i,r,a;switch(e){case"MPEG":{let c=t[e];Pi(c);let d=K$(Object.keys(c));Pi(d);let f=c[d];Pi(f),i=f,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_FMP4":case"HLS_ONDEMAND":{let c=t[e];Pi(c),i=c.url,r="application/x-mpegurl",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let c=t[e];Pi(c),i=c.url,r="application/dash+xml",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let c=t[e];Pi(c),i=c.url,r="application/dash+xml",a=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let c=t[e];Pi(c),i=ue(c.url),r="application/x-mpegurl",a=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let c="Unsupported format for Chromecast",d=new Error(c);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:iv.VIDEO_PIPELINE,message:c,thrown:d}),d}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return gr(e)}let n=new chrome.cast.media.MediaInfo((l=this.params.meta.videoId)!=null?l:i,r);n.contentUrl=i,n.streamType=a,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return rv(o)&&(n.metadata.title=o),rv(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let i=this.params.desiredState.seekState.getState();return i.state==="applying"||i.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:i.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),i=new Promise((r,a)=>{this.loadMediaTimeoutSubscription.add(Y$(nv).subscribe(()=>a(`timeout(${nv})`)))});(0,ov.default)(Promise.race([t,i]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},r=>{let a=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:a}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:iv.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Vc=O(De(),1);import{clearVideoElement as lv}from"@vkontakte/videoplayer-shared/es2018";import{clearVideoElement as eM}from"@vkontakte/videoplayer-shared/es2018";var uv=s=>{try{s.pause(),s.playbackRate=0,eM(s),s.remove()}catch(e){console.error(e)}};import{fromEvent as tM,Subscription as iM}from"@vkontakte/videoplayer-shared/es2018";var vc=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)}},yc=window.WeakMap?new WeakMap:new vc,Tc=window.WeakMap?new WeakMap:new Map,rM=(s,e=20)=>{let t=0;return tM(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},Ce=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?lv(i):(i=document.createElement("video"),s.appendChild(i)),yc.set(i,r);let a=new iM;return a.add(rM(i,e)),Tc.set(i,a),i.setAttribute("crossorigin","anonymous"),i.setAttribute("playsinline","playsinline"),t&&i.setAttribute("x-yandex-pip","false"),i.controls=!1,i.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),i},Be=s=>{let e=Tc.get(s);e==null||e.unsubscribe(),Tc.delete(s);let t=yc.get(s);yc.delete(s),t?lv(s):uv(s)};var Ec=O(Ii(),1);import{assertNonNullable as As,isNonNullable as gt,isNullable as nM,fromEvent as Sr,merge as cv,observableFrom as dv,filterChanged as pv,map as Rs,Subject as hv,Subscription as oM,ValueSubject as uM,ErrorCategory as lM}from"@vkontakte/videoplayer-shared/es2018";import{isNonNullable as Ic,isNullable as sM,Subscription as aM}from"@vkontakte/videoplayer-shared/es2018";var Jn=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=sM(r),l=new aM;return r&&l.add(r.subscribe(c=>{let d=s.getState();i(c,d)&&s.setState(c)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(c=>{t(c.to),u&&s.setState(c.to)},a)),l},bt=(s,e,t)=>Jn(e,()=>s.loop,i=>{Ic(i)&&(s.loop=i)},{onError:t}),Ve=(s,e,t,i)=>Jn(e,()=>({muted:s.muted,volume:s.volume}),r=>{Ic(r)&&(s.muted=r.muted,s.volume=r.volume)},{equal:(r,a)=>r===a||(r==null?void 0:r.muted)===(a==null?void 0:a.muted)&&(r==null?void 0:r.volume)===(a==null?void 0:a.volume),changed$:t,onError:i}),ze=(s,e,t,i)=>Jn(e,()=>s.playbackRate,r=>{Ic(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),ws=Jn;var cM=s=>["__",s.language,s.label].join("|"),dM=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},xc=class s{constructor(e){this.available$=new hv;this.current$=new uM(void 0);this.error$=new hv;this.subscription=new oM;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,i){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let r=a=>{this.error$.next({id:"TextTracksManager",category:lM.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:a})};this.subscription.add(this.available$.subscribe(i.availableTextTracks$)),this.subscription.add(this.current$.subscribe(i.currentTextTrack$)),this.subscription.add(this.error$.subscribe(i.error$)),this.subscription.add(ws(t.internalTextTracks,()=>(0,Ec.default)(this.internalTracks),a=>{gt(a)&&this.setInternal(a)},{equal:(a,n)=>gt(a)&&gt(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe(Rs(a=>a.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(ws(t.externalTextTracks,()=>(0,Ec.default)(this.externalTracks),a=>{gt(a)&&this.setExternal(a)},{equal:(a,n)=>gt(a)&&gt(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe(Rs(a=>a.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(ws(t.currentTextTrack,()=>{if(this.video)return;let a=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return a&&this.htmlTextTrackToITextTrack(a).id},a=>this.select(a),{changed$:this.current$,onError:r})),this.subscription.add(ws(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let a of this.htmlTextTracksAsArray())this.applyCueSettings(a.cues),this.applyCueSettings(a.activeCues)}))}subscribe(){As(this.video);let{textTracks:e}=this.video;this.subscription.add(Sr(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add(cv(Sr(e,"addtrack"),Sr(e,"removetrack"),dv(["init"])).pipe(Rs(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),pv((i,r)=>i.length===r.length&&i.every(({id:a},n)=>a===r[n].id))).subscribe(this.available$)),this.subscription.add(cv(Sr(e,"change"),dv(["init"])).pipe(Rs(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),Rs(i=>i&&this.htmlTextTrackToITextTrack(i).id),pv()).subscribe(this.current$));let t=i=>{var r,a;return this.applyCueSettings((a=(r=i.target)==null?void 0:r.activeCues)!=null?a:null)};this.subscription.add(Sr(e,"addtrack").subscribe(i=>{var a,n;(a=i.track)==null||a.addEventListener("cuechange",t);let r=o=>{var l,c,d,f,p;let u=(c=(l=o.target)==null?void 0:l.cues)!=null?c:null;u&&u.length&&(this.applyCueSettings((f=(d=o.target)==null?void 0:d.cues)!=null?f:null),(p=o.target)==null||p.removeEventListener("cuechange",r))};(n=i.track)==null||n.addEventListener("cuechange",r)})),this.subscription.add(Sr(e,"removetrack").subscribe(i=>{var r;(r=i.track)==null||r.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;gt(t.align)&&(r.align=t.align),gt(t.position)&&(r.position=t.position),gt(t.size)&&(r.size=t.size),gt(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){As(this.video);let t=[...this.video.textTracks];return e?t:t.filter(s.isHealthyTrack)}htmlTextTrackToITextTrack(e){var o,u,l,c,d;let{language:t,label:i}=e,r=e.id?e.id:cM(e),a=this.externalTracks.has(r),n=(l=a?(o=this.externalTracks.get(r))==null?void 0:o.isAuto:(u=this.internalTracks.get(r))==null?void 0:u.isAuto)!=null?l:r.includes("auto");return a?{id:r,type:"external",isAuto:n,language:t,label:i,url:(c=this.externalTracks.get(r))==null?void 0:c.url}:{id:r,type:"internal",isAuto:n,language:t,label:i,url:(d=this.internalTracks.get(r))==null?void 0:d.url}}static isHealthyTrack(e){return!(e.kind==="metadata"||e.groupId||e.id===""&&e.label===""&&e.language==="")}setExternal(e){this.internalTracks.size>0&&Array.from(this.internalTracks).forEach(([,t])=>this.detach(t)),e.filter(({id:t})=>!this.externalTracks.has(t)).forEach(t=>this.attach(t)),Array.from(this.externalTracks).filter(([t])=>!e.find(i=>i.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:i,language:r,isAuto:a})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===a)).forEach(i=>this.attach(i)),Array.from(this.internalTracks).filter(([i])=>!e.find(r=>r.id===i)).forEach(([,i])=>this.detach(i))}select(e){As(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))(nM(e)||!dM(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){As(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){As(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)}},Ye=xc;var Li=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 fv=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e==null?void 0:e.parentNode;return e!=null?e:void 0},wc=s=>{let e=fv(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},mv=s=>{let e=fv(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};import{fromEvent as we,map as St,merge as Zn,filterChanged as gv,isNonNullable as Sv,Subject as hM,filter as Ac,mapTo as Rc,combine as fM,once as mM,shareReplay as Ae,throttle as bM,ErrorCategory as gM,ValueSubject as vv,Subscription as SM}from"@vkontakte/videoplayer-shared/es2018";var pM=3,bv=(s,e,t=pM)=>{let i=0,r=0;for(let a=0;a<s.length;a++){let n=s.start(a),o=s.end(a);if(n<=e&&e<=o){if(i=n,r=o,!t)return{from:i,to:r};for(let u=a-1;u>=0;u--)s.end(u)+t>=i&&(i=s.start(u));for(let u=a+1;u<s.length;u++)s.start(u)-t<=r&&(r=s.end(u))}}return{from:i,to:r}};var _e=s=>{let e=P=>we(s,P).pipe(Rc(void 0),Ae(1)),t=new SM,i=()=>t.unsubscribe(),r=Zn(we(s,"progress"),we(s,"timeupdate")).pipe(St(()=>bv(s.buffered,s.currentTime)),Ae(1)),a=F.browser.isSafari?fM({play:e("play").pipe(mM()),playing:e("playing")}).pipe(Rc(void 0),Ae(1)):e("playing"),n=we(s,"volumechange").pipe(St(()=>({muted:s.muted,volume:s.volume})),Ae(1)),o=we(s,"ratechange").pipe(St(()=>s.playbackRate),Ae(1)),u=we(s,"error").pipe(Ac(()=>!!(s.error||s.played.length)),St(()=>{var V;let P=s.error;return{id:P?`MediaError#${P.code}`:"HtmlVideoError",category:gM.VIDEO_PIPELINE,message:P?P.message:"Error event from HTML video element",thrown:(V=s.error)!=null?V:void 0}}),Ae(1)),l=we(s,"timeupdate").pipe(St(()=>s.currentTime),Ae(1)),c=["waiting","seeking","seeked","timeupdate"],d=new hM,f=.3,p;t.add(Zn(...c.map(P=>we(s,P))).subscribe(P=>{let V=s.currentTime;s.loop&&Sv(p)&&Sv(V)&&p>=s.duration-f&&V<=f&&d.next(p),p=V}));let h=e("pause").pipe(Ac(()=>!s.error&&p!==s.duration),Ae(1)),m=we(s,"enterpictureinpicture").pipe(Ae(1)),g=we(s,"leavepictureinpicture").pipe(Ae(1)),b=new vv(mv(s));t.add(m.subscribe(()=>b.next(!0))),t.add(g.subscribe(()=>b.next(!1)));let v=new vv(wc(s)),T=we(s,"fullscreenchange").pipe(Ae(1));t.add(T.pipe(St(()=>wc(s))).subscribe(v));let y=.1,I=1e3,x=we(s,"timeupdate").pipe(St(P=>s.duration-s.currentTime<y),gv(),Ae(1)),L=Zn(x.pipe(Ac(P=>!s.loop&&P)),we(s,"ended")).pipe(bM(I),Rc(void 0),Ae(1)),R=Zn(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(P=>we(s,P)),x.pipe(St(P=>({type:P?"ended":"unknown"})))).pipe(St(P=>F.browser.isFirefox&&P.type==="ended"?s.readyState<2:s.readyState<3),gv(),Ae(1));return{playing$:a,pause$:h,canplay$:e("canplay"),ended$:L,looped$:d,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:we(s,"durationchange").pipe(St(()=>s.duration),Ae(1)),isBuffering$:R,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:b,inFullscreen$:v,enterPip$:m,leavePip$:g,destroy:i}};import{VideoQuality as Yt}from"@vkontakte/videoplayer-shared/es2018";var Kt=s=>{switch(s){case"mobile":return Yt.Q_144P;case"lowest":return Yt.Q_240P;case"low":return Yt.Q_360P;case"sd":case"medium":return Yt.Q_480P;case"hd":case"high":return Yt.Q_720P;case"fullhd":case"full":return Yt.Q_1080P;case"quadhd":case"quad":return Yt.Q_1440P;case"ultrahd":case"ultra":return Yt.Q_2160P}};var Pe=O(at(),1),kc=O(De(),1),Mi=O(nr(),1);import{isNonNullable as J,isNullable as ro,now as Vv,isHigher as so,isHigherOrEqual as $i,isInvariantQuality as ao,isLowerOrEqual as yr,videoSizeToQuality as _v,assertNotEmptyArray as no,assertNonNullable as Ov}from"@vkontakte/videoplayer-shared/es2018";var Pc=!1,Lt={},Av=s=>{Pc=s},Rv=()=>{Lt={}},Pv=s=>{s(Lt)},Ps=(s,e)=>{var t;Pc&&(Lt.meta=(t=Lt.meta)!=null?t:{},Lt.meta[s]=e)},Re=class{constructor(e){this.name=e}next(e){var i,r;if(!Pc)return;Lt.series=(i=Lt.series)!=null?i:{};let t=(r=Lt.series[this.name])!=null?r:[];t.push([Date.now(),e]),Lt.series[this.name]=t}};import{isHigher as RM,isHigherOrEqual as hU,isLower as kv,isLowerOrEqual as fU,isNonNullable as eo,isNullable as PM,videoHeightToQuality as to}from"@vkontakte/videoplayer-shared/es2018";function Lv(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function vr(s,e,t){return PM(s)||eo(s.min)&&eo(s.max)&&kv(s.max,s.min)||eo(s.min)&&e&&RM(s.min,e)||eo(s.max)&&t&&kv(s.max,t)}function $v({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return vr({max:s!=null&&s.max?to(s.max):void 0,min:s!=null&&s.min?to(s.min):void 0},e?to(e):void 0,t?to(t):void 0)}var Fv=new Re("best_bitrate"),oo=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var Tr=s=>(e,t)=>s*(Number(e.bitrate)-Number(t.bitrate)),Xt=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=Vv()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},uo='Assertion "ABR Tracks is empty array" failed',io=new WeakMap,Mv=new WeakMap,Dv=new WeakMap,ks=(s,e,t,i)=>{var u;let r=[...e].sort(Tr(1)),a=[...t].sort(Tr(1)),n=a.filter(l=>J(l.bitrate)&&J(s.bitrate)?s.bitrate/l.bitrate>i:!0),o=(u=(0,Pe.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1))))!=null?u:(0,Pe.default)(a,-1);return o&&(0,kc.default)(n,o)?o:n.length?(0,Pe.default)(n,-1):(0,Pe.default)(a,0)},Ls=(s,e,t,i)=>{var u;let r=io.get(e);r||(r=[...e].sort(Tr(1)),io.set(e,r));let a=io.get(t);a||(a=[...t].sort(Tr(1)),io.set(t,a));let n=Dv.get(s);n||(n=a.filter(l=>J(l.bitrate)&&J(s.bitrate)?s.bitrate/l.bitrate>i:!0),Dv.set(s,n));let o=(u=(0,Pe.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1))))!=null?u:(0,Pe.default)(a,-1);return o&&(0,kc.default)(n,o)?o:n.length?(0,Pe.default)(n,-1):(0,Pe.default)(a,0)},Cv=s=>"quality"in s,lo=(s,e,t,i)=>{var n;let r=J((n=i==null?void 0:i.last)==null?void 0:n.bitrate)&&J(t==null?void 0:t.bitrate)&&i.last.bitrate<t.bitrate?s.trackCooldownIncreaseQuality:s.trackCooldownDecreaseQuality,a=t&&i&&i.history[t.id]&&Vv()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t!=null&&t.id&&i&&!a&&i.recordSelection(t),a&&(i!=null&&i.last)){let o=i.last;i==null||i.recordSwitch(o);let u=Cv(o)?"video":"audio",l=Cv(o)?o.quality:o.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 Ly=S((pj,ky)=>{"use strict";var LD=me(),$D=Qt(),MD=Fs(),qc=Fc(),Py=LD("".replace),DD=RegExp("^["+qc+"]+"),CD=RegExp("(^|[^"+qc+"])["+qc+"]+$"),Nc=function(s){return function(e){var t=MD($D(e));return s&1&&(t=Py(t,DD,"")),s&2&&(t=Py(t,CD,"$1")),t}};ky.exports={start:Nc(1),end:Nc(2),trim:Nc(3)}});var Cy=S((hj,Dy)=>{"use strict";var BD=fl().PROPER,VD=fe(),$y=Fc(),My="\u200B\x85\u180E";Dy.exports=function(s){return VD(function(){return!!$y[s]()||My[s]()!==My||BD&&$y[s].name!==s})}});var Uc=S((fj,By)=>{"use strict";var _D=Ly().start,OD=Cy();By.exports=OD("trimStart")?function(){return _D(this)}:"".trimStart});var _y=S(()=>{"use strict";var FD=de(),Vy=Uc();FD({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==Vy},{trimLeft:Vy})});var Fy=S(()=>{"use strict";_y();var ND=de(),Oy=Uc();ND({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==Oy},{trimStart:Oy})});var qy=S((vj,Ny)=>{"use strict";Fy();var qD=Wt();Ny.exports=qD("String","trimLeft")});var jy=S((yj,Uy)=>{"use strict";var UD=qy();Uy.exports=UD});var Qy=S((Tj,Hy)=>{"use strict";var jD=jy();Hy.exports=jD});var oT=S(()=>{"use strict"});var uT=S(()=>{"use strict"});var cT=S((oW,lT)=>{"use strict";var hC=Me(),fC=gi(),mC=ye(),bC=mC("match");lT.exports=function(s){var e;return hC(s)&&((e=s[bC])!==void 0?!!e:fC(s)==="RegExp")}});var hT=S((uW,pT)=>{"use strict";var gC=ne(),SC=fe(),dT=gC.RegExp,vC=!SC(function(){var s=!0;try{dT(".","d")}catch(u){s=!1}var e={},t="",i=s?"dgimsy":"gimsy",r=function(u,l){Object.defineProperty(e,u,{get:function(){return t+=l,!0}})},a={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};s&&(a.hasIndices="d");for(var n in a)r(n,a[n]);var o=Object.getOwnPropertyDescriptor(dT.prototype,"flags").get.call(e);return o!==i||t!==i});pT.exports={correct:vC}});var mT=S((lW,fT)=>{"use strict";var yC=mt();fT.exports=function(){var s=yC(this),e="";return s.hasIndices&&(e+="d"),s.global&&(e+="g"),s.ignoreCase&&(e+="i"),s.multiline&&(e+="m"),s.dotAll&&(e+="s"),s.unicode&&(e+="u"),s.unicodeSets&&(e+="v"),s.sticky&&(e+="y"),e}});var ST=S((cW,gT)=>{"use strict";var TC=qe(),IC=rt(),EC=rs(),bT=hT(),xC=mT(),wC=RegExp.prototype;gT.exports=bT.correct?function(s){return s.flags}:function(s){return!bT.correct&&EC(wC,s)&&!IC(s,"flags")?TC(xC,s):s.flags}});var yT=S((dW,vT)=>{"use strict";var Gc=me(),AC=Zi(),RC=Math.floor,Qc=Gc("".charAt),PC=Gc("".replace),Wc=Gc("".slice),kC=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,LC=/\$([$&'`]|\d{1,2})/g;vT.exports=function(s,e,t,i,r,a){var n=t+s.length,o=i.length,u=LC;return r!==void 0&&(r=AC(r),u=kC),PC(a,u,function(l,c){var d;switch(Qc(c,0)){case"$":return"$";case"&":return s;case"`":return Wc(e,0,t);case"'":return Wc(e,n);case"<":d=r[Wc(c,1,-1)];break;default:var f=+c;if(f===0)return l;if(f>o){var p=RC(f/10);return p===0?l:p<=o?i[p-1]===void 0?Qc(c,1):i[p-1]+Qc(c,1):l}d=i[f-1]}return d===void 0?"":d})}});var ET=S(()=>{"use strict";var $C=de(),MC=qe(),Yc=me(),TT=Qt(),DC=oe(),CC=Me(),BC=cT(),Pr=Fs(),VC=as(),_C=ST(),OC=yT(),FC=ye(),NC=it(),qC=FC("replace"),UC=TypeError,zc=Yc("".indexOf),jC=Yc("".replace),IT=Yc("".slice),HC=Math.max;$C({target:"String",proto:!0},{replaceAll:function(e,t){var i=TT(this),r,a,n,o,u,l,c,d,f,p,h=0,m="";if(CC(e)){if(r=BC(e),r&&(a=Pr(TT(_C(e))),!~zc(a,"g")))throw new UC("`.replaceAll` does not allow non-global regexes");if(n=VC(e,qC),n)return MC(n,e,i,t);if(NC&&r)return jC(Pr(i),e,t)}for(o=Pr(i),u=Pr(e),l=DC(t),l||(t=Pr(t)),c=u.length,d=HC(1,c),f=zc(o,u);f!==-1;)p=l?Pr(t(u,f,o)):OC(u,o,f,[],void 0,t),m+=IT(o,h,f)+p,h=f+c,f=f+d>o.length?-1:zc(o,u,f+d);return h<o.length&&(m+=IT(o,h)),m}})});var wT=S((fW,xT)=>{"use strict";oT();uT();ET();var QC=Wt();xT.exports=QC("String","replaceAll")});var RT=S((mW,AT)=>{"use strict";var WC=wT();AT.exports=WC});var kT=S((bW,PT)=>{"use strict";var GC=RT();PT.exports=GC});var $T=S((gW,LT)=>{"use strict";var zC=ls(),YC=Fs(),KC=Qt(),XC=RangeError;LT.exports=function(e){var t=YC(KC(this)),i="",r=zC(e);if(r<0||r===1/0)throw new XC("Wrong number of repetitions");for(;r>0;(r>>>=1)&&(t+=t))r&1&&(i+=t);return i}});var VT=S((SW,BT)=>{"use strict";var CT=me(),JC=el(),MT=Fs(),ZC=$T(),eB=Qt(),tB=CT(ZC),iB=CT("".slice),rB=Math.ceil,DT=function(s){return function(e,t,i){var r=MT(eB(e)),a=JC(t),n=r.length,o=i===void 0?" ":MT(i),u,l;return a<=n||o===""?r:(u=a-n,l=tB(o,rB(u/o.length)),l.length>u&&(l=iB(l,0,u)),s?r+l:l+r)}};BT.exports={start:DT(!1),end:DT(!0)}});var OT=S((vW,_T)=>{"use strict";var sB=yi();_T.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(sB)});var FT=S(()=>{"use strict";var aB=de(),nB=VT().start,oB=OT();aB({target:"String",proto:!0,forced:oB},{padStart:function(e){return nB(this,e,arguments.length>1?arguments[1]:void 0)}})});var qT=S((IW,NT)=>{"use strict";FT();var uB=Wt();NT.exports=uB("String","padStart")});var jT=S((EW,UT)=>{"use strict";var lB=qT();UT.exports=lB});var QT=S((xW,HT)=>{"use strict";var cB=jT();HT.exports=cB});var Wp="2.0.140-dev.86635a70.0";var $e=(r=>(r.STOPPED="stopped",r.READY="ready",r.PLAYING="playing",r.PAUSED="paused",r))($e||{}),At=(y=>(y.MPEG="MPEG",y.DASH="DASH",y.DASH_SEP="DASH_SEP",y.DASH_SEP_VK="DASH_SEP",y.DASH_WEBM="DASH_WEBM",y.DASH_WEBM_AV1="DASH_WEBM_AV1",y.DASH_STREAMS="DASH_STREAMS",y.DASH_WEBM_VK="DASH_WEBM",y.DASH_ONDEMAND="DASH_ONDEMAND",y.DASH_ONDEMAND_VK="DASH_ONDEMAND",y.DASH_LIVE="DASH_LIVE",y.DASH_LIVE_CMAF="DASH_LIVE_CMAF",y.DASH_LIVE_WEBM="DASH_LIVE_WEBM",y.HLS="HLS",y.HLS_ONDEMAND="HLS_ONDEMAND",y.HLS_JS="HLS",y.HLS_FMP4="HLS_FMP4",y.HLS_LIVE="HLS_LIVE",y.HLS_LIVE_CMAF="HLS_LIVE_CMAF",y.WEB_RTC_LIVE="WEB_RTC_LIVE",y))(At||{});var ln=(r=>(r.NOT_AVAILABLE="NOT_AVAILABLE",r.AVAILABLE="AVAILABLE",r.CONNECTING="CONNECTING",r.CONNECTED="CONNECTED",r))(ln||{}),Iu=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.QUIC="quic",i))(Iu||{});var Eu=(n=>(n.NONE="none",n.INLINE="inline",n.FULLSCREEN="fullscreen",n.SECOND_SCREEN="second_screen",n.PIP="pip",n.INVISIBLE="invisible",n))(Eu||{}),cn=(i=>(i.TRAFFIC_SAVING="traffic_saving",i.HIGH_QUALITY="high_quality",i.UNKNOWN="unknown",i))(cn||{});var np=O(Ii(),1),OE=O(De(),1);import{assertNever as fm,assertNonNullable as WA,isNonNullable as Sn,ValueSubject as nl,Subject as GA,Subscription as zA,merge as YA,observableFrom as KA,fromEvent as cm,map as dm,tap as pm,filterChanged as XA,isNullable as ol,ErrorCategory as hm}from"@vkontakte/videoplayer-shared/es2018";var lm=s=>new Promise((e,t)=>{let i=document.createElement("script");i.setAttribute("src",s),i.onload=()=>e(),i.onerror=r=>t(r),document.body.appendChild(i)});var vn=class{constructor(e){this.connection$=new nl(void 0);this.castState$=new nl("NOT_AVAILABLE");this.errorEvent$=new GA;this.realCastState$=new nl("NOT_AVAILABLE");this.subscription=new zA;this.isDestroyed=!1;var a;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=Sn((a=window.chrome)==null?void 0:a.cast),r=!!window.__onGCastApiAvailable;i?this.initializeCastApi():(window.__onGCastApiAvailable=n=>{delete window.__onGCastApiAvailable,n&&!this.isDestroyed&&this.initializeCastApi()},r||lm("https://www.gstatic.com/cv/js/sender/v1/cast_sender.js?loadCastFramework=1").catch(()=>this.errorEvent$.next({id:"ChromecastLoading",category:hm.NETWORK,message:"Script loading failed!"})))}connect(){var e;(e=cast.framework.CastContext.getInstance())==null||e.requestSession()}disconnect(){var e,t;(t=(e=cast.framework.CastContext.getInstance())==null?void 0:e.getCurrentSession())==null||t.endSession(!0)}stopMedia(){return new Promise((e,t)=>{var i,r,a;(a=(r=(i=cast.framework.CastContext.getInstance())==null?void 0:i.getCurrentSession())==null?void 0:r.getMediaSession())==null||a.stop(new chrome.cast.media.StopRequest,e,t)})}toggleConnection(){Sn(this.connection$.getValue())?this.disconnect():this.connect()}setVolume(e){let t=this.connection$.getValue();ol(t)||(t.remotePlayer.volumeLevel=e,t.remotePlayerController.setVolumeLevel())}setMuted(e){let t=this.connection$.getValue();ol(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(cm(i,cast.framework.CastContextEventType.SESSION_STATE_CHANGED).subscribe(r=>{var a,n,o;switch(r.sessionState){case cast.framework.SessionState.SESSION_STARTED:case cast.framework.SessionState.SESSION_STARTING:case cast.framework.SessionState.SESSION_RESUMED:this.contentId=(o=(n=(a=i.getCurrentSession())==null?void 0:a.getMediaSession())==null?void 0:n.media)==null?void 0:o.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 fm(r.sessionState)}})).add(YA(cm(i,cast.framework.CastContextEventType.CAST_STATE_CHANGED).pipe(pm(r=>{this.log({message:`[cast.framework.RemotePlayerEventType.CAST_STATE_CHANGED]: ${JSON.stringify(r)}`})}),dm(r=>r.castState)),KA([i.getCastState()])).pipe(XA(),dm(JA),pm(r=>{this.log({message:`realCastState$: ${r}`})})).subscribe(this.realCastState$)).add(this.realCastState$.subscribe(r=>{var o,u;let a=r==="CONNECTED",n=Sn(this.connection$.getValue());if(a&&!n){let l=i.getCurrentSession();WA(l);let c=l.getCastDevice(),d=(u=(o=l.getMediaSession())==null?void 0:o.media)==null?void 0:u.contentId;(ol(d)||d===this.contentId)&&(this.log({message:"connection created"}),this.connection$.next({remotePlayer:e,remotePlayerController:t,session:l,castDevice:c}))}else!a&&n&&(this.log({message:"connection destroyed"}),this.connection$.next(void 0));this.castState$.next(r==="CONNECTED"?Sn(this.connection$.getValue())?"CONNECTED":"AVAILABLE":r)}))}initializeCastApi(){var r;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(a){return}try{e.setOptions({receiverApplicationId:(r=this.params.receiverApplicationId)!=null?r:t,autoJoinPolicy:i}),this.initListeners()}catch(a){this.errorEvent$.next({id:"ChromecastInitializer",category:hm.EXTERNAL_API,message:"[initializeCastApi] failed",thrown:a})}}},JA=s=>{switch(s){case cast.framework.CastState.NO_DEVICES_AVAILABLE:return"NOT_AVAILABLE";case cast.framework.CastState.NOT_CONNECTED:return"AVAILABLE";case cast.framework.CastState.CONNECTING:return"CONNECTING";case cast.framework.CastState.CONNECTED:return"CONNECTED";default:return fm(s)}};var Jd=O(De(),1),vE=O(nr(),1),yE=O(kl(),1);var ov=O(Hn(),1);import{assertNever as WS}from"@vkontakte/videoplayer-shared/es2018";var ue=(s,e=0,t=0)=>{switch(t){case 0:return s.replace("_offset_p",e===0?"":"_"+e.toFixed(0));case 1:{if(e===0)return s;let i=new URL(s);return i.searchParams.append("playback_shift",e.toFixed(0)),i.toString()}case 2:{let i=new URL(s);return!i.searchParams.get("offset_p")&&e===0?s:(i.searchParams.set("offset_p",e.toFixed(0)),i.toString())}default:WS(t)}return s},zt=(s,e)=>{var t;switch(e){case 0:return NaN;case 1:{let i=new URL(s);return Number(i.searchParams.get("playback_shift"))}case 2:{let i=new URL(s);return Number((t=i.searchParams.get("offset_p"))!=null?t:0)}default:WS(e)}};var $=(s,e,t=!1)=>{let i=s.getTransition();(t||!i||i.to===e)&&s.setState(e)};import{isNonNullable as O$,Subject as Qn,merge as GS}from"@vkontakte/videoplayer-shared/es2018";var j=class{constructor(e){this.transitionStarted$=new Qn;this.transitionEnded$=new Qn;this.transitionUpdated$=new Qn;this.forceChanged$=new Qn;this.stateChangeStarted$=GS(this.transitionStarted$,this.transitionUpdated$);this.stateChangeEnded$=GS(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||O$(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}};import{assertNever as ev}from"@vkontakte/videoplayer-shared/es2018";var Wn=class{constructor(){this._isMiuiBrowser=!1}get current(){return this._current}get isChrome(){return this.current==="Chrome"}get isFirefox(){return this.current==="Firefox"}get isSafari(){return this.current==="Safari"}get isOpera(){return this.current==="Opera"}get isEdge(){return this.current==="Edge"}get isYandex(){return this.current==="Yandex"}get isSamsungBrowser(){return this.current==="SamsungBrowser"}get currentVersion(){return this._current_version}get chromeVersion(){return this._chromeVersion}get firefoxVersion(){return this._firefoxVersion}get safariVersion(){return this._safariVersion}get operaVersion(){return this._operaVersion}get edgeVersion(){return this._edgeVersion}get yandexVersion(){return this._yandexVersion}get isMiuiBrowser(){return this._isMiuiBrowser}detect(){let{userAgent:e}=navigator;try{let t=/yabrowser/i.test(e)?"Yandex":void 0,i=/samsungbrowser/i.test(e)?"SamsungBrowser":void 0,r=/chrome|crios/i.test(e)?"Chrome":void 0,a=/chromium/i.test(e)?"Chromium":void 0,n=/firefox|fxios/i.test(e)?"Firefox":void 0,o=/webkit|safari|khtml/i.test(e)?"Safari":void 0,u=/opr\//i.test(e)?"Opera":void 0,l=/edg/i.test(e)?"Edge":void 0;this._isMiuiBrowser=/(XiaoMi)|(MiuiBrowser)/i.test(e),this._current=t||i||n||u||l||r||a||o||"Rest"}catch(t){console.error(t)}this.isChrome&&this.detectChromeVersion(),this.isFirefox&&this.detectFirefoxVersion(),this.isSafari&&this.detectSafariVersion(),this.isOpera&&this.detectOperaVersion(),this.isEdge&&this.detectEdgeVersion(),this.isYandex&&this.detectYandexVersion()}detectVersion(e){try{let{userAgent:t}=window.navigator,i=t.match(e);if(!i)return;let r=i[1],a=parseInt(r,10);if(!isNaN(a))return this._current_version=a,a}catch(t){console.error(t)}}detectChromeVersion(){this._chromeVersion=this.detectVersion(/Chrome\/(\d+\.\d+)/)}detectFirefoxVersion(){this._firefoxVersion=this.detectVersion(/Firefox\/(\d+\.\d+)/)}detectSafariVersion(){this._safariVersion=this.detectVersion(/Version\/(\d+)/)}detectOperaVersion(){this._operaVersion=this.detectVersion(/OPR\/(\d+\.\d+)/)}detectEdgeVersion(){this._edgeVersion=this.detectVersion(/Edg\/(\d+\.\d+)/)}detectYandexVersion(){this._yandexVersion=this.detectVersion(/YaBrowser\/(\d+\.\d+\.\d+)/)}};var zS=O(De(),1);var Es=()=>{var s,e;return/Mobile|mini|Fennec|Android|iP(ad|od|hone)/.test((s=navigator.appVersion)!=null?s:navigator.userAgent)||((e=navigator==null?void 0:navigator.userAgentData)==null?void 0:e.mobile)};var Gn=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,zS.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=Es()}catch(t){console.error(t)}this.detectDevice(e),this.detectHighEntropyValues(),this.isIOS&&this.detectIOSVersion()}async detectHighEntropyValues(){let{userAgentData:e}=navigator;if(e!=null&&e.getHighEntropyValues){let t=await e.getHighEntropyValues(["architecture","bitness","brands","mobile","platform","formFactor","model","platformVersion","wow64"]);this._highEntropyValues=t}}detectDevice(e){try{let t=/android/i.test(e)?"Android":void 0,i=/iphone/i.test(e)?"iPhone":void 0,r=/ipad/i.test(e)?"iPad":void 0,a=/ipod/i.test(e)?"iPod":void 0,n=/mac/i.test(e)?"Mac":void 0,o=/webOS|BlackBerry|IEMobile|Opera Mini/i.test(e)?"RestMobile":void 0;this._current=t||i||r||a||o||n||"Desktop"}catch(t){console.error(t)}}detectIOSVersion(){try{if(this._highEntropyValues.platformVersion){let a=this._highEntropyValues.platformVersion.split(".").slice(0,2).join("."),n=parseFloat(a);this._iosVersion=n;return}let{userAgent:e}=window.navigator,t=e.match(/OS (\d+(_\d+)?)/i);if(!t)return;let i=t[1].replace(/_/g,".");if(!i)return;let r=parseFloat(i);if(isNaN(r))return;this._iosVersion=r}catch(e){console.error(e)}}};var zn=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(){var t;let{maxTouchPoints:e}=navigator;try{this._maxTouchPoints=e!=null?e:0,this._isHdr=!!((t=matchMedia("(dynamic-range: high)"))!=null&&t.matches),this._colorDepth=screen.colorDepth}catch(i){console.error(i)}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(i){console.error(i)}}};var je=()=>window.ManagedMediaSource||window.MediaSource,br=()=>{var s,e;return!!(window.ManagedMediaSource&&((e=(s=window.ManagedSourceBuffer)==null?void 0:s.prototype)!=null&&e.appendBuffer))},YS=()=>{var s,e;return!!(window.MediaSource&&((e=(s=window.SourceBuffer)==null?void 0:s.prototype)!=null&&e.appendBuffer))},Yn=()=>window.ManagedMediaSource?new ManagedMediaSource:new MediaSource;var F$=document.createElement("video"),N$='video/mp4; codecs="avc1.42000a,mp4a.40.2"',q$='video/mp4; codecs="hev1.1.6.L93.B0"',KS='video/webm; codecs="vp09.00.10.08"',XS='video/webm; codecs="av01.0.00M.08"',U$='audio/mp4; codecs="mp4a.40.2"',j$='audio/webm; codecs="opus"',JS,H$=async()=>{if(!window.navigator.mediaCapabilities)return;let s={type:"media-source",video:{contentType:"video/webm",width:1280,height:720,bitrate:1e6,framerate:30}},[e,t]=await Promise.all([window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:XS}}),window.navigator.mediaCapabilities.decodingInfo({...s,video:{...s.video,contentType:KS}})]);JS={DASH_WEBM_AV1:e,DASH_WEBM:t}};H$().catch(s=>{console.log(F$),console.error(s)});var Kn=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 JS}get supportedCodecs(){return Object.keys(this._codecs).filter(e=>this._codecs[e])}get nativeHlsSupported(){return this._nativeHlsSupported}detect(){var e,t,i,r,a,n,o,u,l,c,d,f,p,h,m,g,b,v,T,y;this._video=document.createElement("video");try{this._protocols={mms:br(),mse:YS(),hls:!!((t=(e=this._video).canPlayType)!=null&&t.call(e,"application/x-mpegurl")||(r=(i=this._video).canPlayType)!=null&&r.call(i,"vnd.apple.mpegURL")),webrtc:!!window.RTCPeerConnection,ws:!!window.WebSocket},this._containers={mp4:!!((n=(a=this._video).canPlayType)!=null&&n.call(a,"video/mp4")),webm:!!((u=(o=this._video).canPlayType)!=null&&u.call(o,"video/webm")),cmaf:!0};let I=!!((c=(l=je())==null?void 0:l.isTypeSupported)!=null&&c.call(l,N$)),x=!!((f=(d=je())==null?void 0:d.isTypeSupported)!=null&&f.call(d,q$)),L=!!((h=(p=je())==null?void 0:p.isTypeSupported)!=null&&h.call(p,U$));this._codecs={h264:I,h265:x,vp9:!!((g=(m=je())==null?void 0:m.isTypeSupported)!=null&&g.call(m,KS)),av1:!!((v=(b=je())==null?void 0:b.isTypeSupported)!=null&&v.call(b,XS)),aac:L,opus:!!((y=(T=je())==null?void 0:T.isTypeSupported)!=null&&y.call(T,j$)),mpeg:(I||x)&&L},this._nativeHlsSupported=this._protocols.hls&&this._containers.mp4}catch(I){console.error(I)}try{this.destroyVideoElement()}catch(I){console.error("Error destroying video element:",I)}}destroyVideoElement(){var t;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);(t=this._video.parentNode)==null||t.replaceChild(e,this._video),this._video=null}};var ZS="audio/mpeg",Xn=class{supportMp3(){return this._codecs.mp3&&this._containers.mpeg}detect(){var e,t,i,r;this._audio=document.createElement("audio");try{this._containers={mpeg:!!((t=(e=this._audio).canPlayType)!=null&&t.call(e,ZS))},this._codecs={mp3:!!((r=(i=je())==null?void 0:i.isTypeSupported)!=null&&r.call(i,ZS))}}catch(a){console.error(a)}try{this.destroyAudioElement()}catch(a){console.error("Error destroying audio element:",a)}}destroyAudioElement(){var t;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);(t=this._audio.parentNode)==null||t.replaceChild(e,this._audio),this._audio=null}};import{ValueSubject as Q$}from"@vkontakte/videoplayer-shared/es2018";var mc=class{constructor(){this.isInited$=new Q$(!1);this._displayChecker=new zn,this._deviceChecker=new Gn(this._displayChecker),this._browserChecker=new Wn,this._videoChecker=new Kn(this._deviceChecker,this._browserChecker),this._audioChecker=new Xn,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)}},F=new mc;var bc=s=>{let{containers:e,protocols:t,codecs:i,nativeHlsSupported:r}=F.video,a=(i.h264||i.h265)&&i.aac,n=t.mse||t.mms;return s.filter(o=>{switch(o){case"DASH_SEP":return n&&e.mp4&&a;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&&a||e.webm&&(i.vp9||i.av1)&&(i.opus||i.aac));case"DASH_LIVE":return n&&e.mp4&&a;case"DASH_LIVE_CMAF":return n&&e.mp4&&a&&e.cmaf;case"DASH_ONDEMAND":return n&&e.mp4&&a;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 ev(o)}})},gc=s=>{switch(s){case"MPEG":case"DASH":case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":case"HLS":case"HLS_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 ev(s)}},W$=s=>{let t=Object.keys(s).filter(i=>!gc(i));return bc(t).length>0};import{assertNever as gr,assertNonNullable as Pi,debounce as tv,ErrorCategory as iv,fromEvent as ki,isNonNullable as rv,map as sv,merge as av,observableFrom as G$,Subject as z$,Subscription as Sc,timeout as Y$,getHighestQuality as K$}from"@vkontakte/videoplayer-shared/es2018";var X$=5,J$=5,Z$=500,nv=7e3,xs=class{constructor(e){this.subscription=new Sc;this.loadMediaTimeoutSubscription=new Sc;this.videoState=new j("stopped");this.syncPlayback=()=>{let e=this.videoState.getState(),t=this.videoState.getTransition(),i=this.params.desiredState.playbackState.getState(),r=this.params.desiredState.playbackState.getTransition(),a=this.params.desiredState.seekState.getState();if(this.log({message:`[syncPlayback] videoState: ${e}; videoTransition: ${JSON.stringify(t)}; desiredPlaybackState: ${i}; desiredPlaybackStateTransition: ${this.params.desiredState.playbackState.getTransition()}; seekState: ${JSON.stringify(a)};`}),i==="stopped"){e!=="stopped"&&(this.videoState.startTransitionTo("stopped"),this.stop());return}if(!t){if((r==null?void 0:r.to)!=="paused"&&a.state==="requested"&&e!=="stopped"){this.seek(a.position/1e3);return}switch(i){case"ready":{switch(e){case"playing":case"paused":case"ready":break;case"stopped":this.videoState.startTransitionTo("ready"),this.prepare();break;default:gr(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:gr(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:gr(e)}break}default:gr(i)}}};this.params=e,this.log=this.params.dependencies.logger.createComponentLog("ChromecastProvider"),this.log({message:`constructor, format: ${e.format}`}),this.params.output.isLive$.next(gc(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 Sc;this.subscription.add(e),this.subscription.add(av(this.videoState.stateChangeStarted$.pipe(sv(r=>`stateChangeStarted$ ${JSON.stringify(r)}`)),this.videoState.stateChangeEnded$.pipe(sv(r=>`stateChangeEnded$ ${JSON.stringify(r)}`))).subscribe(r=>this.log({message:`[videoState] ${r}`})));let t=(r,a)=>this.subscription.add(r.subscribe(a));if(this.params.output.isLive$.getValue())this.params.output.position$.next(0),this.params.output.duration$.next(0);else{let r=new z$;e.add(r.pipe(tv(Z$)).subscribe(()=>{this.params.output.seekedEvent$.next()}));let a=NaN;e.add(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.CURRENT_TIME_CHANGED).subscribe(n=>{this.logRemoteEvent(n);let o=n.value;this.params.output.position$.next(o),(this.params.desiredState.seekState.getState().state==="applying"||Math.abs(o-a)>X$)&&r.next(o),a=o})),e.add(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.DURATION_CHANGED).subscribe(n=>{this.logRemoteEvent(n),this.params.output.duration$.next(n.value)}))}t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MEDIA_LOADED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemoteReady():(this.handleRemoteStop(),e.unsubscribe())}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_PAUSED_CHANGED),r=>{this.logRemoteEvent(r),r.value?this.handleRemotePause():this.handleRemotePlay()}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.PLAYER_STATE_CHANGED),r=>{this.logRemoteEvent(r);let{remotePlayer:a}=this.params.connection,n=r.value,o=this.params.output.isBuffering$.getValue(),u=n===chrome.cast.media.PlayerState.BUFFERING;switch(o!==u&&this.params.output.isBuffering$.next(u),n){case chrome.cast.media.PlayerState.IDLE:!this.params.output.isLive$.getValue()&&a.duration-a.currentTime<J$&&this.params.output.endedEvent$.next(),this.handleRemoteStop(),$(this.params.desiredState.playbackState,"stopped");break;case chrome.cast.media.PlayerState.PAUSED:{this.handleRemotePause();break}case chrome.cast.media.PlayerState.PLAYING:this.handleRemotePlay();break;case chrome.cast.media.PlayerState.BUFFERING:break;default:gr(n)}}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.VOLUME_LEVEL_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({volume:r.value})}),t(ki(this.params.connection.remotePlayerController,cast.framework.RemotePlayerEventType.IS_MUTED_CHANGED),r=>{this.logRemoteEvent(r),this.handleRemoteVolumeChange({muted:r.value})});let i=av(this.params.desiredState.playbackState.stateChangeStarted$,this.params.desiredState.seekState.stateChangeEnded$,this.videoState.stateChangeEnded$,G$(["init"])).pipe(tv(0));t(i,this.syncPlayback)}restoreSession(e){this.log({message:"restoreSession"});let{remotePlayer:t}=this.params.connection;if(e.playerState!==chrome.cast.media.PlayerState.IDLE){t.isPaused?(this.videoState.setState("paused"),$(this.params.desiredState.playbackState,"paused")):(this.videoState.setState("playing"),$(this.params.desiredState.playbackState,"playing"));let i=this.params.output.isLive$.getValue();this.params.output.duration$.next(i?0:t.duration),this.params.output.position$.next(i?0:t.currentTime),this.params.desiredState.seekState.setState({state:"none"})}}prepare(){let e=this.params.format;this.log({message:`[prepare] format: ${e}`});let t=this.createMediaInfo(e),i=this.createLoadRequest(t);this.loadMedia(i)}handleRemotePause(){let e=this.videoState.getState(),t=this.videoState.getTransition();((t==null?void 0:t.to)==="paused"||e==="playing")&&(this.videoState.setState("paused"),$(this.params.desiredState.playbackState,"paused"))}handleRemotePlay(){let e=this.videoState.getState(),t=this.videoState.getTransition();((t==null?void 0:t.to)==="playing"||e==="paused")&&(this.videoState.setState("playing"),$(this.params.desiredState.playbackState,"playing"))}handleRemoteReady(){var t;let e=this.videoState.getTransition();(e==null?void 0:e.to)==="ready"&&this.videoState.setState("ready"),((t=this.params.desiredState.playbackState.getTransition())==null?void 0:t.to)==="ready"&&$(this.params.desiredState.playbackState,"ready")}handleRemoteStop(){this.videoState.getState()!=="stopped"&&this.videoState.setState("stopped")}handleRemoteVolumeChange(e){var r,a;let t=this.params.output.volume$.getValue(),i={volume:(r=e.volume)!=null?r:t.volume,muted:(a=e.muted)!=null?a: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){var l;let t=this.params.source,i,r,a;switch(e){case"MPEG":{let c=t[e];Pi(c);let d=K$(Object.keys(c));Pi(d);let f=c[d];Pi(f),i=f,r="video/mp4",a=chrome.cast.media.StreamType.BUFFERED;break}case"HLS":case"HLS_FMP4":case"HLS_ONDEMAND":{let c=t[e];Pi(c),i=c.url,r="application/x-mpegurl",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_SEP":case"DASH_ONDEMAND":case"DASH_WEBM":case"DASH_WEBM_AV1":case"DASH_STREAMS":{let c=t[e];Pi(c),i=c.url,r="application/dash+xml",a=chrome.cast.media.StreamType.BUFFERED;break}case"DASH_LIVE_CMAF":{let c=t[e];Pi(c),i=c.url,r="application/dash+xml",a=chrome.cast.media.StreamType.LIVE;break}case"HLS_LIVE":case"HLS_LIVE_CMAF":{let c=t[e];Pi(c),i=ue(c.url),r="application/x-mpegurl",a=chrome.cast.media.StreamType.LIVE;break}case"DASH_LIVE":case"WEB_RTC_LIVE":{let c="Unsupported format for Chromecast",d=new Error(c);throw this.params.output.error$.next({id:"ChromecastProvider.createMediaInfo()",category:iv.VIDEO_PIPELINE,message:c,thrown:d}),d}case"DASH":case"DASH_LIVE_WEBM":throw new Error(`${e} is no longer supported`);default:return gr(e)}let n=new chrome.cast.media.MediaInfo((l=this.params.meta.videoId)!=null?l:i,r);n.contentUrl=i,n.streamType=a,n.metadata=new chrome.cast.media.GenericMediaMetadata;let{title:o,subtitle:u}=this.params.meta;return rv(o)&&(n.metadata.title=o),rv(u)&&(n.metadata.subtitle=u),n}createLoadRequest(e){let t=new chrome.cast.media.LoadRequest(e);t.autoplay=!1;let i=this.params.desiredState.seekState.getState();return i.state==="applying"||i.state==="requested"?t.currentTime=this.params.output.isLive$.getValue()?0:i.position/1e3:t.currentTime=0,t}loadMedia(e){let t=this.params.connection.session.loadMedia(e),i=new Promise((r,a)=>{this.loadMediaTimeoutSubscription.add(Y$(nv).subscribe(()=>a(`timeout(${nv})`)))});(0,ov.default)(Promise.race([t,i]).then(()=>{this.log({message:`[loadMedia] completed, format: ${this.params.format}`}),this.params.desiredState.seekState.getState().state==="applying"&&this.params.output.seekedEvent$.next(),this.handleRemoteReady()},r=>{let a=`[prepare] loadMedia failed, format: ${this.params.format}, reason: ${r}`;this.log({message:a}),this.params.output.error$.next({id:"ChromecastProvider.loadMedia",category:iv.VIDEO_PIPELINE,message:a,thrown:r})}),()=>{this.loadMediaTimeoutSubscription.unsubscribe()})}logRemoteEvent(e){this.log({message:`[remoteEvent] ${JSON.stringify(e)}`})}};var Vc=O(De(),1);import{clearVideoElement as lv}from"@vkontakte/videoplayer-shared/es2018";import{clearVideoElement as eM}from"@vkontakte/videoplayer-shared/es2018";var uv=s=>{try{s.pause(),s.playbackRate=0,eM(s),s.remove()}catch(e){console.error(e)}};import{fromEvent as tM,Subscription as iM}from"@vkontakte/videoplayer-shared/es2018";var vc=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)}},yc=window.WeakMap?new WeakMap:new vc,Tc=window.WeakMap?new WeakMap:new Map,rM=(s,e=20)=>{let t=0;return tM(s,"ratechange").subscribe(i=>{t++,t>=e&&(s.currentTime=s.currentTime,t=0)})},Ce=(s,{audioVideoSyncRate:e,disableYandexPiP:t})=>{let i=s.querySelector("video"),r=!!i;i?lv(i):(i=document.createElement("video"),s.appendChild(i)),yc.set(i,r);let a=new iM;return a.add(rM(i,e)),Tc.set(i,a),i.setAttribute("crossorigin","anonymous"),i.setAttribute("playsinline","playsinline"),t&&i.setAttribute("x-yandex-pip","false"),i.controls=!1,i.setAttribute("poster","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="),i},Be=s=>{let e=Tc.get(s);e==null||e.unsubscribe(),Tc.delete(s);let t=yc.get(s);yc.delete(s),t?lv(s):uv(s)};var Ec=O(Ii(),1);import{assertNonNullable as As,isNonNullable as gt,isNullable as nM,fromEvent as Sr,merge as cv,observableFrom as dv,filterChanged as pv,map as Rs,Subject as hv,Subscription as oM,ValueSubject as uM,ErrorCategory as lM}from"@vkontakte/videoplayer-shared/es2018";import{isNonNullable as Ic,isNullable as sM,Subscription as aM}from"@vkontakte/videoplayer-shared/es2018";var Jn=(s,e,t,{equal:i=(n,o)=>n===o,changed$:r,onError:a}={})=>{let n=s.getState(),o=e(),u=sM(r),l=new aM;return r&&l.add(r.subscribe(c=>{let d=s.getState();i(c,d)&&s.setState(c)},a)),i(o,n)||(t(n),u&&s.setState(n)),l.add(s.stateChangeStarted$.subscribe(c=>{t(c.to),u&&s.setState(c.to)},a)),l},bt=(s,e,t)=>Jn(e,()=>s.loop,i=>{Ic(i)&&(s.loop=i)},{onError:t}),Ve=(s,e,t,i)=>Jn(e,()=>({muted:s.muted,volume:s.volume}),r=>{Ic(r)&&(s.muted=r.muted,s.volume=r.volume)},{equal:(r,a)=>r===a||(r==null?void 0:r.muted)===(a==null?void 0:a.muted)&&(r==null?void 0:r.volume)===(a==null?void 0:a.volume),changed$:t,onError:i}),ze=(s,e,t,i)=>Jn(e,()=>s.playbackRate,r=>{Ic(r)&&(s.playbackRate=r)},{changed$:t,onError:i}),ws=Jn;var cM=s=>["__",s.language,s.label].join("|"),dM=(s,e)=>{if(s.id===e)return!0;let[t,i,r]=e.split("|");return s.language===i&&s.label===r},xc=class s{constructor(e){this.available$=new hv;this.current$=new uM(void 0);this.error$=new hv;this.subscription=new oM;this.externalTracks=new Map;this.internalTracks=new Map;this.baseURL=e}connect(e,t,i){this.video=e,this.cueSettings=t.textTrackCuesSettings,this.subscribe();let r=a=>{this.error$.next({id:"TextTracksManager",category:lM.WTF,message:"Generic HtmlVideoTextTrackManager error",thrown:a})};this.subscription.add(this.available$.subscribe(i.availableTextTracks$)),this.subscription.add(this.current$.subscribe(i.currentTextTrack$)),this.subscription.add(this.error$.subscribe(i.error$)),this.subscription.add(ws(t.internalTextTracks,()=>(0,Ec.default)(this.internalTracks),a=>{gt(a)&&this.setInternal(a)},{equal:(a,n)=>gt(a)&&gt(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe(Rs(a=>a.filter(({type:n})=>n==="internal"))),onError:r})),this.subscription.add(ws(t.externalTextTracks,()=>(0,Ec.default)(this.externalTracks),a=>{gt(a)&&this.setExternal(a)},{equal:(a,n)=>gt(a)&&gt(n)&&a.length===n.length&&a.every(({id:o},u)=>o===n[u].id),changed$:this.available$.pipe(Rs(a=>a.filter(({type:n})=>n==="external"))),onError:r})),this.subscription.add(ws(t.currentTextTrack,()=>{if(this.video)return;let a=this.htmlTextTracksAsArray().find(({mode:n})=>n==="showing");return a&&this.htmlTextTrackToITextTrack(a).id},a=>this.select(a),{changed$:this.current$,onError:r})),this.subscription.add(ws(t.textTrackCuesSettings,()=>({}),()=>{if(this.video)for(let a of this.htmlTextTracksAsArray())this.applyCueSettings(a.cues),this.applyCueSettings(a.activeCues)}))}subscribe(){As(this.video);let{textTracks:e}=this.video;this.subscription.add(Sr(e,"addtrack").subscribe(()=>{let i=this.current$.getValue();i&&this.select(i)})),this.subscription.add(cv(Sr(e,"addtrack"),Sr(e,"removetrack"),dv(["init"])).pipe(Rs(()=>this.htmlTextTracksAsArray().map(i=>this.htmlTextTrackToITextTrack(i))),pv((i,r)=>i.length===r.length&&i.every(({id:a},n)=>a===r[n].id))).subscribe(this.available$)),this.subscription.add(cv(Sr(e,"change"),dv(["init"])).pipe(Rs(()=>this.htmlTextTracksAsArray().find(({mode:i})=>i==="showing")),Rs(i=>i&&this.htmlTextTrackToITextTrack(i).id),pv()).subscribe(this.current$));let t=i=>{var r,a;return this.applyCueSettings((a=(r=i.target)==null?void 0:r.activeCues)!=null?a:null)};this.subscription.add(Sr(e,"addtrack").subscribe(i=>{var a,n;(a=i.track)==null||a.addEventListener("cuechange",t);let r=o=>{var l,c,d,f,p;let u=(c=(l=o.target)==null?void 0:l.cues)!=null?c:null;u&&u.length&&(this.applyCueSettings((f=(d=o.target)==null?void 0:d.cues)!=null?f:null),(p=o.target)==null||p.removeEventListener("cuechange",r))};(n=i.track)==null||n.addEventListener("cuechange",r)})),this.subscription.add(Sr(e,"removetrack").subscribe(i=>{var r;(r=i.track)==null||r.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;gt(t.align)&&(r.align=t.align),gt(t.position)&&(r.position=t.position),gt(t.size)&&(r.size=t.size),gt(t.line)&&(r.line=t.line)}}htmlTextTracksAsArray(e=!1){As(this.video);let t=[...this.video.textTracks];return e?t:t.filter(s.isHealthyTrack)}htmlTextTrackToITextTrack(e){var o,u,l,c,d;let{language:t,label:i}=e,r=e.id?e.id:cM(e),a=this.externalTracks.has(r),n=(l=a?(o=this.externalTracks.get(r))==null?void 0:o.isAuto:(u=this.internalTracks.get(r))==null?void 0:u.isAuto)!=null?l:r.includes("auto");return a?{id:r,type:"external",isAuto:n,language:t,label:i,url:(c=this.externalTracks.get(r))==null?void 0:c.url}:{id:r,type:"internal",isAuto:n,language:t,label:i,url:(d=this.internalTracks.get(r))==null?void 0:d.url}}static isHealthyTrack(e){return!(e.kind==="metadata"||e.groupId||e.id===""&&e.label===""&&e.language==="")}setExternal(e){this.internalTracks.size>0&&Array.from(this.internalTracks).forEach(([,t])=>this.detach(t)),e.filter(({id:t})=>!this.externalTracks.has(t)).forEach(t=>this.attach(t)),Array.from(this.externalTracks).filter(([t])=>!e.find(i=>i.id===t)).forEach(([,t])=>this.detach(t))}setInternal(e){let t=[...this.externalTracks];e.filter(({id:i,language:r,isAuto:a})=>!this.internalTracks.has(i)&&!t.some(([,n])=>n.language===r&&n.isAuto===a)).forEach(i=>this.attach(i)),Array.from(this.internalTracks).filter(([i])=>!e.find(r=>r.id===i)).forEach(([,i])=>this.detach(i))}select(e){As(this.video);for(let t of this.htmlTextTracksAsArray(!0))t.mode="showing";for(let t of this.htmlTextTracksAsArray(!0))(nM(e)||!dM(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){As(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){As(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)}},Ye=xc;var Li=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 fv=s=>{let e=s;for(;!(e instanceof Document)&&!(e instanceof ShadowRoot)&&e!==null;)e=e==null?void 0:e.parentNode;return e!=null?e:void 0},wc=s=>{let e=fv(s);return!!(e&&e.fullscreenElement&&e.fullscreenElement===s)},mv=s=>{let e=fv(s);return!!(e&&e.pictureInPictureElement&&e.pictureInPictureElement===s)};import{fromEvent as we,map as St,merge as Zn,filterChanged as gv,isNonNullable as Sv,Subject as hM,filter as Ac,mapTo as Rc,combine as fM,once as mM,shareReplay as Ae,throttle as bM,ErrorCategory as gM,ValueSubject as vv,Subscription as SM}from"@vkontakte/videoplayer-shared/es2018";var pM=3,bv=(s,e,t=pM)=>{let i=0,r=0;for(let a=0;a<s.length;a++){let n=s.start(a),o=s.end(a);if(n<=e&&e<=o){if(i=n,r=o,!t)return{from:i,to:r};for(let u=a-1;u>=0;u--)s.end(u)+t>=i&&(i=s.start(u));for(let u=a+1;u<s.length;u++)s.start(u)-t<=r&&(r=s.end(u))}}return{from:i,to:r}};var _e=s=>{let e=P=>we(s,P).pipe(Rc(void 0),Ae(1)),t=new SM,i=()=>t.unsubscribe(),r=Zn(we(s,"progress"),we(s,"timeupdate")).pipe(St(()=>bv(s.buffered,s.currentTime)),Ae(1)),a=F.browser.isSafari?fM({play:e("play").pipe(mM()),playing:e("playing")}).pipe(Rc(void 0),Ae(1)):e("playing"),n=we(s,"volumechange").pipe(St(()=>({muted:s.muted,volume:s.volume})),Ae(1)),o=we(s,"ratechange").pipe(St(()=>s.playbackRate),Ae(1)),u=we(s,"error").pipe(Ac(()=>!!(s.error||s.played.length)),St(()=>{var V;let P=s.error;return{id:P?`MediaError#${P.code}`:"HtmlVideoError",category:gM.VIDEO_PIPELINE,message:P?P.message:"Error event from HTML video element",thrown:(V=s.error)!=null?V:void 0}}),Ae(1)),l=we(s,"timeupdate").pipe(St(()=>s.currentTime),Ae(1)),c=["waiting","seeking","seeked","timeupdate"],d=new hM,f=.3,p;t.add(Zn(...c.map(P=>we(s,P))).subscribe(P=>{let V=s.currentTime;s.loop&&Sv(p)&&Sv(V)&&p>=s.duration-f&&V<=f&&d.next(p),p=V}));let h=e("pause").pipe(Ac(()=>!s.error&&p!==s.duration),Ae(1)),m=we(s,"enterpictureinpicture").pipe(Ae(1)),g=we(s,"leavepictureinpicture").pipe(Ae(1)),b=new vv(mv(s));t.add(m.subscribe(()=>b.next(!0))),t.add(g.subscribe(()=>b.next(!1)));let v=new vv(wc(s)),T=we(s,"fullscreenchange").pipe(Ae(1));t.add(T.pipe(St(()=>wc(s))).subscribe(v));let y=.1,I=1e3,x=we(s,"timeupdate").pipe(St(P=>s.duration-s.currentTime<y),gv(),Ae(1)),L=Zn(x.pipe(Ac(P=>!s.loop&&P)),we(s,"ended")).pipe(bM(I),Rc(void 0),Ae(1)),R=Zn(...["waiting","pause","canplay","play","canplaythrough","playing","seeking","seeked","ended"].map(P=>we(s,P)),x.pipe(St(P=>({type:P?"ended":"unknown"})))).pipe(St(P=>F.browser.isFirefox&&P.type==="ended"?s.readyState<2:s.readyState<3),gv(),Ae(1));return{playing$:a,pause$:h,canplay$:e("canplay"),ended$:L,looped$:d,error$:u,seeked$:e("seeked"),seeking$:e("seeking"),progress$:e("progress"),loadStart$:e("loadstart"),loadedMetadata$:e("loadedmetadata"),loadedData$:e("loadeddata"),timeUpdate$:l,durationChange$:we(s,"durationchange").pipe(St(()=>s.duration),Ae(1)),isBuffering$:R,currentBuffer$:r,volumeState$:n,playbackRateState$:o,inPiP$:b,inFullscreen$:v,enterPip$:m,leavePip$:g,destroy:i}};import{VideoQuality as Yt}from"@vkontakte/videoplayer-shared/es2018";var Kt=s=>{switch(s){case"mobile":return Yt.Q_144P;case"lowest":return Yt.Q_240P;case"low":return Yt.Q_360P;case"sd":case"medium":return Yt.Q_480P;case"hd":case"high":return Yt.Q_720P;case"fullhd":case"full":return Yt.Q_1080P;case"quadhd":case"quad":return Yt.Q_1440P;case"ultrahd":case"ultra":return Yt.Q_2160P}};var Pe=O(at(),1),kc=O(De(),1),Mi=O(nr(),1);import{isNonNullable as J,isNullable as ro,now as Vv,isHigher as so,isHigherOrEqual as $i,isInvariantQuality as ao,isLowerOrEqual as yr,videoSizeToQuality as _v,assertNotEmptyArray as no,assertNonNullable as Ov}from"@vkontakte/videoplayer-shared/es2018";var Pc=!1,Lt={},Av=s=>{Pc=s},Rv=()=>{Lt={}},Pv=s=>{s(Lt)},Ps=(s,e)=>{var t;Pc&&(Lt.meta=(t=Lt.meta)!=null?t:{},Lt.meta[s]=e)},Re=class{constructor(e){this.name=e}next(e){var i,r;if(!Pc)return;Lt.series=(i=Lt.series)!=null?i:{};let t=(r=Lt.series[this.name])!=null?r:[];t.push([Date.now(),e]),Lt.series[this.name]=t}};import{isHigher as RM,isHigherOrEqual as hU,isLower as kv,isLowerOrEqual as fU,isNonNullable as eo,isNullable as PM,videoHeightToQuality as to}from"@vkontakte/videoplayer-shared/es2018";function Lv(s,e,t){return!s.max&&s.min===e?"high_quality":!s.min&&s.max===t?"traffic_saving":"unknown"}function vr(s,e,t){return PM(s)||eo(s.min)&&eo(s.max)&&kv(s.max,s.min)||eo(s.min)&&e&&RM(s.min,e)||eo(s.max)&&t&&kv(s.max,t)}function $v({limits:s,highestAvailableHeight:e,lowestAvailableHeight:t}){return vr({max:s!=null&&s.max?to(s.max):void 0,min:s!=null&&s.min?to(s.min):void 0},e?to(e):void 0,t?to(t):void 0)}var Fv=new Re("best_bitrate"),oo=(s,e,t)=>(e-t)*Math.pow(2,-10*s)+t;var Tr=s=>(e,t)=>s*(Number(e.bitrate)-Number(t.bitrate)),Xt=class{constructor(){this.history={}}recordSelection(e){this.history[e.id]=Vv()}recordSwitch(e){this.last=e}clear(){this.last=void 0,this.history={}}},uo='Assertion "ABR Tracks is empty array" failed',io=new WeakMap,Mv=new WeakMap,Dv=new WeakMap,ks=(s,e,t,i)=>{var u;let r=[...e].sort(Tr(1)),a=[...t].sort(Tr(1)),n=a.filter(l=>J(l.bitrate)&&J(s.bitrate)?s.bitrate/l.bitrate>i:!0),o=(u=(0,Pe.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1))))!=null?u:(0,Pe.default)(a,-1);return o&&(0,kc.default)(n,o)?o:n.length?(0,Pe.default)(n,-1):(0,Pe.default)(a,0)},Ls=(s,e,t,i)=>{var u;let r=io.get(e);r||(r=[...e].sort(Tr(1)),io.set(e,r));let a=io.get(t);a||(a=[...t].sort(Tr(1)),io.set(t,a));let n=Dv.get(s);n||(n=a.filter(l=>J(l.bitrate)&&J(s.bitrate)?s.bitrate/l.bitrate>i:!0),Dv.set(s,n));let o=(u=(0,Pe.default)(a,Math.round(a.length*r.indexOf(s)/(r.length+1))))!=null?u:(0,Pe.default)(a,-1);return o&&(0,kc.default)(n,o)?o:n.length?(0,Pe.default)(n,-1):(0,Pe.default)(a,0)},Cv=s=>"quality"in s,lo=(s,e,t,i)=>{var n;let r=J((n=i==null?void 0:i.last)==null?void 0:n.bitrate)&&J(t==null?void 0:t.bitrate)&&i.last.bitrate<t.bitrate?s.trackCooldownIncreaseQuality:s.trackCooldownDecreaseQuality,a=t&&i&&i.history[t.id]&&Vv()-i.history[t.id]<=r&&(!i.last||t.id!==i.last.id);if(t!=null&&t.id&&i&&!a&&i.recordSelection(t),a&&(i!=null&&i.last)){let o=i.last;i==null||i.recordSwitch(o);let u=Cv(o)?"video":"audio",l=Cv(o)?o.quality:o.bitrate;return e({message:`
8
8
  [last ${u} selected] ${l}
9
9
  `}),o}return i==null||i.recordSwitch(t),t},kM=(s,e)=>Math.log(e)/Math.log(s),Nv=({tuning:s,container:e,limits:t,panelSize:i})=>{let r=s.containerSizeFactor;if(i)return{containerSizeLimit:i,containerSizeFactor:r};if(s.usePixelRatio&&F.display.pixelRatio){let a=F.display.pixelRatio;if(s.pixelRatioMultiplier)r*=s.pixelRatioMultiplier*(a-1)+1;else{let n=s.pixelRatioLogBase,[o=0,u=0,l=0]=s.pixelRatioLogCoefficients,c=kM(n,o*a+u)+l;Number.isFinite(c)&&(r*=c)}}return J(t==null?void 0:t.min)&&$i(t.min,s.highQualityLimit)&&(r*=2),{containerSizeLimit:s.limitByContainer&&e&&e.width>0&&e.height>0?{width:e.width*r,height:e.height*r}:void 0,containerSizeFactor:r}},Bv=new WeakMap,vt=(s,{container:e,estimatedThroughput:t,tuning:i,limits:r,reserve:a=0,forwardBufferHealth:n,playbackRate:o,current:u,history:l,visible:c,droppedVideoMaxQualityLimit:d,stallsVideoMaxQualityLimit:f,stallsPredictedThroughput:p,abrLogger:h,panelSize:m})=>{var _,X,Z,E,k;no(s,uo);let{containerSizeFactor:g,containerSizeLimit:b}=Nv({container:e,tuning:i,limits:r,panelSize:m}),v=i.considerPlaybackRate&&J(o)?o:1,T=Bv.get(s);T||(T=s.filter(w=>!ao(w.quality)).sort((w,A)=>so(w.quality,A.quality)?-1:1),Bv.set(s,T));let y=(_=(0,Pe.default)(T,-1))==null?void 0:_.quality,I=(X=(0,Pe.default)(T,0))==null?void 0:X.quality,x=vr(r,I,y),L=v*oo(n!=null?n:.5,i.bitrateFactorAtEmptyBuffer,i.bitrateFactorAtFullBuffer),M={},R=null;for(let w of T){let A=!0;if(b)if(w.size)A=w.size.width<=b.width&&w.size.height<=b.height;else{let Fe=b&&_v(b);A=Fe?yr(w.quality,Fe):!0}if(!A){M[w.quality]="FitsContainer";continue}let B=p||t,G=J(B)&&isFinite(B)&&J(w.bitrate)?B-a>=w.bitrate*L:!0,ct=(r==null?void 0:r.min)===w.quality;if(!G&&!ct){M[w.quality]="FitsThroughput";continue}if(i.lazyQualitySwitch&&J(i.minBufferToSwitchUp)&&u&&!ao(u.quality)&&(n!=null?n:0)<i.minBufferToSwitchUp&&so(w.quality,u.quality)){M[w.quality]="Buffer";continue}if(!!d&&$i(w.quality,d)&&!ct){M[w.quality]="DroppedFramesLimit";continue}if(!!f&&$i(w.quality,f)&&!ct){M[w.quality]="StallsLimit";continue}let Se=x||(ro(r==null?void 0:r.max)||yr(w.quality,r.max))&&(ro(r==null?void 0:r.min)||$i(w.quality,r.min)),ve=J(c)&&!c?yr(w.quality,i.backgroundVideoQualityLimit):!0;if(!Se||!ve){M[w.quality]="FitsQualityLimits";continue}R||(R=w)}R&&R.bitrate&&Fv.next(R.bitrate);let P=(Z=R!=null?R:(0,Pe.default)(T,-1))!=null?Z:s[0],V=l==null?void 0:l.last,D=lo(i,h,P,l);return J(l)&&D.quality!==(V==null?void 0:V.quality)&&h({message:`
10
10
  [VIDEO TRACKS ABR]