@vkontakte/videoplayer-statistics 1.0.51-dev.790f01a4.0 → 1.0.51-dev.9505da81.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es2015.cjs.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @vkontakte/videoplayer-statistics v1.0.51-dev.790f01a4.0
3
- * Fri, 28 Jun 2024 10:58:38 GMT
2
+ * @vkontakte/videoplayer-statistics v1.0.51-dev.9505da81.0
3
+ * Tue, 09 Jul 2024 13:42:45 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/1-0-51/doc/
5
5
  */
6
- "use strict";var hl=Object.create;var Se=Object.defineProperty,gl=Object.defineProperties,ml=Object.getOwnPropertyDescriptor,bl=Object.getOwnPropertyDescriptors,yl=Object.getOwnPropertyNames,Gi=Object.getOwnPropertySymbols,Sl=Object.getPrototypeOf,Wi=Object.prototype.hasOwnProperty,Il=Object.prototype.propertyIsEnumerable;var Ki=(r,e,t)=>e in r?Se(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,W=(r,e)=>{for(var t in e||(e={}))Wi.call(e,t)&&Ki(r,t,e[t]);if(Gi)for(var t of Gi(e))Il.call(e,t)&&Ki(r,t,e[t]);return r},Ge=(r,e)=>gl(r,bl(e));var n=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),El=(r,e)=>{for(var t in e)Se(r,t,{get:e[t],enumerable:!0})},Hi=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of yl(e))!Wi.call(r,o)&&o!==t&&Se(r,o,{get:()=>e[o],enumerable:!(i=ml(e,o))||i.enumerable});return r};var Ur=(r,e,t)=>(t=r!=null?hl(Sl(r)):{},Hi(e||!r||!r.__esModule?Se(t,"default",{value:r,enumerable:!0}):t,r)),ql=r=>Hi(Se({},"__esModule",{value:!0}),r);var M=(r,e,t)=>new Promise((i,o)=>{var a=f=>{try{l(t.next(f))}catch(d){o(d)}},u=f=>{try{l(t.throw(f))}catch(d){o(d)}},l=f=>f.done?i(f.value):Promise.resolve(f.value).then(a,u);l((t=t.apply(r,e)).next())});var zi=n(()=>{"use strict"});var Qi=n(()=>{"use strict"});var P=n((Yi,Ji)=>{"use strict";var Ke=function(r){return r&&r.Math==Math&&r};Ji.exports=Ke(typeof globalThis=="object"&&globalThis)||Ke(typeof window=="object"&&window)||Ke(typeof self=="object"&&self)||Ke(typeof global=="object"&&global)||function(){return this}()||Yi||Function("return this")()});var x=n((Tb,Xi)=>{"use strict";Xi.exports=function(r){try{return!!r()}catch(e){return!0}}});var Ie=n((Ob,Zi)=>{"use strict";var Pl=x();Zi.exports=!Pl(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var Vr=n((_b,io)=>{"use strict";var Tl=Ie(),to=Function.prototype,eo=to.apply,ro=to.call;io.exports=typeof Reflect=="object"&&Reflect.apply||(Tl?ro.bind(eo):function(){return ro.apply(eo,arguments)})});var O=n((xb,ao)=>{"use strict";var oo=Ie(),no=Function.prototype,Gr=no.call,Ol=oo&&no.bind.bind(Gr,Gr);ao.exports=oo?Ol:function(r){return function(){return Gr.apply(r,arguments)}}});var te=n((Rb,uo)=>{"use strict";var so=O(),_l=so({}.toString),xl=so("".slice);uo.exports=function(r){return xl(_l(r),8,-1)}});var Kr=n((wb,co)=>{"use strict";var Rl=te(),wl=O();co.exports=function(r){if(Rl(r)==="Function")return wl(r)}});var Hr=n((Ab,lo)=>{"use strict";var Wr=typeof document=="object"&&document.all,Al=typeof Wr=="undefined"&&Wr!==void 0;lo.exports={all:Wr,IS_HTMLDDA:Al}});var I=n((Cb,po)=>{"use strict";var fo=Hr(),Cl=fo.all;po.exports=fo.IS_HTMLDDA?function(r){return typeof r=="function"||r===Cl}:function(r){return typeof r=="function"}});var j=n((Nb,vo)=>{"use strict";var Nl=x();vo.exports=!Nl(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var _=n((Lb,ho)=>{"use strict";var Ll=Ie(),We=Function.prototype.call;ho.exports=Ll?We.bind(We):function(){return We.apply(We,arguments)}});var yo=n(bo=>{"use strict";var go={}.propertyIsEnumerable,mo=Object.getOwnPropertyDescriptor,kl=mo&&!go.call({1:2},1);bo.f=kl?function(e){var t=mo(this,e);return!!t&&t.enumerable}:go});var Ee=n((Db,So)=>{"use strict";So.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var Eo=n(($b,Io)=>{"use strict";var Dl=O(),$l=x(),Ml=te(),zr=Object,jl=Dl("".split);Io.exports=$l(function(){return!zr("z").propertyIsEnumerable(0)})?function(r){return Ml(r)=="String"?jl(r,""):zr(r)}:zr});var ie=n((Mb,qo)=>{"use strict";qo.exports=function(r){return r==null}});var He=n((jb,Po)=>{"use strict";var Fl=ie(),Bl=TypeError;Po.exports=function(r){if(Fl(r))throw Bl("Can't call method on "+r);return r}});var oe=n((Fb,To)=>{"use strict";var Ul=Eo(),Vl=He();To.exports=function(r){return Ul(Vl(r))}});var F=n((Bb,xo)=>{"use strict";var Oo=I(),_o=Hr(),Gl=_o.all;xo.exports=_o.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:Oo(r)||r===Gl}:function(r){return typeof r=="object"?r!==null:Oo(r)}});var ze=n((Ub,Ro)=>{"use strict";Ro.exports={}});var B=n((Vb,Ao)=>{"use strict";var Qr=ze(),Yr=P(),Kl=I(),wo=function(r){return Kl(r)?r:void 0};Ao.exports=function(r,e){return arguments.length<2?wo(Qr[r])||wo(Yr[r]):Qr[r]&&Qr[r][e]||Yr[r]&&Yr[r][e]}});var qe=n((Gb,Co)=>{"use strict";var Wl=O();Co.exports=Wl({}.isPrototypeOf)});var Pe=n((Kb,No)=>{"use strict";No.exports=typeof navigator!="undefined"&&String(navigator.userAgent)||""});var Xr=n((Wb,jo)=>{"use strict";var Mo=P(),Jr=Pe(),Lo=Mo.process,ko=Mo.Deno,Do=Lo&&Lo.versions||ko&&ko.version,$o=Do&&Do.v8,A,Qe;$o&&(A=$o.split("."),Qe=A[0]>0&&A[0]<4?1:+(A[0]+A[1]));!Qe&&Jr&&(A=Jr.match(/Edge\/(\d+)/),(!A||A[1]>=74)&&(A=Jr.match(/Chrome\/(\d+)/),A&&(Qe=+A[1])));jo.exports=Qe});var Zr=n((Hb,Bo)=>{"use strict";var Fo=Xr(),Hl=x(),zl=P(),Ql=zl.String;Bo.exports=!!Object.getOwnPropertySymbols&&!Hl(function(){var r=Symbol();return!Ql(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Fo&&Fo<41})});var et=n((zb,Uo)=>{"use strict";var Yl=Zr();Uo.exports=Yl&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var rt=n((Qb,Vo)=>{"use strict";var Jl=B(),Xl=I(),Zl=qe(),ef=et(),rf=Object;Vo.exports=ef?function(r){return typeof r=="symbol"}:function(r){var e=Jl("Symbol");return Xl(e)&&Zl(e.prototype,rf(r))}});var Te=n((Yb,Go)=>{"use strict";var tf=String;Go.exports=function(r){try{return tf(r)}catch(e){return"Object"}}});var U=n((Jb,Ko)=>{"use strict";var of=I(),nf=Te(),af=TypeError;Ko.exports=function(r){if(of(r))return r;throw af(nf(r)+" is not a function")}});var Oe=n((Xb,Wo)=>{"use strict";var sf=U(),uf=ie();Wo.exports=function(r,e){var t=r[e];return uf(t)?void 0:sf(t)}});var zo=n((Zb,Ho)=>{"use strict";var tt=_(),it=I(),ot=F(),cf=TypeError;Ho.exports=function(r,e){var t,i;if(e==="string"&&it(t=r.toString)&&!ot(i=tt(t,r))||it(t=r.valueOf)&&!ot(i=tt(t,r))||e!=="string"&&it(t=r.toString)&&!ot(i=tt(t,r)))return i;throw cf("Can't convert object to primitive value")}});var C=n((ey,Qo)=>{"use strict";Qo.exports=!0});var Xo=n((ry,Jo)=>{"use strict";var Yo=P(),lf=Object.defineProperty;Jo.exports=function(r,e){try{lf(Yo,r,{value:e,configurable:!0,writable:!0})}catch(t){Yo[r]=e}return e}});var Ye=n((ty,en)=>{"use strict";var ff=P(),df=Xo(),Zo="__core-js_shared__",pf=ff[Zo]||df(Zo,{});en.exports=pf});var nt=n((iy,tn)=>{"use strict";var vf=C(),rn=Ye();(tn.exports=function(r,e){return rn[r]||(rn[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.31.0",mode:vf?"pure":"global",copyright:"\xA9 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.31.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var Je=n((oy,on)=>{"use strict";var hf=He(),gf=Object;on.exports=function(r){return gf(hf(r))}});var N=n((ny,nn)=>{"use strict";var mf=O(),bf=Je(),yf=mf({}.hasOwnProperty);nn.exports=Object.hasOwn||function(e,t){return yf(bf(e),t)}});var at=n((ay,an)=>{"use strict";var Sf=O(),If=0,Ef=Math.random(),qf=Sf(1 .toString);an.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+qf(++If+Ef,36)}});var T=n((sy,un)=>{"use strict";var Pf=P(),Tf=nt(),sn=N(),Of=at(),_f=Zr(),xf=et(),ne=Pf.Symbol,st=Tf("wks"),Rf=xf?ne.for||ne:ne&&ne.withoutSetter||Of;un.exports=function(r){return sn(st,r)||(st[r]=_f&&sn(ne,r)?ne[r]:Rf("Symbol."+r)),st[r]}});var dn=n((uy,fn)=>{"use strict";var wf=_(),cn=F(),ln=rt(),Af=Oe(),Cf=zo(),Nf=T(),Lf=TypeError,kf=Nf("toPrimitive");fn.exports=function(r,e){if(!cn(r)||ln(r))return r;var t=Af(r,kf),i;if(t){if(e===void 0&&(e="default"),i=wf(t,r,e),!cn(i)||ln(i))return i;throw Lf("Can't convert object to primitive value")}return e===void 0&&(e="number"),Cf(r,e)}});var Xe=n((cy,pn)=>{"use strict";var Df=dn(),$f=rt();pn.exports=function(r){var e=Df(r,"string");return $f(e)?e:e+""}});var Ze=n((ly,hn)=>{"use strict";var Mf=P(),vn=F(),ut=Mf.document,jf=vn(ut)&&vn(ut.createElement);hn.exports=function(r){return jf?ut.createElement(r):{}}});var ct=n((fy,gn)=>{"use strict";var Ff=j(),Bf=x(),Uf=Ze();gn.exports=!Ff&&!Bf(function(){return Object.defineProperty(Uf("div"),"a",{get:function(){return 7}}).a!=7})});var lt=n(bn=>{"use strict";var Vf=j(),Gf=_(),Kf=yo(),Wf=Ee(),Hf=oe(),zf=Xe(),Qf=N(),Yf=ct(),mn=Object.getOwnPropertyDescriptor;bn.f=Vf?mn:function(e,t){if(e=Hf(e),t=zf(t),Yf)try{return mn(e,t)}catch(i){}if(Qf(e,t))return Wf(!Gf(Kf.f,e,t),e[t])}});var ft=n((py,yn)=>{"use strict";var Jf=x(),Xf=I(),Zf=/#|\.prototype\./,_e=function(r,e){var t=rd[ed(r)];return t==id?!0:t==td?!1:Xf(e)?Jf(e):!!e},ed=_e.normalize=function(r){return String(r).replace(Zf,".").toLowerCase()},rd=_e.data={},td=_e.NATIVE="N",id=_e.POLYFILL="P";yn.exports=_e});var xe=n((vy,In)=>{"use strict";var Sn=Kr(),od=U(),nd=Ie(),ad=Sn(Sn.bind);In.exports=function(r,e){return od(r),e===void 0?r:nd?ad(r,e):function(){return r.apply(e,arguments)}}});var dt=n((hy,En)=>{"use strict";var sd=j(),ud=x();En.exports=sd&&ud(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var L=n((gy,qn)=>{"use strict";var cd=F(),ld=String,fd=TypeError;qn.exports=function(r){if(cd(r))return r;throw fd(ld(r)+" is not an object")}});var z=n(Tn=>{"use strict";var dd=j(),pd=ct(),vd=dt(),er=L(),Pn=Xe(),hd=TypeError,pt=Object.defineProperty,gd=Object.getOwnPropertyDescriptor,vt="enumerable",ht="configurable",gt="writable";Tn.f=dd?vd?function(e,t,i){if(er(e),t=Pn(t),er(i),typeof e=="function"&&t==="prototype"&&"value"in i&&gt in i&&!i[gt]){var o=gd(e,t);o&&o[gt]&&(e[t]=i.value,i={configurable:ht in i?i[ht]:o[ht],enumerable:vt in i?i[vt]:o[vt],writable:!1})}return pt(e,t,i)}:pt:function(e,t,i){if(er(e),t=Pn(t),er(i),pd)try{return pt(e,t,i)}catch(o){}if("get"in i||"set"in i)throw hd("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var Q=n((by,On)=>{"use strict";var md=j(),bd=z(),yd=Ee();On.exports=md?function(r,e,t){return bd.f(r,e,yd(1,t))}:function(r,e,t){return r[e]=t,r}});var k=n((yy,xn)=>{"use strict";var rr=P(),Sd=Vr(),Id=Kr(),Ed=I(),qd=lt().f,Pd=ft(),ae=ze(),Td=xe(),se=Q(),_n=N(),Od=function(r){var e=function(t,i,o){if(this instanceof e){switch(arguments.length){case 0:return new r;case 1:return new r(t);case 2:return new r(t,i)}return new r(t,i,o)}return Sd(r,this,arguments)};return e.prototype=r.prototype,e};xn.exports=function(r,e){var t=r.target,i=r.global,o=r.stat,a=r.proto,u=i?rr:o?rr[t]:(rr[t]||{}).prototype,l=i?ae:ae[t]||se(ae,t,{})[t],f=l.prototype,d,s,c,v,p,m,y,E,S;for(v in e)d=Pd(i?v:t+(o?".":"#")+v,r.forced),s=!d&&u&&_n(u,v),m=l[v],s&&(r.dontCallGetSet?(S=qd(u,v),y=S&&S.value):y=u[v]),p=s&&y?y:e[v],!(s&&typeof m==typeof p)&&(r.bind&&s?E=Td(p,rr):r.wrap&&s?E=Od(p):a&&Ed(p)?E=Id(p):E=p,(r.sham||p&&p.sham||m&&m.sham)&&se(E,"sham",!0),se(l,v,E),a&&(c=t+"Prototype",_n(ae,c)||se(ae,c,{}),se(ae[c],v,p),r.real&&f&&(d||!f[v])&&se(f,v,p)))}});var wn=n((Sy,Rn)=>{"use strict";var _d=F(),xd=te(),Rd=T(),wd=Rd("match");Rn.exports=function(r){var e;return _d(r)&&((e=r[wd])!==void 0?!!e:xd(r)=="RegExp")}});var tr=n((Iy,Cn)=>{"use strict";var Ad=T(),Cd=Ad("toStringTag"),An={};An[Cd]="z";Cn.exports=String(An)==="[object z]"});var ue=n((Ey,Nn)=>{"use strict";var Nd=tr(),Ld=I(),ir=te(),kd=T(),Dd=kd("toStringTag"),$d=Object,Md=ir(function(){return arguments}())=="Arguments",jd=function(r,e){try{return r[e]}catch(t){}};Nn.exports=Nd?ir:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=jd(e=$d(r),Dd))=="string"?t:Md?ir(e):(i=ir(e))=="Object"&&Ld(e.callee)?"Arguments":i}});var kn=n((qy,Ln)=>{"use strict";var Fd=ue(),Bd=String;Ln.exports=function(r){if(Fd(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return Bd(r)}});var $n=n((Py,Dn)=>{"use strict";var Ud=L();Dn.exports=function(){var r=Ud(this),e="";return r.hasIndices&&(e+="d"),r.global&&(e+="g"),r.ignoreCase&&(e+="i"),r.multiline&&(e+="m"),r.dotAll&&(e+="s"),r.unicode&&(e+="u"),r.unicodeSets&&(e+="v"),r.sticky&&(e+="y"),e}});var Fn=n((Ty,jn)=>{"use strict";var Vd=_(),Gd=N(),Kd=qe(),Wd=$n(),Mn=RegExp.prototype;jn.exports=function(r){var e=r.flags;return e===void 0&&!("flags"in Mn)&&!Gd(r,"flags")&&Kd(Mn,r)?Vd(Wd,r):e}});var Un=n((Oy,Bn)=>{"use strict";var yt=O(),Hd=Je(),zd=Math.floor,mt=yt("".charAt),Qd=yt("".replace),bt=yt("".slice),Yd=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,Jd=/\$([$&'`]|\d{1,2})/g;Bn.exports=function(r,e,t,i,o,a){var u=t+r.length,l=i.length,f=Jd;return o!==void 0&&(o=Hd(o),f=Yd),Qd(a,f,function(d,s){var c;switch(mt(s,0)){case"$":return"$";case"&":return r;case"`":return bt(e,0,t);case"'":return bt(e,u);case"<":c=o[bt(s,1,-1)];break;default:var v=+s;if(v===0)return d;if(v>l){var p=zd(v/10);return p===0?d:p<=l?i[p-1]===void 0?mt(s,1):i[p-1]+mt(s,1):d}c=i[v-1]}return c===void 0?"":c})}});var Hn=n(()=>{"use strict";var Xd=k(),Zd=_(),St=O(),Vn=He(),ep=I(),rp=ie(),tp=wn(),ce=kn(),ip=Oe(),op=Fn(),np=Un(),ap=T(),sp=C(),up=ap("replace"),cp=TypeError,Wn=St("".indexOf),lp=St("".replace),Gn=St("".slice),fp=Math.max,Kn=function(r,e,t){return t>r.length?-1:e===""?t:Wn(r,e,t)};Xd({target:"String",proto:!0},{replaceAll:function(e,t){var i=Vn(this),o,a,u,l,f,d,s,c,v,p=0,m=0,y="";if(!rp(e)){if(o=tp(e),o&&(a=ce(Vn(op(e))),!~Wn(a,"g")))throw cp("`.replaceAll` does not allow non-global regexes");if(u=ip(e,up),u)return Zd(u,e,i,t);if(sp&&o)return lp(ce(i),e,t)}for(l=ce(i),f=ce(e),d=ep(t),d||(t=ce(t)),s=f.length,c=fp(1,s),p=Kn(l,f,0);p!==-1;)v=d?ce(t(f,p,l)):np(f,l,p,[],void 0,t),y+=Gn(l,m,p)+v,m=p+s,p=Kn(l,f,p+c);return m<l.length&&(y+=Gn(l,m)),y}})});var It=n((Ry,zn)=>{"use strict";var dp=B();zn.exports=dp});var Yn=n((wy,Qn)=>{"use strict";zi();Qi();Hn();var pp=It();Qn.exports=pp("String","replaceAll")});var Xn=n((Ay,Jn)=>{"use strict";var vp=Yn();Jn.exports=vp});var ea=n((Cy,Zn)=>{"use strict";var hp=Xn();Zn.exports=hp});var sa=n(()=>{"use strict"});var Re=n((By,ua)=>{"use strict";var mp=te();ua.exports=typeof process!="undefined"&&mp(process)=="process"});var fe=n((Uy,ca)=>{"use strict";var bp=Q();ca.exports=function(r,e,t,i){return i&&i.enumerable?r[e]=t:bp(r,e,t),r}});var fa=n((Vy,la)=>{"use strict";var yp=O(),Sp=U();la.exports=function(r,e,t){try{return yp(Sp(Object.getOwnPropertyDescriptor(r,e)[t]))}catch(i){}}});var pa=n((Gy,da)=>{"use strict";var Ip=I(),Ep=String,qp=TypeError;da.exports=function(r){if(typeof r=="object"||Ip(r))return r;throw qp("Can't set "+Ep(r)+" as a prototype")}});var Pt=n((Ky,va)=>{"use strict";var Pp=fa(),Tp=L(),Op=pa();va.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=Pp(Object.prototype,"__proto__","set"),t(e,[]),r=e instanceof Array}catch(i){}return function(o,a){return Tp(o),Op(a),r?t(o,a):o.__proto__=a,o}}():void 0)});var ga=n((Wy,ha)=>{"use strict";var _p=tr(),xp=ue();ha.exports=_p?{}.toString:function(){return"[object "+xp(this)+"]"}});var ur=n((Hy,ba)=>{"use strict";var Rp=tr(),wp=z().f,Ap=Q(),Cp=N(),Np=ga(),Lp=T(),ma=Lp("toStringTag");ba.exports=function(r,e,t,i){if(r){var o=t?r:r.prototype;Cp(o,ma)||wp(o,ma,{configurable:!0,value:e}),i&&!Rp&&Ap(o,"toString",Np)}}});var Sa=n((zy,ya)=>{"use strict";var kp=z();ya.exports=function(r,e,t){return kp.f(r,e,t)}});var qa=n((Qy,Ea)=>{"use strict";var Dp=B(),$p=Sa(),Mp=T(),jp=j(),Ia=Mp("species");Ea.exports=function(r){var e=Dp(r);jp&&e&&!e[Ia]&&$p(e,Ia,{configurable:!0,get:function(){return this}})}});var Ta=n((Yy,Pa)=>{"use strict";var Fp=qe(),Bp=TypeError;Pa.exports=function(r,e){if(Fp(e,r))return r;throw Bp("Incorrect invocation")}});var Ot=n((Jy,Oa)=>{"use strict";var Up=O(),Vp=I(),Tt=Ye(),Gp=Up(Function.toString);Vp(Tt.inspectSource)||(Tt.inspectSource=function(r){return Gp(r)});Oa.exports=Tt.inspectSource});var Ca=n((Xy,Aa)=>{"use strict";var Kp=O(),Wp=x(),_a=I(),Hp=ue(),zp=B(),Qp=Ot(),xa=function(){},Yp=[],Ra=zp("Reflect","construct"),_t=/^\s*(?:class|function)\b/,Jp=Kp(_t.exec),Xp=!_t.exec(xa),we=function(e){if(!_a(e))return!1;try{return Ra(xa,Yp,e),!0}catch(t){return!1}},wa=function(e){if(!_a(e))return!1;switch(Hp(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return Xp||!!Jp(_t,Qp(e))}catch(t){return!0}};wa.sham=!0;Aa.exports=!Ra||Wp(function(){var r;return we(we.call)||!we(Object)||!we(function(){r=!0})||r})?wa:we});var La=n((Zy,Na)=>{"use strict";var Zp=Ca(),ev=Te(),rv=TypeError;Na.exports=function(r){if(Zp(r))return r;throw rv(ev(r)+" is not a constructor")}});var xt=n((eS,Da)=>{"use strict";var ka=L(),tv=La(),iv=ie(),ov=T(),nv=ov("species");Da.exports=function(r,e){var t=ka(r).constructor,i;return t===void 0||iv(i=ka(t)[nv])?e:tv(i)}});var Rt=n((rS,$a)=>{"use strict";var av=B();$a.exports=av("document","documentElement")});var ja=n((tS,Ma)=>{"use strict";var sv=O();Ma.exports=sv([].slice)});var Ba=n((iS,Fa)=>{"use strict";var uv=TypeError;Fa.exports=function(r,e){if(r<e)throw uv("Not enough arguments");return r}});var wt=n((oS,Ua)=>{"use strict";var cv=Pe();Ua.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(cv)});var jt=n((nS,Ja)=>{"use strict";var R=P(),lv=Vr(),fv=xe(),Va=I(),dv=N(),Ya=x(),Ga=Rt(),pv=ja(),Ka=Ze(),vv=Ba(),hv=wt(),gv=Re(),Dt=R.setImmediate,$t=R.clearImmediate,mv=R.process,At=R.Dispatch,bv=R.Function,Wa=R.MessageChannel,yv=R.String,Ct=0,Ae={},Ha="onreadystatechange",Ce,Y,Nt,Lt;Ya(function(){Ce=R.location});var Mt=function(r){if(dv(Ae,r)){var e=Ae[r];delete Ae[r],e()}},kt=function(r){return function(){Mt(r)}},za=function(r){Mt(r.data)},Qa=function(r){R.postMessage(yv(r),Ce.protocol+"//"+Ce.host)};(!Dt||!$t)&&(Dt=function(e){vv(arguments.length,1);var t=Va(e)?e:bv(e),i=pv(arguments,1);return Ae[++Ct]=function(){lv(t,void 0,i)},Y(Ct),Ct},$t=function(e){delete Ae[e]},gv?Y=function(r){mv.nextTick(kt(r))}:At&&At.now?Y=function(r){At.now(kt(r))}:Wa&&!hv?(Nt=new Wa,Lt=Nt.port2,Nt.port1.onmessage=za,Y=fv(Lt.postMessage,Lt)):R.addEventListener&&Va(R.postMessage)&&!R.importScripts&&Ce&&Ce.protocol!=="file:"&&!Ya(Qa)?(Y=Qa,R.addEventListener("message",za,!1)):Ha in Ka("script")?Y=function(r){Ga.appendChild(Ka("script"))[Ha]=function(){Ga.removeChild(this),Mt(r)}}:Y=function(r){setTimeout(kt(r),0)});Ja.exports={set:Dt,clear:$t}});var Ft=n((aS,Za)=>{"use strict";var Xa=function(){this.head=null,this.tail=null};Xa.prototype={add:function(r){var e={item:r,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var r=this.head;if(r){var e=this.head=r.next;return e===null&&(this.tail=null),r.item}}};Za.exports=Xa});var rs=n((sS,es)=>{"use strict";var Sv=Pe();es.exports=/ipad|iphone|ipod/i.test(Sv)&&typeof Pebble!="undefined"});var is=n((uS,ts)=>{"use strict";var Iv=Pe();ts.exports=/web0s(?!.*chrome)/i.test(Iv)});var fs=n((cS,ls)=>{"use strict";var J=P(),os=xe(),Ev=lt().f,Bt=jt().set,qv=Ft(),Pv=wt(),Tv=rs(),Ov=is(),Ut=Re(),ns=J.MutationObserver||J.WebKitMutationObserver,as=J.document,ss=J.process,cr=J.Promise,us=Ev(J,"queueMicrotask"),Kt=us&&us.value,de,Vt,Gt,lr,cs;Kt||(Ne=new qv,Le=function(){var r,e;for(Ut&&(r=ss.domain)&&r.exit();e=Ne.get();)try{e()}catch(t){throw Ne.head&&de(),t}r&&r.enter()},!Pv&&!Ut&&!Ov&&ns&&as?(Vt=!0,Gt=as.createTextNode(""),new ns(Le).observe(Gt,{characterData:!0}),de=function(){Gt.data=Vt=!Vt}):!Tv&&cr&&cr.resolve?(lr=cr.resolve(void 0),lr.constructor=cr,cs=os(lr.then,lr),de=function(){cs(Le)}):Ut?de=function(){ss.nextTick(Le)}:(Bt=os(Bt,J),de=function(){Bt(Le)}),Kt=function(r){Ne.head||de(),Ne.add(r)});var Ne,Le;ls.exports=Kt});var ps=n((lS,ds)=>{"use strict";ds.exports=function(r,e){try{arguments.length==1?console.error(r):console.error(r,e)}catch(t){}}});var fr=n((fS,vs)=>{"use strict";vs.exports=function(r){try{return{error:!1,value:r()}}catch(e){return{error:!0,value:e}}}});var ms=n((dS,gs)=>{"use strict";var _v=P(),xv=I(),hs=_v.WeakMap;gs.exports=xv(hs)&&/native code/.test(String(hs))});var dr=n((pS,ys)=>{"use strict";var Rv=nt(),wv=at(),bs=Rv("keys");ys.exports=function(r){return bs[r]||(bs[r]=wv(r))}});var pr=n((vS,Ss)=>{"use strict";Ss.exports={}});var Qt=n((hS,qs)=>{"use strict";var Av=ms(),Es=P(),Cv=F(),Nv=Q(),Wt=N(),Ht=Ye(),Lv=dr(),kv=pr(),Is="Object already initialized",zt=Es.TypeError,Dv=Es.WeakMap,vr,ke,hr,$v=function(r){return hr(r)?ke(r):vr(r,{})},Mv=function(r){return function(e){var t;if(!Cv(e)||(t=ke(e)).type!==r)throw zt("Incompatible receiver, "+r+" required");return t}};Av||Ht.state?(D=Ht.state||(Ht.state=new Dv),D.get=D.get,D.has=D.has,D.set=D.set,vr=function(r,e){if(D.has(r))throw zt(Is);return e.facade=r,D.set(r,e),e},ke=function(r){return D.get(r)||{}},hr=function(r){return D.has(r)}):(X=Lv("state"),kv[X]=!0,vr=function(r,e){if(Wt(r,X))throw zt(Is);return e.facade=r,Nv(r,X,e),e},ke=function(r){return Wt(r,X)?r[X]:{}},hr=function(r){return Wt(r,X)});var D,X;qs.exports={set:vr,get:ke,has:hr,enforce:$v,getterFor:Mv}});var Z=n((gS,Ps)=>{"use strict";var jv=P();Ps.exports=jv.Promise});var Yt=n((mS,Ts)=>{"use strict";Ts.exports=typeof Deno=="object"&&Deno&&typeof Deno.version=="object"});var _s=n((bS,Os)=>{"use strict";var Fv=Yt(),Bv=Re();Os.exports=!Fv&&!Bv&&typeof window=="object"&&typeof document=="object"});var pe=n((yS,ws)=>{"use strict";var Uv=P(),De=Z(),Vv=I(),Gv=ft(),Kv=Ot(),Wv=T(),Hv=_s(),zv=Yt(),Qv=C(),Jt=Xr(),xs=De&&De.prototype,Yv=Wv("species"),Xt=!1,Rs=Vv(Uv.PromiseRejectionEvent),Jv=Gv("Promise",function(){var r=Kv(De),e=r!==String(De);if(!e&&Jt===66||Qv&&!(xs.catch&&xs.finally))return!0;if(!Jt||Jt<51||!/native code/.test(r)){var t=new De(function(a){a(1)}),i=function(a){a(function(){},function(){})},o=t.constructor={};if(o[Yv]=i,Xt=t.then(function(){})instanceof i,!Xt)return!0}return!e&&(Hv||zv)&&!Rs});ws.exports={CONSTRUCTOR:Jv,REJECTION_EVENT:Rs,SUBCLASSING:Xt}});var ve=n((SS,Cs)=>{"use strict";var As=U(),Xv=TypeError,Zv=function(r){var e,t;this.promise=new r(function(i,o){if(e!==void 0||t!==void 0)throw Xv("Bad Promise constructor");e=i,t=o}),this.resolve=As(e),this.reject=As(t)};Cs.exports.f=function(r){return new Zv(r)}});var Js=n(()=>{"use strict";var eh=k(),rh=C(),yr=Re(),H=P(),be=_(),Ns=fe(),Ls=Pt(),th=ur(),ih=qa(),oh=U(),br=I(),nh=F(),ah=Ta(),sh=xt(),js=jt().set,ii=fs(),uh=ps(),ch=fr(),lh=Ft(),Fs=Qt(),Sr=Z(),oi=pe(),Bs=ve(),Ir="Promise",Us=oi.CONSTRUCTOR,fh=oi.REJECTION_EVENT,dh=oi.SUBCLASSING,Zt=Fs.getterFor(Ir),ph=Fs.set,he=Sr&&Sr.prototype,ee=Sr,gr=he,Vs=H.TypeError,ei=H.document,ni=H.process,ri=Bs.f,vh=ri,hh=!!(ei&&ei.createEvent&&H.dispatchEvent),Gs="unhandledrejection",gh="rejectionhandled",ks=0,Ks=1,mh=2,ai=1,Ws=2,mr,Ds,bh,$s,Hs=function(r){var e;return nh(r)&&br(e=r.then)?e:!1},zs=function(r,e){var t=e.value,i=e.state==Ks,o=i?r.ok:r.fail,a=r.resolve,u=r.reject,l=r.domain,f,d,s;try{o?(i||(e.rejection===Ws&&Sh(e),e.rejection=ai),o===!0?f=t:(l&&l.enter(),f=o(t),l&&(l.exit(),s=!0)),f===r.promise?u(Vs("Promise-chain cycle")):(d=Hs(f))?be(d,f,a,u):a(f)):u(t)}catch(c){l&&!s&&l.exit(),u(c)}},Qs=function(r,e){r.notified||(r.notified=!0,ii(function(){for(var t=r.reactions,i;i=t.get();)zs(i,r);r.notified=!1,e&&!r.rejection&&yh(r)}))},Ys=function(r,e,t){var i,o;hh?(i=ei.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(r,!1,!0),H.dispatchEvent(i)):i={promise:e,reason:t},!fh&&(o=H["on"+r])?o(i):r===Gs&&uh("Unhandled promise rejection",t)},yh=function(r){be(js,H,function(){var e=r.facade,t=r.value,i=Ms(r),o;if(i&&(o=ch(function(){yr?ni.emit("unhandledRejection",t,e):Ys(Gs,e,t)}),r.rejection=yr||Ms(r)?Ws:ai,o.error))throw o.value})},Ms=function(r){return r.rejection!==ai&&!r.parent},Sh=function(r){be(js,H,function(){var e=r.facade;yr?ni.emit("rejectionHandled",e):Ys(gh,e,r.value)})},ge=function(r,e,t){return function(i){r(e,i,t)}},me=function(r,e,t){r.done||(r.done=!0,t&&(r=t),r.value=e,r.state=mh,Qs(r,!0))},ti=function(r,e,t){if(!r.done){r.done=!0,t&&(r=t);try{if(r.facade===e)throw Vs("Promise can't be resolved itself");var i=Hs(e);i?ii(function(){var o={done:!1};try{be(i,e,ge(ti,o,r),ge(me,o,r))}catch(a){me(o,a,r)}}):(r.value=e,r.state=Ks,Qs(r,!1))}catch(o){me({done:!1},o,r)}}};if(Us&&(ee=function(e){ah(this,gr),oh(e),be(mr,this);var t=Zt(this);try{e(ge(ti,t),ge(me,t))}catch(i){me(t,i)}},gr=ee.prototype,mr=function(e){ph(this,{type:Ir,done:!1,notified:!1,parent:!1,reactions:new lh,rejection:!1,state:ks,value:void 0})},mr.prototype=Ns(gr,"then",function(e,t){var i=Zt(this),o=ri(sh(this,ee));return i.parent=!0,o.ok=br(e)?e:!0,o.fail=br(t)&&t,o.domain=yr?ni.domain:void 0,i.state==ks?i.reactions.add(o):ii(function(){zs(o,i)}),o.promise}),Ds=function(){var r=new mr,e=Zt(r);this.promise=r,this.resolve=ge(ti,e),this.reject=ge(me,e)},Bs.f=ri=function(r){return r===ee||r===bh?new Ds(r):vh(r)},!rh&&br(Sr)&&he!==Object.prototype)){$s=he.then,dh||Ns(he,"then",function(e,t){var i=this;return new ee(function(o,a){be($s,i,o,a)}).then(e,t)},{unsafe:!0});try{delete he.constructor}catch(r){}Ls&&Ls(he,gr)}eh({global:!0,constructor:!0,wrap:!0,forced:Us},{Promise:ee});th(ee,Ir,!1,!0);ih(Ir)});var re=n((qS,Xs)=>{"use strict";Xs.exports={}});var eu=n((PS,Zs)=>{"use strict";var Ih=T(),Eh=re(),qh=Ih("iterator"),Ph=Array.prototype;Zs.exports=function(r){return r!==void 0&&(Eh.Array===r||Ph[qh]===r)}});var tu=n((TS,ru)=>{"use strict";var Th=Math.ceil,Oh=Math.floor;ru.exports=Math.trunc||function(e){var t=+e;return(t>0?Oh:Th)(t)}});var si=n((OS,iu)=>{"use strict";var _h=tu();iu.exports=function(r){var e=+r;return e!==e||e===0?0:_h(e)}});var nu=n((_S,ou)=>{"use strict";var xh=si(),Rh=Math.min;ou.exports=function(r){return r>0?Rh(xh(r),9007199254740991):0}});var ui=n((xS,au)=>{"use strict";var wh=nu();au.exports=function(r){return wh(r.length)}});var ci=n((RS,uu)=>{"use strict";var Ah=ue(),su=Oe(),Ch=ie(),Nh=re(),Lh=T(),kh=Lh("iterator");uu.exports=function(r){if(!Ch(r))return su(r,kh)||su(r,"@@iterator")||Nh[Ah(r)]}});var lu=n((wS,cu)=>{"use strict";var Dh=_(),$h=U(),Mh=L(),jh=Te(),Fh=ci(),Bh=TypeError;cu.exports=function(r,e){var t=arguments.length<2?Fh(r):e;if($h(t))return Mh(Dh(t,r));throw Bh(jh(r)+" is not iterable")}});var pu=n((AS,du)=>{"use strict";var Uh=_(),fu=L(),Vh=Oe();du.exports=function(r,e,t){var i,o;fu(r);try{if(i=Vh(r,"return"),!i){if(e==="throw")throw t;return t}i=Uh(i,r)}catch(a){o=!0,i=a}if(e==="throw")throw t;if(o)throw i;return fu(i),t}});var qr=n((CS,mu)=>{"use strict";var Gh=xe(),Kh=_(),Wh=L(),Hh=Te(),zh=eu(),Qh=ui(),vu=qe(),Yh=lu(),Jh=ci(),hu=pu(),Xh=TypeError,Er=function(r,e){this.stopped=r,this.result=e},gu=Er.prototype;mu.exports=function(r,e,t){var i=t&&t.that,o=!!(t&&t.AS_ENTRIES),a=!!(t&&t.IS_RECORD),u=!!(t&&t.IS_ITERATOR),l=!!(t&&t.INTERRUPTED),f=Gh(e,i),d,s,c,v,p,m,y,E=function(q){return d&&hu(d,"normal",q),new Er(!0,q)},S=function(q){return o?(Wh(q),l?f(q[0],q[1],E):f(q[0],q[1])):l?f(q,E):f(q)};if(a)d=r.iterator;else if(u)d=r;else{if(s=Jh(r),!s)throw Xh(Hh(r)+" is not iterable");if(zh(s)){for(c=0,v=Qh(r);v>c;c++)if(p=S(r[c]),p&&vu(gu,p))return p;return new Er(!1)}d=Yh(r,s)}for(m=a?r.next:d.next;!(y=Kh(m,d)).done;){try{p=S(y.value)}catch(q){hu(d,"throw",q)}if(typeof p=="object"&&p&&vu(gu,p))return p}return new Er(!1)}});var Eu=n((NS,Iu)=>{"use strict";var Zh=T(),yu=Zh("iterator"),Su=!1;try{bu=0,li={next:function(){return{done:!!bu++}},return:function(){Su=!0}},li[yu]=function(){return this},Array.from(li,function(){throw 2})}catch(r){}var bu,li;Iu.exports=function(r,e){if(!e&&!Su)return!1;var t=!1;try{var i={};i[yu]=function(){return{next:function(){return{done:t=!0}}}},r(i)}catch(o){}return t}});var fi=n((LS,qu)=>{"use strict";var eg=Z(),rg=Eu(),tg=pe().CONSTRUCTOR;qu.exports=tg||!rg(function(r){eg.all(r).then(void 0,function(){})})});var Pu=n(()=>{"use strict";var ig=k(),og=_(),ng=U(),ag=ve(),sg=fr(),ug=qr(),cg=fi();ig({target:"Promise",stat:!0,forced:cg},{all:function(e){var t=this,i=ag.f(t),o=i.resolve,a=i.reject,u=sg(function(){var l=ng(t.resolve),f=[],d=0,s=1;ug(e,function(c){var v=d++,p=!1;s++,og(l,t,c).then(function(m){p||(p=!0,f[v]=m,--s||o(f))},a)}),--s||o(f)});return u.error&&a(u.value),i.promise}})});var Ou=n(()=>{"use strict";var lg=k(),fg=C(),dg=pe().CONSTRUCTOR,pi=Z(),pg=B(),vg=I(),hg=fe(),Tu=pi&&pi.prototype;lg({target:"Promise",proto:!0,forced:dg,real:!0},{catch:function(r){return this.then(void 0,r)}});!fg&&vg(pi)&&(di=pg("Promise").prototype.catch,Tu.catch!==di&&hg(Tu,"catch",di,{unsafe:!0}));var di});var _u=n(()=>{"use strict";var gg=k(),mg=_(),bg=U(),yg=ve(),Sg=fr(),Ig=qr(),Eg=fi();gg({target:"Promise",stat:!0,forced:Eg},{race:function(e){var t=this,i=yg.f(t),o=i.reject,a=Sg(function(){var u=bg(t.resolve);Ig(e,function(l){mg(u,t,l).then(i.resolve,o)})});return a.error&&o(a.value),i.promise}})});var xu=n(()=>{"use strict";var qg=k(),Pg=_(),Tg=ve(),Og=pe().CONSTRUCTOR;qg({target:"Promise",stat:!0,forced:Og},{reject:function(e){var t=Tg.f(this);return Pg(t.reject,void 0,e),t.promise}})});var vi=n((VS,Ru)=>{"use strict";var _g=L(),xg=F(),Rg=ve();Ru.exports=function(r,e){if(_g(r),xg(e)&&e.constructor===r)return e;var t=Rg.f(r),i=t.resolve;return i(e),t.promise}});var Cu=n(()=>{"use strict";var wg=k(),Ag=B(),wu=C(),Cg=Z(),Au=pe().CONSTRUCTOR,Ng=vi(),Lg=Ag("Promise"),kg=wu&&!Au;wg({target:"Promise",stat:!0,forced:wu||Au},{resolve:function(e){return Ng(kg&&this===Lg?Cg:this,e)}})});var Nu=n(()=>{"use strict";Js();Pu();Ou();_u();xu();Cu()});var $u=n(()=>{"use strict";var Dg=k(),$g=C(),Pr=Z(),Mg=x(),ku=B(),Du=I(),jg=xt(),Lu=vi(),Fg=fe(),gi=Pr&&Pr.prototype,Bg=!!Pr&&Mg(function(){gi.finally.call({then:function(){}},function(){})});Dg({target:"Promise",proto:!0,real:!0,forced:Bg},{finally:function(r){var e=jg(this,ku("Promise")),t=Du(r);return this.then(t?function(i){return Lu(e,r()).then(function(){return i})}:r,t?function(i){return Lu(e,r()).then(function(){throw i})}:r)}});!$g&&Du(Pr)&&(hi=ku("Promise").prototype.finally,gi.finally!==hi&&Fg(gi,"finally",hi,{unsafe:!0}));var hi});var ju=n((YS,Mu)=>{"use strict";sa();Nu();$u();var Ug=It();Mu.exports=Ug("Promise","finally")});var Bu=n((JS,Fu)=>{"use strict";var Vg=ju();Fu.exports=Vg});var Vu=n((XS,Uu)=>{"use strict";var Gg=Bu();Uu.exports=Gg});var Ku=n((ZS,Gu)=>{"use strict";Gu.exports=function(){}});var zu=n((eI,Hu)=>{"use strict";var mi=j(),Kg=N(),Wu=Function.prototype,Wg=mi&&Object.getOwnPropertyDescriptor,bi=Kg(Wu,"name"),Hg=bi&&function(){}.name==="something",zg=bi&&(!mi||mi&&Wg(Wu,"name").configurable);Hu.exports={EXISTS:bi,PROPER:Hg,CONFIGURABLE:zg}});var Yu=n((rI,Qu)=>{"use strict";var Qg=si(),Yg=Math.max,Jg=Math.min;Qu.exports=function(r,e){var t=Qg(r);return t<0?Yg(t+e,0):Jg(t,e)}});var Zu=n((tI,Xu)=>{"use strict";var Xg=oe(),Zg=Yu(),em=ui(),Ju=function(r){return function(e,t,i){var o=Xg(e),a=em(o),u=Zg(i,a),l;if(r&&t!=t){for(;a>u;)if(l=o[u++],l!=l)return!0}else for(;a>u;u++)if((r||u in o)&&o[u]===t)return r||u||0;return!r&&-1}};Xu.exports={includes:Ju(!0),indexOf:Ju(!1)}});var tc=n((iI,rc)=>{"use strict";var rm=O(),yi=N(),tm=oe(),im=Zu().indexOf,om=pr(),ec=rm([].push);rc.exports=function(r,e){var t=tm(r),i=0,o=[],a;for(a in t)!yi(om,a)&&yi(t,a)&&ec(o,a);for(;e.length>i;)yi(t,a=e[i++])&&(~im(o,a)||ec(o,a));return o}});var Si=n((oI,ic)=>{"use strict";ic.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var nc=n((nI,oc)=>{"use strict";var nm=tc(),am=Si();oc.exports=Object.keys||function(e){return nm(e,am)}});var sc=n(ac=>{"use strict";var sm=j(),um=dt(),cm=z(),lm=L(),fm=oe(),dm=nc();ac.f=sm&&!um?Object.defineProperties:function(e,t){lm(e);for(var i=fm(t),o=dm(t),a=o.length,u=0,l;a>u;)cm.f(e,l=o[u++],i[l]);return e}});var Pi=n((sI,vc)=>{"use strict";var pm=L(),vm=sc(),uc=Si(),hm=pr(),gm=Rt(),mm=Ze(),bm=dr(),cc=">",lc="<",Ei="prototype",qi="script",dc=bm("IE_PROTO"),Ii=function(){},pc=function(r){return lc+qi+cc+r+lc+"/"+qi+cc},fc=function(r){r.write(pc("")),r.close();var e=r.parentWindow.Object;return r=null,e},ym=function(){var r=mm("iframe"),e="java"+qi+":",t;return r.style.display="none",gm.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(pc("document.F=Object")),t.close(),t.F},Tr,Or=function(){try{Tr=new ActiveXObject("htmlfile")}catch(e){}Or=typeof document!="undefined"?document.domain&&Tr?fc(Tr):ym():fc(Tr);for(var r=uc.length;r--;)delete Or[Ei][uc[r]];return Or()};hm[dc]=!0;vc.exports=Object.create||function(e,t){var i;return e!==null?(Ii[Ei]=pm(e),i=new Ii,Ii[Ei]=null,i[dc]=e):i=Or(),t===void 0?i:vm.f(i,t)}});var gc=n((uI,hc)=>{"use strict";var Sm=x();hc.exports=!Sm(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var Oi=n((cI,bc)=>{"use strict";var Im=N(),Em=I(),qm=Je(),Pm=dr(),Tm=gc(),mc=Pm("IE_PROTO"),Ti=Object,Om=Ti.prototype;bc.exports=Tm?Ti.getPrototypeOf:function(r){var e=qm(r);if(Im(e,mc))return e[mc];var t=e.constructor;return Em(t)&&e instanceof t?t.prototype:e instanceof Ti?Om:null}});var wi=n((lI,Ic)=>{"use strict";var _m=x(),xm=I(),Rm=F(),wm=Pi(),yc=Oi(),Am=fe(),Cm=T(),Nm=C(),Ri=Cm("iterator"),Sc=!1,V,_i,xi;[].keys&&(xi=[].keys(),"next"in xi?(_i=yc(yc(xi)),_i!==Object.prototype&&(V=_i)):Sc=!0);var Lm=!Rm(V)||_m(function(){var r={};return V[Ri].call(r)!==r});Lm?V={}:Nm&&(V=wm(V));xm(V[Ri])||Am(V,Ri,function(){return this});Ic.exports={IteratorPrototype:V,BUGGY_SAFARI_ITERATORS:Sc}});var qc=n((fI,Ec)=>{"use strict";var km=wi().IteratorPrototype,Dm=Pi(),$m=Ee(),Mm=ur(),jm=re(),Fm=function(){return this};Ec.exports=function(r,e,t,i){var o=e+" Iterator";return r.prototype=Dm(km,{next:$m(+!i,t)}),Mm(r,o,!1,!0),jm[o]=Fm,r}});var Lc=n((dI,Nc)=>{"use strict";var Bm=k(),Um=_(),_r=C(),Ac=zu(),Vm=I(),Gm=qc(),Pc=Oi(),Tc=Pt(),Km=ur(),Wm=Q(),Ai=fe(),Hm=T(),Oc=re(),Cc=wi(),zm=Ac.PROPER,Qm=Ac.CONFIGURABLE,_c=Cc.IteratorPrototype,xr=Cc.BUGGY_SAFARI_ITERATORS,$e=Hm("iterator"),xc="keys",Me="values",Rc="entries",wc=function(){return this};Nc.exports=function(r,e,t,i,o,a,u){Gm(t,e,i);var l=function(S){if(S===o&&v)return v;if(!xr&&S in s)return s[S];switch(S){case xc:return function(){return new t(this,S)};case Me:return function(){return new t(this,S)};case Rc:return function(){return new t(this,S)}}return function(){return new t(this)}},f=e+" Iterator",d=!1,s=r.prototype,c=s[$e]||s["@@iterator"]||o&&s[o],v=!xr&&c||l(o),p=e=="Array"&&s.entries||c,m,y,E;if(p&&(m=Pc(p.call(new r)),m!==Object.prototype&&m.next&&(!_r&&Pc(m)!==_c&&(Tc?Tc(m,_c):Vm(m[$e])||Ai(m,$e,wc)),Km(m,f,!0,!0),_r&&(Oc[f]=wc))),zm&&o==Me&&c&&c.name!==Me&&(!_r&&Qm?Wm(s,"name",Me):(d=!0,v=function(){return Um(c,this)})),o)if(y={values:l(Me),keys:a?v:l(xc),entries:l(Rc)},u)for(E in y)(xr||d||!(E in s))&&Ai(s,E,y[E]);else Bm({target:e,proto:!0,forced:xr||d},y);return(!_r||u)&&s[$e]!==v&&Ai(s,$e,v,{name:o}),Oc[e]=v,y}});var Dc=n((pI,kc)=>{"use strict";kc.exports=function(r,e){return{value:r,done:e}}});var Ni=n((vI,Bc)=>{"use strict";var Ym=oe(),Ci=Ku(),$c=re(),jc=Qt(),Jm=z().f,Xm=Lc(),Rr=Dc(),Zm=C(),eb=j(),Fc="Array Iterator",rb=jc.set,tb=jc.getterFor(Fc);Bc.exports=Xm(Array,"Array",function(r,e){rb(this,{type:Fc,target:Ym(r),index:0,kind:e})},function(){var r=tb(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,Rr(void 0,!0)):t=="keys"?Rr(i,!1):t=="values"?Rr(e[i],!1):Rr([i,e[i]],!1)},"values");var Mc=$c.Arguments=$c.Array;Ci("keys");Ci("values");Ci("entries");if(!Zm&&eb&&Mc.name!=="values")try{Jm(Mc,"name",{value:"values"})}catch(r){}});var Vc=n((hI,Uc)=>{"use strict";var ib=Xe(),ob=z(),nb=Ee();Uc.exports=function(r,e,t){var i=ib(e);i in r?ob.f(r,i,nb(0,t)):r[i]=t}});var Gc=n(()=>{"use strict";var ab=k(),sb=qr(),ub=Vc();ab({target:"Object",stat:!0},{fromEntries:function(e){var t={};return sb(e,function(i,o){ub(t,i,o)},{AS_ENTRIES:!0}),t}})});var Wc=n((bI,Kc)=>{"use strict";Ni();Gc();var cb=ze();Kc.exports=cb.Object.fromEntries});var zc=n((yI,Hc)=>{"use strict";Hc.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 Jc=n(()=>{"use strict";Ni();var lb=zc(),fb=P(),db=ue(),pb=Q(),Qc=re(),vb=T(),Yc=vb("toStringTag");for(wr in lb)Li=fb[wr],Ar=Li&&Li.prototype,Ar&&db(Ar)!==Yc&&pb(Ar,Yc,wr),Qc[wr]=Qc.Array;var Li,Ar,wr});var Zc=n((EI,Xc)=>{"use strict";var hb=Wc();Jc();Xc.exports=hb});var rl=n((qI,el)=>{"use strict";var gb=Zc();el.exports=gb});var yb={};El(yb,{ApiEnv:()=>le,ConnectionType:()=>ar,ContentType:()=>nr,InteractiveInterfaceClick:()=>Et,OneStat:()=>jr,Quality:()=>or,SeekAction:()=>sr,VERSION:()=>je});module.exports=ql(yb);var dl=Ur(ea(),1);var le=(a=>(a.PROD="prod",a.VK_ALIAS="vk_alias",a.VIDEOTEST="videotest",a.TEST="test",a.AUTO="auto",a))(le||{}),or=(d=>(d.Q144P="mobile",d.Q240P="lowest",d.Q360P="low",d.Q480P="medium",d.Q720P="high",d.Q1080P="fullhd",d.Q1440P="quadhd",d.Q2160P="ultrahd",d.UNKNOWN="unknown",d))(or||{}),nr=(p=>(p.MP4="mp4",p.DASH="dash",p.DASH_SEP="dash_sep",p.ONDEMAND_DASH="ondemand_dash",p.HLS="hls",p.ONDEMAND_HLS="ondemand_hls",p.WEBM="webm",p.AV1="av1",p.ONDEMAND_DASH_LIVE="ondemand_dash_live",p.ONDEMAND_HLS_LIVE="ondemand_hls_live",p.WEBRTC="webrtc",p.UNKNOWN="unknown",p.RTMP="rtmp",p))(nr||{});var ar=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.HTTP3="http3",i))(ar||{});var sr=(l=>(l.SLIDER="slider",l.DOUBLE_TAP="double_tap",l.TIME_CODE="time_code",l.EPISODE="episode",l.REWIND="rewind",l.LIVE="live",l.UNKNOWN="unknown",l))(sr||{}),Et=(a=>(a.GRAPH_SHOW="iGraphShow",a.GRAPH_HIDE="iGraphHide",a.NEXT_AREA="iNextChapterArea",a.NEXT_BUTTON="iNextChapterBtn",a.WATCH_AGAIN="iWatchAgainBtn",a))(Et||{}),ra={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo"},ta={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},ia={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},oa={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};var na=require("@vkontakte/videoplayer-shared"),gp={apiEnv:"vk_alias",requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:[],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},aa=r=>(0,na.fillWithDefault)(r,gp);function qt(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),t=0,i,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(t<=2&&(t=33554432+Math.random()*16777216|0),i=t&15,t=t>>4,e[o]=r[o===19?i&3|8:i]);return e.join("")}var h=require("@vkontakte/videoplayer-shared"),Fr=require("@vkontakte/videoplayer-shared");var Cr=Ur(Vu(),1);var tl=Ur(rl(),1);var il=r=>{var o;let{operation:e,custom:t}=r,i=(0,tl.default)(Object.entries(t).map(([a,u])=>{var d,s,c;let l=(d=ta[a])!=null?d:a,f=u;return u&&(a==="mode"?f=(s=oa[u])!=null?s:u:a==="quality"&&(f=(c=ia[u])!=null?c:u)),[l,f]}));return Ge(W({},r),{operation:(o=ra[e])!=null?o:e,custom:i})};var je="__VERSION__",ol="CIOPGQJGDIHBABABA",ki={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",auto:""};var $=require("@vkontakte/videoplayer-shared");var Fe=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new $.ValueSubject(!1);this.params=e}authorize(e){return M(this,null,function*(){return this.authToken=e!=null?e:yield this.refreshAuthToken(),this._authorizeWithBackoff()})}logBeacon(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(t,i,o)||this.logRequest(e)}logRequest(e){return M(this,null,function*(){var u;let t="log.externalLog",i=this.createLogParams(e),o=(u=this.sessionKey)!=null?u:yield this._authorizeWithBackoff();if(!o)return;let a=(d,...s)=>M(this,[d,...s],function*(l,f=this.params.config.requestRetryCount){try{return yield this.params.apiTransport.sendRequest(t,i,o)}catch(c){if(!c||!("error_code"in c)){this.params.error$.next({id:"logRequestUnknown",category:$.ErrorCategory.NETWORK,message:`Unknown ${t} error`,thrown:c});return}let v=c==null?void 0:c.error_code;switch(v){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=yield this._authorizeWithBackoff(),f>0?a(l,f-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=yield this.refreshAuthToken(),this.sessionKey=yield this._authorizeWithBackoff(),f>0?a(l,f-1):void 0;default:{this.params.error$.next({id:`LogRequest#${v}`,category:$.ErrorCategory.EXTERNAL_API,message:`${t} error`,data:c});return}}}});return a(e)})}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}refreshAuthToken(){return M(this,null,function*(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=(0,Cr.default)(this.params.refreshAuthToken(),()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise})}createLogParams(e){return{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${je}`,platform:this.params.mobile?"M_WEB":"WEB",items:this.params.config.shorten?e.map(il):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=(0,$.getExponentialDelay)(this.consequentAuthErrors,this.params.config.backoff);return new Promise(t=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{(0,Cr.default)(this._authorize().then(t).catch(i=>this.params.error$.next({id:"AuthorizeBackoff",category:$.ErrorCategory.NETWORK,message:"Otherwise unhandled error in authorization",thrown:i})),()=>this.backoffTimeoutId=0)},e))})}_authorize(){return M(this,null,function*(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",t={session_data:{version:2,device_id:this.params.uuid,client_version:je.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(t.session_data.auth_token=this.authToken,t.session_data.version=3),this.authorizePromise=(0,Cr.default)(this.params.apiTransport.sendRequest(e,t).then(i=>{var o;return(!i||!i.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:$.ErrorCategory.EXTERNAL_API,message:"No session key",data:i}),this.sessionKey=(o=i==null?void 0:i.session_key)!=null?o:void 0,this.sessionKey}).catch(i=>M(this,null,function*(){this.sessionKey=void 0;let o=i==null?void 0:i.error_code;switch(o){case 401:return this.authToken=yield this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:$.ErrorCategory.EXTERNAL_API,message:"authorize error",data:i}):this.params.error$.next({id:"AuthorizeUnknown",category:$.ErrorCategory.NETWORK,message:"authorize error",thrown:i})})),()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise})}};var Nr=class{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,i){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:i})}removeEventListener(e,t){if(!(e in this.listeners))return;let i=this.listeners[e];for(let o=0,a=i.length;o<a;o++)if(i[o].callback===t){i.splice(o,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return;let i=this.listeners[e.type].slice();for(let o=0,a=i.length;o<a;o++){let u=i[o];try{u.callback.call(this,e)}catch(l){Promise.resolve().then(()=>{throw l})}u.options&&u.options.once&&this.removeEventListener(e.type,u.callback)}return!e.defaultPrevented}},ye=class extends Nr{constructor(){super(),this.listeners||Nr.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,typeof this.onabort=="function"&&this.onabort.call(this,e)),super.dispatchEvent(e)}},Be=class{constructor(){Object.defineProperty(this,"signal",{value:new ye,writable:!0,configurable:!0})}abort(e){let t;try{t=new Event("abort")}catch(o){typeof document!="undefined"?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let i=e;if(i===void 0)if(typeof document=="undefined")i=new Error("This operation was aborted"),i.name="AbortError";else try{i=new DOMException("signal is aborted without reason")}catch(o){i=new Error("This operation was aborted"),i.name="AbortError"}this.signal.reason=i,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}};typeof Symbol!="undefined"&&Symbol.toStringTag&&(Be.prototype[Symbol.toStringTag]="AbortController",ye.prototype[Symbol.toStringTag]="AbortSignal");function Lr(r){return r.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):typeof r.Request=="function"&&!r.Request.prototype.hasOwnProperty("signal")||!r.AbortController}function Di(r){typeof r=="function"&&(r={fetch:r});let{fetch:e,Request:t=e.Request,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o=!1}=r;if(!Lr({fetch:e,Request:t,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o}))return{fetch:e,Request:a};let a=t;(a&&!a.prototype.hasOwnProperty("signal")||o)&&(a=function(d,s){let c;s&&s.signal&&(c=s.signal,delete s.signal);let v=new t(d,s);return c&&Object.defineProperty(v,"signal",{writable:!1,enumerable:!1,configurable:!0,value:c}),v},a.prototype=t.prototype);let u=e;return{fetch:(f,d)=>{let s=a&&a.prototype.isPrototypeOf(f)?f.signal:d?d.signal:void 0;if(s){let c;try{c=new DOMException("Aborted","AbortError")}catch(p){c=new Error("Aborted"),c.name="AbortError"}if(s.aborted)return Promise.reject(c);let v=new Promise((p,m)=>{s.addEventListener("abort",()=>m(c),{once:!0})});return d&&d.signal&&delete d.signal,Promise.race([v,u(f,d)])}return u(f,d)},Request:a}}var Ue=Lr({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}),nl=Ue?Di({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}):void 0,$i=Ue?nl.fetch:window.fetch,KI=Ue?nl.Request:window.Request,WI=Ue?Be:window.AbortController,HI=Ue?ye:window.AbortSignal;var G=require("@vkontakte/videoplayer-shared");var Ve=class{constructor(e){this.params=e,this.apiKey=e.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=ki[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}resolveApiBaseUrl(){return M(this,null,function*(){var e;if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let t=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=yield(yield $i(t,{method:"GET",mode:"cors",cache:"no-cache"})).json(),a=(e=o==null?void 0:o.Answer[0])==null?void 0:e.data;if(!a)throw new Error("Wrong DNS response");return a}catch(t){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:G.ErrorCategory.NETWORK,message:"Unhandled resolve api base url error",thrown:t}),ki.vk_alias}finally{this.isApiBaseUrlFetched=!0}})}sendBeacon(e,t,i){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:t,sessionKey:i}),a=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,a)}catch(u){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:G.ErrorCategory.NETWORK,message:"Unhandled beacon error",thrown:u,data:{method:e,params:t}})}return!1}sendRequest(e,t,i){return M(this,null,function*(){let o=(0,G.now)(),a=u=>{if(u instanceof TypeError&&["Failed to fetch","NetworkError when attempting to fetch resource."].includes(u.message)){this.params.error$.next({id:"Network",category:G.ErrorCategory.NETWORK,message:"Request failed",thrown:u});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:G.ErrorCategory.NETWORK,message:"Unhandled request error",thrown:u,data:{method:e,params:t,sessionKey:i,time:(0,G.now)()-o}})};return this.apiBaseUrl=yield this.resolveApiBaseUrl(),$i(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:t,sessionKey:i})}).then(u=>{var s,c;let l=Number(u.headers.get("content-length"))===0,f=new Date((s=u.headers.get("date"))!=null?s:"").getTime(),d=(0,G.now)()-o;if(isFinite(f)&&((c=this.timeSynchronisation)==null||c.addServerTime(f,d)),!l)return u.json().then(v=>Object.prototype.hasOwnProperty.call(v,"error_msg")?Promise.reject(v):v,a)},a)})}_prepareQueryParams(e){let t=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&t.append("session_key",e.sessionKey),Object.entries(e.queryParams).forEach(([i,o])=>t.append(i,typeof o=="string"?o:JSON.stringify(o))),t}};var w=require("@vkontakte/videoplayer-shared");var kr="onestat_events",Mi=r=>e=>e.timestamp+r>=(0,w.now)(),Dr=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:t}=e;return["action_play","watch_coverage_record","watch_coverage_live"].includes(t)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=(0,w.debounceFn)(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let t=w.safeStorage.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=(0,w.debounceFn)(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:t}),this.subscription=this.api.authorized$.subscribe(i=>{i&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){var e;try{this.flush()}catch(t){this.error$.next({id:"LoggerError",category:w.ErrorCategory.WTF,message:(e=String(t))!=null?e:"Unknown logger error",thrown:t})}}readFromStorage(){let e=w.safeStorage.get(kr);try{return e?JSON.parse(e):{}}catch(t){}return{}}addToStorage(e){var a;if(!this.userSalt){this.unsaltedStorage.push(e);return}let t=this.readFromStorage(),o=((a=t[this.userSalt])!=null?a:[]).filter(Mi(this.params.config.storageExpiration));w.safeStorage.set(kr,JSON.stringify(Ge(W({},t),{[this.userSalt]:[...o,e]})))}getFromStorage(){var i;return this.userSalt?((i=this.readFromStorage()[this.userSalt])!=null?i:[]).filter(Mi(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],w.safeStorage.set(kr,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[t,i]of Object.entries(e)){let o=i.filter(Mi(this.params.config.storageExpiration));o.length?e[t]=o:delete e[t],this.loggerDebugLog({message:`${i.length} retrieved from storage, ${o.length} of them actual`})}w.safeStorage.set(kr,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush(e=!1){let t=this.getFromStorage();t.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${t.length} events through beacon`}),this.api.logBeacon(t)):(this.loggerDebugLog({message:`Flushing ${t.length} events`}),this.api.logRequest(t)),this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};var g=require("@vkontakte/videoplayer-core"),ji=require("@vkontakte/videoplayer-shared");var al=r=>r&&{[g.VideoQuality.INVARIANT]:"unknown",[g.VideoQuality.Q_144P]:"mobile",[g.VideoQuality.Q_240P]:"lowest",[g.VideoQuality.Q_360P]:"low",[g.VideoQuality.Q_480P]:"medium",[g.VideoQuality.Q_720P]:"high",[g.VideoQuality.Q_1080P]:"fullhd",[g.VideoQuality.Q_1440P]:"quadhd",[g.VideoQuality.Q_2160P]:"ultrahd",[g.VideoQuality.Q_4320P]:"unknown"}[r],Fi=r=>r&&{[g.HttpConnectionType.HTTP1]:"http1",[g.HttpConnectionType.HTTP2]:"http2",[g.HttpConnectionType.QUIC]:"http3"}[r],sl=r=>{if(r!==void 0)switch(r){case g.VideoFormat.MPEG:return"mp4";case g.VideoFormat.DASH_LIVE:return"dash";case g.VideoFormat.DASH_SEP:return"dash_sep";case g.VideoFormat.DASH_ONDEMAND:return"ondemand_dash";case g.VideoFormat.DASH_WEBM:case g.VideoFormat.DASH_LIVE_WEBM:return"webm";case g.VideoFormat.DASH_WEBM_AV1:return"av1";case g.VideoFormat.DASH_LIVE_CMAF:return"ondemand_dash_live";case g.VideoFormat.HLS:case g.VideoFormat.HLS_LIVE:return"hls";case g.VideoFormat.HLS_ONDEMAND:return"ondemand_hls";case g.VideoFormat.HLS_LIVE_CMAF:return"ondemand_hls_live";case g.VideoFormat.WEB_RTC_LIVE:return"webrtc";default:return(0,ji.assertNever)(r)}},$r=r=>{if(r!==void 0)switch(r){case g.Surface.NONE:case g.Surface.INLINE:return;case g.Surface.FULLSCREEN:return"fullscreen";case g.Surface.SECOND_SCREEN:return"chromecast";case g.Surface.PIP:return"pip";case g.Surface.INVISIBLE:return"invisible";default:return(0,ji.assertNever)(r)}},ul=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var Mr=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){var e;return(e=this.offset)!=null?e:0}setOffset(e){this.offset=e}now(){var e;return Date.now()+((e=this.offset)!=null?e:0)}date(e=new Date){var t;return e.setTime(e.getTime()+((t=this.offset)!=null?t:0)),e}addServerTime(e,t){let i=Date.now(),o=e-i-t/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var cl=()=>Math.floor(Math.random()*4294967296).toString(36).padStart(7,"0"),ll=()=>Math.floor(Math.random()*18446744073709552e3).toString(36).padStart(13,"0");var Bi=require("@vkontakte/videoplayer-core"),b=require("@vkontakte/videoplayer-shared"),fl=(r,e)=>new b.Observable(t=>{let i=new b.Subscription,o=(0,b.merge)((0,b.fromEvent)(window,"beforeunload"),r.events.willDestruct$),a=new b.ValueSubject(void 0),u;i.add(r.info.isLive$.pipe((0,b.filterChanged)()).subscribe(K=>{u&&(u.unsubscribe(),a.next(void 0)),K?u=r.info.liveTime$.pipe((0,b.map)(Br=>Br&&Br/1e3)).subscribe(a):u=r.info.position$.subscribe(a),i.add(u)}));let{playing$:l,paused$:f}=r.events,d=r.events.willSeek$.pipe((0,b.filter)(()=>r.info.playbackState$.getValue()===Bi.PlaybackState.PLAYING)),s=r.events.seeked$.pipe((0,b.filter)(()=>r.info.playbackState$.getValue()===Bi.PlaybackState.PLAYING)),c=!1,v=new b.Subject;i.add(d.subscribe(()=>{c||v.next(),c=!0})),i.add(s.subscribe(()=>c=!1));let p=new b.Subject,m=new b.Subject,y=(0,b.merge)(l,s,p),E=(0,b.merge)(f,v,o,r.events.looped$,m),S,q=()=>S=a.getValue(),pl=()=>{let K=a.getValue();(0,b.isNullable)(S)||S===K||(0,b.isNullable)(K)||(t.next({from:S,to:K}),S=void 0)},vl=()=>{m.next(),p.next()};if(i.add(y.subscribe(q)),i.add(E.subscribe(pl)),e.forceInterval&&isFinite(e.forceInterval)){let K=0;i.add(y.subscribe(()=>K=window.setTimeout(vl,e.forceInterval))),i.add(E.subscribe(()=>window.clearTimeout(K)))}return i});var bb="_one-stat_",Ui=`${bb}uuid`,Vi=()=>{let r=new h.Subscription;return{subscription:r,subscribe:(e,t)=>{e&&r.add(e.subscribe(t))}}},jr=class{constructor(e,t){this.subscription=new h.Subscription;this.debugLogger=new Fr.Logger;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new h.ValueSubject(void 0);this.isid$=new h.ValueSubject(void 0);this.seekAction$=new h.ValueSubject("unknown");var f,d,s;this.statContext=e,this.config=aa((f=t.config)!=null?f:{}),(0,h.isNonNullable)(t.apiEnv)&&(this.config.apiEnv=t.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new Mr);let i=new h.Subject;this.experimental={error$:i};let o=h.safeStorage.get(Ui);o?o.startsWith('"')&&o.endsWith('"')?(this.uuid=(0,dl.default)(o,'"',""),h.safeStorage.set(Ui,this.uuid)):this.uuid=o:(this.uuid=qt(),h.safeStorage.set(Ui,this.uuid)),this.resetViewSession(),t.useIsid&&this.isid$.next((d=t.isid)!=null?d:ll());let a=new Ve({apiKey:ol,config:this.config,error$:i,timeSynchronisation:this.timeSynchronisation});this.api=new Fe({config:this.config,apiTransport:a,refreshAuthToken:t.refreshAuthToken,mobile:(s=this.statContext.mobile)!=null?s:!1,uuid:this.uuid,error$:i}),this.logger=new Dr({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:i,userSalt:t.userSalt});let{isEmbed:u,host:l}=(0,Fr.detectEmbed)();this.isEmbed=u,this.embedParent=l,this.subscribe()}updateContext(e){this.statContext=W(W({},this.statContext),e)}attachTo(e){let t=new h.Subscription,i=(s,c)=>t.add(s.subscribe(c));i(e.events.willStart$,()=>{let s=e.info.position$.getValue();this.logActionPlay({position:s}),this.statContext.projectId&&this.logActionPlayInteractive({position:s})}),i(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),i(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),i(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),i(e.events.willResume$,()=>{this.logPlay()}),i(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),i(fl(e,{forceInterval:this.config.watchCoverageInterval}),s=>{let c=e.info.isLive$.getValue(),v={start:parseFloat(s.from.toFixed(3)),end:parseFloat(s.to.toFixed(3))};c?this.logWatchCoverageLive(v):this.logWatchCoverageRecord(v)});let o;i(e.info.isStalled$,s=>{s?o=(0,h.now)():((0,h.isNonNullable)(o)&&this.logEmptyBuffer({duration:(0,h.now)()-o}),o=void 0)});let a=!1;t.add(e.events.fatalError$.pipe((0,h.once)()).subscribe(()=>a=!0)),i(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let c=(0,h.isNonNullable)(o)?(0,h.now)()-o:void 0;this.logCloseAtEmptyBuffer({duration:c!=null?c:0}),o=void 0}else a||this.logActionStop()}),i(e.events.managedError$,({id:s})=>{this.logError({fatal:!1,errorType:s})}),i(e.events.fatalError$,({id:s})=>{this.logError({fatal:!0,errorType:s})});let u,l,f=!1;i(e.events.firstBytes$,s=>{u=(0,h.now)(),this.logFirstBytes({time:s})}),i(e.events.willStart$,()=>l=(0,h.now)()),i(e.info.currentBuffer$,s=>{!f&&s&&s.end-s.start>0&&(0,h.isNonNullable)(u)&&(this.logPlayerReady({duration:(0,h.now)()-u}),f=!0)}),i(e.events.firstFrame$,()=>{(0,h.isNonNullable)(u)&&!f&&(this.logPlayerReady({duration:(0,h.now)()-u}),f=!0),(0,h.isNonNullable)(l)&&this.logFirstFrame({time:(0,h.now)()-l})}),i(e.info.atLiveEdge$,s=>this.updateContext({liveEdge:s})),i((0,h.combine)({muted:e.info.muted$,volume:e.info.volume$}),({muted:s,volume:c})=>this.updateContext({audible:!s&&c>0})),i(e.info.currentQuality$,s=>this.updateContext({quality:al(s)})),i(e.info.isAutoQualityEnabled$,s=>this.updateContext({autoQuality:s})),i(e.info.currentFormat$,s=>this.updateContext({contentType:sl(s)})),i(e.info.currentPlaybackRate$,s=>this.updateContext({rate:s})),i(e.info.is3DVideo$,s=>this.updateContext({is3d:s}));let d;return i(e.info.hostname$,s=>{let c=d!==void 0&&d!==s;this.updateContext({cdnHostname:s,failover:c}),c&&this.logFailover(s),d=s}),i(e.info.throughputEstimation$,s=>this.updateContext({downloadSpeed:s})),i(e.info.httpConnectionType$,s=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:Fi(s)}),this.updateContext({connectionType:Fi(s)})}),i(e.info.httpConnectionReused$,s=>{(0,h.isNullable)(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:s}),this.updateContext({connectionReused:s})}),i(e.info.surface$,s=>this.updateContext({mode:$r(s)})),i((0,h.combine)({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:s,available:c})=>{let v=c.find(({id:m})=>m===s),p=v&&(v.isAuto?`${v.language}_auto`:v.language);this.updateContext({subtitles:p})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToUi(e){this.uiEvents=e;let{subscription:t,subscribe:i}=Vi();return this.player&&(i(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),i(e.actionSeek$,this.seekAction$),i(e.inPiP$,o=>{var u;let a=o?"pip":$r((u=this.player)==null?void 0:u.info.surface$.getValue());this.updateContext({mode:a})}),i(e.inFullscreen$,o=>{var u;let a=o?"fullscreen":$r((u=this.player)==null?void 0:u.info.surface$.getValue());this.updateContext({mode:a})}),i(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o})),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t)),t}attachToAds(e){let{subscription:t,subscribe:i}=Vi();return i(e.slotRequested$,()=>this.logAdSlotRequest()),i(e.started$,o=>this.logAdStarted(o)),i(e.paused$,()=>this.logAdPaused()),i(e.resumed$,()=>this.logAdResumed()),i(e.ended$,()=>this.logAdEnded()),i(e.skipped$,()=>this.logAdSkipped()),i(e.clicked$,()=>this.logAdClicked()),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToInteractive(e){let{subscription:t,subscribe:i}=Vi();return i(e.click$,o=>this.logInterfaceClick(o)),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t),t}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(cl())}getDeviceId(){return this.uuid}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`})}logWatchCoverageLive(e){var a,u;let t=(u=(a=this.timeSynchronisation)==null?void 0:a.getOffset())!=null?u:0,i=e.start+t,o=e.end+t;this.log({operation:"watch_coverage_live",param:`${i}-${o}`})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add((0,h.merge)((0,h.fromEvent)(e,"change"),(0,h.observableFrom)(["init"])).subscribe(()=>this.updateContext({network:ul(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(t=>{console.debug("%c stat ","background:#fa6470;",`component: ${t.component}.`,t.message)})}resubscribeBeforeunload(){var e;(e=this.beforeunloadSubscription)==null||e.unsubscribe(),this.beforeunloadSubscription=(0,h.fromEvent)(window,"beforeunload").subscribe(()=>this.logger.flush(!0)),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(e){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(Math.round(e.position))},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}log(e,t={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if(this.config.disabledOperations.includes(e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let i=this.createLogItem(e,t);this.logger.log(i)}createLogItem({operation:e,param:t,time:i},o={}){var p,m;let a=(m=(p=this.timeSynchronisation)==null?void 0:p.now())!=null?m:(0,h.now)(),u=this.vsid$.getValue();(0,h.assertNonNullable)(u);let l=this.isid$.getValue(),f=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,d=this.statContext.firstConnectionReused,s,c;if(this.isEmbed){s=this.embedParent;let y=[...new URLSearchParams(location.search).entries()].filter(([E,S])=>this.config.embedUrlParams.includes(E));c=new URLSearchParams(y).toString()}else this.statContext.place==="direct"&&((this.statContext.refDomain||document.referrer)&&(s=new URL(this.statContext.refDomain||document.referrer).hostname),c=location.href.substring(0,1024));let v=W({vsid:u,isid:l,vid:this.statContext.movieId,ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:t,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:f,connection_reused:d===!0?1:d===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:s,direct_url:c,rate:this.statContext.rate===1||(0,h.isNullable)(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId},o);for(let y of this.config.disabledCustomFields)delete v[y];return{operation:e,type:1,time:i,network:this.statContext.network,timestamp:a,custom:v}}};
6
+ "use strict";var k=Object.defineProperty,Ie=Object.defineProperties,Se=Object.getOwnPropertyDescriptor,ye=Object.getOwnPropertyDescriptors,Pe=Object.getOwnPropertyNames,Z=Object.getOwnPropertySymbols;var te=Object.prototype.hasOwnProperty,Ee=Object.prototype.propertyIsEnumerable;var ee=(r,e,i)=>e in r?k(r,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):r[e]=i,P=(r,e)=>{for(var i in e||(e={}))te.call(e,i)&&ee(r,i,e[i]);if(Z)for(var i of Z(e))Ee.call(e,i)&&ee(r,i,e[i]);return r},$=(r,e)=>Ie(r,ye(e));var _e=(r,e)=>{for(var i in e)k(r,i,{get:e[i],enumerable:!0})},Ae=(r,e,i,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Pe(e))!te.call(r,o)&&o!==i&&k(r,o,{get:()=>e[o],enumerable:!(t=Se(e,o))||t.enumerable});return r};var xe=r=>Ae(k({},"__esModule",{value:!0}),r);var I=(r,e,i)=>new Promise((t,o)=>{var n=l=>{try{h(i.next(l))}catch(p){o(p)}},a=l=>{try{h(i.throw(l))}catch(p){o(p)}},h=l=>l.done?t(l.value):Promise.resolve(l.value).then(n,a);h((i=i.apply(r,e)).next())});var Le={};_e(Le,{ApiEnv:()=>x,ConnectionType:()=>N,ContentType:()=>O,InteractiveInterfaceClick:()=>K,OneStat:()=>U,Quality:()=>R,SeekAction:()=>D,VERSION:()=>C});module.exports=xe(Le);var x=(n=>(n.PROD="prod",n.VK_ALIAS="vk_alias",n.VIDEOTEST="videotest",n.TEST="test",n.AUTO="auto",n))(x||{}),R=(p=>(p.Q144P="mobile",p.Q240P="lowest",p.Q360P="low",p.Q480P="medium",p.Q720P="high",p.Q1080P="fullhd",p.Q1440P="quadhd",p.Q2160P="ultrahd",p.UNKNOWN="unknown",p))(R||{}),O=(g=>(g.MP4="mp4",g.DASH="dash",g.DASH_SEP="dash_sep",g.ONDEMAND_DASH="ondemand_dash",g.HLS="hls",g.ONDEMAND_HLS="ondemand_hls",g.WEBM="webm",g.AV1="av1",g.ONDEMAND_DASH_LIVE="ondemand_dash_live",g.ONDEMAND_HLS_LIVE="ondemand_hls_live",g.WEBRTC="webrtc",g.UNKNOWN="unknown",g.RTMP="rtmp",g))(O||{});var N=(t=>(t.HTTP1="http1",t.HTTP2="http2",t.HTTP3="http3",t))(N||{});var D=(h=>(h.SLIDER="slider",h.DOUBLE_TAP="double_tap",h.TIME_CODE="time_code",h.EPISODE="episode",h.REWIND="rewind",h.LIVE="live",h.UNKNOWN="unknown",h))(D||{}),K=(n=>(n.GRAPH_SHOW="iGraphShow",n.GRAPH_HIDE="iGraphHide",n.NEXT_AREA="iNextChapterArea",n.NEXT_BUTTON="iNextChapterBtn",n.WATCH_AGAIN="iWatchAgainBtn",n))(K||{}),ie={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo"},oe={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},se={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},re={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};var ne=require("@vkontakte/videoplayer-shared"),Ce={apiEnv:"vk_alias",requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:[],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},ae=r=>(0,ne.fillWithDefault)(r,Ce);function q(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),i=0,t,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(i<=2&&(i=33554432+Math.random()*16777216|0),t=i&15,i=i>>4,e[o]=r[o===19?t&3|8:t]);return e.join("")}var d=require("@vkontakte/videoplayer-shared"),W=require("@vkontakte/videoplayer-shared");var de=r=>{var o;let{operation:e,custom:i}=r,t=Object.fromEntries(Object.entries(i).map(([n,a])=>{var p,s,u;let h=(p=oe[n])!=null?p:n,l=a;return a&&(n==="mode"?l=(s=re[a])!=null?s:a:n==="quality"&&(l=(u=se[a])!=null?u:a)),[h,l]}));return $(P({},r),{operation:(o=ie[e])!=null?o:e,custom:t})};var C="1.0.51-dev.9505da81.0",ue="CIOPGQJGDIHBABABA",z={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",auto:""};var v=require("@vkontakte/videoplayer-shared");var T=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new v.ValueSubject(!1);this.params=e}authorize(e){return I(this,null,function*(){return this.authToken=e!=null?e:yield this.refreshAuthToken(),this._authorizeWithBackoff()})}logBeacon(e){let i="log.externalLog",t=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(i,t,o)||this.logRequest(e)}logRequest(e){return I(this,null,function*(){var a;let i="log.externalLog",t=this.createLogParams(e),o=(a=this.sessionKey)!=null?a:yield this._authorizeWithBackoff();if(!o)return;let n=(p,...s)=>I(this,[p,...s],function*(h,l=this.params.config.requestRetryCount){try{return yield this.params.apiTransport.sendRequest(i,t,o)}catch(u){if(!u||!("error_code"in u)){this.params.error$.next({id:"logRequestUnknown",category:v.ErrorCategory.NETWORK,message:`Unknown ${i} error`,thrown:u});return}let m=u==null?void 0:u.error_code;switch(m){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=yield this._authorizeWithBackoff(),l>0?n(h,l-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=yield this.refreshAuthToken(),this.sessionKey=yield this._authorizeWithBackoff(),l>0?n(h,l-1):void 0;default:{this.params.error$.next({id:`LogRequest#${m}`,category:v.ErrorCategory.EXTERNAL_API,message:`${i} error`,data:u});return}}}});return n(e)})}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}refreshAuthToken(){return I(this,null,function*(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=this.params.refreshAuthToken().finally(()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise})}createLogParams(e){return{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${C}`,platform:this.params.mobile?"M_WEB":"WEB",items:this.params.config.shorten?e.map(de):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=(0,v.getExponentialDelay)(this.consequentAuthErrors,this.params.config.backoff);return new Promise(i=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{this._authorize().then(i).catch(t=>this.params.error$.next({id:"AuthorizeBackoff",category:v.ErrorCategory.NETWORK,message:"Otherwise unhandled error in authorization",thrown:t})).finally(()=>this.backoffTimeoutId=0)},e))})}_authorize(){return I(this,null,function*(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",i={session_data:{version:2,device_id:this.params.uuid,client_version:C.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(i.session_data.auth_token=this.authToken,i.session_data.version=3),this.authorizePromise=this.params.apiTransport.sendRequest(e,i).then(t=>{var o;return(!t||!t.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:v.ErrorCategory.EXTERNAL_API,message:"No session key",data:t}),this.sessionKey=(o=t==null?void 0:t.session_key)!=null?o:void 0,this.sessionKey}).catch(t=>I(this,null,function*(){this.sessionKey=void 0;let o=t==null?void 0:t.error_code;switch(o){case 401:return this.authToken=yield this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:v.ErrorCategory.EXTERNAL_API,message:"authorize error",data:t}):this.params.error$.next({id:"AuthorizeUnknown",category:v.ErrorCategory.NETWORK,message:"authorize error",thrown:t})})).finally(()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise})}};var S=require("@vkontakte/videoplayer-shared");var w=class{constructor(e){this.params=e,this.apiKey=e.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=z[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}resolveApiBaseUrl(){return I(this,null,function*(){var e;if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let i=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=yield(yield fetch(i,{method:"GET",mode:"cors",cache:"no-cache"})).json(),n=(e=o==null?void 0:o.Answer[0])==null?void 0:e.data;if(!n)throw new Error("Wrong DNS response");return n}catch(i){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:S.ErrorCategory.NETWORK,message:"Unhandled resolve api base url error",thrown:i}),z.vk_alias}finally{this.isApiBaseUrlFetched=!0}})}sendBeacon(e,i,t){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:i,sessionKey:t}),n=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,n)}catch(a){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:S.ErrorCategory.NETWORK,message:"Unhandled beacon error",thrown:a,data:{method:e,params:i}})}return!1}sendRequest(e,i,t){return I(this,null,function*(){let o=(0,S.now)(),n=a=>{if(a instanceof TypeError&&["Failed to fetch","NetworkError when attempting to fetch resource."].includes(a.message)){this.params.error$.next({id:"Network",category:S.ErrorCategory.NETWORK,message:"Request failed",thrown:a});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:S.ErrorCategory.NETWORK,message:"Unhandled request error",thrown:a,data:{method:e,params:i,sessionKey:t,time:(0,S.now)()-o}})};return this.apiBaseUrl=yield this.resolveApiBaseUrl(),fetch(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:i,sessionKey:t})}).then(a=>{var s,u;let h=Number(a.headers.get("content-length"))===0,l=new Date((s=a.headers.get("date"))!=null?s:"").getTime(),p=(0,S.now)()-o;if(isFinite(l)&&((u=this.timeSynchronisation)==null||u.addServerTime(l,p)),!h)return a.json().then(m=>Object.prototype.hasOwnProperty.call(m,"error_msg")?Promise.reject(m):m,n)},n)})}_prepareQueryParams(e){let i=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&i.append("session_key",e.sessionKey),Object.entries(e.queryParams).forEach(([t,o])=>i.append(t,typeof o=="string"?o:JSON.stringify(o))),i}};var b=require("@vkontakte/videoplayer-shared");var B="onestat_events",Q=r=>e=>e.timestamp+r>=(0,b.now)(),F=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:i}=e;return["action_play","watch_coverage_record","watch_coverage_live"].includes(i)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=(0,b.debounceFn)(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let i=b.safeStorage.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=(0,b.debounceFn)(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:i}),this.subscription=this.api.authorized$.subscribe(t=>{t&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){var e;try{this.flush()}catch(i){this.error$.next({id:"LoggerError",category:b.ErrorCategory.WTF,message:(e=String(i))!=null?e:"Unknown logger error",thrown:i})}}readFromStorage(){let e=b.safeStorage.get(B);try{return e?JSON.parse(e):{}}catch(i){}return{}}addToStorage(e){var n;if(!this.userSalt){this.unsaltedStorage.push(e);return}let i=this.readFromStorage(),o=((n=i[this.userSalt])!=null?n:[]).filter(Q(this.params.config.storageExpiration));b.safeStorage.set(B,JSON.stringify($(P({},i),{[this.userSalt]:[...o,e]})))}getFromStorage(){var t;return this.userSalt?((t=this.readFromStorage()[this.userSalt])!=null?t:[]).filter(Q(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],b.safeStorage.set(B,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[i,t]of Object.entries(e)){let o=t.filter(Q(this.params.config.storageExpiration));o.length?e[i]=o:delete e[i],this.loggerDebugLog({message:`${t.length} retrieved from storage, ${o.length} of them actual`})}b.safeStorage.set(B,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush(e=!1){let i=this.getFromStorage();i.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${i.length} events through beacon`}),this.api.logBeacon(i)):(this.loggerDebugLog({message:`Flushing ${i.length} events`}),this.api.logRequest(i)),this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};var c=require("@vkontakte/videoplayer-core"),j=require("@vkontakte/videoplayer-shared");var ce=r=>r&&{[c.VideoQuality.INVARIANT]:"unknown",[c.VideoQuality.Q_144P]:"mobile",[c.VideoQuality.Q_240P]:"lowest",[c.VideoQuality.Q_360P]:"low",[c.VideoQuality.Q_480P]:"medium",[c.VideoQuality.Q_720P]:"high",[c.VideoQuality.Q_1080P]:"fullhd",[c.VideoQuality.Q_1440P]:"quadhd",[c.VideoQuality.Q_2160P]:"ultrahd",[c.VideoQuality.Q_4320P]:"unknown"}[r],G=r=>r&&{[c.HttpConnectionType.HTTP1]:"http1",[c.HttpConnectionType.HTTP2]:"http2",[c.HttpConnectionType.QUIC]:"http3"}[r],le=r=>{if(r!==void 0)switch(r){case c.VideoFormat.MPEG:return"mp4";case c.VideoFormat.DASH_LIVE:return"dash";case c.VideoFormat.DASH_SEP:return"dash_sep";case c.VideoFormat.DASH_ONDEMAND:return"ondemand_dash";case c.VideoFormat.DASH_WEBM:case c.VideoFormat.DASH_LIVE_WEBM:return"webm";case c.VideoFormat.DASH_WEBM_AV1:return"av1";case c.VideoFormat.DASH_LIVE_CMAF:return"ondemand_dash_live";case c.VideoFormat.HLS:case c.VideoFormat.HLS_LIVE:return"hls";case c.VideoFormat.HLS_ONDEMAND:return"ondemand_hls";case c.VideoFormat.HLS_LIVE_CMAF:return"ondemand_hls_live";case c.VideoFormat.WEB_RTC_LIVE:return"webrtc";default:return(0,j.assertNever)(r)}},M=r=>{if(r!==void 0)switch(r){case c.Surface.NONE:case c.Surface.INLINE:return;case c.Surface.FULLSCREEN:return"fullscreen";case c.Surface.SECOND_SCREEN:return"chromecast";case c.Surface.PIP:return"pip";case c.Surface.INVISIBLE:return"invisible";default:return(0,j.assertNever)(r)}},pe=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var V=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){var e;return(e=this.offset)!=null?e:0}setOffset(e){this.offset=e}now(){var e;return Date.now()+((e=this.offset)!=null?e:0)}date(e=new Date){var i;return e.setTime(e.getTime()+((i=this.offset)!=null?i:0)),e}addServerTime(e,i){let t=Date.now(),o=e-t-i/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var he=()=>Math.floor(Math.random()*4294967296).toString(36).padStart(7,"0"),fe=()=>Math.floor(Math.random()*18446744073709552e3).toString(36).padStart(13,"0");var Y=require("@vkontakte/videoplayer-core"),f=require("@vkontakte/videoplayer-shared"),ge=(r,e)=>new f.Observable(i=>{let t=new f.Subscription,o=(0,f.merge)((0,f.fromEvent)(window,"beforeunload"),r.events.willDestruct$),n=new f.ValueSubject(void 0),a;t.add(r.info.isLive$.pipe((0,f.filterChanged)()).subscribe(y=>{a&&(a.unsubscribe(),n.next(void 0)),y?a=r.info.liveTime$.pipe((0,f.map)(H=>H&&H/1e3)).subscribe(n):a=r.info.position$.subscribe(n),t.add(a)}));let{playing$:h,paused$:l}=r.events,p=r.events.willSeek$.pipe((0,f.filter)(()=>r.info.playbackState$.getValue()===Y.PlaybackState.PLAYING)),s=r.events.seeked$.pipe((0,f.filter)(()=>r.info.playbackState$.getValue()===Y.PlaybackState.PLAYING)),u=!1,m=new f.Subject;t.add(p.subscribe(()=>{u||m.next(),u=!0})),t.add(s.subscribe(()=>u=!1));let g=new f.Subject,E=new f.Subject,_=(0,f.merge)(h,s,g),L=(0,f.merge)(l,m,o,r.events.looped$,E),A,me=()=>A=n.getValue(),be=()=>{let y=n.getValue();(0,f.isNullable)(A)||A===y||(0,f.isNullable)(y)||(i.next({from:A,to:y}),A=void 0)},ve=()=>{E.next(),g.next()};if(t.add(_.subscribe(me)),t.add(L.subscribe(be)),e.forceInterval&&isFinite(e.forceInterval)){let y=0;t.add(_.subscribe(()=>y=window.setTimeout(ve,e.forceInterval))),t.add(L.subscribe(()=>window.clearTimeout(y)))}return t});var we="_one-stat_",X=`${we}uuid`,J=()=>{let r=new d.Subscription;return{subscription:r,subscribe:(e,i)=>{e&&r.add(e.subscribe(i))}}},U=class{constructor(e,i){this.subscription=new d.Subscription;this.debugLogger=new W.Logger;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new d.ValueSubject(void 0);this.isid$=new d.ValueSubject(void 0);this.seekAction$=new d.ValueSubject("unknown");var l,p,s;this.statContext=e,this.config=ae((l=i.config)!=null?l:{}),(0,d.isNonNullable)(i.apiEnv)&&(this.config.apiEnv=i.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new V);let t=new d.Subject;this.experimental={error$:t};let o=d.safeStorage.get(X);o?o.startsWith('"')&&o.endsWith('"')?(this.uuid=o.replaceAll('"',""),d.safeStorage.set(X,this.uuid)):this.uuid=o:(this.uuid=q(),d.safeStorage.set(X,this.uuid)),this.resetViewSession(),i.useIsid&&this.isid$.next((p=i.isid)!=null?p:fe());let n=new w({apiKey:ue,config:this.config,error$:t,timeSynchronisation:this.timeSynchronisation});this.api=new T({config:this.config,apiTransport:n,refreshAuthToken:i.refreshAuthToken,mobile:(s=this.statContext.mobile)!=null?s:!1,uuid:this.uuid,error$:t}),this.logger=new F({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:t,userSalt:i.userSalt});let{isEmbed:a,host:h}=(0,W.detectEmbed)();this.isEmbed=a,this.embedParent=h,this.subscribe()}updateContext(e){this.statContext=P(P({},this.statContext),e)}attachTo(e){let i=new d.Subscription,t=(s,u)=>i.add(s.subscribe(u));t(e.events.willStart$,()=>{let s=e.info.position$.getValue();this.logActionPlay({position:s}),this.statContext.projectId&&this.logActionPlayInteractive()}),t(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),t(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),t(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),t(e.events.willResume$,()=>{this.logPlay()}),t(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),t(ge(e,{forceInterval:this.config.watchCoverageInterval}),s=>{let u=e.info.isLive$.getValue(),m={start:parseFloat(s.from.toFixed(3)),end:parseFloat(s.to.toFixed(3))};u?this.logWatchCoverageLive(m):this.logWatchCoverageRecord(m)});let o;t(e.info.isStalled$,s=>{s?o=(0,d.now)():((0,d.isNonNullable)(o)&&this.logEmptyBuffer({duration:(0,d.now)()-o}),o=void 0)});let n=!1;i.add(e.events.fatalError$.pipe((0,d.once)()).subscribe(()=>n=!0)),t(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let u=(0,d.isNonNullable)(o)?(0,d.now)()-o:void 0;this.logCloseAtEmptyBuffer({duration:u!=null?u:0}),o=void 0}else n||this.logActionStop()}),t(e.events.managedError$,({id:s})=>{this.logError({fatal:!1,errorType:s})}),t(e.events.fatalError$,({id:s})=>{this.logError({fatal:!0,errorType:s})});let a,h,l=!1;t(e.events.firstBytes$,s=>{a=(0,d.now)(),this.logFirstBytes({time:s})}),t(e.events.willStart$,()=>h=(0,d.now)()),t(e.info.currentBuffer$,s=>{!l&&s&&s.end-s.start>0&&(0,d.isNonNullable)(a)&&(this.logPlayerReady({duration:(0,d.now)()-a}),l=!0)}),t(e.events.firstFrame$,()=>{(0,d.isNonNullable)(a)&&!l&&(this.logPlayerReady({duration:(0,d.now)()-a}),l=!0),(0,d.isNonNullable)(h)&&this.logFirstFrame({time:(0,d.now)()-h})}),t(e.info.atLiveEdge$,s=>this.updateContext({liveEdge:s})),t((0,d.combine)({muted:e.info.muted$,volume:e.info.volume$}),({muted:s,volume:u})=>this.updateContext({audible:!s&&u>0})),t(e.info.currentQuality$,s=>this.updateContext({quality:ce(s)})),t(e.info.isAutoQualityEnabled$,s=>this.updateContext({autoQuality:s})),t(e.info.currentFormat$,s=>this.updateContext({contentType:le(s)})),t(e.info.currentPlaybackRate$,s=>this.updateContext({rate:s})),t(e.info.is3DVideo$,s=>this.updateContext({is3d:s}));let p;return t(e.info.hostname$,s=>{let u=p!==void 0&&p!==s;this.updateContext({cdnHostname:s,failover:u}),u&&this.logFailover(s),p=s}),t(e.info.throughputEstimation$,s=>this.updateContext({downloadSpeed:s})),t(e.info.httpConnectionType$,s=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:G(s)}),this.updateContext({connectionType:G(s)})}),t(e.info.httpConnectionReused$,s=>{(0,d.isNullable)(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:s}),this.updateContext({connectionReused:s})}),t(e.info.surface$,s=>this.updateContext({mode:M(s)})),t((0,d.combine)({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:s,available:u})=>{let m=u.find(({id:E})=>E===s),g=m&&(m.isAuto?`${m.language}_auto`:m.language);this.updateContext({subtitles:g})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(i),i}attachToUi(e){this.uiEvents=e;let{subscription:i,subscribe:t}=J();return this.player&&(t(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),t(e.actionSeek$,this.seekAction$),t(e.inPiP$,o=>{var a;let n=o?"pip":M((a=this.player)==null?void 0:a.info.surface$.getValue());this.updateContext({mode:n})}),t(e.inFullscreen$,o=>{var a;let n=o?"fullscreen":M((a=this.player)==null?void 0:a.info.surface$.getValue());this.updateContext({mode:n})}),t(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o})),t(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(i)),i}attachToAds(e){let{subscription:i,subscribe:t}=J();return t(e.slotRequested$,()=>this.logAdSlotRequest()),t(e.started$,o=>this.logAdStarted(o)),t(e.paused$,()=>this.logAdPaused()),t(e.resumed$,()=>this.logAdResumed()),t(e.ended$,()=>this.logAdEnded()),t(e.skipped$,()=>this.logAdSkipped()),t(e.clicked$,()=>this.logAdClicked()),this.resubscribeBeforeunload(),this.subscription.add(i),i}attachToInteractive(e){let{subscription:i,subscribe:t}=J();return t(e.click$,o=>this.logInterfaceClick(o)),t(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(i),i}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(he())}getDeviceId(){return this.uuid}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`})}logWatchCoverageLive(e){var n,a;let i=(a=(n=this.timeSynchronisation)==null?void 0:n.getOffset())!=null?a:0,t=e.start+i,o=e.end+i;this.log({operation:"watch_coverage_live",param:`${t}-${o}`})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add((0,d.merge)((0,d.fromEvent)(e,"change"),(0,d.observableFrom)(["init"])).subscribe(()=>this.updateContext({network:pe(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(i=>{console.debug("%c stat ","background:#fa6470;",`component: ${i.component}.`,i.message)})}resubscribeBeforeunload(){var e;(e=this.beforeunloadSubscription)==null||e.unsubscribe(),this.beforeunloadSubscription=(0,d.fromEvent)(window,"beforeunload").subscribe(()=>this.logger.flush(!0)),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(this.statContext.movieId)},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}log(e,i={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if(this.config.disabledOperations.includes(e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let t=this.createLogItem(e,i);this.logger.log(t)}createLogItem({operation:e,param:i,time:t},o={}){var g,E;let n=(E=(g=this.timeSynchronisation)==null?void 0:g.now())!=null?E:(0,d.now)(),a=this.vsid$.getValue();(0,d.assertNonNullable)(a);let h=this.isid$.getValue(),l=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,p=this.statContext.firstConnectionReused,s,u;if(this.isEmbed){s=this.embedParent;let _=[...new URLSearchParams(location.search).entries()].filter(([L,A])=>this.config.embedUrlParams.includes(L));u=new URLSearchParams(_).toString()}else this.statContext.place==="direct"&&((this.statContext.refDomain||document.referrer)&&(s=new URL(this.statContext.refDomain||document.referrer).hostname),u=location.href.substring(0,1024));let m=P({vsid:a,isid:h,vid:this.statContext.movieId,ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:i,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:l,connection_reused:p===!0?1:p===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:s,direct_url:u,rate:this.statContext.rate===1||(0,d.isNullable)(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId},o);for(let _ of this.config.disabledCustomFields)delete m[_];return{operation:e,type:1,time:t,network:this.statContext.network,timestamp:n,custom:m}}};
package/es2015.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @vkontakte/videoplayer-statistics v1.0.51-dev.790f01a4.0
3
- * Fri, 28 Jun 2024 10:58:38 GMT
2
+ * @vkontakte/videoplayer-statistics v1.0.51-dev.9505da81.0
3
+ * Tue, 09 Jul 2024 13:42:45 GMT
4
4
  * https://st.mycdn.me/static/vkontakte-videoplayer/1-0-51/doc/
5
5
  */
6
- var _l=Object.create;var $r=Object.defineProperty,xl=Object.defineProperties,Rl=Object.getOwnPropertyDescriptor,wl=Object.getOwnPropertyDescriptors,Al=Object.getOwnPropertyNames,Qi=Object.getOwnPropertySymbols,Cl=Object.getPrototypeOf,Ji=Object.prototype.hasOwnProperty,Nl=Object.prototype.propertyIsEnumerable;var Yi=(r,e,t)=>e in r?$r(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,V=(r,e)=>{for(var t in e||(e={}))Ji.call(e,t)&&Yi(r,t,e[t]);if(Qi)for(var t of Qi(e))Nl.call(e,t)&&Yi(r,t,e[t]);return r},Ve=(r,e)=>xl(r,wl(e));var n=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports);var Ll=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Al(e))!Ji.call(r,o)&&o!==t&&$r(r,o,{get:()=>e[o],enumerable:!(i=Rl(e,o))||i.enumerable});return r};var Mr=(r,e,t)=>(t=r!=null?_l(Cl(r)):{},Ll(e||!r||!r.__esModule?$r(t,"default",{value:r,enumerable:!0}):t,r));var L=(r,e,t)=>new Promise((i,o)=>{var a=f=>{try{l(t.next(f))}catch(d){o(d)}},u=f=>{try{l(t.throw(f))}catch(d){o(d)}},l=f=>f.done?i(f.value):Promise.resolve(f.value).then(a,u);l((t=t.apply(r,e)).next())});var Xi=n(()=>{"use strict"});var Zi=n(()=>{"use strict"});var I=n((eo,ro)=>{"use strict";var Ge=function(r){return r&&r.Math==Math&&r};ro.exports=Ge(typeof globalThis=="object"&&globalThis)||Ge(typeof window=="object"&&window)||Ge(typeof self=="object"&&self)||Ge(typeof global=="object"&&global)||function(){return this}()||eo||Function("return this")()});var T=n((Zb,to)=>{"use strict";to.exports=function(r){try{return!!r()}catch(e){return!0}}});var ye=n((ey,io)=>{"use strict";var kl=T();io.exports=!kl(function(){var r=function(){}.bind();return typeof r!="function"||r.hasOwnProperty("prototype")})});var jr=n((ry,so)=>{"use strict";var Dl=ye(),ao=Function.prototype,oo=ao.apply,no=ao.call;so.exports=typeof Reflect=="object"&&Reflect.apply||(Dl?no.bind(oo):function(){return no.apply(oo,arguments)})});var q=n((ty,lo)=>{"use strict";var uo=ye(),co=Function.prototype,Fr=co.call,$l=uo&&co.bind.bind(Fr,Fr);lo.exports=uo?$l:function(r){return function(){return Fr.apply(r,arguments)}}});var Z=n((iy,po)=>{"use strict";var fo=q(),Ml=fo({}.toString),jl=fo("".slice);po.exports=function(r){return jl(Ml(r),8,-1)}});var Br=n((oy,vo)=>{"use strict";var Fl=Z(),Bl=q();vo.exports=function(r){if(Fl(r)==="Function")return Bl(r)}});var Vr=n((ny,ho)=>{"use strict";var Ur=typeof document=="object"&&document.all,Ul=typeof Ur=="undefined"&&Ur!==void 0;ho.exports={all:Ur,IS_HTMLDDA:Ul}});var b=n((ay,mo)=>{"use strict";var go=Vr(),Vl=go.all;mo.exports=go.IS_HTMLDDA?function(r){return typeof r=="function"||r===Vl}:function(r){return typeof r=="function"}});var k=n((sy,bo)=>{"use strict";var Gl=T();bo.exports=!Gl(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})});var P=n((uy,yo)=>{"use strict";var Kl=ye(),Ke=Function.prototype.call;yo.exports=Kl?Ke.bind(Ke):function(){return Ke.apply(Ke,arguments)}});var qo=n(Eo=>{"use strict";var So={}.propertyIsEnumerable,Io=Object.getOwnPropertyDescriptor,Wl=Io&&!So.call({1:2},1);Eo.f=Wl?function(e){var t=Io(this,e);return!!t&&t.enumerable}:So});var Se=n((ly,Po)=>{"use strict";Po.exports=function(r,e){return{enumerable:!(r&1),configurable:!(r&2),writable:!(r&4),value:e}}});var Oo=n((fy,To)=>{"use strict";var Hl=q(),zl=T(),Ql=Z(),Gr=Object,Yl=Hl("".split);To.exports=zl(function(){return!Gr("z").propertyIsEnumerable(0)})?function(r){return Ql(r)=="String"?Yl(r,""):Gr(r)}:Gr});var ee=n((dy,_o)=>{"use strict";_o.exports=function(r){return r==null}});var We=n((py,xo)=>{"use strict";var Jl=ee(),Xl=TypeError;xo.exports=function(r){if(Jl(r))throw Xl("Can't call method on "+r);return r}});var re=n((vy,Ro)=>{"use strict";var Zl=Oo(),ef=We();Ro.exports=function(r){return Zl(ef(r))}});var D=n((hy,Co)=>{"use strict";var wo=b(),Ao=Vr(),rf=Ao.all;Co.exports=Ao.IS_HTMLDDA?function(r){return typeof r=="object"?r!==null:wo(r)||r===rf}:function(r){return typeof r=="object"?r!==null:wo(r)}});var He=n((gy,No)=>{"use strict";No.exports={}});var M=n((my,ko)=>{"use strict";var Kr=He(),Wr=I(),tf=b(),Lo=function(r){return tf(r)?r:void 0};ko.exports=function(r,e){return arguments.length<2?Lo(Kr[r])||Lo(Wr[r]):Kr[r]&&Kr[r][e]||Wr[r]&&Wr[r][e]}});var Ie=n((by,Do)=>{"use strict";var of=q();Do.exports=of({}.isPrototypeOf)});var Ee=n((yy,$o)=>{"use strict";$o.exports=typeof navigator!="undefined"&&String(navigator.userAgent)||""});var zr=n((Sy,Vo)=>{"use strict";var Uo=I(),Hr=Ee(),Mo=Uo.process,jo=Uo.Deno,Fo=Mo&&Mo.versions||jo&&jo.version,Bo=Fo&&Fo.v8,x,ze;Bo&&(x=Bo.split("."),ze=x[0]>0&&x[0]<4?1:+(x[0]+x[1]));!ze&&Hr&&(x=Hr.match(/Edge\/(\d+)/),(!x||x[1]>=74)&&(x=Hr.match(/Chrome\/(\d+)/),x&&(ze=+x[1])));Vo.exports=ze});var Qr=n((Iy,Ko)=>{"use strict";var Go=zr(),nf=T(),af=I(),sf=af.String;Ko.exports=!!Object.getOwnPropertySymbols&&!nf(function(){var r=Symbol();return!sf(r)||!(Object(r)instanceof Symbol)||!Symbol.sham&&Go&&Go<41})});var Yr=n((Ey,Wo)=>{"use strict";var uf=Qr();Wo.exports=uf&&!Symbol.sham&&typeof Symbol.iterator=="symbol"});var Jr=n((qy,Ho)=>{"use strict";var cf=M(),lf=b(),ff=Ie(),df=Yr(),pf=Object;Ho.exports=df?function(r){return typeof r=="symbol"}:function(r){var e=cf("Symbol");return lf(e)&&ff(e.prototype,pf(r))}});var qe=n((Py,zo)=>{"use strict";var vf=String;zo.exports=function(r){try{return vf(r)}catch(e){return"Object"}}});var j=n((Ty,Qo)=>{"use strict";var hf=b(),gf=qe(),mf=TypeError;Qo.exports=function(r){if(hf(r))return r;throw mf(gf(r)+" is not a function")}});var Pe=n((Oy,Yo)=>{"use strict";var bf=j(),yf=ee();Yo.exports=function(r,e){var t=r[e];return yf(t)?void 0:bf(t)}});var Xo=n((_y,Jo)=>{"use strict";var Xr=P(),Zr=b(),et=D(),Sf=TypeError;Jo.exports=function(r,e){var t,i;if(e==="string"&&Zr(t=r.toString)&&!et(i=Xr(t,r))||Zr(t=r.valueOf)&&!et(i=Xr(t,r))||e!=="string"&&Zr(t=r.toString)&&!et(i=Xr(t,r)))return i;throw Sf("Can't convert object to primitive value")}});var R=n((xy,Zo)=>{"use strict";Zo.exports=!0});var tn=n((Ry,rn)=>{"use strict";var en=I(),If=Object.defineProperty;rn.exports=function(r,e){try{If(en,r,{value:e,configurable:!0,writable:!0})}catch(t){en[r]=e}return e}});var Qe=n((wy,nn)=>{"use strict";var Ef=I(),qf=tn(),on="__core-js_shared__",Pf=Ef[on]||qf(on,{});nn.exports=Pf});var rt=n((Ay,sn)=>{"use strict";var Tf=R(),an=Qe();(sn.exports=function(r,e){return an[r]||(an[r]=e!==void 0?e:{})})("versions",[]).push({version:"3.31.0",mode:Tf?"pure":"global",copyright:"\xA9 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.31.0/LICENSE",source:"https://github.com/zloirock/core-js"})});var Ye=n((Cy,un)=>{"use strict";var Of=We(),_f=Object;un.exports=function(r){return _f(Of(r))}});var w=n((Ny,cn)=>{"use strict";var xf=q(),Rf=Ye(),wf=xf({}.hasOwnProperty);cn.exports=Object.hasOwn||function(e,t){return wf(Rf(e),t)}});var tt=n((Ly,ln)=>{"use strict";var Af=q(),Cf=0,Nf=Math.random(),Lf=Af(1 .toString);ln.exports=function(r){return"Symbol("+(r===void 0?"":r)+")_"+Lf(++Cf+Nf,36)}});var E=n((ky,dn)=>{"use strict";var kf=I(),Df=rt(),fn=w(),$f=tt(),Mf=Qr(),jf=Yr(),te=kf.Symbol,it=Df("wks"),Ff=jf?te.for||te:te&&te.withoutSetter||$f;dn.exports=function(r){return fn(it,r)||(it[r]=Mf&&fn(te,r)?te[r]:Ff("Symbol."+r)),it[r]}});var gn=n((Dy,hn)=>{"use strict";var Bf=P(),pn=D(),vn=Jr(),Uf=Pe(),Vf=Xo(),Gf=E(),Kf=TypeError,Wf=Gf("toPrimitive");hn.exports=function(r,e){if(!pn(r)||vn(r))return r;var t=Uf(r,Wf),i;if(t){if(e===void 0&&(e="default"),i=Bf(t,r,e),!pn(i)||vn(i))return i;throw Kf("Can't convert object to primitive value")}return e===void 0&&(e="number"),Vf(r,e)}});var Je=n(($y,mn)=>{"use strict";var Hf=gn(),zf=Jr();mn.exports=function(r){var e=Hf(r,"string");return zf(e)?e:e+""}});var Xe=n((My,yn)=>{"use strict";var Qf=I(),bn=D(),ot=Qf.document,Yf=bn(ot)&&bn(ot.createElement);yn.exports=function(r){return Yf?ot.createElement(r):{}}});var nt=n((jy,Sn)=>{"use strict";var Jf=k(),Xf=T(),Zf=Xe();Sn.exports=!Jf&&!Xf(function(){return Object.defineProperty(Zf("div"),"a",{get:function(){return 7}}).a!=7})});var at=n(En=>{"use strict";var ed=k(),rd=P(),td=qo(),id=Se(),od=re(),nd=Je(),ad=w(),sd=nt(),In=Object.getOwnPropertyDescriptor;En.f=ed?In:function(e,t){if(e=od(e),t=nd(t),sd)try{return In(e,t)}catch(i){}if(ad(e,t))return id(!rd(td.f,e,t),e[t])}});var st=n((By,qn)=>{"use strict";var ud=T(),cd=b(),ld=/#|\.prototype\./,Te=function(r,e){var t=dd[fd(r)];return t==vd?!0:t==pd?!1:cd(e)?ud(e):!!e},fd=Te.normalize=function(r){return String(r).replace(ld,".").toLowerCase()},dd=Te.data={},pd=Te.NATIVE="N",vd=Te.POLYFILL="P";qn.exports=Te});var Oe=n((Uy,Tn)=>{"use strict";var Pn=Br(),hd=j(),gd=ye(),md=Pn(Pn.bind);Tn.exports=function(r,e){return hd(r),e===void 0?r:gd?md(r,e):function(){return r.apply(e,arguments)}}});var ut=n((Vy,On)=>{"use strict";var bd=k(),yd=T();On.exports=bd&&yd(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42})});var A=n((Gy,_n)=>{"use strict";var Sd=D(),Id=String,Ed=TypeError;_n.exports=function(r){if(Sd(r))return r;throw Ed(Id(r)+" is not an object")}});var K=n(Rn=>{"use strict";var qd=k(),Pd=nt(),Td=ut(),Ze=A(),xn=Je(),Od=TypeError,ct=Object.defineProperty,_d=Object.getOwnPropertyDescriptor,lt="enumerable",ft="configurable",dt="writable";Rn.f=qd?Td?function(e,t,i){if(Ze(e),t=xn(t),Ze(i),typeof e=="function"&&t==="prototype"&&"value"in i&&dt in i&&!i[dt]){var o=_d(e,t);o&&o[dt]&&(e[t]=i.value,i={configurable:ft in i?i[ft]:o[ft],enumerable:lt in i?i[lt]:o[lt],writable:!1})}return ct(e,t,i)}:ct:function(e,t,i){if(Ze(e),t=xn(t),Ze(i),Pd)try{return ct(e,t,i)}catch(o){}if("get"in i||"set"in i)throw Od("Accessors not supported");return"value"in i&&(e[t]=i.value),e}});var W=n((Wy,wn)=>{"use strict";var xd=k(),Rd=K(),wd=Se();wn.exports=xd?function(r,e,t){return Rd.f(r,e,wd(1,t))}:function(r,e,t){return r[e]=t,r}});var C=n((Hy,Cn)=>{"use strict";var er=I(),Ad=jr(),Cd=Br(),Nd=b(),Ld=at().f,kd=st(),ie=He(),Dd=Oe(),oe=W(),An=w(),$d=function(r){var e=function(t,i,o){if(this instanceof e){switch(arguments.length){case 0:return new r;case 1:return new r(t);case 2:return new r(t,i)}return new r(t,i,o)}return Ad(r,this,arguments)};return e.prototype=r.prototype,e};Cn.exports=function(r,e){var t=r.target,i=r.global,o=r.stat,a=r.proto,u=i?er:o?er[t]:(er[t]||{}).prototype,l=i?ie:ie[t]||oe(ie,t,{})[t],f=l.prototype,d,s,c,v,p,h,g,y,m;for(v in e)d=kd(i?v:t+(o?".":"#")+v,r.forced),s=!d&&u&&An(u,v),h=l[v],s&&(r.dontCallGetSet?(m=Ld(u,v),g=m&&m.value):g=u[v]),p=s&&g?g:e[v],!(s&&typeof h==typeof p)&&(r.bind&&s?y=Dd(p,er):r.wrap&&s?y=$d(p):a&&Nd(p)?y=Cd(p):y=p,(r.sham||p&&p.sham||h&&h.sham)&&oe(y,"sham",!0),oe(l,v,y),a&&(c=t+"Prototype",An(ie,c)||oe(ie,c,{}),oe(ie[c],v,p),r.real&&f&&(d||!f[v])&&oe(f,v,p)))}});var Ln=n((zy,Nn)=>{"use strict";var Md=D(),jd=Z(),Fd=E(),Bd=Fd("match");Nn.exports=function(r){var e;return Md(r)&&((e=r[Bd])!==void 0?!!e:jd(r)=="RegExp")}});var rr=n((Qy,Dn)=>{"use strict";var Ud=E(),Vd=Ud("toStringTag"),kn={};kn[Vd]="z";Dn.exports=String(kn)==="[object z]"});var ne=n((Yy,$n)=>{"use strict";var Gd=rr(),Kd=b(),tr=Z(),Wd=E(),Hd=Wd("toStringTag"),zd=Object,Qd=tr(function(){return arguments}())=="Arguments",Yd=function(r,e){try{return r[e]}catch(t){}};$n.exports=Gd?tr:function(r){var e,t,i;return r===void 0?"Undefined":r===null?"Null":typeof(t=Yd(e=zd(r),Hd))=="string"?t:Qd?tr(e):(i=tr(e))=="Object"&&Kd(e.callee)?"Arguments":i}});var jn=n((Jy,Mn)=>{"use strict";var Jd=ne(),Xd=String;Mn.exports=function(r){if(Jd(r)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return Xd(r)}});var Bn=n((Xy,Fn)=>{"use strict";var Zd=A();Fn.exports=function(){var r=Zd(this),e="";return r.hasIndices&&(e+="d"),r.global&&(e+="g"),r.ignoreCase&&(e+="i"),r.multiline&&(e+="m"),r.dotAll&&(e+="s"),r.unicode&&(e+="u"),r.unicodeSets&&(e+="v"),r.sticky&&(e+="y"),e}});var Gn=n((Zy,Vn)=>{"use strict";var ep=P(),rp=w(),tp=Ie(),ip=Bn(),Un=RegExp.prototype;Vn.exports=function(r){var e=r.flags;return e===void 0&&!("flags"in Un)&&!rp(r,"flags")&&tp(Un,r)?ep(ip,r):e}});var Wn=n((eS,Kn)=>{"use strict";var ht=q(),op=Ye(),np=Math.floor,pt=ht("".charAt),ap=ht("".replace),vt=ht("".slice),sp=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,up=/\$([$&'`]|\d{1,2})/g;Kn.exports=function(r,e,t,i,o,a){var u=t+r.length,l=i.length,f=up;return o!==void 0&&(o=op(o),f=sp),ap(a,f,function(d,s){var c;switch(pt(s,0)){case"$":return"$";case"&":return r;case"`":return vt(e,0,t);case"'":return vt(e,u);case"<":c=o[vt(s,1,-1)];break;default:var v=+s;if(v===0)return d;if(v>l){var p=np(v/10);return p===0?d:p<=l?i[p-1]===void 0?pt(s,1):i[p-1]+pt(s,1):d}c=i[v-1]}return c===void 0?"":c})}});var Jn=n(()=>{"use strict";var cp=C(),lp=P(),gt=q(),Hn=We(),fp=b(),dp=ee(),pp=Ln(),ae=jn(),vp=Pe(),hp=Gn(),gp=Wn(),mp=E(),bp=R(),yp=mp("replace"),Sp=TypeError,Yn=gt("".indexOf),Ip=gt("".replace),zn=gt("".slice),Ep=Math.max,Qn=function(r,e,t){return t>r.length?-1:e===""?t:Yn(r,e,t)};cp({target:"String",proto:!0},{replaceAll:function(e,t){var i=Hn(this),o,a,u,l,f,d,s,c,v,p=0,h=0,g="";if(!dp(e)){if(o=pp(e),o&&(a=ae(Hn(hp(e))),!~Yn(a,"g")))throw Sp("`.replaceAll` does not allow non-global regexes");if(u=vp(e,yp),u)return lp(u,e,i,t);if(bp&&o)return Ip(ae(i),e,t)}for(l=ae(i),f=ae(e),d=fp(t),d||(t=ae(t)),s=f.length,c=Ep(1,s),p=Qn(l,f,0);p!==-1;)v=d?ae(t(f,p,l)):gp(f,l,p,[],void 0,t),g+=zn(l,h,p)+v,h=p+s,p=Qn(l,f,p+c);return h<l.length&&(g+=zn(l,h)),g}})});var mt=n((iS,Xn)=>{"use strict";var qp=M();Xn.exports=qp});var ea=n((oS,Zn)=>{"use strict";Xi();Zi();Jn();var Pp=mt();Zn.exports=Pp("String","replaceAll")});var ta=n((nS,ra)=>{"use strict";var Tp=ea();ra.exports=Tp});var oa=n((aS,ia)=>{"use strict";var Op=ta();ia.exports=Op});var fa=n(()=>{"use strict"});var xe=n((gS,da)=>{"use strict";var Rp=Z();da.exports=typeof process!="undefined"&&Rp(process)=="process"});var se=n((mS,pa)=>{"use strict";var wp=W();pa.exports=function(r,e,t,i){return i&&i.enumerable?r[e]=t:wp(r,e,t),r}});var ha=n((bS,va)=>{"use strict";var Ap=q(),Cp=j();va.exports=function(r,e,t){try{return Ap(Cp(Object.getOwnPropertyDescriptor(r,e)[t]))}catch(i){}}});var ma=n((yS,ga)=>{"use strict";var Np=b(),Lp=String,kp=TypeError;ga.exports=function(r){if(typeof r=="object"||Np(r))return r;throw kp("Can't set "+Lp(r)+" as a prototype")}});var qt=n((SS,ba)=>{"use strict";var Dp=ha(),$p=A(),Mp=ma();ba.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var r=!1,e={},t;try{t=Dp(Object.prototype,"__proto__","set"),t(e,[]),r=e instanceof Array}catch(i){}return function(o,a){return $p(o),Mp(a),r?t(o,a):o.__proto__=a,o}}():void 0)});var Sa=n((IS,ya)=>{"use strict";var jp=rr(),Fp=ne();ya.exports=jp?{}.toString:function(){return"[object "+Fp(this)+"]"}});var ir=n((ES,Ea)=>{"use strict";var Bp=rr(),Up=K().f,Vp=W(),Gp=w(),Kp=Sa(),Wp=E(),Ia=Wp("toStringTag");Ea.exports=function(r,e,t,i){if(r){var o=t?r:r.prototype;Gp(o,Ia)||Up(o,Ia,{configurable:!0,value:e}),i&&!Bp&&Vp(o,"toString",Kp)}}});var Pa=n((qS,qa)=>{"use strict";var Hp=K();qa.exports=function(r,e,t){return Hp.f(r,e,t)}});var _a=n((PS,Oa)=>{"use strict";var zp=M(),Qp=Pa(),Yp=E(),Jp=k(),Ta=Yp("species");Oa.exports=function(r){var e=zp(r);Jp&&e&&!e[Ta]&&Qp(e,Ta,{configurable:!0,get:function(){return this}})}});var Ra=n((TS,xa)=>{"use strict";var Xp=Ie(),Zp=TypeError;xa.exports=function(r,e){if(Xp(e,r))return r;throw Zp("Incorrect invocation")}});var Tt=n((OS,wa)=>{"use strict";var ev=q(),rv=b(),Pt=Qe(),tv=ev(Function.toString);rv(Pt.inspectSource)||(Pt.inspectSource=function(r){return tv(r)});wa.exports=Pt.inspectSource});var Da=n((_S,ka)=>{"use strict";var iv=q(),ov=T(),Aa=b(),nv=ne(),av=M(),sv=Tt(),Ca=function(){},uv=[],Na=av("Reflect","construct"),Ot=/^\s*(?:class|function)\b/,cv=iv(Ot.exec),lv=!Ot.exec(Ca),Re=function(e){if(!Aa(e))return!1;try{return Na(Ca,uv,e),!0}catch(t){return!1}},La=function(e){if(!Aa(e))return!1;switch(nv(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return lv||!!cv(Ot,sv(e))}catch(t){return!0}};La.sham=!0;ka.exports=!Na||ov(function(){var r;return Re(Re.call)||!Re(Object)||!Re(function(){r=!0})||r})?La:Re});var Ma=n((xS,$a)=>{"use strict";var fv=Da(),dv=qe(),pv=TypeError;$a.exports=function(r){if(fv(r))return r;throw pv(dv(r)+" is not a constructor")}});var _t=n((RS,Fa)=>{"use strict";var ja=A(),vv=Ma(),hv=ee(),gv=E(),mv=gv("species");Fa.exports=function(r,e){var t=ja(r).constructor,i;return t===void 0||hv(i=ja(t)[mv])?e:vv(i)}});var xt=n((wS,Ba)=>{"use strict";var bv=M();Ba.exports=bv("document","documentElement")});var Va=n((AS,Ua)=>{"use strict";var yv=q();Ua.exports=yv([].slice)});var Ka=n((CS,Ga)=>{"use strict";var Sv=TypeError;Ga.exports=function(r,e){if(r<e)throw Sv("Not enough arguments");return r}});var Rt=n((NS,Wa)=>{"use strict";var Iv=Ee();Wa.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(Iv)});var Mt=n((LS,rs)=>{"use strict";var O=I(),Ev=jr(),qv=Oe(),Ha=b(),Pv=w(),es=T(),za=xt(),Tv=Va(),Qa=Xe(),Ov=Ka(),_v=Rt(),xv=xe(),kt=O.setImmediate,Dt=O.clearImmediate,Rv=O.process,wt=O.Dispatch,wv=O.Function,Ya=O.MessageChannel,Av=O.String,At=0,we={},Ja="onreadystatechange",Ae,H,Ct,Nt;es(function(){Ae=O.location});var $t=function(r){if(Pv(we,r)){var e=we[r];delete we[r],e()}},Lt=function(r){return function(){$t(r)}},Xa=function(r){$t(r.data)},Za=function(r){O.postMessage(Av(r),Ae.protocol+"//"+Ae.host)};(!kt||!Dt)&&(kt=function(e){Ov(arguments.length,1);var t=Ha(e)?e:wv(e),i=Tv(arguments,1);return we[++At]=function(){Ev(t,void 0,i)},H(At),At},Dt=function(e){delete we[e]},xv?H=function(r){Rv.nextTick(Lt(r))}:wt&&wt.now?H=function(r){wt.now(Lt(r))}:Ya&&!_v?(Ct=new Ya,Nt=Ct.port2,Ct.port1.onmessage=Xa,H=qv(Nt.postMessage,Nt)):O.addEventListener&&Ha(O.postMessage)&&!O.importScripts&&Ae&&Ae.protocol!=="file:"&&!es(Za)?(H=Za,O.addEventListener("message",Xa,!1)):Ja in Qa("script")?H=function(r){za.appendChild(Qa("script"))[Ja]=function(){za.removeChild(this),$t(r)}}:H=function(r){setTimeout(Lt(r),0)});rs.exports={set:kt,clear:Dt}});var jt=n((kS,is)=>{"use strict";var ts=function(){this.head=null,this.tail=null};ts.prototype={add:function(r){var e={item:r,next:null},t=this.tail;t?t.next=e:this.head=e,this.tail=e},get:function(){var r=this.head;if(r){var e=this.head=r.next;return e===null&&(this.tail=null),r.item}}};is.exports=ts});var ns=n((DS,os)=>{"use strict";var Cv=Ee();os.exports=/ipad|iphone|ipod/i.test(Cv)&&typeof Pebble!="undefined"});var ss=n(($S,as)=>{"use strict";var Nv=Ee();as.exports=/web0s(?!.*chrome)/i.test(Nv)});var hs=n((MS,vs)=>{"use strict";var z=I(),us=Oe(),Lv=at().f,Ft=Mt().set,kv=jt(),Dv=Rt(),$v=ns(),Mv=ss(),Bt=xe(),cs=z.MutationObserver||z.WebKitMutationObserver,ls=z.document,fs=z.process,or=z.Promise,ds=Lv(z,"queueMicrotask"),Gt=ds&&ds.value,ue,Ut,Vt,nr,ps;Gt||(Ce=new kv,Ne=function(){var r,e;for(Bt&&(r=fs.domain)&&r.exit();e=Ce.get();)try{e()}catch(t){throw Ce.head&&ue(),t}r&&r.enter()},!Dv&&!Bt&&!Mv&&cs&&ls?(Ut=!0,Vt=ls.createTextNode(""),new cs(Ne).observe(Vt,{characterData:!0}),ue=function(){Vt.data=Ut=!Ut}):!$v&&or&&or.resolve?(nr=or.resolve(void 0),nr.constructor=or,ps=us(nr.then,nr),ue=function(){ps(Ne)}):Bt?ue=function(){fs.nextTick(Ne)}:(Ft=us(Ft,z),ue=function(){Ft(Ne)}),Gt=function(r){Ce.head||ue(),Ce.add(r)});var Ce,Ne;vs.exports=Gt});var ms=n((jS,gs)=>{"use strict";gs.exports=function(r,e){try{arguments.length==1?console.error(r):console.error(r,e)}catch(t){}}});var ar=n((FS,bs)=>{"use strict";bs.exports=function(r){try{return{error:!1,value:r()}}catch(e){return{error:!0,value:e}}}});var Is=n((BS,Ss)=>{"use strict";var jv=I(),Fv=b(),ys=jv.WeakMap;Ss.exports=Fv(ys)&&/native code/.test(String(ys))});var sr=n((US,qs)=>{"use strict";var Bv=rt(),Uv=tt(),Es=Bv("keys");qs.exports=function(r){return Es[r]||(Es[r]=Uv(r))}});var ur=n((VS,Ps)=>{"use strict";Ps.exports={}});var zt=n((GS,_s)=>{"use strict";var Vv=Is(),Os=I(),Gv=D(),Kv=W(),Kt=w(),Wt=Qe(),Wv=sr(),Hv=ur(),Ts="Object already initialized",Ht=Os.TypeError,zv=Os.WeakMap,cr,Le,lr,Qv=function(r){return lr(r)?Le(r):cr(r,{})},Yv=function(r){return function(e){var t;if(!Gv(e)||(t=Le(e)).type!==r)throw Ht("Incompatible receiver, "+r+" required");return t}};Vv||Wt.state?(N=Wt.state||(Wt.state=new zv),N.get=N.get,N.has=N.has,N.set=N.set,cr=function(r,e){if(N.has(r))throw Ht(Ts);return e.facade=r,N.set(r,e),e},Le=function(r){return N.get(r)||{}},lr=function(r){return N.has(r)}):(Q=Wv("state"),Hv[Q]=!0,cr=function(r,e){if(Kt(r,Q))throw Ht(Ts);return e.facade=r,Kv(r,Q,e),e},Le=function(r){return Kt(r,Q)?r[Q]:{}},lr=function(r){return Kt(r,Q)});var N,Q;_s.exports={set:cr,get:Le,has:lr,enforce:Qv,getterFor:Yv}});var Y=n((KS,xs)=>{"use strict";var Jv=I();xs.exports=Jv.Promise});var Qt=n((WS,Rs)=>{"use strict";Rs.exports=typeof Deno=="object"&&Deno&&typeof Deno.version=="object"});var As=n((HS,ws)=>{"use strict";var Xv=Qt(),Zv=xe();ws.exports=!Xv&&!Zv&&typeof window=="object"&&typeof document=="object"});var ce=n((zS,Ls)=>{"use strict";var eh=I(),ke=Y(),rh=b(),th=st(),ih=Tt(),oh=E(),nh=As(),ah=Qt(),sh=R(),Yt=zr(),Cs=ke&&ke.prototype,uh=oh("species"),Jt=!1,Ns=rh(eh.PromiseRejectionEvent),ch=th("Promise",function(){var r=ih(ke),e=r!==String(ke);if(!e&&Yt===66||sh&&!(Cs.catch&&Cs.finally))return!0;if(!Yt||Yt<51||!/native code/.test(r)){var t=new ke(function(a){a(1)}),i=function(a){a(function(){},function(){})},o=t.constructor={};if(o[uh]=i,Jt=t.then(function(){})instanceof i,!Jt)return!0}return!e&&(nh||ah)&&!Ns});Ls.exports={CONSTRUCTOR:ch,REJECTION_EVENT:Ns,SUBCLASSING:Jt}});var le=n((QS,Ds)=>{"use strict";var ks=j(),lh=TypeError,fh=function(r){var e,t;this.promise=new r(function(i,o){if(e!==void 0||t!==void 0)throw lh("Bad Promise constructor");e=i,t=o}),this.resolve=ks(e),this.reject=ks(t)};Ds.exports.f=function(r){return new fh(r)}});var ru=n(()=>{"use strict";var dh=C(),ph=R(),vr=xe(),G=I(),ve=P(),$s=se(),Ms=qt(),vh=ir(),hh=_a(),gh=j(),pr=b(),mh=D(),bh=Ra(),yh=_t(),Vs=Mt().set,ti=hs(),Sh=ms(),Ih=ar(),Eh=jt(),Gs=zt(),hr=Y(),ii=ce(),Ks=le(),gr="Promise",Ws=ii.CONSTRUCTOR,qh=ii.REJECTION_EVENT,Ph=ii.SUBCLASSING,Xt=Gs.getterFor(gr),Th=Gs.set,fe=hr&&hr.prototype,J=hr,fr=fe,Hs=G.TypeError,Zt=G.document,oi=G.process,ei=Ks.f,Oh=ei,_h=!!(Zt&&Zt.createEvent&&G.dispatchEvent),zs="unhandledrejection",xh="rejectionhandled",js=0,Qs=1,Rh=2,ni=1,Ys=2,dr,Fs,wh,Bs,Js=function(r){var e;return mh(r)&&pr(e=r.then)?e:!1},Xs=function(r,e){var t=e.value,i=e.state==Qs,o=i?r.ok:r.fail,a=r.resolve,u=r.reject,l=r.domain,f,d,s;try{o?(i||(e.rejection===Ys&&Ch(e),e.rejection=ni),o===!0?f=t:(l&&l.enter(),f=o(t),l&&(l.exit(),s=!0)),f===r.promise?u(Hs("Promise-chain cycle")):(d=Js(f))?ve(d,f,a,u):a(f)):u(t)}catch(c){l&&!s&&l.exit(),u(c)}},Zs=function(r,e){r.notified||(r.notified=!0,ti(function(){for(var t=r.reactions,i;i=t.get();)Xs(i,r);r.notified=!1,e&&!r.rejection&&Ah(r)}))},eu=function(r,e,t){var i,o;_h?(i=Zt.createEvent("Event"),i.promise=e,i.reason=t,i.initEvent(r,!1,!0),G.dispatchEvent(i)):i={promise:e,reason:t},!qh&&(o=G["on"+r])?o(i):r===zs&&Sh("Unhandled promise rejection",t)},Ah=function(r){ve(Vs,G,function(){var e=r.facade,t=r.value,i=Us(r),o;if(i&&(o=Ih(function(){vr?oi.emit("unhandledRejection",t,e):eu(zs,e,t)}),r.rejection=vr||Us(r)?Ys:ni,o.error))throw o.value})},Us=function(r){return r.rejection!==ni&&!r.parent},Ch=function(r){ve(Vs,G,function(){var e=r.facade;vr?oi.emit("rejectionHandled",e):eu(xh,e,r.value)})},de=function(r,e,t){return function(i){r(e,i,t)}},pe=function(r,e,t){r.done||(r.done=!0,t&&(r=t),r.value=e,r.state=Rh,Zs(r,!0))},ri=function(r,e,t){if(!r.done){r.done=!0,t&&(r=t);try{if(r.facade===e)throw Hs("Promise can't be resolved itself");var i=Js(e);i?ti(function(){var o={done:!1};try{ve(i,e,de(ri,o,r),de(pe,o,r))}catch(a){pe(o,a,r)}}):(r.value=e,r.state=Qs,Zs(r,!1))}catch(o){pe({done:!1},o,r)}}};if(Ws&&(J=function(e){bh(this,fr),gh(e),ve(dr,this);var t=Xt(this);try{e(de(ri,t),de(pe,t))}catch(i){pe(t,i)}},fr=J.prototype,dr=function(e){Th(this,{type:gr,done:!1,notified:!1,parent:!1,reactions:new Eh,rejection:!1,state:js,value:void 0})},dr.prototype=$s(fr,"then",function(e,t){var i=Xt(this),o=ei(yh(this,J));return i.parent=!0,o.ok=pr(e)?e:!0,o.fail=pr(t)&&t,o.domain=vr?oi.domain:void 0,i.state==js?i.reactions.add(o):ti(function(){Xs(o,i)}),o.promise}),Fs=function(){var r=new dr,e=Xt(r);this.promise=r,this.resolve=de(ri,e),this.reject=de(pe,e)},Ks.f=ei=function(r){return r===J||r===wh?new Fs(r):Oh(r)},!ph&&pr(hr)&&fe!==Object.prototype)){Bs=fe.then,Ph||$s(fe,"then",function(e,t){var i=this;return new J(function(o,a){ve(Bs,i,o,a)}).then(e,t)},{unsafe:!0});try{delete fe.constructor}catch(r){}Ms&&Ms(fe,fr)}dh({global:!0,constructor:!0,wrap:!0,forced:Ws},{Promise:J});vh(J,gr,!1,!0);hh(gr)});var X=n((XS,tu)=>{"use strict";tu.exports={}});var ou=n((ZS,iu)=>{"use strict";var Nh=E(),Lh=X(),kh=Nh("iterator"),Dh=Array.prototype;iu.exports=function(r){return r!==void 0&&(Lh.Array===r||Dh[kh]===r)}});var au=n((eI,nu)=>{"use strict";var $h=Math.ceil,Mh=Math.floor;nu.exports=Math.trunc||function(e){var t=+e;return(t>0?Mh:$h)(t)}});var ai=n((rI,su)=>{"use strict";var jh=au();su.exports=function(r){var e=+r;return e!==e||e===0?0:jh(e)}});var cu=n((tI,uu)=>{"use strict";var Fh=ai(),Bh=Math.min;uu.exports=function(r){return r>0?Bh(Fh(r),9007199254740991):0}});var si=n((iI,lu)=>{"use strict";var Uh=cu();lu.exports=function(r){return Uh(r.length)}});var ui=n((oI,du)=>{"use strict";var Vh=ne(),fu=Pe(),Gh=ee(),Kh=X(),Wh=E(),Hh=Wh("iterator");du.exports=function(r){if(!Gh(r))return fu(r,Hh)||fu(r,"@@iterator")||Kh[Vh(r)]}});var vu=n((nI,pu)=>{"use strict";var zh=P(),Qh=j(),Yh=A(),Jh=qe(),Xh=ui(),Zh=TypeError;pu.exports=function(r,e){var t=arguments.length<2?Xh(r):e;if(Qh(t))return Yh(zh(t,r));throw Zh(Jh(r)+" is not iterable")}});var mu=n((aI,gu)=>{"use strict";var eg=P(),hu=A(),rg=Pe();gu.exports=function(r,e,t){var i,o;hu(r);try{if(i=rg(r,"return"),!i){if(e==="throw")throw t;return t}i=eg(i,r)}catch(a){o=!0,i=a}if(e==="throw")throw t;if(o)throw i;return hu(i),t}});var br=n((sI,Iu)=>{"use strict";var tg=Oe(),ig=P(),og=A(),ng=qe(),ag=ou(),sg=si(),bu=Ie(),ug=vu(),cg=ui(),yu=mu(),lg=TypeError,mr=function(r,e){this.stopped=r,this.result=e},Su=mr.prototype;Iu.exports=function(r,e,t){var i=t&&t.that,o=!!(t&&t.AS_ENTRIES),a=!!(t&&t.IS_RECORD),u=!!(t&&t.IS_ITERATOR),l=!!(t&&t.INTERRUPTED),f=tg(e,i),d,s,c,v,p,h,g,y=function(S){return d&&yu(d,"normal",S),new mr(!0,S)},m=function(S){return o?(og(S),l?f(S[0],S[1],y):f(S[0],S[1])):l?f(S,y):f(S)};if(a)d=r.iterator;else if(u)d=r;else{if(s=cg(r),!s)throw lg(ng(r)+" is not iterable");if(ag(s)){for(c=0,v=sg(r);v>c;c++)if(p=m(r[c]),p&&bu(Su,p))return p;return new mr(!1)}d=ug(r,s)}for(h=a?r.next:d.next;!(g=ig(h,d)).done;){try{p=m(g.value)}catch(S){yu(d,"throw",S)}if(typeof p=="object"&&p&&bu(Su,p))return p}return new mr(!1)}});var Ou=n((uI,Tu)=>{"use strict";var fg=E(),qu=fg("iterator"),Pu=!1;try{Eu=0,ci={next:function(){return{done:!!Eu++}},return:function(){Pu=!0}},ci[qu]=function(){return this},Array.from(ci,function(){throw 2})}catch(r){}var Eu,ci;Tu.exports=function(r,e){if(!e&&!Pu)return!1;var t=!1;try{var i={};i[qu]=function(){return{next:function(){return{done:t=!0}}}},r(i)}catch(o){}return t}});var li=n((cI,_u)=>{"use strict";var dg=Y(),pg=Ou(),vg=ce().CONSTRUCTOR;_u.exports=vg||!pg(function(r){dg.all(r).then(void 0,function(){})})});var xu=n(()=>{"use strict";var hg=C(),gg=P(),mg=j(),bg=le(),yg=ar(),Sg=br(),Ig=li();hg({target:"Promise",stat:!0,forced:Ig},{all:function(e){var t=this,i=bg.f(t),o=i.resolve,a=i.reject,u=yg(function(){var l=mg(t.resolve),f=[],d=0,s=1;Sg(e,function(c){var v=d++,p=!1;s++,gg(l,t,c).then(function(h){p||(p=!0,f[v]=h,--s||o(f))},a)}),--s||o(f)});return u.error&&a(u.value),i.promise}})});var wu=n(()=>{"use strict";var Eg=C(),qg=R(),Pg=ce().CONSTRUCTOR,di=Y(),Tg=M(),Og=b(),_g=se(),Ru=di&&di.prototype;Eg({target:"Promise",proto:!0,forced:Pg,real:!0},{catch:function(r){return this.then(void 0,r)}});!qg&&Og(di)&&(fi=Tg("Promise").prototype.catch,Ru.catch!==fi&&_g(Ru,"catch",fi,{unsafe:!0}));var fi});var Au=n(()=>{"use strict";var xg=C(),Rg=P(),wg=j(),Ag=le(),Cg=ar(),Ng=br(),Lg=li();xg({target:"Promise",stat:!0,forced:Lg},{race:function(e){var t=this,i=Ag.f(t),o=i.reject,a=Cg(function(){var u=wg(t.resolve);Ng(e,function(l){Rg(u,t,l).then(i.resolve,o)})});return a.error&&o(a.value),i.promise}})});var Cu=n(()=>{"use strict";var kg=C(),Dg=P(),$g=le(),Mg=ce().CONSTRUCTOR;kg({target:"Promise",stat:!0,forced:Mg},{reject:function(e){var t=$g.f(this);return Dg(t.reject,void 0,e),t.promise}})});var pi=n((bI,Nu)=>{"use strict";var jg=A(),Fg=D(),Bg=le();Nu.exports=function(r,e){if(jg(r),Fg(e)&&e.constructor===r)return e;var t=Bg.f(r),i=t.resolve;return i(e),t.promise}});var Du=n(()=>{"use strict";var Ug=C(),Vg=M(),Lu=R(),Gg=Y(),ku=ce().CONSTRUCTOR,Kg=pi(),Wg=Vg("Promise"),Hg=Lu&&!ku;Ug({target:"Promise",stat:!0,forced:Lu||ku},{resolve:function(e){return Kg(Hg&&this===Wg?Gg:this,e)}})});var $u=n(()=>{"use strict";ru();xu();wu();Au();Cu();Du()});var Bu=n(()=>{"use strict";var zg=C(),Qg=R(),yr=Y(),Yg=T(),ju=M(),Fu=b(),Jg=_t(),Mu=pi(),Xg=se(),hi=yr&&yr.prototype,Zg=!!yr&&Yg(function(){hi.finally.call({then:function(){}},function(){})});zg({target:"Promise",proto:!0,real:!0,forced:Zg},{finally:function(r){var e=Jg(this,ju("Promise")),t=Fu(r);return this.then(t?function(i){return Mu(e,r()).then(function(){return i})}:r,t?function(i){return Mu(e,r()).then(function(){throw i})}:r)}});!Qg&&Fu(yr)&&(vi=ju("Promise").prototype.finally,hi.finally!==vi&&Xg(hi,"finally",vi,{unsafe:!0}));var vi});var Vu=n((TI,Uu)=>{"use strict";fa();$u();Bu();var em=mt();Uu.exports=em("Promise","finally")});var Ku=n((OI,Gu)=>{"use strict";var rm=Vu();Gu.exports=rm});var Hu=n((_I,Wu)=>{"use strict";var tm=Ku();Wu.exports=tm});var Qu=n((xI,zu)=>{"use strict";zu.exports=function(){}});var Xu=n((RI,Ju)=>{"use strict";var gi=k(),im=w(),Yu=Function.prototype,om=gi&&Object.getOwnPropertyDescriptor,mi=im(Yu,"name"),nm=mi&&function(){}.name==="something",am=mi&&(!gi||gi&&om(Yu,"name").configurable);Ju.exports={EXISTS:mi,PROPER:nm,CONFIGURABLE:am}});var ec=n((wI,Zu)=>{"use strict";var sm=ai(),um=Math.max,cm=Math.min;Zu.exports=function(r,e){var t=sm(r);return t<0?um(t+e,0):cm(t,e)}});var ic=n((AI,tc)=>{"use strict";var lm=re(),fm=ec(),dm=si(),rc=function(r){return function(e,t,i){var o=lm(e),a=dm(o),u=fm(i,a),l;if(r&&t!=t){for(;a>u;)if(l=o[u++],l!=l)return!0}else for(;a>u;u++)if((r||u in o)&&o[u]===t)return r||u||0;return!r&&-1}};tc.exports={includes:rc(!0),indexOf:rc(!1)}});var ac=n((CI,nc)=>{"use strict";var pm=q(),bi=w(),vm=re(),hm=ic().indexOf,gm=ur(),oc=pm([].push);nc.exports=function(r,e){var t=vm(r),i=0,o=[],a;for(a in t)!bi(gm,a)&&bi(t,a)&&oc(o,a);for(;e.length>i;)bi(t,a=e[i++])&&(~hm(o,a)||oc(o,a));return o}});var yi=n((NI,sc)=>{"use strict";sc.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]});var cc=n((LI,uc)=>{"use strict";var mm=ac(),bm=yi();uc.exports=Object.keys||function(e){return mm(e,bm)}});var fc=n(lc=>{"use strict";var ym=k(),Sm=ut(),Im=K(),Em=A(),qm=re(),Pm=cc();lc.f=ym&&!Sm?Object.defineProperties:function(e,t){Em(e);for(var i=qm(t),o=Pm(t),a=o.length,u=0,l;a>u;)Im.f(e,l=o[u++],i[l]);return e}});var qi=n((DI,bc)=>{"use strict";var Tm=A(),Om=fc(),dc=yi(),_m=ur(),xm=xt(),Rm=Xe(),wm=sr(),pc=">",vc="<",Ii="prototype",Ei="script",gc=wm("IE_PROTO"),Si=function(){},mc=function(r){return vc+Ei+pc+r+vc+"/"+Ei+pc},hc=function(r){r.write(mc("")),r.close();var e=r.parentWindow.Object;return r=null,e},Am=function(){var r=Rm("iframe"),e="java"+Ei+":",t;return r.style.display="none",xm.appendChild(r),r.src=String(e),t=r.contentWindow.document,t.open(),t.write(mc("document.F=Object")),t.close(),t.F},Sr,Ir=function(){try{Sr=new ActiveXObject("htmlfile")}catch(e){}Ir=typeof document!="undefined"?document.domain&&Sr?hc(Sr):Am():hc(Sr);for(var r=dc.length;r--;)delete Ir[Ii][dc[r]];return Ir()};_m[gc]=!0;bc.exports=Object.create||function(e,t){var i;return e!==null?(Si[Ii]=Tm(e),i=new Si,Si[Ii]=null,i[gc]=e):i=Ir(),t===void 0?i:Om.f(i,t)}});var Sc=n(($I,yc)=>{"use strict";var Cm=T();yc.exports=!Cm(function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype})});var Ti=n((MI,Ec)=>{"use strict";var Nm=w(),Lm=b(),km=Ye(),Dm=sr(),$m=Sc(),Ic=Dm("IE_PROTO"),Pi=Object,Mm=Pi.prototype;Ec.exports=$m?Pi.getPrototypeOf:function(r){var e=km(r);if(Nm(e,Ic))return e[Ic];var t=e.constructor;return Lm(t)&&e instanceof t?t.prototype:e instanceof Pi?Mm:null}});var Ri=n((jI,Tc)=>{"use strict";var jm=T(),Fm=b(),Bm=D(),Um=qi(),qc=Ti(),Vm=se(),Gm=E(),Km=R(),xi=Gm("iterator"),Pc=!1,F,Oi,_i;[].keys&&(_i=[].keys(),"next"in _i?(Oi=qc(qc(_i)),Oi!==Object.prototype&&(F=Oi)):Pc=!0);var Wm=!Bm(F)||jm(function(){var r={};return F[xi].call(r)!==r});Wm?F={}:Km&&(F=Um(F));Fm(F[xi])||Vm(F,xi,function(){return this});Tc.exports={IteratorPrototype:F,BUGGY_SAFARI_ITERATORS:Pc}});var _c=n((FI,Oc)=>{"use strict";var Hm=Ri().IteratorPrototype,zm=qi(),Qm=Se(),Ym=ir(),Jm=X(),Xm=function(){return this};Oc.exports=function(r,e,t,i){var o=e+" Iterator";return r.prototype=zm(Hm,{next:Qm(+!i,t)}),Ym(r,o,!1,!0),Jm[o]=Xm,r}});var Mc=n((BI,$c)=>{"use strict";var Zm=C(),eb=P(),Er=R(),kc=Xu(),rb=b(),tb=_c(),xc=Ti(),Rc=qt(),ib=ir(),ob=W(),wi=se(),nb=E(),wc=X(),Dc=Ri(),ab=kc.PROPER,sb=kc.CONFIGURABLE,Ac=Dc.IteratorPrototype,qr=Dc.BUGGY_SAFARI_ITERATORS,De=nb("iterator"),Cc="keys",$e="values",Nc="entries",Lc=function(){return this};$c.exports=function(r,e,t,i,o,a,u){tb(t,e,i);var l=function(m){if(m===o&&v)return v;if(!qr&&m in s)return s[m];switch(m){case Cc:return function(){return new t(this,m)};case $e:return function(){return new t(this,m)};case Nc:return function(){return new t(this,m)}}return function(){return new t(this)}},f=e+" Iterator",d=!1,s=r.prototype,c=s[De]||s["@@iterator"]||o&&s[o],v=!qr&&c||l(o),p=e=="Array"&&s.entries||c,h,g,y;if(p&&(h=xc(p.call(new r)),h!==Object.prototype&&h.next&&(!Er&&xc(h)!==Ac&&(Rc?Rc(h,Ac):rb(h[De])||wi(h,De,Lc)),ib(h,f,!0,!0),Er&&(wc[f]=Lc))),ab&&o==$e&&c&&c.name!==$e&&(!Er&&sb?ob(s,"name",$e):(d=!0,v=function(){return eb(c,this)})),o)if(g={values:l($e),keys:a?v:l(Cc),entries:l(Nc)},u)for(y in g)(qr||d||!(y in s))&&wi(s,y,g[y]);else Zm({target:e,proto:!0,forced:qr||d},g);return(!Er||u)&&s[De]!==v&&wi(s,De,v,{name:o}),wc[e]=v,g}});var Fc=n((UI,jc)=>{"use strict";jc.exports=function(r,e){return{value:r,done:e}}});var Ci=n((VI,Kc)=>{"use strict";var ub=re(),Ai=Qu(),Bc=X(),Vc=zt(),cb=K().f,lb=Mc(),Pr=Fc(),fb=R(),db=k(),Gc="Array Iterator",pb=Vc.set,vb=Vc.getterFor(Gc);Kc.exports=lb(Array,"Array",function(r,e){pb(this,{type:Gc,target:ub(r),index:0,kind:e})},function(){var r=vb(this),e=r.target,t=r.kind,i=r.index++;return!e||i>=e.length?(r.target=void 0,Pr(void 0,!0)):t=="keys"?Pr(i,!1):t=="values"?Pr(e[i],!1):Pr([i,e[i]],!1)},"values");var Uc=Bc.Arguments=Bc.Array;Ai("keys");Ai("values");Ai("entries");if(!fb&&db&&Uc.name!=="values")try{cb(Uc,"name",{value:"values"})}catch(r){}});var Hc=n((GI,Wc)=>{"use strict";var hb=Je(),gb=K(),mb=Se();Wc.exports=function(r,e,t){var i=hb(e);i in r?gb.f(r,i,mb(0,t)):r[i]=t}});var zc=n(()=>{"use strict";var bb=C(),yb=br(),Sb=Hc();bb({target:"Object",stat:!0},{fromEntries:function(e){var t={};return yb(e,function(i,o){Sb(t,i,o)},{AS_ENTRIES:!0}),t}})});var Yc=n((HI,Qc)=>{"use strict";Ci();zc();var Ib=He();Qc.exports=Ib.Object.fromEntries});var Xc=n((zI,Jc)=>{"use strict";Jc.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 rl=n(()=>{"use strict";Ci();var Eb=Xc(),qb=I(),Pb=ne(),Tb=W(),Zc=X(),Ob=E(),el=Ob("toStringTag");for(Tr in Eb)Ni=qb[Tr],Or=Ni&&Ni.prototype,Or&&Pb(Or)!==el&&Tb(Or,el,Tr),Zc[Tr]=Zc.Array;var Ni,Or,Tr});var il=n((JI,tl)=>{"use strict";var _b=Yc();rl();tl.exports=_b});var nl=n((XI,ol)=>{"use strict";var xb=il();ol.exports=xb});var Pl=Mr(oa(),1);var _e=(a=>(a.PROD="prod",a.VK_ALIAS="vk_alias",a.VIDEOTEST="videotest",a.TEST="test",a.AUTO="auto",a))(_e||{}),bt=(d=>(d.Q144P="mobile",d.Q240P="lowest",d.Q360P="low",d.Q480P="medium",d.Q720P="high",d.Q1080P="fullhd",d.Q1440P="quadhd",d.Q2160P="ultrahd",d.UNKNOWN="unknown",d))(bt||{}),yt=(p=>(p.MP4="mp4",p.DASH="dash",p.DASH_SEP="dash_sep",p.ONDEMAND_DASH="ondemand_dash",p.HLS="hls",p.ONDEMAND_HLS="ondemand_hls",p.WEBM="webm",p.AV1="av1",p.ONDEMAND_DASH_LIVE="ondemand_dash_live",p.ONDEMAND_HLS_LIVE="ondemand_hls_live",p.WEBRTC="webrtc",p.UNKNOWN="unknown",p.RTMP="rtmp",p))(yt||{});var St=(i=>(i.HTTP1="http1",i.HTTP2="http2",i.HTTP3="http3",i))(St||{});var It=(l=>(l.SLIDER="slider",l.DOUBLE_TAP="double_tap",l.TIME_CODE="time_code",l.EPISODE="episode",l.REWIND="rewind",l.LIVE="live",l.UNKNOWN="unknown",l))(It||{}),na=(a=>(a.GRAPH_SHOW="iGraphShow",a.GRAPH_HIDE="iGraphHide",a.NEXT_AREA="iNextChapterArea",a.NEXT_BUTTON="iNextChapterBtn",a.WATCH_AGAIN="iWatchAgainBtn",a))(na||{}),aa={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo"},sa={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},ua={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},ca={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};import{fillWithDefault as _p}from"@vkontakte/videoplayer-shared";var xp={apiEnv:"vk_alias",requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:[],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},la=r=>_p(r,xp);function Et(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),t=0,i,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(t<=2&&(t=33554432+Math.random()*16777216|0),i=t&15,t=t>>4,e[o]=r[o===19?i&3|8:i]);return e.join("")}import{assertNonNullable as Fb,combine as Il,fromEvent as El,isNonNullable as be,isNullable as ql,merge as Bb,now as B,observableFrom as Ub,once as Vb,safeStorage as Vi,Subject as Gb,Subscription as Hi,ValueSubject as Gi}from"@vkontakte/videoplayer-shared";import{Logger as Kb,detectEmbed as Wb}from"@vkontakte/videoplayer-shared";var xr=Mr(Hu(),1);var al=Mr(nl(),1);var sl=r=>{var o;let{operation:e,custom:t}=r,i=(0,al.default)(Object.entries(t).map(([a,u])=>{var d,s,c;let l=(d=sa[a])!=null?d:a,f=u;return u&&(a==="mode"?f=(s=ca[u])!=null?s:u:a==="quality"&&(f=(c=ua[u])!=null?c:u)),[l,f]}));return Ve(V({},r),{operation:(o=aa[e])!=null?o:e,custom:i})};var _r="__VERSION__",ul="CIOPGQJGDIHBABABA",Li={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",auto:""};import{ValueSubject as Rb,getExponentialDelay as wb,ErrorCategory as he}from"@vkontakte/videoplayer-shared";var Me=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new Rb(!1);this.params=e}authorize(e){return L(this,null,function*(){return this.authToken=e!=null?e:yield this.refreshAuthToken(),this._authorizeWithBackoff()})}logBeacon(e){let t="log.externalLog",i=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(t,i,o)||this.logRequest(e)}logRequest(e){return L(this,null,function*(){var u;let t="log.externalLog",i=this.createLogParams(e),o=(u=this.sessionKey)!=null?u:yield this._authorizeWithBackoff();if(!o)return;let a=(d,...s)=>L(this,[d,...s],function*(l,f=this.params.config.requestRetryCount){try{return yield this.params.apiTransport.sendRequest(t,i,o)}catch(c){if(!c||!("error_code"in c)){this.params.error$.next({id:"logRequestUnknown",category:he.NETWORK,message:`Unknown ${t} error`,thrown:c});return}let v=c==null?void 0:c.error_code;switch(v){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=yield this._authorizeWithBackoff(),f>0?a(l,f-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=yield this.refreshAuthToken(),this.sessionKey=yield this._authorizeWithBackoff(),f>0?a(l,f-1):void 0;default:{this.params.error$.next({id:`LogRequest#${v}`,category:he.EXTERNAL_API,message:`${t} error`,data:c});return}}}});return a(e)})}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}refreshAuthToken(){return L(this,null,function*(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=(0,xr.default)(this.params.refreshAuthToken(),()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise})}createLogParams(e){return{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${_r}`,platform:this.params.mobile?"M_WEB":"WEB",items:this.params.config.shorten?e.map(sl):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=wb(this.consequentAuthErrors,this.params.config.backoff);return new Promise(t=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{(0,xr.default)(this._authorize().then(t).catch(i=>this.params.error$.next({id:"AuthorizeBackoff",category:he.NETWORK,message:"Otherwise unhandled error in authorization",thrown:i})),()=>this.backoffTimeoutId=0)},e))})}_authorize(){return L(this,null,function*(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",t={session_data:{version:2,device_id:this.params.uuid,client_version:_r.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(t.session_data.auth_token=this.authToken,t.session_data.version=3),this.authorizePromise=(0,xr.default)(this.params.apiTransport.sendRequest(e,t).then(i=>{var o;return(!i||!i.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:he.EXTERNAL_API,message:"No session key",data:i}),this.sessionKey=(o=i==null?void 0:i.session_key)!=null?o:void 0,this.sessionKey}).catch(i=>L(this,null,function*(){this.sessionKey=void 0;let o=i==null?void 0:i.error_code;switch(o){case 401:return this.authToken=yield this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:he.EXTERNAL_API,message:"authorize error",data:i}):this.params.error$.next({id:"AuthorizeUnknown",category:he.NETWORK,message:"authorize error",thrown:i})})),()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise})}};var Rr=class{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,i){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:i})}removeEventListener(e,t){if(!(e in this.listeners))return;let i=this.listeners[e];for(let o=0,a=i.length;o<a;o++)if(i[o].callback===t){i.splice(o,1);return}}dispatchEvent(e){if(!(e.type in this.listeners))return;let i=this.listeners[e.type].slice();for(let o=0,a=i.length;o<a;o++){let u=i[o];try{u.callback.call(this,e)}catch(l){Promise.resolve().then(()=>{throw l})}u.options&&u.options.once&&this.removeEventListener(e.type,u.callback)}return!e.defaultPrevented}},ge=class extends Rr{constructor(){super(),this.listeners||Rr.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){e.type==="abort"&&(this.aborted=!0,typeof this.onabort=="function"&&this.onabort.call(this,e)),super.dispatchEvent(e)}},je=class{constructor(){Object.defineProperty(this,"signal",{value:new ge,writable:!0,configurable:!0})}abort(e){let t;try{t=new Event("abort")}catch(o){typeof document!="undefined"?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let i=e;if(i===void 0)if(typeof document=="undefined")i=new Error("This operation was aborted"),i.name="AbortError";else try{i=new DOMException("signal is aborted without reason")}catch(o){i=new Error("This operation was aborted"),i.name="AbortError"}this.signal.reason=i,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}};typeof Symbol!="undefined"&&Symbol.toStringTag&&(je.prototype[Symbol.toStringTag]="AbortController",ge.prototype[Symbol.toStringTag]="AbortSignal");function wr(r){return r.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):typeof r.Request=="function"&&!r.Request.prototype.hasOwnProperty("signal")||!r.AbortController}function ki(r){typeof r=="function"&&(r={fetch:r});let{fetch:e,Request:t=e.Request,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o=!1}=r;if(!wr({fetch:e,Request:t,AbortController:i,__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL:o}))return{fetch:e,Request:a};let a=t;(a&&!a.prototype.hasOwnProperty("signal")||o)&&(a=function(d,s){let c;s&&s.signal&&(c=s.signal,delete s.signal);let v=new t(d,s);return c&&Object.defineProperty(v,"signal",{writable:!1,enumerable:!1,configurable:!0,value:c}),v},a.prototype=t.prototype);let u=e;return{fetch:(f,d)=>{let s=a&&a.prototype.isPrototypeOf(f)?f.signal:d?d.signal:void 0;if(s){let c;try{c=new DOMException("Aborted","AbortError")}catch(p){c=new Error("Aborted"),c.name="AbortError"}if(s.aborted)return Promise.reject(c);let v=new Promise((p,h)=>{s.addEventListener("abort",()=>h(c),{once:!0})});return d&&d.signal&&delete d.signal,Promise.race([v,u(f,d)])}return u(f,d)},Request:a}}var Fe=wr({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}),cl=Fe?ki({fetch:window.fetch,Request:window.Request,AbortController:window.AbortController}):void 0,Di=Fe?cl.fetch:window.fetch,IE=Fe?cl.Request:window.Request,EE=Fe?je:window.AbortController,qE=Fe?ge:window.AbortSignal;import{ErrorCategory as Ar,now as $i}from"@vkontakte/videoplayer-shared";var Be=class{constructor(e){this.params=e,this.apiKey=e.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=Li[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}resolveApiBaseUrl(){return L(this,null,function*(){var e;if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let t=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=yield(yield Di(t,{method:"GET",mode:"cors",cache:"no-cache"})).json(),a=(e=o==null?void 0:o.Answer[0])==null?void 0:e.data;if(!a)throw new Error("Wrong DNS response");return a}catch(t){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:Ar.NETWORK,message:"Unhandled resolve api base url error",thrown:t}),Li.vk_alias}finally{this.isApiBaseUrlFetched=!0}})}sendBeacon(e,t,i){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:t,sessionKey:i}),a=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,a)}catch(u){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:Ar.NETWORK,message:"Unhandled beacon error",thrown:u,data:{method:e,params:t}})}return!1}sendRequest(e,t,i){return L(this,null,function*(){let o=$i(),a=u=>{if(u instanceof TypeError&&["Failed to fetch","NetworkError when attempting to fetch resource."].includes(u.message)){this.params.error$.next({id:"Network",category:Ar.NETWORK,message:"Request failed",thrown:u});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:Ar.NETWORK,message:"Unhandled request error",thrown:u,data:{method:e,params:t,sessionKey:i,time:$i()-o}})};return this.apiBaseUrl=yield this.resolveApiBaseUrl(),Di(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:t,sessionKey:i})}).then(u=>{var s,c;let l=Number(u.headers.get("content-length"))===0,f=new Date((s=u.headers.get("date"))!=null?s:"").getTime(),d=$i()-o;if(isFinite(f)&&((c=this.timeSynchronisation)==null||c.addServerTime(f,d)),!l)return u.json().then(v=>Object.prototype.hasOwnProperty.call(v,"error_msg")?Promise.reject(v):v,a)},a)})}_prepareQueryParams(e){let t=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&t.append("session_key",e.sessionKey),Object.entries(e.queryParams).forEach(([i,o])=>t.append(i,typeof o=="string"?o:JSON.stringify(o))),t}};import{ErrorCategory as Ab,now as Cb,safeStorage as Ue,debounceFn as ll}from"@vkontakte/videoplayer-shared";var Cr="onestat_events",Mi=r=>e=>e.timestamp+r>=Cb(),Nr=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:t}=e;return["action_play","watch_coverage_record","watch_coverage_live"].includes(t)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=ll(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let t=Ue.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=ll(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:t}),this.subscription=this.api.authorized$.subscribe(i=>{i&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){var e;try{this.flush()}catch(t){this.error$.next({id:"LoggerError",category:Ab.WTF,message:(e=String(t))!=null?e:"Unknown logger error",thrown:t})}}readFromStorage(){let e=Ue.get(Cr);try{return e?JSON.parse(e):{}}catch(t){}return{}}addToStorage(e){var a;if(!this.userSalt){this.unsaltedStorage.push(e);return}let t=this.readFromStorage(),o=((a=t[this.userSalt])!=null?a:[]).filter(Mi(this.params.config.storageExpiration));Ue.set(Cr,JSON.stringify(Ve(V({},t),{[this.userSalt]:[...o,e]})))}getFromStorage(){var i;return this.userSalt?((i=this.readFromStorage()[this.userSalt])!=null?i:[]).filter(Mi(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],Ue.set(Cr,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[t,i]of Object.entries(e)){let o=i.filter(Mi(this.params.config.storageExpiration));o.length?e[t]=o:delete e[t],this.loggerDebugLog({message:`${i.length} retrieved from storage, ${o.length} of them actual`})}Ue.set(Cr,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush(e=!1){let t=this.getFromStorage();t.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${t.length} events through beacon`}),this.api.logBeacon(t)):(this.loggerDebugLog({message:`Flushing ${t.length} events`}),this.api.logRequest(t)),this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};import{HttpConnectionType as ji,Surface as me,VideoFormat as _,VideoQuality as $}from"@vkontakte/videoplayer-core";import{assertNever as fl}from"@vkontakte/videoplayer-shared";var dl=r=>r&&{[$.INVARIANT]:"unknown",[$.Q_144P]:"mobile",[$.Q_240P]:"lowest",[$.Q_360P]:"low",[$.Q_480P]:"medium",[$.Q_720P]:"high",[$.Q_1080P]:"fullhd",[$.Q_1440P]:"quadhd",[$.Q_2160P]:"ultrahd",[$.Q_4320P]:"unknown"}[r],Fi=r=>r&&{[ji.HTTP1]:"http1",[ji.HTTP2]:"http2",[ji.QUIC]:"http3"}[r],pl=r=>{if(r!==void 0)switch(r){case _.MPEG:return"mp4";case _.DASH_LIVE:return"dash";case _.DASH_SEP:return"dash_sep";case _.DASH_ONDEMAND:return"ondemand_dash";case _.DASH_WEBM:case _.DASH_LIVE_WEBM:return"webm";case _.DASH_WEBM_AV1:return"av1";case _.DASH_LIVE_CMAF:return"ondemand_dash_live";case _.HLS:case _.HLS_LIVE:return"hls";case _.HLS_ONDEMAND:return"ondemand_hls";case _.HLS_LIVE_CMAF:return"ondemand_hls_live";case _.WEB_RTC_LIVE:return"webrtc";default:return fl(r)}},Lr=r=>{if(r!==void 0)switch(r){case me.NONE:case me.INLINE:return;case me.FULLSCREEN:return"fullscreen";case me.SECOND_SCREEN:return"chromecast";case me.PIP:return"pip";case me.INVISIBLE:return"invisible";default:return fl(r)}},vl=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var kr=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){var e;return(e=this.offset)!=null?e:0}setOffset(e){this.offset=e}now(){var e;return Date.now()+((e=this.offset)!=null?e:0)}date(e=new Date){var t;return e.setTime(e.getTime()+((t=this.offset)!=null?t:0)),e}addServerTime(e,t){let i=Date.now(),o=e-i-t/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var hl=()=>Math.floor(Math.random()*4294967296).toString(36).padStart(7,"0"),gl=()=>Math.floor(Math.random()*18446744073709552e3).toString(36).padStart(13,"0");import{PlaybackState as ml}from"@vkontakte/videoplayer-core";import{filter as bl,filterChanged as Lb,fromEvent as kb,isNullable as yl,map as Db,merge as Bi,Observable as $b,Subject as Ui,Subscription as Mb,ValueSubject as jb}from"@vkontakte/videoplayer-shared";var Sl=(r,e)=>new $b(t=>{let i=new Mb,o=Bi(kb(window,"beforeunload"),r.events.willDestruct$),a=new jb(void 0),u;i.add(r.info.isLive$.pipe(Lb()).subscribe(U=>{u&&(u.unsubscribe(),a.next(void 0)),U?u=r.info.liveTime$.pipe(Db(Dr=>Dr&&Dr/1e3)).subscribe(a):u=r.info.position$.subscribe(a),i.add(u)}));let{playing$:l,paused$:f}=r.events,d=r.events.willSeek$.pipe(bl(()=>r.info.playbackState$.getValue()===ml.PLAYING)),s=r.events.seeked$.pipe(bl(()=>r.info.playbackState$.getValue()===ml.PLAYING)),c=!1,v=new Ui;i.add(d.subscribe(()=>{c||v.next(),c=!0})),i.add(s.subscribe(()=>c=!1));let p=new Ui,h=new Ui,g=Bi(l,s,p),y=Bi(f,v,o,r.events.looped$,h),m,S=()=>m=a.getValue(),Tl=()=>{let U=a.getValue();yl(m)||m===U||yl(U)||(t.next({from:m,to:U}),m=void 0)},Ol=()=>{h.next(),p.next()};if(i.add(g.subscribe(S)),i.add(y.subscribe(Tl)),e.forceInterval&&isFinite(e.forceInterval)){let U=0;i.add(g.subscribe(()=>U=window.setTimeout(Ol,e.forceInterval))),i.add(y.subscribe(()=>window.clearTimeout(U)))}return i});var Hb="_one-stat_",Ki=`${Hb}uuid`,Wi=()=>{let r=new Hi;return{subscription:r,subscribe:(e,t)=>{e&&r.add(e.subscribe(t))}}},zi=class{constructor(e,t){this.subscription=new Hi;this.debugLogger=new Kb;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new Gi(void 0);this.isid$=new Gi(void 0);this.seekAction$=new Gi("unknown");var f,d,s;this.statContext=e,this.config=la((f=t.config)!=null?f:{}),be(t.apiEnv)&&(this.config.apiEnv=t.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new kr);let i=new Gb;this.experimental={error$:i};let o=Vi.get(Ki);o?o.startsWith('"')&&o.endsWith('"')?(this.uuid=(0,Pl.default)(o,'"',""),Vi.set(Ki,this.uuid)):this.uuid=o:(this.uuid=Et(),Vi.set(Ki,this.uuid)),this.resetViewSession(),t.useIsid&&this.isid$.next((d=t.isid)!=null?d:gl());let a=new Be({apiKey:ul,config:this.config,error$:i,timeSynchronisation:this.timeSynchronisation});this.api=new Me({config:this.config,apiTransport:a,refreshAuthToken:t.refreshAuthToken,mobile:(s=this.statContext.mobile)!=null?s:!1,uuid:this.uuid,error$:i}),this.logger=new Nr({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:i,userSalt:t.userSalt});let{isEmbed:u,host:l}=Wb();this.isEmbed=u,this.embedParent=l,this.subscribe()}updateContext(e){this.statContext=V(V({},this.statContext),e)}attachTo(e){let t=new Hi,i=(s,c)=>t.add(s.subscribe(c));i(e.events.willStart$,()=>{let s=e.info.position$.getValue();this.logActionPlay({position:s}),this.statContext.projectId&&this.logActionPlayInteractive({position:s})}),i(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),i(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),i(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),i(e.events.willResume$,()=>{this.logPlay()}),i(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),i(Sl(e,{forceInterval:this.config.watchCoverageInterval}),s=>{let c=e.info.isLive$.getValue(),v={start:parseFloat(s.from.toFixed(3)),end:parseFloat(s.to.toFixed(3))};c?this.logWatchCoverageLive(v):this.logWatchCoverageRecord(v)});let o;i(e.info.isStalled$,s=>{s?o=B():(be(o)&&this.logEmptyBuffer({duration:B()-o}),o=void 0)});let a=!1;t.add(e.events.fatalError$.pipe(Vb()).subscribe(()=>a=!0)),i(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let c=be(o)?B()-o:void 0;this.logCloseAtEmptyBuffer({duration:c!=null?c:0}),o=void 0}else a||this.logActionStop()}),i(e.events.managedError$,({id:s})=>{this.logError({fatal:!1,errorType:s})}),i(e.events.fatalError$,({id:s})=>{this.logError({fatal:!0,errorType:s})});let u,l,f=!1;i(e.events.firstBytes$,s=>{u=B(),this.logFirstBytes({time:s})}),i(e.events.willStart$,()=>l=B()),i(e.info.currentBuffer$,s=>{!f&&s&&s.end-s.start>0&&be(u)&&(this.logPlayerReady({duration:B()-u}),f=!0)}),i(e.events.firstFrame$,()=>{be(u)&&!f&&(this.logPlayerReady({duration:B()-u}),f=!0),be(l)&&this.logFirstFrame({time:B()-l})}),i(e.info.atLiveEdge$,s=>this.updateContext({liveEdge:s})),i(Il({muted:e.info.muted$,volume:e.info.volume$}),({muted:s,volume:c})=>this.updateContext({audible:!s&&c>0})),i(e.info.currentQuality$,s=>this.updateContext({quality:dl(s)})),i(e.info.isAutoQualityEnabled$,s=>this.updateContext({autoQuality:s})),i(e.info.currentFormat$,s=>this.updateContext({contentType:pl(s)})),i(e.info.currentPlaybackRate$,s=>this.updateContext({rate:s})),i(e.info.is3DVideo$,s=>this.updateContext({is3d:s}));let d;return i(e.info.hostname$,s=>{let c=d!==void 0&&d!==s;this.updateContext({cdnHostname:s,failover:c}),c&&this.logFailover(s),d=s}),i(e.info.throughputEstimation$,s=>this.updateContext({downloadSpeed:s})),i(e.info.httpConnectionType$,s=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:Fi(s)}),this.updateContext({connectionType:Fi(s)})}),i(e.info.httpConnectionReused$,s=>{ql(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:s}),this.updateContext({connectionReused:s})}),i(e.info.surface$,s=>this.updateContext({mode:Lr(s)})),i(Il({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:s,available:c})=>{let v=c.find(({id:h})=>h===s),p=v&&(v.isAuto?`${v.language}_auto`:v.language);this.updateContext({subtitles:p})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToUi(e){this.uiEvents=e;let{subscription:t,subscribe:i}=Wi();return this.player&&(i(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),i(e.actionSeek$,this.seekAction$),i(e.inPiP$,o=>{var u;let a=o?"pip":Lr((u=this.player)==null?void 0:u.info.surface$.getValue());this.updateContext({mode:a})}),i(e.inFullscreen$,o=>{var u;let a=o?"fullscreen":Lr((u=this.player)==null?void 0:u.info.surface$.getValue());this.updateContext({mode:a})}),i(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o})),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t)),t}attachToAds(e){let{subscription:t,subscribe:i}=Wi();return i(e.slotRequested$,()=>this.logAdSlotRequest()),i(e.started$,o=>this.logAdStarted(o)),i(e.paused$,()=>this.logAdPaused()),i(e.resumed$,()=>this.logAdResumed()),i(e.ended$,()=>this.logAdEnded()),i(e.skipped$,()=>this.logAdSkipped()),i(e.clicked$,()=>this.logAdClicked()),this.resubscribeBeforeunload(),this.subscription.add(t),t}attachToInteractive(e){let{subscription:t,subscribe:i}=Wi();return i(e.click$,o=>this.logInterfaceClick(o)),i(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(t),t}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(hl())}getDeviceId(){return this.uuid}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`})}logWatchCoverageLive(e){var a,u;let t=(u=(a=this.timeSynchronisation)==null?void 0:a.getOffset())!=null?u:0,i=e.start+t,o=e.end+t;this.log({operation:"watch_coverage_live",param:`${i}-${o}`})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add(Bb(El(e,"change"),Ub(["init"])).subscribe(()=>this.updateContext({network:vl(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(t=>{console.debug("%c stat ","background:#fa6470;",`component: ${t.component}.`,t.message)})}resubscribeBeforeunload(){var e;(e=this.beforeunloadSubscription)==null||e.unsubscribe(),this.beforeunloadSubscription=El(window,"beforeunload").subscribe(()=>this.logger.flush(!0)),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(e){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(Math.round(e.position))},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}log(e,t={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if(this.config.disabledOperations.includes(e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let i=this.createLogItem(e,t);this.logger.log(i)}createLogItem({operation:e,param:t,time:i},o={}){var p,h;let a=(h=(p=this.timeSynchronisation)==null?void 0:p.now())!=null?h:B(),u=this.vsid$.getValue();Fb(u);let l=this.isid$.getValue(),f=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,d=this.statContext.firstConnectionReused,s,c;if(this.isEmbed){s=this.embedParent;let g=[...new URLSearchParams(location.search).entries()].filter(([y,m])=>this.config.embedUrlParams.includes(y));c=new URLSearchParams(g).toString()}else this.statContext.place==="direct"&&((this.statContext.refDomain||document.referrer)&&(s=new URL(this.statContext.refDomain||document.referrer).hostname),c=location.href.substring(0,1024));let v=V({vsid:u,isid:l,vid:this.statContext.movieId,ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:t,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:f,connection_reused:d===!0?1:d===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:s,direct_url:c,rate:this.statContext.rate===1||ql(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId},o);for(let g of this.config.disabledCustomFields)delete v[g];return{operation:e,type:1,time:i,network:this.statContext.network,timestamp:a,custom:v}}};export{_e as ApiEnv,St as ConnectionType,yt as ContentType,na as InteractiveInterfaceClick,zi as OneStat,bt as Quality,It as SeekAction,_r as VERSION};
6
+ var Le=Object.defineProperty,ke=Object.defineProperties;var $e=Object.getOwnPropertyDescriptors;var oe=Object.getOwnPropertySymbols;var Re=Object.prototype.hasOwnProperty,Oe=Object.prototype.propertyIsEnumerable;var se=(r,e,i)=>e in r?Le(r,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):r[e]=i,I=(r,e)=>{for(var i in e||(e={}))Re.call(e,i)&&se(r,i,e[i]);if(oe)for(var i of oe(e))Oe.call(e,i)&&se(r,i,e[i]);return r},k=(r,e)=>ke(r,$e(e));var g=(r,e,i)=>new Promise((t,o)=>{var n=u=>{try{l(i.next(u))}catch(c){o(c)}},a=u=>{try{l(i.throw(u))}catch(c){o(c)}},l=u=>u.done?t(u.value):Promise.resolve(u.value).then(n,a);l((i=i.apply(r,e)).next())});var x=(n=>(n.PROD="prod",n.VK_ALIAS="vk_alias",n.VIDEOTEST="videotest",n.TEST="test",n.AUTO="auto",n))(x||{}),M=(c=>(c.Q144P="mobile",c.Q240P="lowest",c.Q360P="low",c.Q480P="medium",c.Q720P="high",c.Q1080P="fullhd",c.Q1440P="quadhd",c.Q2160P="ultrahd",c.UNKNOWN="unknown",c))(M||{}),V=(p=>(p.MP4="mp4",p.DASH="dash",p.DASH_SEP="dash_sep",p.ONDEMAND_DASH="ondemand_dash",p.HLS="hls",p.ONDEMAND_HLS="ondemand_hls",p.WEBM="webm",p.AV1="av1",p.ONDEMAND_DASH_LIVE="ondemand_dash_live",p.ONDEMAND_HLS_LIVE="ondemand_hls_live",p.WEBRTC="webrtc",p.UNKNOWN="unknown",p.RTMP="rtmp",p))(V||{});var U=(t=>(t.HTTP1="http1",t.HTTP2="http2",t.HTTP3="http3",t))(U||{});var W=(l=>(l.SLIDER="slider",l.DOUBLE_TAP="double_tap",l.TIME_CODE="time_code",l.EPISODE="episode",l.REWIND="rewind",l.LIVE="live",l.UNKNOWN="unknown",l))(W||{}),re=(n=>(n.GRAPH_SHOW="iGraphShow",n.GRAPH_HIDE="iGraphHide",n.NEXT_AREA="iNextChapterArea",n.NEXT_BUTTON="iNextChapterBtn",n.WATCH_AGAIN="iWatchAgainBtn",n))(re||{}),ne={action_play:"ap",action_play_interactive:"api",first_bytes:"fb",player_ready:"pr",first_frame:"ff",seek:"sk",watch_coverage_record:"wr",watch_coverage_live:"wl",empty_buffer:"eb",action_stop:"as",close_at_empty_buffer:"cb",content_error:"er",player_interface_click:"pc",next_movie:"nm",track_switch:"ts",failover:"fo"},ae={vsid:"si",isid:"is",vid:"vi",place:"pl",quality:"qt",cdn_host:"ch",stat_type:"st",param:"pm",vk_app_id:"va",track_code:"tc",connection_type:"cnt",connection_reused:"cr",cached_data:"cd",live:"lv",muted:"mu",mode:"mo",subtitles:"sb",failover:"fo",download_speed:"ds",manual_quality:"mq",ref_domain:"rd",direct_url:"du"},de={unknown:"un",mobile:"m",lowest:"ls",low:"l",medium:"md",high:"h",fullhd:"f",quadhd:"q",ultrahd:"u"},ue={pip:"pi",fullscreen:"fs",external:"ex",prefetch:"pr",airplay:"ap",chromecast:"cc",invisible:"iv"};import{fillWithDefault as Ne}from"@vkontakte/videoplayer-shared";var De={apiEnv:"vk_alias",requestRetryCount:1,firstFlushTime:5e3,flushDebounceTime:1e4,flushMaxWait:6e4,storageExpiration:36*60*60*1e3,watchCoverageInterval:15e3,disabledOperations:[],disabledCustomFields:[],shorten:!0,maxLoops:100,embedUrlParams:[],useBeacon:!0,synchronizeTime:!0,debugLog:!1,backoff:{start:1e3,factor:1.5,max:5*60*1e3,random:.1}},ce=r=>Ne(r,De);function H(){let r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),e=new Array(36),i=0,t,o;for(o=0;o<36;o++)o===8||o===13||o===18||o===23?e[o]="-":o===14?e[o]="4":(i<=2&&(i=33554432+Math.random()*16777216|0),t=i&15,i=i>>4,e[o]=r[o===19?t&3|8:t]);return e.join("")}import{assertNonNullable as je,combine as _e,fromEvent as Ae,isNonNullable as A,isNullable as xe,merge as Ge,now as b,observableFrom as Ye,once as Xe,safeStorage as X,Subject as Je,Subscription as te,ValueSubject as J}from"@vkontakte/videoplayer-shared";import{Logger as Ze,detectEmbed as et}from"@vkontakte/videoplayer-shared";var le=r=>{var o;let{operation:e,custom:i}=r,t=Object.fromEntries(Object.entries(i).map(([n,a])=>{var c,s,d;let l=(c=ae[n])!=null?c:n,u=a;return a&&(n==="mode"?u=(s=ue[a])!=null?s:a:n==="quality"&&(u=(d=de[a])!=null?d:a)),[l,u]}));return k(I({},r),{operation:(o=ne[e])!=null?o:e,custom:t})};var $="1.0.51-dev.9505da81.0",pe="CIOPGQJGDIHBABABA",K={prod:"https://api.ok.ru",vk_alias:"https://api.mycdn.me",videotest:"https://videotestapi.ok.ru/api",test:"https://apitest.ok.ru",auto:""};import{ValueSubject as Be,getExponentialDelay as Fe,ErrorCategory as E}from"@vkontakte/videoplayer-shared";var C=class{constructor(e){this.consequentAuthErrors=0;this.authorized$=new Be(!1);this.params=e}authorize(e){return g(this,null,function*(){return this.authToken=e!=null?e:yield this.refreshAuthToken(),this._authorizeWithBackoff()})}logBeacon(e){let i="log.externalLog",t=this.createLogParams(e),o=this.sessionKey;if(!o)return;this.params.apiTransport.sendBeacon(i,t,o)||this.logRequest(e)}logRequest(e){return g(this,null,function*(){var a;let i="log.externalLog",t=this.createLogParams(e),o=(a=this.sessionKey)!=null?a:yield this._authorizeWithBackoff();if(!o)return;let n=(c,...s)=>g(this,[c,...s],function*(l,u=this.params.config.requestRetryCount){try{return yield this.params.apiTransport.sendRequest(i,t,o)}catch(d){if(!d||!("error_code"in d)){this.params.error$.next({id:"logRequestUnknown",category:E.NETWORK,message:`Unknown ${i} error`,thrown:d});return}let h=d==null?void 0:d.error_code;switch(h){case 102:case 103:case 104:return this.authorized$.next(!1),this.sessionKey=yield this._authorizeWithBackoff(),u>0?n(l,u-1):void 0;case 401:return this.authorized$.next(!1),this.authToken=yield this.refreshAuthToken(),this.sessionKey=yield this._authorizeWithBackoff(),u>0?n(l,u-1):void 0;default:{this.params.error$.next({id:`LogRequest#${h}`,category:E.EXTERNAL_API,message:`${i} error`,data:d});return}}}});return n(e)})}destroy(){window.clearTimeout(this.backoffTimeoutId),this.backoffTimeoutId=0}refreshAuthToken(){return g(this,null,function*(){if(this.params.refreshAuthToken)return this.refreshAuthTokenPromise||(this.refreshAuthTokenPromise=this.params.refreshAuthToken().finally(()=>{this.refreshAuthTokenPromise=void 0})),this.refreshAuthTokenPromise})}createLogParams(e){return{collector:"ok.mobile.apps.video",data:JSON.stringify({application:`@vkontakte/videoplayer-statistics:${$}`,platform:this.params.mobile?"M_WEB":"WEB",items:this.params.config.shorten?e.map(le):e})}}_authorizeWithBackoff(){if(!this.consequentAuthErrors)return this._authorize();let e=Fe(this.consequentAuthErrors,this.params.config.backoff);return new Promise(i=>{this.backoffTimeoutId||(this.backoffTimeoutId=window.setTimeout(()=>{this._authorize().then(i).catch(t=>this.params.error$.next({id:"AuthorizeBackoff",category:E.NETWORK,message:"Otherwise unhandled error in authorization",thrown:t})).finally(()=>this.backoffTimeoutId=0)},e))})}_authorize(){return g(this,null,function*(){if(this.authorizePromise)return this.authorizePromise;this.sessionKey=void 0,this.authorized$.next(!1);let e="auth.anonymLogin",i={session_data:{version:2,device_id:this.params.uuid,client_version:$.split("-")[0],client_type:"SDK_JS"}};return this.authToken!==void 0&&(i.session_data.auth_token=this.authToken,i.session_data.version=3),this.authorizePromise=this.params.apiTransport.sendRequest(e,i).then(t=>{var o;return(!t||!t.session_key)&&this.params.error$.next({id:"AuthorizeFailed",category:E.EXTERNAL_API,message:"No session key",data:t}),this.sessionKey=(o=t==null?void 0:t.session_key)!=null?o:void 0,this.sessionKey}).catch(t=>g(this,null,function*(){this.sessionKey=void 0;let o=t==null?void 0:t.error_code;switch(o){case 401:return this.authToken=yield this.refreshAuthToken(),this._authorizeWithBackoff()}o?this.params.error$.next({id:`Authorize#${o}`,category:E.EXTERNAL_API,message:"authorize error",data:t}):this.params.error$.next({id:"AuthorizeUnknown",category:E.NETWORK,message:"authorize error",thrown:t})})).finally(()=>{this.authorizePromise=void 0,this.consequentAuthErrors=this.sessionKey?0:this.consequentAuthErrors+1,this.authorized$.next(this.sessionKey!==void 0)}),this.authorizePromise})}};import{ErrorCategory as R,now as q}from"@vkontakte/videoplayer-shared";var T=class{constructor(e){this.params=e,this.apiKey=e.apiKey,this.apiEnv=e.config.apiEnv,this.apiBaseUrl=K[this.apiEnv],this.timeSynchronisation=e.timeSynchronisation,this.isApiBaseUrlFetched=!1}resolveApiBaseUrl(){return g(this,null,function*(){var e;if(this.apiEnv!=="auto"||this.isApiBaseUrlFetched)return this.apiBaseUrl;try{let i=atob("aHR0cHM6Ly9kbnMuZ29vZ2xlL3Jlc29sdmU/bmFtZT12aWRlby5fZW5kcG9pbnQub2sucnUmdHlwZT1UWFQ="),o=yield(yield fetch(i,{method:"GET",mode:"cors",cache:"no-cache"})).json(),n=(e=o==null?void 0:o.Answer[0])==null?void 0:e.data;if(!n)throw new Error("Wrong DNS response");return n}catch(i){return this.params.error$.next({id:"OneStat:ApiTransport:resolveApiBaseUrl",category:R.NETWORK,message:"Unhandled resolve api base url error",thrown:i}),K.vk_alias}finally{this.isApiBaseUrlFetched=!0}})}sendBeacon(e,i,t){if(!window.Blob||!window.navigator.sendBeacon)return!1;let o=this._prepareQueryParams({method:e,queryParams:i,sessionKey:t}),n=new window.Blob([o.toString()],{type:"application/x-www-form-urlencoded"});try{return window.navigator.sendBeacon(`${this.apiBaseUrl}/fb.do`,n)}catch(a){this.params.error$.next({id:"OneStat:ApiTransport:sendBeacon",category:R.NETWORK,message:"Unhandled beacon error",thrown:a,data:{method:e,params:i}})}return!1}sendRequest(e,i,t){return g(this,null,function*(){let o=q(),n=a=>{if(a instanceof TypeError&&["Failed to fetch","NetworkError when attempting to fetch resource."].includes(a.message)){this.params.error$.next({id:"Network",category:R.NETWORK,message:"Request failed",thrown:a});return}this.params.error$.next({id:"OneStat:ApiTransport:sendRequest",category:R.NETWORK,message:"Unhandled request error",thrown:a,data:{method:e,params:i,sessionKey:t,time:q()-o}})};return this.apiBaseUrl=yield this.resolveApiBaseUrl(),fetch(`${this.apiBaseUrl}/fb.do`,{method:"post",headers:{"Content-type":"application/x-www-form-urlencoded"},body:this._prepareQueryParams({method:e,queryParams:i,sessionKey:t})}).then(a=>{var s,d;let l=Number(a.headers.get("content-length"))===0,u=new Date((s=a.headers.get("date"))!=null?s:"").getTime(),c=q()-o;if(isFinite(u)&&((d=this.timeSynchronisation)==null||d.addServerTime(u,c)),!l)return a.json().then(h=>Object.prototype.hasOwnProperty.call(h,"error_msg")?Promise.reject(h):h,n)},n)})}_prepareQueryParams(e){let i=new URLSearchParams({format:"JSON",method:e.method,application_key:this.apiKey});return e.sessionKey!==void 0&&i.append("session_key",e.sessionKey),Object.entries(e.queryParams).forEach(([t,o])=>i.append(t,typeof o=="string"?o:JSON.stringify(o))),i}};import{ErrorCategory as Me,now as Ve,safeStorage as w,debounceFn as he}from"@vkontakte/videoplayer-shared";var O="onestat_events",z=r=>e=>e.timestamp+r>=Ve(),N=class{constructor(e){this.unsaltedStorage=[];this.isPaused=!1;this.isUrgent=e=>{let{operation:i}=e;return["action_play","watch_coverage_record","watch_coverage_live"].includes(i)};this.params=e,this.api=e.api,this.error$=e.error$,this.userSalt=e.userSalt,this.loggerDebugLog=e.debugLogger.createComponentLog("stat logger"),this.firstFlush=he(()=>this.safeFlush(),this.params.config.firstFlushTime,{maxWait:this.params.config.firstFlushTime});let i=w.isPersistent()?this.params.config.flushMaxWait:0;this.debouncedFlush=he(()=>this.safeFlush(),this.params.config.flushDebounceTime,{maxWait:i}),this.subscription=this.api.authorized$.subscribe(t=>{t&&this.debouncedFlush()}),this.housekeepStorage()}safeFlush(){var e;try{this.flush()}catch(i){this.error$.next({id:"LoggerError",category:Me.WTF,message:(e=String(i))!=null?e:"Unknown logger error",thrown:i})}}readFromStorage(){let e=w.get(O);try{return e?JSON.parse(e):{}}catch(i){}return{}}addToStorage(e){var n;if(!this.userSalt){this.unsaltedStorage.push(e);return}let i=this.readFromStorage(),o=((n=i[this.userSalt])!=null?n:[]).filter(z(this.params.config.storageExpiration));w.set(O,JSON.stringify(k(I({},i),{[this.userSalt]:[...o,e]})))}getFromStorage(){var t;return this.userSalt?((t=this.readFromStorage()[this.userSalt])!=null?t:[]).filter(z(this.params.config.storageExpiration)):this.unsaltedStorage}markStorageSent(){if(!this.userSalt){this.unsaltedStorage=[];return}let e=this.readFromStorage();delete e[this.userSalt],w.set(O,JSON.stringify(e))}housekeepStorage(){let e=this.readFromStorage();for(let[i,t]of Object.entries(e)){let o=t.filter(z(this.params.config.storageExpiration));o.length?e[i]=o:delete e[i],this.loggerDebugLog({message:`${t.length} retrieved from storage, ${o.length} of them actual`})}w.set(O,JSON.stringify(e))}log(e){this.addToStorage(e),!this.isPaused&&(this.isUrgent(e)?this.flush():this.lastVsid!==e.custom.vsid?this.firstFlush():this.debouncedFlush(),this.lastVsid=e.custom.vsid)}flush(e=!1){let i=this.getFromStorage();i.length!==0&&(this.api.authorized$.getValue()?(e&&this.params.config.useBeacon?(this.loggerDebugLog({message:`Flushing ${i.length} events through beacon`}),this.api.logBeacon(i)):(this.loggerDebugLog({message:`Flushing ${i.length} events`}),this.api.logRequest(i)),this.markStorageSent()):this.api.authorize(),this.firstFlush.cancel(),this.debouncedFlush.cancel())}pause(){this.isPaused=!0,this.debouncedFlush.cancel()}resume(){this.isPaused=!1,this.debouncedFlush()}destroy(){this.subscription.unsubscribe(),this.firstFlush.cancel(),this.debouncedFlush.cancel()}};import{HttpConnectionType as Q,Surface as _,VideoFormat as f,VideoQuality as m}from"@vkontakte/videoplayer-core";import{assertNever as fe}from"@vkontakte/videoplayer-shared";var ge=r=>r&&{[m.INVARIANT]:"unknown",[m.Q_144P]:"mobile",[m.Q_240P]:"lowest",[m.Q_360P]:"low",[m.Q_480P]:"medium",[m.Q_720P]:"high",[m.Q_1080P]:"fullhd",[m.Q_1440P]:"quadhd",[m.Q_2160P]:"ultrahd",[m.Q_4320P]:"unknown"}[r],j=r=>r&&{[Q.HTTP1]:"http1",[Q.HTTP2]:"http2",[Q.QUIC]:"http3"}[r],me=r=>{if(r!==void 0)switch(r){case f.MPEG:return"mp4";case f.DASH_LIVE:return"dash";case f.DASH_SEP:return"dash_sep";case f.DASH_ONDEMAND:return"ondemand_dash";case f.DASH_WEBM:case f.DASH_LIVE_WEBM:return"webm";case f.DASH_WEBM_AV1:return"av1";case f.DASH_LIVE_CMAF:return"ondemand_dash_live";case f.HLS:case f.HLS_LIVE:return"hls";case f.HLS_ONDEMAND:return"ondemand_hls";case f.HLS_LIVE_CMAF:return"ondemand_hls_live";case f.WEB_RTC_LIVE:return"webrtc";default:return fe(r)}},D=r=>{if(r!==void 0)switch(r){case _.NONE:case _.INLINE:return;case _.FULLSCREEN:return"fullscreen";case _.SECOND_SCREEN:return"chromecast";case _.PIP:return"pip";case _.INVISIBLE:return"invisible";default:return fe(r)}},be=r=>{switch(r){case"slow-2g":return"poor";case"2g":return"poor";case"3g":return"good";case"4g":return"excellent"}};var B=class{constructor(e){this.offset=void 0;this.offset=e}getOffset(){var e;return(e=this.offset)!=null?e:0}setOffset(e){this.offset=e}now(){var e;return Date.now()+((e=this.offset)!=null?e:0)}date(e=new Date){var i;return e.setTime(e.getTime()+((i=this.offset)!=null?i:0)),e}addServerTime(e,i){let t=Date.now(),o=e-t-i/2;if(Math.abs(o)<1e3){this.offset=0;return}this.offset===void 0?this.offset=Math.round(o):this.offset=Math.round(.2*o+(1-.2)*this.offset)}};var ve=()=>Math.floor(Math.random()*4294967296).toString(36).padStart(7,"0"),Ie=()=>Math.floor(Math.random()*18446744073709552e3).toString(36).padStart(13,"0");import{PlaybackState as Se}from"@vkontakte/videoplayer-core";import{filter as ye,filterChanged as We,fromEvent as He,isNullable as Pe,map as Ke,merge as G,Observable as qe,Subject as Y,Subscription as ze,ValueSubject as Qe}from"@vkontakte/videoplayer-shared";var Ee=(r,e)=>new qe(i=>{let t=new ze,o=G(He(window,"beforeunload"),r.events.willDestruct$),n=new Qe(void 0),a;t.add(r.info.isLive$.pipe(We()).subscribe(v=>{a&&(a.unsubscribe(),n.next(void 0)),v?a=r.info.liveTime$.pipe(Ke(F=>F&&F/1e3)).subscribe(n):a=r.info.position$.subscribe(n),t.add(a)}));let{playing$:l,paused$:u}=r.events,c=r.events.willSeek$.pipe(ye(()=>r.info.playbackState$.getValue()===Se.PLAYING)),s=r.events.seeked$.pipe(ye(()=>r.info.playbackState$.getValue()===Se.PLAYING)),d=!1,h=new Y;t.add(c.subscribe(()=>{d||h.next(),d=!0})),t.add(s.subscribe(()=>d=!1));let p=new Y,S=new Y,y=G(l,s,p),L=G(u,h,o,r.events.looped$,S),P,Ce=()=>P=n.getValue(),Te=()=>{let v=n.getValue();Pe(P)||P===v||Pe(v)||(i.next({from:P,to:v}),P=void 0)},we=()=>{S.next(),p.next()};if(t.add(y.subscribe(Ce)),t.add(L.subscribe(Te)),e.forceInterval&&isFinite(e.forceInterval)){let v=0;t.add(y.subscribe(()=>v=window.setTimeout(we,e.forceInterval))),t.add(L.subscribe(()=>window.clearTimeout(v)))}return t});var tt="_one-stat_",Z=`${tt}uuid`,ee=()=>{let r=new te;return{subscription:r,subscribe:(e,i)=>{e&&r.add(e.subscribe(i))}}},ie=class{constructor(e,i){this.subscription=new te;this.debugLogger=new Ze;this.oneStatDebugLog=this.debugLogger.createComponentLog("onestat");this.loopCounter=0;this.disabled=!1;this.vsid$=new J(void 0);this.isid$=new J(void 0);this.seekAction$=new J("unknown");var u,c,s;this.statContext=e,this.config=ce((u=i.config)!=null?u:{}),A(i.apiEnv)&&(this.config.apiEnv=i.apiEnv),this.config.synchronizeTime&&(this.timeSynchronisation=new B);let t=new Je;this.experimental={error$:t};let o=X.get(Z);o?o.startsWith('"')&&o.endsWith('"')?(this.uuid=o.replaceAll('"',""),X.set(Z,this.uuid)):this.uuid=o:(this.uuid=H(),X.set(Z,this.uuid)),this.resetViewSession(),i.useIsid&&this.isid$.next((c=i.isid)!=null?c:Ie());let n=new T({apiKey:pe,config:this.config,error$:t,timeSynchronisation:this.timeSynchronisation});this.api=new C({config:this.config,apiTransport:n,refreshAuthToken:i.refreshAuthToken,mobile:(s=this.statContext.mobile)!=null?s:!1,uuid:this.uuid,error$:t}),this.logger=new N({config:this.config,debugLogger:this.debugLogger,api:this.api,error$:t,userSalt:i.userSalt});let{isEmbed:a,host:l}=et();this.isEmbed=a,this.embedParent=l,this.subscribe()}updateContext(e){this.statContext=I(I({},this.statContext),e)}attachTo(e){let i=new te,t=(s,d)=>i.add(s.subscribe(d));t(e.events.willStart$,()=>{let s=e.info.position$.getValue();this.logActionPlay({position:s}),this.statContext.projectId&&this.logActionPlayInteractive()}),t(e.events.looped$,()=>{this.resetViewSession(),++this.loopCounter>this.config.maxLoops&&(this.disabled=!0),this.logActionPlay({position:e.info.position$.getValue()})}),t(e.events.seeked$,()=>{this.logSeek({action:this.seekAction$.getValue(),time:e.info.position$.getValue()}),this.seekAction$.next("unknown")}),t(e.events.paused$,()=>{this.logPause({position:e.info.position$.getValue()})}),t(e.events.willResume$,()=>{this.logPlay()}),t(e.events.started$,()=>{this.statContext.clip&&this.logWatchCoverageRecord({start:0,end:0})}),t(Ee(e,{forceInterval:this.config.watchCoverageInterval}),s=>{let d=e.info.isLive$.getValue(),h={start:parseFloat(s.from.toFixed(3)),end:parseFloat(s.to.toFixed(3))};d?this.logWatchCoverageLive(h):this.logWatchCoverageRecord(h)});let o;t(e.info.isStalled$,s=>{s?o=b():(A(o)&&this.logEmptyBuffer({duration:b()-o}),o=void 0)});let n=!1;i.add(e.events.fatalError$.pipe(Xe()).subscribe(()=>n=!0)),t(e.events.willStop$,()=>{if(e.info.isStalled$.getValue()){let d=A(o)?b()-o:void 0;this.logCloseAtEmptyBuffer({duration:d!=null?d:0}),o=void 0}else n||this.logActionStop()}),t(e.events.managedError$,({id:s})=>{this.logError({fatal:!1,errorType:s})}),t(e.events.fatalError$,({id:s})=>{this.logError({fatal:!0,errorType:s})});let a,l,u=!1;t(e.events.firstBytes$,s=>{a=b(),this.logFirstBytes({time:s})}),t(e.events.willStart$,()=>l=b()),t(e.info.currentBuffer$,s=>{!u&&s&&s.end-s.start>0&&A(a)&&(this.logPlayerReady({duration:b()-a}),u=!0)}),t(e.events.firstFrame$,()=>{A(a)&&!u&&(this.logPlayerReady({duration:b()-a}),u=!0),A(l)&&this.logFirstFrame({time:b()-l})}),t(e.info.atLiveEdge$,s=>this.updateContext({liveEdge:s})),t(_e({muted:e.info.muted$,volume:e.info.volume$}),({muted:s,volume:d})=>this.updateContext({audible:!s&&d>0})),t(e.info.currentQuality$,s=>this.updateContext({quality:ge(s)})),t(e.info.isAutoQualityEnabled$,s=>this.updateContext({autoQuality:s})),t(e.info.currentFormat$,s=>this.updateContext({contentType:me(s)})),t(e.info.currentPlaybackRate$,s=>this.updateContext({rate:s})),t(e.info.is3DVideo$,s=>this.updateContext({is3d:s}));let c;return t(e.info.hostname$,s=>{let d=c!==void 0&&c!==s;this.updateContext({cdnHostname:s,failover:d}),d&&this.logFailover(s),c=s}),t(e.info.throughputEstimation$,s=>this.updateContext({downloadSpeed:s})),t(e.info.httpConnectionType$,s=>{this.statContext.firstConnectionType||this.updateContext({firstConnectionType:j(s)}),this.updateContext({connectionType:j(s)})}),t(e.info.httpConnectionReused$,s=>{xe(this.statContext.firstConnectionReused)&&this.updateContext({firstConnectionReused:s}),this.updateContext({connectionReused:s})}),t(e.info.surface$,s=>this.updateContext({mode:D(s)})),t(_e({current:e.info.currentTextTrack$,available:e.info.availableTextTracks$}),({current:s,available:d})=>{let h=d.find(({id:S})=>S===s),p=h&&(h.isAuto?`${h.language}_auto`:h.language);this.updateContext({subtitles:p})}),this.player=e,this.uiEvents&&this.attachToUi(this.uiEvents),this.resubscribeBeforeunload(),this.subscription.add(i),i}attachToUi(e){this.uiEvents=e;let{subscription:i,subscribe:t}=ee();return this.player&&(t(e.actionRewind$,()=>{this.player&&(this.resetViewSession(),this.logActionPlay({position:this.player.info.position$.getValue()}))}),t(e.actionSeek$,this.seekAction$),t(e.inPiP$,o=>{var a;let n=o?"pip":D((a=this.player)==null?void 0:a.info.surface$.getValue());this.updateContext({mode:n})}),t(e.inFullscreen$,o=>{var a;let n=o?"fullscreen":D((a=this.player)==null?void 0:a.info.surface$.getValue());this.updateContext({mode:n})}),t(e.actionSetSubtitle$,o=>this.updateContext({subtitles:o})),t(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(i)),i}attachToAds(e){let{subscription:i,subscribe:t}=ee();return t(e.slotRequested$,()=>this.logAdSlotRequest()),t(e.started$,o=>this.logAdStarted(o)),t(e.paused$,()=>this.logAdPaused()),t(e.resumed$,()=>this.logAdResumed()),t(e.ended$,()=>this.logAdEnded()),t(e.skipped$,()=>this.logAdSkipped()),t(e.clicked$,()=>this.logAdClicked()),this.resubscribeBeforeunload(),this.subscription.add(i),i}attachToInteractive(e){let{subscription:i,subscribe:t}=ee();return t(e.click$,o=>this.logInterfaceClick(o)),t(e.nextMovie$,o=>this.logNextMovie(o)),this.resubscribeBeforeunload(),this.subscription.add(i),i}authorize(e){return this.api.authorize(e)}pause(){this.logger.pause(),this.oneStatDebugLog({message:"paused"})}resume(){this.logger.resume(),this.oneStatDebugLog({message:"resumed"})}destroy(){this.logger.flush(),this.subscription.unsubscribe(),this.api.destroy(),this.logger.destroy()}resetViewSession(){this.oneStatDebugLog({message:"VSID reset"}),this.vsid$.next(ve())}getDeviceId(){return this.uuid}setFieldBlacklist(){}logInited(){}logReady(e){this.log({operation:"player_ready",param:String(e.time)})}logStarted(...e){this.logActionPlay(...e)}logPlay(){this.log({operation:"play_toggle"})}logPause(e){this.log({operation:"pause",param:String(Math.round(e.position))})}logSeek(e){this.log({operation:"seek",param:e.action,time:e.time})}logFirstBytes(e){this.log({operation:"first_bytes",param:String(e.time)})}logFirstFrame(e){this.log({operation:"first_frame",param:String(e.time)})}logError(e){this.log({operation:"content_error",param:`${e.fatal?"fatal":"recoverable"}_${e.errorType}`})}logWatchCoverageRecord(e){this.log({operation:"watch_coverage_record",param:`${e.start}-${e.end}`})}logWatchCoverageLive(e){var n,a;let i=(a=(n=this.timeSynchronisation)==null?void 0:n.getOffset())!=null?a:0,t=e.start+i,o=e.end+i;this.log({operation:"watch_coverage_live",param:`${t}-${o}`})}logEmptyBuffer(e){this.log({operation:"empty_buffer",param:String(e.duration)})}logDownloadSpeed(){}logAdSlotRequest(){this.log({operation:"adv",param:"slot_request"})}logAdStarted(e){this.log({operation:"adv",param:e})}logAdPaused(){this.log({operation:"adv",param:"pause"})}logAdResumed(){this.log({operation:"adv",param:"resume"})}logAdEnded(){this.log({operation:"adv",param:"ended"})}logAdSkipped(){this.log({operation:"adv",param:"skip"})}logAdClicked(){this.log({operation:"adv",param:"click"})}logInterfaceClick(e){this.log({operation:"player_interface_click",param:e})}logNextMovie(e){this.log({operation:"next_movie",param:String(e)})}subscribe(){this.resubscribeBeforeunload();let e=window.navigator.connection;e&&"onchange"in e&&"effectiveType"in e&&this.subscription.add(Ge(Ae(e,"change"),Ye(["init"])).subscribe(()=>this.updateContext({network:be(e.effectiveType)}))),this.config.debugLog&&this.debugLogger.log$.subscribe(i=>{console.debug("%c stat ","background:#fa6470;",`component: ${i.component}.`,i.message)})}resubscribeBeforeunload(){var e;(e=this.beforeunloadSubscription)==null||e.unsubscribe(),this.beforeunloadSubscription=Ae(window,"beforeunload").subscribe(()=>this.logger.flush(!0)),this.subscription.add(this.beforeunloadSubscription)}logPlayerReady(e){this.log({operation:"player_ready",param:String(Math.round(e.duration))})}logActionPlay(e){this.log({operation:"action_play",param:String(Math.round(e.position))})}logActionPlayInteractive(){this.statContext.projectId&&this.log({operation:"action_play_interactive",param:String(this.statContext.movieId)},{vid:this.statContext.projectId})}logFailover(e){this.log({operation:"failover",param:e})}logCloseAtEmptyBuffer(e){this.log({operation:"close_at_empty_buffer",param:String(Math.round(e.duration))})}logActionStop(){this.log({operation:"action_stop"})}log(e,i={}){if(this.disabled){this.oneStatDebugLog({message:`operation ${e.operation} but statistics is disabled`});return}if(this.config.disabledOperations.includes(e.operation)){this.oneStatDebugLog({message:`operation ${e.operation} but it is disabled`});return}this.oneStatDebugLog({message:`operation ${e.operation} ${e.param}`});let t=this.createLogItem(e,i);this.logger.log(t)}createLogItem({operation:e,param:i,time:t},o={}){var p,S;let n=(S=(p=this.timeSynchronisation)==null?void 0:p.now())!=null?S:b(),a=this.vsid$.getValue();je(a);let l=this.isid$.getValue(),u=e==="empty_buffer"||e==="close_at_empty_buffer"?this.statContext.connectionType:this.statContext.firstConnectionType,c=this.statContext.firstConnectionReused,s,d;if(this.isEmbed){s=this.embedParent;let y=[...new URLSearchParams(location.search).entries()].filter(([L,P])=>this.config.embedUrlParams.includes(L));d=new URLSearchParams(y).toString()}else this.statContext.place==="direct"&&((this.statContext.refDomain||document.referrer)&&(s=new URL(this.statContext.refDomain||document.referrer).hostname),d=location.href.substring(0,1024));let h=I({vsid:a,isid:l,vid:this.statContext.movieId,ct:this.statContext.contentType,place:this.isEmbed?"embed":this.statContext.place,quality:this.statContext.quality,cdn_host:this.statContext.cdnHostname,stat_type:this.statContext.autoplay===!0?"auto":this.statContext.autoplay===!1?"":void 0,param:i,vk_app_id:this.statContext.vkAppId,track_code:this.statContext.trackCode,connection_type:u,connection_reused:c===!0?1:c===!1?0:void 0,cached_data:this.statContext.cached===!0?1:this.statContext.cached===!1?0:void 0,live:this.statContext.liveEdge?1:void 0,muted:this.statContext.audible===!1?1:void 0,mode:this.statContext.mode,subtitles:this.statContext.subtitles,download_speed:this.statContext.downloadSpeed,manual_quality:this.statContext.autoQuality?void 0:1,ref_domain:s,direct_url:d,rate:this.statContext.rate===1||xe(this.statContext.rate)?void 0:this.statContext.rate.toFixed(2),view_360:this.statContext.is3d?1:void 0,aid:this.statContext.albumId,vk_playlist_id:this.statContext.vkPlaylistId},o);for(let y of this.config.disabledCustomFields)delete h[y];return{operation:e,type:1,time:t,network:this.statContext.network,timestamp:n,custom:h}}};export{x as ApiEnv,U as ConnectionType,V as ContentType,re as InteractiveInterfaceClick,ie as OneStat,M as Quality,W as SeekAction,$ as VERSION};